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