DE2 Electronic Keyboard ReadMeFirst
|
|
- Philippa Dean
- 5 years ago
- Views:
Transcription
1 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 projects. In the first, you will make a single channel keyboard. In the second project, you will use hierarchy to add another channel to the circuit. Once you build the first channel and understand how it works, adding the second channel is relatively simple. Lab Background: In the last lab you transformed the DE2 Board into a signal generator. Now you will transform the DE2 Board into an electronic piano. In Part 1 of the lab, you will make a single channel keyboard. You will be given a keyboard with a PS/2 interface that will be re-mapped to play the desired notes. You are provided with a Verilog file (PS2_KEYBOARD.v) that will read the input from the PS2 keyboard and output a keycode. When you press one key, the first channel will play the note. When you hold one key and press another key, the second channel will play the note. In the next lab this feature will be used to make harmony parts in an automated play design. The codes from the PS/2 keyboard are mapped to frequencies according to the chart below. The chart below shows the music notes associated with each frequency and key code. The Hex codes associated with each key press are indicated in this chart.
2 Lab Preparation Although there are no videos this week, you should take time to re-familiarize themselves with the previous lab. Supplies: Speaker x 1 DE2 Board x 1 USB Blaster Cable x 1 PS/2 Keyboard x 1 Coaxial Cable x 1 BNC Connector x 1 Dual RCA to 3.5 mm Cable x 1
3 Part 1: Single Channel Electronic Keyboard The single channel keyboard is based on the synthesizer with 32-bit P values. The CODEC will be used to output the wave to the speaker. Use switch 0 (SW[0]) on the DE2 board to turn the channel on and off. Use the PS/2 keyboard to play notes. The necessary connections are illustrated below
4 Procedure: 1) Begin by reopening the synthesizer project you used for Lab 5 Part 2. 2) If the project does not already have all of the following files, download the Lab 6 files, copy each one to your project folder, and ADD them to your project: PS2_KEYBOARD.v freq_map_new.mif brass.mif DE2_115_pin_assignments.csv 3) Although the pin assignment file has been copied and added, you will still need to import the pin assignments as the final step. 4) Create a symbol file called PS2_KEYBOARD from the PS2_KEYBOARD.v included in the project. 5) Construct the first portion of your circuit shown below. The LEDs are attached to verify that the key presses are being detected. LEDG[7..0] are the green LEDs. Figure 1: Keyboard Decoder a) Use the CLOCK_50 from the input pin to the CODEC b) Make sure to use a BIDIRECTIONAL pin for the ps2_dat line. c) The Key[0] will allow you to reset the key code decoder if and when it hangs execution. This switch is the round black membrane switch on the lower right hand side of the DE2 board. 6) Compile and program the board NOTE!! : The PS2 Keyboard MUST be connected to the DE2 board when downloading the FPGA program, or the keyboard WILL NOT WORK (Bizarre but true!)
5 Checkpoint 1: Demonstrate your keyboard decoder to the lab monitor. The LEDs should read when no key is pressed, and change when the key codes are sent. 7) Keep only the 32-bit version of the synthesizer. 6) Next you will add a circuit that will allow you to turn the keyboard off and on. Add an lpm_mux 2 channel multiplexer shown below to switch between the keyboard codes coming from the PS2_KEYBOARD block, and a grounded input bus. Connect Switch 0 to the select line of the multiplexer. ******************************************************************************* NOTE: The switch (SW[0]) in the diagram above is connected using a bus. This will cause errors. Use a wire instead. ******************************************************************************* 7) Add an lpm_rom for the frequency map file Freq_map.mif.
6 The output of the lpm_rom containing the Freq_map.mif will replace lpm_constant module in the Synthesizer block. The keyboard codes are used as an address input to the lpm_rom which replaces the to P values. The ROM contains values for the correct frequencies of the musical tones. The frequencies have already been converted to P values inside the ROM look-up-table for you, so the sampling frequency and width of the data is already taken into account. You are provided the file Freq_map.mif file for this ROM in the Lab 6 file folder. Freq_map.mif has 2^8 words and a width of 32 data bits. Remember to enable the Memory Editor for the lpm_rom. This will come in handy if you have to troubleshoot the project. ******************************************************************************* NOTE: Giving your lpm modules meaningful names also helps you remember their function. It is also helpful to label buses and wires using functional names. Remember to NOT create components in separate directories. This will usually result in errors that very difficult to resolve and often result in redoing large portions, if not all, of your project. ******************************************************************************* 8) Now connect the output of the lpm_rom containing the Freq_map.mif to the input of the lpm_add_sub of your 32-bit synthesizer circuit from last week. Obviously, you can delete the P value lpm_constant. 9) Replace the sine wave.mif file in the synthesizer from last week with the brass.mif file provided for this lab. This waveform gives a more musical quality to the tone. Once you have everything connected, you should have the following path in your schematic: PS2_KEYBOARD block -> Channel Ctrl Multiplexer -> Freq Map Lookup Table - > Synthesizer (brass.mif) -> adc2dac block -> Line Out ************************************************************************ NOTE: A bug in your design can be identified by connecting the LED array to different bus lines in this path to verify that the data is changing whenever a key is pressed. Generally, a bad module will cause everything downstream to malfunction. This technique should help you narrow down the location of the error. ************************************************************************ 10) Next, divide the signal strength of the channel by 8 by bit shifting the output of the synthesizer by 4 bits (a factor of 16) as shown in the following diagram.
7 ******************************************************************************** NOTE: PLEASE perform the bit shifting to reduce your volume (you will overdrive the speakers and possibly damage them otherwise). I also think my ears are bleeding if you don't do this. ******************************************************************************** 12) If you haven't already, connect the provided keyboard to the PS/2 port Do this BEFORE Compiling and Programming the board. You may connect the speaker to the Line Out audio port, but LEAVE IT OFF. 13) Compile and program your design onto the DE2. 14) Turn on the speaker. If you get a horrible screech, your software is not working. Please turn off your speaker. Otherwise... 15) Set SW[0] up to activate 'Keyboard Mode'. Pressing keys on the keyboard should now generate different notes (Refer to the keyboard layout in the Background section). Checkpoint 2: Demonstrate your working Single-Channel Keyboard Synthesizer to the lab monitor.
8 Part 2: Dual-Channel Keyboard Now, you will add a second channel to your circuit. This allows you to play two keys simultaneously and generate harmony. Rather than rebuilding an entire channel, use hierarchy in your design. NOTE!!! : Make a copy of your working project or an archive before continuing. This is where things often go irreversibly wrong, and you DEFINATELY want the working single channel design to go back to and try again. Procedure: 1) Copy everything between the PS/2 block and the CODEC (DE2_i2Sound) block into a new schematic sheet and name it Channel. You can delete the LED output pins. 2) Create and connect off page pins for all signals that enter or exit the Channel schematic. Add input pins for the key_code[7..0], the switch (SW[0]), and AUD_DACLRCK and output pins for the synthesizer (wave[15..0]). 3) With the Channel diagram open, create a symbol block by selecting File->Create/Update-> Create Symbol File for Current File. Substitute the created block in your top level schematic as shown below. Figure 4: Single Channel Synthesizer with Hierarchy Checkpoint 3: Demonstrate that your Single-Channel Keyboard Synthesizer STILL works after substituting the Channel block.
9 4) Conduct the following steps to create a second synthesizer channel. You will have to replace the lpm_roms in the second channel. If you follow these steps you will only have to do it once. If you perform these steps incorrectly, this process can become an endless loop of frustration and misery! : a. Save the Channel.bdf schematic as another schematic called Channel2.bdf b. Replace the frequency map rom (lpm_rom0) with a new lpm_rom. Verify that Quartus has assigned in incremental name (lpm_rom2, e.g.). Add the same freq_map_new.mif file to the rom. c. Replace the rom containing the brass.mif file (lpm_rom1) with a new rom, lpm_rom3 and configure it with the same parameters and brass.mif file. d. Verify that your Channel2.bdf file looks like the following schematic before creating the block: Figure 5: Channel2 Schematic used to Generate a Block Symbol e. Now create a symbol called Channel2 from the modified Channel2.bdf schematic 5) Add a second block for your second channel by inserting the Channel2 symbol in the top level (CODEC) schematic. (makes sense, right?). 6) Connect the Channel2 key_code[7..0] to key2_code[7..0] on the PS2_KEYBOARD block. You can use the red LEDs with an output pin named LEDR[7..0] to verify the channel 2 key codes are working independently. 7) Connect the signal AUD_DACLRCLK to clock input, NOT clock_50. 8) Use SW[1] to enable in order to enable / disable the output of your second channel. If you use SW[0], you cannot turn the channels off and on independently. 9) Next you need to sum the outputs of the two channels together. In order to preserve the volume, you would normally divide each channel by 2 before adding them together. Since you already bit shifted to reduce the volume, this was already taken into account.
10 The total number of bit shifts should be 4 (divide by 16, as shown in the following diagram from inside each of the Channel blocks). Please verify that you did this back in set 10) of Part1. Figure 6: Bit shifting by 4 bits is sufficient for both volume reduction and dividing by 2 prior to summing the two channels together. *********************************************************************************** NOTE: The OUTPUT pin name AUTOMATICALLY matches the pin name on your CHANNEL block when you create it. HOWEVER, the internal bus name that you are bit shifting MUST BE A DIFFERENT NAME, or the compiler will optimize the bit shifting out of the design. In other words, the bus between q[15..0] and the OUTPUT (output[15..0]), cannot both be named output[15..0] or q[15..0]. If they were, everything in between would be disregarded. The intermediate bus name of w[15..0] allows for the bit shift by 4 because the output[15..0] can be assigned as w[15],w[15],w[15],w[15],w[15..4]. *********************************************************************************** 10) Use an lpm_add_sub in the top level schematic to add the outputs of the two channel blocks together. Connect the resulting sum to both audio_outl and audio_outr. You will need to rename the output bus going to the CODEC since it now comes from the lpm_add_sub module output instead of a single channel. If you don't, only one channel will work.
11 Figure 7: Dual Channel Synthesizer with Hierarchy 11) Recompile and reprogramming the DE2. You should now be able to play two notes simultaneously when SW[0] and SW[1] are in the up position. Checkpoint 4: Demonstrate your working Dual-Channel Keyboard Synthesizer to the lab monitor. What a Rock Star! Checkpoint 5: Clean-up your workspace ************************************************************************* NOTE: You will be using the Keyboard Lab as a starting point in your next lab. Make sure all members of the group have access to a copy of the project. You can use Project->Archive Project to create easy-to-share Quartus II Archive Files (.qar). ************************************************************************* Discussion Questions: Topic 1: How do you verify that the circuit is receiving key codes from the keyboard other than hearing the sound from the speaker? Topic 2: What is the purpose of the Freq Map Lookup Table? Topic 3: How are the two cords merged into a single sound heard on the speaker?
Introduction to the Synthesizer ReadMeFirst
Introduction to the Synthesizer ReadMeFirst Lab Summary This is the first laboratory in a series of three that will ultimately become an electronic keyboard design. This week you will learn how to generate
More informationIntroduction to VHDL Design on Quartus II and DE2 Board
ECP3116 Digital Computer Design Lab Experiment Duration: 3 hours Introduction to VHDL Design on Quartus II and DE2 Board Objective To learn how to create projects using Quartus II, design circuits and
More informationThe Simon State Machine Part 1
The Simon State Machine Part 1 Lab Summary This lab is the first part to a two-part lab where you will be combining all the components you created throughout the semester into one functioning state machine.
More informationLab 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 informationCPE 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 information2 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 informationECE 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 informationEE 231 Fall Lab 1: Introduction to Verilog HDL and Altera IDE
Lab 1: Introduction to Verilog HDL and Altera IDE Introduction In this lab you will design simple circuits by programming the Field-Programmable Gate Array (FPGA). At the end of the lab you should be able
More informationEET 1131 Lab #7 Arithmetic Circuits
Name Equipment and Components Safety glasses ETS-7000 Digital-Analog Training System Integrated Circuits: 7483, 74181 Quartus II software and Altera DE2-115 board Multisim simulation software EET 1131
More informationNIOS 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 informationCSC258H: Logisim-Evolution Reference
1 Introduction CSC258H: Logisim-Evolution Reference Alexander Kemenchuk Logisim is a powerful logic circuit simulation environment. In CSC258, we will use Logisim-Evolution (a fork of the original Logisim)
More informationUniversity 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 informationFPGA 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 informationTutorial 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 informationNOTE: 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 informationTutorial 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 informationLaboratory 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 informationEMT1250 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 informationTutorial 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 informationAudio Controller i. Audio Controller
i Audio Controller ii Contents 1 Introduction 1 2 Controller interface 1 2.1 Port Descriptions................................................... 1 2.2 Interface description.................................................
More informationLab 5: Introduction to the Synthesizer
Lab 5: Introduction to the Synthesizer ECE 2060 Spring, 2016 Haocheng Zhu Gregory Ochs Monday 12:40 15:40 Date of Experiment: 04/04/16 Date of Submission: 04/15/16 Abstract The purpose of lab 5 is to learn
More informationCSCB58 - Lab 0. Intro to The Lab & The DE2 Board. Prelab /4 Part I (in-lab) /1 Part II (in-lab) /1
CSCB58 - Lab 0 Intro to The Lab & The DE2 Board Learning Objectives This week we will be getting you familiar with the lab and the boards that we will be using in later labs. You will also learn how to
More informationTerasic 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 informationQuartus II Tutorial. September 10, 2014 Quartus II Version 14.0
Quartus II Tutorial September 10, 2014 Quartus II Version 14.0 This tutorial will walk you through the process of developing circuit designs within Quartus II, simulating with Modelsim, and downloading
More informationQuartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017
Quartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017 This tutorial will walk you through the process of developing circuit designs within Quartus II, simulating with
More informationAltera Quartus II Tutorial ECE 552
Altera Quartus II Tutorial ECE 552 Quartus II by Altera is a PLD Design Software which is suitable for high-density Field-Programmable Gate Array (FPGA) designs, low-cost FPGA designs, and Complex Programmable
More informationLab 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 informationUniversity of Florida EEL 3701 Dr. Eric M. Schwartz Madison Emas, TA Department of Electrical & Computer Engineering Revision 1 5-Jun-17
Page 1/14 Example Problem Given the logic equation Y = A*/B + /C, implement this equation using a two input AND gate, a two input OR gate and two inverters under the Quartus environment. Upon completion
More informationUNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180A DIGITAL SYSTEMS I Winter 2015
UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180A DIGITAL SYSTEMS I Winter 2015 LAB 1: Introduction to Quartus II Schematic Capture and ModelSim Simulation This
More informationLaboratory 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 informationSOPC LAB1. I. Introduction. II. Lab contents. 4-bit count up counter. Advanced VLSI Due Wednesday, 01/08/2003
SOPC LAB1 I. Introduction The purpose of this lab is to familiarize you with all the items in the kit. This tutorial tells you how to develop FPGA system in Quartus II. You are ready to begin using the
More informationENEE245 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 information8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments
8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments QII51017-9.0.0 Introduction The Quartus II incremental compilation feature allows you to partition a design, compile partitions
More informationLab 3: Standard Combinational Components
Lab 3: Standard Combinational Components Purpose In this lab you will implement several combinational circuits on the DE1 development board to test and verify their operations. Introduction Using a high-level
More informationECSE-323 Digital System Design. Lab #1 Using the Altera Quartus II Software Fall 2008
1 ECSE-323 Digital System Design Lab #1 Using the Altera Quartus II Software Fall 2008 2 Introduction. In this lab you will learn the basics of the Altera Quartus II FPGA design software through following
More informationLaboratory 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 informationPRELAB! 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 informationIntroduction 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 informationXilinx 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 informationBest Practices for Incremental Compilation Partitions and Floorplan Assignments
Best Practices for Incremental Compilation Partitions and Floorplan Assignments December 2007, ver. 1.0 Application Note 470 Introduction The Quartus II incremental compilation feature allows you to partition
More informationENEE245 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 informationCSCB58 - 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 information4.1 Design Concept Demonstration for Altera DE2-115 FPGA Board Demonstration for Cyclone III Development Board...
CONTENTS CHAPTER 1 INTRODUCTION OF THE AHA-HSMC... 1 1.1 Features...1 1.2 About the KIT...2 1.3 Getting Help...3 CHAPTER 2 AHA CARD ARCHITECTURE... 4 2.1 Layout and Components...4 2.2 Block Diagram of
More informationContents. Appendix B HDL Entry Tutorial 2 Page 1 of 14
Appendix B HDL Entry Tutorial 2 Page 1 of 14 Contents Appendix B HDL Entry Tutorial 2...2 B.1 Getting Started...2 B.1.1 Preparing a Folder for the Project...2 B.1.2 Starting Quartus II...2 B.1.3 Creating
More informationLaboratory 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 informationLab 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 informationEXPERIMENT NUMBER 7 HIERARCHICAL DESIGN OF A FOUR BIT ADDER (EDA-2)
7-1 EXPERIMENT NUMBER 7 HIERARCHICAL DESIGN OF A FOUR BIT ADDER (EDA-2) Purpose The purpose of this exercise is to explore more advanced features of schematic based design. In particular you will go through
More informationQuartus 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 informationstructure 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 informationHere 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 informationTUTORIAL #2 HIERARCHICAL DESIGNS AND TEST FIXTURES
Introduction to Active-HDL TUTORIAL #2 HIERARCHICAL DESIGNS AND TEST FIXTURES This tutorial will use the 1-bit full adder you designed in Tutorial #1 to construct larger adders. This will introduce the
More informationINTRODUCTION TO DE2 SYSTEM INTERFACES
EECS:6660:0xxField Programmable Gate Arrays s08l5a.fm - 1 Lab Assignment #5 INTRODUCTION TO DE2 SYSTEM INTERFACES 1. OBJECTIVES - Becoming familiar with the system interface to seven segment LED displays
More informationQUARTUS 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 informationTLL5000 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 informationECE 353 Lab 3. MIDI Note Number Display. Lab Info. Electrical and Computer Engineering
ECE 353 Lab 3 MIDI Note Number Display Lab Info Board Demonstration 2 Build Process Board Assembly Verilog Programming Plan State Machine Synthesis Simulation Burning the Program Testing MIDI-OX Logic
More informationName EGR 2131 Lab #6 Number Representation and Arithmetic Circuits
Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Equipment and Components Quartus software and Altera DE2-115 board PART 1: Number Representation in Microsoft Calculator. First, let s
More informationCPLD board datasheet EB
CPLD board datasheet EB020-00-3 Contents. About this document... 2 2. General information... 3 3. Board layout... 4 4. Testing this product... 5 5. Circuit description... 6 Appendix Circuit diagram Copyright
More informationUniversity of Florida EEL 3701 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering Revision 0 12-Jun-16
Page 1/14 Quartus Tutorial with Basic Graphical Gate Entry and Simulation Example Problem Given the logic equation Y = A*/B + /C, implement this equation using a two input AND gate, a two input OR gate
More informationE85: 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 informationCPEN 230L: Introduction to Digital Logic Laboratory Lab 7: Multiplexers, Decoders, and Seven Segment Displays
CPEN 230L: Introduction to Digital Logic Laboratory Lab 7: Multiplexers, Decoders, and Seven Segment Displays Purpose Learn about multiplexers (MUXs), decoders and seven segment displays. Learn about hierarchical
More informationCSE 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 informationEE 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 informationSCHEMATIC DESIGN IN QUARTUS
SCHEMATIC DESIGN IN QUARTUS Consider the design of a three-bit prime number detector. Figure 1 shows the block diagram and truth table. The inputs are binary signals A, B, and C while the output is binary
More informationEN2911X: Reconfigurable Computing Lecture 05: Verilog (2)
EN2911X: Lecture 05: Verilog (2) Prof. Sherief Reda Division of Engineering, Brown University Fall 09 http://scale.engin.brown.edu Dataflow modeling Module is designed by specifying the data flow, where
More informationUniversity 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 informationNIOS 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 informationLAB#2 ( Due Date & Time: See course web page )
UCSD CSE140L Fall 2014 LAB#2 ( Due Date & Time: See course web page ) Instructor: Dr. Choon Kim Objective Based on the experience gained from LAB#1, learn how to design, simulate, synthesize, program on
More informationPRELAB! 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 the last lab we learned that Verilog is a fast and easy way
More informationQuartus 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 informationEngineering 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 informationNIOS 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 informationUniversity of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science
University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science EECS 150 Fall 2000 Original Lab By: J.Wawrzynek and N. Weaver Edited by B. Choi, R.
More informationUniversity of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science. EECS 150 Spring 2000
University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science EECS 150 Spring 2000 Lab 1 Introduction to Xilinx Design Software 1 Objectives In this
More informationTo design a 4-bit ALU To experimentally check the operation of the ALU
1 Experiment # 11 Design and Implementation of a 4 - bit ALU Objectives: The objectives of this lab are: To design a 4-bit ALU To experimentally check the operation of the ALU Overview An Arithmetic Logic
More informationTLL5000 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 informationVerilog 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 informationLaboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication
Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.
More informationME 365 EXPERIMENT 3 INTRODUCTION TO LABVIEW
ME 365 EXPERIMENT 3 INTRODUCTION TO LABVIEW Objectives: The goal of this exercise is to introduce the Laboratory Virtual Instrument Engineering Workbench, or LabVIEW software. LabVIEW is the primary software
More informationXilinx 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 informationEngineering 303 Digital Logic Design Spring 2017
Engineering 303 Digital Logic Design Spring 2017 LAB 1 Introduction to Combo Logic and Quartus Deliverables: 0) A Simple Verilog Combinatorial Circuit 1) A Simple Block Diagram Combinatorial Circuit 2)
More informationStart Active-HDL. Create a new workspace TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS
Introduction to Active-HDL TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS This tutorial will introduce the tools and techniques necessary to design a basic schematic. The goal of this tutorial is
More informationUniversity 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 informationEKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit
EKT 422/4 COMPUTER ARCHITECTURE MINI PROJECT : Design of an Arithmetic Logic Unit Objective Students will design and build a customized Arithmetic Logic Unit (ALU). It will perform 16 different operations
More informationEMT1250 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 informationMicroTally/WinTally Manual. Introduction
MicroTally/WinTally Manual Introduction Congratulations! You are in possession of one of the finest electronic tally boards made. The MicroTally is a hand held electronic tally counter. It is designed
More informationLESSON PLAN FOR INFORMATION & COMMUNICATION TECHNOLOGY (ICT) PRATOMSUKSA 6
LESSON PLAN FOR INFORMATION & COMMUNICATION TECHNOLOGY (ICT) PRATOMSUKSA 6 CHAPTER SUBCHAPTER WEEK LEARNING OBJECTIVES POSSIBLE TEACHING ACTIVITIES POSSIBLE LEARNER ACTIVITIES LEARNING OUTCOMES KEY VOCABULARY
More informationLab 2: Introduction to Verilog HDL and Quartus
Lab 2: Introduction to Verilog HDL and Quartus September 16, 2008 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
More informationLaboratory 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 informationEE 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 informationECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3
Objectives: ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3 Build Instruction Memory and Data Memory What to hand in: Your implementation source
More informationSFWR 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 informationChapter 2: Hardware Design Flow Using Verilog in Quartus II
Chapter 2: Hardware Design Flow Using Verilog in Quartus II 2.1 Introduction to Quartus II System Development Software This chapter is an introduction to the Quartus II software that will be used for analysis
More informationand 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 informationExperiment 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 informationHardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator
Harris Hardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator Introduction In this lab, you will build a time-multiplexed correlator to search for and track GPS satellite signals.
More informationECE241 - 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 informationCPLD board datasheet EB
CPLD board datasheet EB020-00- Contents. About this document... 2 2. General information... 3 3. Board layout... 4 4. Testing this product... 5 5. Circuit description... 6 Appendix Circuit diagram Copyright
More informationECE241 - 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 informationEXPERIMENT 1. INTRODUCTION TO ALTERA
EXPERIMENT 1. INTRODUCTION TO ALTERA I. Introduction I.I Objectives In this experiment, you will learn computer aided digital design and verification of it using Field Programmable Gate Arrays (FPGA).
More informationThe simplest form of storage is a register file. All microprocessors have register files, which are known as registers in the architectural context.
1 In this lecture, we will consider the various type of storage (memory) that FPGAs allow us to implement. The major advantage of FPGAs is that it contains lots of small blocks of memory modules, which
More information