Showing results for 
Show  only  | Search instead for 
Did you mean: 
Not applicable

Need help to learn PCI express communication using Xilinx fpga

Dear engineers,

I need your guidance to start my final year project (industrial electronic engineering fourth year)  Our task is to design FPGA board which has interface to Host PC via PCI express slot, the FPGA card will also contain  AD7874 adc and AD8582 dac. We have maximum 6 months to do this. PCB layout of this board will be designed by third party layout designer our job is to design schematic and write FPGA PCI express core and DAC and ADC interfacing code in VHDL, and on Host PC side we have to develop user application program based on Labwindows from where user can input data (via adc) and output data via dac. Our current status is that we know fpga VHDL programming, C++/C programming, and USB protocol but we have no idea of PCI express protocol.  Now I want to know from where should I start to understand PCI express protocol, please refer me good book or pdfs for this, If there is any book which directly tells implementation of PCI express on FPGA then please let me know. Also refer me any useful material (free cores or manuals or pdfs) provided by Xilinx related to our project.. The finalized board may have interface to MLT-STD-1553 and its interfacing core is written by third party engineer.

 Microblaze core will be running on FPGA which schedules PCIe core for data transferring between FPGA and Host PC, adc and dac interfacing core to read adc or to out data to dac or to digital IOs, MLT-STD-1553 core to communicate with avionics bus. For simplicity we have to implement single serial link / lane on PCIe core. Please help me to select FPGA chip with enough gate counts to implement all this economically and successfully in time. Sorry if I am posting message in wrong category of forum, or if my topic is similar to already posted messages.




Zafir Hafeez 


0 Kudos
2 Replies
Registered: ‎11-26-2008

First of all, no need to double post. Secondly, judging from some of your previous posts, I think you'd have a MUCH higher chance of success if you buy one of the existing Xilinx PCI Express kits - for instance the SP605 ( ). You can then spend your time designing an addon board for this, that includes your data acquisition components.


It seems as if you don't have much experience with PCB layout / schematics, and thus starting out by designing an FPGA board - and even one with a high-speed interface - is most probably not going to end well... Since you are planning to do all the parts yourself, you'd have a hard time testing the single parts (device drivers, hardware design, FPGA core).


For reference, I spent a half year doing a pre-project for my masters thesis - I used an existing Xilinx PCI Express board and core, and still managed to spend most of the time learning about PCIe and working on the Linux and Windows device drivers.


I previously uploaded the report I made, it's available here:,

0 Kudos
Not applicable

Sorry for double posting. Thanks for your advice. Actually we don't have to design complete FPGA board 3rd party engineers will design complete hardware, our target is to implement successfully PCI e core on that board and to write its driver on PC side. We were advised to use Lab windows for designing its host application and moreover our instructor will give us spartan3 pcie board for testing the core in initial stage of design. Regards Zafir Hafeez
0 Kudos