AXI信号描述

总体信号

信号描述
ACLK总体时钟
ARESETn总体复位信号,低有效

写地址通道信号

信号描述
AWID写地址ID,用来标识写操作,相同ID内响应不能乱序;不同ID间可以乱序
AWADDR写地址;
AWLENburst长度;表示相关地址数据传输次数,AWLEN+1
AWSIZEburst传输size,表示每次burst传输size;0->1byte;1->2bytes;2->4bytes;3->8bytes;4->16bytes;5->32bytes;6->64bytes;7->128bytes
AWBURSTburst类型;FIXED(00);INCR(01);WRAP(10)
AWLOCKAXI3:
2’00(Normal access);2‘b01(Exclusive access);
2’b10(Locked access);2’b11(Reserved);
AXI4:
1’b0(Normal access);1’b1(Exclusive access)
AWVALID写地址有效信号
AWREADYslave准备好接收写地址

写数据通道信号

信号描述
WID写数据ID;仅仅AXI3支持
WDATA写数据
WSTRBbit为1表示对应byte数据有效
WLAST表示一个写burst传输内最后一次传输
WVALID写有效
WREADYSLVAE准备好接收写数据

写响应通道信号

信号描述
BID写响应ID
BRESP写操作状态
BVALID写响应有效信号
BREADY表示MASTER准备好接收写响应

读地址通道信号

信号描述
ARID读地址ID,用来标识读操作;相同ID内响应不能乱序;不同ID间可以乱序
ARADDR读地址
ARLENbursy长度;表示一次burst传输包含的传输次数
ARSIZEburst size;表示一次burst传输内每次传输的size;0->1byte;1->2bytes;2->4bytes;3->8bytes;4->16bytes;5->32bytes;6->64bytes;7->128bytes
ARBURSTburst传输类型
ARLOCKAXI3:
2’00(Normal access);2‘b01(Exclusive access);
2’b10(Locked access);2’b11(Reserved);
AXI4:
1’b0(Normal access);1’b1(Exclusive access)
ARVALID读地址有效信号
ARREADY表示slave准备好接收读地址

读数据通道信号

信号描述
RID读数据ID
RDATA读数据
RRESP读操作状态
RLAST读last信号;表示一次burst传输内的最后一个
RVALID读有效信号
RREADY表示master准备好了接收读数据
### AXI 协议中的缓存相关信号解释 AXI (Advanced eXtensible Interface) 是一种高性能、高带宽和低延迟的总线接口标准,广泛应用于片上系统(SoC)设计中。为了支持高效的内存访问操作并优化数据传输性能,AXI定义了一系列与缓存管理有关的重要信号。 #### ARCACHE 和 AWCACHE 信号 ARCache 和 AWCache 字段用于描述事务属性,指示主设备希望次级设备如何处理该请求所涉及的数据。具体来说: - `0b0010` 表示正常非缓存不可缓冲读/写; - `0b0011` 表示正常缓存可缓冲读/写; 这些设置帮助次级端口决定是否可以将数据存储在其内部缓存里以及是否允许重新排序以提高效率[^1]。 #### AxPROT 保护信号 AxPROT字段提供了额外的安全性和一致性控制机制。对于每个地址通道(即读取路径上的ARProt或写入路径上的AWProt),此位域指定当前传输的操作权限级别及其特性: - **Bit[2]: Domain** - `0`: 正常世界(normal world) - `1`: 安全世界(secure world) - **Bits[1:0]: Cache Policy** - `00`: 非安全(non-bufferable),不进入任何级别的缓存。 - `01`: 缓冲(bufferable), 可能会放入L1/L2等高速缓存内。 - `10`: 已废弃不用。 - `11`: 设备类型(device type),通常指代那些不需要被CPU缓存的内容,比如外设寄存器。 通过这种方式,AXI能够有效地管理和协调多个主控单元之间的资源共享问题,在多核处理器架构下尤为重要。 ```python # Python伪代码展示如何配置AXI缓存策略 def configure_axi_cache_policy(is_secure_world, can_be_cached): axprot_value = 0 if is_secure_world: axprot_value |= 0x4 # Set secure bit if can_be_cached: axprot_value |= 0x2 # Enable caching policy return axprot_value ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值