前言
主要介绍一致性总线CMN600AE,根据arm官网的spec来概述其模块。
提示:以下是本篇文章正文内容,下面案例可供参考
1、CMN600AE的介绍
CMN600ae是基于Mesh拓扑结构,对外支持AMBA CHI/ACE-LITE等接口,内部改用路由结构转发数据,并提供硬件一致性和系统缓存,还支持多芯片互联。CMN600在T16FFC上可以做到2Ghz,另外AE版本增加了车轨芯片的安全功能,总线内部采用EDC检查,接口采用的奇校验。
2、CMN600AE的feature点
3、CMN600AE的架构
3.1 CMN600AE的路由方式
问题:基于mesh 架构的CMN600网络中是如何routing的?
根据配置SAM来实现路由,根据2级mapping来实现,RN->HN根据RN SAM来实现,和HN->SN根据HN SAM来实现,CHI的协议中也是如此定义SAM的。
RN SAM的mapinng方式
不同类型的地址段mapping:
- gic的地址段:用于给gic分配地址段
- Non-hash地址段:支持8个地址段,目标node可以为HN-I, HN HN-F,一般用于寄存器地址段
- hash地址段:支持8个地址段,目标node为HN-F,HNF个数可以为2/4/8/16/32
- Default id:默认的id为HN-D
HN SAM的mapinng方式
HHNF->SN,地址的mapping方式 - 通过range 地址段来选择最终的tgtid的node
- 对于有3个SN或者是6个SN是需要配置来选择最终的tgtid
- 用于确定的SN来说只需要配置SN0的tagidN SAM来实现,CHI的协议中也是如此定义的
HNI->SN的mapping方式:
下游可以对接memory和device,对于memoey的空间,需要对应64byte大小内的地址段保序,对应device空间,可以配置多个device空间,每个region内需要保序
3.2 CMN600AE的双chip方案
如图为CMN600AE的spec所描述的双chip方案,chip和chip之间的连接是根据PCIE所连接,PCIE与CMN600的网络的连接接口为CXS,对接的模块为CXG,用于CHI协议的转化为CCIX。
如上图为对于双Chip下,对于mapping的配置方式。
3.3 CMN600AE的debug/trace/pmu功能
3.4 CMN600AE的qos机制
在mesh的架构中CMN600网络提高性能的方法:
1、mesh的架构层,通过多级的cache,以及设计HNF node可以去snoop cluster中的cache,提高性能
2、协议层,CHI协议中支持DMT、DCT、和prefetch功能提高性能
3、soc层,支持qos机制来提高性能,qos的value一共有4bit,值为0-15,值越高优先级越高
#在RN 的节点是qos发出的源头,如图所示,RN-D/RN-I的qos配置在该节点内,对应RNF节点来说配置在对应的XP节点内,qos的值支持以下机制配置:文章来源:https://www.toymoban.com/news/detail-764025.html
- 直接bypass
- Latency regulation:根据每个包的延时来调整qos值
- Period regulation:根据一段时间内包完成的延时来调整qos值
- HNF内部对qos的处理:在HNF内部配置POCQ可以为32或者64个Entry,qos一共被分为4类HH/H/M/L优先级,如图设置32个Entry,1个固定的SFevict使用,其他给qos使用,配置的个数如下,当L的包收到5个后,会占5个entry,再来一个L的包会触发chi协议中的retry机制,来带M的qos,会选择空闲的15个entry内找一个来处理该包的数据。
- HNI/D的处理:来源高优先级的qos先处理,并且qos的值会直接透传到下一级。
下图为qos典型的配置方法
文章来源地址https://www.toymoban.com/news/detail-764025.html
到了这里,关于一致性总线CMN600AE-ARM系列的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!