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(一)的更多相关文章

  1. AMAB interconnector PL301(二)

    1)Frequency Conversion Components:包含三种component. AXI-AXI async bridge:拥有两种mode:bypass mode 和 async m ...

  2. AMBA

    基于IP复用的设计方法在SOC设计中得到了广泛的应用,设计过程中,片上总线的设计师最关键的问题. AMBA是由ARM公司退出的片上总线,是一种流行的工业标准片上结构. AMBA规范主要包括了AHB(A ...

  3. AMBA总线介绍

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

  4. AMBA总线协议AHB、APB

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

  5. AHB协议整理 AMBA

    本文对AHB协议作了简单整理,整理自两篇文章: AHB总线协议 AHB重点难点总结 1. 简介 AHB总线规范是AMBA总线规范的一部分,AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计 ...

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

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

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

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

  8. 接口与协议学习笔记-AMBA片上通信协议_APB_AHB_AXI_AXI4不同版本(二)

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

  9. AMBA AHB总线

    Advanced Microcontroller Bus Architecture, 即AMBA,是ARM公司提出的总线规范,被很多SoC设计所采用,常用的实现有AHB(Advanced High-P ...

随机推荐

  1. C/C++ 排序&&查找算法(面试)

    一.排序 1.冒泡排序 void BubbleSort(int array[],int n) { ; ; ; ; ;i<n - ;i++) /*外循环控制排序的总趟数*/ { flag = ; ...

  2. NuGet的几个小技巧

    因为是转载文章 在此标明出处,以前有文章是转的没标明的请谅解,因为有些已经无法找到出处,或者与其它原因. 如有冒犯请联系本人,或删除,或标明出处. 因为好的文章,以前只想收藏,但连接有时候会失效,所以 ...

  3. 用字体在网页中画icon小图标

    HTML结构: <i class="icons icon-ui"> 㐺 <i> <i class="icons icon-ui"& ...

  4. A Framework for Programme Management

    In business today organisations manage multiple projects concurrently with shared or overlapping res ...

  5. iOS面试题 02

    在面试的时候,面试官问我,“你对内存管理了解的多吗?” 我忘了当时是怎么回答的了,但是,肯定是一时没想起来怎么回答. 1.谁创建谁释放 2.autoreleasepool 3.retain,copy, ...

  6. Selenium2学习-011-WebUI自动化实战实例-009-JavaScript 在 Selenium 自动化中的应用实例之一(赋值)

    通常在编写 Selenium 的 WebUI 自动化脚本时,有些元素不易定位元素,或有些元素为隐藏的(此时用 WebElement.getText() 获取其值的时候,返回的结果为空),对日常的 UI ...

  7. ajax 调用asp.net后台方法

    ajax 调用asp.net后台方法  这种做法有好几种,如调用xx.asxh 页面,或者直接调用xx.aspx也面,在page_Load中进行一些判断然后调用后面的其他方法, 或者你可以直接调用we ...

  8. Java Difference between Private and Protected

    Private means this could only be seen within this class. Protected means "package private" ...

  9. Interview Return Products of All Other Elements in Array

    这是一道面试亚马逊时的题目,要求Time O(n). 我刚开始想的是算出所有的数的总product,再去除以对应位置的元素,但这种做法的问题是若该位置为0,就会报错. 到网上搜了下,才知道,原来有这种 ...

  10. wordpress 天气插件开发

    <?php /* * author by:wordpress教程网(http://www.wpnoob.cn) * url: * */ class weatherWidget extends W ...