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

相关推荐
鬼手点金3 小时前
FPGA常用型号参考
fpga开发·verilog·vivado·xilinx·vhdl·altera·lattice
Kong_19941 天前
芯片开发学习笔记·二十九——大模型基础知识与 KV Cache 详解
fpga开发·芯片开发
m0_46644103詹湛1 天前
FPGA 定点数、小数与负数的加减乘除原理
fpga开发
zlinear数据采集卡1 天前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
zlinear数据采集卡1 天前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
FPGA小迷弟1 天前
Vivado中高速收发器GTX/GTH的配置与调试实战
fpga开发·fpga·硬件开发
minglie11 天前
简易寄存器接口SMMR---iic控制器
fpga开发
FPGA小迷弟1 天前
Vivado ILA与VIO调试工具实战指南:从入门到精通
fpga开发·fpga·硬件开发
FPGA小迷弟2 天前
FPGA状态机设计详解:从Moore到Mealy的完整指南
fpga开发·fpga
zlinear数据采集卡2 天前
D223的PWM电机控制:6路独立脉冲+加减速算法深度解析
arm开发·stm32·嵌入式硬件·算法·fpga开发·架构