购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.2 AMBA APB规范

APB属于AMBA3系列,它提供了一个低功耗的接口,并降低了接口的复杂性。APB接口用在低带宽和不需要高性能总线的外围设备上。APB是非流水线结构,所有的信号仅与时钟上升沿相关,这样即可简化APB外围设备的设计流程,每个传输至少消耗两个周期。

APB可以与AMBA高级高性能总线和AMBA高级可扩展接口连接。

3.2.1 AMBA APB写传输

AMBA APB写传输包括两种类型:无等待状态写传输和有等待状态写传输。

1.无等待状态写传输

无等待状态写传输的过程如图3.1所示。在时钟上升沿后,改变地址、数据、写信号和选择信号。

图3.1 无等待状态写传输的过程

(1)T1周期(写传输建立周期)。写传输起始于地址(PADDR)、写数据(PWDATA)、写信号(PWRITE)和选择信号(PSEL)。这些信号在PSCLK的上升沿寄存。

(2)T2周期。在PSCLK的上升沿寄存使能信号PENABLE和准备信号PREADY。

①当有效时,PENABLE表示传输访问周期的开始。

②当有效时,PREADY表示在PCLK的下一个上升沿从设备可以完成传输。

(3)地址(PADDR)、写数据(PWDATA)和控制信号一直保持有效,直到在T3周期完成传输后,结束访问周期。

(4)在传输结束后,使能信号(PENABLE)变成无效,选择信号(PSEL)也变成无效。如果相同的外设立即开始下一个传输,则这些信号重新有效。

2.有等待状态写传输

有等待状态写传输的过程如图3.2所示。在访问周期,当PENABLE为高时,可以通过拉低PREADY来扩展传输。

图3.2 有等待状态写传输的过程

以下信号保持不变:地址(PADDR)、写信号(PWRITE)、选择信号(PSEL)、使能信号(PENABLE)、写数据(PWDATA)、写选通(PSTRB)和保护类型(PPROT)。

当PENABLE为低时,PREADY可以为任何值,确保外围器件有固定的两个周期来使PREADY为高。

注: 推荐在传输结束后不要立即更改地址和写信号,保持当前状态直到下一个传输开始,这样可以降低芯片功耗。

3.2.2 AMBA APB读传输

AMBA APB读传输包括以下两种类型:无等待状态读传输和有等待状态读传输。

1.无等待状态读传输

无等待状态读传输时的过程如图3.3所示。图中给出了地址、写数据、选择信号和使能信号等。在读传输结束以前,从设备必须主动提供数据。

2.有等待状态读传输

在读传输中,使用PREADY信号来添加两个周期,有等待状态读传输的过程如图3.4所示。在传输过程中也可以添加多个周期,如果在访问周期内拉低PREADY信号,则扩展读传输。

图3.3 无等待状态读传输的过程

图3.4 有等待状态读传输的过程

规范保证在额外的扩展周期时,以下信号保持不变,包括地址(PADDR)、写信号(PWRITE)、选择信号(PSEL)、使能信号(PENABLE)和保护类型(PPROT)。

3.2.3 AMBA APB错误响应

可以使用PSLVERR来指示APB传输错误条件。在读和写交易中,可以发生错误条件。在一个APB传输中的最后一个周期内,当PSEL、PENABLE和PREADY信号都为高时,PSLVERR才是有效的。

当外设接收到一个错误的交易时,外设的状态可能会发生改变(由外设决定)。当一个写交易接收到一个错误时,并不意味着外设内的寄存器没有更新。当读交易接收到一个错误时,能返回无效的数据。对于一个读错误,并不要求外设将数据总线驱动为0。

1.写传输和读传输错误响应

写传输错误的响应过程如图3.5所示,读传输错误的响应过程如图3.6所示。

2.PSLVERR映射

当桥接时,对于从AXI到APB的情况,将APB错误映射回RRRSP/BRESP=SLVERR,这可以通过将PSLVERR映射到RRESP[1]信号(用于读)和BRESP[1](用于写)信号来实现;对于从AHB到APB的情况,对于读和写,PSLVERR被映射回HRESP=SLVERR,这可以通过将PSLVERR映射到AHB信号和HRESP[0]信号来实现。

图3.5 写传输错误的响应过程

图3.6 读传输错误的响应过程

3.2.4 AMBA APB操作流程

AMBA APB操作流程如图3.7所示。

图3.7 AMBA APB操作流程

(1)空闲(IDLE)。这是默认的APB状态。

(2)建立(SETUP)。当请求传输时,总线进入SETUP状态,设置选择信号PSELx。总线仅在SETUP状态停留一个时钟周期,并在下一个时钟周期进入ACCESS状态。

(3)访问(ACCESS)。在ACCESS状态中置位使能信号PENABLE。在传输从SETUP状态到ACCESS状态转变的过程中,地址、写、选择和写数据信号必须保持不变。从ACCESS状态退出,由从器件的PREADY信号控制,如果PREADY为低,则保持ACCESS状态;如果PREADY为高,则退出ACCESS状态,如果此时没有其他传输请求,那么总线返回IDLE状态,否则进入SETUP状态。

3.2.5 AMBA3 APB信号

AMBA3 APB信号及功能如表3.1所示。

表3.1 AMBA3 APB信号及功能 ZhLoiIBGjuClh3tIu0zYt6NkkXJ8VQL4iS4fU3Md07vlf2t+6zeJVcAtXUGKqwFM

点击中间区域
呼出菜单
上一章
目录
下一章
×