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

Size: px
Start display at page:

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

Transcription

1 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 Grading Supplementary Material General Online Reading Tutorial on Working with Xilinx Project Navigator Running Xilinx Project Navigator Creating a new project Entering the target device properties Creating a new Verilog file for the project Copy and Paste the following code: Checking the Syntax Analysis of the generated logic Running Synthesis Creating a Test Bench for our Design Simulating our design using Xilinx s isim Analyzing the results from our Simulation Using the Xilinx Spartan-3 FPGA Now you its your turn!... 25

2 1 Overview The following lab is inted to act as a primer for the Xilinx ISE toolset. We will be going through the process of creating a very simple logic design, testing it, and implementing it in an actual FPGA Platform. 1.1 Grading Question 0: Create Positive Edge Detect and Negative Edge Detect Logic -1 Point Incorrect Design for Positive Edge Detect -1 Point Incorrect Test Bench for Positive Edge Detect 4-1 Point Incorrect Design for Negative Edge Detect -1 Point Incorrect Test Bench for Negative Edge Detect -4 Point if not attempted Question 1: Design a Toggle Flip-Flop -2 Points for incorrect implementation 4-4 Points if not attempted Question 2: Create a Test-Bench and validate your Toggle Flip-Flop -1 Points for failing to test each condition shown in the waveform 2-2 Points if not attempted Question 3.a: Create a 1-Bit Comparator -1 Points if direction of assignment was incorrect. -1 Points for incorrect reg or wire usage. 4-4 Points if not attempted Question 3.b: Create a Test-Bench for the 1-Bit Comparator and validate the comparator -1 Points for failing to test all 4 possible cases. -1 Points for not using # delays 4-4 Points if not attempted Question 3.c: Create a 4-Bit Comparator -1 Points for not instantiating 4 separate 1-bit comparators. 4-1 Points for incorrect bit width declarations -4 Points if not attempted Question 3.d: Create a Test-Bench for the 4-Bit Comparator and validate the comparator -2 Points for not testing all 256 possible conditions. 4-4 Points if not attempted Question 4: Simulate code and record results observed -1 Points per incorrect entry into table of expected results. -1 Points per incorrect # delay usage 4-2 Points if not attempted Question 5: Completed LED Blink FPGA Implementation 1-1 Point if not attempted 2 P age

3 1.2 Supplementary Material ISE Quick Tour: o ISE In-Depth Tutorial o Aldec Active-HDL 8.3 o Kyle s You-Tube stuff (for those of you who love my melodic velvety tones!) o (Active HDL Tutorial - Part 1) o (Active HDL Tutorial - Part 2) 1.3 General Online Reading P age

4 2 Tutorial on Working with Xilinx Project Navigator Please follow the below steps to setup the Xilinx Project. 2.1 Running Xilinx Project Navigator Go to shortcut to the ISE project Navigator on the desktop or All Programs > Xilinx > ISE > Project Navigator. 2.2 Creating a new project Go to File > New Project > Enter the name of the project and the location as shown below and click next: 4 P age

5 2.3 Entering the target device properties We need to mention the FPGA device for which the code is being used. Since we would be working on Spartan 3 boards put the parameters as shown below. 2.4 Creating a new Verilog file for the project Click on the new source button and select Verilog module from the list and give a <name> (we are making a Positive Edge Detection circuit) for your Verilog file which will be saved in the format PED.v. Click next to proceed. 5 P age

6 In the New Source Wizard Define Module screen you can name the signal and assign those directions and vector width. This information is used by the tool to automatically write the module for you. It is recommed that you learn to write the module yourself rather than taking the help of tool. After you have entered the above information click next and the New Source Wizard Summary window will appear. Click Finish. 6 P age

7 The project will be created now and click yes on the screen as shown below: The file created by you will be shown by the tool, click next to proceed to summary of project window. 7 P age

8 Click finish in the Project Summary window. You can see the project being created with some default code created by the tool. 8 P age

9 2.5 Copy and Paste the following code: `timescale 1ns / 1ns //indicates that he simulation unit is 1 ns and the resolution is 1 ns. // // Design Name : ped // File Name : ped.v // Function : Positive Edge Detection // Coder : HEMANSHU ABBEY // module ped (//Port Declarations SIG, // Signal input to be monitored CLK, // Synchronous Clock Input RESET_B, // An active low input which resets the logic to a default state. PULSE // A single clock wide pulse to indicate that a Positive edge has been detected. ); //Port Directions // Input Ports input SIG, CLK, RESET_B; // Output Ports output PULSE; // Signal Declarations/Internal Variables wire inv; wire PULSE; reg q; // Code Starts Here (posedge CLK or negedge RESET_B) if (~RESET_B) q <= 1'b0; else q <= SIG; assign inv =!q; assign PULSE = SIG & inv; module Note: Please try to understand the code by drawing waveforms for it. Also try to write the code for negative edge detection on your own. 9 P age

10 2.6 Checking the Syntax Double click it to run the process and it will show a green correct sign if the process is completed successfully. NOTE: It is very important that you learn to debug your own code. If you have some errors/warnings please try to think what is going wrong and rectify it. 10 P age

11 2.7 Analysis of the generated logic Under Synthesize tab click on View RTL schematic as shown below: Double click on the green box which is your block level diagram for the code to get the actual circuit level implementation by the tool. 11 P age

12 2.8 Running Synthesis Once we are sure that we do not have any errors in the code we can run the complete synthesize to make sure our code is practically implementable. Right click on the synthesize tab and select Rerun all and make sure that you see the process being completed successfully. Once the synthesize process finishes it creates a *.bit file by default in the project directory. This file is used to program the FPGA on the board. How we will program a FPGA will be introduced in a later stage of the course. The next section will focus on writing a test bench for the code and observing the waveforms. 12 P age

13 3 Creating a Test Bench for our Design A test bench is a virtual environment used to verify the correctness or soundness of a design or model. For writing test benches it is important to have the design specification of "design under test" or the DUT. First step of any testbench creation is building a dummy template. This template will contain your DUT and the necessary stimulus. Most of your stimulus will come from procedural blocks, e.g. initial and always. So, we can delay the declare and inputs to DUT as reg and outputs from DUT as wire for now. Note that there is no port list for the test bench. 1. Right click on the PED.V file and select new source as shown below 13 P age

14 2. Select Verilog Text Fixture and name the file as shown below and click on Next > and Finish on the subsequent screens. 3. A default code is created by the Xilinx tool. It is recomm learning to write the code without the help of tool. 14 P age

15 Select and Delete the default code and replace it with the code shown below and save the file. (It is saved in the project directory created by you) tb/tb_ped.v `timescale 1ns / 1ns // // Design Name : ped_tb // File Name : ped_tb.v // Function : Testbench for positive edge detection logic // Coder : HEMANSHU ABBEY // module TB; // Signal Declarations/Internal Variables reg sig, clk, reset_b; wire pulse; // Instatiation of ped module and passing of test vectors ped ped0 (.SIG(sig),.CLK(clk),.RESET_B(reset_b),.PULSE(pulse)); // Code Start initial clk <= 1'b1; reset_b <= 1'b0; sig <= 1'b0; forever #50 clk <= ~clk; clk) reset_b <= 1'b0; sig <= clk) reset_b <= 1'b0; sig <= 1'b0; clk) # 75 reset_b <= 1'b1; sig <= clk) reset_b <= 1'b1; sig <= clk) reset_b <= 1'b1; sig <= clk) reset_b <= 1'b1; sig <= clk) reset_b <= 1'b1; sig <= clk) reset_b <= 1'b1; sig <= 1'b1; #100; $stop; NOTE: Try understanding the testbench and its functioning. It s giving a sequence of events. Try making waveforms as per testbench to boost your understanding. 15 P age

16 4 Simulating our design using Xilinx s isim We will not be using Xilinx as a simulator beyond this lab. But, it is good to get familiar with the different types of simulators. Click the Simulation radio button in the Design window of the ISE Project Navigator. Expand the ISim Simulator tree to reveal Behavioral Check Syntax and Simulate Behavioral Model. Right Click on Simulate Behavioral Model select Run. 16 P age

17 5 Analyzing the results from our Simulation We have implemented a positive edge detection circuit which has a output PULSE which goes high whenever a positive edge is detected in the input sig. We can see from the simulated waveforms that whenever sig goes high the pulse signal also goes high for a clock period. Going ahead if sig stays high then pulse will not respond. This confirms that we have indeed made a positive edge detection and not a level detection circuit. Also we should note that till reset_b is active low the circuitry does not respond to variations in input (Asynchronous reset approach) Similarly try making negative edge detection logic. This concludes the tutorial on workflow with tools and basic coding and testbench approach. Question 1: Using correct Verilog Syntax (Module Declaration, I/O Declaration, Register Declaration, proper use of always blocks, etc ), design a Toggle Flip-Flop. Port Name Port Direction Port Width Description TOGGLE Input 1-bit A single clock-wide pulse to indicate that the current state of the toggle flop should be inverted. CLK Input 1-bit Synchronous Clock Input RESET_B Input 1-bit An active low input which resets the logic to a default state. T_OUT Output 1-bit The current state of the toggle flop. Question 2: Design a Test-Bench to implement the following waveforms 17 P age

18 You need to generate a working test-bench and Xilinx isim waveforms for this question. tb/tb_tff.v Initial CLOCK = 1'b1; RESET = 1'b0; DATA = 1'b0; forever #50 CLOCK <= ~CLOCK; CLOCK) RESET = 1'b0; DATA = CLOCK) RESET = 1'b0; DATA = 1'b0; CLOCK) # 75 RESET = 1'b1; DATA = 1'b0; <FILL YOUR CODE CLOCK) RESET = 1'b1; DATA = 1'b0; #200; $stop; 18 P age

19 6 Using the Xilinx Spartan-3 FPGA This is a general tutorial aimed at getting you familiarized with working on Xilinx Spartan-3 FPGA board. The tutorial is a walkthrough the process of burning the code on FPGA. It is recommed that you go through the tutorial pasted earlier. 1. Open the Xilinx Project Navigator and create a new project for the Xilinx Spartan-3 FPGA. 2. Create a new Verilog file with the following code or you can create a dummy Verilog file and then copy paste the below code. `timescale 1ns / 1ns module blink_led ( CLK, // System Clock RESET, // Active low, asyn reset LED_OUT // LED outputs to indicate locked and unlocked state ); // Input Ports input CLK, RESET; // Output Ports output LED_OUT; // Input ports Data Type wire CLK, RESET; // Output Ports Data Type reg LED_OUT; integer counter = 0; CLK or posedge RESET) if(reset) counter <= 1'b0; LED_OUT <= 1'b0; else if(counter > ) if (counter == ) counter <= 1'b0; LED_OUT <= 1'b0; else counter <= counter + 1'b1; LED_OUT <= 1'b1; else counter <= counter + 1'b1; LED_OUT <= 1'b0; module 3. Run synthesize to verify there is no syntax errors. 4. Now go to User Constraints > Create Timing Constraints as shown below. Click yes 19 P age

20 5. On the next screen give the clock frequency of 20ns. ( The clock on board is 50 MHz) Save the changes. 6. Click ok to proceed as shown below 20 P age

21 7. Close the window for Device Architecture 21 P age

22 8. Now you would be able to see the following screen. Drag and drop your signals on the spreadsheet as shown below. You need to map only 3 signals here as CLK at T9, LED_OUT at P11 and RESET at L14 You need to map your signals to the actual pins on FPGA board. This process is known as creating the UCF (User Constraint File) for the project. The file is saved by the name blink_led.ucf in your project location. If for some reasons you are not able to create the file using the tool then copy paste the below code in notepad and save it as blink_led.ucf (Not as a txt). NET "CLK" TNM_NET = CLK; TIMESPEC TS_CLK = PERIOD "CLK" 20 ns HIGH 50%; #PACE: Start of Constraints generated by PACE #PACE: Start of PACE I/O Pin Assignments NET "CLK" LOC = "T9"; NET "LED_OUT" LOC = "P11"; NET "RESET" LOC = "L14"; #PACE: Start of PACE Area Constraints 22 P age

23 9. Once the UCF is created you need to run Implement Design and then run the Generate Programming File. This created the bit-stream for your code that the FPGA understands. It is created by the extension *.bit. Now click on the Configure Target Device, keep the default settings and click finish as shown. 10. Now you need to assign the bit file to your FPGA (1 st device) as shown below: 23 P age

24 Select the file and click open. You need not assign file for the 2 nd device, so click cancel in the next screen and then click ok on the below screen: 11. Now right click on the 1 st Device and program the FPGA 12. If for some reason you are not able to see the below screen. Try programming again or check your bit stream generation process. 24 P age

25 13. Your code is functional now. You will see LED P11 blinking with around 5 sec gaps. Press the RESET and the LED should turn off till the duration RESET has been pressed. Now try reducing the counter limits as and and re-run the complete process. What do you observe? Can you explain what is happening here? 7 Now you its your turn! Question 3: a) Using Verilog, implement a 1-bit comparator using only inverters and 2-input NAND gates. This comparator has 2 1-bit inputs. The output is 1 if and only if both inputs are the same. The input data lines of the comparator should be labeled starting with A, B and the output with SAME. This file should be called rtl/cmp_1bit.v. b) Use Xilinx s isim to exercise the 1-bit version of your comparator over all possible combinations of inputs. This will require you creating a test-bench that instantiates the comparator and using a procedural block to provide stimulus. This file should be called tb/tb_cmp_1bit.v. c) Using Verilog, create a 4-bit comparator using the 1-bit comparator you created above. The input data lines of the comparator should be labeled starting with A[3:0] and B[3:0] and the output with SAME. This file should be called rtl/cmp_4bit.v. d) Use Xilinx s isim to exercise the 4-bit version of your comparator over all possible combinations of inputs. This will require you creating a test-bench that instantiates the comparator and using a procedural block to provide stimulus. This file should be called tb/tb_cmp_4bit.v. Question 4: Referring to the Chapter 1 Section 7 of the Chu. Text, develop a Verilog test bench that uses the following test vectors to verify our 4-bit comparator and indicate what the expected values for Y should be: Simulation Time A B SAME 0 0 ns 0 0? ns 7 15? ns 12 3? ns 3 3? ns 12 12? ns 4 bx 4 bz? This file should be called tb/tb_cmp.v. Note: I would use a timescale of 1 ns / 1 ns. Simulate this test bench and tell me what the values are for the SAME. 25 P age

26 8 Submission Process Submit the TA the RTL, TESTBENCH and SIMULATION output from Xilinx isim. o It must be contained in a zip file. Rename the zip file to filename.piz. o The contents of the file are as follows: rtl/ped.v. rtl/ned.v. rtl/tff.v rtl/cmp_1bit.v. rtl/cmp_4bit.v. tb/tb_tff.v tb/tb_ped.v tb/tb_ned.v tb/tb_cmp_1bit.v. tb/tb_cmp_4bit.v. tb/tb_cmp.v. doc/q4.txt syn/blink_led_tut.bit syn/blink_led_tut.ucf o The zip file must be named exactly as follows: CSE591_S12_LAB_0.<student_id>.<First_Name>_<Last_Name>.piz o It must be ed to the following accounts: Kyle.Gilsdorf@asu.edu (Kyle Gilsdorf) Due to the number of students in this class, failure to submit the lab in the correct format will result in it being marked as late (5% off final grade, per day late) until the lab is submitted in the correct format. 26 P age

Tutorial: Working with the Xilinx tools 14.4

Tutorial: Working with the Xilinx tools 14.4 Tutorial: Working with the Xilinx tools 14.4 This tutorial will show you how to: Part I: Set up a new project in ISE Part II: Implement a function using Schematics Part III: Implement a function using

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

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

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 11. Introduction to Verilog II Sequential Circuits

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 11. Introduction to Verilog II Sequential Circuits Name: Instructor: Engr. Date Performed: Marks Obtained: /10 Group Members (ID):. Checked By: Date: Experiment # 11 Introduction to Verilog II Sequential Circuits OBJECTIVES: To understand the concepts

More information

Lab 6 : Introduction to Verilog

Lab 6 : Introduction to Verilog Lab 6 : Introduction to Verilog Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The main objective of

More information

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto

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

Digital Systems EEE4084F FPGA Introduction Verilog and Xilinx ISE [30 Marks]

Digital Systems EEE4084F FPGA Introduction Verilog and Xilinx ISE [30 Marks] Digital Systems EEE4084F 2017-05-10 FPGA Introduction Verilog and Xilinx ISE [30 Marks] Background This practical is divided into two parts. The first is a tutorial that shows you how to set up a new FPGA

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

Lab 7 (Sections 300, 301 and 302) Prelab: Introduction to Verilog

Lab 7 (Sections 300, 301 and 302) Prelab: Introduction to Verilog Lab 7 (Sections 300, 301 and 302) Prelab: Introduction to Verilog Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work

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

N-input EX-NOR gate. N-output inverter. N-input NOR gate

N-input EX-NOR gate. N-output inverter. N-input NOR gate Hardware Description Language HDL Introduction HDL is a hardware description language used to design and document electronic systems. HDL allows designers to design at various levels of abstraction. It

More information

2IN35 VLSI Programming Lab Work Assignment 1: Hardware design using Verilog

2IN35 VLSI Programming Lab Work Assignment 1: Hardware design using Verilog 2IN35 VLSI Programming Lab Work Assignment 1: Hardware design using Verilog Hrishikesh Salunkhe, h.l.salunkhe@tue.nl, Alok Lele, a.lele@tue.nl April 28, 2015 1 Contents 1 Introduction 3 2 Hardware design

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

Lab 7 (All Sections) Prelab: Introduction to Verilog

Lab 7 (All Sections) Prelab: Introduction to Verilog Lab 7 (All Sections) Prelab: Introduction to Verilog Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The

More information

Graduate Institute of Electronics Engineering, NTU. FPGA Lab. Speaker : 鍾明翰 (CMH) Advisor: Prof. An-Yeu Wu Date: 2010/12/14 ACCESS IC LAB

Graduate Institute of Electronics Engineering, NTU. FPGA Lab. Speaker : 鍾明翰 (CMH) Advisor: Prof. An-Yeu Wu Date: 2010/12/14 ACCESS IC LAB FPGA Lab Speaker : 鍾明翰 (CMH) Advisor: Prof. An-Yeu Wu Date: 2010/12/14 ACCESS IC LAB Objective In this Lab, you will learn the basic set-up and design methods of implementing your design by ISE 10.1. Create

More information

Verilog introduction. Embedded and Ambient Systems Lab

Verilog introduction. Embedded and Ambient Systems Lab Verilog introduction Embedded and Ambient Systems Lab Purpose of HDL languages Modeling hardware behavior Large part of these languages can only be used for simulation, not for hardware generation (synthesis)

More information

Design a three-input, two-output sequential digital circuit which functions as a digital locking mechanism. LOCK ALARM

Design a three-input, two-output sequential digital circuit which functions as a digital locking mechanism. LOCK ALARM Department of Computing Course 112 Hardware First Year Laboratory Assignment Dates for the session 2005-2006: Hand out Date: 10 th January 2006 Hand in deadline (electronic and written report): 17.00 Monday

More information

Lab 2: Barrel Shifter Design

Lab 2: Barrel Shifter Design EGR 400 A Advanced Digital System Design Using FPGAs Lab 2: Barrel Shifter Design Prepared for: Dr. Foist Christopher Parisi College of Engineering California Baptist University 10/05/12 Introduction The

More information

Behavioral Modeling and Timing Constraints

Behavioral Modeling and Timing Constraints Lab Workbook Introduction Behavioral modeling was introduced in Lab 1 as one of three widely used modeling styles. Additional capabilities with respect to testbenches were further introduced in Lab 4.

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

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

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

Tutorial on FPGA Design Flow based on Xilinx ISE Webpack andisim. ver. 1.0

Tutorial on FPGA Design Flow based on Xilinx ISE Webpack andisim. ver. 1.0 Tutorial on FPGA Design Flow based on Xilinx ISE Webpack andisim ver. 1.0 1 Prepared by Malik Umar Sharif and Dr. Kris Gaj The example codes used in this tutorial can be obtained from http://ece.gmu.edu/coursewebpages/ece/ece448/s11/labs/448_lab3.htm

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

ELEC 4200 Lab#0 Tutorial

ELEC 4200 Lab#0 Tutorial 1 ELEC 4200 Lab#0 Tutorial Objectives(1) In this Lab exercise, we will design and implement a 2-to-1 multiplexer (MUX), using Xilinx Vivado tools to create a VHDL model of the design, verify the model,

More information

Department of Electrical and Computer Engineering Xilinx ISIM <Release Version: 14.1i> Simulation Tutorial Using Verilog

Department of Electrical and Computer Engineering Xilinx ISIM <Release Version: 14.1i> Simulation Tutorial Using Verilog Department of Electrical and Computer Engineering Xilinx ISIM Simulation Tutorial Using Verilog Spring 2013 Baback Izadi You will next test the full adder circuit that you built

More information

Programming Xilinx SPARTAN 3 Board (Simulation through Implementation)

Programming Xilinx SPARTAN 3 Board (Simulation through Implementation) Programming Xilinx SPARTAN 3 Board (Simulation through Implementation) September 2008 Prepared by: Oluwayomi Adamo Class: Project IV University of North Texas FPGA Physical Description 4 1. VGA (HD-15)

More information

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry EE183 LAB TUTORIAL Introduction You will be using several CAD tools to implement your designs in EE183. The purpose of this lab tutorial is to introduce you to the tools that you will be using, Xilinx

More information

ECT 224: Digital Computer Fundamentals Using Xilinx StateCAD

ECT 224: Digital Computer Fundamentals Using Xilinx StateCAD ECT 224: Digital Computer Fundamentals Using Xilinx StateCAD 1) Sequential circuit design often starts with a problem statement tat can be realized in the form of a state diagram or state table a) Xilinx

More information

Laboratory of Digital Circuits Design: Design, Implementation and Simulation of Digital Circuits Using Programmable Devices

Laboratory of Digital Circuits Design: Design, Implementation and Simulation of Digital Circuits Using Programmable Devices Internet Engineering Dr. Jarosław Sugier Laboratory of Digital Circuits Design: Design, Implementation and Simulation of Digital Circuits Using Programmable Devices This document presents software packages

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

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

Getting started with the Xilinx Project Navigator and the Digilent BASYS 2 board.

Getting started with the Xilinx Project Navigator and the Digilent BASYS 2 board. Getting started with the Xilinx Project Navigator and the Digilent BASYS 2 board. This lab is based on: Xilinx Project Navigator, Release Version 14.6 Digilent Adept System Rev 2.7, Runtime Rev 2.16 Digilent

More information

M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE

M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE M A S S A C H U S E T T S I N S T I T U T E O F T E C H N O L O G Y DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE 6.111 Introductory Digital Systems Laboratory Fall 2017 Lecture PSet #6 of

More information

Revision: February 27, E Main Suite D Pullman, WA (509) Voice and Fax

Revision: February 27, E Main Suite D Pullman, WA (509) Voice and Fax Xilinx ISE WebPACK Schematic Capture Tutorial Revision: February 27, 2010 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview This tutorial provides instruction for using the Xilinx

More information

Revision: February 26, E Main Suite D Pullman, WA (509) Voice and Fax

Revision: February 26, E Main Suite D Pullman, WA (509) Voice and Fax Xilinx ISE Simulator (ISim) with Verilog Test Fixture Tutorial Revision: February 26, 2010 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview This tutorial provides instruction

More information

Using the ChipScope Pro for Testing HDL Designs on FPGAs

Using the ChipScope Pro for Testing HDL Designs on FPGAs Using the ChipScope Pro for Testing HDL Designs on FPGAs Compiled by OmkarCK CAD Lab, Dept of E&ECE, IIT Kharagpur. Introduction: Simulation based method is widely used for debugging the FPGA design on

More information

Verilog Simulation Mapping

Verilog Simulation Mapping 1 Motivation UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Lab 4 Verilog Simulation Mapping In this lab you will learn how to use

More information

Xilinx ISE Simulation Tutorial

Xilinx ISE Simulation Tutorial Xilinx ISE Simulation Tutorial 1. Start Xilinx ISE Project Navigator 2. Create a new project Click on File, then choose New Project on the drop down menu Enter your project name, in this case the project

More information

Verilog Module Tutorial By TA Brian W. Stevens CMPE415 UMBC Spring 2015 Dr. Tinoosh Mohsenin

Verilog Module Tutorial By TA Brian W. Stevens CMPE415 UMBC Spring 2015 Dr. Tinoosh Mohsenin Verilog Module Tutorial By TA Brian W. Stevens CMPE415 UMBC Spring 2015 Dr. Tinoosh Mohsenin What will this guide teach you? This guide will go through how to use Xilinx 13.2 to create a Verilog module

More information

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28 99-1 Under-Graduate Project Verilog Simulation & Debugging Tools Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28 ACCESS IC LAB Outline Basic Concept of Verilog HDL Gate Level Modeling

More information

You will work in groups of four for the project (same groups as Project 1).

You will work in groups of four for the project (same groups as Project 1). COS/ELE 375 Prof. August Lab 2: PAW Processor Design (18 Nov 2015) Due January 12, 2015 Introduction In the prior project, you became familiar with the PAW instruction set. In this project you will design,

More information

Logic Circuits II ECE 2411 Thursday 4:45pm-7:20pm. Lecture 3

Logic Circuits II ECE 2411 Thursday 4:45pm-7:20pm. Lecture 3 Logic Circuits II ECE 2411 Thursday 4:45pm-7:20pm Lecture 3 Lecture 3 Topics Covered: Chapter 4 Discuss Sequential logic Verilog Coding Introduce Sequential coding Further review of Combinational Verilog

More information

Circuit Design and Simulation with VHDL 2nd edition Volnei A. Pedroni MIT Press, 2010 Book web:

Circuit Design and Simulation with VHDL 2nd edition Volnei A. Pedroni MIT Press, 2010 Book web: Circuit Design and Simulation with VHDL 2nd edition Volnei A. Pedroni MIT Press, 2010 Book web: www.vhdl.us Appendix C Xilinx ISE Tutorial (ISE 11.1) This tutorial is based on ISE 11.1 WebPack (free at

More information

Lab 2 Designing with Verilog

Lab 2 Designing with Verilog UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Lab 2 Designing with Verilog 1.0 Motivation In this lab you will learn how to express

More information

CECS LAB 1 Introduction to Xilinx EDA Tools

CECS LAB 1 Introduction to Xilinx EDA Tools NAME: DUE DATE: STUDENT ID: POSSIBLE POINTS: 10 COURSE DATE & TIME: OBJECTIVE: To familiarize ourselves with the Xilinx Electronic Design Aid (EDA) Tools. We will simulate a simple 4-to-1 Multiplexor using

More information

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Comp 541 Digital Logic and Computer Design Fall 2014 Lab #4: Sequential Design: Counters Issued Wed 9/10/14; Due Wed 9/17/14 (11:59pm) This lab assignment

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

Xilinx Schematic Entry Tutorial

Xilinx Schematic Entry Tutorial Overview Xilinx Schematic Entry Tutorial Xilinx ISE Schematic Entry & Modelsim Simulation What is circuit simulation and why is it important? Complex designs, short design cycle Simultaneous system design

More information

Programmable Logic Design I

Programmable Logic Design I Programmable Logic Design I Introduction In labs 11 and 12 you built simple logic circuits on breadboards using TTL logic circuits on 7400 series chips. This process is simple and easy for small circuits.

More information

A Brief Introduction to Verilog Hardware Definition Language (HDL)

A Brief Introduction to Verilog Hardware Definition Language (HDL) www.realdigital.org A Brief Introduction to Verilog Hardware Definition Language (HDL) Forward Verilog is a Hardware Description language (HDL) that is used to define the structure and/or behavior of digital

More information

Step 1: Downloading the source files

Step 1: Downloading the source files Introduction: In this lab and in the remainder of the ELEC 2607 labs, you will be using the Xilinx ISE to enter and simulate the designs for your circuits. In labs 3 and 4, you will use ISE to compile

More information

ENSC E-123: HW D3: Counter Applications; Counter in Verilog

ENSC E-123: HW D3: Counter Applications; Counter in Verilog HW D3; Counter Applications 1 ENSC E-123: HW D3: Counter Applications; Counter in Verilog REV 0 1 ; February 12, 2015 Contents 1 Counter Applications: Sync vs Async Function (5 points) 2 1.1 Crummy: asyncclear(2points).................

More information

EE 101 Lab 5 Fast Adders

EE 101 Lab 5 Fast Adders EE 0 Lab 5 Fast Adders Introduction In this lab you will compare the performance of a 6-bit ripple-carry adder (RCA) with a 6-bit carry-lookahead adder (CLA). The 6-bit CLA will be implemented hierarchically

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

EE 367 Logic Design Lab #1 Introduction to Xilinx ISE and the ML40X Eval Board Date: 1/21/09 Due: 1/28/09

EE 367 Logic Design Lab #1 Introduction to Xilinx ISE and the ML40X Eval Board Date: 1/21/09 Due: 1/28/09 EE 367 Logic Design Lab #1 Introduction to Xilinx ISE and the ML40X Eval Board Date: 1/21/09 Due: 1/28/09 Lab Description Today s lab will introduce you to the Xilinx Integrated Software Environment (ISE)

More information

EE 1315: DIGITAL LOGIC LAB EE Dept, UMD

EE 1315: DIGITAL LOGIC LAB EE Dept, UMD EXPERIMENT # 7: Basic Latches EE 1315: DIGITAL LOGIC LAB EE Dept, UMD Latches are primitive memory elements of sequential circuits that are used in building simple noise filtering circuits and flip-flops.

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

Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 10/25/16

Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 10/25/16 1 Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 10/25/16 The following is a general outline of steps (i.e. design flow) used to implement a digital system described with

More information

Tutorial on Simulation using Aldec Active-HDL Ver 1.0

Tutorial on Simulation using Aldec Active-HDL Ver 1.0 Tutorial on Simulation using Aldec Active-HDL Ver 1.0 by Shashi Karanam Introduction Active- HDL is an integrated environment designed for development of VHDL designs. The core of the system is a VHDL

More information

University of California, Davis Department of Electrical and Computer Engineering. Lab 1: Implementing Combinational Logic in the MAX10 FPGA

University of California, Davis Department of Electrical and Computer Engineering. Lab 1: Implementing Combinational Logic in the MAX10 FPGA 1 University of California, Davis Department of Electrical and Computer Engineering EEC180B DIGITAL SYSTEMS II Winter Quarter 2018 Lab 1: Implementing Combinational Logic in the MAX10 FPGA Objective: This

More information

Chapter 9: Integration of Full ASIP and its FPGA Implementation

Chapter 9: Integration of Full ASIP and its FPGA Implementation 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

More information

DEPT OF ECE EC6612 -VLSI DESIGN LABORATORY MANUAL (REGULATION-2013) LAB MANUAL DEPARTMENT OF ECE NAME: REGISTER NUMBER: YEAR/SEM.: ACADEMIC YEAR: 2015-2016 DEPT OF ECE EC6612 -VLSI DESIGN LABORATORY MANUAL

More information

CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND:

CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND: CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING UNIVERSITY OF NEVADA, LAS VEGAS GOALS: Getting familiar with DE2 board installation, properties, usage.

More information

Getting Started with Xilinx WebPack 13.1

Getting Started with Xilinx WebPack 13.1 Getting Started with Xilinx WebPack 13.1 B. Ackland June 2011 (Adapted from S. Tewksbury notes WebPack 7.1) This tutorial is designed to help you to become familiar with the operation of the WebPack software

More information

The Alarm System: The alarm system to be designed has the following inputs.

The Alarm System: The alarm system to be designed has the following inputs. 1 Introduction In this lab you will use the Xilinx CAD tools to complete the design of a simple home alarm system containing sensors for that indicate whether the Windows, Door, and Garage are secure.

More information

FPGA Design Tutorial

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

ELEC 204 Digital System Design LABORATORY MANUAL

ELEC 204 Digital System Design LABORATORY MANUAL ELEC 204 Digital System Design LABORATORY MANUAL : Introductory Tutorial For Xilinx ISE Foundation v10.1 & Implementing XOR Gate College of Engineering Koç University Important Note: In order to effectively

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

Midterm Exam Thursday, October 24, :00--2:15PM (75 minutes)

Midterm Exam Thursday, October 24, :00--2:15PM (75 minutes) Last (family) name: Answer Key First (given) name: Student I.D. #: Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE 551 Digital System Design and Synthesis Midterm

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

Xilinx ISE/WebPack: Introduction to Schematic Capture and Simulation

Xilinx ISE/WebPack: Introduction to Schematic Capture and Simulation Xilinx ISE/WebPack: Introduction to Schematic Capture and Simulation Revision: February 7, 2003 Overview This document is intended to assist new entry-level users of the Xilinx ISE/WebPack software. It

More information

Xilinx ISE Synthesis Tutorial

Xilinx ISE Synthesis Tutorial Xilinx ISE Synthesis Tutorial The following tutorial provides a basic description of how to use Xilinx ISE to create a simple 2-input AND gate and synthesize the design onto the Spartan-3E Starter Board

More information

This Lecture. Some components (useful for the homework) Verilog HDL (will continue next lecture)

This Lecture. Some components (useful for the homework) Verilog HDL (will continue next lecture) Last Lecture The basic component of a digital circuit is the MOS transistor Transistor have instrinsic resistance and capacitance, so voltage values in the circuit take some time to change ( delay ) There

More information

C A R L E T O N U N I V E R S I T Y. FINAL EXAMINATION April Duration: 3 Hours No. of Students: 108

C A R L E T O N U N I V E R S I T Y. FINAL EXAMINATION April Duration: 3 Hours No. of Students: 108 C A R L E T O N U N I V E R S I T Y FINAL EXAMINATION April 2011 Duration: 3 Hours No. of Students: 108 Department Name & Course Number: ELEC 3500 Digital Electronics Course Instructor(s): Ralph Mason

More information

Engineering 1630 Fall Simulating XC9572XL s on the ENGN1630 CPLD-II Board

Engineering 1630 Fall Simulating XC9572XL s on the ENGN1630 CPLD-II Board Engineering 1630 Fall 2016 Simulating XC9572XL s on the ENGN1630 CPLD-II Board You will use the Aldec Active-HDL software for the required timing simulation of the XC9572XL CPLD programmable logic chips

More information

ARM 64-bit Register File

ARM 64-bit Register File ARM 64-bit Register File Introduction: In this class we will develop and simulate a simple, pipelined ARM microprocessor. Labs #1 & #2 build some basic components of the processor, then labs #3 and #4

More information

ChipScope Demo Instructions

ChipScope Demo Instructions UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Overview ChipScope is an embedded, software based logic analyzer. By inserting an intergrated

More information

Xilinx Tutorial Basic Walk-through

Xilinx Tutorial Basic Walk-through Introduction to Digital Logic Design with FPGA s: Digital logic circuits form the basis of all digital electronic devices. FPGAs (Field Programmable Gate Array) are large programmable digital electronic

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

Introduction. Overview. Top-level module. EE108a Lab 3: Bike light

Introduction. Overview. Top-level module. EE108a Lab 3: Bike light Version 2.0 David Black-Schaffer Version 2.2 David Black-Schaffer Introduction In lab 3 you are going to get your first taste of sequential logic by building a system of finite state machines, timers,

More information

Circuit design with configurable devices (FPGA)

Circuit design with configurable devices (FPGA) 1 Material Circuit design with configurable devices (FPGA) Computer with Xilinx's ISE software installed. Digilent's Basys2 prototype board and documentation. Sample design files (lab kit). Files and documents

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

CME341 Assignment 4. module if\_else\_combinational\_logic( input [3:0] a, b, output reg [3:0] y ); * begin

CME341 Assignment 4. module if\_else\_combinational\_logic( input [3:0] a, b, output reg [3:0] y ); * begin CME341 Assignment 4 1. The verilog description below is an example of how code can get butchered by an engineer with lazy debugging habits. The lazy debugger wanted to try something and yet be able to

More information

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

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1 DIGITAL LOGIC WITH VHDL (Fall 23) Unit DESIGN FLOW DATA TYPES LOGIC GATES WITH VHDL TESTBENCH GENERATION DESIGN FLOW Design Entry: We specify the logic circuit using a Hardware Description Language (e.g.,

More information

ECE 4305 Computer Architecture Lab #1

ECE 4305 Computer Architecture Lab #1 ECE 4305 Computer Architecture Lab #1 The objective of this lab is for students to familiarize with the FPGA prototyping system board (Nexys-2) and the Xilinx software development environment that will

More information

Laboratory Exercise #6 Introduction to Logic Simulation and Verilog

Laboratory Exercise #6 Introduction to Logic Simulation and Verilog Laboratory Exercise #6 Introduction to Logic Simulation and Verilog ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise

More information

Introduction to Nexys 2 board - Detour Signal Lab

Introduction to Nexys 2 board - Detour Signal Lab 1. Synopsis: Introduction to Nexys 2 board - This lab introduces the use of Field Programmable Gate Arrays (FPGA). This lab introduces the Digilent Nexys 2 board and demonstrate FPGA design flow through

More information

Practical 4: RTC on FPGA

Practical 4: RTC on FPGA Practical 4: RTC on FPGA EEE4084F 2015-04-13 Background This practical is divided into two parts. The first is a tutorial that shows you how to set up a new FPGA project in Xilinx ISE. The second is a

More information

EEC 118 Spring 2011 Lab #5 Manchester Carry-Chain Adder

EEC 118 Spring 2011 Lab #5 Manchester Carry-Chain Adder EEC 118 Spring 2011 Lab #5 Manchester Carry-Chain Adder Rajeevan Amirtharajah Dept. of Electrical and Computer Engineering University of California, Davis Issued: May 9, 2011 Due: May 20, 2011, 5 PM in

More information

CPEN 230L: Introduction to Digital Logic Laboratory Lab #6: Verilog and ModelSim

CPEN 230L: Introduction to Digital Logic Laboratory Lab #6: Verilog and ModelSim CPEN 230L: Introduction to Digital Logic Laboratory Lab #6: Verilog and ModelSim Purpose Define logic expressions in Verilog using register transfer level (RTL) and structural models. Use Quartus II to

More information

ECE 4514 Digital Design II. Spring Lecture 2: Hierarchical Design

ECE 4514 Digital Design II. Spring Lecture 2: Hierarchical Design ECE 4514 Digital Design II Spring 2007 Abstraction in Hardware Design Remember from last lecture that HDLs offer a textual description of a netlist. Through abstraction in the HDL, we can capture more

More information

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification. 1-4.1 1-4.2 Spiral 1 / Unit 4 Verilog HDL Mark Redekopp OVERVIEW 1-4.3 1-4.4 Digital Circuit Design Steps Digital Circuit Design Description Design and computer-entry of circuit Verification Input Stimulus

More information

Verilog Fundamentals. Shubham Singh. Junior Undergrad. Electrical Engineering

Verilog Fundamentals. Shubham Singh. Junior Undergrad. Electrical Engineering Verilog Fundamentals Shubham Singh Junior Undergrad. Electrical Engineering VERILOG FUNDAMENTALS HDLs HISTORY HOW FPGA & VERILOG ARE RELATED CODING IN VERILOG HDLs HISTORY HDL HARDWARE DESCRIPTION LANGUAGE

More information

Revision: February 27, E Main Suite D Pullman, WA (509) Voice and Fax

Revision: February 27, E Main Suite D Pullman, WA (509) Voice and Fax Xilinx ISE WebPACK VHDL Tutorial Revision: February 27, 2010 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview This tutorial provides simple instruction for using the Xilinx ISE

More information

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Comp 541 Digital Logic and Computer Design Prof. Montek Singh Fall 2017 Lab #3A: Sequential Design: Counters Issued Wed 9/6/17; Due Wed 9/13/17 (11:59pm)

More information

CSE370 TUTORIAL 3 - INTRODUCTION TO USING VERILOG IN ACTIVE-HDL

CSE370 TUTORIAL 3 - INTRODUCTION TO USING VERILOG IN ACTIVE-HDL Introduction to Active-HDL CSE370 TUTORIAL 3 - INTRODUCTION TO USING VERILOG IN ACTIVE-HDL Objectives In this tutorial, you will learn how to write an alternate version of the full adder using Verilog,

More information

Behavioral Modeling and Timing Constraints

Behavioral Modeling and Timing Constraints Introduction Behavioral modeling was introduced in Lab 1 as one of three widely used modeling styles. Additional capabilities with respect to testbenches were further introduced in Lab 4. However, there

More information

ENGN3213. Digital Systems & Microprocessors. CLAB 1: ICARUS Verilog and ISE WebPACK

ENGN3213. Digital Systems & Microprocessors. CLAB 1: ICARUS Verilog and ISE WebPACK Department of Engineering Australian National University ENGN3213 Digital Systems & Microprocessors CLAB 1: ICARUS Verilog and ISE WebPACK V3.0 Copyright 2010 G.G. Borg ANU Engineering 1 Contents 1 CLAB1:

More information