当前位置: 首页 > news >正文

AXI4-Stream

AXI4-Stream

  • 简介
  • 信号
  • 握手机制
  • 字节类型
  • TKEEP和TSTRB
  • AXI4-Stream Data FIFO
    • 正常模式
    • packet模式
  • AXI4-Stream Interconnect

简介

这是一种连续流接口,不需要地址线(很像 FIFO ,一直读或一直写就行)。对于这类 IP ,ARM 不能通过上面的内存映射方式控制( FIFO 根本没有地址的概念),必须有一个转换装置,例如 AXI DMA 模块来实现内存映射到流式接口的转换。 AXI Stream 适用的场合有很多:视频流处理;通信协议转换;数字信号处理;无线通信等。其本质都是针对数据流构建的数据通路,从信源(例如 ARM 内存、 DMA 、无线接收前端等)到信宿(例如 HDMI 显示器、高速 AD 音频输出,等)构建起连续的数据流。这种接口适合做实时信号处理

信号

SignalSourceDescriptionDefault
ACLKClock source时钟,上升沿有效/
ARESETnReset source复位,低有效/
TVALIDMaster高有效,表示 Master 已准备好数据。当 TVALID 和 TREADY 同时为高时传输数据0
TREADYSlave高有效,表示 Slave 可以接收数据1
TDATA[(8n-1):0]Master发送数据,位宽为字节整数倍0
TSTRB[(n-1):0]MasterTDATA 类型指示,1为数据字节(data byte),0为位置填充字节(position byte)①只有 TKEEP 时,TSTRB=TKEEP;②两者都没有时,默认全为1
TKEEP[(n-1):0]Masternull bytes 指示。0为 null byte,可以从 stream 中删除;1为非 null byte没有 TKEEP 时,默认全为 1
TLASTMaster包的最后一个数据指示,高有效
TID[(i-1):0]Master用于指示不同类型 stream 数据0
TDEST[(d-1):0]Master提供 stream 路由信息0
TUSER[(u-1):0]Master用户自定义信号,直接透传0

握手机制

数据在 TVALID 和 TREADY 同时有效时进行传输,常见几种握手情况如下所示:

  1. TVALID 先于 TREADY 有效

在这里插入图片描述

  1. TREADY 先于 TVALID 有效

在这里插入图片描述

  1. TVALID 和 TREADY 同时有效(Slave 判断到 TVALID 有效,立即置位 TREADY)

在这里插入图片描述

字节类型

分为 Data byte、Position byte、Null byte 三种。

  • Data byte:该类型字节及其内容必须由 Master 传输到 Slave;
  • Position byte:该类型字节必须由 Master 传输到 Slave,但是内容不要求收发一致,因为只需要位置信息;
  • Null byte:该类型字节不包含任何信息。在传输过程中,可以插入或者删除 Null byte。

interconnect 不允许修改 Position byte,但允许插入或删除 Null byte。

TKEEP和TSTRB

TKEEPTSTRBData TypeDescription
11Data byte有效数据
10Position byte位置信息
00Null byte无效数据
01Reserved不适用

AXI4-Stream Data FIFO

该 IP 无法根据 TKEEP 和 TSTRB 自动丢数据。

正常模式

Master 从 Slave 收到数据后延迟 3个周期后输出

在这里插入图片描述

packet模式

Master 从 Slave 收到最后一个数据后延迟 3个周期后输出 TVALID

在这里插入图片描述

AXI4-Stream Interconnect

该 IP 可实现 TDEST 路由,但是无法根据 TKEEP 和 TSTRB 自动丢数据。

在这里插入图片描述


http://www.mrgr.cn/news/36336.html

相关文章:

  • DNS协议解析
  • 关联式容器——map与set
  • 单链表的实现(C语言)
  • ③无需编程 独立通道 Modbus主站EtherNet/IP转ModbusRTU/ASCII工业EIP网关串口服务器
  • 深入探秘 WorkManager:Android 异步任务管理的强大工具
  • Solidity智能合约中的异常处理(error、require 和 assert)
  • 回归预测 | Matlab基于SO-SVR蛇群算法优化支持向量机的数据多输入单输出回归预测
  • vue项目报错: At least one is required in a single file component.的主要原因及解决办法
  • linux服务器安装原生的php环境
  • Adaptive Object Detection with Dual Multi-Label Prediction
  • JS面试真题 part6
  • Structure-Aware Transformer for Graph Representation Learning
  • 量化交易四大邪术之三:春去花还在
  • 《动手学深度学习》笔记2.2——神经网络从基础→进阶 (参数管理-每层的权重/偏置)
  • docker中搭建nacos并将springboot项目的配置文件转移到nacos中
  • Proto3 深度解读:Protobuf 的用法与实例分析(C++)
  • Springboot jPA+thymeleaf实现增删改查
  • 第二十八篇——用间篇:使用间谍,先学习花钱的价值观
  • Volume数据管理
  • 前缀和(3)_寻找数组的中心下标