FPGA и PCIe Swich

Мы планируем разработать автономную плату с одной Xilinx FPGA, которая должна взаимодействовать с несколькими встроенными модулями. Некоторые из этих модулей имеют интерфейс PCIe и, таким образом, работают как конечная точка PCIe. У нас не так много опыта в этой области, но на данный момент нам удалось узнать, что нам нужно использовать IP-ядро PCIe внутри FPGA, работающее как корневой порт, для связи с этими чипами. Насколько я понимаю, нам также нужно использовать коммутатор PCIe между FPGA и конечными точками для расширения шины PCIe. Для управления всей связью между этими устройствами мы думаем о внедрении программного ядра MicroBlaze CPU и PetaLinux.

Мои вопросы:

1-Кто отвечает за перечисление конечных точек PCIe, ОС PetaLinux или IP-ядро корневого порта?

2-С переключателем PCIe посередине мне нужен какой-то драйвер для его работы, или он полностью прозрачен, а ОС или корневой порт просто видят все конечные точки PCIe, подключенные к нисходящему порту?

Заранее спасибо


person V. Bexiga    schedule 30.01.2018    source источник


Ответы (1)


Операционная система, драйверы и так называемая подсистема PCIe за корневым комплексом PCIe выполняют перечисление.

Как следует из названия «переключатель», он прозрачен. Тем не менее, некоторые коммутаторы имеют дополнительные функции для программирования количества каналов, количества линий, QoS, горячего аварийного переключения и т. д.

Переключатель PCIe также настраивается при перечислении драйвером подсистемы PCIe.

Эта книга может помочь: PCI Express Technology 3.0 от Mindshare Press.

person Paebbels    schedule 30.01.2018
comment
Обратите внимание, что ядро ​​Linux зависит от BIOS для перечисления устройств PCIe. - person Jamey Hicks; 16.02.2018
comment
БИОСа больше нет. Регистрация и перечисление выполняются в Linux. Вы можете увидеть строки в бутлоге. - person Paebbels; 16.02.2018