Zynq + Microblaze разделяет память DDR через интеллектуальное соединение - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть блочный дизайн с Zynq и Microblaze на плате Xilinx Zed.

Я хочу, чтобы микроблэйз мог получить доступ к памяти DDR, совместно используемой с ядрами arm в PS.Мой микроблейз использует кеш.На микроблейзе M_AXI_DC, M_AXI_IC есть два порта AXI, которые необходимо подключить, чтобы иметь доступ к памяти PS DDR.

Микроблэйз порты - AXI4, Zynq использует AXI3.Как подключить M_AXI_DC, M_AXI_IC?

2.1.Совместное интеллектуальное соединение для портов IC и DC?

     mb M_AXI_DC, M_AXI_IC <-smart interconnect-> S_AXI_HP0

или

2.2.Два отдельных интеллектуальных межсоединения для портов?

     mb M_AXI_DC <-smart interconnect 1-> S_AXI_HP0 zynq 

     mb M_AXI_IC <-smart interconnect 2-> S_AXI_HP1 zynq

или, может быть,

2.3.Одно интеллектуальное соединение, подключенное к HP0 и HP1:

     mb M_AXI_DC                         S_AXI_HP0 zynq
              <-smart interconnect 1->            
     mb M_AXI_IC                         S_AXI_HP1 zynq

2.3.Различаются ли характеристики 2.1, 2.2 или 2.3?

1 Ответ

0 голосов
/ 27 февраля 2019

Подход 2.3 - наиболее эффективное использование ресурсов PL для доступа к кешу.Думайте о соединении как о маршрутизаторе.Вам нужен один для портов Cache и отдельный для периферийных устройств.

То, что вы, кажется, остановили, это порт DP.Этот порт, как данные перемещаются из DDR в МБ.Если вы перемещаете много данных, вы вместо этого используете DMA.

См. xapp1093 Page 3 На рисунке 1. показана схема, представляющая законченный дизайн с кодом.

...