Chapter 9: Integration of Full ASIP and its FPGA Implementation

Size: px
Start display at page:

Download "Chapter 9: Integration of Full ASIP and its FPGA Implementation"

Transcription

1 Chapter 9: Integration of Full ASIP and its FPGA Implementation 9.1 Introduction A top-level module has been created for the ASIP in VHDL in which all the blocks have been instantiated at the Register Transfer Level (RTL). An appropriate VHDL code has been written for all the memories (control, data and program memory) to infer BlockRAMs available on FPGA. Constraint file is created to initialize all the inferred BlockRAMs. Next step is to synthesize the fully integrated ASIP to translate RTlevel code into gate-level netlist and optimize it for the target FPGA. Synthesis and implementation have been done in Xilinx s Project Navigator which is the primary user interface for Integrated Software Environment (ISE). Each step of the design process from design entry to downloading of the design onto FPGA chip has been managed in Xilinx Project Navigator environment. FPGA design flow is shown in figure FPGA Implementation Steps for implementation of the ASIP in FPGA are given below: Design and Constraints Entry A top-level design is created in which all the functional blocks/units used in the ASIP micro-architecture including the BlockRAMS (that are used for implementing the memories) are instantiated and interconnected. As described in chapter 7 all the individual functional blocks had earlier been designed using VHDL at RT-level and functionally verified. Besides functional verification they were also individually synthesized (as a trial) to check out their gate counts and whether the synthesized gatelevel circuit met the clock speed requirement of 25 MHz. The top-level design goes as an input to the synthesis tool. A User Constraint File (UCF) was also created to initialize all the memories i.e. control store, data memories (integer and floating-point) and program memory. 147

2 9.2.2 Design Verification through Functional Simulation Functional simulation tests functional correctness of the design. One can save time during subsequent design steps if the functional simulation is performed early in the design flow. Functional tests were run on the integrated design to verify correctness of its functionality before final implementation onto the FPGA. Here the test data consisted of each individual instruction (with several different operand values) and different test sequences of instructions. The instruction(s) were placed in the program memory through its initialization and the data was similarly placed in the appropriate data memories. The program counter too was initialized. The ASIP design was then simulated for a number of clock cycles and its output (state of data in the data memory) was compared against the corresponding output of the instruction set simulator after execution of each instruction. Design Entry & Constraints Entry Design Synthesis Design Verification Functional Verification Through Simulation Design Implementation Static Timing Analysis Back Annotation Timing Simulation Download to a Xilinx Device In-circuit Verification Figure 9.1: FPGA Design Flow 148

3 9.2.3 Synthesis After the design was successfully verified functionally, the next step was to translate the design into gate-level netlist and optimize it for the target FPGA. This was achieved through design synthesis in which the top-level design description (comprised of instantiations and interconnections of RT-level functional blocks) was translated into a structural netlist, and the design was optimized for the FPGA device. Synthesis was done on XST (Xilinx Synthesis Technology), which is a Xilinx tool that synthesizes HDL designs to create a gate-level netlist. XST was invoked within the Project Navigator. Post-synthesis simulation on the generated gate-level netlist was also carried out to check whether the generated gate-level netist is correct or not Design Implementation Next step in the FPGA design flow is design implementation. Design implementation begins with the mapping of a logical design file to a specific device and is complete when the physical design is successfully routed and a bit stream is generated. The implementation of the design consists of taking the synthesized netlist through translation, mapping, place and route and finally configuration as shown in figure 9.2. Static Timing Analysis (STA) was performed to check whether the design met the timing requirements of 25 MHz (clock frequency constraint). Also post-place&route simulation was carried out after back annotation of delays by including the SDF (Standard Delay Format) file. Details of FPGA implementation flow and steps as shown in Figure 9.2 are described below: 1) Translation: Performs all the steps necessary to read a gate-level netlist in XNF (Xilinx Netlist Format) and create an Xilinx Native Generic Database (NGD) primitives describing the logical design in terms of logic elements such as AND gates, OR gates, Decoders, Flip flops, and RAM s. This output NGD file can be mapped to the desired device family. 149

4 2) Mapping: Maps a logical design to a Xilinx FPGA. The input to mapping is an NGD (Native Generic Database) generated from the translation step, which contains a logical description of the design in terms of both the hierarchical components used to develop the design and the lower-level Xilinx primitives. It maps the logic to the components (logic cells, I/O cells and other components) in the target FPGA device. The output after the mapping is an NCD (Native Component Descrition) file which is a physical representation of the design mapped to the components in the Xilinx FPGA. 3) Placement and Routing: Places and routes the mapped NCD file. For FPGAs, the PAR command line program takes mapped NCD file as input, places and routes the design, and outputs a placed and routed NCD file, which is used by the bitstream generator, BitGen. 4) Bitstream Generation or Configuration: For FPGAs, the BitGen command line program produces a bitstream for Xilinx device configuration. BitGen takes a fully placed and routed NCD file as its input and produces a configuration bitstream a binary file with a.bit extension. The BIT file contains all of the configuration information from the NCD file defining the internal logic and interconnections of the FPGA, plus device-specific information from other files associated with the target device. XNF ENGINE TRANSLATION FLOW MAPPING PLACEMENT & ROUTING CONFIGURATION Figure 9.2: FPGA Implementation Flow 150

5 9.2.5 Overall Synthesis Results of the ASIP Following are the results obtained from the synthesis of the ASIP design: Equivalent Gate Count: 286,713 Number of BlockRAMs Used: 15 out of 16 (each of size 4 kb) Minimum Clock Period (clock cycle duration): ns 9.3 Implementation of a Real-time Demonstration system for the ASIP The developed ASIP is a computational engine (implementing Klatt s parametric speech synthesizer) which computes 60 speech samples (of 16 bits each) as output using a parametric frame (consisting of 60 parameter values of 16 bits each) as input in realtime (within 5 milliseconds). A stand alone ASIP thus appears only as a number cruncher. It was therefore considered more interesting if a live text-to-speech conversion system could be rigged using the ASIP for demonstration. Such a demonstration system must contain facilities for performing the following tasks: a) A means of Hindi text entry. b) Conversion of entered Hindi text into a sequence of parameter frames (60 parameter values per frame). c) Transfer of parameter frames to the ASIP (which implements the Klatt s parametric speech synthesizer in real-time: at a parameter frame rate of 200 frames per second) when requested by the ASIP. d) Transfer of computed speech samples from the ASIP to an audio-codec (whose output is connected to the speaker) for playing the speech. Such a demonstration system was rigged using a PC and a specially selected commercial FPGA based prototyping board which besides the FPGA (XSB-300E: that could accommodate the ASIP design) also contained a programmable clock generator, 256 KB SRAM and an audio-codec required for developing the demonstration system. The task of Hindi text entry was handled through the PC key board (and the PC resident software). 151

6 The task of converting the entered Hindi text into sequence of parameter frames was also performed on the PC (through a software developed for the purpose by another research team at CEERI-Delhi Centre). The task of transfer of PC generated sequence of parameter frames to the ASIP was handled through the transfer of sequence of parameter frames from the PC to the SRAM available on the proto-board (using the software tool GXSLOAD which was available as a part of the software tool kit supplied by the vendor of the board), and thereafter from the SRAM to the ASIP with the help of a specially designed interface controller (one of whose functions was to interface the SRAM available on the protoboard to the ASIP input port). The other function of the interface controller was to interface the output port (16- bit parallel) of the ASIP to the input port (serial) of the audio-codec available on the proto-board. For the demonstration system the circuit implemented in the FPGA comprises of the following three components and their interconnections: 1) The ASIP. 2) The interface controller. 3) STARTUP_VIRTEX. The STARTUP_VIRTEX component (which is a component from the Xilinx library) allows the use of an external 'reset' signal. In this case, this signal is wired to pin- 122 of the FPGA, which on the proto-board is wired to a dip-switch identified as S5-8 where S-5 is a set of 8 dip-switches. When this switch (S5-8) is switched to the position marked as 'ON', then the system is reset and stays in reset till the switch is switched to the other position. This component STARTUP_VIRTEX also allows the use of the userclock for the start-up phase of the configuration. This allows precise synchronization of timing signals generated by using the user-clock. This feature is also made use of in the design. The interface controller component is responsible for interfacing the ASIP with the SRAM (external) and audio-codec available on the proto-board. It reads parameters 152

7 from SRAM when the ASIP requests a new parameter and transfers it to the ASIP. It also takes speech samples (16 bits each) generated by the ASIP, buffers them in a simple double-buffer and sends them as a serial stream to the audio-codec at the appropriate instants. It also generates the 3 clocks required by the audio-codec by using synchronous counters to divide the clock being supplied to the FPGA. The audio codec requires data in 2's complement representation. The audio-codec is used in its default mode which is 16- bits, MSB first. It may be mentioned here that the FPGA is supplied a 25 MHz clock by programming the clock generator on the proto-board. 153

8 154

FPGA Design Flow 1. All About FPGA

FPGA Design Flow 1. All About FPGA FPGA Design Flow 1 In this part of tutorial we are going to have a short intro on FPGA design flow. A simplified version of FPGA design flow is given in the flowing diagram. FPGA Design Flow 2 FPGA_Design_FLOW

More information

Xilinx Project Navigator Reference Guide

Xilinx Project Navigator Reference Guide 31 July 2003 Author: David M. Sendek Xilinx Project Navigator Reference Guide Background: This guide provides you with step-by-step procedures in using the Xilinx Project Navigator to perform the following:

More information

Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i

Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i This tutorial will show you how to: Use Verilog to specify a design Simulate that Verilog design Define pin constraints for the FPGA (.ucf

More information

ISE Design Suite Software Manuals and Help

ISE 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 information

Lab 3 Sequential Logic for Synthesis. FPGA Design Flow.

Lab 3 Sequential Logic for Synthesis. FPGA Design Flow. Lab 3 Sequential Logic for Synthesis. FPGA Design Flow. Task 1 Part 1 Develop a VHDL description of a Debouncer specified below. The following diagram shows the interface of the Debouncer. The following

More information

Physics 623. FPGA I Construction of a Synchronous Counter Aug. 4, 2008

Physics 623. FPGA I Construction of a Synchronous Counter Aug. 4, 2008 Physics 623 FPGA I onstruction of a Synchronous ounter Aug. 4, 2008 1 The Goal of This Experiment You will design a small digital circuit, download the design to a Field Programmable Gate Array (FPGA)

More information

DESIGN AND IMPLEMENTATION OF 32-BIT CONTROLLER FOR INTERACTIVE INTERFACING WITH RECONFIGURABLE COMPUTING SYSTEMS

DESIGN AND IMPLEMENTATION OF 32-BIT CONTROLLER FOR INTERACTIVE INTERFACING WITH RECONFIGURABLE COMPUTING SYSTEMS DESIGN AND IMPLEMENTATION OF 32-BIT CONTROLLER FOR INTERACTIVE INTERFACING WITH RECONFIGURABLE COMPUTING SYSTEMS Ashutosh Gupta and Kota Solomon Raju Digital System Group, Central Electronics Engineering

More information

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly!

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly! This tutorial will show you how to: Part I: Set up a new project in ISE 14.7 Part II: Implement a function using Schematics Part III: Simulate the schematic circuit using ISim Part IV: Constraint, Synthesize,

More information

Building Combinatorial Circuit Using Behavioral Modeling Lab

Building Combinatorial Circuit Using Behavioral Modeling Lab Building Combinatorial Circuit Using Behavioral Modeling Lab Overview: In this lab you will learn how to model a combinatorial circuit using behavioral modeling style of Verilog HDL. You will model a combinatorial

More information

DESIGN STRATEGIES & TOOLS UTILIZED

DESIGN 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 information

PINE TRAINING ACADEMY

PINE TRAINING ACADEMY PINE TRAINING ACADEMY Course Module A d d r e s s D - 5 5 7, G o v i n d p u r a m, G h a z i a b a d, U. P., 2 0 1 0 1 3, I n d i a Digital Logic System Design using Gates/Verilog or VHDL and Implementation

More information

Graduate Institute of Electronics Engineering, NTU FPGA Design with Xilinx ISE

Graduate Institute of Electronics Engineering, NTU FPGA Design with Xilinx ISE FPGA Design with Xilinx ISE Presenter: Shu-yen Lin Advisor: Prof. An-Yeu Wu 2005/6/6 ACCESS IC LAB Outline Concepts of Xilinx FPGA Xilinx FPGA Architecture Introduction to ISE Code Generator Constraints

More information

TLL5000 Electronic System Design Base Module

TLL5000 Electronic System Design Base Module TLL5000 Electronic System Design Base Module The Learning Labs, Inc. Copyright 2007 Manual Revision 2007.12.28 1 Copyright 2007 The Learning Labs, Inc. Copyright Notice The Learning Labs, Inc. ( TLL )

More information

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4 TLL5000 Electronic System Design Base Module Getting Started Guide, Ver 3.4 COPYRIGHT NOTICE The Learning Labs, Inc. ( TLL ) All rights reserved, 2008 Reproduction in any form without permission is prohibited.

More information

475 Electronics for physicists Introduction to FPGA programming

475 Electronics for physicists Introduction to FPGA programming 475 Electronics for physicists Introduction to FPGA programming Andrej Seljak, Gary Varner Department of Physics University of Hawaii at Manoa November 18, 2015 Abstract Digital circuits based on binary

More information

V1 - VHDL Language. FPGA Programming with VHDL and Simulation (through the training Xilinx, Lattice or Actel FPGA are targeted) Objectives

V1 - 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 information

CSE 591: Advanced Hardware Design and Verification (2012 Spring) LAB #0

CSE 591: Advanced Hardware Design and Verification (2012 Spring) LAB #0 Lab 0: Tutorial on Xilinx Project Navigator & ALDEC s Active-HDL Simulator CSE 591: Advanced Hardware Design and Verification Assigned: 01/05/2011 Due: 01/19/2011 Table of Contents 1 Overview... 2 1.1

More information

FPGA Design Flow. - from HDL to physical implementation - Victor Andrei. Kirchhoff-Institut für Physik (KIP) Ruprecht-Karls-Universität Heidelberg

FPGA Design Flow. - from HDL to physical implementation - Victor Andrei. Kirchhoff-Institut für Physik (KIP) Ruprecht-Karls-Universität Heidelberg FPGA Design Flow - from HDL to physical implementation - Victor Andrei Kirchhoff-Institut für Physik (KIP) Ruprecht-Karls-Universität Heidelberg 6th Detector Workshop of the Helmholtz Alliance Physics

More information

PlanAhead Release Notes

PlanAhead Release Notes PlanAhead Release Notes What s New in the 11.1 Release UG656(v 11.1.0) April 27, 2009 PlanAhead 11.1 Release Notes Page 1 Table of Contents What s New in the PlanAhead 11.1 Release... 4 Device Support...

More information

Introduction to Field Programmable Gate Arrays

Introduction to Field Programmable Gate Arrays Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May 9 June 2007 Javier Serrano, CERN AB-CO-HT Outline Historical introduction.

More information

Timing Analysis in Xilinx ISE

Timing 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 information

RTL Coding General Concepts

RTL 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 information

Tutorial on FPGA Design Flow based on Aldec Active HDL. Ver 1.5

Tutorial on FPGA Design Flow based on Aldec Active HDL. Ver 1.5 Tutorial on FPGA Design Flow based on Aldec Active HDL Ver 1.5 1 Prepared by Ekawat (Ice) Homsirikamol, Marcin Rogawski, Jeremy Kelly, John Pham, and Dr. Kris Gaj This tutorial assumes that you have basic

More information

ENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim

ENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim ENGN 1630 Fall 2018 Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim You will use the Xilinx ISim simulation software for the required timing simulation of the XC9572XL CPLD programmable

More information

Tutorial: ISE 12.2 and the Spartan3e Board v August 2010

Tutorial: ISE 12.2 and the Spartan3e Board v August 2010 Tutorial: ISE 12.2 and the Spartan3e Board v12.2.1 August 2010 This tutorial will show you how to: Use a combination of schematics and Verilog to specify a design Simulate that design Define pin constraints

More information

Introduction to VHDL Design on Quartus II and DE2 Board

Introduction to VHDL Design on Quartus II and DE2 Board ECP3116 Digital Computer Design Lab Experiment Duration: 3 hours Introduction to VHDL Design on Quartus II and DE2 Board Objective To learn how to create projects using Quartus II, design circuits and

More information

ECE 4514 Digital Design II. Spring Lecture 20: Timing Analysis and Timed Simulation

ECE 4514 Digital Design II. Spring Lecture 20: Timing Analysis and Timed Simulation ECE 4514 Digital Design II Lecture 20: Timing Analysis and Timed Simulation A Tools/Methods Lecture Topics Static and Dynamic Timing Analysis Static Timing Analysis Delay Model Path Delay False Paths Timing

More information

FPGA briefing Part II FPGA development DMW: FPGA development DMW:

FPGA briefing Part II FPGA development DMW: FPGA development DMW: FPGA briefing Part II FPGA development FPGA development 1 FPGA development FPGA development : Domain level analysis (Level 3). System level design (Level 2). Module level design (Level 1). Academical focus

More information

VHDL for Synthesis. Course Description. Course Duration. Goals

VHDL 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 information

VHX - Xilinx - FPGA Programming in VHDL

VHX - Xilinx - FPGA Programming in VHDL Training Xilinx - FPGA Programming in VHDL: This course explains how to design with VHDL on Xilinx FPGAs using ISE Design Suite - Programming: Logique Programmable VHX - Xilinx - FPGA Programming in VHDL

More information

Synthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool

Synthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool Synthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool Md. Abdul Latif Sarker, Moon Ho Lee Division of Electronics & Information Engineering Chonbuk National University 664-14 1GA Dekjin-Dong

More information

outline Reliable State Machines MER Mission example

outline Reliable State Machines MER Mission example outline Reliable State Machines Dr. Gary R Burke California Institute of Technology Jet Propulsion Laboratory Background JPL MER example JPL FPGA/ASIC Process Procedure Guidelines State machines Traditional

More information

FPGA: What? Why? Marco D. Santambrogio

FPGA: What? Why? Marco D. Santambrogio FPGA: What? Why? Marco D. Santambrogio marco.santambrogio@polimi.it 2 Reconfigurable Hardware Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much

More information

ECE 545 Lecture 12. FPGA Resources. George Mason University

ECE 545 Lecture 12. FPGA Resources. George Mason University ECE 545 Lecture 2 FPGA Resources George Mason University Recommended reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional Details 2 What is an FPGA? Configurable Logic Blocks

More information

Digital Circuit Design Using Xilinx ISE Tools

Digital Circuit Design Using Xilinx ISE Tools Digital Circuit Design Using Xilinx ISE Tools Poras T. Balsara and Prashant Vallur Table of Contents 1. Introduction 2. Programmable logic devices: FPGA and CPLD 3. Creating a new project in Xilinx Foundation

More information

Physics 623. Programmable Gate Array Experiment Nov. 30, 2006

Physics 623. Programmable Gate Array Experiment Nov. 30, 2006 Physics 623 Programmable Gate Array Experiment Nov. 30, 2006 1 The Goal of This Experiment You will design a small digital circuit, download the design to a Field Programmable Gate Array (FPGA) I, and

More information

Lab 1: FPGA Physical Layout

Lab 1: FPGA Physical Layout Lab 1: FPGA Physical Layout University of California, Berkeley Department of Electrical Engineering and Computer Sciences EECS150 Components and Design Techniques for Digital Systems John Wawrzynek, James

More information

Introduction to WebPACK 5.2 for FPGAs. Using Xilinx WebPACK Software to Create FPGA Designs for the XSB-300E Board

Introduction to WebPACK 5.2 for FPGAs. Using Xilinx WebPACK Software to Create FPGA Designs for the XSB-300E Board Introduction to WebPACK 5.2 for FPGAs Using Xilinx WebPACK Software to Create FPGA Designs for the XSB-300E Board Release date: 10/27/2003 All XS-prefix product designations are trademarks of XESS Corp.

More information

EECS 151/251A FPGA Lab Lab 2: Introduction to FPGA Development + Creating a Tone Generator

EECS 151/251A FPGA Lab Lab 2: Introduction to FPGA Development + Creating a Tone Generator EECS 151/251A FPGA Lab Lab 2: Introduction to FPGA Development + Creating a Tone Generator Prof. John Wawrzynek, Nicholas Weaver TAs: Arya Reais-Parsi, Taehwan Kim Department of Electrical Engineering

More information

Hardware Description Languages (HDLs) Verilog

Hardware Description Languages (HDLs) Verilog Hardware Description Languages (HDLs) Verilog Material from Mano & Ciletti book By Kurtulus KULLU Ankara University What are HDLs? A Hardware Description Language resembles a programming language specifically

More information

Laboratory Memory Components

Laboratory Memory Components Laboratory 3 3. Memory Components 3.1 Objectives Design, implement and test Register File Read only Memories ROMs Random Access Memories RAMs Familiarize the students with Xilinx ISE WebPack Xilinx Synthesis

More information

Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles

Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles Zhiyi Yu, Bevan Baas VLSI Computation Lab, ECE Department University of California, Davis, USA Outline Introduction Timing issues

More information

Advanced FPGA Design Methodologies with Xilinx Vivado

Advanced 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 information

Advanced module: Video en/decoder on Virtex 5

Advanced module: Video en/decoder on Virtex 5 Advanced module: Video en/decoder on Virtex 5 Content 1. Advanced module: Video en/decoder on Virtex 5... 2 1.1. Introduction to the lab environment... 3 1.1.1. Remote control... 4 1.2. Getting started

More information

Getting Started with Xilinx Design Tools and the XS 40 Prototyping Platform-- a User s Guide *

Getting Started with Xilinx Design Tools and the XS 40 Prototyping Platform-- a User s Guide * Getting Started with Xilinx Design Tools and the XS 40 Prototyping Platform-- a User s Guide * B. Earl Wells Sin Ming Loo by Electrical and Computer Engineering Department University of Alabama in Huntsville

More information

What is Xilinx Design Language?

What is Xilinx Design Language? Bill Jason P. Tomas University of Nevada Las Vegas Dept. of Electrical and Computer Engineering What is Xilinx Design Language? XDL is a human readable ASCII format compatible with the more widely used

More information

EE 361L Digital Systems and Computer Design Laboratory

EE 361L Digital Systems and Computer Design Laboratory University of Hawaii Department of Electrical Engineering EE 361L Digital Systems and Computer Design Laboratory Timing Simulation Version 1.0 10/10/2003 This document is a quick tutorial on performing

More information

HIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1

HIERARCHICAL 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 information

Tutorial on FPGA Design Flow based on Xilinx ISE WebPack and ModelSim. ver. 2.0

Tutorial on FPGA Design Flow based on Xilinx ISE WebPack and ModelSim. ver. 2.0 Tutorial on FPGA Design Flow based on Xilinx ISE WebPack and ModelSim ver. 2.0 Updated: Fall 2013 1 Preparing the Input: Download examples associated with this tutorial posted at http://ece.gmu.edu/tutorials-and-lab-manuals

More information

Outline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design

Outline 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 information

EE 1315 DIGITAL LOGIC LAB EE Dept, UMD

EE 1315 DIGITAL LOGIC LAB EE Dept, UMD EE 1315 DIGITAL LOGIC LAB EE Dept, UMD EXPERIMENT # 1: Logic building blocks The main objective of this experiment is to let you familiarize with the lab equipment and learn about the operation of the

More information

Introduction to WebPACK 3.1. Using XILINX WebPACK Software to Create CPLD Designs

Introduction to WebPACK 3.1. Using XILINX WebPACK Software to Create CPLD Designs Introduction to WebPACK 3.1 Using XILINX WebPACK Software to Create CPLD Designs RELEASE DATE: 8/28/2000 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix product designations

More information

FPGA design with National Instuments

FPGA design with National Instuments FPGA design with National Instuments Rémi DA SILVA Systems Engineer - Embedded and Data Acquisition Systems - MED Region ni.com The NI Approach to Flexible Hardware Processor Real-time OS Application software

More information

Laboratory Finite State Machines and Serial Communication

Laboratory Finite State Machines and Serial Communication Laboratory 11 11. Finite State Machines and Serial Communication 11.1. Objectives Study, design, implement and test Finite State Machines Serial Communication Familiarize the students with Xilinx ISE WebPack

More information

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran

CAD 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 information

Hardware 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 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 information

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions

Overview. 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 information

CCE 3202 Advanced Digital System Design

CCE 3202 Advanced Digital System Design CCE 3202 Advanced Digital System Design Lab Exercise #2 This lab exercise will show you how to create, synthesize, and test a 3-bit ripple counter. A ripple counter is simply a circuit that outputs the

More information

1 Design Process HOME CONTENTS INDEX. For further assistance, or call your local support center

1 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 information

Programmable Logic Devices

Programmable 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 information

University of Hawaii EE 361L. Getting Started with Spartan 3E Digilent Basys2 Board. Lab 4.1

University of Hawaii EE 361L. Getting Started with Spartan 3E Digilent Basys2 Board. Lab 4.1 University of Hawaii EE 361L Getting Started with Spartan 3E Digilent Basys2 Board Lab 4.1 I. Test Basys2 Board Attach the Basys2 board to the PC or laptop with the USB connector. Make sure the blue jumper

More information

Programmable Logic Devices HDL-Based Design Flows CMPE 415

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 information

Verilog Design Entry, Synthesis, and Behavioral Simulation

Verilog Design Entry, Synthesis, and Behavioral Simulation ------------------------------------------------------------- PURPOSE - This lab will present a brief overview of a typical design flow and then will start to walk you through some typical tasks and familiarize

More information

FT-UNSHADES credits. UNiversity of Sevilla HArdware DEbugging System.

FT-UNSHADES credits. UNiversity of Sevilla HArdware DEbugging System. FT-UNSHADES Microelectronic Presentation Day February, 4th, 2004 J. Tombs & M.A. Aguirre jon@gte.esi.us.es, aguirre@gte.esi.us.es AICIA-GTE of The University of Sevilla (SPAIN) FT-UNSHADES credits UNiversity

More information

CS232 VHDL Lecture. Types

CS232 VHDL Lecture. Types CS232 VHDL Lecture VHSIC Hardware Description Language [VHDL] is a language used to define and describe the behavior of digital circuits. Unlike most other programming languages, VHDL is explicitly parallel.

More information

An easy to read reference is:

An easy to read reference is: 1. Synopsis: Timing Analysis and Timing Constraints The objective of this lab is to make you familiar with two critical reports produced by the Xilinx ISE during your design synthesis and implementation.

More information

Lab 1: Introduction to Verilog HDL and the Xilinx ISE

Lab 1: Introduction to Verilog HDL and the Xilinx ISE EE 231-1 - Fall 2016 Lab 1: Introduction to Verilog HDL and the Xilinx ISE Introduction In this lab simple circuits will be designed by programming the field-programmable gate array (FPGA). At the end

More information

AccelDSP 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 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 information

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

EECS150 - 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 information

INTRODUCTION TO FPGA ARCHITECTURE

INTRODUCTION TO FPGA ARCHITECTURE 3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)

More information

Creating Computers from (almost) scratch using FPGAs, VHDL and FORTH. Recreative explorations of the hardware/software co-design space

Creating Computers from (almost) scratch using FPGAs, VHDL and FORTH. Recreative explorations of the hardware/software co-design space Creating Computers from (almost) scratch using FPGAs, VHDL and FORTH Recreative explorations of the hardware/software co-design space Hans Hübner, ZSLUG Meetup, February 7th, 2011 Introduction Hacker since

More information

Early Models in Silicon with SystemC synthesis

Early 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 information

Introduction. In this exercise you will:

Introduction. In this exercise you will: Introduction In a lot of digital designs (DAQ, Trigger,..) the FPGAs are used. The aim of this exercise is to show you a way to logic design in a FPGA. You will learn all the steps from the idea to the

More information

Using XILINX WebPACK Software to Create CPLD Designs

Using XILINX WebPACK Software to Create CPLD Designs Introduction to WebPACK Using XILINX WebPACK Software to Create CPLD Designs RELEASE DATE: 10/24/1999 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix product designations

More information

Experiment 3. Digital Circuit Prototyping Using FPGAs

Experiment 3. Digital Circuit Prototyping Using FPGAs Experiment 3. Digital Circuit Prototyping Using FPGAs Masud ul Hasan Muhammad Elrabaa Ahmad Khayyat Version 151, 11 September 2015 Table of Contents 1. Objectives 2. Materials Required 3. Background 3.1.

More information

DE2 Board & Quartus II Software

DE2 Board & Quartus II Software January 23, 2015 Contact and Office Hours Teaching Assistant (TA) Sergio Contreras Office Office Hours Email SEB 3259 Tuesday & Thursday 12:30-2:00 PM Wednesday 1:30-3:30 PM contre47@nevada.unlv.edu Syllabus

More information

Nikhil Gupta. FPGA Challenge Takneek 2012

Nikhil 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 information

Tutorial - Using Xilinx System Generator 14.6 for Co-Simulation on Digilent NEXYS3 (Spartan-6) Board

Tutorial - Using Xilinx System Generator 14.6 for Co-Simulation on Digilent NEXYS3 (Spartan-6) Board Tutorial - Using Xilinx System Generator 14.6 for Co-Simulation on Digilent NEXYS3 (Spartan-6) Board Shawki Areibi August 15, 2017 1 Introduction Xilinx System Generator provides a set of Simulink blocks

More information

Field Programmable Gate Array

Field Programmable Gate Array Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational

More information

AL8253 Core Application Note

AL8253 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 information

Introduction to WebPACK 6.3. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board

Introduction to WebPACK 6.3. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Introduction to WebPACK 6.3 Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Release date: 1/1/2005 2005 by XESS Corp. All XS-prefix product designations are trademarks of XESS Corp.

More information

Lab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts)

Lab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts) Nate Pihlstrom, npihlstr@uccs.edu Lab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts) Objective The objective of this lab assignment is to introduce and use a methodology for designing

More information

DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL

DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL Arid Zone Journal of Engineering, Technology and Environment. August, 2013; Vol. 9, 17-26 DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL Dibal, P.Y. (Department of Computer Engineering,

More information

CHAPTER-IV IMPLEMENTATION AND ANALYSIS OF FPGA-BASED DESIGN OF 32-BIT FPAU

CHAPTER-IV IMPLEMENTATION AND ANALYSIS OF FPGA-BASED DESIGN OF 32-BIT FPAU CHAPTER-IV IMPLEMENTATION AND ANALYSIS OF FPGA-BASED DESIGN OF 32-BIT FPAU The design of 32 bit FPAU using VHDL presented in chapter III needs to be further implemented and tested on FPGA platform and

More information

Synthesis Options FPGA and ASIC Technology Comparison - 1

Synthesis Options FPGA and ASIC Technology Comparison - 1 Synthesis Options Comparison - 1 2009 Xilinx, Inc. All Rights Reserved Welcome If you are new to FPGA design, this module will help you synthesize your design properly These synthesis techniques promote

More information

Xilinx ASMBL Architecture

Xilinx ASMBL Architecture FPGA Structure Xilinx ASMBL Architecture Design Flow Synthesis: HDL to FPGA primitives Translate: FPGA Primitives to FPGA Slice components Map: Packing of Slice components into Slices, placement of Slices

More information

Tutorial on FPGA Design Flow based on Aldec Active HDL. Ver 1.5

Tutorial on FPGA Design Flow based on Aldec Active HDL. Ver 1.5 Tutorial on FPGA Design Flow based on Aldec Active HDL Ver 1.5 1 Prepared by Ekawat (Ice) Homsirikamol, Marcin Rogawski, Jeremy Kelly, Kishore Kumar Surapathi and Dr. Kris Gaj This tutorial assumes that

More information

ECE 436 Laboratory 4 TARGETING THE XESS PROTO-BOARD AND PHYSICAL TESTING WITH A LOGIC ANALYZER

ECE 436 Laboratory 4 TARGETING THE XESS PROTO-BOARD AND PHYSICAL TESTING WITH A LOGIC ANALYZER ECE 436 Laboratory 4 TARGETING THE XESS PROTO-BOARD AND PHYSICAL TESTING WITH A LOGIC ANALYZER Description: For this laboratory, you will be learning how to constrain your design to FPGA pins, generate

More information

An Introduction to Programmable Logic

An Introduction to Programmable Logic Outline An Introduction to Programmable Logic 3 November 24 Transistors Logic Gates CPLD Architectures FPGA Architectures Device Considerations Soft Core Processors Design Example Quiz Semiconductors Semiconductor

More information

Graduate course on FPGA design

Graduate course on FPGA design History of and programmable logic February 15, 2010 History of and programmable logic History of and programmable logic History of and programmable logic Course planning Lectures Laboration 4 HP for actively

More information

Register Transfer Level in Verilog: Part I

Register 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 information

Prachi Sharma 1, Rama Laxmi 2, Arun Kumar Mishra 3 1 Student, 2,3 Assistant Professor, EC Department, Bhabha College of Engineering

Prachi Sharma 1, Rama Laxmi 2, Arun Kumar Mishra 3 1 Student, 2,3 Assistant Professor, EC Department, Bhabha College of Engineering A Review: Design of 16 bit Arithmetic and Logical unit using Vivado 14.7 and Implementation on Basys 3 FPGA Board Prachi Sharma 1, Rama Laxmi 2, Arun Kumar Mishra 3 1 Student, 2,3 Assistant Professor,

More information

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING 1 DSP applications DSP platforms The synthesis problem Models of computation OUTLINE 2 DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: Time-discrete representation

More information

ProASIC PLUS FPGA Family

ProASIC PLUS FPGA Family ProASIC PLUS FPGA Family Key Features Reprogrammable /Nonvolatile Flash Technology Low Power Secure Single Chip/Live at Power Up 1M Equivalent System Gates Cost Effective ASIC Alternative ASIC Design Flow

More information

EECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007

EECS 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 information

Xilinx ChipScope ICON/VIO/ILA Tutorial

Xilinx ChipScope ICON/VIO/ILA Tutorial Xilinx ChipScope ICON/VIO/ILA Tutorial The Xilinx ChipScope tools package has several modules that you can add to your Verilog design to capture input and output directly from the FPGA hardware. These

More information

EE595. Part VIII Overall Concept on VHDL. EE 595 EDA / ASIC Design Lab

EE595. Part VIII Overall Concept on VHDL. EE 595 EDA / ASIC Design Lab EE595 Part VIII Overall Concept on VHDL VHDL is a Standard Language Standard in the electronic design community. VHDL will virtually guarantee that you will not have to throw away and re-capture design

More information

ECE 574: Modeling and Synthesis of Digital Systems using Verilog and VHDL. Fall 2017 Final Exam (6.00 to 8.30pm) Verilog SOLUTIONS

ECE 574: Modeling and Synthesis of Digital Systems using Verilog and VHDL. Fall 2017 Final Exam (6.00 to 8.30pm) Verilog SOLUTIONS ECE 574: Modeling and Synthesis of Digital Systems using Verilog and VHDL Fall 2017 Final Exam (6.00 to 8.30pm) Verilog SOLUTIONS Note: Closed book no notes or other material allowed apart from the one

More information

Lecture #2: Verilog HDL

Lecture #2: Verilog HDL Lecture #2: Verilog HDL Paul Hartke Phartke@stanford.edu Stanford EE183 April 8, 2002 EE183 Design Process Understand problem and generate block diagram of solution Code block diagram in verilog HDL Synthesize

More information

FPGA Based Digital Design Using Verilog HDL

FPGA Based Digital Design Using Verilog HDL FPGA Based Digital Design Using Course Designed by: IRFAN FAISAL MIR ( Verilog / FPGA Designer ) irfanfaisalmir@yahoo.com * Organized by Electronics Division Integrated Circuits Uses for digital IC technology

More information