Translating General Slack Elastic Programs into Dataflow Circuits

Xiayuan Wen, Rui Li, and Rajit Manohar

Static dataflow circuits are a common target for asynchronous circuit synthesis. Dataflow circuits can be implemented using fine-grained asynchronous pipelines from a variety of circuit families, typically leading to high-throughput circuit implementations. This approach has been used to design a number of different asynchronous chips including microprocessors, FPGAs, on-chip networks, and arithmetic circuits.

Existing methods for translating slack elastic programs into dataflow circuits restrict the way channels can be used in an individual process; in particular, they require that a channel can only be used once per process loop iteration. We present a systematic solution to this problem that lifts this restriction, thereby enabling the translation of general slack elastic processes into dataflow components. We compare our approach with alternative strategies for this problem, and discuss why our method is better suited for high-throughput asynchronous dataflow circuit synthesis.

 
  
Yale