AMBA-APB总线是怎样进行读写操作的?

电子说

1.2w人已加入

描述

1 APB介绍

状态机

高级外设总线 (APB) 是高级微控制器总线架构 (AMBA) 协议系列的一部分。它定义了一个低成本接口,该接口针对最低功耗和降低的接口复杂性进行了优化。

APB 协议不是流水线的,使用它连接到不需要 AXI 协议高性能的低带宽外设。

APB 协议将信号转换与时钟的上升沿相关联,以简化将 APB 外设集成到任何设计流程中的过程。每次传输至少需要两个周期。

APB 可能相连的接口:

• AMBA 高级高性能总线 (AHB)

• AMBA 高级高性能总线精简版 (AHB-Lite)

• AMBA 高级可扩展接口 (AXI)

• AMBA 高级可扩展接口精简版 (AXI4-Lite) 可以使用它来访问外围设备的可编程控制寄存器。

APB 版本:

• AMBA 2 APB Specification

• AMBA 3 APB Protocol Specification v1.0

• AMBA APB Protocol Specification v2.0

2 信号描述

状态机

状态机

3 操作状态机

状态机

IDLE: 这是 APB 的默认状态。 SETUP: 当需要传输时,总线进入 SETUP 状态,此时相应的选择信号 PSELx 被置位。 

总线只在一个时钟周期内保持在 SETUP 状态,并且总是在时钟的下一个上升沿移动到 ACCESS 状态。

ACCESS: 使能信号 PENABLE 在 ACCESS 状态下有效。

地址、写、选择和写数据信号在从 SETUP 到 ACCESS 状态的转换期间必须保持稳定。

退出 ACCESS 状态由从机的 PREADY 信号控制:

• 如果从机将 PREADY 保持为低电平,则外围总线保持在 ACCESS 状态。

• 如果 PREADY 被从器件驱动为高电平,则退出 ACCESS 状态,如果不需要更多传输,则总线返回 IDLE 状态。或者,如果另一个传输紧随其后,则总线直接移动到 SETUP 状态。

4 APB写操作

状态机

时序分析: 在 T1,写传输开始地址 PADDR、写数据 PWDATA、写信号 PWRITE 和选择信号 PSEL 开始,在 PCLK 的上升沿寄存。这称为写传输的建立阶段。

在 T2,使能信号 PENABLE 和就绪信号 PREADY 在 PCLK 的上升沿寄存。

置位时,PENABLE 指示传输的访问阶段的开始。

置位时,PREADY 表示从机可以在下一个上升沿完成传输 PCLK 的边缘。

地址 PADDR、写数据 PWDATA 和控制信号都保持有效,直到传输在 T3 完成,即访问阶段结束。

使能信号 PENABLE 在传输结束时无效。

选择信号 PSEL 也被置为无效,除非在传输之后紧接着另一个传输到同一外设。

5 APB读操作

状态机

时序分析: 从图中可发现除了PWRITE信号是倒过来有效外,APB 读操作时序图和APB写操作时序图非常相似,在这里不再作详细的解释。 要特别注意的是,在 T3 后,也就是在进入ACESS周期后,APB Slave必须要将 Master 所要读取的数据准备好,以便 Master 可以在 ACESS 周期末被 T4 正时钟沿触发时正确的将数据读取。    





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分