APB(Advance Peripheral Bus)是AMBA总线的一部分,从1998年第一版至今共有3个版本。

AMBA 2 APB Specfication:定义最基本的信号interface, 读写transfer, APB bridge, APB slave.

AMBA 3 APB:增加定义信号PREADY, PSLVERR来完成对wait state和Error reporting的功能。

AMBA 4 APB:增加定义信号PPROT, PSTRB来支持secure, supervisor和sparse data transfer的功能。

APB主要用在低速的IP接口上,协议简单,时钟clock也比较低,power较小。

APB总线中的信号:

PSELx:由APB bridge产生的信号,针对每一个peripheral bus slave,表示一个slave 是被选中的,有transfer需要传输。

PENABLE:在一个transfer的second and subsequent cycles有效。

PSTRB:只能在写操作中用来指示byte lanes,在读操作中全为1。

PREADY:由slave产生,来extend an APB transfer,结束前一时钟有效,表示下一时钟transfer结束。

PSLVERR:APB transfer的最后一个cycle有效,当PSEL, PENABLE, PREADY同时有效时,不需要该引脚时,tie0

当需要bridge时,PSLVERR可以与AXI总线中的BRESP[1],AHB总线中的HRESP[0]连接一起。

PPROT:分别表示Normal or privileged, Secure or non_secure, Data or Instruction。

在APB总线中分别有PWDATA和PRDATA,但这并不表示它支持同时读写,

因为他没有分别的读写握手信号,在读写过程中,addr/enable/sel也不可变的,两组数据信号,可能只是为了简化逻辑。

write transfer:T1时刻,建立阶段(Setup)。在PCLK上升沿采样PADDR,PWDATA,PWRITE,PSEL信号。

T2时刻,通信阶段(Access)。采样PENABLE,PREDAY信号。

T3时刻,transfer结束。所以一个APB的transfer最少需要两个时钟。

APB的write操作也需要两个cycle,可能是考虑与读操作的一致性,

这样在AHB2APB 和APB2APB bridge上,逻辑更简单一些。

APB总线的更多相关文章

  1. AHB总线和APB总线

    AHB主要用于高性能模块(如CPU.DMA和DSP等)之间的连接,作为SoC的片上系统总线,它包括以下一些特性:单个时钟边沿操作:非三态的实现方式:支持突发传输:支持分段传输:支持多个主控制器:可配置 ...

  2. AMBA APB总线

    前面分析了AHB总线协议.接下来分析APB总线协议. (一) APB总线接口: PCLK APB总线时钟. PRESETn APB总线复位.低有效. PADDR 地址总线. PSELx 从设备选择. ...

  3. STM32WB AHB总线、APB总线与外设

    方框图: 如图所示: 1)APB1外设 2)APB2外设 3)AHB1外设 4)AHB2外设 5)AHB3外设 6)AHB4外设(ABH共享总线外设) 内存映射关系图:

  4. AMBA总线协议AHB、APB

    一.什么是AMBA总线 AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计采用,它规定了AHB (Advanced High-performance Bus).ASB (Advanced ...

  5. AMBA总线协议AHB、APB、AXI对比分析【转】

    转自:https://blog.csdn.net/ivy_reny/article/details/56274412 一.AMBA概述    AMBA (Advanced Microcontrolle ...

  6. [转]AMBA、AHB、APB、ASB总线简介

    [转]http://www.cnblogs.com/zhaozhong1989/articles/3092140.html 1.前言 随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC ...

  7. AMBA总线介绍

    The Advanced Microcontroller Bus Architecture (AMBA) specification defines an on- chip communication ...

  8. ARM总线方面知识

    AMBA简介 随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC从基于时序驱动的设计方法,发展到基于IP复用的设计方法,并在SOC设计中得到了广泛应用.在基于IP复用的SoC设计中,片 ...

  9. AHB/APB简介

    AHB AHB总线互联结构图 随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC从基于时序驱动的设计方法,发展到基于IP复用的设计方法,并在SOC设计中得到了广泛应用.在基于IP复用的 ...

随机推荐

  1. 供安全工程师实用的SOC模型

    一.背景 如今,安全概念满天飞,什么安全运营中心(SOC).威胁情报(TI).态势感知等等不一而足,这些概念及其背后代表的安全思想都很好,不过很多产品为了迎合国内的工作汇报都做成了很多Dashboar ...

  2. 【CF896D】Nephren Runs a Cinema 卡特兰数+组合数+CRT

    [CF896D]Nephren Runs a Cinema 题意:一个序列中有n格数,每个数可能是0,1,-1,如果一个序列的所有前缀和都>=0且总和$\in [L,R]$,那么我们称这个序列是 ...

  3. mysql概要(十四)(二)索引(补充:外键级联操作)

    [ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] [ ON UPDATE { NO ACTION | CASCADE | S ...

  4. 数据库操作相关(sql语句-命令行)

    创建数据库: create database books; 创建用户: mysql> grant select,insert,delete,uptate     -> on books.* ...

  5. MySQL行列转换拼接

    mysql> select TBL_ID,CREATE_TIME,LAST_ACCESS_TIME,TBL_NAME,TBL_TYPE from TBLS; +--------+-------- ...

  6. react封装简单的浏览器顶部加载进度条全局组件

    在项目中经常会有在请求前后加loading或者加加载进度条,一般这些组件都会抽离出来作为全局组件 进度条的插件貌似都不是很符合自己项目中的需求,于是.. 参考nprogress样式,自己在项目中封装组 ...

  7. java虚拟机的符号引用和直接引用

    在java中,一个java类将会编译成一个class文件.在编译时,java类并不知道引用类的实际内存地址,因此只能使用符号引用来代替.比如org.simple.People类引用org.simple ...

  8. ip相关问题解答

    用路由器上网时电脑的设置: ===================== 路由器如何设置另外讨论,现只讲电脑的设置.在Windows XP下: 1.确定桌面上有没有“网上邻居”图标,如果没有,在桌面空白 ...

  9. Oracle安装部署之RedHat安装Oracle11g_R2

    硬件配置 内存 :≥1G 硬盘空间:≥10G 上传oracle11g安装包: putty上用wcw用户登录,通过ftp服务上传oracle安装文件到/home/wcw目录下解压 #unzip linu ...

  10. iOS多线程编程之GCD的常见用法(转载)

    一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) withObject:nil aft ...