Vous êtes sur la page 1sur 18

Xilinx and Nexys2 Tutorial

Kartik Mohanram Dept. of Electrical and Computer Engineering Rice University, Houston, TX

Verilog synthesis+simulation with Xilinx

Xilinx Project Navigator Icon on your Desktop

ELEC 326 Digital Logic Design

Open a new project called decoder2to4


Choose a working directory (C:\...\decoder2to4) and name the top level module there (decoder2to4)

ELEC 326 Digital Logic Design

Device options, etc.


The next step is to select the target device and its specs from the board (Spartan3E, xc3s500e, fg320); to specify Verilog as the input HDL language

ELEC 326 Digital Logic Design

Adding new Verilog source


Create a new top level module decoder2to4 in the project

ELEC 326 Digital Logic Design

Initialize project directory

ELEC 326 Digital Logic Design

Enter the source


Use bottom tabs to select the source file, key in the Verilog description, and save it

Design constraints+actions: synthesis+implementation, bit-file generation, etc.

ELEC 326 Digital Logic Design

2-to-4 decoder example


Use case statement Note that output [3:0] y is changed to output reg [3:0] y No Xilinx option to specify this directly Hand-code as necessary

ELEC 326 Digital Logic Design

User constraint file (UCF)


UCF file for I/O mapping The UCF allows us to leverage the switches, LEDs, etc. on the board to interact with the implemented design (see documentation on 326 page too) Add new source Mapping visible on board Sometime mis-marked Cross-check with manual

ELEC 326 Digital Logic Design

UCF generation

ELEC 326 Digital Logic Design

10

Add I/O constraints


The mapping assigns switch 1 (available on pin G18) to input W[0], etc. These mappings are visible on the board and also part of the Nexys2 board documentation.

ELEC 326 Digital Logic Design

11

Compile!
Select the decoder2to4 module and double-click the Synthesize XST button. Note that Xilinx displays all allowed options for the selected file in the project. For example, selecting the io.ucf file does not provide options like synthesis, etc. since it really is not a Verilog module. Synthesis will take some time. If successful, you will see a green check-mark Double-click Generate Programming File to generate the bit-file You can expand the synthesis tab and look at the synthesis report, warnings, critical path delay, etc. Errors and warnings Heed them and you will learn as you go Ask labbies

ELEC 326 Digital Logic Design

12

Adding SSD signal


Add extra output ssd Pulls all seven-segment display limbs up for the decoder, so that you dont see a faint glow Same limbs will find use in core of your SS module UCF entries are handy

ELEC 326 Digital Logic Design

13

UCF for complete design

ELEC 326 Digital Logic Design

14

Generate programming file

ELEC 326 Digital Logic Design

15

Programming the FPGA


Once the bit-stream is generated, we will configure the FPGA using the boundary-scan port Boundary-scan and JTAG are features used for post-production test of ICs using very simple shiftregister concepts and 4 I/O pins The parallel-port connector lists these as TDI, TDO, TCLK, and TMS (test data in, ) Can be used to configure FPGAs using the Adept software (icon below)

Programming the FPGA

ELEC 326 Digital Logic Design

17

Programming the FPGA

ELEC 326 Digital Logic Design

18

Vous aimerez peut-être aussi