Architectural-Level Synthesis. Giovanni De Micheli Integrated Systems Centre EPF Lausanne
|
|
- Alan Pope
- 6 years ago
- Views:
Transcription
1 Architectural-Level Synthesis Giovanni De Micheli Integrated Systems Centre EPF Lausanne This presentation can be used for non-commercial purposes as long as this note and the copyright footers are not removed Giovanni De Micheli All rights reserved Module1 Objectives Motivation Compiling language models into abstract models Behavioral-level optimization and program-level transformations (c) Giovanni De Micheli 2 1
2 Synthesis Transform behavioral into structural view Architectural-level synthesis: Architectural abstraction level Determine macroscopic structure Example: major building blocks Logic-level synthesis: Logic abstraction level Determine microscopic structure Example: logic gate interconnection (c) Giovanni De Micheli 3 Models and flows LANGUAGE MODELS ABSTRACT MODELS Verilog VHDL SystemC Esterel Statecharts BEHAVIORAL VIEW HDL HDL compilation compilation Operations and dependencies (Data-flow & sequencing graphs) FSMs Logic functions (State-diagrams & logic networks) ARCHITECTURAL LEVEL Schematics STRUCTURAL VIEW HDL translation Interconnected logic blocks (Logic networks) LOGIC LEVEL GDS2 Physical design (mask layout) (c) Giovanni De Micheli 4 2
3 Example diffeq { read (x; y; u; dx; a); repeat { xl = x+dx; ul = u (3. x. u. dx) (3. y. dx) yl = y + u. dx ; c = x < a; X = xl; u = ul; y = yl; } until ( c ) write (y) (c) Giovanni De Micheli 5 Example of structures * ALU STEERING & MEMORY CONTROL UNIT * ALU * ALU STEERING & MEMORY CONTROL UNIT (c) Giovanni De Micheli 6 3
4 Example Area (2,2) (2,1) X (1,2) (1,1) Latency (c) Giovanni De Micheli 7 Architectural-level synthesis motivation Raise input abstraction level Reduce specification of details Extend designer base Self-documenting design specifications Ease modifications and extensions Reduce design time Explore and optimize macroscopic structure: Series/parallel execution of operations (c) Giovanni De Micheli 8 4
5 Architectural-level synthesis Translate HDL models into sequencing graphs Behavioral-level optimization: Optimize abstract models independently from the implementation parameters Architectural synthesis and optimization: Create macroscopic structure: Data-path and control-unit Consider area and delay information of the implementation (c) Giovanni De Micheli 9 Compilation and behavioral optimization Software compilation: Compile program into intermediate form Optimize intermediate form Generate target code for an architecture Hardware compilation: Compile HDL model into sequencing graph Optimize sequencing graph Generate gate-level interconnection for a cell library (c) Giovanni De Micheli 10 5
6 Hardware and software compilation front-end Intermediate form back-end lex parse optimization codegen front-end Intermediate form back-end lex parse behavioral optimization a-synthesis l-synthesis l-binding (c) Giovanni De Micheli 11 Front-end: Compilation Lexical and syntax analysis Parse-tree generation Macro-expansion Expansion of meta-variables Semantic analysis: Data-flow and control-flow analysis Type checking Resolve arithmetic and relational operators (c) Giovanni De Micheli 12 6
7 Parse tree example a = p + q * r assignment = identifier a expression + identifier p expression * identifier q identifier r (c) Giovanni De Micheli 13 Behavioral-level optimization Semantic-preserving transformations aiming at simplifying the model Applied to parse-trees or during their generation Taxonomy: Data-flow based transformations Control-flow based transformations (c) Giovanni De Micheli 14 7
8 Data-flow based transformations Tree-height reduction Constant and variable propagation Common sub-expression elimination Dead-code elimination Operator-strength reduction Code motion (c) Giovanni De Micheli 15 Tree-height reduction Applied to arithmetic expressions Goal: Split into two-operand expressions to exploit hardware parallelism at best Techniques: Balance the expression tree Exploit commutativity, associativity and distributivity (c) Giovanni De Micheli 16 8
9 Example of tree-height reduction using commutativity and associativity * * a b c d a d b c x = a + b * c + d x = (a + d) + b * c (c) Giovanni De Micheli 17 Example of tree-height reduction using distributivity * + + * * * * * * a b c d e a b c d a e x = a * (b * c * d + e) x = a * b * c * d + a * e; (c) Giovanni De Micheli 18 9
10 Constant propagation a = 0; b = a + 1; c = 2 * b; a = 0; b = 1; c = 2; Variable propagation: a = x; b = a + 1; c = 2 * x; a = x; b = x + 1; c = 2 * x; Examples of propagation (c) Giovanni De Micheli 19 Logic expressions: Sub-expression elimination Performed by logic optimization Kernel-based methods Arithmetic expressions: Search isomorphic patterns in the parse trees Example: a = x + y; b = a +1; c = x + y a = x + y; b = a + 1; c = a; (c) Giovanni De Micheli 20 10
11 Examples of other transformations Dead-code elimination: a = x; b = x + 1; c = 2 * x; a = x; can be removed if not referenced Operator-strength reduction: a = x 2, b = 3 * x; a = x * x; t = x << 1; b = x + t; Code motion: for ( i = 1; i < a * b) { } t = a * b; for ( i = 1; i < t) { } (c) Giovanni De Micheli 21 Control-flow based transformations Model expansion Conditional expansion Loop expansion Block-level transformations (c) Giovanni De Micheli 22 11
12 Model expansion Expand subroutine Flatten hierarchy Expand scope of other optimization techniques Problematic when model is called more than once Example: x = a + b; y = a * b; z = foo (x, y); foo(p,q) { t=q - p; return (t); } By expanding foo: x = a + b; y = a*b; z = y x; (c) Giovanni De Micheli 23 Conditional expansion Transform conditional into parallel execution with test at the end Useful when test depends on late signals May preclude hardware sharing Always useful for logic expressions Example: y = ab; if (a) {x = b + d; } else { x = bd; } Can be expanded to: x = a (b + d) + a bd And simplified as: y = ab; x = y + d ( a + b ) (c) Giovanni De Micheli 24 12
13 Loop expansion Applicable to loops with data-independent exit conditions Useful to expand scope of other optimization techniques Problematic when loop has many iterations Example: x = 0; for ( I = 1; I < 3; I ++ ) { x = x + 1; } Expanded to: x = 0; x = x + 1; x = x + 2; x = x + 3 (c) Giovanni De Micheli 25 Module2 Objectives Architectural optimization Scheduling, resource sharing, estimation (c) Giovanni De Micheli 26 13
14 Architectural synthesis and optimization Synthesize macroscopic structure in terms of buildingblocks Explore area/performance trade-off: maximize performance implementations subject to area constraints minimize area implementations subject to performance constraints Determine an optimal implementation Create logic model for data-path and control (c) Giovanni De Micheli 27 Design space: Design space and objectives Set of all feasible implementations Implementation parameters: Area Performance: Cycle-time Latency Throughput (for pipelined implementations) Power consumption (c) Giovanni De Micheli 28 14
15 Design evaluation space Area Area Area Area Max Cycle-time Latency Latency Latency Max Latency (c) Giovanni De Micheli 29 Hardware modeling Circuit behavior: Sequencing graphs Building blocks: Resources Constraints: Timing and resource usage (c) Giovanni De Micheli 30 15
16 Resources Functional resources: Perform operations on data Example: arithmetic and logic blocks Storage resources: Store data Example: memory and registers Interface resources: Example: busses and ports (c) Giovanni De Micheli 31 Resources and circuit families Resource-dominated circuits. Area and performance depend on few, well-characterized blocks Example: DSP circuits Non resource-dominated circuits Area and performance are strongly influenced by sparse logic, control and wiring Example: some ASIC circuits (c) Giovanni De Micheli 32 16
17 Implementation constraints Timing constraints: Cycle-time Latency of a set of operations Time spacing between operation pairs Resource constraints: Resource usage (or allocation) Partial binding (c) Giovanni De Micheli 33 Synthesis in the temporal domain Scheduling: Associate a start-time with each operation Determine latency and parallelism of the implementation Scheduled sequencing graph: Sequencing graph with start-time annotation (c) Giovanni De Micheli 34 17
18 Example NOP 0 TIME * * * * + 10 TIME * * + < 11 TIME 3-4 TIME 4-5 NOP n (c) Giovanni De Micheli 35 Binding: Synthesis in the spatial domain Associate a resource with each operation with the same type Determine the area of the implementation Sharing: Bind a resource to more than one operation Operations must not execute concurrently Bound sequencing graph: Sequencing graph with resource annotation (c) Giovanni De Micheli 36 18
19 Example NOP 0 (1,1) (1,2) (1,3) (1,4) TIME 1 * * * * + 10 (2,2) TIME * * + < 11 TIME 3 (2,1) - 4 TIME 4-5 NOP n (c) Giovanni De Micheli 37 Estimation Resource-dominated circuits. Area = sum of the area of the resources bound to the operations Determined by binding Latency = start time of the sink operation (minus start time of the source operation) Determined by scheduling Non resource-dominated circuits Area also affected by: Registers, steering logic, wiring and control Cycle-time also affected by: Steering logic, wiring and (possibly) control (c) Giovanni De Micheli 38 19
20 Approaches to architectural optimization Multiple-criteria optimization problem: Area, latency, cycle-time Determine Pareto optimal points: Implementations such that no other has all parameters with inferior values Draw trade-off curves: Discontinuous and highly nonlinear (c) Giovanni De Micheli 39 Approaches to architectural optimization Area/latency trade-off for some values of the cycle-time. Cycle-time/latency trade-off for some binding (area) Area/cycle-time trade-off for some schedules (latency) (c) Giovanni De Micheli 40 20
21 Rationale: Area-latency trade-off Cycle-time dictated by system constraints Resource-dominated circuits: Area is determined by resource usage Approaches: Schedule for minimum latency under resource usage constraints Schedule for minimum resource usage under latency constraints for varying cycle-time constraints (c) Giovanni De Micheli 41 Area/latency trade-off Area (2,2) (2,1) (3,2) (3,1) X (1,2) (1,1) (2,1) Cycle-time Latency (c) Giovanni De Micheli 42 21
22 Summary Behavioral optimization: Create abstract models from HDL models Optimize models without considering implementation parameters Architectural synthesis and optimization Consider resource parameters Multiple-criteria optimization problem: area, latency, cycle-time (c) Giovanni De Micheli 43 22
HDL. Operations and dependencies. FSMs Logic functions HDL. Interconnected logic blocks HDL BEHAVIORAL VIEW LOGIC LEVEL ARCHITECTURAL LEVEL
ARCHITECTURAL-LEVEL SYNTHESIS Motivation. Outline cgiovanni De Micheli Stanford University Compiling language models into abstract models. Behavioral-level optimization and program-level transformations.
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Lecture 3 Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI System Model According to Abstraction level Architectural, logic and geometrical View Behavioral,
More informationHigh Level Synthesis. Shankar Balachandran Assistant Professor, Dept. of CSE IIT Madras
High Level Synthesis Shankar Balachandran Assistant Professor, Dept. of CSE IIT Madras shankar@cse.iitm.ac.in References and Copyright Tetbooks referred (none required) [Mic94] G. De Micheli Synthesis
More informationMODELING LANGUAGES AND ABSTRACT MODELS. Giovanni De Micheli Stanford University. Chapter 3 in book, please read it.
MODELING LANGUAGES AND ABSTRACT MODELS Giovanni De Micheli Stanford University Chapter 3 in book, please read it. Outline Hardware modeling issues: Representations and models. Issues in hardware languages.
More informationUnit 2: High-Level Synthesis
Course contents Unit 2: High-Level Synthesis Hardware modeling Data flow Scheduling/allocation/assignment Reading Chapter 11 Unit 2 1 High-Level Synthesis (HLS) Hardware-description language (HDL) synthesis
More informationCOE 561 Digital System Design & Synthesis Introduction
1 COE 561 Digital System Design & Synthesis Introduction Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Outline Course Topics Microelectronics Design
More informationHardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University
Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis
More informationOverview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips
Overview CSE372 Digital Systems Organization and Design Lab Prof. Milo Martin Unit 5: Hardware Synthesis CAD (Computer Aided Design) Use computers to design computers Virtuous cycle Architectural-level,
More informationIntroduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation
Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,
More informationOverview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions
Logic Synthesis Overview Design flow Principles of logic synthesis Logic Synthesis with the common tools Conclusions 2 System Design Flow Electronic System Level (ESL) flow System C TLM, Verification,
More informationEEL 4783: HDL in Digital System Design
EEL 4783: HDL in Digital System Design Lecture 4: HLS Intro* Prof. Mingjie Lin *Notes are drawn from the textbook and the George Constantinides notes 1 Course Material Sources 1) Low-Power High-Level Synthesis
More informationHigh-Level Synthesis Creating Custom Circuits from High-Level Code
High-Level Synthesis Creating Custom Circuits from High-Level Code Hao Zheng Comp Sci & Eng University of South Florida Exis%ng Design Flow Register-transfer (RT) synthesis - Specify RT structure (muxes,
More informationAdministrivia. What is Synthesis? What is architectural synthesis? Approximately 20 1-hour lectures An assessed mini project.
Synthesis of Digital Architectures Self-contained course no previous requirements beyond compulsory courses all material is described in these notes and during the lectures Course materials will draw on
More informationHigh Level Synthesis
High Level Synthesis Design Representation Intermediate representation essential for efficient processing. Input HDL behavioral descriptions translated into some canonical intermediate representation.
More informationWriting Circuit Descriptions 8
8 Writing Circuit Descriptions 8 You can write many logically equivalent descriptions in Verilog to describe a circuit design. However, some descriptions are more efficient than others in terms of the
More informationEmbedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, Delhi
Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, Delhi Lecture - 34 Compilers for Embedded Systems Today, we shall look at the compilers, which
More informationFPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1
FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital
More informationSPARK: A Parallelizing High-Level Synthesis Framework
SPARK: A Parallelizing High-Level Synthesis Framework Sumit Gupta Rajesh Gupta, Nikil Dutt, Alex Nicolau Center for Embedded Computer Systems University of California, Irvine and San Diego http://www.cecs.uci.edu/~spark
More informationAdvanced Design System 1.5. DSP Synthesis
Advanced Design System 1.5 DSP Synthesis December 2000 Notice The information contained in this document is subject to change without notice. Agilent Technologies makes no warranty of any kind with regard
More informationCOP5621 Exam 4 - Spring 2005
COP5621 Exam 4 - Spring 2005 Name: (Please print) Put the answers on these sheets. Use additional sheets when necessary. Show how you derived your answer when applicable (this is required for full credit
More informationSynthesis and Optimization of Digital Circuits
Synthesis and Optimization of Digital Circuits Dr. Travis Doom Wright State University Computer Science and Engineering Outline Introduction Microelectronics Micro economics What is design? Techniques
More informationSystem Level Design For Low Power. Yard. Doç. Dr. Berna Örs Yalçın
System Level Design For Low Power Yard. Doç. Dr. Berna Örs Yalçın References System-Level Design Methodology, Daniel D. Gajski Hardware-software co-design of embedded systems : the POLIS approach / by
More informationAdvanced Design System DSP Synthesis
Advanced Design System 2002 DSP Synthesis February 2002 Notice The information contained in this document is subject to change without notice. Agilent Technologies makes no warranty of any kind with regard
More informationSCHEDULING II Giovanni De Micheli Stanford University
SCHEDULING II Giovanni De Micheli Stanford University Scheduling under resource constraints Simplified models: Hu's algorithm. Heuristic algorithms: List scheduling. Force-directed scheduling. Hu's algorithm
More informationRTL Coding General Concepts
RTL Coding General Concepts Typical Digital System 2 Components of a Digital System Printed circuit board (PCB) Embedded d software microprocessor microcontroller digital signal processor (DSP) ASIC Programmable
More informationVHDL for Synthesis. Course Description. Course Duration. Goals
VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes
More informationSynthesis at different abstraction levels
Synthesis at different abstraction levels System Level Synthesis Clustering. Communication synthesis. High-Level Synthesis Resource or time constrained scheduling Resource allocation. Binding Register-Transfer
More informationOverall Sequential Design Flow. VHDL, Verilog, C?, C++?, Java? CS150 Spring 98 R. Newton & K. Pister CS150 Newton/Pister. Behavioral.
Outline Last time: Review State Tables & State Transition Diagrams Implementation Using D Flip-Flops Machine Equivalence Incompletely Specified Machines State Assignment & State Coding Schemes Design Example:
More informationEE 466/586 VLSI Design. Partha Pande School of EECS Washington State University
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University pande@eecs.wsu.edu Lecture 18 Implementation Methods The Design Productivity Challenge Logic Transistors per Chip (K) 10,000,000.10m
More informationCHAPTER 3 METHODOLOGY. 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier
CHAPTER 3 METHODOLOGY 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier The design analysis starts with the analysis of the elementary algorithm for multiplication by
More information81920**slide. 1Developing the Accelerator Using HLS
81920**slide - 1Developing the Accelerator Using HLS - 82038**slide Objectives After completing this module, you will be able to: Describe the high-level synthesis flow Describe the capabilities of the
More informationReference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering
FPGA Fabrics Reference Wayne Wolf, FPGA-Based System Design Pearson Education, 2004 Logic Design Process Combinational logic networks Functionality. Other requirements: Size. Power. Primary inputs Performance.
More informationEN2911X: Reconfigurable Computing Topic 03: Reconfigurable Computing Design Methodologies
EN2911X: Reconfigurable Computing Topic 03: Reconfigurable Computing Design Methodologies Professor Sherief Reda http://scale.engin.brown.edu Electrical Sciences and Computer Engineering School of Engineering
More informationSystem Synthesis of Digital Systems
System Synthesis Introduction 1 System Synthesis of Digital Systems Petru Eles, Zebo Peng System Synthesis Introduction 2 Literature: Introduction P. Eles, K. Kuchcinski and Z. Peng "System Synthesis with
More informationEEL 4783: HDL in Digital System Design
EEL 4783: HDL in Digital System Design Lecture 10: Synthesis Optimization Prof. Mingjie Lin 1 What Can We Do? Trade-offs with speed versus area. Resource sharing for area optimization. Pipelining, retiming,
More informationEE382M.20: System-on-Chip (SoC) Design
EE82M.20: SystemonChip (SoC) Design Lecture 1 Resource Allocation and Binding Source: G. De Micheli, Integrated Systems Center, EPFL Synthesis and Optimization of Digital Circuits, McGraw Hill, 2001. Andreas
More informationProgramming Languages, Summary CSC419; Odelia Schwartz
Programming Languages, Summary CSC419; Odelia Schwartz Chapter 1 Topics Reasons for Studying Concepts of Programming Languages Programming Domains Language Evaluation Criteria Influences on Language Design
More informationAn introduction to CoCentric
A Hand-Out 1 An introduction to CoCentric Las Palmas de G. C., Spain Jun, 27 th, 2002 Agenda 2 System-level SoC design What is SystemC? CoCentric System Studio SystemC based designs verification CoCentric
More informationLinking Layout to Logic Synthesis: A Unification-Based Approach
Linking Layout to Logic Synthesis: A Unification-Based Approach Massoud Pedram Department of EE-Systems University of Southern California Los Angeles, CA February 1998 Outline Introduction Technology and
More informationGiovanni De Micheli. Integrated Systems Centre EPF Lausanne
Two-level Logic Synthesis and Optimization Giovanni De Micheli Integrated Systems Centre EPF Lausanne This presentation can be used for non-commercial purposes as long as this note and the copyright footers
More informationLecture 2 Hardware Description Language (HDL): VHSIC HDL (VHDL)
Lecture 2 Hardware Description Language (HDL): VHSIC HDL (VHDL) Pinit Kumhom VLSI Laboratory Dept. of Electronic and Telecommunication Engineering (KMUTT) Faculty of Engineering King Mongkut s University
More informationLECTURE 3. Compiler Phases
LECTURE 3 Compiler Phases COMPILER PHASES Compilation of a program proceeds through a fixed series of phases. Each phase uses an (intermediate) form of the program produced by an earlier phase. Subsequent
More informationEECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis
EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State
More informationHW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999
HW/SW Co-design Design of Embedded Systems Jaap Hofstede Version 3, September 1999 Embedded system Embedded Systems is a computer system (combination of hardware and software) is part of a larger system
More informationCompiler Optimization
Compiler Optimization The compiler translates programs written in a high-level language to assembly language code Assembly language code is translated to object code by an assembler Object code modules
More informationMIDTERM EXAM (Solutions)
MIDTERM EXAM (Solutions) Total Score: 100, Max. Score: 83, Min. Score: 26, Avg. Score: 57.3 1. (10 pts.) List all major categories of programming languages, outline their definitive characteristics and
More information23. Digital Baseband Design
23. Digital Baseband Design Algorithm-to-VLSI Circuit Refinement (Floating Point) Tradeoff (SNR Loss, BER) (Fixed Point) VHDL, Verilog VHDL, Verilog Memory Control For I=0 to I=15 Sum = Sum + array[i]
More informationINTERNATIONAL JOURNAL OF PROFESSIONAL ENGINEERING STUDIES Volume VII /Issue 2 / OCT 2016
NEW VLSI ARCHITECTURE FOR EXPLOITING CARRY- SAVE ARITHMETIC USING VERILOG HDL B.Anusha 1 Ch.Ramesh 2 shivajeehul@gmail.com 1 chintala12271@rediffmail.com 2 1 PG Scholar, Dept of ECE, Ganapathy Engineering
More informationSunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.
World Class Verilog & SystemVerilog Training Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff Cummings
More informationSystem Level Design Flow
System Level Design Flow What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine www.cecs.uci.edu/~gajski System Level Design Flow What is
More informationV1 - VHDL Language. FPGA Programming with VHDL and Simulation (through the training Xilinx, Lattice or Actel FPGA are targeted) Objectives
Formation VHDL Language: FPGA Programming with VHDL and Simulation (through the training Xilinx, Lattice or Actel FPGA are targeted) - Programmation: Logique Programmable V1 - VHDL Language FPGA Programming
More informationFILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS. Waqas Akram, Cirrus Logic Inc., Austin, Texas
FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS Waqas Akram, Cirrus Logic Inc., Austin, Texas Abstract: This project is concerned with finding ways to synthesize hardware-efficient digital filters given
More informationRIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8)
RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) HDL-BASED SYNTHESIS Modern ASIC design use HDL together with synthesis tool to create
More informationCSE 501: Compiler Construction. Course outline. Goals for language implementation. Why study compilers? Models of compilation
CSE 501: Compiler Construction Course outline Main focus: program analysis and transformation how to represent programs? how to analyze programs? what to analyze? how to transform programs? what transformations
More informationRTL Power Estimation and Optimization
Power Modeling Issues RTL Power Estimation and Optimization Model granularity Model parameters Model semantics Model storage Model construction Politecnico di Torino Dip. di Automatica e Informatica RTL
More informationA Tutorial Introduction 1
Preface From the Old to the New Acknowledgments xv xvii xxi 1 Verilog A Tutorial Introduction 1 Getting Started A Structural Description Simulating the binarytoeseg Driver Creating Ports For the Module
More informationAbout the Authors... iii Introduction... xvii. Chapter 1: System Software... 1
Table of Contents About the Authors... iii Introduction... xvii Chapter 1: System Software... 1 1.1 Concept of System Software... 2 Types of Software Programs... 2 Software Programs and the Computing Machine...
More informationHIGH-LEVEL SYNTHESIS
HIGH-LEVEL SYNTHESIS Page 1 HIGH-LEVEL SYNTHESIS High-level synthesis: the automatic addition of structural information to a design described by an algorithm. BEHAVIORAL D. STRUCTURAL D. Systems Algorithms
More informationCAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran
CAD for VLSI Design - I Lecture 21 V. Kamakoti and Shankar Balachandran Overview of this Lecture Understanding the process of Logic synthesis Logic Synthesis of HDL constructs Logic Synthesis What is this?
More informationHead, Dept of Electronics & Communication National Institute of Technology Karnataka, Surathkal, India
Mapping Signal Processing Algorithms to Architecture Sumam David S Head, Dept of Electronics & Communication National Institute of Technology Karnataka, Surathkal, India sumam@ieee.org Objectives At the
More informationWhat Is VHDL? VHSIC (Very High Speed Integrated Circuit) Hardware Description Language IEEE 1076 standard (1987, 1993)
What Is VHDL? VHSIC (Very High Speed Integrated Circuit) Hardware Description Language IEEE 1076 standard (1987, 1993) Only possible to synthesize logic from a subset of VHDL Subset varies according to
More informationIntroduction to Verilog HDL
Introduction to Verilog HDL Ben Abdallah Abderazek National University of Electro-communications, Tokyo, Graduate School of information Systems May 2004 04/09/08 1 What you will understand after having
More information1 Design Process HOME CONTENTS INDEX. For further assistance, or call your local support center
1 Design Process VHDL Compiler, a member of the Synopsys HDL Compiler family, translates and optimizes a VHDL description to an internal gate-level equivalent. This representation is then compiled with
More informationDigital System Design Lecture 2: Design. Amir Masoud Gharehbaghi
Digital System Design Lecture 2: Design Amir Masoud Gharehbaghi amgh@mehr.sharif.edu Table of Contents Design Methodologies Overview of IC Design Flow Hardware Description Languages Brief History of HDLs
More informationISE Design Suite Software Manuals and Help
ISE Design Suite Software Manuals and Help These documents support the Xilinx ISE Design Suite. Click a document title on the left to view a document, or click a design step in the following figure to
More informationCompiler Code Generation COMP360
Compiler Code Generation COMP360 Students who acquire large debts putting themselves through school are unlikely to think about changing society. When you trap people in a system of debt, they can t afford
More informationDesigning with VHDL and FPGA
Designing with VHDL and FPGA Instructor: Dr. Ahmad El-Banna lab# 1 1 Agenda Course Instructor Course Contents Course References Overview of Digital Design Intro. to VHDL language and FPGA technology IDE
More informationIntroduction to VHDL. Module #5 Digilent Inc. Course
Introduction to VHDL Module #5 Digilent Inc. Course Background Availability of CAD tools in the early 70 s Picture-based schematic tools Text-based netlist tools Schematic tools dominated CAD through mid-1990
More informationEfficient Hardware Acceleration on SoC- FPGA using OpenCL
Efficient Hardware Acceleration on SoC- FPGA using OpenCL Advisor : Dr. Benjamin Carrion Schafer Susmitha Gogineni 30 th August 17 Presentation Overview 1.Objective & Motivation 2.Configurable SoC -FPGA
More informationCompiler Design. Computer Science & Information Technology (CS) Rank under AIR 100
GATE- 2016-17 Postal Correspondence 1 Compiler Design Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory, Practice Set Key concepts,
More informationControl Flow Analysis
Control Flow Analysis Last time Undergraduate compilers in a day Today Assignment 0 due Control-flow analysis Building basic blocks Building control-flow graphs Loops January 28, 2015 Control Flow Analysis
More informationVerilog for High Performance
Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes
More informationUsing SystemC to Implement Embedded Software
Using SystemC to Implement Embedded Software Brijesh Sirpatil James M. Baker, Jr. James R. Armstrong Bradley Department of Electrical and Computer Engineering, Virginia Tech, Blacksburg, VA Abstract This
More informationArea Efficient, Low Power Array Multiplier for Signed and Unsigned Number. Chapter 3
Area Efficient, Low Power Array Multiplier for Signed and Unsigned Number Chapter 3 Area Efficient, Low Power Array Multiplier for Signed and Unsigned Number Chapter 3 3.1 Introduction The various sections
More informationTopics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1)
Topics Verilog Hardware modeling and simulation Event-driven simulation Basics of register-transfer design: data paths and controllers; ASM charts. High-level synthesis Initially a proprietary language,
More informationELCT 501: Digital System Design
ELCT 501: Digital System Lecture 4: CAD tools Dr. Mohamed Abd El Ghany, Introduction to CAD Tools The preceding lectures introduced a basic approach for synthesis of logic circuits. A designer could use
More informationLecture 3: Modeling in VHDL. EE 3610 Digital Systems
EE 3610: Digital Systems 1 Lecture 3: Modeling in VHDL VHDL: Overview 2 VHDL VHSIC Hardware Description Language VHSIC=Very High Speed Integrated Circuit Programming language for modelling of hardware
More informationHardware/Software Partitioning for SoCs. EECE Advanced Topics in VLSI Design Spring 2009 Brad Quinton
Hardware/Software Partitioning for SoCs EECE 579 - Advanced Topics in VLSI Design Spring 2009 Brad Quinton Goals of this Lecture Automatic hardware/software partitioning is big topic... In this lecture,
More informationChapter 5: ASICs Vs. PLDs
Chapter 5: ASICs Vs. PLDs 5.1 Introduction A general definition of the term Application Specific Integrated Circuit (ASIC) is virtually every type of chip that is designed to perform a dedicated task.
More informationMetaRTL: Raising the Abstraction Level of RTL Design
MetaRTL: Raising the Abstraction Level of RTL Design Jianwen Zhu Electrical and Computer Engineering University of Toronto March 16, 2001 zhu@eecg.toronto.edu http://www.eecg.toronto.edu/ zhu DATE 2001,
More informationSpiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.
1-4.1 1-4.2 Spiral 1 / Unit 4 Verilog HDL Mark Redekopp OVERVIEW 1-4.3 1-4.4 Digital Circuit Design Steps Digital Circuit Design Description Design and computer-entry of circuit Verification Input Stimulus
More informationCPSC 313, 04w Term 2 Midterm Exam 2 Solutions
1. (10 marks) Short answers. CPSC 313, 04w Term 2 Midterm Exam 2 Solutions Date: March 11, 2005; Instructor: Mike Feeley 1a. Give an example of one important CISC feature that is normally not part of a
More informationSardar Vallabhbhai Patel Institute of Technology (SVIT), Vasad M.C.A. Department COSMOS LECTURE SERIES ( ) (ODD) Code Optimization
Sardar Vallabhbhai Patel Institute of Technology (SVIT), Vasad M.C.A. Department COSMOS LECTURE SERIES (2018-19) (ODD) Code Optimization Prof. Jonita Roman Date: 30/06/2018 Time: 9:45 to 10:45 Venue: MCA
More informationPrinciples of Compiler Construction ( )
Principles of Compiler Construction ( ) Dr Mayer Goldberg September 5, 2016 Contents 1 Course Objectives 1 2 Course Requirements 2 3 Detailed Syllabus 3 4 References 6 Course number: 201-1-2061 Mandatory
More informationNikhil Gupta. FPGA Challenge Takneek 2012
Nikhil Gupta FPGA Challenge Takneek 2012 RECAP FPGA Field Programmable Gate Array Matrix of logic gates Can be configured in any way by the user Codes for FPGA are executed in parallel Configured using
More informationHardware Acceleration of Edge Detection Algorithm on FPGAs
Hardware Acceleration of Edge Detection Algorithm on FPGAs Muthukumar Venkatesan and Daggu Venkateshwar Rao Department of Electrical and Computer Engineering University of Nevada Las Vegas. Las Vegas NV
More informationSynthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis. Spring 2007 Lec #8 -- HW Synthesis 1
Verilog Synthesis Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis Spring 2007 Lec #8 -- HW Synthesis 1 Logic Synthesis Verilog and VHDL started out
More informationCombinational hazards
Combinational hazards We break down combinational hazards into two major categories, logic hazards and function hazards. A logic hazard is characterized by the fact that it can be eliminated by proper
More informationDigital Hardware-/Softwaresystems Specification
Digital Hardware-/Softwaresystems Specification Seminar Architecture & Design Methods for Embedded Systems Summer Term 2006 University of Stuttgart Faculty of Computer Science, Electrical Engineering and
More informationHardware Software Codesign of Embedded Systems
Hardware Software Codesign of Embedded Systems Rabi Mahapatra Texas A&M University Today s topics Course Organization Introduction to HS-CODES Codesign Motivation Some Issues on Codesign of Embedded System
More informationSystem-level simulation (HW/SW co-simulation) Outline. EE290A: Design of Embedded System ASV/LL 9/10
System-level simulation (/SW co-simulation) Outline Problem statement Simulation and embedded system design functional simulation performance simulation POLIS implementation partitioning example implementation
More informationProgrammable Logic Devices
Programmable Logic Devices INTRODUCTION A programmable logic device or PLD is an electronic component used to build reconfigurable digital circuits. Unlike a logic gate, which has a fixed function, a PLD
More informationA Simple Syntax-Directed Translator
Chapter 2 A Simple Syntax-Directed Translator 1-1 Introduction The analysis phase of a compiler breaks up a source program into constituent pieces and produces an internal representation for it, called
More information101-1 Under-Graduate Project Digital IC Design Flow
101-1 Under-Graduate Project Digital IC Design Flow Speaker: Ming-Chun Hsiao Adviser: Prof. An-Yeu Wu Date: 2012/9/25 ACCESS IC LAB Outline Introduction to Integrated Circuit IC Design Flow Verilog HDL
More informationVHDL simulation and synthesis
VHDL simulation and synthesis How we treat VHDL in this course You will not become an expert in VHDL after taking this course The goal is that you should learn how VHDL can be used for simulation and synthesis
More informationHigh-Level Synthesis (HLS)
Course contents Unit 11: High-Level Synthesis Hardware modeling Data flow Scheduling/allocation/assignment Reading Chapter 11 Unit 11 1 High-Level Synthesis (HLS) Hardware-description language (HDL) synthesis
More informationAnnouncements. Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project
- Fall 2002 Lecture 20 Synthesis Sequential Logic Announcements Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project» Teams
More informationEvolution of CAD Tools & Verilog HDL Definition
Evolution of CAD Tools & Verilog HDL Definition K.Sivasankaran Assistant Professor (Senior) VLSI Division School of Electronics Engineering VIT University Outline Evolution of CAD Different CAD Tools for
More informationCadence SystemC Design and Verification. NMI FPGA Network Meeting Jan 21, 2015
Cadence SystemC Design and Verification NMI FPGA Network Meeting Jan 21, 2015 The High Level Synthesis Opportunity Raising Abstraction Improves Design & Verification Optimizes Power, Area and Timing for
More informationA VARIETY OF ICS ARE POSSIBLE DESIGNING FPGAS & ASICS. APPLICATIONS MAY USE STANDARD ICs or FPGAs/ASICs FAB FOUNDRIES COST BILLIONS
architecture behavior of control is if left_paddle then n_state
More information