AMBA标准
AMBA标准定义了三种不同的总线
- 高级高性能总线(AHB);
- 高级系统总线(ASB);-----用的比较少
- 高级外设总线(APB)。
基于AMBA的典型微控制器:

典型的AMBA AHB系统设计包含以下成分:
AHB主机、AHB从机、AHB仲裁器、AHB译码器
典型的AMBA APB系统设计包含APB桥和APB从机
AHB基本传输过程:
- address phase
address phase传送的是address和control single
- data phase
data phase则是read/write data和response single。如果transfer在data phase时无法在1个clock cycle内完成,slave可用HREADY信号为低来延长transfer。
- HTRANS[1:0]为传输类型,分IDLE, BUSY, NONSEQ, SEQ。其中NONSEQ表示单次传输或者连续传输的开始,SEQ表示连续传输。
- HBURST[2:0]为burst type,分为SINGLE、INCR、WRAP4、INCR4、WRAP8、INCR8、WRAP16和INCR16八种。其中INCR类的burst,每一次transfer address必定是上一次transfer的address加上transfer size;WRAP类的burst,会将跨越地址边界的transfer address绕回地址边界起点。
- HSIZE为transfer size, 支持八种大小,8 bits、16bits、32bits……1024bits。
- HRESP是在transfer结束时表示的状态,分为OKAY、ERROR、RETRY和SPLIT四种。其中ERROR的原因譬如说企图写入只读的memory空间,或者读写根本不存在的memory空间(例如对于32为的读写,地址的最低位为1)。
APB规范以下列标题来描述:
- 状态图

- IDLE:外设总线的默认状态
- SETUP:当有传输要求时总线转移到SETUP状态,这时对应的选择信号PSELx拉高。总线仅在SETUP状态保持一个周期并将总是在下一个时钟的上升沿移动到 ENABLE状态
- ENABLE:使能信号PENABLE在ENABLE状态中被断言。地址、写和选择信号都是从SETUP到ENABLE状态的转变过程中保持稳定。
ENABLE状态也仅持续一个周期并且在这个状态之后如果没有进一步的传输要求总线将返回IDLE状态。另外,如果紧跟着另一个传输那么总线移动到SETUP状态。
- 写传输

- 读传输

AMBA标准的更多相关文章
- AMBA简介
AMBA AMBA(Advanced Microcontroller Bus Architecture)先进的微控制器总线架构是一个免费.开放的标准,用于SoC内部功能模块之间的互连和管理.对成功设计 ...
- zedboard如何从PL端控制DDR读写(二)——AXI总线
虽然Xilinx已经将和AXI时序有关的细节都封装起来,给出了官方IP和向导生成自定义IP,用户只需要关注自己的逻辑实现,但是还是有必要简单了解一下AXI的时序,毕竟咱是做硬件设计的. AXI(Ad ...
- AXI总线
AXI(Advanced eXtensible Interface)是一种总协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture) ...
- AXI总线介绍
原帖地址:https://wenku.baidu.com/view/7c424c17e3bd960590c69ec3d5bbfd0a7956d5b9.html 1.AXI简介 AXI(Advanc ...
- AXI总线(转)
AXI(Advanced eXtensible Interface)是一种总协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture) ...
- 基于ARM的SoC设计入门[转]
原文:基于ARM的SoC设计入门 我们跳过所有对ARM介绍性的描述,直接进入工程师们最关心的问题.要设计一个基于ARM的SoC,我们首先要了解一个基于ARM的SoC的结构.图1是一个典型的SoC的结构 ...
- AMBA
基于IP复用的设计方法在SOC设计中得到了广泛的应用,设计过程中,片上总线的设计师最关键的问题. AMBA是由ARM公司退出的片上总线,是一种流行的工业标准片上结构. AMBA规范主要包括了AHB(A ...
- AMBA总线介绍
The Advanced Microcontroller Bus Architecture (AMBA) specification defines an on- chip communication ...
- AMBA总线协议AHB、APB、AXI对比分析【转】
转自:https://blog.csdn.net/ivy_reny/article/details/56274412 一.AMBA概述 AMBA (Advanced Microcontrolle ...
随机推荐
- oracle 01578
http://blog.itpub.net/7728585/viewspace-670597/ http://www.2cto.com/database/201208/149056.html http ...
- Codeforces 474D Flowers (线性dp 找规律)
D. Flowers time limit per test:1.5 seconds memory limit per test:256 megabytes We saw the little gam ...
- Linq复杂对象查询
复杂的查询对象, using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...
- 一些优秀的学习网站(Android)
突然发现自己学习没有总结,从今天开始会持续更新此博文,总结自己的学习情况,也便于自己时常查阅.官方文档就列举了,因为那是必读资料. 一.GitHub部分 1.我的github仓库地址 收藏了我常看的开 ...
- 为root账户更名
为root账户更名 处于安全考虑许多管理员想把root更名,具体方法如下: 1.先以root登陆系统 2.用vi 编辑/etc/passwd文件,将第一行的第一个root修改为你想要的账户名,然后保存 ...
- C/C++(数据结构链表的实现)
链表 List 链表实现了内存零碎片的有效组织. 静态链表 链表中有两个成员,数据域和指针域 数据域:我们存储的数据. 指针域:指针指向下一个具体的节点,代表了下一个节点的类型是链表类型. 所谓的指针 ...
- pytest使用问题总结
问题一.AttributeError: module 'pytest' has no attribute 'allure'解决方法:pip3 uninstall pytest-allure-adapt ...
- 【Codeforces Round #426 (Div. 2) A】The Useless Toy
[Link]:http://codeforces.com/contest/834/problem/A [Description] [Solution] 开个大小为4的常量字符数组; +n然后余4,-n ...
- 洛谷 P2837 晚餐队列安排
P2837 晚餐队列安排 题目背景 Usaco Feb08 Bronze 题目描述 为了避免餐厅过分拥挤,FJ要求奶牛们分2批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想,所有第2批就餐 ...
- Linux搭建aspx.net环境之:CentOs 7 安装 Mono 和 Jexus 步骤记录
1 因为163没有CentOs7的镜像.所以没有加这个 wget http://mirrors.163.com/.help/CentOS6-Base-163.repo cd /etc/yum.rep ...