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 源码。

相关推荐
dadaobusi1 小时前
学习:chiesel,scala
学习·fpga开发·scala
爱吃汽的小橘2 小时前
异步FIFO核心揭秘:格雷码与指针同步
fpga开发
璞致电子3 小时前
基于 P201Pro | 接收端基础知识——Costas环锁定后为何仍会错?DQPSK与前导码相位校正(6)
经验分享·fpga开发·ad9361·软件无线电·sdr·qpsk·pzsdr
璞致电子21 小时前
基于 AD9361 (PZSDR‑P201Pro) 软件无线电实战综述:从板卡选型、硬件平台升级到 GNU Radio QPSK 完整收发链路
经验分享·嵌入式硬件·fpga开发·软件无线电·sdr·璞致电子
炎龙铠甲会合体1 天前
从 SPEC 到上板:在 Zynq-7020 上用 RTL 手写一个 YOLO 卷积加速器(完整教程)
yolo·fpga开发·axi·芯片验证
FPGA小徐1 天前
Vivado 按键消抖与复位模块代码修复详解:KEY_TOP、key、rst_gen 完整实战
fpga开发
炎龙铠甲会合体1 天前
AXI2ICACHE— AXI4-Full 四路组相联指令 Cache 设计与 UVM 验证
fpga开发·面试·芯片验证
bingcheby1 天前
FMQL15/20/45 (复旦微青龙系列 PSOC)新手使用说明
fpga开发
漫漫长远1 天前
低功耗UPF介绍(一)
笔记·嵌入式硬件·学习·fpga开发
自小吃多2 天前
【Verilog/FPGA】存储器(数组)
嵌入式硬件·fpga开发