Using Xilinx ISE for VHDL Based Design



Similar documents
Xilinx ISE. <Release Version: 10.1i> Tutorial. Department of Electrical and Computer Engineering State University of New York New Paltz

if-then else : 2-1 mux mux: process (A, B, Select) begin if (select= 1 ) then Z <= A; else Z <= B; end if; end process;

LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER

Finite State Machine Design and VHDL Coding Techniques

ECE 3401 Lecture 7. Concurrent Statements & Sequential Statements (Process)

Lab 1: Introduction to Xilinx ISE Tutorial

State Machines in VHDL

VHDL GUIDELINES FOR SYNTHESIS

EXPERIMENT 8. Flip-Flops and Sequential Circuits

Digital Design with VHDL

12. A B C A B C A B C 1 A B C A B C A B C JK-FF NETr

Digital Circuit Design Using Xilinx ISE Tools

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

Introduction to Programmable Logic Devices. John Coughlan RAL Technology Department Detector & Electronics Division

VHDL Test Bench Tutorial

Quartus II Introduction for VHDL Users

ISE In-Depth Tutorial. UG695 (v14.1) April 24, 2012

A Verilog HDL Test Bench Primer Application Note

LAB #4 Sequential Logic, Latches, Flip-Flops, Shift Registers, and Counters

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

Modeling Latches and Flip-flops

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

Quartus II Software Design Series : Foundation. Digitale Signalverarbeitung mit FPGA. Digitale Signalverarbeitung mit FPGA (DSF) Quartus II 1

VHDL programmering H2

Lab 1: Full Adder 0.0

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

Testing & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation

(1) D Flip-Flop with Asynchronous Reset. (2) 4:1 Multiplexor. CS/EE120A VHDL Lab Programming Reference

ECE232: Hardware Organization and Design. Part 3: Verilog Tutorial. Basic Verilog

Lab 7: VHDL 16-Bit Shifter

Modeling Registers and Counters

PROTOTYPE DEVELOPMENT OF FPGA BASED PS/2 MOUSE CONTROLLED PCB DRILL MACHINE

VENDING MACHINE. ECE261 Project Proposal Presentaion. Members: ZHANG,Yulin CHEN, Zhe ZHANG,Yanni ZHANG,Yayuan

ISE In-Depth Tutorial 10.1

Rotary Encoder Interface for Spartan-3E Starter Kit

Design: a mod-8 Counter

ModelSim-Altera Software Simulation User Guide

Start Active-HDL by double clicking on the Active-HDL Icon (windows).

The 104 Duke_ACC Machine

ECE380 Digital Logic

Guru Ghasidas Vishwavidyalaya, Bilaspur (C.G.) Institute of Technology. Electronics & Communication Engineering. B.

RTL Technology and Schematic Viewers

Quartus II Introduction Using VHDL Design

Digital Systems Design! Lecture 1 - Introduction!!

More Verilog. 8-bit Register with Synchronous Reset. Shift Register Example. N-bit Register with Asynchronous Reset.

Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit

An Example VHDL Application for the TM-4

9/14/ :38

Hardware Implementation of the Stone Metamorphic Cipher

Asynchronous & Synchronous Reset Design Techniques - Part Deux

CNC FOR EDM MACHINE TOOL HARDWARE STRUCTURE. Ioan Lemeni

DDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev Key Design Features. Block Diagram. Generic Parameters.

DEVELOPMENT OF DEVICES AND METHODS FOR PHASE AND AC LINEARITY MEASUREMENTS IN DIGITIZERS

Lenguaje VHDL. Diseño de sistemas digitales secuenciales

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

FINITE STATE MACHINE: PRINCIPLE AND PRACTICE

A Platform for Visualizing Digital Circuit Synthesis with VHDL

Technical Aspects of Creating and Assessing a Learning Environment in Digital Electronics for High School Students

Design of Digital Circuits (SS16)

MIMO detector algorithms and their implementations for LTE/LTE-A

Design and Implementation of Vending Machine using Verilog HDL

Digital Design and Synthesis INTRODUCTION

University of St. Thomas ENGR Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54

From UML to HDL: a Model Driven Architectural Approach to Hardware-Software Co-Design

Digital Systems. Syllabus 8/18/2010 1

DIGITAL DESIGN FLOW OPTIONS

EXPERIMENT 4. Parallel Adders, Subtractors, and Complementors

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

Flip-Flops and Sequential Circuit Design. ECE 152A Winter 2012

Flip-Flops and Sequential Circuit Design

Step : Create Dependency Graph for Data Path Step b: 8-way Addition? So, the data operations are: 8 multiplications one 8-way addition Balanced binary

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Help on the Embedded Software Block

Systems I: Computer Organization and Architecture

CPE 462 VHDL: Simulation and Synthesis

Decimal Number (base 10) Binary Number (base 2)

Lesson 1 - Creating a Project

Life Cycle of a Memory Request. Ring Example: 2 requests for lock 17

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1

Home Automation System Design Using Verilog Hardware Descriptive Language

FPGA Synthesis Example: Counter


Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus II 12.0

Digital Systems Design. VGA Video Display Generation

SDLC Controller. Documentation. Design File Formats. Verification

After opening the Programs> Xilinx ISE 8.1i > Project Navigator, you will come to this screen as start-up.

Jianjian Song LogicWorks 4 Tutorials (5/15/03) Page 1 of 14

Programing the Microprocessor in C Microprocessor System Design and Interfacing ECE 362

Implementation Details

Design Example: Counters. Design Example: Counters. 3-Bit Binary Counter. 3-Bit Binary Counter. Other useful counters:

VGA video signal generation

Physics 226 FPGA Lab #1 SP Wakely. Terasic DE0 Board. Getting Started

Post-Configuration Access to SPI Flash Memory with Virtex-5 FPGAs Author: Daniel Cherry

1. Downloading. 2. Installation and License Acquiring. Xilinx ISE Webpack + Project Setup Instructions

Multiplexers Two Types + Verilog

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1)

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995

Transcription:

ECE 561 Project 4-1 - Using Xilinx ISE for VHDL Based Design In this project you will learn to create a design module from VHDL code. With Xilinx ISE, you can easily create modules from VHDL code using the ISE Text Editor tool. This project consists of 2 parts. PART I : Using Xilinx with VHDL as design entry. A. Create new project 1. Select File New Project. A New Project Wizard window opens; you can name your project (i.e. 561proj4). Select HDL as the Top-level source type. Click Next. 2. Select Spatan3 in the Family field; and VHDL in the Preferred Language field.

ECE 561 Project 4-2 - 3. Click Next, Next, Finish. You do not need to create a new source at this time. B. Start with you VHDL code In order to create the module, in the New Source Wizard, create a file and specify the name. The resulting skeleton VHDL file is then modified further in the ISE Text Editor. To create the source file: 1. Select Project New Source. A dialog box opens in which you specify the type of source you want to create. 2. Select VHDL Module. 3. In the File Name field, type cnt1_fsm. 4. Click Next. You do not need to create ports of the component at this time. 5. Copy and pasted your VHDL code in to the schematic editor cnt1_fsm.vhd. Make sure you properly replaced ENTITY and ARCHITECTURE blocks. Here I used the VHDL of the input 1s counter mod 4 from the lectures as an example. The VHDL was: ENTITY cnt1s_fsm IS PORT (x,y : IN BIT; clk : IN BIT; fsm_out : OUT BIT); END cnt1s_fsm; ARCHITECTURE one OF cnt1s_fsm IS TYPE state_type IS (s0,s1,s2,s3); SIGNAL state, next_state : state_type; PROCESS WAIT UNTIL clk = '1' AND clk'event; state <= next_state; PROCESS (state,x,y) CASE state IS WHEN s0 => IF (x='1' AND y='1') THEN next_state <= s2; ELSIF (x/=y) THEN next_state <= s1; WHEN s1 => IF (x='1' AND y='1') THEN next_state <= s3; ELSIF (x/=y) THEN next_state <= s2; WHEN s2 => IF (x='1' AND y='1') THEN next_state <= s0;

ECE 561 Project 4-3 - ELSIF (x/=y) THEN next_state <= s3; WHEN s3 => IF (x='1' AND y='1') THEN next_state <= s1; ELSIF (x/=y) THEN next_state <= s0; END CASE; PROCESS (state) CASE state IS WHEN s0 => fsm_out <= '1'; WHEN s1 => fsm_out <= '0'; WHEN s2 => fsm_out <= '0'; WHEN s3 => fsm_out <= '0'; END CASE; END one; C. Synthesize your design 1. In the Sources window, select cnt1_fsm.vhd. In the Processes window, you can then double click on the Synthesize XST selection. This synthesizes the design from that file. You may get some errors and if you do check the HDL code that it is compiling especially the entity and port modes. 2. Then after the synthesis is correct go to the Processes window (lower of the 2 windows on the left). Expand the Synthesize XST selection by clicking on the + in the box before it. It will expand. Double click on the View RTL Schematic. You should see comparable to the following

ECE 561 Project 4-4 - 3. Now double click on this figure to expand what is in it and you should see the following: You will notice there are 2 flip-flops, a couple of gates, and a few other units.

ECE 561 Project 4-5 - 4. Double click on one of the larger boxes. You will see the following: You can now implement the design by double clicking on that line. Further explore the remaining options. 5. The project that you write the VHDL for is Write a VHDL description of a tail light controller. This will be very similar in operation to the T-Bird Taillight controller we discussed earlier. Now however, there are 4 segments in each taillight, LD,LC,LB,LA and RA,RB,RC,RD. Write up the VHDL code for this. Enter it into XILINX. Synthesize it and capture the circuit generated after synthesis. You can select, then copy, and then paste into a word document for you report. Turn in a report that has the VHDL code and the generated circuit. Part II. Repeat of 7 Segment Decoder Write a VHDL entity and architecture for a 7 segment decoder. As before, the unit will have a 4 bit input. For the style of code to be used, it is easiest if the data input is declared in the port list as: D : IN BIT_VECTOR(3 downto 0); which says that the input is named D with is a 4 bit vector of bits. You can use all 4 bits by just specifying D. Values of D would be 0000, 0001,, 1110, 1111. In the ARCHITECTURE you will have 1 process and in that process, with will be sensitive to D, a single CASE statement: CASE D IS. The choices will be WHEN 0000 => s0<= 1 ;s1<= 1 ; etc. for the 7 s outputs. Enter the design and then synthesize it. As before add to report your code and the results of the synthesis. Also, comment on how the unit was implemented in the FPGA.