Sie sind auf Seite 1von 7

Prashant Basargi
Embedded Design Center, COE Pune

Step by Step procedure to run a program on FPGA board

6 Votes

In this tutorial, we will explain how to burn a program on Xilinx board. First of all you can learn the Step-by-Step
Description for MATLAB+ISE Co-Simulation using System Generator for Spartan/Virtex FPGAs explained by my
friend Vihang Naik very briefly. Before going to burn a program on Xilinx board, check your program output in
MATLAB+ISE co-simulation using system generator.

Software and hardware used:

Xilinx ISE 14.2

Nexys™3 Spartan-6 FPGA Board (XC6LX16-CS324)

Here I am taking simple ANDing example for understanding of step by step procedure to run a program on

STEP1: Open Xilinx ISE and create a new project.

Select path of your working project directory and enter name of project.

click on Next

Step 2: Select the Family, Device, Package and Speed of Xilinx board and also select your programming
language(Verilog/VHDL). Here i am using Verilog language.

click on Next

Project summery window occurs.

1 of 7 5/9/18, 5:05 AM

Click on Finish

Step 3: Click on Project > New Source

Step 4: Select Source type is Verilog Module and enter the file name (ANDing_code).

Click on Next

Step 5: Define Module Window.

Here we can define inputs & outputs and its bit/bus size. In ANDing example there are two inputs and output of
single bit each. Also define clock signal for clocking operation.

2 of 7 5/9/18, 5:05 AM

Click on Next.

Step 6: Summery Window

Click on Finish.

Step 7: The Project Navigator window looks like below window.

All the inputs and outputs are already defined in Define Module window so these inputs and outputs are seen in
project navigator.

Step 8: Write a program for ANDing operator in module present in project navigator.

Step 9: Click on Project > New Source. Select Implementation Constraints file type and enter the file name (e.g.

Click on Next.

3 of 7 5/9/18, 5:05 AM

Click on Finish.

Step 10: Write the inputs, outputs and its pin location in proper format of .ucf file. (use datasheet of Xilinx board
for pin location). Here two switchs SW0 and SW1 are used for input and one led LD0 is used for output.

Step 11: Open main ANDing program and double click on Synthesize – XST. After successful completion of
Synthesis, double click on Implement Design. Implement design consists of three parts-

Place and Route

For detail information of Implement design Click Here. After successful completion of implement design double
click on Programming File Generation. Programming File Generation produces a bitstream for Xilinx device
configuration. Successful completion of all these process the window looks like.

Step 12: Double click on Configure

Target Device and a new ISE iMPACT window open.

4 of 7 5/9/18, 5:05 AM

Step 13: Connect the Xilinx board

to your PC/Laptop using USB cable.

Step 14: Double click on Boundary scan. Check auto cable connection Output > Cable Auto Connect and if cable
is connected then Window bottom part looks like step 3 shown in below.

Step 15: Click on File > Initialize

Chain. After that they ask for “Do you want to continue and assign configuration files(s)?”

Click on Yes and select the

generated bit-stream file. Step

16: Click on Open. After that they ask “Do you want to attach an SPI or BPI PROM to this device?” click on No
tab. Click on Operations > Program. If Programming successful then they shows Program Succeeded.

5 of 7 5/9/18, 5:05 AM

Step 17: Check the output on

hardware(Board). Here I am giving input through switches and output shows on LED. Output:

1. Switch1(OFF) AND Switch2(OFF) = LED(OFF)

2. Switch1(ON) AND Switch2(OFF) = LED(OFF)
3. Switch1(OFF) AND Switch2(ON) = LED(OFF)
4. Switch1(ON) AND Switch2(ON) = LED(ON)


Share this:

 Twitter  Facebook 6


Be the first to like this.

13 Responses to Step by Step procedure to run a program on FPGA board

Nomi says:
October 29, 2014 at 1:51 PM

I have a design on simulink using xilinx system generator. I have to implement it on FPGA and display the results on monitor.
How to do it? FPGA kit i am using is Spartan 3E.

sateesh says:
August 11, 2015 at 11:00 AM

too good……….!

Prashant Basargi says:

April 9, 2016 at 6:21 PM

Thank you!

guru says:
September 29, 2015 at 12:25 PM

superb appreciatable work


Prashant Basargi says:

April 9, 2016 at 6:21 PM

6 of 7 5/9/18, 5:05 AM

Thank you!

vinutha t says:
November 2, 2015 at 4:21 PM

what is the meaning of boundary scan and PROM file…??


Prashant Basargi says:

April 9, 2016 at 6:19 PM

Please refer below link for Boundary scan and PROM detail:

Imran says:
February 21, 2016 at 1:44 PM

I got a problem of error

WARNING:iMPACT:923 – Cannot find cable, check
I am using virtex II XCV600E board
Please can u provide me a solution

Prashant Basargi says:

April 9, 2016 at 6:32 PM

There are number of reasons for above cable exceptions. Refer below URL for more information.

Nataraj Sunkara says:

May 19, 2016 at 10:26 AM

Thank you

muhammad babaji says:

June 7, 2016 at 8:41 PM

thanks for your contribution



July 29, 2016 at 10:15 AM

thanks for your cooperation, i am at RIET Jaipur


Rohan Arora says:

April 4, 2017 at 6:03 PM

Excellent explanation! Thanks a lot


Prashant Basargi
Create a free website or blog at

7 of 7 5/9/18, 5:05 AM