| 
 
  
  
  
  
  
   |  |   "Half-Gate" 
FPGA Design and Character Generator
   IntroductionThis laboratory will give you confidence to use the CAD tools associated with 
targeting a Verilog description to a Xilinx FPGA. To begin with, you will 
practice with the CAD tools themselves by implementing "half of a NAND gate" (an 
inverter). Next, you will implement a combinational circuit to display 
characters on a seven-segment display. Objectives
  |  | Gain confidence with new design tools for the FPGA |  |  | Implement a message display on the seven-segment LED |  Parts ListNo additional parts required for this lab. Equipment
  |  | XS-40 FPGA evaluation board |  Software
  |  | Xilinx ISE 4.2i FPGA implementation tools |  |  | SimuCad Silos 2001 behavioral simulator for Verilog |  |  | XESS Corporation GXSTOOLS for XS-40 evaluation board, in particular: 
    |  | GXSLOAD -- transfers .BIT file (the FPGA implementation file) from PC to 
    the XS-40 board |  |  | GXSPORT -- allows you to manipulate the eight parallel port data signals 
    that are attached to the FPGA device |  |  | GXSSETCLK -- allows you to adjust the oscillator frequency on the XS-40 
    board (some boards are an older version that has a fixed 12 MHz clock) |  |  
 Prelab
  Check out one XS-40 FPGA evaluation board from the Instrument Room (only 
  one per lab group). Your kit should contain the XS-40 board itself, a 
  breadboard, a 9-volt plug-in power supply, and a parallel port cable.
If you wish to create a complete local installation of all software 
  packages that you will need during the upcoming weeks, then install the 
  following:
 -- Xilinx ISE Student Edition 4.2i (this was 
  packaged with your textbook).
 -- SimuCad Silos 2001 
  Verilog behavioral simulator
 -- Xess Corp. XSTOOLS for XS-40 FPGA 
  board
 
Review (skim) the XS-40 User's Manual 
  to learn about the resources available on the FPGA board. In particular, study 
  the "Simplified Schematic" page (second bookmark from the end).
Study carefully the 
  Concept to FPGA: 
      Step-by-Step Instructions document. This is your roadmap for the 
  design, verification, and implementation process. You may also wish to refer 
  to  PLD Advisor 
  for worked examples.
Create a Verilog description for half of a NAND gate (the so-called 
  "half-gate" circuit, or inverter). 
 You must use the two-file Verilog technique, i.e., make one .v file for the 
  synthesizable circuit, and another .v file for the testbench. Include hardcopy 
  of both files.
 
 Verify your design in Silos, and include hardcopy of the waveforms from 
  your simulation.
 
Create a Verilog description for a character generator for the 
  seven-segment display. The character generator is a combinational circuit that 
  accepts a four-bit binary value and generates a unique character to be 
  displayed on the seven-segment LED (the LED segments are active high). Feel 
  free to be creative; you are not restricted to only alpha-numeric characters.
 Again, you must use the two-file Verilog technique. Include hardcopy of both 
  files.
 
 Verify your design in Silos. Include written annotations on your 
  waveform to explain your simulation results.
 
A photocopy of your prelab pages is due at the beginning of the class the day 
  before lab. LabPlease use the  
Lab Help Queue to request assistance in lab. NOTE: If you need a "sanity test" of your XS40 board, download
xs40demo.bit to your board, set XSPORT 
Bit 0 to zero, and you should see a single moving segment traveling clockwise 
around the periphery of the LED display. If you would like to create the bit 
file yourself, the Verilog source file is 
xs40demo.v and the UCF file is 
xs40demo.ucf. 
  Carry out the complete implementation process for your half-gate design. 
  Use XSPORT Bit 0 as the input to your inverter. Use one of the LED segments as 
  the output.
Demonstrate your half-gate circuit to the instructor. You may 
  not proceed until you complete this step!
Carry out the complete implementation process for your character 
  generator. Use XSPORT Bits 3 to 0 as the four-bit input. Use the LED segments 
  as the output.
Demonstrate your character generator circuit to the instructor.
 All done!
  |  | Clean up your work area |  |  | Remember to submit your lab notebook for grading at the beginning of next 
  week's lab |    |