- This is the mechanism through which a RISC processor executes its instructions
 
- This speeds up execution by fetching the next instruction while other instructions are being decoded and executed.
 
Types of Pipelining
- Software Pipelining
- Can handle complex instructions
 
- Allows programs to be reused
 
 
- Hardware Pipelining
- Helps designer manage complexity - a complex task can be divided into smaller, more manageable pieces
 
- Hardware pipelining offers higher performance
 
 
Types of Hardware Pipelines
- Instruction Pipeline: This is very similar to a manufacturing assembly line.
 
- Data Pipeline: It is designed to pass data from stage to stage.
 
Advantages/Disadvantages of Pipelining
Advantages
- More efficient use of processor
 
- Quicker time of execution of a large number of instructions
 
Disadvantages
- Pipelining involves adding hardware to the chip
 
- Inability to continuously run the pipeline at full speed because of pipeline hazards which disrupt the smooth execution of the pipeline.
 
ARM7 3 stage pipelining
- Fetch: Loads an instruction from memory
 
- Decode: Identifies the instruction to be executed
 
- Execute: Processes the instruction and writes the result back to a register.
 
ARM9TDMI 5 stage pipelining
- The execute stage has been split to allow for greater throughput
 
- At least double the processing power is available thanks to double the operating frequency for ARM9
 
- Fetch
 
- Decode
 
- Execute
 
- Buffer/Data ⇒ Memory
 
- Write-back ⇒ Write
 
ARM10 6 stage pipelining
- Fetch
 
- Issue
 
- Decode
 
- Execute
 
- Memory
 
- Write
 
Memory and I/O
- This stage is responsible for storing and loading values to and from memory.
 
- It is also responsible for input or output from the processor.
 
- If the current instruction is not of memory or IO type then the result from the ALU is passed through to the writeback stage.
 
- The Write-back (WB stage is responsible for writing the result of the calculation, memory access or input into the register file.