Using SystemC for Hardware Design Comparison of results with VHDL, Cossap and CoCentric
|
|
- Derick Tucker
- 6 years ago
- Views:
Transcription
1 Comparison of results with VHDL, Cossap and CoCentric Mario Steinert, Steffen Buch, CPD AA, Infineon Technologies AG, David Slogsnat, University of Mannheim ABSTRACT This paper gives an overview of the results of an evaluation project, where the integration of SystemC into the design flow was evalulated. The most important criteria are: - applicability of SystemC for creating synthesizable code - Simulation Speed - Synthesis results (timing, area) First the root-raised cosine filter implementation that was used as mutual basis for comparisons is described. Because of the high sampling clock it is possible to calculate each channel (inphase, quadrature) of this FIR filter on only two MAC units. The coefficients are stored in a ROM, common for I and Q channel. The address for the ROM and the control signals for the data path are generated in a small internal FSM. So the design does not only contain feed forward signal processing parts but also pretty complex control overhead. The SystemC implementation will be compared with the original handwritten VHDL implementation and generated VHDL code from COSSAP. Advantages and open issues of SystemC are pointed out. A very important issue for system design is simulation speed. Here SystemC brought surprising results. In the case of the FIR filter, the SystemC simulation is about three times faster than VHDL. Also the simulation speeds of Cossap was evaluated. In terms of synthesis the usage of SystemC showed no disadvantages. The area results are nearly equal for all of the designs (handwritten VHDL, generated VHDL code from Cossap and SystemC). It is not surprising, since SystemC elaboration is integrated in Synopsys design compiler ( ). For all investigations the same version was used. These results will be presented in the last parts.
2 1.0 Introduction The aim of our investigations was the evaluation of the design flow out of SystemC RTL code to sythesized gate level netlist. Main action were: the Implementation of the filter and belonging test benches in SystemC simulation of the SystemC code using the open source SystemC core Synthesis of the SystemC code using SCC (Synopsys SystemC Compiler) In terms of High Level Design there is still a big gap in the design flow. In algorithmic concept designers used to take C/C++ for there modeling, but on architectural level, VHDL and Verilog are well established. This gap should be closed by SystemC, but if it is really applicable for RTL synthesis this investigation should show. Therefore the design flow using SystemC is compared to traditional VHDL coding and generating VHDL code from Cossap 2.0 The implemented filter The implemented filter is originally part of a cable modem project. For this filter a detailed specification was available and handwritten VHDL code and a generic C COSSAP model on untimed functional level (UTF) with bittrue behaviour were already implemented. The RRC filter converts 16QAM or QPSK symbols into root-raised cosine pulses with the following characteristics: signal quantization input: 2 * 3 bit output: 2 * 13 bit interpolation factor 4 variable symbol rate clock frequency input: output: MHz to MHz MHz to MHz 200 MHz rolloff factors 0.25 and 0.3 Table 1 - Properties of the filter The RRC is used for pulse shaping in data transmission systems: it works as a bandpass filter and is used in the case of transmission channels with limited bandwidth. 2
3 Figure 1 - Input pattern and corresponding output of the RRC filter Figure 2 - Cossap top level schematic showing the functional units of the design From Figure 2 can be seen that the filter consists of a datapath module, which is instantiated twice (once for each the real and the imaginary part), a ROM module holding the filter coefficients, and a control state machine. Figure 3 shows the architecture (except for the pipeline registers) of the datapath module. Due to the interpolation factor of 4, only every 4 th register holds a value different from 0, and so the number of registers for this 128-tap filter can be reduced to 32. At maximum symbol rate, there are 16 clock cycles to sum up the multiplication products; therefore 2 accumulation units are necessary. 3
4 Figure 3 - Data path of RRC filter 3.0 The design phase In all three designs (Cossap, SystemC and VHDL) the data paths and ROM modules are implemented exactly the same way. The data path follows Figure 3, with additional pipeline registers before and after the multiplier. wait 16 1 (1x1) 15 p symstrobe 64 1 (1x1) 31 p datavalid 16 1 (1x1) 2 p outreg 16 1 (1x1) 1 p shiften_ (1x1) 14 p shiften_ (1x1) 62 p mux (1x1) 1 p z (1x1) 33 p z (1x1) 17 p z (1x1) 1 p mux (1x16) 2 n st_cyc 16 1 (1x1) 1 p cntr 64 6 (0..63) 63 p Perl script Generates file containing bitvectors Read file in HDL code or COSSAP module void shape_fsm::loadfsm() { FILE *source; int i,j; int s; char ctmp; source = fopen("shapefsm.out","r");... Figure 4 - Pattern generation for control FSM The only difference is in the state machine implementation. In the handwritten VHDL code, the state machine is implemented by separate counters and logic for each group of signals. In Cossap and SystemC, the FSM is implemented as a single counter counting through the states. The output signals of the FSM are not generated by hardwired logic assignments, but by bit 4
5 patterns read from a file. This has the advantage that the HDL file is much better readable and changes can be made easily. The bit patterns are generated using a Perl script, the process can be seen in Figure 4. For verification, a model on untimed functional level (UTF) was used as a reference model. The hierarchical Cossap model was compared for bittrue conformity to it. The functional conformity of all other RTL models and all generated netlists was proven in Cossap cosimulations, or, if not possible (as in the case of SystemC) by comparing tracefiles. A Cossap testbench for comparing two filter blocks is shown in Figure 5. Figure 5 - Cossap testbench for comparing simulation results doing a cosimulation 4.0 RTL Design Entry and Synthesis with SystemC For implementation, the SystemC library version was used. Simulations were done using these libraries and an external waveform viewer, no other design- or simulation tools were used. For debugging, the GNU Data Display Debugger (ddd) with Gnu Debugger (gdb) was used. An overview about SystemC and it s anticipated advantages is given in [2] and [3]. Here only the most important reasons for the introduction of SystemC are mentioned: The argument that seems to be the most important one is that SystemC is perfectly suited to become an de-facto standard. This qualification is accomplished by e.g. the Open Community Licensing model. Also, it was important to have a common language in the whole design process. Everything, from the algorithmic model to synthesizable RTL architecture, can be described without having a switch in design language. SystemC really enables a refinement of the design while going to a lower level of abstraction. It is not necessary to recode all the hierarchies and interfaces anymore. SystemC is able to close the gap between concept and architecture design. 5
6 I can not give a complete discussion of the advantages or disadvantages of SystemC in general at this point, but a list of some problems that seemed to be worth mentioned: - SystemC has bit- and bitvector types, but does not introduce a binary constant type. As a result, all constant values have to be specified either as decimal or hexadecimal numbers. For designing hardware, it would be helpful to have at least a pseudo binary constant type, implemented as a macro or function. - SystemC is based on an open community licensing model; according to the SystemC WebPages it takes the best aspects of other innovating licensing models [1]. Unfortunately, it seems that the SystemC project is not working as good as other open community projects. An example for that is the variety of SystemC data types. For 1-bit logic there exist different synthesizable data types (bool, sc_bit). In fact, Synopsys recommends for synthesis to use bool rather than sc_bit. This undermines the idea of one vendor independent HDL language, i.e. without vendor dependent dialects. - The SystemC User Guide, bundled with the SystemC library, is not a helpful guide yet. Because of the quick evolution of SystemC, it is incomplete, and even SystemC features covered are either lacking of details or simply wrong. Big problems were encountered while trying to compile the SystemC examples coming with this documentation. However, the idea of a free user guide or reference bundled with the library should be continued. - Errors during compilation or execution most often do not report the location of the error s origin in the HDL code, but only the location in the SystemC libraries. This makes it very difficult to locate errors and is especially annoying with errors that are truly syntactical (in the SystemC HDL language). For example, switched numbers in a range-operator, i.e. the method call range(minbit, maxbit) instead of range(maxbit, minbit) results in the error message sc_port_manager.cpp:353: failed assertion `PORT_STATUS_UNBOUND!= pi->port_status' abort which is not at all helpful to locate the error. - It is possible to use an debugger like gdb to examine a SystemC design. SystemC variables can be observed. However, the origin of errors during the creation of new instances (e.g. the error mentioned above) cannot be found with justifiable expenses. Unfortunately syntax checking is not included in the SystemC libraries itself, but there are third party tools for syntax check available. For the evaluation no additional syntax checking was done. Occurring errors were recognized during synthesis. - At present, synthesis of SystemC RTL code is divided in two steps. First the code is translated into Verilog. Errors and non synthesizable construct do not generate messages during this phase. In the following logic synthesis a gate level netlist is generated out of the Verilog RTL code. Possible errors and warnings will show up now and they do not refer to the original SystemC code but to the intermediate Verilog code. Probably the usage of a syntax checker would solve this problem too. 5.0 Simulation Performance For the comparison of the simulation times, all models were simulated under same conditions: Simulation time was clock cycles, i.e. 1/10s. A file with 1024 data elements is read, the input pattern is created by periodically reading this dataset. One of the designs data outputs is traced and written to a file. The simulations were executed on a SUN Ultra-60 Workstation with 2GB main memory and two 295MHz Ultra-Sparc-II CPUs. 6
7 Figure 6 shows the results. The simulation time of the algorithmic Cossap model (1) is only shown as a reference since this model cannot be synthesized. The next result (2) belongs to the architectural Cossap model of the filter. Since it is designed with elements of Cossap s BITTRUE library, this code is highly hierarchical. Thats why, a lot of simulation time can be saved by creating a primitive SDS model out of the hole hierarchy. The flattened code (3) is simulated more than 4 times faster. All the VHDL simulation were done with Synopsys VHDLSIM v Though ModelSim is considered to be a faster simulator, ModelSim EE/Plus 5.3d turned out to be significantly slower for this design. In Figure 5 can be seen that the handwritten VHDL (4) code is much better suited for simulation than the Cossap-generated (5) code. It took just one half the time to finish the simulation. simulation time (s) Cossap algorithm (1) 7 Cossap arch hier (2) 3951 Cossap arch flat (3) 927 VHDL handwritten (4) 7917 VHDL generated (5) CoSim handwritten (6) 9359 CoSim generated (7) SystemC arch (8) Figure 6 - Simulation Performance Another investigation, that was done should show, how the simulation time increases, if the VHDL code is cosimulated (6),(7) inside Cossap instead by a standalone VHDL testbench. For both, the handwritten and also the generated VHDL code, the simulation time increased a little. This is caused by the inter process communication (IPC) between the Cossap scheduler and the VHDL simulator. SystemC (8) was simulated with SystemC compiler v (optimization step O3). The computation of the chosen test sequence took 2300 sec, this is more than 3 times faster than the simulation of the handwritten VHDL code (4)
8 6.0 Synthesis Results Synthesis was done using the Synopsys environment version ; since this version supports synthesis of SystemC code also. The used design library based on a 0.18 µm technology. As you can see in Figure 7, the resulting chip area for all three design flows is nearly equal. The synthesis out of SystemC leads to a 2 % smaller area. Since the designs are not perfectly identical, e. g. the control FSM is designed differently in every case, this small difference in area is neglectable. Synthesis out of SystemC RTL code will lead to similar results like traditional VHDL. In general the synthesis of SystemC code using the Synopsys SystemC compiler works pretty well. The synthesizable subset of SystemC is large and contains all constructs and features needed. With an older version (Synopsys ) the synthesis results were worse, for the handwritten VHDL design, the chip area is about 7 % larger than in the version. Again, as discovered when examinating simulation run times, using the most recent version of a particular tool seems to be as important as using the tool employing the best design methodology. 9 8 Register Combinational area (kgates) ,634 3,732 3,116 4,080 4,025 4,442 0 handwritten VHDL Cossap generated VHDL SystemC Figure 7 - Synthesis Results 7.0 Conclusions and Recommendations It can be said that SystemC can indeed be successfully used for RTL description. Given the fact that SystemC is still in an early stage of development, and that drawbacks are hopefully being eliminated in the future, there are no fundamental reasons against the usage SystemC in RTL design. The simulation speed is excellent and the synthesis are similar to VHDL. 8
9 It was planned to include CoCentric in this comparison. Unfortunately the generation of synthesizable SystemC code out of CoCentric s PRIM models is not released yet. Therefore this part had to be left out here and will be object of future investigations. 8.0 Acknowledgements I would like to thank Sysnopsys, especially Mr. Martin Schnieringer in Munich, for the valuable support and providing licences for their SystemC development tools. 9.0 References [1] SystemC web pages, many SystemC relevant papers and the most recent information are available here [2] SystemC User Guide Version 1.1, Synopsys, CoWare, Frontier Design, 2000 [3] System Level Design Using the SystemC Modeling Platform, J. Gerlach, W. Rosenstiel [4] Describing Synthesizable RTL in SystemC, Synopsys, May 2001 [5] CoCentric SystemC Compiler, RTL User and Modeling Guide, Synopsys, August
Programmable Logic Devices HDL-Based Design Flows CMPE 415
HDL-Based Design Flows: ASIC Toward the end of the 80s, it became difficult to use schematic-based ASIC flows to deal with the size and complexity of >5K or more gates. HDLs were introduced to deal with
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 informationAppendix SystemC Product Briefs. All product claims contained within are provided by the respective supplying company.
Appendix SystemC Product Briefs All product claims contained within are provided by the respective supplying company. Blue Pacific Computing BlueWave Blue Pacific s BlueWave is a simulation GUI, including
More informationAn Overview of a Compiler for Mapping MATLAB Programs onto FPGAs
An Overview of a Compiler for Mapping MATLAB Programs onto FPGAs P. Banerjee Department of Electrical and Computer Engineering Northwestern University 2145 Sheridan Road, Evanston, IL-60208 banerjee@ece.northwestern.edu
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 informationWorld Class Verilog & SystemVerilog Training
World Class Verilog & SystemVerilog Training Sunburst Design - Expert Verilog-2001 FSM, Multi-Clock Design & Verification Techniques by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst
More informationThe SOCks Design Platform. Johannes Grad
The SOCks Design Platform Johannes Grad System-on-Chip (SoC) Design Combines all elements of a computer onto a single chip Microprocessor Memory Address- and Databus Periphery Application specific logic
More informationINTRODUCTION TO CATAPULT C
INTRODUCTION TO CATAPULT C Vijay Madisetti, Mohanned Sinnokrot Georgia Institute of Technology School of Electrical and Computer Engineering with adaptations and updates by: Dongwook Lee, Andreas Gerstlauer
More informationIntroduction to SystemC
Introduction to SystemC Damien Hubaux - CETIC Outline?? A language A C++ library February 12, 2004 SystemC, an alternative for system modeling and synthesis? 2 Why SystemC? Needs Increasing complexity,
More informationEEL 5722C Field-Programmable Gate Array Design
EEL 5722C Field-Programmable Gate Array Design Lecture 17: Describing Synthesizable RTL in SystemC* Prof. Mingjie Lin * 2001 Synopsys, Inc. 1 System-Level Design Specifying the system Verifying its functionality
More informationAgenda. Introduction FPGA DSP platforms Design challenges New programming models for FPGAs
New Directions in Programming FPGAs for DSP Dr. Jim Hwang Xilinx, Inc. Agenda Introduction FPGA DSP platforms Design challenges New programming models for FPGAs System Generator Getting your math into
More informationSunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.
World Class SystemVerilog & UVM Training Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff Cummings
More informationAgenda. How can we improve productivity? C++ Bit-accurate datatypes and modeling Using C++ for hardware design
Catapult C Synthesis High Level Synthesis Webinar Stuart Clubb Technical Marketing Engineer April 2009 Agenda How can we improve productivity? C++ Bit-accurate datatypes and modeling Using C++ for hardware
More informationExercise 1 In this exercise you will review the DSSS modem design using the Quartus II software.
White Paper DSSS Modem Lab Background The direct sequence spread spectrum (DSSS) digital modem reference design is a hardware design that has been optimized for the Altera APEX DSP development board (starter
More informationHigh-Level Information Interface
High-Level Information Interface Deliverable Report: SRC task 1875.001 - Jan 31, 2011 Task Title: Exploiting Synergy of Synthesis and Verification Task Leaders: Robert K. Brayton and Alan Mishchenko Univ.
More informationRTL Design-Flow with SystemC in an Industrial Design Project Modeling a GPS Receiver Using SystemC
RTL Design-Flow with in an Industrial Design Project Modeling a GPS Receiver Using Bernhard Niemann Martin Speitel e for Integrated Circuits www.iis.fhg.de www.iis.fhg.de/kursbuch/kurse/systemc.html 1
More informationDesign Process. Design : specify and enter the design intent. Verify: Implement: verify the correctness of design and implementation
Design Verification 1 Design Process Design : specify and enter the design intent Verify: verify the correctness of design and implementation Implement: refine the design through all phases Kurt Keutzer
More informationEE 4755 Digital Design Using Hardware Description Languages
EE 4755 Digital Design Using Hardware Description Languages Basic Information URL: http://www.ece.lsu.edu/v Offered by: David M. Koppelman, Room 345 ERAD Building 578-5482. koppel@ece.lsu.edu, http://www.ece.lsu.edu/koppel/koppel.html
More informationSynthesizable Verilog
Synthesizable Verilog Courtesy of Dr. Edwards@Columbia, and Dr. Franzon@NCSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Design Methodology Structure and Function (Behavior) of a Design HDL
More informationExperiment VERI: FPGA Design with Verilog (Part 2) (webpage: /)
Department of Electrical & Electronic Engineering 2 nd Year Laboratory Experiment VERI: FPGA Design with Verilog (Part 2) (webpage: www.ee.ic.ac.uk/pcheung/teaching/e2_experiment /) 1.0 Learning Outcomes
More informationLAB 9 The Performance of MIPS
LAB 9 The Performance of MIPS Goals Learn how the performance of the processor is determined. Improve the processor performance by adding new instructions. To Do Determine the speed of the processor in
More informationOperating in a Mixed-language Environment Using HDL, C/C++, SystemC and SystemVerilog
Application Note Operating in a Mixed-language Environment Using HDL, C/C++, SystemC and SystemVerilog www.model.com Introduction C and C++ languages have an important role to play in ASIC design, and
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 informationLAB 9 The Performance of MIPS
Goals To Do LAB 9 The Performance of MIPS Learn how the performance of the processor is determined. Improve the processor performance by adding new instructions. Determine the speed of the processor in
More informationThe Application of Formal Technology on Fixed-Point Arithmetic SystemC Designs
The Application of Formal Technology on Fixed-Point Arithmetic SystemC Designs Sven Beyer, OneSpin Solutions, Munich, Germany, sven.beyer@onespin-solutions.com Dominik Straßer, OneSpin Solutions, Munich,
More informationLecture 1: Introduction Course arrangements Recap of basic digital design concepts EDA tool demonstration
TKT-1426 Digital design for FPGA, 6cp Fall 2011 http://www.tkt.cs.tut.fi/kurssit/1426/ Tampere University of Technology Department of Computer Systems Waqar Hussain Lecture Contents Lecture 1: Introduction
More informationDESIGN STRATEGIES & TOOLS UTILIZED
CHAPTER 7 DESIGN STRATEGIES & TOOLS UTILIZED 7-1. Field Programmable Gate Array The internal architecture of an FPGA consist of several uncommitted logic blocks in which the design is to be encoded. The
More informationAdvanced FPGA Design Methodologies with Xilinx Vivado
Advanced FPGA Design Methodologies with Xilinx Vivado Alexander Jäger Computer Architecture Group Heidelberg University, Germany Abstract With shrinking feature sizes in the ASIC manufacturing technology,
More informationMethod We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training
Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering Winter/Summer Training Level 2 continues. 3 rd Year 4 th Year FIG-3 Level 1 (Basic & Mandatory) & Level 1.1 and
More informationEE 4755 Digital Design Using Hardware Description Languages
EE 4755 Digital Design Using Hardware Description Languages Basic Information URL: http://www.ece.lsu.edu/v Offered by: David M. Koppelman, Room 3316R P. F. Taylor Hall 578-5482. koppel@ece.lsu.edu, http://www.ece.lsu.edu/koppel/koppel.html
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 informationSystem Level Design Technologies and System Level Design Languages
System Level Design Technologies and System Level Design Languages SLD Study Group EDA-TC, JEITA http://eda.ics.es.osaka-u.ac.jp/jeita/eda/english/project/sld/index.html Problems to Be Solved 1. Functional
More informationRecommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto
Recommed Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto DISCLAIMER: The information contained in this document does NOT contain
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 informationIntro to High Level Design with SystemC
Intro to High Level Design with SystemC Aim To introduce SystemC, and its associated Design Methodology Date 26th March 2001 Presented By Alan Fitch Designer Challenges Design complexity System on Chip
More informationUniversity of Massachusetts Amherst Department of Electrical & Computer Engineering
University of Massachusetts Amherst Department of Electrical & Computer Engineering ECE 696 Independent Study Fall 2005 Final Report Title: Efficient RTL Synthesis of DSP Algorithms Supervisor: Prof. Maciej
More informationAddressing Verification Bottlenecks of Fully Synthesized Processor Cores using Equivalence Checkers
Addressing Verification Bottlenecks of Fully Synthesized Processor Cores using Equivalence Checkers Subash Chandar G (g-chandar1@ti.com), Vaideeswaran S (vaidee@ti.com) DSP Design, Texas Instruments India
More informationHardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator
Harris Hardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator Introduction In this lab, you will build a time-multiplexed correlator to search for and track GPS satellite signals.
More informationEarly Models in Silicon with SystemC synthesis
Early Models in Silicon with SystemC synthesis Agility Compiler summary C-based design & synthesis for SystemC Pure, standard compliant SystemC/ C++ Most widely used C-synthesis technology Structural SystemC
More informationS2CBench : Synthesizable SystemC Benchmark Suite for High-Level Synthesis
S2CBench : Synthesizable SystemC Benchmark Suite for High-Level Synthesis Benjamin Carrion Schafer 1, Ansuhree Mahapatra 2 The Hong Kong Polytechnic University Department of Electronic and Information
More informationS2CBench : Synthesizable SystemC Benchmark Suite for High-Level Synthesis
S2CBench : Synthesizable SystemC Benchmark Suite for High-Level Synthesis Benjamin Carrion Schafer 1, Ansuhree Mahapatra 2 The Hong Kong Polytechnic University Department of Electronic and Information
More informationDSPACE: LISA Methodology
DSPACE: LISA Methodology Maximilian Odendahl ESA DSP Day, Noordwjik, 28.8.2012 Institute for Communication Technologies and Embedded Systems Outline 2 Introduction DSPACE Requirements LISA Methodology
More informationISim Hardware Co-Simulation Tutorial: Accelerating Floating Point Fast Fourier Transform Simulation
ISim Hardware Co-Simulation Tutorial: Accelerating Floating Point Fast Fourier Transform Simulation UG817 (v 13.2) July 28, 2011 Xilinx is disclosing this user guide, manual, release note, and/or specification
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 informationMentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs. Fall 2004
Mentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs Fall 2004 Agenda FPGA design challenges Mentor Graphics comprehensive FPGA design solutions Unique tools address the full range
More informationModular SystemC. In-house Training Options. For further information contact your local Doulos Sales Office.
Modular SystemC is a set of modules related to SystemC TM (IEEE 1666-2005) aimed at fulfilling teambased training requirements for engineers from a range of technical backgrounds, i.e. hardware and software
More informationLAB 9 The Performance of MIPS
LAB 9 The Performance of MIPS Goals Learn how to determine the performance of a processor. Improve the processor performance by adding new instructions. To Do Determine the speed of the processor in Lab
More informationDesign and Verification of FPGA Applications
Design and Verification of FPGA Applications Giuseppe Ridinò Paola Vallauri MathWorks giuseppe.ridino@mathworks.it paola.vallauri@mathworks.it Torino, 19 Maggio 2016, INAF 2016 The MathWorks, Inc. 1 Agenda
More informationAL8253 Core Application Note
AL8253 Core Application Note 6-15-2012 Table of Contents General Information... 3 Features... 3 Block Diagram... 3 Contents... 4 Behavioral... 4 Synthesizable... 4 Test Vectors... 4 Interface... 5 Implementation
More informationSystemC Synthesis Standard: Which Topics for Next Round? Frederic Doucet Qualcomm Atheros, Inc
SystemC Synthesis Standard: Which Topics for Next Round? Frederic Doucet Qualcomm Atheros, Inc 2/29/2016 Frederic Doucet, Qualcomm Atheros, Inc 2 What to Standardize Next Benefit of current standard: Provides
More informationFPGA Design Tutorial
ECE 554 Digital Engineering Laboratory FPGA Design Tutorial Version 5.0 Fall 2006 Updated Tutorial: Jake Adriaens Original Tutorial: Matt King, Surin Kittitornkun and Charles R. Kime Table of Contents
More informationCycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components
Cycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components Rainer Dömer, Andreas Gerstlauer, Dongwan Shin Technical Report CECS-04-19 July 22, 2004 Center for Embedded Computer Systems University
More informationHardware Modelling. Design Flow Overview. ECS Group, TU Wien
Hardware Modelling Design Flow Overview ECS Group, TU Wien 1 Outline Difference: Hardware vs. Software Design Flow Steps Specification Realisation Verification FPGA Design Flow 2 Hardware vs. Software:
More informationDesign and Verification of FPGA and ASIC Applications Graham Reith MathWorks
Design and Verification of FPGA and ASIC Applications Graham Reith MathWorks 2014 The MathWorks, Inc. 1 Agenda -Based Design for FPGA and ASIC Generating HDL Code from MATLAB and Simulink For prototyping
More informationA New Electronic System Level Methodology for Complex Chip Designs
A New Electronic System Level Methodology for Complex Chip Designs Chad Spackman President, Co-Founder 1 Copyright 2006. All rights reserved. We are an EDA Tool Company: C2R Compiler, Inc. General purpose
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 informationDigital Systems Testing
Digital Systems Testing Verilog HDL for Design and Test Moslem Amiri, Václav Přenosil Embedded Systems Laboratory Faculty of Informatics, Masaryk University Brno, Czech Republic amiri@mail.muni.cz prenosil@fi.muni.cz
More informationEvaluation of the RTL Synthesis Tools for FPGA/PLD Design. M.Matveev. Rice University. August 10, 2001
Evaluation of the RTL Synthesis Tools for FPGA/PLD Design M.Matveev Rice University August 10, 2001 Xilinx: Foundation ISE Design Entry: VHDL, Verilog, schematic, ABEL Synthesis: Xilinx XST, Synopsys FPGA
More informationParallel FIR Filters. Chapter 5
Chapter 5 Parallel FIR Filters This chapter describes the implementation of high-performance, parallel, full-precision FIR filters using the DSP48 slice in a Virtex-4 device. ecause the Virtex-4 architecture
More informationArchitecture Implementation Using the Machine Description Language LISA
Architecture Implementation Using the Machine Description Language LISA Oliver Schliebusch, Andreas Hoffmann, Achim Nohl, Gunnar Braun and Heinrich Meyr Integrated Signal Processing Systems, RWTH Aachen,
More informationLAB 6 Testing the ALU
Goals LAB 6 Testing the ALU Learn how to write testbenches in Verilog to verify the functionality of the design. Learn to find and resolve problems (bugs) in the design. To Do We will write a Verilog testbench
More informationConnecting MATLAB & Simulink with your SystemVerilog Workflow for Functional Verification
Connecting MATLAB & Simulink with your SystemVerilog Workflow for Functional Verification Corey Mathis Industry Marketing Manager Communications, Electronics, and Semiconductors MathWorks 2014 MathWorks,
More informationFPGA Implementation and Validation of the Asynchronous Array of simple Processors
FPGA Implementation and Validation of the Asynchronous Array of simple Processors Jeremy W. Webb VLSI Computation Laboratory Department of ECE University of California, Davis One Shields Avenue Davis,
More informationLaboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication
Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.
More informationOne and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE
One and a half hours Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Fundamentals of Computer Engineering Date: Thursday 21st January 2016 Time: 14:00-15:30 Answer BOTH Questions
More informationFPGAs: FAST TRACK TO DSP
FPGAs: FAST TRACK TO DSP Revised February 2009 ABSRACT: Given the prevalence of digital signal processing in a variety of industry segments, several implementation solutions are available depending on
More informationCo-Emulation of Scan-Chain Based Designs Utilizing SCE-MI Infrastructure
Co-Emulation of Scan-Chain Based Designs Utilizing SCE-MI Infrastructure Bill Jason Tomas 1, Yingtao Jiang 2 and Mei Yang 2 1 Cadence Design System, Inc., San Jose, CA, USA 2 Department of Electrical and
More informationUniversity of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018
University of California, Davis Department of Electrical and Computer Engineering EEC180B DIGITAL SYSTEMS Spring Quarter 2018 LAB 2: FPGA Synthesis and Combinational Logic Design Objective: This lab covers
More informationA Rapid Prototyping Methodology for Algorithm Development in Wireless Communications
A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications Abstract: Rapid prototyping has become an important means to verify the performance and feasibility of algorithms and
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 informationNEW FPGA DESIGN AND VERIFICATION TECHNIQUES MICHAL HUSEJKO IT-PES-ES
NEW FPGA DESIGN AND VERIFICATION TECHNIQUES MICHAL HUSEJKO IT-PES-ES Design: Part 1 High Level Synthesis (Xilinx Vivado HLS) Part 2 SDSoC (Xilinx, HLS + ARM) Part 3 OpenCL (Altera OpenCL SDK) Verification:
More informationActel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial
Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial 1 Table of Contents Design Flow in Libero TM IDE v2.3 Step 1 - Design Creation 3 Step 2 - Design Verification
More informationENHANCED TOOLS FOR RISC-V PROCESSOR DEVELOPMENT
ENHANCED TOOLS FOR RISC-V PROCESSOR DEVELOPMENT THE FREE AND OPEN RISC INSTRUCTION SET ARCHITECTURE Codasip is the leading provider of RISC-V processor IP Codasip Bk: A portfolio of RISC-V processors Uniquely
More informationChoosing an Intellectual Property Core
Choosing an Intellectual Property Core MIPS Technologies, Inc. June 2002 One of the most important product development decisions facing SOC designers today is choosing an intellectual property (IP) core.
More informationRevolutionary Quad-Pipelined Ultra High Performance 16/32-bit Microcontroller v. 6.05
DQ80251 Revolutionary Quad-Pipelined Ultra High Performance 16/32-bit Microcontroller v. 6.05 O V E R V I E W DQ80251 is a revolutionary Quad-Pipelined ultrahigh performance, speed optimized soft core,
More informationTiming Analysis in Xilinx ISE
Timing Analysis in Xilinx ISE For each design which is to be implemented, constraints should be defined to get predictable results. The first important class of constraints was already introduced in the
More informationModule 4. Design of Embedded Processors. Version 2 EE IIT, Kharagpur 1
Module 4 Design of Embedded Processors Version 2 EE IIT, Kharagpur 1 Lesson 23 Introduction to Hardware Description Languages-III Version 2 EE IIT, Kharagpur 2 Instructional Objectives At the end of the
More informationDQ8051. Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core
DQ8051 Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core COMPANY OVERVIEW Digital Core Design is a leading IP Core provider and a System-on-Chip design house. The company was
More informationEvaluation of a Refinement-Driven SystemC -Based Design Flow
Evaluation of a Refinement-Driven SystemC -Based Design Flow Thorsten Schubert 1, Jürgen Hanisch 2, Joachim Gerlach 2, Jens-E. Appell 1, Wolfgang Nebel 1 1 OFFIS Research Institute Escherweg 2, 26121 Oldenburg,
More information8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments
8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments QII51017-9.0.0 Introduction The Quartus II incremental compilation feature allows you to partition a design, compile partitions
More informationHardware Verification Group. Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada. CAD Tool Tutorial.
Digital Logic Synthesis and Equivalence Checking Tools Hardware Verification Group Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada CAD Tool Tutorial May, 2010
More informationISim Hardware Co-Simulation Tutorial: Accelerating Floating Point FFT Simulation
ISim Hardware Co-Simulation Tutorial: Accelerating Floating Point FFT Simulation UG817 (v13.3) November 11, 2011 Xilinx is disclosing this user guide, manual, release note, and/or specification (the Documentation
More informationDIGITAL DESIGN TECHNOLOGY & TECHNIQUES
DIGITAL DESIGN TECHNOLOGY & TECHNIQUES CAD for ASIC Design 1 INTEGRATED CIRCUITS (IC) An integrated circuit (IC) consists complex electronic circuitries and their interconnections. William Shockley et
More information01 1 Electronic Design Automation (EDA) the correctness, testability, and compliance of a design is checked by software
01 1 Electronic Design Automation (EDA) 01 1 Electronic Design Automation (EDA): (Short Definition) The use of software to automate electronic (digital and analog) design. Electronic Design Automation
More informationRISC-V CUSTOMIZATION WITH STUDIO 8
RISC-V CUSTOMIZATION WITH STUDIO 8 Zdeněk Přikryl CTO, Codasip GmbH WHO IS CODASIP Leading provider of RISC-V processor IP Introduced its first RISC-V processor in November 2015 Offers its own portfolio
More informationSetup file.synopsys_dc.setup
Setup file.synopsys_dc.setup The.synopsys_dc.setup file is the setup file for Synopsys' Design Compiler. Setup file is used for initializing design parameters and variables, declare design libraries, and
More informationSunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.
World Class Verilog & SystemVerilog Training Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff
More informationAccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall
AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall 2009-10 AccelDSP Getting Started Tutorial Introduction This tutorial exercise will guide you through the process of
More informationC-Based Hardware Design
LECTURE 6 In this lecture we will introduce: The VHDL Language and its benefits. The VHDL entity Concurrent and Sequential constructs Structural design. Hierarchy Packages Various architectures Examples
More informationA Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes
A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes Presented at Design Automation Conference (DAC) San Francisco, CA, June 4, 2012. Presented by Chuck Cruse FPGA Hardware
More informationSimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip
SimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto September 4, 2013
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 informationMapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience
Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience H. Krupnova CMG/FMVG, ST Microelectronics Grenoble, France Helena.Krupnova@st.com Abstract Today, having a fast hardware
More informationAdvanced Synthesis Techniques
Advanced Synthesis Techniques Reminder From Last Year Use UltraFast Design Methodology for Vivado www.xilinx.com/ultrafast Recommendations for Rapid Closure HDL: use HDL Language Templates & DRC Constraints:
More informationTen Reasons to Optimize a Processor
By Neil Robinson SoC designs today require application-specific logic that meets exacting design requirements, yet is flexible enough to adjust to evolving industry standards. Optimizing your processor
More informationSystemC Users Forum - Japan. February 1, 2001
SystemC Users Forum - Japan February 1, 2001 Agenda Why SystemC? Organizational Update The Growing SystemC Marketplace SystemC v2.0 Roadmap v2.0 Capabilities and Benefits v1.2beta Capabilities and Benefits
More informationOUTLINE RTL DESIGN WITH ARX
1 2 RTL DESIGN WITH ARX IMPLEMENTATION OF DIGITAL SIGNAL PROCESSING Sabih H. Gerez University of Twente OUTLINE Design languages Arx motivation and alternatives Main features of Arx Arx language elements
More informationHardware description language (HDL)
Hardware description language (HDL) A hardware description language (HDL) is a computer-based language that describes the hardware of digital systems in a textual form. It resembles an ordinary computer
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 informationModeling a 4G LTE System in MATLAB
Modeling a 4G LTE System in MATLAB Part 3: Path to implementation (C and HDL) Houman Zarrinkoub PhD. Signal Processing Product Manager MathWorks houmanz@mathworks.com 2011 The MathWorks, Inc. 1 LTE Downlink
More information