Achilles: A High-Level Synthesis System. for Asynchronous Circuits. Jordi Cortadella, Rosa M. Badia, Enric Pastor, and Abelardo Pardo y
|
|
- Posy Jones
- 5 years ago
- Views:
Transcription
1 Achilles: A High-Level Synthesis System for Asynchronous Circuits Jordi Cortadella, Rosa M. Badia, Enric Pastor, and Abelardo Pardo y Dept. of Computer Architecture Universitat Politecnica de Catalunya (Barcelona) jordic@ac.upc.es y Dept. of Electrical Engineering University of Colorado (Boulder) Abstract This paper presents Achilles, a High-Level Synthesis System for asynchronous digital circuits. A new architecture model based on a completely distributed control structure is proposed. The most relevant dierences from synthesis systems for synchronous circuits appear in the phases of scheduling and synthesis of the control. Signal Transition Graphs are automatically generated to describe the behavior of local controllers. 1 Introduction Asynchronous circuits require no global clock and elude, thus, the problem of clock skew. A task can be executed as soon as their preceding tasks are completed. The computation time of a task depends, in general, on the input data and can be represented by a distribution function with a worst-case and an average delay. The nonexistence of a global clock eases the extendability of asynchronous systems [1]. One-toone local synchronization between modules allows their interconnection without aecting the system's functionality. Furthermore, asynchronism does not add timing constraints that could eventually limit the physical size of the system. However, asynchronism also involves several problems that make circuit design dicult. Metastability, race conditions, and hazard conditions [2] have been topics deeply studied for many years, and design methodologies to synthesize error-free circuits have been proposed [3]. On the other hand, the design of an asynchronous circuit also implies some area penalty due to the overhead required for synchronization, mainly for the routing of dierential signals when using dual-rail encoding in self-timed units. As asynchronous circuits are more extensively used, there is a need of synthesis tools that hide the underlying complexity of their design to the user. Currently, most of the research is focused on the synthesis of asynchronous circuits from signal transition graphs (STGs) rstly introduced by Chu [4]. 7225) Work funded by CYCIT TIC , Dept. d'ensenyament de la Generalitat de Catalunya and ACiD-WG (Esprit
2 Until now, only synchronous architectures have been proposed for high-level synthesis systems. The eorts on synthesis from high-level languages have been mainly focused on the generation of asynchronous circuits by syntax{directed translation [5]. When conceiving synthesis algorithms for asynchronous circuits, the major dierences from those in the eld of synchronous circuits come from the fact of using a dierent timing model. Scheduling and control synthesis are, thus, the steps that need to be rethought when considering an asynchronous target architecture. Until now, the algorithms proposed for scheduling have been based on the existence of a global clock to dene control states [6, 7]. In an asynchronous execution model, the scheduling phase must determine timing precedences which preserve dependencies between operations, with an estimation of the performance according to the average processing speed of the hardware modules used to execute the operations. A centralized control unit approach would neglect most of the attractiveness of asynchronous systems. Global signals introduce delays that reduce the potential parallelism inherent to asynchronism. Furthermore, the number of states of the control unit grows exponentially with the number of control signals [4], which makes the synthesis of control units for large systems prohibitive. Therefore, models based on the distribution of control functions must be proposed for asynchronous systems. This paper presents Achilles, a high-level synthesis system for asynchronous circuits that is currently under development and focuses on those issues that dierentiate it from synthesis systems for synchronous circuits: architecture model, scheduling, and control synthesis. Section 2 describes the target architecture model used in Achilles. An overview of the synthesis system is presented in section 3. The scheduling algorithm is described in section 4. Section 5 explains how control units are generated from the schedule dened for the operations. Finally, section 6 concludes the paper. 2 Architecture Model The architecture model proposed in Achilles is based on two main key-notions: Processing Unit and Channel. A processing unit (PU) is an entity that executes operations. Two PUs can communicate to each other through unidirectional channels. The granularity of a PU may vary from the basic modules given in a library (adder, ALU, multiplexor, register, etc.) to large, complex modules (elliptic lter, microprocessor, etc.). Moreover, at lower levels of abstraction a PU may be composed of other PUs. Each PU consists of a data processing part and a control part. The data processing part is implemented by a self-timed module (either asynchronous or locally-synchronous) that executes operations. The control part manages the communication and synchronization with other PUs. There is no global PU snd(p ) 1 ack_rcv(p ) 1 port 1 channel PU rcv(p ) 2 port 2 ack_snd(p ) 2 Figure 1: Communication Protocol
3 control managing the functioning of the circuit. Thus, control is fully distributed among PUs, which communicate to each other locally. 2.1 Communication Protocol Communication between PUs follows a message passing handshake protocol as illustrated in gure 1. A channel has an active port in one PU (designated as p 1 ) and a passive port in other PU (p 2 ). Four primitives are used to implement the communication protocol: snd(p 1 ): Send data to p 1. rcv(p 2 ): Receive data from p 2. ack snd(p 2 ): Send data reception ack to p 2. ack rcv(p 1 ): Receive data reception ack from p 1. Communication between two PUs is initiated by the active PU (PU connected to the active port). Once the active PU has completed its operation sends the output data to p 1 (snd(p 1 )). The passive PU receives its input data from p 2 (rcv(p 2 )). When the data received from p 2 is no longer required, the passive PU accomplishes an ack snd(p 2 ) and continues its execution. At the other side, the active PU receives the acknowledgment (rcv ack(p 1 )) and continues its execution. 2.2 Behavioral Model for Processing Units In 1 In 2 Repeat R4 R1 R2 R3 In R1 In R2 R4 := R1 R2 Out M1 M2 R3 := R1 R4 R4 := R2 R3 adder Local Control Out R4 For ever (a) R1 Data processing unit (b) Figure 2: (a) Communication Processes and (b) Implemented code The semantics of the model used for the description of the behavior of the PUs must be capable of expressing all the potential parallelism inherent to the asynchronism of the operation execution. Dierent languages have been used to express parallel behavior in hardware, like CSP or ISPS. In Achilles, we have chosen Petri Nets. Two main reasons have endorsed this decision: The ability for Petri Nets to express ne-grain parallelism. The simplicity of translating Petri nets into Signal Transition Graphs[4]. Figure 2(a) depicts a circuit composed of seven processing units: an adder, two multiplexors, and four registers. The operations executed in this circuit are described by the RTL code in gure 2(b). Each PU receives data, performs an operation and sends the result to other PUs through output
4 channels in an asynchronous manner. Figure 3(a) shows the behavioral specication (Petri Net) for multiplexor M2. Actions like rcv(r4), rcv(r2), and rcv(r3) can occur in parallel with other actions like evaluate, snd(alu), and ack rcv(alu). rcv(r2) ack_rcv(alu) evaluate rcv(in1) rcv(in2) ack_rcv(r2) snd(alu) evaluate snd(alu) rcv(r3) ack_rcv(in1) ack_rcv(in2) evaluate snd(out) ack_rcv(alu) ack_rcv(r3) rcv(r4) ack_rcv(alu) ack_rcv(out) ack_rcv(r4) evaluate (a) snd(alu) (b) Figure 3: Petri net for (a) MUX2 and (b) whole circuit With this approach, the whole circuit can also be expressed as a hierarchical structure of PUs. For example, gure 3(b) describes the behavior of the whole circuit. The operation evaluate includes all the operations executed in parallel by all the internal PUs. This description can then be used to consider the circuit as a new PU for more complex circuits. 3 Overview of Achilles Figure 4 describes the main phases of Achilles synthesis system. From a Control{Data Flow Graph, a library of self-timed modules, and a set of constraints, the scheduler denes a partial ordering for the execution of the operations and determines the type of module that will execute each operation. The scheduler generates a Scheduled Control{Data Flow Graph. The Module Binder assigns a hardware module instance to each operation (registers are considered as hardware modules that execute a storage operation). Thus, a processing unit can be dened for each hardware module of the circuit (ALUs, multipliers, multiplexors, registers, etc.). As a starting point, Achilles denes the PUs at the nest level of granularity: one for each hardware module. After module binding, a network of PUs and communication channels can be derived. Moreover, the data processing part of each PU is completely dened. Therefore only the local control of each PU is left to be synthesized. From the Scheduled CDFG and by means of a data{ow analysis, similarly to how optimizing compilers do, the input/output relationships among PUs can be determined and the Petri nets describing the behavior of the local controllers generated (see [8] for a more detailed explanation). Still, the description in terms of Petri nets is independent from the low-level handshaking protocol. These details are dened when a Signal Transition Graph is generated for each local controller: handshake signals, asynchronous or locally-synchronous communications, 2 or 4-phase protocol, dual or single-rail, etc. Next, STGs are merged to reduce the granularity of the distributed control. This step is optional and only applied to reduce the area and improve the performance of tightly-coupled local controllers (i.e.
5 Behavioral Description Compilation Constraints CDFG Module Library (ALU, regs, muxs...) Scheduling & Allocation Scheduled CDFG Module Binding Definition of Processes & Channels Process i Process1 (ALU) Process2 (MUX) Process3 (MUX) Process4 (REG) Local Control Data Processing Unit STG alu STG mux Control Definition STG merging Petri Net STG alu&mux Handshake protocol Dual or single rail Control Sythesis STG mux STG reg STG i Figure 4: Synthesis ow in Achilles. an ALU with its input multiplexors). Finally, an asynchronous sequential circuit is synthesized from each STG. 4 Operation Scheduling in Achilles This section presents the approach used by Achilles for operation scheduling (see [9] for further details). The problem to be solved is nding a partial ordering of the graph vertices which minimizes the total execution time under resource contraints. This partial ordering must preserve both data and structural 1 dependencies between vertices. The total execution time must be calculated by considering the estimated average execution time of each operation. 4.1 Frame Reservation Table (FRT) A Frame Reservation Table F RT r is a data structure that represents the utilization of a resource type r during the execution of the scheduling algorithm. It stores the number of active resources at each time instant. An FRT can also be represented as an Event List. An Event List EL r is a list of ordered pairs < time i ; nfus > where nfus is the number of available instances of type r from time i to time i1. 1 A structural dependency exists between two vertices if they cannot be executed simultaneously due to resource conicts.
6 Figure 5: (a) Frame Re FRT adder EL adder time nfus 0 1 t1 t2 t3 t (a) (b) (c) t -
7 t * * * * * * < Resources: 2 Mult (*) 1 ALU (,-,<) 1 Adder () * Mult ALU Adder
8 Figure 7: (a) ph P1 port X port Y P2 P1 snd(x) req X req Y rcv(y) P2 req X req Y ack_rcv(x) ack X ack Y ack_snd(y) ack X ack Y Data X Data Y req X - req Y - channel (X,Y) ack X - ack Y - (a) (b)
B2 if cs < cs_max then cs := cs + 1 cs := 1 ra
Register Transfer Level VHDL Models without Clocks Matthias Mutz (MMutz@sican{bs.de) SICAN Braunschweig GmbH, Digital IC Center D{38106 Braunschweig, GERMANY Abstract Several hardware compilers on the
More informationFPGA for Software Engineers
FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course
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 informationIntroduction to asynchronous circuit design. Motivation
Introduction to asynchronous circuit design Using slides from: Jordi Cortadella, Universitat Politècnica de Catalunya, Spain Michael Kishinevsky, Intel Corporation, USA Alex Kondratyev, Theseus Logic,
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 informationSynthesis of Systems Specified as Interacting VHDL Processes
- 1 - Synthesis of Systems Specified as Interacting VHDL Processes Petru Eles 1,2, Krzysztof Kuchcinski 1, Zebo Peng 1 1 Dept. of Computer and Information Science Linköping University Sweden 2 Computer
More informationTEMPLATE BASED ASYNCHRONOUS DESIGN
TEMPLATE BASED ASYNCHRONOUS DESIGN By Recep Ozgur Ozdag A Dissertation Presented to the FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements for the
More informationCHAPTER 3 ASYNCHRONOUS PIPELINE CONTROLLER
84 CHAPTER 3 ASYNCHRONOUS PIPELINE CONTROLLER 3.1 INTRODUCTION The introduction of several new asynchronous designs which provides high throughput and low latency is the significance of this chapter. The
More informationMahsa Vahidi and Alex Orailoglu. La Jolla CA of alternatives needs to be explored to obtain the
Metric-Based Transformations for Self Testable VLSI Designs with High Test Concurrency Mahsa Vahidi and Alex Orailoglu Department of Computer Science and Engineering University of California, San Diego
More informationTIMA Lab. Research Reports
ISSN 1292-862 TIMA Lab. Research Reports TIMA Laboratory, 46 avenue Félix Viallet, 38000 Grenoble France Session 1.2 - Hop Topics for SoC Design Asynchronous System Design Prof. Marc RENAUDIN TIMA, Grenoble,
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 informationAccelerating DSP Applications in Embedded Systems with a Coprocessor Data-Path
Accelerating DSP Applications in Embedded Systems with a Coprocessor Data-Path Michalis D. Galanis, Gregory Dimitroulakos, and Costas E. Goutis VLSI Design Laboratory, Electrical and Computer Engineering
More informationModeling Asynchronous Communication at Different Levels of Abstraction Using SystemC
Modeling Asynchronous Communication at Different Levels of Abstraction Using SystemC Shankar Mahadevan Inst. for Informatics and Mathematical Modeling Tech. Univ. of Denmark (DTU) Lyngby, Denmark sm@imm.dtu.dk
More informationunder Timing Constraints David Filo David Ku Claudionor N. Coelho, Jr. Giovanni De Micheli
Interface Optimization for Concurrent Systems under Timing Constraints David Filo David Ku Claudionor N. Coelho, Jr. Giovanni De Micheli Abstract The scope of most high-level synthesis eorts to date has
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 informationSynthesis of Complicated Asynchronous Control Circuits Using Template Based Technique
Synthesis of Complicated Asynchronous Control Circuits Using Template Based Technique Sufian Sudeng and Arthit Thongtak Abstract this paper proposes an approach for complicated asynchronous controller
More informationASYNCHRONOUS circuits promise a number of important
1108 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL 17, NO 11, NOVEMBER 1998 Structural Methods for the Synthesis of Speed-Independent Circuits Enric Pastor, Jordi Cortadella,
More informationBehavioral Synthesis of Asynchronous Circuits Using Syntax Directed Translation as Backend
Downloaded from orbit.dtu.dk on: Aug 31, 2018 Behavioral Synthesis of Asynchronous Circuits Using Syntax Directed Translation as Backend Nielsen, Sune Fallgaard; Sparsø, Jens; Madsen, Jan Published in:
More informationLECTURE 4. Logic Design
LECTURE 4 Logic Design LOGIC DESIGN The language of the machine is binary that is, sequences of 1 s and 0 s. But why? At the hardware level, computers are streams of signals. These signals only have two
More informationINTERCONNECTION NETWORKS LECTURE 4
INTERCONNECTION NETWORKS LECTURE 4 DR. SAMMAN H. AMEEN 1 Topology Specifies way switches are wired Affects routing, reliability, throughput, latency, building ease Routing How does a message get from source
More informationImplementation of ALU Using Asynchronous Design
IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) ISSN: 2278-2834, ISBN: 2278-8735. Volume 3, Issue 6 (Nov. - Dec. 2012), PP 07-12 Implementation of ALU Using Asynchronous Design P.
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 information160 M. Nadjarbashi, S.M. Fakhraie and A. Kaviani Figure 2. LUTB structure. each block-level track can be arbitrarily connected to each of 16 4-LUT inp
Scientia Iranica, Vol. 11, No. 3, pp 159{164 c Sharif University of Technology, July 2004 On Routing Architecture for Hybrid FPGA M. Nadjarbashi, S.M. Fakhraie 1 and A. Kaviani 2 In this paper, the routing
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 informationBasic Block. Inputs. K input. N outputs. I inputs MUX. Clock. Input Multiplexors
RPack: Rability-Driven packing for cluster-based FPGAs E. Bozorgzadeh S. Ogrenci-Memik M. Sarrafzadeh Computer Science Department Department ofece Computer Science Department UCLA Northwestern University
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 informationIn Proceedings of Design of Integrated Circuits and Systems Conference (DCIS), November 1996
In Proceedings of Design of Integrated Circuits and Systems Conference (DCIS), November 1996 Register Transfer Level VHDL Block Generation Paulo Flores Horacio Neto INESC/IST Instituto de Engenharia de
More informationInterface Specification and Synthesis for VHDL Processes *
Interface Specification and Synthesis for VHDL Processes * P. Gutberlet W. Rosenstiel 1 Forschungszentrum Informatik (FZI) Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe, Germany 1 FZI and University of Tübingen
More informationA Low Power Asynchronous FPGA with Autonomous Fine Grain Power Gating and LEDR Encoding
A Low Power Asynchronous FPGA with Autonomous Fine Grain Power Gating and LEDR Encoding N.Rajagopala krishnan, k.sivasuparamanyan, G.Ramadoss Abstract Field Programmable Gate Arrays (FPGAs) are widely
More informationsignature i-1 signature i instruction j j+1 branch adjustment value "if - path" initial value signature i signature j instruction exit signature j+1
CONTROL FLOW MONITORING FOR A TIME-TRIGGERED COMMUNICATION CONTROLLER Thomas M. Galla 1, Michael Sprachmann 2, Andreas Steininger 1 and Christopher Temple 1 Abstract A novel control ow monitoring scheme
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 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 informationLecture 20: High-level Synthesis (1)
Lecture 20: High-level Synthesis (1) Slides courtesy of Deming Chen Some slides are from Prof. S. Levitan of U. of Pittsburgh Outline High-level synthesis introduction High-level synthesis operations Scheduling
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 informationA Process Model suitable for defining and programming MpSoCs
A Process Model suitable for defining and programming MpSoCs MpSoC-Workshop at Rheinfels, 29-30.6.2010 F. Mayer-Lindenberg, TU Hamburg-Harburg 1. Motivation 2. The Process Model 3. Mapping to MpSoC 4.
More informationDesynchronisation Technique using Petri nets
Desynchronisation Technique using Petri nets Sohini Dasgupta 1 and Alex Yakovlev 2 1 University of Manchester, 2 Newcastle University Abstract In this paper we consider the problem of desynchronising modular
More informationElastic Bundles: Modelling and Architecting Asynchronous Circuits with Granular Rigidity
µsystems Research Group School of Electrical and Electronic Engineering Elastic Bundles: Modelling and Architecting Asynchronous Circuits with Granular Rigidity Johnson Fernandes Technical Report Series
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 informationHigh-Level Test Synthesis. Tianruo Yang and Zebo Peng. Department of Computer and Information Science
An Ecient Algorithm to Integrate Scheduling and Allocation in High-Level Synthesis Tianruo Yang and Zebo Peng Department of Computer and Information Science Linkoping University, S-581 83, Linkoping, Sweden
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 informationKeywords: Soft Core Processor, Arithmetic and Logical Unit, Back End Implementation and Front End Implementation.
ISSN 2319-8885 Vol.03,Issue.32 October-2014, Pages:6436-6440 www.ijsetr.com Design and Modeling of Arithmetic and Logical Unit with the Platform of VLSI N. AMRUTHA BINDU 1, M. SAILAJA 2 1 Dept of ECE,
More informationUNIVERSITÄT PADERBORN. ComponentTools
UNIVERSITÄT PADERBORN ComponentTools Component Library Concept Project Group ComponentTools pg-components@uni-paderborn.de Alexander Gepting, Joel Greenyer, Andreas Maas, Sebastian Munkelt, Csaba Pales,
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 informationDistributed Synchronous Control Units for Dataflow Graphs under Allocation of Telescopic Arithmetic Units
Distributed Synchronous Control Units for Dataflow Graphs under Allocation of Telescopic Arithmetic Units Euiseok Kim, Hiroshi Saito Jeong-Gun Lee Dong-Ik Lee Hiroshi Nakamura Takashi Nanya Dependable
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 informationAn Algorithm for the Allocation of Functional Units from. Realistic RT Component Libraries. Department of Information and Computer Science
An Algorithm for the Allocation of Functional Units from Realistic RT Component Libraries Roger Ang rang@ics.uci.edu Nikil Dutt dutt@ics.uci.edu Department of Information and Computer Science University
More informationController FSM Design Issues : Correctness and Efficiency. Lecture Notes # 10. CAD Based Logic Design ECE 368
ECE 368 CAD Based Logic Design Lecture Notes # 10 Controller FSM Design Issues : Correctness and Efficiency SHANTANU DUTT Department of Electrical & Computer Engineering University of Illinois, Chicago
More informationRegister Transfer Methodology II
Register Transfer Methodology II Chapter 12 1 Outline 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root
More informationOutline. Register Transfer Methodology II. 1. One shot pulse generator. Refined block diagram of FSMD
Outline Register Transfer Methodology II 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root approximation
More informationLecture 12 VHDL Synthesis
CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?
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 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 informationDISCRETE-event dynamic systems (DEDS) are dynamic
IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 7, NO. 2, MARCH 1999 175 The Supervised Control of Discrete-Event Dynamic Systems François Charbonnier, Hassane Alla, and René David Abstract The supervisory
More informationDRAFT for FINAL VERSION. Accepted for CACSD'97, Gent, Belgium, April 1997 IMPLEMENTATION ASPECTS OF THE PLC STANDARD IEC
DRAFT for FINAL VERSION. Accepted for CACSD'97, Gent, Belgium, 28-3 April 1997 IMPLEMENTATION ASPECTS OF THE PLC STANDARD IEC 1131-3 Martin hman Stefan Johansson Karl-Erik rzen Department of Automatic
More informationStorage System. Distributor. Network. Drive. Drive. Storage System. Controller. Controller. Disk. Disk
HRaid: a Flexible Storage-system Simulator Toni Cortes Jesus Labarta Universitat Politecnica de Catalunya - Barcelona ftoni, jesusg@ac.upc.es - http://www.ac.upc.es/hpc Abstract Clusters of workstations
More informationCrosstalk Noise Avoidance in Asynchronous Circuits
Crosstalk Noise Avoidance in Asynchronous Circuits Alexander Taubin (University of Aizu) Alex Kondratyev (University of Aizu) J. Cortadella (Univ. Politecnica Catalunya) Luciano Lavagno (University of
More informationHigh-Level Synthesis
High-Level Synthesis 1 High-Level Synthesis 1. Basic definition 2. A typical HLS process 3. Scheduling techniques 4. Allocation and binding techniques 5. Advanced issues High-Level Synthesis 2 Introduction
More informationInstruction Set Denition and Instruction Selection for ASIPs. Johan Van Praet Gert Goossens Dirk Lanneer Hugo De Man
Instruction Set Denition and Instruction Selection for ASIPs Johan Van Praet Gert Goossens Dirk Lanneer Hugo De Man IMEC, Kapeldreef 75, B-3001 Leuven, Belgium Professor at K.U. Leuven, Belgium Abstract
More informationJOHN GUSTAF HOLM. B.S.E., University of Michigan, 1989 THESIS. Submitted in partial fulllment of the requirements.
EVALUATION OF SOME SUPERSCALAR AND VLIW PROCESSOR DESIGNS BY JOHN GUSTAF HOLM B.S.E., University of Michigan, 989 THESIS Submitted in partial fulllment of the requirements for the degree of Master of Science
More informationRTL Design. Gate-level design is now rare! RTL = Register Transfer Level
RTL Design Gate-level design is now rare! design automation is necessary to manage the complexity of modern circuits only library designers use gates automated RTL synthesis is now almost universal RTL
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 informationreq unit unit unit ack unit unit ack
The Design and Implementation of ZCRP Zero Copying Reliable Protocol Mikkel Christiansen Jesper Langfeldt Hagen Brian Nielsen Arne Skou Kristian Qvistgaard Skov August 24, 1998 1 Design 1.1 Service specication
More informationNoC Test-Chip Project: Working Document
NoC Test-Chip Project: Working Document Michele Petracca, Omar Ahmad, Young Jin Yoon, Frank Zovko, Luca Carloni and Kenneth Shepard I. INTRODUCTION This document describes the low-power high-performance
More informationSpecC Methodology for High-Level Modeling
EDP 2002 9 th IEEE/DATC Electronic Design Processes Workshop SpecC Methodology for High-Level Modeling Rainer Dömer Daniel D. Gajski Andreas Gerstlauer Center for Embedded Computer Systems Universitiy
More informationSynthesis of Asynchronous Hardware from Petri Nets
Synthesis of Asynchronous Hardware from Petri Nets Josep Carmona 1, Jordi Cortadella 1, Victor Khomenko 2 and Alex Yakovlev 2 1 Universitat Politècnica de Catalunya, Barcelona, Spain jcarmona@ac.upc.es,
More informationRegister Transfer Level in Verilog: Part I
Source: M. Morris Mano and Michael D. Ciletti, Digital Design, 4rd Edition, 2007, Prentice Hall. Register Transfer Level in Verilog: Part I Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National
More informationType T1: force false. Type T2: force true. Type T3: complement. Type T4: load
Testability Insertion in Behavioral Descriptions Frank F. Hsu Elizabeth M. Rudnick Janak H. Patel Center for Reliable & High-Performance Computing University of Illinois, Urbana, IL Abstract A new synthesis-for-testability
More informationEnergy Aware Optimized Resource Allocation Using Buffer Based Data Flow In MPSOC Architecture
ISSN (Online) : 2319-8753 ISSN (Print) : 2347-6710 International Journal of Innovative Research in Science, Engineering and Technology Volume 3, Special Issue 3, March 2014 2014 International Conference
More informationLogic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis
Logic Synthesis Verilog and VHDL started out as simulation languages, but quickly people wrote programs to automatically convert Verilog code into low-level circuit descriptions (netlists). EECS150 - Digital
More informationA Synthesizable RTL Design of Asynchronous FIFO Interfaced with SRAM
A Synthesizable RTL Design of Asynchronous FIFO Interfaced with SRAM Mansi Jhamb, Sugam Kapoor USIT, GGSIPU Sector 16-C, Dwarka, New Delhi-110078, India Abstract This paper demonstrates an asynchronous
More informationSynthesis of Asynchronous Logic Design: A Study of Current Testing Practices. EXTRA CREDIT PROJECT EE552 Advanced Logic Design and Switching Theory
Synthesis of Asynchronous Logic Design: A Study of Current Testing Practices EXTRA CREDIT PROJECT EE552 Advanced Logic Design and Switching Theory Submitted By Maneesh Saxena. Department of Electrical
More information35 th Design Automation Conference Copyright 1998 ACM
Automatic Synthesis of Interfaces between Incompatible Protocols Roberto Passerone Department of EECS University of California at Berkeley roby@eecs.berkeley.edu James A. Rowson Alta Group of Cadence Sunnyvale,
More informationDHANALAKSHMI SRINIVASAN INSTITUTE OF RESEARCH AND TECHNOLOGY. Department of Computer science and engineering
DHANALAKSHMI SRINIVASAN INSTITUTE OF RESEARCH AND TECHNOLOGY Department of Computer science and engineering Year :II year CS6303 COMPUTER ARCHITECTURE Question Bank UNIT-1OVERVIEW AND INSTRUCTIONS PART-B
More informationEmbedded Systems Ch 15 ARM Organization and Implementation
Embedded Systems Ch 15 ARM Organization and Implementation Byung Kook Kim Dept of EECS Korea Advanced Institute of Science and Technology Summary ARM architecture Very little change From the first 3-micron
More information2 Keywords Backtracking Algorithms, Constraint Satisfaction Problem, Distributed Articial Intelligence, Iterative Improvement Algorithm, Multiagent Sy
1 The Distributed Constraint Satisfaction Problem: Formalization and Algorithms IEEE Trans. on Knowledge and DATA Engineering, vol.10, No.5 September 1998 Makoto Yokoo, Edmund H. Durfee, Toru Ishida, and
More informationECE 545 Lecture 12. Datapath vs. Controller. Structure of a Typical Digital System Data Inputs. Required reading. Design of Controllers
ECE 545 Lecture 12 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts Required reading P. Chu, using VHDL Chapter 1, Finite State Machine: Principle & Practice Chapter
More informationHIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1
HIERARCHICAL DESIGN Chapter 13 1 Outline 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical
More informationOutline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design
Outline HIERARCHICAL DESIGN 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 1 Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical
More informationRECONFIGURATION OF HIERARCHICAL TUPLE-SPACES: EXPERIMENTS WITH LINDA-POLYLITH. Computer Science Department and Institute. University of Maryland
RECONFIGURATION OF HIERARCHICAL TUPLE-SPACES: EXPERIMENTS WITH LINDA-POLYLITH Gilberto Matos James Purtilo Computer Science Department and Institute for Advanced Computer Studies University of Maryland
More informationHDL. 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 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 informationA Hierarchical Approach to Workload. M. Calzarossa 1, G. Haring 2, G. Kotsis 2,A.Merlo 1,D.Tessera 1
A Hierarchical Approach to Workload Characterization for Parallel Systems? M. Calzarossa 1, G. Haring 2, G. Kotsis 2,A.Merlo 1,D.Tessera 1 1 Dipartimento di Informatica e Sistemistica, Universita dipavia,
More informationTowards the Automatic Synthesis of Asynchronous Communication Mechanisms
Towards the Automatic Synthesis of Asynchronous Communication Mechanisms Kyller Costa Gorgônio kyller@lsi.upc.edu Advisor: Jordi Cortadella Draft submitted in Partial Fulllment of the Requirements for
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 informationSeminars in Embedded System Design EDAN15
Seminars in Embedded System Design EDAN15 Krzysztof Kuchcinski Department of Computer Science Lund Univeristy April 11, 2011 1 Petri net Draw simple Petri nets which model sequential execution, parallel
More informationMemory. Controller CPU. Memory. read / write requests linear address MMU. read / write operation. stall CPU signal.
Modeling a Memory Subsystem with Petri Nets: a Case Study Matthias Gries Computer Engineering and Networks Laboratory (TIK), Swiss Federal Institute of Technology (ETH) CH-8092 Zurich, Switzerland, gries@tik.ee.ethz.ch
More informationEECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007
EECS 5 - Components and Design Techniques for Digital Systems Lec 2 RTL Design Optimization /6/27 Shauki Elassaad Electrical Engineering and Computer Sciences University of California, Berkeley Slides
More informationDesign of a clockless MSP430 core using mixed asynchronous design flow
LETTER IEICE Electronics Express, Vol.14, No.8, 1 12 Design of a clockless MSP430 core using mixed asynchronous design flow Ziho Shin 1,3a), Myeong-Hoon Oh 1,3b), Jeong-Gun Lee 2, Hag Young Kim 3, and
More informationControl and Datapath 8
Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system
More informationEMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES
EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES Pong P. Chu Cleveland State University A JOHN WILEY & SONS, INC., PUBLICATION PREFACE An SoC (system on a chip) integrates a processor, memory
More informationLevels in Processor Design
Levels in Processor Design Circuit design Keywords: transistors, wires etc.results in gates, flip-flops etc. Logical design Putting gates (AND, NAND, ) and flip-flops together to build basic blocks such
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 informationAutomated versus Manual Design of Asynchronous Circuits in DSM Technologies
FACULDADE DE INFORMÁTICA PUCRS - Brazil http://www.inf.pucrs.br Automated versus Manual Design of Asynchronous Circuits in DSM Technologies Matheus Moreira, Bruno Oliveira, Julian Pontes, Ney Calazans
More informationChapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations
Chapter 4 The Processor Part I Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations
More informationVLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,
VLSI Testing Fault Simulation Virendra Singh Indian Institute t of Science Bangalore virendra@computer.org E 286: Test & Verification of SoC Design Lecture - 7 Jan 27, 2 E-286@SERC Fault Simulation Jan
More informationVLSI Test Technology and Reliability (ET4076)
VLSI Test Technology and Reliability (ET4076) Lecture 4(part 2) Testability Measurements (Chapter 6) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Previous lecture What
More informationSynchronization In Digital Systems
2011 International Conference on Information and Network Technology IPCSIT vol.4 (2011) (2011) IACSIT Press, Singapore Synchronization In Digital Systems Ranjani.M. Narasimhamurthy Lecturer, Dr. Ambedkar
More information100-hour Design Cycle: A Test Case. keeping the specication close to the conceptualization. 2. Use of standard languages for input specications.
100-hour Design Cycle: A Test Case Daniel D. Gajski, Loganath Ramachandran, Peter Fung 3, Sanjiv Narayan 1 and Frank Vahid 2 University of California, Irvine, CA 3 Matsushita Electric Works, Research and
More informationקורס VHDL for High Performance. VHDL
קורס VHDL for High Performance תיאור הקורס קורסזהמספקאתכלהידע התיאורטיוהמעשילכתיבתקודHDL. VHDL לסינתזה בעזרת שפת הסטנדרט הקורסמעמיקמאודומלמדאת הדרךהיעילהלכתיבתקודVHDL בכדילקבלאתמימושתכןהלוגי המדויק. הקורסמשלב
More informationCSE 140L Final Exam. Prof. Tajana Simunic Rosing. Spring 2008
CSE 140L Final Exam Prof. Tajana Simunic Rosing Spring 2008 NAME: ID#: Do not start the exam until you are told to. Turn off any cell phones or pagers. Write your name and PID at the top of every page.
More information