AXI4_stream协议详解

AXI4-stream协议介绍

AXI4-stream总线协议不同于AXI4-liteAXI4-full协议。后者是基于内存映射的,传输时需要提供要操作的内存地址。而AXI4-stream是面向流的传输,不涉及到内存地址。就像串口发送数据的时候,只按一定的波特率往出发送,不关心接收者存放的细节。因此,它不具有五个独立的协议通道。但握手过程和AXI4-liteAXI4-full一样。关于握手过程,请参看AXI总线协议介绍。

信号线详细描述

  1. 全局信号
    1. ACLK 全局时钟信号,在上升沿时对信号采样。所有的输入信号都通过上升沿采集,所有的输出信号都在上升沿时变化。
    2. ARESETn 全局复位信号,低电平有效。在复位期间,所有的xxVALID信号必须复位为低电平。其他的信号可以是任意值。
  2. 主机(master)控制的信号
    1. TVALID 握手信号
    2. TDATA 数据信号线
    3. TSTRB TDATA的内容修饰符,用于指示是数据字节还是位置字节。初学者默认为1即可.
    4. TKEEP TDATA的内容修饰符,用于指示是此字节是否为有效字节,和TSTRB配合使用。如下表。xilinx封装的ip中不使用此信号,所以默认为1。
      TSTRB TKEEP data type
      high high 数据字节
      high low 位置字节
      low low 无效字节
      low low 保留
    5. TLAST 置高表示本次流传输中的最后一个数据。
    6. TID 表示不同数据流的数据流标识符。xilinx封装的ip中没有此信号。
    7. TDEST 用于提供路由信息,xilinx封装的ip中没有此信号。
    8. TUSER AXI4协议留给用户自定义的。xilinx封装的ip中没有此信号。
  3. 从机(slave)控制的信号
    1. TREADY 握手信号

AXI4-stream主从交互仿真

  1. vivado创建AXI外设。
  2. 添加主从接口。
  3. 编写仿真tb文件。仿真相关的文件见附件axi-stream.zip。

下图是AXI4-stream主从交互的时序图,
AXI4_stream协议详解_第1张图片

文档参考

  1. IHI0022G_amba_axi_protocol_spec.pdf
  2. IHI0051A_amba4_axi4_stream_v1_0_protocol_spec.pdf
  3. ug761_axi_reference_guide.pdf

关于技术交流

此处后的文字已经和题目内容无关,可以不看。
qq群:825695030
微信公众号:嵌入式的日常
如果上面的文章对你有用,欢迎打赏、点赞、评论。二维码

你可能感兴趣的:(zynq,AXI-stream,AXI,AXI4-stream)