Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
High Level Languages: A Comparison By Joel Best. 2 Sources The Challenges of Synthesizing Hardware from C-Like Languages  by Stephen A. Edwards High-Level.
Give qualifications of instructors: DAP
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
Modern VLSI Design 2e: Chapter 8 Copyright  1998 Prentice Hall PTR Topics n High-level synthesis. n Architectures for low power. n Testability and architecture.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei ECE 300 Advanced VLSI Design Fall 2006 Lecture 24: CAD Systems &
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
The Design Process Outline Goal Reading Design Domain Design Flow
Behavioral Synthesis Outline –Synthesis Procedure –Example –Domain-Specific Synthesis –Silicon Compilers –Example Tools Goal –Understand behavioral synthesis.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Spring 08, Jan 15 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Spring 07, Jan 16 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
林永隆 (Youn-Long Lin) Department of Computer Science National Tsing Hua University High-Level Synthesis of VLSIs THEDA Tsing Hua Electronic Design Automation.
 2000 M. CiesielskiPTL Synthesis1 Synthesis for Pass Transistor Logic Maciej Ciesielski Dept. of Electrical & Computer Engineering University of Massachusetts,
Network-on-Chip: Communication Synthesis Department of Computer Science Texas A&M University.
Low power architecture and HDL coding practices for on-board hardware applications Kaushal D. Buch ASIC Engineer, eInfochips Ltd., Ahmedabad, India
Design methodology.
1 VLSI Design SMD154 LOW-POWER DESIGN Magnus Eriksson & Simon Olsson.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
Principles Of Digital Design Chapter 1 Introduction Design Representation Levels of Abstraction Design Tasks and Design Processes CAD Tools.
CAD for Physical Design of VLSI Circuits
Extreme Makeover for EDA Industry
Automated Design of Custom Architecture Tulika Mitra
Logic Synthesis for Low Power(CHAPTER 6) 6.1 Introduction 6.2 Power Estimation Techniques 6.3 Power Minimization Techniques 6.4 Summary.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
Computer-Aided Design of Digital VLSI Circuits & Systems Priyank Kalla Dept. of Elec. & Comp. Engineering University of Utah,SLC Perspectives on Next-Generation.
CMOS Design Methods.
ECE Advanced Digital Systems Design Lecture 12 – Timing Analysis Capt Michael Tanner Room 2F46A HQ U.S. Air Force Academy I n t e g r i.
ASIP Architecture for Future Wireless Systems: Flexibility and Customization Joseph Cavallaro and Predrag Radosavljevic Rice University Center for Multimedia.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Hardware/Software Co-design Design of Hardware/Software Systems A Class Presentation for VLSI Course by : Akbar Sharifi Based on the work presented in.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
ESL and High-level Design: Who Cares? Anmol Mathur CTO and co-founder, Calypto Design Systems.
L11: Lower Power High Level Synthesis(2) 성균관대학교 조 준 동 교수
3 rd Nov CSV881: Low Power Design1 Power Estimation and Modeling M. Balakrishnan.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
6. A PPLICATION MAPPING 6.3 HW/SW partitioning 6.4 Mapping to heterogeneous multi-processors 1 6. Application mapping (part 2)
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
ECE-C662 Lecture 2 Prawat Nagvajara
1 Power estimation in the algorithmic and register-transfer level September 25, 2006 Chong-Min Kyung.
LOGIC OPTIMIZATION USING TECHNOLOGY INDEPENDENT MUX BASED ADDERS IN FPGA Project Guide: Smt. Latha Dept of E & C JSSATE, Bangalore. From: N GURURAJ M-Tech,
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
VADA Lab.SungKyunKwan Univ. 1 L5:Lower Power Architecture Design 성균관대학교 조 준 동 교수
Test complexity of TED operations Use canonical property of TED for - Software Verification - Algorithm Equivalence check - High Level Synthesis M ac iej.
Processor Organization and Architecture Module III.
1 of 14 Lab 2: Design-Space Exploration with MPARM.
System-on-Chip Design
ASIC Design Methodology
EEE2135 Digital Logic Design Chapter 1. Introduction
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
Architecture & Organization 1
Architecture & Organization 1
Lesson 4 Synchronous Design Architectures: Data Path and High-level Synthesis (part two) Sept EE37E Adv. Digital Electronics.
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
Circuit Design Techniques for Low Power DSPs
HIGH LEVEL SYNTHESIS.
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL code ECE 448 – FPGA and ASIC Design.
Presentation transcript:

Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi

Section 10: Advanced Topics 2 Multi-Level Logic Synthesis M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi

Section 10: Advanced Topics 3 Objective The objective in multi-level logic synthesis is to minimize the cost under a given time- constraint (reflected as number of levels) or to perform an area-time tradeoff.

Section 10: Advanced Topics 4 Issues in Multi-level Logic Synthesis The main issue is to factorise the multiple outputs (or sub-expressions in a single output function) with a view to extract the common sub-expressions.

Section 10: Advanced Topics 5 Common Subexpression Extraction y1 y2 y1 y2 x1 x2 xn

Section 10: Advanced Topics 6 Example y1 = ac + b’c + de y2 = ae’ + b’e’ + e’f t1 = (a + b’) y1 = t1c + de y2 = t1e’ + e’f

Section 10: Advanced Topics 7 Binary Decision Diagram (BDD) For representation and manipulation of boolean functions, BDDs are used. For a given ordering of variables, the BDD representation for a function is canonical and for this reduced and ordered BDDs called ROBDDs are used.

Section 10: Advanced Topics 8 Example: BDD y1 = a + b’c a b cccc b

Section 10: Advanced Topics 9 Example: ROBDD a c b

Section 10: Advanced Topics 10 Low Power Design M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi

Section 10: Advanced Topics 11 Why Low Power Design ? The need for low power design originates from two different considerations Mobile applications: Battery life is a critical factor in making a product commercially successful High-frequency VLSI circuits where low power dissipation is critical for circuit functionality and reliability

Section 10: Advanced Topics 12 Technology Universally the technology of choice for low power is CMOS A major component of power consumption is the switching power with leakage etc. contributing insignificantly The power dissipated by a gate is given by 0.5  C load  V dd 2  E(transitions)/ T cyc

Section 10: Advanced Topics 13 Issues in Low Power Design Accurate estimations of power consumption at higher levels of design abstractions Power reducing design transformations Uniform distribution of power in the chip Packaging for effective power dissipation to maintain “cool” operations

Section 10: Advanced Topics 14 Power Estimation Power can be estimated by simulating the behavior at different levels. Transistor level Gate level RTL module level Software power estimation Architecture level

Section 10: Advanced Topics 15 Design Transformations Critical path reduction Reducing the number of operations Reducing the transition activity Reducing the interconnect capacitance Operation substitution Bit-width optimization

Section 10: Advanced Topics 16 Critical Path Reduction Reducing the critical path implies larger acceptable delays which in turn means a lower V dd V dd Delay

Section 10: Advanced Topics 17 Transition Activity Reduction Reduction in variation in path lengths Coding of numbers Coding of states and instructions

Section 10: Advanced Topics 18 Transition Activity Reduction (contd.) a b c d abc d

Section 10: Advanced Topics 19 Operation Substitution Some operations are very expensive in terms of power and in case it can be replaced by equivalent operations its is preferable e.g multiply by shift and add especially for multiplications with a constant

Section 10: Advanced Topics 20 Behavioral Synthesis M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi

Section 10: Advanced Topics 21 Why Behavioral Synthesis ? There is urgent need for pushing up the abstraction level at which the design can start. The reasons for this are: As the complexity increases, this is the only way to reduce the design turn around time An algorithmic description of the functionality is far easier to write than designing hardware

Section 10: Advanced Topics 22 Steps in Behavioral Synthesis Data path synthesis –Scheduling –Resource allocation (where resources include functional units, storage units, buses and interconnects) –Resource binding Control synthesis Clock synthesis

Section 10: Advanced Topics 23 Scheduling Assigning operations to control steps This phase has a lot of influence on resource allocation as what can be done concurrently depends upon the resource availability Complexity arises due to the range of available functional units (pipelined, multi- functional, multi-cycle etc.)

Section 10: Advanced Topics 24 Resource Allocation Typically manual but automating allocation algorithms are also available FU allocation: Complexity due to the range of operators i.e. Multi-cycle, multi-function, pipelined, mixed speed operators for the same operation Storage allocation: e.g. Registers, Memory units, Multi-port memories, Register files

Section 10: Advanced Topics 25 Resource Binding Examples of binding to be carried out are – Operation-operator binding –Variable-storage unit binding –Transfer-interconnect/bus binding Binding has considerable influence on number of interconnects Scheduling also influences binding

Section 10: Advanced Topics 26 Control & Clock Synthesis Generate a state machine from the control flow of the algorithm Identify the control and status signals Synthesize the control part Analyze the critical path to decide on the clock period

Section 10: Advanced Topics 27 Objectives in Behavioral Synthesis Minimize delay time or maximize performance Minimize cost or area Meet constraints on area and/or performance

Section 10: Advanced Topics 28 Recent Trends in Behavioral Synthesis Incorporate testability conditions in synthesis Incorporate power minimization as part of the design objective i.e. explore the design space from power considerations

Section 10: Advanced Topics 29 System Level Design & Modeling M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi

Section 10: Advanced Topics 30 Issues in System Level Design Specification –At different levels of design Verification –Formal verification –Simulation Partitioning and estimation Synthesis

Section 10: Advanced Topics 31 Characteristics of Current Systems One (or more) processors –Heterogeneous processor set IP cores for critical parts of the application Mixed hardware/software implementation Many systems are real-time reactive systems

Section 10: Advanced Topics 32 System Level Design Methodology

Section 10: Advanced Topics 33 Specification Functionality Concurrency Time/performance constraints Interface timings Area and power constraints

Section 10: Advanced Topics 34 Estimation Hardware estimate –Area(cost), performance and power estimation Software estimate –Code size, performance and power estimation Interface estimate –Bus bandwidth and power estimation

Section 10: Advanced Topics 35 Partitioning Hardware-software partitioning Task partitioning across multiple processors Communication partitioning across multiple buses

Section 10: Advanced Topics 36 Synthesis Processor synthesis (ASIPs) –Application specific instruction processor Hardware synthesis –Behavioral as well as logic Software synthesis –Code generation and retargetable compilers Interface synthesis

Section 10: Advanced Topics 37 Formal Verification Formal verification of functional specification by proving that the implementation is equivalent to specifications. –Theorem proving techniques –Temporal logic systems

Section 10: Advanced Topics 38 Simulation Verification by simulation though expensive but is the only widely used technique. Cosimulation e.g. C and VHDL Test stimulus generation