用途1.自然选通产生的以上接口的以AXI GP口的形式输出的; 用途2.创建IP的时候选择AXI接口: 非常注意: 直接生成的方法至今仍存在BUG,需要采用此方法解决: Vitis IDE 2021.1 custom AXI IP core compile error (xilinx.com) 参考操作代码: 官方参考:注意!GP口每次操作的偏移量都是4个字节!因为是32位端口! View...
内部交互主要是使用AXI接口。AXI是一种主从接口。虽然看起来很复杂,但也是主机发送地址然后读写数据。PS端通过芯片内控制器来发送或者接收AXI接口信号,和SPI之类的主从接口一样。 PL端通过IP核或者自写的逻辑程序收发AXI接口程序。 通过如下的图(ZYNQ7000系列的)可以看出PS端的GP AXI连接一个控制器,HP AXI连接一个...
使用AXI_GP接口进行PS与PL之间的数据交互,无论是基于BRAM方式还是直接交互方式,主要步骤基本一致,包含: (1)搭建BD框图; (2)分配交互地址; (3)SDK中对交互地址直接访问进行读写,完成数据交互过程。 值得注意的是:基于AXI_GP接口的数据交互适用于具有轻量级,小批量数据传输,简单控制的场合。
此时,打开Zynq系统的例化模板文件zstar_zynq_ps_wrapper.v,可以看到有很多AXI_GP0打头的信号增加到了系统中,这些信号就是Zynq系统作为主机连接到PL的AXI GP总线接口。接下来我们要做的事就是设计一个AXI GP从机接口和AXI_GP0_*接口连接起来,实现Zynq PS端可以读写的寄存器接口。 编辑顶层源码,将我们的AXI GP从...
将此IP 模块拖入设计中,然后将其连接到 AXI GP 总线,其中 Vivado 提供运行连接自动化工具。 运行该工具会产生我们可以实施的设计。 可以通过单击地址编辑器选项卡来修改外设的地址范围。请注意,4k 地址空间是允许的最小地址空间,这对于我们的 4 寄存器示例来说过于慷慨了。幸运的是,Zynq SoC 中的 ARM Cortex-A9...
AXI_HP和AXI_GP异同 首先给出ZYNQ SoC的系统框图,如下图所示。在图中,箭头方向代表主机到从机的方向。 对于GP接口(general purpose)通用目的接口,有四个接口(两个从端口,两个主端口);HP接口(high-performance purpose)高性能接口,有四个接口(四个都是从端口)。GP接口直接连接到的是中央互联区(central interconn...
AXI_HP和AXI_GP异同 首先给出ZYNQ SoC的系统框图,如下图所示。在图中,箭头方向代表主机到从机的方向。 对于GP接口(general purpose)通用目的接口,有四个接口(两个从端口,两个主端口);HP接口(high-performance purpose)高性能接口,有四个接口(四个都是从端口)。GP接口直接连接到的是中央互联区(central interconn...
如上图所示,这个型号的GP AXI可以作为主机也可以作为从机,来与PL端交互数据。HP AXI的传输速度快,通过Programmable Logic to Memory Interconnect可以连接到DDR控制器,可以访问DDR数据。流程是:PL端的逻辑程序发出AXI接口的时序信号,Programmable Logic to Memory Interconnect接收到后转化成可以访问DDR控制器的信号来读写...
在这个应用中,我们可以看到用到了ZYNQ的GP口,M_AXI_GP0,M代表的是 master,此接口用于访问PL端数据。 复位信号由ZYNQ的复位输出提供,在较大规模的电路设计中,最好是每个时钟域电路都加一个复位模块。 (5)修改GPIO端口的名称为“gpio_led”。 (6)再添加一个AXI GPIO,连接PL端按钮。配置GPIO参数,将其设置为...
Zynq将ARM和FPGA整合到了一个芯片上,它的过人之处不仅是功耗、面积、成本的优化,更多的是将二者之间原本极为受限的数据交互方式转移到芯片内部完成,4条AXI GP通道(2个从机、2个主机)和4条AXI HP通道(均为从机)能够大大提升系统数据交互带宽,使得软硬协同设计变得更为灵活。AXI HP总线是专为大吞吐量数据传输设...