文章目录
AMBA(Advanced Microcontroller Bus Architecture)总线是由ARM公司提出的一种开放性的片上总线标准,它独立于处理器和工艺技术,具有高速度低功耗等特点。 它不是芯片与外设之间的接口,而是ARM内核与芯片上其他元件进行通信的接口。
什么是 APB总线
APB(Advanced Peripheral Bus)先进外设接口:APB总线主要用在低速且低功率消耗的外围,在APB总线中,唯一的M为APB bridge, 其它一些低速和低功率的外围皆为S
。不是流水线操作
,两个周期完成一次读或写的操作。
APB信号列表
信号名 | 来源 | 描述 |
---|---|---|
PLK | 总线时钟 | 时钟信号,上升沿采样 |
PRESENTn | 系统总线 | 低有效 |
PADDR[31:0] | APB桥(主) | 32位的地址总线 |
PSELx | 译码器 | S选择信号:表示当前哪个S被选择在传输,地址选择就是地址译码出来地S选择信号HSELx |
PENABLE | APB桥(主) | 允许读写操作信号线 |
PWRITE | APB桥(主) | 读写操作线,为1时写,为0时读 |
PWDATA | APB桥(主) | master通过PWDATA线将数据写到slave,数据最大支持32bit |
PRDATA | 从 | master通过PRDATA线将数据从slave读取回来,数据最大支持32bit |
APB桥将系统总线传送转换成APB方式的传递,功能:
- 锁存地址,保持地址有效。锁存读写控制信号
- 对锁存的地址译码产生选择信号PSELx,选择唯一一个APB从设备以进行读写动作
- 写操作:负责将AHB送上来的数据送上APB总线
- 读操作:负责将APB的数据送上AHB系统总线
- 产生时序选通信号PENABLE作为数据传递时的启动信号
APB状态机
状态 | 跳转条件 | 描述 |
---|---|---|
IDEL | PSELx=0,PENABLE=0 | 系统初始化状态,此时没有传输操作,也没有选中任何模块 |
SETUP(地址阶段) | PSELx=1,PENABLE=0 | 系统进入SETUP状态,并且会在SETUP状态停留一个周期 |
ENABLE(数据阶段) | PSELx=1,PENABLE=1 | 系统进入ENABLE状态 |