Professional Documents
Culture Documents
Architecture
Lec 9
Pipelining
Dr. Noman Hasany
Pipelining concept
Scalar Pipeline
Instruction Pipeline
Linear Pipeline Processors
• A linear pipeline processor is a cascade of processing stages which
are linearly connected to perform a fixed function over a stream
of data flowing from one end to the other.
• In modem computers. linear pipelines are applied for instruction
execution, arithmetic computation, and memory-access
operations.
• External inputs (operands) are fed into the pipeline at the first
stage Si. The processed results are passed from stage Si to stage
Si+1. for all i = 1, 2,... k-1, for a k stage pipeline. The final result
emerges from the pipeline at the last stage Sk.
Asynchronous Pipeline
• Controlled by a handshaking protocol.
• When stage Si is ready to transmit, it sends a ready signal to stage Si+1.
After stage Si+1 receives the incoming data, it returns an acknowledge
signal to Si.
• Different amounts of delay may be experienced in different stages.
• Asynchronous pipelines may have a variable throughput rate.
Synchronous Pipeline
• Upon the arrival of a clock pulse, all latches transfer data to the next
stage simultaneously.
• It is desired to have approximately equal delays in all stages, which
determines the clock period and thus the speed of the pipeline.
• Unless otherwise specified, only synchronous pipelines are studied in
this book.
Reservation Table
• The utilization pattern of successive
stages in a synchronous pipeline is
specified by a reservation table.
• Once the pipeline is filled up, one result
emerges from the pipeline for each
additional cycle.
• This throughput is sustained only if the
successive tasks are independent of each
other.
Clocking and Timing control
• Denote the maximum stage delay as τm.
• The clock pulse has a width equal to d. In general, τm >>d , by one to
two orders of magnitude.
• This implies that the maximum stage delay τm dominates the clock
period.
Pipeline Frequency and Throughput
• Orders of magnitude are used to make approximate comparisons. If numbers
differ by one order of magnitude, x is about ten times different in quantity
than y. If values differ by two orders of magnitude, they differ by a factor of
about 100.
• The pipeline frequency is defined as the inverse of the clock period: