我们正在使用Xilinx Vivado开发带有VC709 FPGA的定制处理器,Microblaze和一些外设的系统。我们在“用于PCI Express Gen 3的AXI桥”中使用了两个“ PCIe:BARs”。
我们在PCI Express模块的模块配置中所做的更改未反映在主机端。
例如,当我们将BAR0设置为2GB,将BAR1设置为2MB时,将得到两个区域,分别为4KB和4MB。当我们尝试改变不同的BAR组合时,这种情况不会改变。
$lspci -vv
0a:00.0 Memory controller: Xilinx Corporation Device 7038
Subsystem: Xilinx Corporation Device 0007
Physical Slot: 3
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 16
Region 0: Memory at fbff0000 (32-bit, non-prefetchable) [size=4K]
Region 1: Memory at fb800000 (32-bit, non-prefetchable) [size=4M]
Capabilities: <access denied>
Kernel modules: riffa
我如何调试它?
答案 0 :(得分:0)
解决方案
我一直在使用Xilinx SDK来对FPGA进行编程。但是,SDK始终在加载旧的位流。我已经通过Vivado本身对FPGA进行编程来解决了这个问题。
工具> Xilinx硬件管理器>打开目标>自动连接>程序设备
信用:Mandar Datar(HPC实验室,孟买理工学院EE系)