【ARM AMBA AXI 入门 10 - AXI 总线 DATA信号与 STRB 信号之间的关系 】

文章目录

    • [AXI STRB 信号](#AXI STRB 信号)

AXI STRB 信号

AXI总线是ARM公司设计的高性能处理器接口,其中STRBDATA信号在AXI协议中有特殊的含义和关系。

DATA信号 :在AXI中,DATA信号用于在读写操作中传输实际的数据。数据的大小可以根据AXI接口的位宽来变化,例如32位、64位或128位等。

STRB信号 :STRB是一个字节使能信号,它表示哪些字节是有效的。每个字节有一个相关的STRB信号,每一个STRB信号对应的字节是按照字节地址对齐的。例如,在32位的数据总线上,STRB的四个信号分别对应四个字节,STRB[0]对应最低字节,STRB[3]对应最高字节。

  • 如果数据总线是32位宽,那么就会有4个STRB信号:STRB[3:0]
  • 如果数据总线是64位宽,那么就会有8个STRB信号: STRB[7:0]

STRB信号与DATA信号之间的关系如下:当进行写操作时,DATA信号传输要写入的数据,而STRB信号指示在DATA信号中哪些字节是有效的。

在进行写操作时,只有当对应的STRB信号为高电平(或者说为1)时,相应的字节才会被写入。如果STRB信号为低电平(或者为0),那么对应的字节就不会被写入,其值保持不变。

例如,如果DATA信号传输的是32位数据,但只有低16位是有效的,那么STRB信号就应该设置为"11 00"。这意味着只有低16位(对应前两个STRB信号)是有效的,而高16位(对应后两个STRB信号)是无效的。

例如,如果DATA信号传输的是64位数据,且所有位都是有效的,那么那么STRB信号的值就应该为"0xff"如下图:

总的来说,STRB信号在AXI总线协议中用于控制DATA信号中哪些字节有效,哪些字节无效。

相关推荐
宋隽颢3 小时前
STM32学习【4】ARM汇编(够用)
arm开发·stm32·学习
sz66cm8 小时前
Linux基础 -- ARM 32 位架构动态注入代码技术文档
linux·arm开发·架构
weixin_1122331 天前
基于ARM的嵌入式温度控制系统的设计
arm开发
亿道电子Emdoor1 天前
【ARM】如何通过ARMDS的Map文件查看堆栈调用情况
arm开发·stm32·单片机
___波子 Pro Max.2 天前
ARM Cortex-M处理器中的MSP和PSP
linux·arm开发
WIFI_BT_DEV2 天前
Linux设备驱动开发-UART驱动
linux·arm开发·驱动开发·嵌入式硬件·硬件架构·信息与通信·gnu
WIFI_BT_DEV2 天前
Linux设备驱动开发-PCI/PCIE
c语言·arm开发·驱动开发·嵌入式硬件·硬件架构·信息与通信·信号处理
爱学嵌入式2 天前
linux驱动编程配置----(二)
linux·运维·arm开发
WIFI_BT_DEV2 天前
Linux设备驱动开发-Pinctrl子系统使用详解
linux·c语言·arm开发·驱动开发·嵌入式硬件·硬件工程·信息与通信
至少零下七度3 天前
如何查找 UBuntu的 arm版本
arm开发·数据库·ubuntu