07-06-2011 05:25 AM
I have successfully implemented the Xilinx Endpoint Block Plus v14.1 for PCI Express in my Virtex-5 FPGA board and have demonstrated that I can write to and read from the board over the PCI Express bus on my Windows 7 Development machine.
The problem is that I need the design to work on a Dell R510 server running Windows 2008 R2 Standard Edition. When I install the FPGA board in the server and program it with the PCIe Design bit file the Windows operating system does not detect the FPGA board as a PCIe device. I can restart the computer without erasing the bit file in the FPGA and the operating system still does not recognize the board as a PCIe Device.
In both the Server and the Development machine the slot I am using is a x8 gen2 slot wired as a x4. The PCIe implementation in the FPGA is a x4 gen1.
I have tried a plug-and-play PCIe device in the same slot and it was detected with no problem.
Does anyone have some insight on solving the problem. Do I need to do something different to make the board work in a Windows Server machine?
Thanks for your help!
07-06-2011 06:50 PM
I've used PCIe V5 core in a commercial product and tested it on quite a few systems. From what I've seen, PCIe detection behaviour depends on a motherboard or BIOS settings, not on the OS. You can try to boot Linux (from USB or CD) on your Windows 2008 R2 server to verify that theory.
07-07-2011 05:43 AM
Thanks for your reply. I am very much a novice at this, so I could use some additional information. If I boot to a Linux O/S I should be able to see the FPGA board as a PCIe device and if I do, I probably have a problem with my motherboard or BIOS? If that is the case then what can I do? Do I need to work with the computer manufacturer?
Thanks for your help!
07-07-2011 09:32 AM
If you boot Linux and see the device, than the problem is with the Windows OS. If you don't see the device, then it's something to do with BIOS, motherboard, or some configuration in your PCIe core that the system doesn't "like".
Then you can explore the BIOS, and try different PCIe-related settings; I've seen that it helps in some cases. Another option is to buy or rent PCIe protocol analyzer and capture the traffic. It'll provide some clues.
03-21-2012 07:12 AM
i'll understand you've running V5 PCIE core on DELL R510 and boot successfully
..i am using endpoint_block_plus_V1_15
and cannot boot on DELL R510(other PCs is on), the server gets fatal error with a NMI. whatever changing any configuration on the core settings.
i think you may help me a lots by providing your core settings,,,can you past that or send me mails, email@example.com
03-29-2012 05:32 PM
I would also recommend trying the example design that comes with the core to rule out any un-expected accesses from the system that may be occurring when Windows boots that you are not accounting for in your design. The example design will handle all incoming request and should return an appropraiate completion. This might help you narrow down where the problem could be.