Computer Architecture Exception Handling and Advanced Pipelining MemoryStorage
- Slides: 16
Computer Architecture Exception Handling and Advanced Pipelining Memory/Storage Architecture Lab
Datapath with Controls to Handle Exceptions Memory/Storage Architecture Lab 2
Exception Handling Example overflow exception Memory/Storage Architecture Lab 3
Exception Handling Example start of exception handling routine Memory/Storage Architecture Lab 4
Advanced Pipelining q Superpipelining q Superscalar q Dynamic Pipeline Scheduling Memory/Storage Architecture Lab 5
Superpipelining IF-1 IF-1 ID EX-1 EX-2 MEM WB IF-1 ID EX-1 EX-2 MEM Memory/Storage Architecture Lab WB 6
Superscalar ALU or Branch IF ID EX MEM WB Load or Store IF ID EX MEM WB Memory/Storage Architecture Lab 7
Superscalar Pipeline Memory/Storage Architecture Lab 8
Simple Superscalar Code Scheduling Loop: lw $t 0, 0($s 1) # $t 0=array element addu $t 0, $s 2 # add scalar in $s 2 sw # store result $t 0, 0($s 1) addi $s 1, -4 # decrement pointer bne # branch $s 1!=0 $s 1, $zero, Loop Memory/Storage Architecture Lab 9
Scheduled Code Memory/Storage Architecture Lab 10
Loop Unrolling Memory/Storage Architecture Lab 11
Dynamic Pipeline Scheduling • Example: Power PC 604, Pentium Pro, Alpha 21264, MIPS R 10000 Memory/Storage Architecture Lab 12
Dynamic Pipeline Scheduling q Overcome key performance limitations of in-order pipeline instruction execution l Structural hazard − l Data hazard − − l Replicate pipelines Execute instructions out of program order Rename registers as needed Control hazard − Execute instructions speculatively across branches Memory/Storage Architecture Lab 13
Dynamic Branch Prediction One-bit prediction scheme not-taken predict taken Problem : Loop case Memory/Storage Architecture Lab 14
Dynamic Branch Prediction Two-bit prediction scheme taken not-taken predict taken not-taken predict not-taken Memory/Storage Architecture Lab 15
Summary q Three major handles in pipelined implementation l l l q Structural hazard Data hazard Control hazard Advanced pipelining l l l Superpipelining (clock cycle time ↓) Superscalar (CPI ↓, possibly < 1) Dynamic pipeline scheduling − − Structural hazard: resource replication Data Hazard: n n − out-of-order execution Register renaming Control Hazard: speculative execution Memory/Storage Architecture Lab 16
- Linear pipelining in computer architecture
- Scalar pipeline in computer architecture
- What is exception in computer architecture
- Exception handling pl sql
- Vb.net error handling
- Exception handling in java
- Apa itu exception
- Php exception
- Exception handling pada java
- Fiq irq
- Exception handling in ada
- Php custom exception
- Vb.net error handling
- Control hazards in computer architecture
- Ec 6009
- Diff between computer architecture and organization
- Bus architecture in computer organization