Experiment # 4 Introduction to FPGAs - Detour Signal Lab

Size: px
Start display at page:

Download "Experiment # 4 Introduction to FPGAs - Detour Signal Lab"

Transcription

1 1. Synopsis: Experiment # 4 Introduction to FPGAs - Detour Signal Lab This lab introduces the use of Field Programmable Gate Arrays (or FPGAs, for short) for prototyping of digital circuits. Through the design of a simple state machine for controlling the Detour Signal lights, this lab introduces the digilab experimental FPGA board and demonstrate FPGA design flow. The experimental FPGA board houses a Xilinx Spartan-2 FPGA along with various input and output devices like push buttons, light-emitting diodes and seven segment displays. This lab introduces how each of those input and output devices can be used in EE 201L designs. 2. Description of the Circuit: You all know the detour signal at road repair sites. It normally has four groups of lights - GL (stands for Group Left), G1, G2 and GR - controlled as shown to indicate detour to the right or detour to the left. Assume that we have a L/R switch to choose left or right signal. The state machine looks at this switch only when it is in the Idle state and then performs the required (left or right) sequence and comes back to Idle state. Idle State R1 State (G1 is ON) R12 State (G1, G2 are ON) R123 State (G1, G2, GR are ON) Idle State L1 State (G2 is ON) L12 State (G2, G1 are ON) GL G1 G2 GR In this lab we will implement the 7-state controller using D-flip flops in One-hot method. Fig 1: Four groups of LEDs in different states The state machine given below is almost complete. Some obvious state transition conditions have been intentionally left out. Complete the state diagram before proceeding. (Recall that an unconditional state transition can be labelled with 1 as the condition). L123 State (G2, G1, GL are ON) ~Reset L/R=0 R1 R12 R123 Idle L/R=1 L1 L12 L123 Fig 2: State diagram for the Detour Signal design ee201l_detour.fm [Revised: 2/4/08] 1/14

2 3. Introduction to the FPGA Board: An FPGA consists of an array of logic blocks connected via programmable interconnect. A typical FPGA contains anywhere from 64 to tens of thousands of logic blocks and an even greater number of flip-flops. Each configurable logic block (CLB) has one or more D-flip flops and some combinational logic such as muxes, etc. Each CLB is capable of performing a reasonably complex function such as implementing a full adders. Our objective in this lab is to understand how to use FPGAs and a more discussion on the architecture of FPGAs can be found in Addendum #2. Xilinx TM Inc. ( is one of the major FPGA vendors. We will be using the XC2S30 device from Xilinx s Spartan-2 family of FPGAs. It has approximately 30,000 gates organized in configurable logic blocks (or CLBs). The XC2S30 device used in this lab comes in a TQ144 package. ( TQ stands for Thin Quad while 144 represents the number of pins in the package) 3.1 FPGA Boards: Digilab D2XL + Digilab DIO1 Board Digilab D2XL TM board from Digilent Inc. ( is the mother board for the Digilent s FPGA kit used in our labs. The board features Xilinx Spartan-II XC2S30 FPGA and two expansion slots labelled as E and F. These slots are used to interface the D2XL system board with various daughter boards (like DIO1) that Digilent produces. The board also has a push button (referred to as BTN_MAIN) and a LED (LED_MAIN). We will generally use this button as system reset and this LED to observe the system clock. Digilab DIO1 is one of the several daughter boards that can be connected to the D2XL motherboard. This board provides a wide range of I/O needed for our labs. It has five push buttons (labelled BTN1 through BTN5), eight LEDs (LD1-LD8), eight switches (SW1-SW8) and four common anode seven-segment displays (SSD). The 8 LEDs (LD1-LD8) on the DIO1 board are connected through an 8-bit latch which needs to enable by connecting its gate control (labelled as LDG ) to VDD. More details about the FPGA board can be found in Addendum # Seven Segment Display: A seven segment display (SSD) is nothing but seven LEDs arranged in a grid fashion; plus, an eighth LED serving as the decimal point. The LEDs are labelled a, b, c, d, e, f and g, starting from the top and going clock-wise (Fig 3). In order to make an LED glow, a logical 0 must be sent to the cathode and a logical 1 to the anode. To avoid redundancy of connection, it is possible to connect the anode of all the eight LEDs of a SSD together to form a single anode control and select individual LEDs by exercise control over the cathode terminals (this is called the common anode configuration). When connected in this fashion each SSD requires only 9 pins instead of 16. To illuminate a certain digit the common anode control is set to 1 and the appropriate cathodes are sent to 0. Figure 3 shows the seven segment code for each of the ten decimal digits. The following Flash animation graphically explain how SSDs are connected in the Digilab DIO1 board: ee201l_detour.fm [Revised: 2/4/08] 2/14

3 Figure 3: Seven Segment Display 3.3 Output Scanning Mechanism For SSDs DIO1 board has four SSDs and if they are connected in the above configuration they would require 36 pins (9x4) of the FPGA. To lower the number of FPGA pins required to show a specific value on the four SSDs, the designers of the board have connected the cathodes of all four SSDs together (labeled as Ca through Cg and Dp for the decimal point). Therefore, at any given time only one of the SSDs can be illuminated. However, if we select each SSD (by providing a 1 to the common anode for that SSD) and send data to it (i.e., sending zeros for segments we want illuminated) at a high rate, an allusion of constantly lit SSDs can be created. We called this output scanning mechanism for the SSDs. In our designs, we will use 2-bits of a counter to select the seven segment code to be sent on the Ca through Cg bus. When these bits are 00, cathode data for the first SSD is sent, when they are 01 data for the second SSD is sent, and so on. The same two bits are decoded to produce the four anode control signals. That is, when the bits are 00, anode control of the first SSD is enabled, when they are 01, anode control of the second is enabled and so on. Note that the order of inputs of the multiplexer controlling the cathodes should match the order of decoded anode control signals in order for the digits to appear in the correct order on the four SSDs. Fig 4 shows this output scanning in form of a timing waveform. Figure 4: Output Scanning for SSDs ee201l_detour.fm [Revised: 2/4/08] 3/14

4 4. FPGA Design Flow: In this section we will discuss the design flow for implementing a Xilinx Schematic design on to the FPGA on our Digilab board. Figure 5 shows the design flow that we will follow for this class. 4.1 Design Entry: We will use Xilinx Schematic Editor to specify the circuit schematics. In addition to creating the schematic for the core state machine, we will need to create a wrapper or top design which connects signals of the state machine to the input/output devices like the switches, push buttons and LEDs, etc. To do so, Xilinx library provides the following special components which we will be needing: Input/Output Buffers (I, O): Xilinx FPGAs require that we connect buffers to the I/O markers to ensure that signals entering or leaving the FPGA are of appropriate strength. Xilinx component library provides special input buffers (symbol: I) and output buffers (symbol: O) for this purpose. Enter Core Design Simulate Enter Top Design Specify Constraints Synthesize Program the FPGA Global Buffers (GP): Xilinx FPGAs have special buffers Fig 5: Design flow called Global Primary Buffers (symbol: bufgp) which must be used to buffer incoming signals such as clock, reset, etc. with high-fanout. For the clock pin, for example, after the input marker, you place a global buffer (bufgp) before taking the clock to circuit elements like flips-flops, counters, etc. You can not use general purpose buffers (symbol: buf) or input buffers (ibuf) for the clock signal. 4.2 Synthesis & Implementation: Once the circuit has been specified (in a schematic file), Xilinx Synthesis Tool (XST) can decide how to use the configurable logic and the programmable interconnect in the FPGA to implement the desired circuit. The process of interpreting the design, simplifying the circuit and then creating an implementation based on certain target FPGA, is called synthesis and implementation. We will use XST, launched from within the Project Navigator, to synthesize the design and generate a configuration bitstream for the FPGA. 4.3 Programming: We program (or configure) the FPGA by downloading the configuration bitstream generated by the synthesis tool onto the FPGA through the parallel or USB port of a PC. We will use Xilinx s impact configuration/programming software to download the bitstream onto our FPGA board using the parallel port. IF you do not have a parallel port on your PC, then you can borrow special USB cable from your TA and follow the handout and webcast separately posted. This will be quite lengthy and inconvenient. Sorry! ee201l_detour.fm [Revised: 2/4/08] 4/14

5 5. Prelab: Q 5. 1: What does FPGA stand for? (1pt) Q 5. 2: What is the name of the FPGA family that we are using in this lab? (1pt) Q 5. 3: Which FPGA of this family are we using? (1pt) Q 5. 4: What does TQ144 denote? (1pt) Speed grade Package Serial number Model number Q 5. 5: The state memory is usually implemented using: (2pts) And-Or gates RAM Flip flops All of the above Q 5. 6: Next State Logic (NSL) is a purely (combinational/sequential) circuit. (2pts) Q 5. 7: We will implement the detour signal controller using One-Hot method. How many D- flip flops are needed to implement the controller? (2pts) ee201l_detour.fm [Revised: 2/4/08] 5/14

6 6. Procedure: 6.1 Download the zip file ee201l_detour_exer.zip containing the Xilinx ISE project from the Blackboard (under Course Documents). Extract the zipped project into the projects folder (C:\xlinx_projects\) and open the project in Xilinx Project Navigator. Now, if you wish, you can now follow procedure steps 6.10 through 6.14 to synthesize/implement the given incomplete design and download it on to your board to get familiar these steps (and also test your board). This will help you to understand how the incomplete design (both core and top put together) is complete in its own way! Part 1: Completing the core design 6.2 Open the ee201l_detour.sch schematic file. This is an incomplete implementation of the state machine. Complete the design by adding new state memory (flip flops), next state logic and output function logic. Notice the two different types of flip flops used - FDP and FDC. Look up the difference between them using the Symbol Info button in the schematic editor s Symbols tab. Your completed design must correctly implement the state machine from Figure 2 and also produce the four output signals (outputs of the OFL): GL, G1, G2 and GR. 6.3 Use the provided Verilog test fixture (ee201l_detour_tb.v) to test your design. Please note that if the you do not see the signals in the waveform window, there probably is a mistake in the schematic. Also, make sure to use the same signal names for primary inputs and outputs (signals to which I/O markers are attached) as those used in the test bench. Primary inputs of the design are:, RESET and LR_BAR; whereas the primary outputs are: GL, G1, G2, GR and the one-hot coded states I, L1, L12, L123, R1, R12 and R123. Show the waveform of the completed and functionally correct design to your TA. Part 2: Completing a simple top design In Part 2 of this lab, our goal is to implement the detour design onto the FPGA board. For this purpose we will design a simple top schematic that wraps or encapsulates our core state machine and connects its inputs and outputs either to the input and output devices on the FPGA board or to signals such as generated within the top. No changes in the core state machine design will be made and all the necessary logic (often called glue logic ) for interfacing the core design to the input/output components will reside in the top file. For the simple top, we will use one of the switches (SW8) on the DIO1 board to exercise the left/ right detour selection (i.e., to produce the LR_BAR signal) and the eight LEDs (LD1 through LD8, in groups of two each) to create the detour arrow growing towards left or growing towards right and one of the four seven-segment LED displays to show R or L depending upon the state of the L/R signal. Push button on the main D2XL board (BTN1MAIN) will be used as RESET and the LED on the same board will display our system clock. The layout of Digilab Digital I/O 1 (DIO1) (together with I/O resource assignments for this lab) is shown in Figure 6 below. ee201l_detour.fm [Revised: 2/4/08] 6/14

7 RESET L or R LD1MAIN BTN1MAIN GL GL G1 G1 G2 G2 GR GR LD1 LD2 LD3 LD4 LD5 LD6 LD7 LD8 A1 A2 A3 A4 LR_BAR BTN1 BTN2 BTN3 BTN4 BTN5 SW1 SW2 SW3 SW4 SW5 SW6 SW7 SW8 Fig 6: Layout of the Digilab DIO1 board for the simple top design (Part 2). 6.4 Switch the Sources window view from Behaviroral Simulation to Synthesis/Implementation. You should see that the top-most schematic file in the hierarchy is ee201l_detour_top.sch. This is an incomplete top design. Understand how the provided (incomplete) design works. 6.5 On sheet 1 of ee201l_detour_top.sch, complete the connections/logic for the following signals: LR_BAR (SW8), G1 (LD3 & LD4), G2 (LD5 & LD6) and GR (LD7 & LD8). Notice the special buffers connected to the I/O marker labeled as SW8 (ibuf) and LD1/LD2 (obuf). Look up the details about these buffers (using the Symbol Info button) and be sure to use appropriate buffers for each unconnected signal. PORT and RESET are connected using a third kind of special buffer (bufgp). This buffer is only needed for global signals like the clock and reset. We will leave the state_onehot(15:0) unconnected. During synthesis, the Xilinx XST tool will issue a warning inform you that you left these unconnected. Ignore this warning. 6.6 On sheet 2 of ee201l_detour_top.sch, complete the circuit necessary to show L when LR_BAR is 1 and R when it is 0. Custom-made 8-bit wide 2x1 mux is provided in the project for you to use, if necessary. Figure 3 shows the naming of the LEDs in the seven segment display. In the top schematic (ee201l_detour_top.sch), we have added the glue logic and connected signals of the core design to the I/O markers labeled for the various input and output devices on the board. Each of these input/output devices (switches, buttons & LEDs) is connected to a unique pin of the FPGA and in the next step we will make the connection between the I/O markers in the top schematic and the physical FPGA pins to which various devices are connected. By associating each I/O marker in the top design with a pin number, we can ensure that in the final downloaded design, these signals will be tied to the components connected to the respective FPGA pins. For instance, pin number 91 of the FPGA is connected to the on-board clock generator. Therefore, in order to connect the on-board clock generator to the input of the clock divider circuit in the top design, we must associate the I/O marker labeled PORT to pin 91. This is done in the User Constraint File, or UCF file. 6.7 Go to the project directory (C:\Xilinx_Projects\ee201l_detour_EXER) and locate the UCF file (ee201l_detour.ucf). Open this file in a text editor (such as Notepad/Wordpad). Using ee201l_detour.fm [Revised: 2/4/08] 7/14

8 the table of mapping between FPGA pins and I/O devices given at the end of this handout identify wrong pin associations and correct the mistake(s). Save the file and return to the Project Navigator. You are now ready to synthesize the design and program the FPGA with your new design. 6.8 In the Project Navigator sources pane, select the top schematic. In the Processes window, right-click on Generate Programming File and select Properties. Click the Startup options tab and select JTAG clock for FPGA Start-Up Clock. Click OK. 6.9 In the Project Navigator window, in the Processes for Current Source pane, rightclick and run (or double-click). If the design is synthesized successfully, you will see green colored check marks (or exclamatory marks, indicating some warnings but no errors) next to it. Then right-click and Run (or double-click) Make sure that Digilab boards (D2XL connected to DIO1) are connected to the PC via parallel cable. Also, the boards should be powered up using a 6V (or 5V) DC power supply. The SW1 switch (PORT - JTAG switch) on the main D2XL board should be set to JTAG side. In the process pane, expand the Generate Programming File tab under the. Double click on the tool. A programming bitstream (ee201l_detour_top.bit) is generated in the project directory When the bit-file generation has completed successfully, Xilinx Programming tool impact will open and a wizard will guide you through the set up of your board. All default selections (Parallel port LPT1, etc.) are valid for our setup. If prompted, select the bit file ee201l_detour_top.bit. When the wizards finishes, you will see an icon representing the FPGA chip in the main impact window. Download the.bit file by selecting the FPGA icon and right click and select program (or by choosing Operation -> Program ). You should see a progress indicator as the bitstream is downloaded on the FPGA If programming is successful, the LD1 on the main D2XL board (LD1MAIN as we labeled it in the top schematic) will flash. Check the operation of your design by operating SW8 and seeing the right sequence of LEDs glowing to indicate right detour or the left detour and the right direction indicator appearing on the SSD. Show the correct implementation to your TA. Part 3: Implementing a more complex top In this part, you will modify the top to also show the state number on one of the SSD along with the direction indicator. To do so, you will employ the output scanning mechanism necessary to use multiple SSDs. Consult your TA for more details on output scanning. Once you understand how output scanning works, proceed with the following procedure steps In ee201l_detour_top.sch (sheet 1) you are provided with a bus named state_onehot[15:0]. This 16-bit one-hot coded vector has to be converted to 4-bit hexadecimal number which can then be converted to the appropriate seven-segment code representing each hex digit. Necessary (custom-made) components are provided with A1 A2 A3 A4 SSD1 AN1 SSD2 AN2 SSD3 AN3 LorR SSD4 AN4 ee201l_detour.fm [Revised: 2/4/08] 8/14

9 this project. See the components below and also understand the schematic underneath each of these component. You can use these components or design your own and use them. The goal is to show the state number ( 0 for Idle state, 1 for L1, 2 for L12 3 for L123, 4 for R1, 5 for R12, 6 for R123) on SSD1 (corresponding to AN1) and the direction indicator ( L or R ) on SSD4 (corresponding to AN4). Complete the schematic to implement this new top schematic Synthesize and implement the design using the same procedure steps that you followed in Part 2 (steps 6.11 onwards) and show the working design to your TA.. ee201l_detour.fm [Revised: 2/4/08] 9/14

10 7. Lab Report: Name: Lab Session: Date: TA s Signature: For TAs: Pre-lab (10): Implementation ( ): Report (out of 40): Comments: Q 7. 1: What are the two different D-flip flops that we are using in this lab? What is the difference between them? (2pts) Q 7. 2: Name 2 more D-flip flops that are available in the Xilinx library and briefly explain how are they different from the ones that we are using in this lab.(8pts) Q 7. 3: Q 7. 4: Which pin of the FPGA is connected to the BTN1MAIN on the D2XL board?. (4pts) Which three special buffers are needed for signals that connect to the input and output devices (including the on-board clock generator)? Gives their names and whether they are needed to connect inputs or outputs or both. (6pts) Q 7. 5: Assume that the frequency of the clock entering the FPGA is 25MHz. Notice that we are dividing the input clock by using counters. Calculate the frequency of the divided clock that triggers the detour signal state machine. (5pts) Q 7. 6: Why are we dividing the clock? (5pts) Q 7. 7: What will happen if the output scanning frequency is (much) lower than the system clock s frequency in this design? (10 pts) ee201l_detour.fm [Revised: 2/4/08] 10/14

11 Digilab DIO1 (Digital I/O 1, Rev B) to Digilab D2XL (XC2S30) DIO1B Pin Signal D2XL Pin Signal FPGA Pin DIO1B Pin Signal D2XL Pin Signal FPGA Pin A1 F39 88 A2 F40 18 A3 F37 64 A4 F38 42 A5 F35 3 A6 F36 76 A7 F33 5 A8 F34 4 A9 F31 7 A10 F32 6 A11 F29 11 A12 F30 10 A13 F27 13 A14 F28 12 A15 F25 20 A16 F26 19 A17 F23 22 A18 F24 21 A19 F21 26 A20 F22 23 A21 F19 28 A22 F20 27 A23 F17 30 A24 F18 29 A25 F15 40 A26 F16 31 A27 F13 43 A28 F14 41 A29 F11 46 A30 F12 44 A31 BLU F9 48 A32 PS2D F10 47 A33 GRN F7 50 A34 PS2C F8 49 A35 RED F5 54 A36 HS F6 51 A37 VCC F3 VCC A38 VS F4 56 A39 F1 A40 VU F2 VU B1 CA E39 58 B2 SW1 E40 57 B3 CB E37 60 B4 SW2 E38 59 B5 CC E35 63 B6 SW3 E36 62 B7 CD E33 66 B8 SW4 E34 65 B9 CE E31 74 B10 SW5 E32 67 B11 CF E29 77 B12 SW6 E30 75 B13 CG E27 79 B14 SW7 E28 78 B15 DP E25 83 B16 SW8 E26 80 B17 BTN2 E23 85 B18 BTN1 E24 84 B19 BTN4 E21 87 B20 BTN3 E22 86 B21 A1 E19 94 B22 LD1 E20 93 B23 A2 E17 96 B24 LD2 E18 95 B25 A3 E B26 LD3 E16 99 B27 A4 E B28 LD4 E B29 E B30 LD5 E B31 E9 115 B32 LD6 E B33 E7 118 B34 LD7 E8 117 B35 BTN5 E5 121 B36 LD8 E6 120 B37 VCC E3 VCC B38 LDG E4 122 B39 E1 B40 VU E2 VU ee201l_detour.fm [Revised: 2/4/08] 11/14

12 EE201L - Introduction to Digital Circuits Experiment # 4 FDC FDC FDC QL1 QL12 QL123 D Q D Q D Q C C C A A CLR CLR CLR RESET RESET FDP RESET PRE QL123 QI D Q C B B L LR_BAR LR_BAR R INV L R QL123 GL QI C C GL QL123 QL12 R1 OR2 G1 R12 G1 R123 QL1 QL12 D D QL123 OR4 G2 GR G2 GR QL1 QL12 QL123 L1 L12 L123 Experiment: Designed by: USC VSoE CENG EE201L Lab Detour Sheet Detour core design Drawn by: Student: Date Date Date I ee201l_detour.fm [Revised: 2/4/08] 12/14

13 EE201L - Introduction to Digital Circuits Experiment # 4 VCC CB8CE CB16CE CB8CE BQ(15:0) CQ(7:0) AQ(7:0) Q[15:0] Q[7:0] Q[7:0] PORT CE CEO CE CEO CE CEO PORT C TC C TC C TC A A GP CLR CLR CLR Btn1Main GL RESET GP O O LD1 LD2 LD3 RESET ee201l_detour LD4 BQ(15) L RESET L R B B GL LD5 LR_BAR GL SW8 LR_BAR I state_onehot(0) G1 G2 GR L1 L12 L123 R1 R12 G1 G2 GR L1 L12 VCC L123 R1 R12 R123 C C L1 state_onehot(1) R123 O R O LD6 LD7 LD8 LDG LD1MAIN L12 state_onehot(2) L123 state_onehot(3) R1 R12 state_onehot(4) state_onehot(15:0) state_onehot(5) R123 state_onehot(6) state_onehot(7) state_onehot(8) Converting the current state information into a 16-bit one-hot coded number (useful in Part 3) state_onehot(9) state_onehot(10) state_onehot(11) D D state_onehot(12) state_onehot(13) state_onehot(14) state_onehot(15) Experiment: Designed by: Student: USC VSoE CENG EE201L Lab Sheet Detour TOP schematic (Sheet 1/2) Drawn by: Date Date Date I I I ee201l_detour.fm [Revised: 2/4/08] 13/14

14 EE201L - Introduction to Digital Circuits Experiment # 4 SSD_L(5) A A O SSD_L(7:0) SSD_out(7:0) SSD_out(4) SSD_L(7) VCC SSD_L(0) VCC SSD_L(1) SSD_L(2) SSD_L(3) SSD_L(4) SSD_L(6) E E8 SSD_out(0) SSD_out(1) SSD_out(2) SSD_out(3) SSD_out(5) SSD_out(6) SSD_out(7) O O O O O O O Ca Cb Cc Cd Ce Cf Cg Dp VCC B B An1 An2 An3 An4 C C D D Experiment: Designed by: USC VSoE CENG EE201L Lab Sheet Detour TOP schematic (Sheet 2/2) Drawn by: Student: Date Date Date ee201l_detour.fm [Revised: 2/4/08] 14/14

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

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

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

Programmable Logic Design I

Programmable Logic Design I Programmable Logic Design I Read through each section completely before starting so that you have the benefit of all the directions. Put on a grounded wrist strap (cf. Getting Started) before touching

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

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

ECE 491 Laboratory 1 Introducing FPGA Design with Verilog September 6, 2004

ECE 491 Laboratory 1 Introducing FPGA Design with Verilog September 6, 2004 Goals ECE 491 Laboratory 1 Introducing FPGA Design with Verilog September 6, 2004 1. To review the use of Verilog for combinational logic design. 2. To become familiar with using the Xilinx ISE software

More information

CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2011

CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2011 CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2011 GENERAL DEVELOPMENT CYCLE WITH FPGAS FOR A NEW CHIP 1. Introduction A digital product is developed as a new (digital) chip or as a new printed circuit

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

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

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

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

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

XILINX WebPack -- testing with Nexys2 boards at USC (EE201L)

XILINX WebPack -- testing with Nexys2 boards at USC (EE201L) XILINX WebPack -- testing with Nexys2 boards at USC (EE201L) Gandhi Puvvada 1 Before you start: 1.1 We assume that you have installed WebPACK on your desktop or laptop already. We assume that you have

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

Digilab 2 XL Reference Manual

Digilab 2 XL Reference Manual 125 SE High Street Pullman, WA 99163 (509) 334 6306 (Voice and Fax) www.digilentinc.com PRELIMINARY Digilab 2 XL Reference Manual Revision: May 7, 2002 Overview The Digilab 2 XL (D2XL) development board

More information

Introduction. About this tutorial. How to use this tutorial

Introduction. About this tutorial. How to use this tutorial Basic Entry & not About this tutorial This tutorial consists of an introduction to creating simple circuits on an FPGA using a variety of methods. There are two ways to create the circuit: using or by

More information

COE 200 LABORATORY MANUAL

COE 200 LABORATORY MANUAL KING FAHD UNIVERSITY OF PETROLEUM & MINERALS COLLAGE OF COMPUTER SCIENCES & ENGINEERING COMPUTER ENGINEERING DEPARTMENT FUNDAMENTALS OF COMPUTER ENGINEERING COE 200 LABORATORY MANUAL February 2004 TABLE

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

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

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

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

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: ISE 12.2 and the Spartan3e Board v August 2010

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

More information

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

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

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

More information

Using XILINX WebPACK Software to Create CPLD Designs

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

More information

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

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

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

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

More information

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P Khatri (Lab exercise created and tested by Ramu Endluri, He Zhou, Andrew Douglass

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

Programmable Logic Design Techniques I

Programmable Logic Design Techniques I PHY 440 Lab14: Programmable Logic Design Techniques I The design of digital circuits is a multi-step process. It starts with specifications describing what the circuit must do. Defining what a circuit

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

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

CPLD Experiment 4. XOR and XNOR Gates with Applications

CPLD Experiment 4. XOR and XNOR Gates with Applications CPLD Experiment 4 XOR and XNOR Gates with Applications Based on Xilinx ISE Design Suit 10.1 Department of Electrical & Computer Engineering Florida International University Objectives Materials Examining

More information

Microprogram Control Unit Design: Merging Two Arrays

Microprogram Control Unit Design: Merging Two Arrays Microprogram Control Unit Design: Merging Two Arrays 1. Synopsis: The purpose of this lab is to implement a state machine by using a microprogram control unit design. Microprograming allows flexibility

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

Logic Implementation on a Xilinx FPGA using VHDL WWU Linux platform assumed. rev 11/01/17

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

More information

Banks, Jasmine Elizabeth (2011) The Spartan 3E Tutorial 1 : Introduction to FPGA Programming, Version 1.0. [Tutorial Programme]

Banks, Jasmine Elizabeth (2011) The Spartan 3E Tutorial 1 : Introduction to FPGA Programming, Version 1.0. [Tutorial Programme] QUT Digital Repository: http://eprints.qut.edu.au/ This is the author version published as: This is the accepted version of this article. To be published as : This is the author s version published as:

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

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

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

More information

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

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

More information

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

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

More information

Xilinx ISE8.1 and Spartan-3 Tutorial EE3810

Xilinx ISE8.1 and Spartan-3 Tutorial EE3810 Xilinx ISE8.1 and Spartan-3 Tutorial EE3810 1 Part1) Starting a new project Simple 3-to-8 Decoder Start the Xilinx ISE 8.1i Project Navigator: Select File > New Project in the opened window 2 Select a

More information

Implementing a Verilog design into the UWEE CPLD Development Board Using Xilinx s ISE 7.1i Software: A Tutorial

Implementing a Verilog design into the UWEE CPLD Development Board Using Xilinx s ISE 7.1i Software: A Tutorial Implementing a Verilog design into the UWEE CPLD Development Board Using Xilinx s ISE 7.1i Software: A Tutorial Revision 0 By: Evan Gander Materials: The following are required in order to complete this

More information

Building Combinatorial Circuit Using Behavioral Modeling Lab

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

More information

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P. Khatri Lab exercise created and tested by: Abbas Fairouz, Ramu Endluri, He Zhou,

More information

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

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

More information

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

Introduction to WebPACK 4.1 for FPGAs. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Introduction to WebPACK 4.1 for FPGAs Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Release date: 10/29/2001 All XS-prefix product designations are trademarks of XESS Corp. All

More information

To practice combinational logic on Logisim and Xilinx ISE tools. ...

To practice combinational logic on Logisim and Xilinx ISE tools. ... ENGG1203: Introduction to Electrical and Electronic Engineering Second Semester, 2017 18 Lab 1 Objective: To practice combinational logic on Logisim and Xilinx ISE tools. 1 Find your lab partner You will

More information

Nexys 2/3 board tutorial (Decoder, ISE 13.2) Jim Duckworth, August 2011, WPI. (updated March 2012 to include Nexys2 board)

Nexys 2/3 board tutorial (Decoder, ISE 13.2) Jim Duckworth, August 2011, WPI. (updated March 2012 to include Nexys2 board) Nexys 2/3 board tutorial (Decoder, ISE 13.2) Jim Duckworth, August 2011, WPI. (updated March 2012 to include Nexys2 board) Note: you will need the Xilinx ISE Webpack installed on your computer (or you

More information

A B A+B

A B A+B ECE 25 Lab 2 One-bit adder Design Introduction The goal of this lab is to design a one-bit adder using programmable logic on the BASYS board. Due to the limitations of the chips we have in stock, we need

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

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

Adding the ILA Core to an Existing Design Lab

Adding the ILA Core to an Existing Design Lab Adding the ILA Core to an Existing Introduction This lab consists of adding a ChipScope Pro software ILA core with the Core Inserter tool and debugging a nonfunctioning design. The files for this lab are

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

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

Revision: February 19, E Main Suite D Pullman, WA (509) Voice and Fax. Switching Power Supplies 3V3 1V2 2V5 1V8

Revision: February 19, E Main Suite D Pullman, WA (509) Voice and Fax. Switching Power Supplies 3V3 1V2 2V5 1V8 Nexys Board Reference Manual Revision: February 19, 2007 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview s Nexys circuit board is an integrated circuit development platform based

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

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

Lab 2 Verilog Synthesis & Logic Optimization

Lab 2 Verilog Synthesis & Logic Optimization UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Lab 2 Verilog Synthesis & Logic Optimization 1.0 Motivation The goals of this lab are

More information

Experiment 3. Digital Circuit Prototyping Using FPGAs

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

More information

Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006)

Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006) Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006) 1 Part1) Starting a new project Simple 3-to-8 Decoder Start the Xilinx

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

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

Introduction to Schematic Entry using Xilinx ISE and Digital Logic Simulation using ModelSim MXE

Introduction to Schematic Entry using Xilinx ISE and Digital Logic Simulation using ModelSim MXE Introduction to Schematic Entry using Xilinx ISE and Digital Logic Simulation using ModelSim MXE 1. Synopsis: This lab introduces Xilinx Schematic Editor to input a digital design and ModelSim to simulate

More information

Digilab 2 Reference Manual

Digilab 2 Reference Manual 125 SE High Street Pullman, WA 99163 (509) 334 6306 (Voice and Fax) www.digilentinc.com PRELIMINARY Digilab 2 Reference Manual Revision: November 19, 2001 Overview The Digilab 2 (D2) development board

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

1.2 Nexys-3 board Between divclk[16] and divclk[20], divclk[ ] is faster than divclk[ ]. It is faster by a factor of.

1.2 Nexys-3 board Between divclk[16] and divclk[20], divclk[ ] is faster than divclk[ ]. It is faster by a factor of. ee354l_quiz_fall2016.fm 1.2 Nexys-3 board F E A G D B C 1.2.0 You are aware of the scanning mechanism for the four SSDs in Nexys-3 and the 12 pins (4 anodes + cathodes =12 pins) involved in controlling

More information

EE209 Lab Change We Can Believe In

EE209 Lab Change We Can Believe In EE209 Lab Change We Can Believe In Introduction In this lab you will complete the control unit and datapath for a vending machine change collector and dispenser. This lab will build on the vending machine

More information

Lab 1: FPGA Physical Layout

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

More information

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

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

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

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

Introduction to WebPACK 6.1. Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Introduction to WebPACK 6.1 Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board Release date: 10/30/2003 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix

More information

EE 231 Fall Lab 1: Introduction to Verilog HDL and Altera IDE

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

Digital Electronics & Computer Engineering (E85)

Digital Electronics & Computer Engineering (E85) Digital Electronics & Computer Engineering (E85) Lab 4: Thunderbird Turn Signal Introduction In this lab, you will design a finite state machine to control the taillights of a 1965 Ford Thunderbird 1 and

More information

ISE Tutorial: Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications

ISE Tutorial: Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications ISE Tutorial: Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications This tutorial document was last validated using the following software version: ISE Design Suite 14.5

More information

DESIGN STRATEGIES & TOOLS UTILIZED

DESIGN STRATEGIES & TOOLS UTILIZED CHAPTER 7 DESIGN STRATEGIES & TOOLS UTILIZED 7-1. Field Programmable Gate Array The internal architecture of an FPGA consist of several uncommitted logic blocks in which the design is to be encoded. The

More information

Introduction to WebPACK 4.1 for CPLDs. Using Xilinx WebPACK Software to Create CPLD Designs for the XS95 Board

Introduction to WebPACK 4.1 for CPLDs. Using Xilinx WebPACK Software to Create CPLD Designs for the XS95 Board Introduction to WebPACK 4.1 for CPLDs Using Xilinx WebPACK Software to Create CPLD Designs for the XS95 Board Release date: 10/29/2001 All XS-prefix product designations are trademarks of XESS Corp. All

More information

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr.

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr. EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board (FPGA Interfacing) Teacher: Dr. Liang Liu v.1.0.0 1 Abstract This document describes the basic behavior

More information

RTL and Technology Schematic Viewers Tutorial. UG685 (v13.1) March 1, 2011

RTL and Technology Schematic Viewers Tutorial. UG685 (v13.1) March 1, 2011 RTL and Technology Schematic Viewers Tutorial The information disclosed to you hereunder (the Information ) is provided AS-IS with no warranty of any kind, express or implied. Xilinx does not assume any

More information

Digital Circuit Design Using Xilinx ISE Tools

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

More information

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

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

More information

ECE2029: Introduction to Digital Circuit Design Lab 3 Implementing a 4-bit Four Function ALU

ECE2029: Introduction to Digital Circuit Design Lab 3 Implementing a 4-bit Four Function ALU ECE2029: Introduction to Digital Circuit Design Lab 3 Implementing a 4-bit Four Function ALU Objective: Inside a computer's central processing unit (CPU) there is a sub-block called the arithmetic logic

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

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P Khatri (Lab exercise created and tested by Ramu Endluri, He Zhou, Andrew Douglass

More information

: : (91-44) (Office) (91-44) (Residence)

:  : (91-44) (Office) (91-44) (Residence) Course: VLSI Circuits (Video Course) Faculty Coordinator(s) : Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Chennai 600036 Email Telephone : srinis@iitm.ac.in,

More information

2001 by X Engineering Software Systems Corp., Apex, North Carolina 27502

2001 by X Engineering Software Systems Corp., Apex, North Carolina 27502 2001 by X Engineering Software Systems Corp., Apex, North Carolina 27502 All rights reserved. No part of this text may be reproduced, in any form or by any means, without permission in writing from the

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

ECE2029: Introduction to Digital Circuit Design Lab 4 Building a Sequential Logic Circuit A Four Digit 7-Segment Display Driver

ECE2029: Introduction to Digital Circuit Design Lab 4 Building a Sequential Logic Circuit A Four Digit 7-Segment Display Driver ECE2029: Introduction to Digital Circuit Design Lab 4 Building a Sequential Logic Circuit A Four Digit 7-Segment Display Driver Objective: In this lab you will implement a driver circuit for the 4-digit

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

Introduction. In this exercise you will:

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

More information

Revision: 5/7/ E Main Suite D Pullman, WA (509) Voice and Fax. Power jack 5-9VDC. Serial Port. Parallel Port

Revision: 5/7/ E Main Suite D Pullman, WA (509) Voice and Fax. Power jack 5-9VDC. Serial Port. Parallel Port Digilent Digilab 2 Reference Manual www.digilentinc.com Revision: 5/7/02 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview The Digilab 2 development board (the D2) features the

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

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial 1 Table of Contents Design Flow in Libero TM IDE v2.3 Step 1 - Design Creation 3 Step 2 - Design Verification

More information