Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
pipeline_synthesis_from_transaction-based_specifications [2021/11/22 03:36] editpipeline_synthesis_from_transaction-based_specifications [2021/12/15 22:39] (current) edit
Line 1: Line 1:
 ====== Pipeline Synthesis From Transaction-based Specifications ====== ====== Pipeline Synthesis From Transaction-based Specifications ======
  
-Pipelining is a classic and widely used microarchitectural optimization to improve performance and efficiency. Pipelining a datapath by hand is tedious and error prone, as it requires the designer to reason about subtle corner cases when sequentially dependent operations are processed concurrently in different pipeline stages. Adding pipeline optimizations such as forwarding, speculation, and multithreading further exacerbates the problem. We are developing a novel transactional datapath specification (T-spec) and its accompanying synthesis technology (T-piper) to facilitate the development of in-order pipelined designs. T-spec captures an abstract datapath, whose execution semantics is interpreted as a sequence of “transactions.” Automatic T-piper analysis, based on designer-specified pipeline-stage boundaries, identifies forwarding and speculation opportunities and generates an optimized RTL-Verilog implementation that correctly and efficiently pipelines the execution of the transactions. We have applied T-spec and T-piper in design case studies on RISC (Mips) and CISC (Intel x86) processor pipeline developments. We have made a version of the T-piper tool freely available online at www.t-piper.net for academic and research use. We have collaborated with Timothy Kam (SCL/Intel) and Shih-Lien Lu (MRL/Intel) on this investigation.+Pipelining is a classic and widely used microarchitectural optimization to improve performance and efficiency. Pipelining a datapath by hand is tedious and error prone, as it requires the designer to reason about subtle corner cases when sequentially dependent operations are processed concurrently in different pipeline stages. Adding pipeline optimizations such as forwarding, speculation, and multithreading further exacerbates the problem. We are developing a novel transactional datapath specification (T-spec) and its accompanying synthesis technology (T-piper) to facilitate the development of in-order pipelined designs. T-spec captures an abstract datapath, whose execution semantics is interpreted as a sequence of “transactions.” Automatic T-piper analysis, based on designer-specified pipeline-stage boundaries, identifies forwarding and speculation opportunities and generates an optimized RTL-Verilog implementation that correctly and efficiently pipelines the execution of the transactions. We have applied T-spec and T-piper in design case studies on RISC (Mips) and CISC (Intel x86) processor pipeline developments. We have collaborated with Timothy Kam (SCL/Intel) and Shih-Lien Lu (MRL/Intel) on this investigation.
  
   * **Student**   * **Student**
     * [[http://www.ece.cmu.edu/~enurvita |Eriko Nurvitadhi]]  ([[https://users.ece.cmu.edu/~jhoe/distribution/2010/nurvitadhi.pdf |PhD Thesis]])     * [[http://www.ece.cmu.edu/~enurvita |Eriko Nurvitadhi]]  ([[https://users.ece.cmu.edu/~jhoe/distribution/2010/nurvitadhi.pdf |PhD Thesis]])
-  * **T-piper tools, examples and tutorials** ([[http://www.t-piper.net |website]]) 
   * **Publications**   * **Publications**
     * **Integrating Formal Verification and High-Level Processor Pipeline Synthesis**. E. Nurvitadhi, J. C. Hoe, S. L. Lu and T. Kam.  Symposium on Application Specific Processors (SASP), June 2011. ([[https://users.ece.cmu.edu/~jhoe/distribution/2011/sasp11.pdf |pdf]])     * **Integrating Formal Verification and High-Level Processor Pipeline Synthesis**. E. Nurvitadhi, J. C. Hoe, S. L. Lu and T. Kam.  Symposium on Application Specific Processors (SASP), June 2011. ([[https://users.ece.cmu.edu/~jhoe/distribution/2011/sasp11.pdf |pdf]])