目录
简介
高级外设总线(APB)是高级微控制器总线体系(AMBA)的总线层次的一部分并且为降低功率消耗和接口复杂性做了优化。
AMBA APB应该被用来连接任何一种低带宽且不需要高性能通道总线接口的外设。
最新版本的APB确保了所有信号转变仅和时钟的上升沿有关。这中改进意味着APB外设可以方便的集成到任何设计流程,并有以下优点:
在高频操作时性能得到提高;
性能独立于时钟的占空比;
静态通过使用单时钟边沿简化了静态时序分析;
自动测试插件无需特别考虑因素;
许多特定用途集成电路(ASIC)库有较好的上升沿寄存器选择;
便于与基于周期的仿真器集成。
APB的这些改变也使得它简化了到新的高级高性能总线(AHB)的接口。
一个典型的总线包含一个测试接口控制器(TIC)允许模块组件测试系统总线和APB模块。
APB规范
状态图
状态机运行在下面所描述的三个状态:
IDLE 外设总线的默认状态。
SETUP 当有传输要求时总线转移到SETUP状态,这时对应的选择信号,PSELx被断言。总线仅在SETUP状态保持一个时钟周期并将总是在下一个时钟的上升沿移动到ENABLE状态。
ENABLE 使能信号PENABLE在ENABLE状态中被断言。地址、写和选择信号都在从SETUP到ENABLE状态的转变过程中保持稳定。
ENABLE状态也仅持续一个周期并且在这个状态之后如果没有进一步的传输要求总线将返回IDLE状态。另外,如果紧跟着另一个传输那么总线移动到SETUP状态。地址、写和选择信号在从ENABLE到SETUP状态的转变期间有小跳变也是可以接受的。
写传输
写传输开始于地址、写数据、写信号和选择信号在时钟上升沿之后的全部改变。传输的第一个时钟被称作SETUP周期。在下一个时钟边沿使能信号PENABLE生效,这表示EANBLE周期正在进行。地址、数据和控制信号全都在整个ENABLE周期保持有效。传输在这个周期结束时完成。
使能信号PENABLE,将在传输结束时失效。选择信号也将变成低电平,除非当前传输之后紧跟着另一个到该外设的传输。
为了降低功率消耗地址信号和写信号将在传输之后不再改变,直到下一个传输发生为止。
协议仅要求在使能信号上有一个规则的转变(跳变)。在背靠背传输情况下选择和写信号可能有小跳变。
读传输
地址、写、选择和选通信号的时序都和写传输一样。在读传输的情况下,从机必须在EANBLE周期提供数据。数据在ENABLE周期末尾的时钟上升沿被采样。
APB桥
APB桥是AMBA APB中的唯一总线主机。另外,APB桥也是高级系统总线中的一个从机。
接口框图
APB桥描述
桥接单元将系统总线传输转换成APB传输并实现下列功能:
锁存地址并使之在整个传输期间有效;
译码地址和产生一个外设选择信号,PSELx。在一个传输期间只有一个选择信号有效;
对于写传输驱动数据到APB 上;
对于读传输驱动APB 数据到系统总线上;
为传输产生一个时序选通信号,PENABLE。
时序图
APB从机
APB从机有一个即简单又灵活的接口。接口的准确实现将依赖于设计人员的设计风格和许多不同的可能情况。
接口框图
APB从机描述
APB从机接口非常灵活。
对写传输可以在下列要点时被锁存:
当PSEL为高时,在任意一个PCLK的上升沿;
当PSLE为高时在 PENABLE的上升沿。
选择信号PSELx,地址 PADDR和写信号PWRITE可以组合来决定哪个寄存器由写操作来更新。
对读传输数据可以在PWRITE为低电平且PSELx和 PENABLE都为高电平时被驱动到数据总线上。而此时PADDR被用来决定哪个寄存器应该被读取。
时序图