鲲鹏920的架构分析

news2024/11/20 13:27:17

*本文信息主要来源于书籍《鲲鹏处理器架构与编程》以及论文《Kunpeng 920: The First 7-nm Chiplet-Based 64-Core ARM SoC for Cloud Services》 *

笔者已然写了一篇上述论文的分析博客,但尚觉论文内容对chiplet架构描述不够清晰,因此查阅《鲲鹏处理器架构与编程》一书,借此文以记录补充内容。
由于书是2020年出版,论文是由鲲鹏设计团队于2021年发表,很多命名、表述不相一致,鄙人觉得以论文描述为主,论文分析请移步:
论文解析——Kunpeng 920…

指令集架构

待补充

处理器chiplet架构

鲲鹏920分为CCL集群和ICL集群,两类集群可组成超级集群,每个超级集群均是一个die,通过集群的组合可以构成不同系列的产品。
超级集群内通过片上总线互连,die间通过SLLC互连,而整个芯片互连则通过Hydra接口连接。由于超级内核集群(CPU-compute die)没有Hydra接口,因此如果由芯片间互连需求,则必须有一个超级IO集群(Compute-IO die)。

在这里插入图片描述

超级内核集群(CPU-compute die)

在这里插入图片描述

CCL(core cluster)

在这里插入图片描述

POE_ICL

系统配置的硬件加速器,一般用作分组顺序整理器、消息队列、消息分发或者实现某个处理器内核的特定任务。

主存系统:DDR控制器 + Hydra根代理(HHA)

在鲲鹏处理器架构中,由主存系统维护die间和片间数据一致性,该一致性的协议标准即为HCCS。
在这里插入图片描述

超级IO集群(Compute-IO die)

超级IO集群由4个ICL、1个Hydra接口模块、一个独立的智能管理单元(IMU)组成。
一个超级IO集群中包含多个类型的ICL,如网络ICL、PCIe ICL等

在这里插入图片描述

ICL的内部结构

每个ICL包含系统总线接口、系统存储管理单元SMMU(可选)、用于初始化的系统控制部件(由firmware使用)、若干调度器、分发器等

如图是compute-IO die的ICL数据流
在这里插入图片描述

HAC_ICL:海思自研加速控制器

除了ICL的基本模块,主要集成了硬件安全加速引擎、压缩/解压加速引擎等

IO_MGMT_ICL:集成了USB、RAS等加速引擎的组合部件

IMU

智能管理单元,负责整个芯片管理的部件,独立于鲲鹏处理器的计算应用系统。
在这里插入图片描述

die内互连网络(NoC)

每个超级集群内的子系统通过ring Bus互连互通,结合各类数据传输接口、管理单元共同构成了片上网络。
完整的片上网络由环总线、SLLC、调度器(scheduler)和分发器(Dispatch)等模块组成。

环总线

环总线通过交叉站(Cross Station, CS)的节点互连而成,每个交叉站保证片上系统内部个设备的传输通道按一定的顺序正确且高效的传输。CPU-compute die和Compute-IO die均通过ring bus互联。
上电后环总线无需配置即可工作。

调度器

ICL特有器件,调度以及汇集ICL内多个设备的访存请求并有序传递到SMMU中,经过地址转换后接入ring bus的CS,将数据流量映入片上系统的其他部件。调度器也可以调整设备下发命令的服务质量,也可以对设备流量进行限制。

例如若设备需进行DMA访问,则则系统地址空间主动发起读写操作请求,并向调度器发出汇聚这些操作的请求,系统管理单元处理这一请求后使用物理地址访问总线。

分发器

ICL特有器件,对物理地址译码,以便每个设备访问设备寄存器空间。
和调度器相对应,从NoC中其他设备来的访问请求经分发器分发至正确的设备进行处理;分发器可以通过内部的数据缓冲器平滑高速访问与低俗设备间的速率差异。

die间互连:SLLC接口

超级集群(die)间通过超级集群链路层连接器(SLLC)互连。
SLLC连接多个die的环总线通路,将一个die的环总线数据按照约定的路由传输到另一个die的环总线中。
由于die内数据流量大于die间的流量,因此SLLC的带宽一般小于ring bus提供的最高带宽。
由于ring bus的data width更大,因此SLLC需要将数据分组打包并压缩后才进行传输。

片间互连:Hydra接口

Hydra是支持片间扩展的华为私有高性能接口,实现多芯片在PCB板上互连,并实现多芯片间的数据一致性高效互连互通。
该接口由协议适配层和链路层两部分模块组成,同时集成了华为自研的维护多集群数据一致性的协议(Huawei Cache Coherency System,HCCS),物理层则使用高速serdes通道实现。

协议适配层(Protocol Adapter, PA)

PA模块主要完成ARM架构CHI协议和Hydra之间的适配功能。
CHI协议是die间和片间使用的总线协议。

PA模块的主要特征
  1. CHI和Hydra间数据格式的转换
  2. 片间发送端请求缓冲区管理
  3. 片间接收端地址相关性检测
  4. 片间数据一致性处理
  5. 与环总线以及链路层(HLLC)间的流控处理
  6. 片间流量统计

Hydra接口链路层控制器(HLLC)

完成Hydra协议数据在serdes物理通道上的数据格式适配;在发送端完成Hydra协议中个逻辑通道的数据调度和CRC嵌入;在接收端完成CRC校验和来自发送端各通道的数据分发

NoC中的地址译码组件

为了保证各集群间的互访能正确实现,由ring bus中各节点中的地址译码器组成了映射和译码组件。
该组件可以根据访问的属性和地址识别传输目的地,并产生正确的目标表示(TgtID)用于片上网络的路由判断,以保证请求的正确传输。

鲲鹏架构将寻址译码分为3个层次,逐级的将访问分配到对应设备

  1. 一级译码集成在访问请求进入ring bus接口前,译码指示正确的环总线端口
  2. 二级译码集成在各ICL的分发器内,译码指示ICL内正确的分发器出口
  3. 三级译码继承咋使用共享总线的分发器出口处,译码结果指示具体的设备

chiplet封装

采用CoWoS封装,die间双向通信带宽高达300GB/s以上
在这里插入图片描述

处理器的NUMA架构

待补充

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1195748.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flutter笔记 - 关于 fit 属性以及相关知识的总结

Flutter笔记 关于 fit 属性以及相关知识的总结 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/13434451…

lenovo联想小新 Air-14 2019 AMD平台API版(81NJ)原装出厂Windows10系统

下载链接:https://pan.baidu.com/s/1HCC66EH4UOcgofRx5_v1oA?pwdlgqw 提取码:lgqw 原厂系统自带所有驱动、出厂主题壁纸、系统属性专属LOGO标志、Office办公软件、联想电脑管家等预装程序 所需要工具:16G或以上的U盘 文件格式&#xf…

关于Google Play应用商店的优化技巧1

作为Google Play商店ASO策略的一部分,我们需要查明并优化有助于应用排名的各种因素。在这里将介绍几个可以增强我们列表并增加在搜索中被发现的机会的技巧。 1、优化标题和描述字段。 在创建有效的Google Play商店列表时,我们应该考虑的第一个元素是应用…

易货:一种绿色、高效的商业模式

随着社会经济的发展和人民生活水平的提高,人们手中闲置的物品越来越多,如何将这些物品盘活,成为了一个亟待解决的问题。易货商业模式应运而生,它不仅可以将闲置物品变成财富,还可以为企业和个人带来更多的商机和资源。…

【题解】2023-11-11 B层模拟赛T1

宣传一下 算法提高课整理 CSDN个人主页:更好的阅读体验 原题链接 CF461B 题目描述 一棵树有 n n n 个节点, n − 1 n − 1 n−1 条边。树上的节点有两种:黑,白节点。 Tyk 想断掉一些边把树分成很多部分。 他想要保证每个部…

【优选算法系列】【专题二滑动窗口】第二节.1004. 最大连续1的个数 III和1658. 将 x 减到 0 的最小操作数

文章目录 前言一、最大连续1的个数 III 1.1 题目描述 1.2 题目解析 1.2.1 算法原理 1.2.2 代码编写二、将 x 减到 0 的最小操作数 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 2.2.2 代码编写总结 前言 一、最大连…

迈巴赫S480升级流星雨大灯 最高配的数字大灯

“流星雨”数字大灯,极具辨识度,通过260万像素的数字微镜技术,实现“流星雨”仪式感与高度精确的光束分布;在远光灯模式下,光束精准度更达之前84颗LED照明的100倍,更新增坡道照明功能,可根据导航…

进程线程

从Android3.0开始,系统要求网络访问必须在子线程中进行,否则会抛出异常,这么做是为了避免主线程被阻塞而导致ANR,那么网络访问的操作就必须要放到线程中去执行。 进程 进程是操作系统结构的基础,是程序在一个数据集合…

极兔面试:微服务爆炸,如何解决?Uber 是怎么解决2200个微服务爆炸的?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 谈谈你的DDD落地经验? 谈谈你对DDD的理解&#x…

基于HF transformers的AI建模和训练实战

我们经常使用 scikit-learn 对监督学习和无监督学习任务的数据进行建模。 我们熟悉面向对象的设计,例如启动类并从类中调用子函数。 然而,当我个人使用 PyTorch 时,我发现与 scikit-learn 类似但又不一样的设计模式。 在线工具推荐&#xff…

11个最受欢迎的3D打印AI软件【2023】

如今,人工智能(AI)似乎已经成为每个人都在谈论的话题。 尽管围绕该技术的伦理问题存在着重要的讨论,但不可否认的是,人工智能可能成为包括 3D 打印在内的许多不同行业的重要工具。 事实上,人工智能在 3D 打…

【Java王大师王天师】关注有礼博客模板

【点我-这里送书】 本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的…

单片机启动流程

存储器 ​ 一个单片机中存在rom和ram,Soc也有rom和ram(ddrx),部分Soc还包含MMU(Memory Manage Unit 内存管理单元)— (用于系统内存管理,比如说虚拟内存空间,内存区间的…

YOLOV5改进:RefConv | 即插即用重参数化重聚焦卷积替代常规卷积,无额外推理成本下涨点明显

1.该文章属于YOLOV5/YOLOV7/YOLOV8改进专栏,包含大量的改进方式,主要以2023年的最新文章和2022年的文章提出改进方式。 2.提供更加详细的改进方法,如将注意力机制添加到网络的不同位置,便于做实验,也可以当做论文的创新点 3.涨点效果:RefConv,实现有效涨点! 论文地址 …

响应式婴幼儿早教启蒙网站模板源码

模板信息: 模板编号:6830 模板编码:UTF8 模板颜色:红色 模板分类:学校、教育、培训、科研 适合行业:培训机构类企业 模板介绍: 本模板自带eyoucms内核,无需再下载eyou系统&#xf…

AI批量剪辑矩阵托管系统----源码技术开发

AI批量剪辑矩阵托管系统----源码技术开发 抖音账号矩阵系统是基于抖音开放平台研发的用于管理和运营多个抖音账号的平台。它可以帮助用户管理账号、发布内容、营销推广、分析数据等多项任务,从而提高账号的曝光度和影响力。 具体来说,抖音账号矩阵系统可…

如何通过命令查看某一文件的内容改动和提交记录

1. 查看最近10条的提交记录 一行显示 git log --oneline -102.查看某一个文件的提交记录 git log --oneline -10 文件路径3.查看某个文件的修改内容 查看某次提交的修改 内容 git show bcd9299 查看某次提交某个文件的修改内容git show bcd9299 文件路径4.对比两次提交内容的…

2011年09月21日 Go生态洞察:Go图像处理包

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

3.0 熟悉IDAPro静态反汇编器

IDA Pro 是一种功能强大且灵活的反汇编工具,可以在许多领域中发挥作用,例如漏洞研究、逆向工程、安全审计和软件开发等,被许多安全专家和软件开发者用于逆向工程和分析二进制代码。它支持大量的二进制文件格式和CPU架构,并提供了强…

C++入门篇3(类和对象【重点】)

文章目录 C入门篇3(类和对象【重点】)1、面向过程和面向对象2、类的引入3、类的定义4、类的访问限定符及封装4.1、访问限定符4.2、封装 5、类的作用域6、类的实例化(对象)7、类对象模型7.1、类对象的存储方式7.2、结构体&#xff…