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

Slides:



Advertisements
Similar presentations
Chapter 3 Gate-Level Minimization
Advertisements

Non-synthesizability in Verilog Presented by Pradip Mukhopadhyay ISL-MOD3(E)PR3.
VERILOG: Synthesis - Combinational Logic Combination logic function can be expressed as: logic_output(t) = f(logic_inputs(t)) Rules Avoid technology dependent.
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Combinational Logic.
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
Figure 4.1. The function f (x1, x2, x3) =  m(0, 2, 4, 5, 6).
16/04/20151 Hardware Descriptive Languages these notes are taken from Mano’s book It can represent: Truth Table Boolean Expression Diagrams of gates and.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
SYEN 3330 Digital SystemsJung H. Kim 1 SYEN 3330 Digital Systems Chapter 6 – Part 1.
Uncle – An RTL Approach to Asynchronous Design Presentor : Chi-Chuan Chuang Date :
Power Visualization, Analysis, and Optimization Tools for FPGAs Matthew French, Li Wang and Michael Wirthlin USC, Information Sciences Institute, BYU.
High-Level Constructors and Estimators Majid Sarrafzadeh and Jason Cong Computer Science Department
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
ECE Synthesis & Verification - Lecture 8 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Introduction.
Introduction to Verilog (Behavioral Modeling). Agenda Gate Delays and User-Defined Primitives Behavioral Modeling Design Examples Hands-on Practice.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
1 DESIGN OF 8-BIT ALU Vijigish Lella Harish Gogineni Bangar Raju Singaraju Advisor: Dr. David W. Parent 8 May 2006.
1 Application Specific Integrated Circuits. 2 What is an ASIC? An application-specific integrated circuit (ASIC) is an integrated circuit (IC) customized.
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 JHDL Hardware Generation Mike Wirthlin and Matthew Koecher
Automated synthesis of micro-pipelines from behavioral Verilog HDL Ivan BlunnoPolitecnico di Torino Luciano LavagnoUniversità di Udine.
Router modeling using Ptolemy Xuanming Dong and Amit Mahajan May 15, 2002 EE290N.
Spring 2002EECS150 - Lec0-intro Page 1 EECS150 - Digital Design Lecture 8 - Hardware Description Languages February 14, 2002 John Wawrzynek.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
1 VLSI CAD Flow: Logic Synthesis, Lecture 13 by Ajay Joshi (Slides by S. Devadas)
Maria-Cristina Marinescu Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology A Synthesis Algorithm for Modular Design of.
TM Efficient IP Design flow for Low-Power High-Level Synthesis Quick & Accurate Power Analysis and Optimization Flow JAN Asher Berkovitz Yaniv.
Electronic Design Automation. Course Outline 1.Digital circuit design flow 2.Verilog Hardware Description Language 3.Logic Synthesis –Multilevel logic.
Digital Design Strategies and Techniques. Analog Building Blocks for Digital Primitives We implement logical devices with analog devices There is no magic.
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
ON LINE TEST GENERATION AND ANALYSIS R. Šeinauskas Kaunas University of Technology LITHUANIA.
ASIC Design Flow – An Overview Ing. Pullini Antonio
Xilinx Development Software Design Flow on Foundation M1.5
Sub-expression elimination Logic expressions: –Performed by logic optimization. –Kernel-based methods. Arithmetic expressions: –Search isomorphic patterns.
ICCD Conversion Driven Design of Binary to Mixed Radix Circuits Ashur Rafiev, Julian Murphy, Danil Sokolov, Alex Yakovlev School of EECE, Newcastle.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Lecture 2 1 ECE 412: Microcomputer Laboratory Lecture 2: Design Methodologies.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Shantanu Dutt ECE Dept. UIC
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Combinational network delay. n Logic optimization.
Karan Maini and Sriharsha Yerramalla ECE 753 Project #10 May 1, 2014 Tool for Customizing Fault Tolerance in a System.
CPEN Digital System Design
Final Simulation Remember that there are lots of different types of simulation!
Module 1.2 Introduction to Verilog
TOPIC : SYNTHESIS INTRODUCTION Module 4.3 : Synthesis.
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
ELEN 468 Lecture 131 ELEN 468 Advanced Logic Design Lecture 13 Synthesis of Combinational Logic II.
Curtis A. Nelson 1 Technology Mapping of Timed Circuits Curtis A. Nelson University of Utah September 23, 2002.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
Introduction to ASIC flow and Verilog HDL
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Combinational network delay. n Logic optimization.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
Slack Analysis in the System Design Loop Girish VenkataramaniCarnegie Mellon University, The MathWorks Seth C. Goldstein Carnegie Mellon University.
LECTURE VI USER DEFINED PRIMITIVES GATE-LEVEL MODELING.
Programmable Hardware: Hardware or Software?
ASIC Design Methodology
EMT 351/4 DIGITAL IC DESIGN Week # Synthesis of Sequential Logic 10.
Synthesis of Combinational Logic
ELEN 468 Advanced Logic Design
Two-phase Latch based design
Blame Passing for Analysis and Optimisation
Timing Analysis 11/21/2018.
ECE 551: Digital System Design & Synthesis
SYNTHESIS OF SEQUENTIAL LOGIC
Lesson 4 Synchronous Design Architectures: Data Path and High-level Synthesis (part two) Sept EE37E Adv. Digital Electronics.
High Performance Asynchronous Circuit Design and Application
THE ECE 554 XILINX DESIGN PROCESS
Reduction in synchronisation in bundled data systems
THE ECE 554 XILINX DESIGN PROCESS
Wagging Logic: Moore's Law will eventually fix it
Presentation transcript:

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

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

06/05/08 The Tool Problem

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

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

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

06/05/08 Current Biscotti Components

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

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

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

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

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

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

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

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

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)

06/05/08 Example Uses

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

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

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

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

06/05/08 Conclusions

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

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

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

06/05/08 Thank you