APB协议是一种低成本接口,针对最小化功耗和降低接口复杂性进行了优化,不支持流水线处理,是一种简单的同步协议,每次传输至少需要两个周期来完成。
APB接口旨在访问外围设备的可编程控制寄存器,外围设备通常通过APB桥连接到主内存系统。例如,可以使用从AXI到APB的桥接器连接多个APB外围设备到AXI内存系统。
APB传输由APB桥发起,APB桥也可以被称为请求者,外围设备响应请求,外围设备也可以被称为完成者。
APB 版本信息
AMBA 1 APB Specification
最初于1996年推出,最后在1998年更新(文档名为APB Specification Rev E),该版本的APB被认为是APB1,目前已过时。
AMBA 2 APB Specification (Issue A)
于1999年推出(文档名为AMBA Specification Rev 2),该版本的APB被认为是APB2。
AMBA 3 APB Specification (Issue B)
于2004年推出(文档名为AMBA APB Protocol Specification v1.0),该版本的APB被认为是APB3,新增了以下功能:
- 等待状态:通过PREADY信号来指示APB传输的完成。
- 错误报告:通过PSLVERR信号来指示传输失败。
AMBA 4 APB Specification (Issue C)
于2010年推出(文档名为AMBA APB Protocol Specification v2.0),该版本的APB被认为是APB4,新增了以下功能:
- 事务保护:通过PPROT信号支持安全和非安全事务。
- 稀疏数据传输:通过PSTRB信号支持在写数据总线上的稀疏数据传输。
AMBA 5 APB Specification (Issue D)
于2021年推出(文档名为AMBA APB Protocol Specification),该版本的APB被认为是APB5,新增了以下功能:
- 唤醒信号:支持外围设备的唤醒功能。
- 用户信号:支持用户自定义的信号。
- 奇偶校验保护和校验信号:为接口提供奇偶校验保护功能。
AMBA 5 APB Specification (Issue E)
于2023年推出(文档名为AMBA APB Protocol Specification),该版本的APB依旧被认为是APB5,新增了以下功能:
- 领域管理扩展 (RME):支持领域管理扩展,以提高系统安全性。