XILINX ZYNQ 7000 AXI总线 (二)

了解了AXI 的大部分内容后,开始做一个实战,就是完成AXI 结构的输入输出搭建。

一.创建一个IP

6.选择AXI FULL,创界主接口和从接口

8.可以看到XILINX AXI FULL 的源代码

二.创建一个新的工程,把IP导入到这个工程

2.创建 block design 放入两个AXI IP

三 设计

创建两个 接口进行回环

test 1 主机接口和test 0 从机接口连接。test 1 从机接口和 test 0 主机连接。

Aclk全部接在一起,复位也接在一起。

然后添加仿真代码

c 复制代码
`timescale 1ns / 1ps

module axi_tb1();
reg clk;
reg rst_n;
reg txn;
design_1 ins0
   (.m00_axi_aclk_0(clk),
    .m00_axi_aresetn_0(rst_n),
    .m00_axi_init_axi_txn_0(txn)
    );
    
always begin
  clk <= 0;
  
  #10;
  clk <= 1;
  #10;
end


initial begin
 rst_n = 0;
 txn =0 ;
 #100;
 rst_n = 1;
 #1000;
 txn = 1;
end
endmodule

运行后结果如下

txn是启动传输信号,其余信号在 AXI总线 (一)中提到,结合ARM AXI文档先看下时序图

1.通道

AW开头的为写地址通道,W开头的为写数据通道,B开头为写回应相应通道,R开头为读数据通道,AR为度地址通道。

2.握手机制每个通道都会有,VALID和READY两个信号。

看手册看了几次不如看一下波形图,手册中的握手机制应该可以理解了。VALID和READY同时为高后再下一个

ACLK时钟的上升沿锁存信息。信息是该通道需要传输的有效数据。

3.来看数据的传输

回到手册中的图写数据分为三个步骤,1地址,2数据,3回应

上图1 表示地址,握手后地址信息准备完毕。 2,数据握手保持高传输数据。

3需要看从机 的回复

读写时序都可以通过这样的方式确定。

下一篇 分析 XILINX 官方 AXI FULL 源码。

相关推荐
Aaron15884 小时前
AD9084和Versal RF系列具体应用案例对比分析
嵌入式硬件·算法·fpga开发·硬件架构·硬件工程·信号处理·基带工程
FPGA小迷弟6 小时前
modelsim使用教程,仿真技巧,精华帖
fpga开发·verilog·fpga·modelsim
华舞灵瞳9 小时前
学习FPGA(八)快速傅里叶变换
学习·fpga开发
stars-he13 小时前
FPGA学习笔记(7)以太网UDP数据报文发送电路设计(一)
笔记·网络协议·学习·fpga开发·udp
扮作大侠13 小时前
2024vitis无错误编译项目失败[ERROR] collect2.exe: error: ld returned 1 exit status
fpga开发
碎碎思14 小时前
从 JTAG 启动 Zynq-7000 嵌入式 Linux:使用 XSCT 全流程教程
linux·运维·服务器·fpga开发
minglie115 小时前
Tang-Nano-1K的rPLL
fpga开发
minglie115 小时前
Vitis HLS流水灯测试
fpga开发
风_峰1 天前
AMD 自适应SoC产品系列讲解
fpga开发
FPGA小c鸡1 天前
AXI-Full突发传输完全攻略:从INCR/WRAP/FIXED到4KB边界、地址计算、响应机制(附实战案例)
fpga开发