AMBA interconnector PL301(一)
HPM(High-Performance Matrix)是一个自生成的AMBA3 bus subsystem。
由一个AXI bus matrix,Frequency Conversion Components,Data Bus Width Conversion Components,
Interface Protocol Conversion Components,Buffering Components组成。
一个HPM可以实现,SI/MI的个数配置;multi-layer AXI routing;32bit/64bit/128bit的互联;AHB-Lite/AXI/APB的bridge实现;
async/sync频率转换;各个clock domain的sync;register slice的自配置来提高最高工作频率;
QoS/Arbitration来实现各个master的轮流访问。
AMBA Designer是一个可配置的工具,来产生HPM的RTL,Testbench,Stimulus。
HPM的几个基本feature:Routing data width---native data width,AXI bus matrix的默认数据位宽。32bit/64bit/128bit。
Routing address width---native address width,AXI bus matrix的默认地址位宽,
必须大于等于slave中的最大地址线宽度。32bit/64bit。
number of master interface;
number of slave interface。
Slave interface的几个feature:1)Name,最多16个ASCII码组成,字母加数字。然后自动加上AXI/AHB/APB的信号前缀。
2)ID width,针对AXI,表示ID信号的位宽。
3)Decode register,在decode address 加入register slice,目的是分隔critical path,
以增加latency为代价提高工作频率。
4)Read acceptance capability,SI可以缓存的最大数目的read transaction,一般就是内部FIFO深度。
注意它与interface protocol相互制约,只能最小值,起作用。
5)Write acceptance capability,SI可以缓存的最大数目的write transaction,一般就是内部FIFO深度。
注意它与interface protocol相互制约,只能最小值,起作用。
6)Arbitration scheme,在HPM内部的不同master的transaction调度算法,一般有两大类:
fixed-priority style scheme;
round-robin style scheme;
用户可以直接通过AMBA designer生成,也可以SoC通过APB配置。
HPM对read和write实现一个共享的arbiter,所以一个slave只能同时接受一个master的
读写。
7)Sparse connect,在HPM中每个SI都有自己的decoder,在SI和MI之间只是mapping关系时,可以定义一个
Sparse connect来减少不必要的逻辑。
8)Cyclic scheme,针对一个master发送transaction时,防止deadlock。具体方式:
Single slave scheme:同一时刻,一个master只能发给一个slave transaction。
Higher rank scheme:master可以连续的发送多个transaction给不同的slave,但是必须按
higher rank的顺序来。即一个master一个transaction未结束时,再
给一个higher rank的slave发送。
Unique ID scheme:一个master的transaction都是Unique ID的,那么可以多发给N个
slave。
Hybrid scheme:一个master对于同一个slave,不论ID,transaction可以共发多个,
对于不同的slave,transaction ID必须unique。
Single-slave-per-ID:最灵活的配置,同一ID的transaction必须去同一slave,其余
transaction可以任意共发。
9)Peripheral register slices:可配置的插入一到两个register slices到peripheral。位置由AMBA designer决定
一般一个靠近peripheral,一个靠近interconnect。register对于AXI每个channel都
是独立的,私有的。
10)Clock domain crossing:Crossing type分为三种:downwards-sync scheme;upwards-sync scheme;
re-sync scheme(async domain buffer)。
11)Interface data width:可以配置为32bit/64bit/128bit;可以分为downsizer component;
upsizer component。
13)Interface address width:包含两个attributes:address width、address tie-off value。
这个width不能大于routing address width。
12)Interface protocol conversion:包含AXI/AHB-Lite Master/AHB-Lite Slave。
Master interface的几个feature:大致与SI类似,除了以下几个:
1)write issuing capability,表示MI接口中写操作的FIFO深度,如果小于SI中的write acceptance capability可能会影响
性能。
2)Address map,分为Address range和RemapRange。
MemLo/MemHi:用64bit表示;还有一组remap的参数。
RemapMove:针对remap的slave的remap使能。
3)Interface protocol conversion,增加APB interface。
4)Programmable QoS,只支持有一定acceptance capability的slave。当某一个MI上的outstanding
transaction达到一定的value,然后MI还可以接受由QoS指定的SI上的transaction。
在subsystem中,master连接到Slave Interface(SI),slave连接到Master Interface(MI)。
3X4 的interconnector表示连接三个master,四个slave的bus system。
AMBA interconnector PL301(一)的更多相关文章
- AMAB interconnector PL301(二)
1)Frequency Conversion Components:包含三种component. AXI-AXI async bridge:拥有两种mode:bypass mode 和 async m ...
- AMBA
基于IP复用的设计方法在SOC设计中得到了广泛的应用,设计过程中,片上总线的设计师最关键的问题. AMBA是由ARM公司退出的片上总线,是一种流行的工业标准片上结构. AMBA规范主要包括了AHB(A ...
- AMBA总线介绍
The Advanced Microcontroller Bus Architecture (AMBA) specification defines an on- chip communication ...
- AMBA总线协议AHB、APB
一.什么是AMBA总线 AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计采用,它规定了AHB (Advanced High-performance Bus).ASB (Advanced ...
- AHB协议整理 AMBA
本文对AHB协议作了简单整理,整理自两篇文章: AHB总线协议 AHB重点难点总结 1. 简介 AHB总线规范是AMBA总线规范的一部分,AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计 ...
- AMBA总线协议AHB、APB、AXI对比分析【转】
转自:https://blog.csdn.net/ivy_reny/article/details/56274412 一.AMBA概述 AMBA (Advanced Microcontrolle ...
- [转]AMBA、AHB、APB、ASB总线简介
[转]http://www.cnblogs.com/zhaozhong1989/articles/3092140.html 1.前言 随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC ...
- 接口与协议学习笔记-AMBA片上通信协议_APB_AHB_AXI_AXI4不同版本(二)
随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC从基于时序驱动的设计方法,发展到基于IP复用的设计方法,并在SOC设计中得到了广泛应用.在基于IP复用的SoC设计中,片上总线设计是最 ...
- AMBA AHB总线
Advanced Microcontroller Bus Architecture, 即AMBA,是ARM公司提出的总线规范,被很多SoC设计所采用,常用的实现有AHB(Advanced High-P ...
随机推荐
- 雾里看花终隔一层——探析package和import
package是什么 package好比java用来组织文件的一种虚拟文件系统.package把源代码.java文件,.class文件和其他文件有条理的进行一个组织,以供java来使用. 源代码的要求 ...
- Magento Table Rate运费国家代码汇总
Magento Table Rate是三种内置未调用第三方API运费方式中最强大的一个.通过设置国家,区域,邮编,价格来划分不同的运费等级.该方式基本能够满足轻量级的B2C商城的运费模式.这里收集下国 ...
- xcode7的那些坑-“Your binary is not optimized for iPhone 5” (ITMS-90096) when submitting
用Xcode7向App Store提交二进制文件是,提示ERROR ITMS-90096:"You binary is not optimized for iPhone 5...." ...
- Excel 的一些用法--行号赋给一列
1.鼠标选定要赋值的列 2.在 输入 =Row() 3. Ctrl+Enter
- Android Annotations 注解例子
1.AndroidAnnotations官网: http://androidannotations.org/ (也许你需要FQ) 2.eclipse中使用androidannotations的配置方法 ...
- out 和 ref 之间的区别整理
ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递. 对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别. 总结起来,他们有如下语法区别: 1.re ...
- jquery 日历插件datepicker格式调整
<script> $(function() { $("#datepicker").datepicker({ dateFormat: "yy/mm/dd&quo ...
- php猴子称王或者约瑟夫难题
问题描述: 一群猴子排成一圈,按1,2,...,n依次编号.然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去...,如此不停的进行下去,直到最后只剩下一只猴子为 ...
- 安装 zsh 、 on-my-zsh 和 autojump
安装 zsh . on-my-zsh 和 autojump zsh 是 linux 上另外一个 shell ,号称是终极 shell .它的配置比较复杂,一般的发行版中,默认没有安装这个 shell ...
- 更改AlertView背景
UIAlertView *theAlert = [[[UIAlertViewalloc] initWithTitle:@"Atention" message: @"I'm ...