Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How can I build a FPGA Controller

Not open for further replies.


Newbie level 4
May 26, 2008
Reaction score
Trophy points
Activity points
FPGA Controller

HI all,
1. How am I going to create a fpga controller to control another fpga board?
2. The fpga controller must be able to load the bit stream file from computer via Ethernet interface and save it in the memory. Next, the second fpga board will receive the bit file from fpga controller and run it.
How am I suppose to do it, any idea please?

Re: FPGA Controller

to program an fpga there are more than one opertaion mode to configure the fpga. let's assume that your kit will be using master serial mode, in this mode the programming file (such as .bit file) should be stored on a non-volatile memeory (probaly a PROM), then after power-on the fpga starts communication by sending a clk to the memory, at each edge of the clock the memory sends abit to the fpga.

So all what you neeed to do for your assignment is to write data via ethernet port to the non-voltaile memory. Then insure that you are using the master seiral mode and after power up the fpga will load the configuration file from the memeory, i.e you don't need a controller, you'll just need to write the data from the PC to the memory.

Last but no least this assignment will lead you to the important topic "Boundary Scan" which enables you to test the available hardware before you start to program it.

Best wishes
Sameh Yassin

Re: FPGA Controller

First, thanks for the replies. Actually It is research topic. Got any idea or any useful links to send the data (bit files) from pc to fpga?
There are two fpga here, after getting the file and save it in non-volatile memory (1st fpga board), how am I going to use it so that it can run and evoke the other fpga board (2nd fpga board) with jtag or any interface. After that, I need to take the result from 2nd fpga board and show in pc. That why I need a controller (design in 1st fpga, then 2nd fpga is just a empty fpga).
Any links and comments are very appreciated.

Re: FPGA Controller

The experience shows that
the FPGA board is connected to PC through the COM port very well.
The UART IP core is needed only. It may be free.
The only disadvantage is the speed.
Ethernet, USB are speedy, but they are much difficult and time consumable to install.
Only when you have the proper license to the interface IP core, and the company will support you to install that, the quick success is guaranteed.

Re: FPGA Controller

If you want to program and re-read the FPGA using a second FPGA, the only thing you need is to read the content of the Appication note XAPP058 from Xilinx:

At the end of the appnote, you have a list of additional information you can use:

1. DS593, Platform Cable USB II
2. XAPP503, SVF and XSVF File Formats for Xilinx Devices.
3. XAPP104, A Quick JTAG ISP Checklist
4., zlib compression library
5. XAPP067, Using Serial Vector Format Files to Program XC9500/XL/XV Devices In-System
6. UG191, Virtex-5 FPGA Configuration User Guide
7. XAPP424, Embedded JTAG ACE Player

This should answer to all your questions, let me know if you still have questions,

Best regards,

Re: FPGA Controller

Thanks Farhada.
1. In Appication note XAPP058, why is meaning of embedded microcontroller, is it my first FPGA board (FPGA controller)? After I download the XSVF file into my 1st FPGA board, how my design file in first FPGA board load to second FPGA board, it will do it automatic or how?
2. How am I going to obtain the result (output) from second FPGA board? What I do in first FPGA board since the 2nd FPGA board is an empty board.
Any suggestion???

Re: FPGA Controller

Ok this is my last respond:
- You have 2 FPGA, one you want to use as programmer, one that needs to be programmed and verified, the first one can act as a 'microcontroller' the second one is the "fpga".
- One simple Google search with the terms, Xilinx, configuration, readback would have answered to all your questions.

To start with you can check out the Xilinx XAPP176 and go on from there:

Configuration is the process of loading a design bit-stream into FPGA internal configuration memory. Readback is the process of reading that data out.

While the Spartan-II configuration logic is significantly different from that of the Spartan/XL family; nevertheless, it maintains a great deal of compatibility to all Xilinx FPGA products.

The same goes for the rest of FPGA families, every one of them are different.

Good luck,


    Points: 2
    Helpful Answer Positive Rating
Re: FPGA Controller

Thanks for your reply again. The application notes that provided by u are useful to me. It make me understand better.

Not open for further replies.

Part and Inventory Search

Welcome to