APB协议
APB slave端的要求比较灵活:
- 对于总线写入到slave的传输行为,写入的数据data既可以在PSEL为高时,在CLK的上升沿锁存;也可以当PSEL为高时,在PENABLE的上升沿锁存。区别就是前者会早一点,PENABLE要在CLK上升沿后才会被驱动拉高。
- 对于总线的读slave行为,数据只要在PWRITE=0,然后PSEL和PENABLE都为高时驱动到总线上就可以,不要求在CLK上升沿后立即驱动。
APB特点:
- APB协议不是流水操作,两个始终周期完成一次读或写操作。
- APB最大支持32bit位宽
- APB有两个独立的数据通道:PWDATA和PRDATA,但是两个通道没有自己的握手信号,因此两个信号不会同时使用,即不支持读写并行操作
- APB3 根据PREADY信号是否为高,可以决定传输是否具有等待周期
- APB总线没有仲裁器和复杂的译码电路
APB版本改变
- APB3新增了PREADY和PSLVERR信号,两个端口的来源都是slave端。PREADY信号用于指示APB传输的完成,PSLVERR是从端发送的错误信号,用来指示一次传输的失败,只在ENABLE或是ACCESS状态且PREADY=1时认为有效,即只会在传输的最后一个周期才需要考虑SLVERR信号
- APB4新增了PPROT(protect signal)和PSTRB(strobe signal)信号。PPROT用来支持APB上的non-secure和secure transaction;PSTRB信号是一个在写总线时为了支持稀疏数据传输的写选通信号。
PPR

本文详细介绍了APB协议,包括APB协议的特点、APB3的改进,如PREADY和PSLVERR信号的引入。此外,还讨论了AHB协议,如AHB2的仲裁机制、AHB3的简化及AHB5的扩展,重点解析了总线主从握手机制、传输状态以及突发提前终止的情况。
最低0.47元/天 解锁文章
2192

被折叠的 条评论
为什么被折叠?



