14-05-2012, 12:42 PM
High-Performance Asynchronous Pipelines
ieee pipelining paper.pdf (Size: 615.82 KB / Downloads: 32)
Applications of pipelining in asynchronous systems
For synchronous systems, pipelining
is a straightforward technique: complex
function blocks are subdivided into smaller blocks,
registers are inserted to separate them, and the global
clock is applied to all registers. In contrast, for asynchronous
systems, there is no global clock. Therefore,
a protocol for the interaction of neighboring stages
must be defined, as well as choices of data encoding
and storage elements. In addition, an explicit distributed
control structure must be designed. Together,
this ensemble constitutes a template or skeleton for
coordinating the blocks of a pipelined asynchronous
system.
Asynchronous vs. synchronous pipelines
a highly simplified view of a synchronous
pipeline and an asynchronous pipeline.
For the latter, the figure doesn’t show the control
and storage; the focus is simply on the local interstage
communication.
Each asynchronous interstage link is a communication
channel, typically including both data and
control. Communication is usually bidirectional,
and is implemented by a handshaking protocol:
data (and possibly a request control signal) is sent
from left to right, and an acknowledge control signal
is sent from right to left.
Linear and nonlinear pipeline structures
The focus of this article is on linear pipelines, in
which each stage has a single input channel and a
single output channel. However, to construct complex
digital systems with varied topologies, various
other pipeline components are needed, such as parallel
forks and joins, conditional splits and merges,
arbitration, and loop control structures. These components
typically involve small extensions to the linear
stages, and their designs are covered extensively
in the literature.2,3,6-8,16,17
Benefits of asynchronous pipelines
The preceding four features make asynchronous
pipelines highly attractive as a medium for assembling
scalable complex systems. An important goal
is to design a pipeline with a throughput comparable
to a high-performance synchronous pipeline,
but with lower end-to-end latency, dynamic power
that naturally adapts to the actual traffic, and the
flexibility to handle variable input and output
rates and variable-delay stages.