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. 使用bcrypt进行用户密码加密的简单实现

    Bcrypt百度百科: bcrypt,是一个跨平台的文件加密工具.由它加密的文件可在所有支持的操作系统和处理器上进行转移.它的口令必须是8至56个字符,并将在内部被转化为448位的密钥. 除了对您的数 ...

  2. 如何更改Magento的Base URL

    Magento的Base URL是用于访问商店页面的URL,您也可以为单独一个store view设置一个Base Url.在改这项值之前请确保您的域名已经指向了网站所在服务器的IP,DNS解析完成后 ...

  3. 【Android Studio快捷键】之导入相应包声明(import packages)

    可能import 单个声明的快捷键大家都很容易找到,Alt+Enter.但是如果我要一次性import文件中所有的声明,这个快捷键是什么呢,找啊找的,就是没找到,以前在Eclipse是Ctrl+1,但 ...

  4. 关于action script与js相互调用的Security Error问题

    大家都知道,as和js相互调用可以通过ExternalInterface.call和ExternalInterface.addCallback来进行. 比较好的做法是使用之前通过ExternalInt ...

  5. Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never diffe

    class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } public class ...

  6. 使用weave实现跨主机docker容器互联

    关于weave的原理不做细致的说明,如果想了解weave可以登陆官网:https://www.weave.works/ In this post,使用阿里云3台ECS服务器进行weave搭建,并测试搭 ...

  7. linux设备模型_转

    建议原博文查看,效果更佳. 转自:http://www.cnblogs.com/wwang/category/269350.html Linux设备模型 (1) 随着计算机的周边外设越来越丰富,设备管 ...

  8. [ROS]1 小乌龟

    对于一个新新新手,Linux,ROS都要学习.安装ROS真的很讨厌了,于是采用易科机器人实验室的ubuntu12.04-amd64-ros-exbot-h2-140520版本. 测试一下小乌龟节点.主 ...

  9. 利用WebService发布图片文件

    服务器端: 1.新建一个Asp.net空网站RGImageServer. 2.新建一个WebService项目ImageService,项目新增文件ImageService.asmx,添加方法GetT ...

  10. 使用xib封装一个自定义view的步骤

    使用xib封装一个自定义view的步骤 1> 新建一个继承UIView的自定义view,假设类名叫做(MJAppView) 2> 新建一个MJAppView.xib文件来描述MJAppVi ...