我在Xilinx Zed板上有一个带有Zynq和Microblaze的模块设计。
我希望Microblaze能够访问与PS中的arm corer共享的DDR内存。我的微火使用缓存。 Microblaze M_AXI_DC,M_AXI_IC上需要连接两个AXI端口,以便它们可以访问PS DDR存储器。
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在性能上有区别吗?
答案 0 :(得分:1)
方法2.3是最有效地使用PL资源进行缓存访问。将互连视为路由器。缓存端口需要一个,外围设备则需要一个。
您似乎遗漏的是DP端口。该端口是数据从DDR移动到mb的方式。如果您移动大量数据,则使用DMA代替。
请参见xapp1093第3页。图1.展示了带有代码的完整设计。