Introduction to VHDL Design on Quartus II and DE2 Board

Size: px
Start display at page:

Download "Introduction to VHDL Design on Quartus II and DE2 Board"

Transcription

1 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 simulate them in the software. To implement the designed circuits on the DE2 Board. Introduction The Quartus II is a Computer Aided Design (CAD) system by Altera Corporation which includes full support for all of the popular methods of entering a description of the desired circuit into a CAD system. CAD software makes it easy to implement a desired logic circuit by using a programmable logic device, such as a field-programmable gate array (FPGA) chip. The CAD flow involves the following steps: - Design Entry The desired circuit is specified either by means of a schematic diagram, or by using a hardware description language, such as VHDL or Verilog - Synthesis The entered design is synthesized into a circuit that consists of the logic elements (LEs) provided in the FPGA chip - Functional Simulation The synthesized circuit is tested to verify its functional correctness; this simulation does not take into account any timing issues - Fitting The CAD Fitter tool determines the placement of the LEs defined in the netlist into the LEs in an actual FPGA chip; it also chooses routing wires in the chip to make the required connections between specific LEs - Timing Analysis Propagation delays along the various paths in the fitted circuit are analyzed to provide an indication of the expected performance of the circuit - Timing Simulation The fitted circuit is tested to verify both its functional correctness and timing - Programming and Configuration The designed circuit is implemented in a physical FPGA chip by programming the configuration switches that configure the LEs and establish the required wiring connections

2 Figure 1 shows a typical FPGA CAD flow. Figure 1 Each logic circuit, or subcircuit, being designed with Quartus II software is called a project. The software works on one project at a time and keeps all information for that project in a single directory in the file system. Once a circuit design is completed, it can be compiled and a compilation report is produced. The Quartus II software provides a means to simulate the behavior of the designed circuit for ascertaining its correctness. This step is crucial, before implementing the circuit on the FPGA. A designed circuit can be simulated in two ways: functional and timing. Functional simulation assumes that logic elements and interconnection wires in the FPGA are perfect, thus causing no delay in propagation of signals through the circuit. Timing simulation takes all propagation delays into account. Typically, functional simulation is used to verify the functional correctness of a circuit as it is being designed. The Altera DE2 board features the Cyclone II 2C35 FPGA in a 672-pin package. All the components on the board are connected to pins of this chip, allowing the user to control all aspects of the board s

3 operation. The specifications: FPGA - Cyclone II EP2C35F672C6 FPGA - EPCS16 serial configuration device I/O Devices - Built-in USB Blaster for FPGA configuration - 10/100 Ethernet, RS-232, Infrared port - Video Out (VGA 10-bit DAC) - Video In (NTSC/PAL/Multi-format) - USB 2.0 (type A and type B) - PS/2 mouse or keyboard port - Line-in, Line-out, microphone-in - (24-bit audio CODEC) - Expansion headers (76 signal pins) Memory - 8-MB SDRAM, 512-KB SRAM, 4-MB Flash - SD memory card slot Switches, LEDs, Displays, and Clocks - 18 toggle switches - 4 debounced pushbutton switches - 18 red LEDs, 9 green LEDs - Eight 7-segment displays - 16 x 2 LCD display - 27-MHz and 50-MHz oscillators, external SMA clock input The DE2 board can be used to implement circuits designed using the Quartus II CAD system. Exercises Exercise 1: Getting Started with the Switches The DE2 board provides 18 toggle switches, called SW17 0, that can be used as inputs to a circuit, and 18 red lights, called LEDR17 0, that can be used to display output values. Steps: 1. Start the Quartus II program and create a new project using the New Project. Follow each step of the wizard and select Cyclone II EP2C35F672C6 as the target chip, which is the FPGA chip on the Altera DE2 board (see Figure 2).

4 Figure 2 2. Create a VHDL entity (a new VHDL file) and enter the following code: LIBRARY ieee; USE ieee.std logic 1164.all; - - Simple module that connects the SW switches to the LEDR lights ENTITY part1 IS PORT ( SW : IN STD LOGIC VECTOR(17 DOWNTO 0); LEDR : OUT STD LOGIC VECTOR(17 DOWNTO 0)); - - red LEDs END part1; ARCHITECTURE Behavior OF part1 IS BEGIN LEDR <= SW; END Behavior

5 Save the file as part1.vhd in the project directory and include it in the project (see Figure 3). 3. Set the pin assignments by importing the file DE2_pin_assignments.csv by selecting Assignments Import Assignments, then selecting the file in the window (see Figures 4) 4. Compile the project by selecting Processing Start Compilation. 5. Download the compiled circuit into the FPGA chip: a) Connect the DE2 board to the computer using the USB cable. Turn the power on. b) Select Tools Programmer to view the Programmer window (see Figure 5). Ensure the hardware selected is USB-Blaster and the mode is JTAG. c) Click Start. 6. Test the functionality of the circuit by toggling the switches and observing the LEDs. Figure 3

6 Figure 4 Figure 5 Specific Task 1: Note the behaviour of the LEDs when the switches are toggled. Explain and verify the functionality of the circuit.

7 Exercise 2: Multiplexers Part A Part (a) of Figure 6 shows a sum-of-products circuit that implements a 2-to-1 multiplexer with a select input s. If s = 0 the multiplexer s output m is equal to the input x, and if s = 1 the output is equal to y. Part (b) shows the truth table for this multiplexer, and part (c) its circuit symbol. Figure 6 The multiplexer can be described by the following VHDL statement: m <= ( NOT (s) AND x ) OR (s AND y); Figure 7 shows an 8-bit wide 2-to-1 multiplexer. The circuit has two 8-bit inputs X and Y and produces the 8-bit output M. If s = 0 then M = X, while if s = 1 then M = Y. Steps: 1. Create a new Quartus II project for the multiplexer circuit. 2. Include a VHDL file for the 8-bit wide 2-to-1 multiplexer in the project. Use switch SW 17 on the DE2 board as the s input, switches SW7 0 as the X input and SW15 8 as the Y input. Connect the SW switches to the red lights LEDR and connect the output M to the green lights LEDG Import the required pin assignments for the DE2 board as per step 3 of Exercise Compile the project.

8 5. Download the compiled circuit into the FPGA chip. Test the functionality of the 8-bit wide 2- to-1 multiplexer by toggling the switches and observing the LEDs. Figure 7 Specific Task 2a: Write the VHDL entity to describe the circuit in Figure 7 and save as a VHDL file to be included into the project as per step 2. Note the behaviour of the LEDs when the switches are toggled. Explain and verify the functionality of the circuit. Part B Consider a 5-to-1 multiplexer circuit in which the output m has to be selected from five inputs u, v, w, x, and y. Figure 8 shows how a 5-to-1 multiplexer can be built by combining four 2-to-1 multiplexers. The circuit uses a 3-bit select input s 2 s 1 s 0 and implements the truth table shown in part (b). A circuit symbol for this multiplexer is given in part (c). Figure 9 shows a similarly constructed 3-bit wide 5-to-1 multiplexer. It contains three instances of the circuit in Figure 8. Steps: 1. Create a new Quartus II project for the multiplexer circuit. 2. Include a VHDL file for the 3-bit wide 5-to-1 multiplexer. Connect its select inputs to switches SW17 15, and use the remaining 15 switches SW14 0 to provide the five 3-bit

9 inputs U to Y. Connect the SW switches to the red lights LEDR and connect the output M to the green lights LEDG Import the required pin assignments for the DE2 board. 4. Compile the project. 5. Download the compiled circuit into the FPGA chip. Test the functionality of the 3-bit wide 5- to-1 multiplexer by toggling the switches and observing the LEDs. Ensure that each of the inputs U to Y can be properly selected as the output M. Figure 8

10 Figure 9 Specific Task 2b: Write the VHDL entity to describe the circuit in Figure 9 and save as a VHDL file to be included into the project as per step 2. Note the behaviour of the LEDs when the switches are toggled. Explain and verify the functionality of the circuit. Exercise 3: Latches and Flip-flops Part A Altera FPGAs include flip-flops that are available for implementing a user s circuit. However, storage elements can be created in an FPGA without using its dedicated flip-flops. Figure 10 depicts a gated RS latch circuit. A style of VHDL code that uses logic expressions to describe this circuit is given is as follows: - - A gated RS latch LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY ls_latch IS PORT (Clk, R, S : IN STD_LOGIC; Q : OUT STD_LOGIC); END ls_latch; ARCHITECTURE Structural OF ls_latch IS SIGNAL R_g, S_g, Qa, Qb : STD_LOGIC ; ATTRIBUTE keep : boolean; ATTRIBUTE keep of R_g, S_g, Qa, Qb : SIGNAL IS true; BEGIN R_g <= R AND Clk; S_g <= S AND Clk; Qa <= NOT (R_g OR Qb);

11 Qb <= NOT (S_g OR Qa); Q <= Qa; END Structural; Figure 10 To preserve internal signals such as R-g and S_g in the implemented circuit, it is necessary to include a compiler directive in the code. The directive keep is included by using a VHDL ATTRIBUTE statement. It instructs the Quartus II compiler to use separate logic elements for each of the signals R_g, S_g,Qa, and Qb. Compiling the code produces the circuit with four 4- input lookup tables (LUTs) as shown in Figure 11. Figure 12 shows the circuit for a gated D latch. Steps: 1. Create a new Quartus II project. Figure Write a VHDL file, using the style of the LS latch code given, for the gated D latch. Use the keep directive to ensure that separate logic elements are used to implement the signals R, S_g,R_g,Qa, and Qb.

12 3. Select as target chip the Cyclone II EP2C35F672C6 and compile the code. Examine the implemented circuit by selecting Tools Netlist Viewers RTL Viewer. 4. Create another new Quartus II project which will be used for implementation of the gated D latch on the DE2 board. This project should consist of a top-level entity that contains the appropriate input and output ports (pins) for the DE2 board. Instantiate the latch in this toplevel entity. Use switch SW0 to drive the D input of the latch, and use SW1 as the Clk input. Connect the Q output to LEDR0. 5. Recompile the project and download the compiled circuit onto the DE2 board. Test the functionality of your circuit by toggling the D and Clk switches and observing the Q output. Figure 12 Specific Task 3a: Write the VHDL file for the gated D latch in Figure 12 as specified in step 2. Note the Q output when D and Clk switches are toggled. Verify the functionality of the circuit. Part B Figure 13 shows the circuit for a master-slave D flip-flop. To simulate the circuit, perform the following steps. Steps: 1. Create a new Quartus II project. Generate a VHDL file that instantiates two copies of your gated D latch entity from Part A to implement the master-slave flip-flop. 2. Include in your project the appropriate input and output ports for the Altera DE2 board. Use switch SW 0 to drive the D input of the flip-flop, and use SW1 as the Clock input. Connect the Q output to LEDR0. 3. Compile your project and use the RTL Viewer to examine the D flip-flop circuit. 4. Download the circuit onto the DE2 board and test its functionality by toggling the D and Clock switches and observing the Q output.

13 Figure 13 Specific Task 3b: Generate the VHDL file for the master-slave flip-flop in Figure 13 as specified in step 1. Note the Q output when D and Clock switches are toggled. Verify the functionality of the circuit. Report writing guidelines Your lab report must be typed and must contain the following sections: Report cover page Use the report cover page format in the FOE lab website. Download the template at Brief Introduction [5 marks] Write a short description in your own words about the experiment, including the objectives. Do not reproduce the text / steps in this lab sheet. Results and Discussion [35 marks] Provide the VHDL codes and subsequent observations listed under Specific Task for all the exercises. Discuss and/or analyse the results. Conclusion [10 marks] Conclude your report with a brief summary on the knowledge and skills that you have acquired from this lab. Total marks for lab report: 50 *Exercises are adapted from Altera s support documents for Quartus II and DE2 Boards.

PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory.

PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory. PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory. 1.0 Objectives In this lab you will get familiar with the concept of using the

More information

Laboratory Exercise 3

Laboratory Exercise 3 Laboratory Exercise 3 Latches, Flip-flops, and egisters The purpose of this exercise is to investigate latches, flip-flops, and registers. Part I Altera FPGAs include flip-flops that are available for

More information

Lab 2 EECE473 Computer Organization & Architecture University of Maine

Lab 2 EECE473 Computer Organization & Architecture University of Maine Lab 2: Verilog Programming Instructor: Yifeng Zhu 50 Points Objectives: 1. Quatus II Programming assignment: PIN assignments, LEDs, switches; 2. Download and test the design on Altera DE2 board 3. Create

More information

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 7: VHDL and DE2 Board. Name: Date:

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 7: VHDL and DE2 Board. Name: Date: EXPERIMENT # 7: VHDL and DE2 Board Name: Date: Equipment/Parts Needed: Quartus II R Web Edition V9.1 SP2 software by Altera Corporation USB drive to save your files Objective: Learn how to create and modify

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

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

Laboratory Exercise 8

Laboratory Exercise 8 Laboratory Exercise 8 Memory Blocks In computer systems it is necessary to provide a substantial amount of memory. If a system is implemented using FPGA technology it is possible to provide some amount

More information

QUARTUS II Altera Corporation

QUARTUS II Altera Corporation QUARTUS II Quartus II Design Flow Design Entry Timing Constraints Synthesis Placement and Routing Timing, Area, Power Optimization Timing and Power Analyzer Optimized Design 2 Can I still use a Processor?

More information

Chapter 2 Getting Hands on Altera Quartus II Software

Chapter 2 Getting Hands on Altera Quartus II Software Chapter 2 Getting Hands on Altera Quartus II Software Contents 2.1 Installation of Software... 20 2.2 Setting Up of License... 21 2.3 Creation of First Embedded System Project... 22 2.4 Project Building

More information

Tutorial on Quartus II Introduction Using Verilog Code

Tutorial on Quartus II Introduction Using Verilog Code Tutorial on Quartus II Introduction Using Verilog Code (Version 15) 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD flow

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip 1 Objectives NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems This lab has been constructed to introduce the development of dedicated embedded system based

More information

Tutorial on Quartus II Introduction Using Schematic Designs

Tutorial on Quartus II Introduction Using Schematic Designs Tutorial on Quartus II Introduction Using Schematic Designs (Version 15) 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD

More information

The development board used in this class is ALTERA s DE The board provides the following hardware:

The development board used in this class is ALTERA s DE The board provides the following hardware: Lab 1 The goal of this lab is to get familiar with the mechanics of designing digital systems using VHDL and ALTERA s FPGAs. The development board used in this class is ALTERA s DE2-115. The board provides

More information

Laboratory Exercise 7

Laboratory Exercise 7 Laboratory Exercise 7 Finite State Machines This is an exercise in using finite state machines. Part I We wish to implement a finite state machine (FSM) that recognizes two specific sequences of applied

More information

EN2911X: Reconfigurable Computing Lecture 01: Introduction

EN2911X: Reconfigurable Computing Lecture 01: Introduction EN2911X: Reconfigurable Computing Lecture 01: Introduction Prof. Sherief Reda Division of Engineering, Brown University Fall 2009 Methods for executing computations Hardware (Application Specific Integrated

More information

Quartus II Introduction Using Schematic Design

Quartus II Introduction Using Schematic Design Quartus II Introduction Using Schematic Design This tutorial presents an introduction to the Quartus R II CAD system. It gives a general overview of a typical CAD flow for designing circuits that are implemented

More information

Quartus II Introduction Using Verilog Design

Quartus II Introduction Using Verilog Design Quartus II Introduction Using Verilog Design This tutorial presents an introduction to the Quartus R II CAD system. It gives a general overview of a typical CAD flow for designing circuits that are implemented

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due January 31, 2008 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools

CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools This is a tutorial introduction to the process of designing circuits using a set of modern design tools. While the tools we will be using (Altera

More information

Tutorial for Altera DE1 and Quartus II

Tutorial for Altera DE1 and Quartus II Tutorial for Altera DE1 and Quartus II Qin-Zhong Ye December, 2013 This tutorial teaches you the basic steps to use Quartus II version 13.0 to program Altera s FPGA, Cyclone II EP2C20 on the Development

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip NIOS CPU Based Embedded Computer System on Programmable Chip 1 Lab Objectives EE8205: Embedded Computer Systems NIOS-II SoPC: PART-I This lab has been constructed to introduce the development of dedicated

More information

Terasic DE0 Field Programmable Gate Array (FPGA) Development Board

Terasic DE0 Field Programmable Gate Array (FPGA) Development Board Lecture FPGA-01 DE0 FPGA Development Board and Quartus II 9.1 FPGA Design Software Terasic DE0 Field Programmable Gate Array (FPGA) Development Board 1 May 16, 2013 3 Layout and Components of DE0 May 16,

More information

Laboratory Exercise 1

Laboratory Exercise 1 Laboratory Exercise 1 Switches, Lights, and Multiplexers The purpose of this exercise is to learn how to connect simple input and output devices to an FPGA chip and implement a circuit that uses these

More information

2 nd Year Laboratory. Experiment: FPGA Design with Verilog. Department of Electrical & Electronic Engineering. Imperial College London.

2 nd Year Laboratory. Experiment: FPGA Design with Verilog. Department of Electrical & Electronic Engineering. Imperial College London. Department of Electrical & Electronic Engineering 2 nd Year Laboratory Experiment: FPGA Design with Verilog Objectives By the end of this experiment, you should know: How to design digital circuits using

More information

1 Introduction 2. 2 Background 3. 3 Getting Started 4. 4 Starting a New Project 6. 5 Design Entry Using VHDL Code 13

1 Introduction 2. 2 Background 3. 3 Getting Started 4. 4 Starting a New Project 6. 5 Design Entry Using VHDL Code 13 Quartus Prime Introduction Using VHDL Designs For Quartus Prime 17.0 Contents 1 Introduction 2 2 Background 3 3 Getting Started 4 3.1 Quartus Prime Online Help................................................................................................

More information

Quartus II Introduction Using Verilog Designs. 1 Introduction. For Quartus II 12.0

Quartus II Introduction Using Verilog Designs. 1 Introduction. For Quartus II 12.0 Quartus II Introduction Using Verilog Designs For Quartus II 12.0 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD flow for

More information

Laboratory 4 Design a Muti-bit Counter and Programming a FPGA

Laboratory 4 Design a Muti-bit Counter and Programming a FPGA Laboratory 4 Design a Muti-bit Counter and Programming a FPGA For your report: The problem written in English The flowchart or function table to solve the problem if it is necessary The design entry included

More information

Advanced Electronics Lab.

Advanced Electronics Lab. College of Engineering Course Book of 2010-2011 Advanced Electronics Lab. Mr. Araz Sabir Ameen M.Sc. in Electronics & Communications ALTERA DE2 Development and Education Board DE2 Package: The DE2 package

More information

Introduction to the Altera SOPC Builder Using Verilog Design

Introduction to the Altera SOPC Builder Using Verilog Design Introduction to the Altera SOPC Builder Using Verilog Design This tutorial presents an introduction to Altera s SOPC Builder software, which is used to implement a system that uses the Nios II processor

More information

Laboratory 4 Design a Muti-bit Counter

Laboratory 4 Design a Muti-bit Counter Laboratory 4 Design a Muti-bit Counter Background A. Approach I: Design 3-bit counter with and clear T-type flip-flop is shown in Figure 1. A T flip-flop is obtained from a JK flip-flop by tying the J

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems NIOS-II SoPC: PART-II 1 Introduction This lab has been constructed to introduce the development of dedicated

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due February 2, 2009 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due February 3, 2011 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

Today s Agenda Background/Experience Course Information Altera DE2B Board do Overview Introduction to Embedded Systems Design Abstraction Microprocess

Today s Agenda Background/Experience Course Information Altera DE2B Board do Overview Introduction to Embedded Systems Design Abstraction Microprocess ECEN 4633/5633 Hybrid Embedded Systems Fall 2010 Semester Dr. David Ward Today s Agenda Background/Experience Course Information Altera DE2B Board do Overview Introduction to Embedded Systems Design Abstraction

More information

FPGA Development Board Hardware and I/O Features

FPGA Development Board Hardware and I/O Features CHAPTER 2 FPGA Development Board Hardware and I/O Features Photo: The Altera DE1 board contains a Cyclone II FPGA, external SRAM, SDRAM & Flash memory, and a wide assortment of I/O devices and connectors.

More information

Digital Systems Laboratory

Digital Systems Laboratory 2012 Fall CSE140L Digital Systems Laboratory by Dr. Choon Kim CSE Department UCSD 1 Welcome to CSE140L! 2 3-way Light Controller, 2-1 MUX, Majority Detector, 7- seg Display, Binary-to- Decimal converter.

More information

Chip Design with FPGA Design Tools

Chip Design with FPGA Design Tools Chip Design with FPGA Design Tools Intern: Supervisor: Antoine Vazquez Janusz Zalewski Florida Gulf Coast University Fort Myers, FL 33928 V1.9, August 28 th. Page 1 1. Introduction FPGA is abbreviation

More information

University of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018

University of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018 University of California, Davis Department of Electrical and Computer Engineering EEC180B DIGITAL SYSTEMS Spring Quarter 2018 LAB 2: FPGA Synthesis and Combinational Logic Design Objective: This lab covers

More 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

Experiment 8 Introduction to VHDL

Experiment 8 Introduction to VHDL Experiment 8 Introduction to VHDL Objectives: Upon completion of this laboratory exercise, you should be able to: Enter a simple combinational logic circuit in VHDL using the Quartus II Text Editor. Assign

More information

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language) Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits Hardware Description Language) 1 Standard ICs PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable

More information

FPGA Introductory Tutorial: Part 1

FPGA Introductory Tutorial: Part 1 FPGA Introductory Tutorial: Part 1 This tutorial is designed to assist in learning the basics of the Altera Quartus II v9.0 software. Part 1 of the tutorial will cover the basics of creating a Project,

More information

ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II

ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II This lab manual presents an introduction to the Quartus II Computer Aided Design (CAD) system. This manual gives step-by-step

More information

Introduction to the Altera SOPC Builder Using Verilog Designs. 1 Introduction

Introduction to the Altera SOPC Builder Using Verilog Designs. 1 Introduction Introduction to the Altera SOPC Builder Using Verilog Designs 1 Introduction This tutorial presents an introduction to Altera s SOPC Builder software, which is used to implement a system that uses the

More information

Quick Tutorial for Quartus II & ModelSim Altera

Quick Tutorial for Quartus II & ModelSim Altera Quick Tutorial for Quartus II & ModelSim Altera By Ziqiang Patrick Huang Hudson 213c Ziqiang.huang@duke.edu Download & Installation For Windows or Linux users : Download Quartus II Web Edition v13.0 (ModelSim

More information

ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices

ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices School of Engineering, University of Guelph Winter 2017 1 Objectives: The purpose of this lab is : Learn basic bus design techniques.

More information

ENEE245 Digital Circuits and Systems Lab Manual

ENEE245 Digital Circuits and Systems Lab Manual ENEE245 Digital Circuits and Systems Lab Manual Department of Engineering, Physical & Computer Sciences Montgomery College Version 1.1 Copyright Prof. Lan Xiang (Do not distribute without permission) 1

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

CHAPTER 3 METHODOLOGY. 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier

CHAPTER 3 METHODOLOGY. 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier CHAPTER 3 METHODOLOGY 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier The design analysis starts with the analysis of the elementary algorithm for multiplication by

More information

CSC / EE Digital Systems Design. Summer Sample Project Proposal 01

CSC / EE Digital Systems Design. Summer Sample Project Proposal 01 THE CATHOLIC UNIVERSITY OF AMERICA SCHOOL OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE CSC / EE 519-01 Digital Systems Design Summer 2013 Sample Project Proposal 01 Thursday

More information

ECE241 - Digital Systems. University of Toronto. Lab #2 - Fall Introduction Computer-Aided Design Software, the DE2 Board and Simple Logic

ECE241 - Digital Systems. University of Toronto. Lab #2 - Fall Introduction Computer-Aided Design Software, the DE2 Board and Simple Logic ECE24 - Digital Sstems Universit of Toronto Lab #2 - Fall 28 Introduction Computer-Aided Design Software, the DE2 Board and Simple Logic. Introduction The purpose of this eercise is to introduce ou to

More information

Making Qsys Components. 1 Introduction. For Quartus II 13.0

Making Qsys Components. 1 Introduction. For Quartus II 13.0 Making Qsys Components For Quartus II 13.0 1 Introduction The Altera Qsys tool allows a digital system to be designed by interconnecting selected Qsys components, such as processors, memory controllers,

More information

Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus Prime 15.1

Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus Prime 15.1 Introduction to the Altera Qsys System Integration Tool For Quartus Prime 15.1 1 Introduction This tutorial presents an introduction to Altera s Qsys system integration tool, which is used to design digital

More information

CSCB58 - Lab 3. Prelab /3 Part I (in-lab) /2 Part II (in-lab) /2 TOTAL /8

CSCB58 - Lab 3. Prelab /3 Part I (in-lab) /2 Part II (in-lab) /2 TOTAL /8 CSCB58 - Lab 3 Latches, Flip-flops, and Registers Learning Objectives The purpose of this exercise is to investigate the fundamental synchronous logic elements: latches, flip-flops, and registers. Prelab

More information

Altera DE1 Board DE1. Development and Education Board. User Manual. Copyright 2006 Altera Corporation

Altera DE1 Board DE1. Development and Education Board. User Manual. Copyright 2006 Altera Corporation Altera DE1 Board DE1 Development and Education Board User Manual Version 1.1 Copyright 2006 Altera Corporation Chapter 2 Altera DE1 Board This chapter presents the features and design characteristics of

More information

ENEE245 Digital Circuits and Systems Lab Manual

ENEE245 Digital Circuits and Systems Lab Manual ENEE245 Digital Circuits and Systems Lab Manual Department of Engineering, Physical & Computer Sciences Montgomery College Modified Fall 2017 Copyright Prof. Lan Xiang (Do not distribute without permission)

More information

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 10: Implementing Binary Adders. Name: Date:

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 10: Implementing Binary Adders. Name: Date: EXPERIMENT # 10: Implementing Binary Adders Name: Date: Equipment/Parts Needed: PC (Altera Quartus II V9.1 installed) DE-2 board Objective: Design a half adder by extracting the Boolean equation from a

More information

DKAN0011A Setting Up a Nios II System with SDRAM on the DE2

DKAN0011A Setting Up a Nios II System with SDRAM on the DE2 DKAN0011A Setting Up a Nios II System with SDRAM on the DE2 04 November 2009 Introduction This tutorial details how to set up and instantiate a Nios II system on Terasic Technologies, Inc. s DE2 Altera

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

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.

More information

QuartusII.doc 25/02/2005 Page 1

QuartusII.doc 25/02/2005 Page 1 1 Start Icon... 2 1.1 The Quartus II Screen... 2 2 Project creation... 2 3 Schematic entry... 5 3.1 Create new drawing... 5 3.2 Symbol selection... 7 3.3 Placement of an AND gate... 8 3.4 Deleting a symbol...

More information

Laboratory Experiment Mastering Digital Design

Laboratory Experiment Mastering Digital Design MSc Course on Analogue and Digital IC Design Laboratory Experiment Mastering Digital Design (webpage: http://www.ee.ic.ac.uk/pcheung/teaching/msc_experiment/) This Laboratory Experiment is intended to

More information

E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design

E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design Objective The purpose of this lab is to learn to use Field Programmable Gate Array (FPGA) tools to simulate

More information

Figure 2.1 The Altera UP 3 board.

Figure 2.1 The Altera UP 3 board. Figure 2.1 The Altera UP 3 board. USB Port PS-2 Port USB PHY Chip Heat Sink Parallel Port B B VGA Port I2C PROM Chip... JP19 Headers for I2C Bus Signals J3 Mounting Hole Santa Cruz Expansion Long Connector

More information

Lab 3. Advanced VHDL

Lab 3. Advanced VHDL Lab 3 Advanced VHDL Lab 3 Advanced VHDL This lab will demonstrate many advanced VHDL techniques and how they can be used to your advantage to create efficient VHDL code. Topics include operator balancing,

More information

Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA

Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA For your report: The problem written in English The flowchart or function table to solve the problem if it is necessary The design

More information

SFWR ENG 2DA4 Lab 1. Announcements: Marking Scheme: Lab Safety Manual:

SFWR ENG 2DA4 Lab 1. Announcements: Marking Scheme: Lab Safety Manual: SFWR ENG 2DA4 Lab 1 First lab Week of: Sept. 17, 2018 Prep Due week of: (8:40/14:40), Sept. 24, 2018 Demo Due Week of: (11:20/17:20), Sept. 24, 2018 Assignment due in class: 13:40, Sept. 28, 2018 Announcements:

More information

CHAPTER 1 Introduction of the tnano Board CHAPTER 2 tnano Board Architecture CHAPTER 3 Using the tnano Board... 8

CHAPTER 1 Introduction of the tnano Board CHAPTER 2 tnano Board Architecture CHAPTER 3 Using the tnano Board... 8 CONTENTS CHAPTER 1 Introduction of the tnano Board... 2 1.1 Features...2 1.2 About the KIT...4 1.3 Getting Help...4 CHAPTER 2 tnano Board Architecture... 5 2.1 Layout and Components...5 2.2 Block Diagram

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

Physics 536 Spring Illustrating the FPGA design process using Quartus II design software and the Cyclone II FPGA Starter Board.

Physics 536 Spring Illustrating the FPGA design process using Quartus II design software and the Cyclone II FPGA Starter Board. Physics 536 Spring 2009 Illustrating the FPGA design process using Quartus II design software and the Cyclone II FPGA Starter Board. Digital logic: Equivalent to a large number of discrete logic elements

More information

UNIVERSITI MALAYSIA PERLIS

UNIVERSITI MALAYSIA PERLIS UNIVERSITI MALAYSIA PERLIS SCHOOL OF COMPUTER & COMMUNICATIONS ENGINEERING EKT 124 LABORATORY MODULE INTRODUCTION TO QUARTUS II DESIGN SOFTWARE : INTRODUCTION TO QUARTUS II DESIGN SOFTWARE OBJECTIVES To

More information

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013)

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) 1 4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) Lab #1: ITB Room 157, Thurs. and Fridays, 2:30-5:20, EOW Demos to TA: Thurs, Fri, Sept.

More information

Experiment VERI: FPGA Design with Verilog (Part 1)

Experiment VERI: FPGA Design with Verilog (Part 1) Experiment VERI: Department of Electrical & Electronic Engineering 2nd Year Laboratory Experiment VERI: FPGA Design with Verilog (Part 1) (webpage: www.ee.ic.ac.uk/pcheung/teaching/e2_experiment /) Objectives

More information

FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language. Reference: [1]

FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language. Reference: [1] FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language Reference: [] FIELD PROGRAMMABLE GATE ARRAY FPGA is a hardware logic device that is programmable Logic functions may be programmed

More information

DE2 Electronic Keyboard ReadMeFirst

DE2 Electronic Keyboard ReadMeFirst DE2 Electronic Keyboard ReadMeFirst Lab Summary: In this lab, you will implement a two-tone electronic keyboard using the waveform synthesizer design from the previous lab. This lab is divided into two

More information

Handouts. FPGA-related documents

Handouts. FPGA-related documents Handouts FPGA-related documents 1. Introduction to Verilog, Verilog P. M. Nyasulu and J. Knight, Carleton University, 2003 (Ottawa, Canada). 2. Quick Reference for Verilog HDL, HDL R. Madhavan, AMBIT Design

More information

Latch Based Design (1A) Young Won Lim 2/18/15

Latch Based Design (1A) Young Won Lim 2/18/15 Latch Based Design (1A) Copyright (c) 2015 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011 FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level

More information

Laboratory Exercise 5

Laboratory Exercise 5 Laboratory Exercise 5 Bus Communication The purpose of this exercise is to learn how to communicate using a bus. In the designs generated by using Altera s SOPC Builder, the Nios II processor connects

More information

IMPLEMENTING COUNTERS

IMPLEMENTING COUNTERS EECS:6660:0xxField Programmable Gate Arrays s11l1_fpga.fm - 1 Lab Assignment #1 Due Thursday, March 31 2011 IMPLEMENTING COUNTERS 1. OBJECTIVES - learning the VHDL implementation process using Language

More information

VHDL. Chapter 1 Introduction to VHDL. Course Objectives Affected. Outline

VHDL. Chapter 1 Introduction to VHDL. Course Objectives Affected. Outline Chapter 1 Introduction to VHDL VHDL VHDL - Flaxer Eli Ch 1-1 Course Objectives Affected Write functionally correct and well-documented VHDL code, intended for either simulation or synthesis, of any combinational

More information

Tutorial 2 Implementing Circuits in Altera Devices

Tutorial 2 Implementing Circuits in Altera Devices Appendix C Tutorial 2 Implementing Circuits in Altera Devices In this tutorial we describe how to use the physical design tools in Quartus II. In addition to the modules used in Tutorial 1, the following

More information

Handouts. 1. Project Guidelines and DSP Function Generator Design Specifications. (We ll discuss the project at the beginning of lab on Wednesday)

Handouts. 1. Project Guidelines and DSP Function Generator Design Specifications. (We ll discuss the project at the beginning of lab on Wednesday) Handouts Project-related documents 1. Project Guidelines and DSP Function Generator Design Specifications. (We ll discuss the project at the beginning of lab on Wednesday) FPGA-related documents 2. Introduction

More information

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2016

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2016 ECE 353 Lab 4 MIDI Receiver in Verilog Professor Daniel Holcomb UMass Amherst Fall 2016 Timeline and Grading for Lab 4 Lectures on 11/15 and 11/17 Due on 12/12 Demos in Duda hall Schedule will be posted

More information

structure syntax different levels of abstraction

structure syntax different levels of abstraction This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

SignalTap II with Verilog Designs. 1 Introduction. For Quartus II 13.1

SignalTap II with Verilog Designs. 1 Introduction. For Quartus II 13.1 SignalTap II with Verilog Designs For Quartus II 13.1 1 Introduction This tutorial explains how to use the SignalTap II feature within Altera s Quartus II software. The SignalTap II Embedded Logic Analyzer

More information

University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring Lab 1: Using Nios 2 processor for code execution on FPGA

University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring Lab 1: Using Nios 2 processor for code execution on FPGA University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring 2007 Lab 1: Using Nios 2 processor for code execution on FPGA Objectives: After the completion of this lab: 1. You will understand

More information

ENEE 245 Lab 1 Report Rubrics

ENEE 245 Lab 1 Report Rubrics ENEE 4 Lab 1 Report Rubrics Design Clearly state the design requirements Derive the minimum SOP Show the circuit implementation. Draw logic diagram and wiring diagram neatly Label all the diagrams/tables

More information

CHAPTER 2 LITERATURE REVIEW

CHAPTER 2 LITERATURE REVIEW CHAPTER 2 LITERATURE REVIEW As this music box project involved FPGA, Verilog HDL language, and Altera Education Kit (UP2 Board), information on the basic of the above mentioned has to be studied. 2.1 Introduction

More information

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2017

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2017 ECE 353 Lab 4 MIDI Receiver in Verilog Professor Daniel Holcomb UMass Amherst Fall 2017 Timeline and Grading for Lab 4 Lectures on 11/14 and 11/16 Due on 12/11 (note: final exam 12/14) Demos in Duda hall

More information

NOTE: This tutorial contains many large illustrations. Page breaks have been added to keep images on the same page as the step that they represent.

NOTE: This tutorial contains many large illustrations. Page breaks have been added to keep images on the same page as the step that they represent. CSE 352 Tutorial # 4 Synthesizing onto an FPGA Objectives This tutorial will walk you through the steps of implementing a design made in Active-HDL onto the Altera Cyclone II FPGA NOTE: This tutorial contains

More information

The University of Reduced Instruction Set Computer (MARC)

The University of Reduced Instruction Set Computer (MARC) The University of Reduced Instruction Set Computer (MARC) Abstract We present our design of a VHDL-based, RISC processor instantiated on an FPGA for use in undergraduate electrical engineering courses

More information

EE 231 Fall EE 231 Lab 2

EE 231 Fall EE 231 Lab 2 EE 231 Lab 2 Introduction to Verilog HDL and Quartus In the previous lab you designed simple circuits using discrete chips. In this lab you will do the same but by programming the CPLD. At the end of the

More information

ECE241 - Digital Systems

ECE241 - Digital Systems ECE24 - Digital Sstems Universit of Toronto Lab 2: Introduction Computer-Aided Design Software, the DE2 Board and Simple Logic. Introduction The purpose of this eercise is to introduce the software tools

More information

CET4805 Component and Subsystem Design II. EXPERIMENT # 2: VHDL(VHSIC Hardware Descriptive Language) Name: Date:

CET4805 Component and Subsystem Design II. EXPERIMENT # 2: VHDL(VHSIC Hardware Descriptive Language) Name: Date: EXPERIMENT # 2: VHDL(VHSIC Hardware Descriptive Language) Name: Date: Equipment/Parts Needed: Quartus II R Web Edition V9.1 SP2 software by Altera Corporation USB drive to save your files Objective: Learn

More information

PREFACE. Changes to the SOPC Edition

PREFACE. Changes to the SOPC Edition PREFACE Changes to the SOPC Edition Rapid Prototyping of Digital Systems provides an exciting and challenging laboratory component for undergraduate digital logic and computer design courses using FPGAs

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

CCE 3202 Advanced Digital System Design

CCE 3202 Advanced Digital System Design CCE 3202 Advanced Digital System Design Lab Exercise #2 Introduction You will use Xilinx Webpack v9.1 to allow the synthesis and creation of VHDLbased designs. This lab will outline the steps necessary

More information