Отображение областей PCIe BAR размером более 4 МБ в Xilinx Vivado - PullRequest
0 голосов
/ 06 декабря 2018

Мы разрабатываем систему с пользовательским процессором, Microblaze и некоторыми периферийными устройствами в FPGA VC709 с использованием Xilinx Vivado.Мы используем два «PCIe: BAR» в «AXI Bridge для PCI Express поколения 3».

Изменения, которые мы вносим в конфигурацию блока PCI Express, не отражаются на стороне хоста.

Например, когда мы устанавливаем BAR0 для 2 ГБ и BAR1 для 2 МБ, мы получаем две области по 4 КБ и 4 МБ.И это не изменится, когда мы попробуем изменить различные комбинации 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

Как я могу отладить его?

1 Ответ

0 голосов
/ 15 декабря 2018

Решение

Я использую Xilinx SDK для программирования ПЛИС.Но это SDK всегда загружал старый поток битов.Я решил это, запрограммировав FPGA с помощью самого Vivado.

Инструменты> Диспетчер оборудования Xilinx> Открыть цель> Автоподключение> Программное устройство

Кредиты: Mandar Datar (HPC Lab, Отдел EE, IITBombay)

...