High-level automatic pipelining for sequential circuits

Research output: Indexed journal article Articlepeer-review

15 Citations (Scopus)


This paper presents a new approach for automatically pipelining sequential circuits. The approach repeatedly extracts a computation from the critical path, moves it into a new stage, then uses speculation to generate a stream of values that keep the pipeline full. The newly generated circuit retains enough state to recover from incorrect speculations by flushing the incorrect values from the pipeline, restoring the correct state, then restarting the computation. We also implement two extensions to this basic approach: stalling, which minimizes circuit area by eliminating speculation, and forwarding, which increases the throughput of the generated circuit by forwarding correct values to preceding pipeline stages. We have implemented a prototype synthesizer based on this approach. Our experimental results show that, starting with a non-pipelined or insufficiently pipelined specification, this synthesizer can effectively reduce the clock cycle time and improve the throughput of the generated circuit.

Original languageEnglish
Pages (from-to)215-220
Number of pages6
JournalProceedings of the International Symposium on System Synthesis
Publication statusPublished - 2001
Externally publishedYes


  • Forward
  • Modular
  • Pipeline
  • Speculation
  • Stall


Dive into the research topics of 'High-level automatic pipelining for sequential circuits'. Together they form a unique fingerprint.

Cite this