大数跨境

【AMBA】AXI3 与 AXI4 接口互联要点

【AMBA】AXI3 与 AXI4 接口互联要点 处理器+AI知识星球
2026-08-17
4
导读:在 SOC 设计中会同时存在 AXI3 接口 IP 与 AXI4 接口 IP,二者不能直接对接,需要协议转换处理,分AXI4 Master → AXI3 Slave、AXI3 Master → AXI
欢迎关注公众号《处理器+AI知识星球》,随时获取最新动态
上文介绍了AXI4和AXI3协议的主要区别,详见:【AMBA】一文搞懂AXI4与AXI3的区别
在 SOC 设计中会同时存在 AXI3 接口 IP 与 AXI4 接口 IP,二者不能直接对接,需要协议转换处理,分AXI4 Master → AXI3 SlaveAXI3 Master → AXI4 Slave两种场景。

2.1 AXI4 Master 连接 AXI3 Slave

核心差异:AXI4 去掉写 ID(WID);AXI3 支持 2bit AxLOCK;AXI4 burst 最大 256 beat,AXI3 最大 16 beat。

  1. WID 信号处理(最关键)
    AXI4 Master 不存在 WID 信号,禁止直接将 AWID 直连 AXI3 Slave 的 WID。当 AXI4 Master 存在未完成(outstanding)写事务时,AWID 和当前写数据对应的 ID 并不匹配。
    标准处理:将 AWID 压入 FIFO,收到 WLAST 信号代表当前写数据传输完毕,再从 FIFO 读出对应的 AWID 给到 AXI3 Slave 的 WID。
  2. AxLOCK 信号位宽适配
    AXI3 的 AxLOCK 为 2bit,AXI4 AxLOCK 是 1bit。拼接规则:AxLOCK[1:0] = {1'b0, AXI4 Master的AxLOCK}
  3. Burst 长度约束
    AXI3 Slave 最大只支持 16 beat 突发,AXI4 Master 不能发出超过 16‑beat 的 burst 传输。
  4. 响应通道 BVALID 时序
    AXI3 Slave 输出 BVALID 要兼容 AXI4 协议时序要求,必要时修改从机逻辑。
  5. 冗余信号处理
    AXI4 新增的 QoS、REGION、USER 类信号,需要做适配处理。
  6. 总线版本建议
    尽可能在系统层面统一总线版本,减少跨版本转换带来的复杂度。

2.2 AXI3 Master 连接 AXI4 Slave

核心差异:AXI4 没有 WID;AXI4 AxLOCK 只有 1bit;AXI4 AxLEN 为 8bit,AXI3 AxLEN 为 4bit;AXI4 不支持写交错(Write interleaving)。

  1. WID 信号处理
    AXI4 Slave 没有 WID 端口,AXI3 Master 输出的 WID 直接悬空处理。
  2. AxLOCK 信号位宽适配
    AXI4 Slave 只取最低位:AXI4_Slave.AxLOCK = AXI3_Master.AxLOCK[0]
  3. AxLEN 位宽扩展
    AXI3 Master 的 AxLEN 只有 4bit,高位补 0 给到 AXI4 Slave:AXI4_Slave.AxLEN[7:4] = 4'h0,低 4 位直连 AXI3 Master 的 AxLEN。
  4. 禁止写交错(Write interleaving)
    AXI4 协议不支持写交错。如果原有 AXI3 Master 具备写交错能力,必须修改主设备逻辑关闭该特性,否则会协议报错。
  5. 冗余信号处理
    QoS、REGION、USER 等 AXI4 特有信号,做对应适配。
  6. 总线版本建议
    尽量系统总线统一 AXI3 或者 AXI4,降低跨协议转换风险。
资料下载方式:
关注微信公众号《处理器+AI知识星球》,后台回复axi即可获得所有资料的百度网盘链接。包括IH0022 issue B-issue L 所有protocol spec:

【声明】内容源于网络
0
0
处理器+AI知识星球
计算机体系结构、RISC-V、CPU、GPU、NPU、XPU等相关知识
内容 134
粉丝 0
处理器+AI知识星球 计算机体系结构、RISC-V、CPU、GPU、NPU、XPU等相关知识
总阅读1.9k
粉丝0
内容134