Presentation is loading. Please wait.

Presentation is loading. Please wait.

06/05/08 Biscotti: a Framework for Token-Flow based Asynchronous Systems Charlie Brej.

Similar presentations


Presentation on theme: "06/05/08 Biscotti: a Framework for Token-Flow based Asynchronous Systems Charlie Brej."— Presentation transcript:

1 06/05/08 Biscotti: a Framework for Token-Flow based Asynchronous Systems Charlie Brej

2 06/05/08 Overview  The tool problem  Proposed system  Biscotti components  Their current state  Example uses  Conclusions  And future work

3 06/05/08 The Tool Problem

4 06/05/08 Wagging Flow Problem TLF Read Async Trans. Desynchronise Netlist Flatten Timing Library Timing Extract Netlist Flatten Verilog Write Simulation Performance Verilog Read Async Trans. Wag

5 06/05/08 Commercial Tools  Unsuitable  Critical path extraction  Broken  Timing extraction of cyclic designs  Inflexible  Limited simulation trace extraction  Unimplemented  DI logic synthesis

6 06/05/08 Biscotti Aims  Complete framework for token flow systems  Aims to recreate all tools required to make a design  Modular  Set of libraries  Open Source  GPLv3  Expandable and Customisable  Trivial to add or replace any part with own version

7 06/05/08 Current Biscotti Components

8 06/05/088 Parts VerilogTLF VerilogSDF Simulation Netlist Operations TimingWagging Async Transformations Tech-map

9 06/05/089 Input  Verilog  Modules, Gates  UDPs with MVL extensions  No behavioral  TLF  Cell characterisations  Splines  In: Capacitance and Slew  Out: Delay and Slew primitive trinary_C(Z,A,B); output Z; input A, B; reg Z; table // A B : Z : Z’ 0 0 : ? : 0; 1 1 : ? : 1; 2 2 : ? : 2; ? ? : ? : -; endtable endprimitive

10 06/05/0810 Output  Verilog  Patchy  Generates verilog executable with NC-Verilog  SDF  Timing extraction files used by external simulators

11 06/05/0811 Processing 1  Netlist Operations  Internal netlist representation  Allows constructing, altering, flattening...  The basis of all other tools  Timing  Cell timing characteristics (TLF)  Circuit timing extraction  Characterisation of constructed modules

12 06/05/0812 Processing 2  Pipeline Synthesis  Takes a directed flow graph (DFG) style circuit  Constructs latches and acknowledge trees  Can expand to early output, DIMS or MVL  Creates RAM wrappers and wagging fork/join blocks

13 06/05/08 C Pipeline Synthesis Logic Async Logic Async Latch Async Latch Async Latch Async Latch Async Latch

14 06/05/0814 Processing 2  Pipeline Synthesis  Takes a directed flow graph (DFG) style circuit  Constructs latches and acknowledge trees  Can expand to early output, DIMS or MVL  Creates RAM wrappers and wagging fork/join blocks

15 06/05/0815 Processing 3  Wagging  Duplicates circuit and reconnects latches to form a ring  Inserts abstract fork/join blocks  Simulation  Fast simulator  Slowest trace extraction  MVL capable  Allows simulation at an abstract level

16 06/05/0816 Processing 4  Tech mapping  Dumb generation of large primitives (balanced trees)  Table based re-synthesis of C-element blocks  Logic blocks in the future  Slowest trace based gate replacement (drive strength)

17 06/05/08 Example Uses

18 06/05/0818 Timing extraction Verilog Read TLF Read Netlist Flatten Timing Extract Verilog Write SDF Write

19 06/05/0819 Extract Slowest Path Verilog Read TLF Read Netlist Flatten Timing Extract Simulation Slowest Trace Slowest Path Write

20 06/05/0820 Drive Strength Optimisation Verilog Read TLF Read Netlist Flatten Timing Extract Simulation Slowest Trace Tech-map Find Better Cell Netlist Replace Element Verilog Write

21 06/05/08 Large C-element generation Verilog Read TLF Read Async Trans C-element Gen Timing Extract Tech-map Find Better Cell Verilog Write Timing Generate Splines TLF Write

22 06/05/08 Conclusions

23 06/05/08 Current state  Pre-alpha  Pretty unusable  Used to generate RedStar  Parts implemented when needed  About 6 months from public beta  Currently available on request

24 06/05/08 Future Work  Implement RedStar using system  Using as few commercial tools as possible  Example design  Complete system back-end components  Implement front-end  Scripting of operations  GUI  Benchmark suite

25 06/05/08 Biscotti Conclusions  Allows implementation of asynchronous designs  Without relying on commercial tools  Tools suited to asynchronous designs  Easy expansion  Allows rapid evaluation of researched techniques  Fairly compare to existing methods  Useful analysis techniques  Still incomplete

26 06/05/08 Thank you


Download ppt "06/05/08 Biscotti: a Framework for Token-Flow based Asynchronous Systems Charlie Brej."

Similar presentations


Ads by Google