在介绍axi之前,先简单说一下总线、接口以及协议的含义
总线、接口和协议,这三个词常常被联系在一起,但是我们心里要明白他们的区别。
总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。
接口是一种连接标准,又常常被称之为物理接口。
协议是传输数据的规则。
1.简介
axi4总线协议是arm公司提出的amba(advanced microcontroller bus architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。
axi4总线协议规定的数据传输方式是猝发式的。它的地址/控制和数据相位是分离的,支持不对齐的数据传输。在突发传输中,使用首字节选通方式,只需要首地址,在独立的读写数据通道,采用独立的地址、控制和数据周期进行数据传输,支持非对齐方式的数据传输,能够发出多个未解析的地址,从而完成无序的数据传输交易,并更加容易并行时序收敛。
axi是amba 中一个新的高性能协议。axi 技术丰富了现有的amba 标准内容,满足超高性能和复杂的片上系统(soc)设计的需求。
常用的axi总线有:axi4、 axi_lite、axi_stream。
axi4:主要面向高性能地址映射通信的需求,允许最大256轮的数据突发传输;
axi4-lite:是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元;
axi4-stream:面向高速流数据传输,去掉了地址项,允许无限制的数据突发传输规模。
axi4总线分为主、从两端,两者间可以连续的进行通信。
2. axi_lite 协议
axi总线的6个通道
( 1) 读地址通道, 包含 arvalid, araddr, arready信号;
( 2) 读数据通道, 包含 rvalid, rdata, rready, rresp信号;
( 3) 写地址通道, 包含 awvalid, awaddr, awready信号;
( 4) 写数据通道, 包含 wvalid, wdata, wstrb, wready信号;
( 5) 写应答通道, 包含 bvalid, bresp, bready信号;
( 6) 系统通道, 包含 aclk, aresetn信号。
axi4总线和axi4-lite总线的信号也有他的命名特点:
读地址信号都是以ar开头( a:address;r:read)
写地址信号都是以aw开头( a:address;w:write)
读数据信号都是以r开头( r:read)
写数据信号都是以w开头( w:write)
3.axi_stream 协议
axi4-stream总线的组成有:
( 1) aclk 信号:总线时钟, 上升沿有效;
( 2) aresetn 信号:总线复位, 低电平有效
( 3) tready 信号:从机告诉主机做好传输准备;
( 4) tdata 信号:数据, 可选宽度32,64,128,256bit
( 5) tstrb 信号:字节修饰符, 每一bit对应tdata的一个有效字节, 宽度为tdata/8,用来描述tdata相关字节内容作为一个数字字节或者一个位置字节被处理。
( 6) tlast 信号:主机告诉从机该次传输为突发传输的结尾;
( 7) tvalid 信号:主机告诉从机数据本次传输有效;
( 8) tuser 信号 :用户定义信号, 宽度为128bit。
4.其他
4.1 axi架构
axi协议是基于burst的传输,并且定义了5个独立的传输通道:
读地址通道、读数据通道、写地址通道、写数据通道、写响应通道。
地址通道携带控制消息用于描述被传输的数据属性;
数据传输使用写通道来实现“主”到“从”的传输;
“从”使用写响应通道来完成一次写传输;
读通道用来实现数据从“从”到“主”的传输。
图4-1 读结构
图4-2 写架构
axi是基于valid/ready的握手机制数据传输协议,传输源端使用valid表明地址/控制信号、数据是有效的,目的端使用ready表明自己能够接受信息。
读/写地址通道:读、写传输每个都有自己的地址通道,对应的地址通道承载着对应传输的地址控制信息。
读数据通道:读数据通道承载着读数据和读响应信号包括数据总线(8/16/32/64/128/256/512/1024bit)和指示读传输完成的读响应信号。
写数据通道:写数据通道的数据信息被认为是缓冲(buffered)了的,“主”无需等待“从”对上次写传输的确认即可发起一次新的写传输。写通道包括数据总线(8/16…1024bit)和字节线(用于指示8bit 数据信号的有效性)。
写响应通道:“从”使用写响应通道对写传输进行响应。所有的写传输需要写响应通道的完成信号。
图4-3 接口与互联
axi协议提供单一的接口定义,能用在下述三种接口之间:master/interconnect、slave/interconnect、master/slave。
可以使用以下几种典型的系统拓扑架构:
共享地址与数据总线
共享地址总线,多数据总线
multilayer多层,多地址总线,多数据总线
在大多数系统中,地址通道的带宽要求没有数据通道高,因此可以使用共享地址总线,多数据总线结构来对系统性能和互联复杂度进行平衡。
寄存器片(register slices):
每个axi通道使用单一方向传输信息,并且各个通道直接没有任何固定关系。因此可以可以在任何通道任何点插入寄存器片,当然这会导致额外的周期延迟。
使用寄存器片可以实现周期延迟(cycles of latency)和最大操作频率的折中;使用寄存器片可以分割低速外设的长路径。
4.2 信号描述
表 4-4 全局信号
表 4-5 写地址通道信号
表 4-6 写数据通道信号
表 4-7 写响应通道信号
表 4-8 读地址通道信号
表 4-9 读数据通道信号
表 4-10 低功耗接口信号
4.3 信号接口要求
4.3.1时钟复位
时钟:
每个axi组件使用一个时钟信号aclk,所有输入信号在aclk上升沿采样,所有输出信号必须在aclk上升沿后发生。
复位:
axi使用一个低电平有效的复位信号aresetn,复位信号可以异步断言,但必须和时钟上升沿同步去断言。
复位期间对接口有如下要求:①主机接口必须驱动arvalid,awvalid,wvalid为低电平;②从机接口必须驱动rvalid,bvalid为低电平;③所有其他信号可以被驱动到任意值。
在复位后,主机可以在时钟上升沿驱动arvalid,awvalid,wvalid为高电平。
4.3.2基本读写传输
握手过程
5个传输通道均使用valid/ready信号对传输过程的地址、数据、控制信号进行握手。使用双向握手机制,传输仅仅发生在valid、ready同时有效的时候。下图是几种握手机制:
图 4-11 valid before ready 握手
图 4-12 ready before valid 握手
图 4-13 valid with ready 握手
4.3.3 通道信号要求
通道握手信号:每个通道有自己的xvalid/xready握手信号对。
写地址通道:当主机驱动有效的地址和控制信号时,主机可以断言awvalid,一旦断言,需要保持awvalid的断言状态,直到时钟上升沿采样到从机的awready。awready默认值可高可低,推荐为高(如果为低,一次传输至少需要两个周期,一个用来断言awvalid,一个用来断言awready);当awready为高时,从机必须能够接受提供给它的有效地址。
写数据通道:在写突发传输过程中,主机只能在它提供有效的写数据时断言wvalid,一旦断言,需要保持断言状态,知道时钟上升沿采样到从机的wready。wready默认值可以为高,这要求从机总能够在单个周期内接受写数据。主机在驱动最后一次写突发传输是需要断言wlast信号。
写响应通道:从机只能它在驱动有效的写响应时断言bvalid,一旦断言需要保持,直到时钟上升沿采样到主机的bready信号。当主机总能在一个周期内接受写响应信号时,可以将bready的默认值设为高。
读地址通道:当主机驱动有效的地址和控制信号时,主机可以断言arvalid,一旦断言,需要保持arvalid的断言状态,直到时钟上升沿采样到从机的arready。arready默认值可高可低,推荐为高(如果为低,一次传输至少需要两个周期,一个用来断言arvalid,一个用来断言arready);当arready为高时,从机必须能够接受提供给它的有效地址。
读数据通道:只有当从机驱动有效的读数据时从机才可以断言rvalid,一旦断言需要保持直到时钟上升沿采样到主机的bready。bready默认值可以为高,此时需要主机任何时候一旦开始读传输就能立马接受读数据。当最后一次突发读传输时,从机需要断言rlast。
4.3.4 通道间关系
axi协议要求通道间满足如下关系:
写响应必须跟随最后一次burst的的写传输
读数据必须跟随数据对应的地址
通道握手信号需要确认一些依耐关系
通道握手信号的依耐关系
精彩推荐至芯科技fpga就业培训班——助你步入成功之路、11月30号北京中心开课、欢迎咨询!基于risc-v加速器实现现场可编程门阵列 cnn异构的控制方案
基于fpga实现分离用软件的图像处理系统设计
扫码加微信邀请您加入fpga学习交流群
欢迎加入至芯科技fpga微信学习交流群,这里有一群优秀的fpga工程师、学生、老师、这里fpga技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!
点个在看你最好看
原文标题:axi总线协议总结
文章出处:【微信公众号:fpga设计论坛】欢迎添加关注!文章转载请注明出处。
广播级20倍4K会议摄像机应用技术详解
Windows和Linux,哪个更受人的青睐
从VR硬件到VR媒体 有VR厂商规划下一个大动作
村田制作所PTC热敏电阻的产品阵容扩大
与苹果分道扬镳后,Imagination发布第十代GPU产品
AXI总线协议总结
混频器是线性还是非线性?
如何在工控机上实现双4G同时通信功能
华为成为俄罗斯在线出售智能手机的第一品牌
FLIR热像仪的工作原理及应用分析
天津为打造机器人产业集聚高地,瞄准了10类标志性机器人
区块链将成为自适应学习的催化剂
大模型加持手术机器人,脑科手术取得突破!
运营商共建共享网络将会成为一种网络建设的新趋势
干式变压器的结构特点及分类
日本制造业机器人订单创近6年新低水准,连续第4个月陷入萎缩
基于OmniVision的OV5640设计的USB摄像头模块
在线式硫化氢检测仪的操作步骤介绍
宁夏“互联网﹢医疗健康”规定不能完全使用人工智能代替医疗行为
麦肯锡报告称大多数工作将被人工智能接管