Asynchronous pipeline with latch controllers
AssigneeThe Trustees of Columbia University in the City of New York
InventorsMontek Singh, Steven M. Nowick
Life of this patent
Estimating the term…
Loading patent…
AssigneeThe Trustees of Columbia University in the City of New York
InventorsMontek Singh, Steven M. Nowick
Estimating the term…
An asynchronous pipeline for high-speed applications uses simple transparent latches in its datapath and small latch controllers for each pipeline stage. The stages communicate with each other using request signals and acknowledgment signals. Each transition on the request signal indicates the arrival of a distinct new data item. Each stage comprises a data latch that is normally enabled to allow data to pass through, and a latch controller that enables and disables the data latch. The request signal and the data are inputs to the data latch. Once the stage has latched the data, a done signal is produced, which is sent to the latch controller, to the previous stage as an acknowledgment signal, and to the next stage as a request signal. The latch controller disables the latch upon receipt of the done signal, and re-enables the data latch upon receipt of the acknowledgment signal from the next stage. For correct operation, the request signal must arrive at the stage after the data inputs have stabilized. The asynchronous pipeline may incorporate logic elements to combine data, as well as matched delay elements for the request, acknowledgment, and done signals. The asynchronous pipeline may also incorporate clocked CMOS logic gates. Fork and join structures are also provided by the asynchronous pipeline design.
An asynchronous digital pipeline circuit for processing data in an environment, the environment providing data for processing and a first request signal, the circuit comprising:
An asynchronous digital pipeline circuit for processing data in an environment, the environment providing data for processing and a first request signal, the circuit comprising:
An asynchronous digital pipeline circuit for processing data in an environment, the environment providing data for processing and a first and second request signal, the circuit comprising:
Dependencies are inferred from the claim text.