版主
主题
回帖0
积分10609
阅读权限200
注册时间2008-11-22
最后登录1970-1-1
在线时间 小时
|
) q- d9 F! v U1 J6 j
APB简介 6 \! z8 }, p% p8 M5 ?, }4 W$ E* y3 X$ m+ l
APB(Advanced Peripheral Bus),外围总线的意思。该总线协议是ARM公司提出的AMBA总线结构之一,几乎已
, v8 Q. w) C# ^9 P# Y成为一种标准的片上总线结构。
6 F5 X+ y! ^* _; ]APB主要用于低带宽的周边外设之间的连接,例如UART、1284等,它的总线架构不像AHB支持多个主模块,在APB0 U' G& ?7 }" V5 S' j/ ~& X
里面唯一的主模块就是APB 桥。其特性包括:两个时钟周期传输;无需等待周期和回应信号;控制逻辑简单,只
2 ]" a0 u$ n- N, M# t有四个控制信号。APB上的传输可以用如图2所示的状态图来说明。
, G' J) m! A) L2 }6 `1)系统初始化为IDLE状态,此时没有传输操作,也没有选中任何从模块。, E2 {8 M) ?$ E u6 y9 d
2)当有传输要进行时,PSELx=1,PENABLE=0,系统进入SETUP状态,并只会在SETUP 状态停留一个周期。当
9 }/ \1 l1 Q& R+ B# HPCLK的下一个上升沿时到来时,系统进入ENABLE 状态。
) T3 m6 ?7 x) b2 Q3 \$ H3)系统进入ENABLE状态时,维持之前在SETUP 状态的PADDR、PSEL、PWRITE不变,并将PENABLE置为1。传输也只会在ENABLE状态维持一个周期,在经过SETUP与ENABLE状态之后就已完成。之后如果没有传输要进行,就进入
1 Q- w; L( W1 ^3 p: D7 J8 c+ g; JIDLE状态等待;如果有连续的传输,则进入SETUP状态。AHB和APB这两种总线所连的外设是有区别的。: J# p( Y/ {4 D9 @7 `" Y5 B, S
AHB总线连接高速外设,低速外设则通过APB总线互连。% b3 X; H4 y x+ L6 x& w7 G
显然,对不同总线上的外设,应该使用不同的时钟信号,AHB总线对应Hclk,APB总线对应Pclk。 |
|