概述
APB功耗低、复杂度低;
APB协议不是pipeline的,用来连接带宽较低的外设;
APB每次传输至少需要消耗2cycles;
APB信号介绍
信号 | 源头 | 描述 |
PCLK | Clock source | APB在PCLK上升沿时发生传输 |
PRESETn | System Bus | 低复位 |
PADDR | Master | APB地址信号 |
PPROT | Master | 保护类型。分为normal、privileged和secure保护类型; |
PSELx | Master | 选择信号; |
PENBLE | Master | 使能信号;指示一次传输的第2个或者接下来的cycles; |
PWRITE | Master | 写信号;1:表示写操作;0:读操作; |
PWDATA | Master | 写数据; |
PSTRB | Master | 写选通脉冲;表示某个字节数据有效; |
PREADY | Slave | Ready信号 |
PRDATE | Slave | 读数据信号 |
PSLVERR | Slave | 该信号指示传输失败 |
PRROT信号编码说明
写传输示例
在T2时刻,PSEL为1,PWRITE、PADDR和PWDATA被寄存起来。此后PENABLE被置为1,等待PREADY拉起;T5时刻PREADY被拉起来,数据被写入Slave。
读传输示例
在T2时刻,PSEL被拉起,PWRITE和PADDR被寄存起来;此后PENABLE被拉起等待PREADY拉起;T5时刻PREADY被拉起来,PRDATA被Master获取,读操作完成。
APB传输处理状态机
APB整体处理如上图所示。