鲲鹏920的架构分析

*本文信息主要来源于书籍《鲲鹏处理器架构与编程》以及论文《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架构

待补充

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ECharts修改tooltip样式

tooltip不支持rich&#xff0c;formatter返回的是html片段&#xff0c;可以在这个返回的片段里面增加类名。以达到更改tooltip文字格式的效果。所以&#xff0c;直接写html的样式就可以 静态数据 formatter: (params) > {console.log(params, params)return <h2 style&q…

C++多态特性

&#x1f388;个人主页:&#x1f388; :✨✨✨初阶牛✨✨✨ &#x1f43b;强烈推荐优质专栏: &#x1f354;&#x1f35f;&#x1f32f;C的世界(持续更新中) &#x1f43b;推荐专栏1: &#x1f354;&#x1f35f;&#x1f32f;C语言初阶 &#x1f43b;推荐专栏2: &#x1f354;…

Redis之主从复制

文章目录 一、什么是Redis主从复制&#xff1f;1.作用2.配置主从复制的原因3.环境配置 二、一主二从三、复制原理四、链路总结 一、什么是Redis主从复制&#xff1f; 主从复制&#xff0c;是指将一台Redis服务器的数据&#xff0c;复制到其他的Redis服务器。前者称为主节点(ma…

HTML点击链接强制触发下载

常见网页中会有很多点击链接即下载的内容&#xff0c;以下示范一下如何实现 <a href"文件地址" download"下载的文件名字&#xff08;不包括后缀&#xff09;">强制下载</a> 下面举个例子&#xff1a; <a href"./image/test.jpg"…

Azure 机器学习 - 如何使用模板创建安全工作区

目录 先决条件了解模板配置模板连接到工作区疑难解答错误&#xff1a;Windows 计算机名的长度不能超过 15 个字符&#xff0c;并且不能全为数字或包含以下字符 本教程介绍如何使用 [Microsoft Bicep]和 [Hashicorp Terraform]模板创建以下 Azure 资源&#xff1a; Azure 虚拟网…

王学岗visibility改变后调用onLayout()

自定义控件的时候发现了一个bug。 Button位移动画执行结束后我设置了一个不相关的TextView的可见性由gone变为visible.令人郁闷的是&#xff0c;只要我注释的地方放开。动画执行结束后button都会重新绘制在位移动画开始的位置。注释掉这段代码就正常。 经过分析后得知 View的Vi…

算法:FloodFill算法

文章目录 算法原理图像渲染岛屿数量岛屿的最大面积被围绕的区域太平洋大西洋水流问题扫雷游戏衣橱整理 算法原理 FLoodFill算法通俗来讲&#xff0c;就是洪水给地势带来的变化&#xff0c;而实际上题目要求的就是一个连通块问题&#xff0c;那本质还是暴搜和DFS/BFS相结合&…

dream_ready

&#x1f9f8;欢迎来到dream_ready的博客&#xff0c;&#x1f4dc;相信您对这篇博客也感兴趣o (ˉ▽ˉ&#xff1b;) Python 语法及入门 &#xff08;超全超详细&#xff09; 专为Python零基础 一篇博客让你完全掌握Python语法 路的尽头是什么&#xff1f;这是我年少时常伴在嘴…

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

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

【chat】4: ubuntu20.04:数据库创建:mysql8 导入5.7表

【chat】3: ubutnu 安装mysql-8 并支持远程访问 已经支持 8.0的SQLyog 远程访问:大神2021年的文章:sql是5.7的版本,我使用的ubuntu20.04,8.0版本:chat数据库设计 C++搭建集群聊天室(七):MySQL数据库配置 及项目工程目录配置 User表,以id 唯一标识 Friend 表,自己的id…

如何在 Windows 11 上恢复丢失的文件?(4种方法)

在 Windows 11 设备上丢失重要文件感觉就像一场噩梦。这是您希望时光倒流并撤消意外删除或避免那些意外的系统故障的时刻之一。这种情况带来的挫败感和焦虑感简直难以承受。但是&#xff0c;嘿&#xff0c;不要绝望&#xff01;我们随时为您提供帮助。 在这本真诚的指南中&…

JavaFX增删改查其他控件01界面展示

界面展示 小技巧 增删改查思路--查 底层select * from 表 where sname like %% --1.拿文本框的关键字 --2.调模糊查询的方法 myShow("")--删 底层 delete from tb_stu where sid? --1.想方设法拿学号 --1.先拿到用户所选中的学生对象 Student --2.调用方法传对象.g…

Run highlighted commands using IDE

背景 有时候在 IEDE 的命令行中输入命令&#xff0c;会弹出如下提示&#xff0c;或者命令被着了背景色了&#xff0c;是怎么回事&#xff1f; 其实就是提示你可以使用 IDEA 的功能替代命令行。比如使用ctrlenter或cmdenter之后使用的就是 IDEA 里的功能 直接enter运行&#x…

国家数据局正式揭牌,2030年数据要素市场规模或破万亿

10月25日&#xff0c;国家数据局正式挂牌&#xff01; 自今年3月国务院通过《党和国家机构改革方案》提出组建国家数据局以来&#xff0c;国家数据局的组建工作一直在紧锣密鼓地进行中。经过7个月的筹备工作&#xff0c;国家数据局于2023年10月25日挂牌成立。 根据《党和国家机…

JWT令牌

引入maven依赖坐标 <!--java-jwt坐标--> <dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>3.13.0</version></dependency> <!--单元测试坐标--><dependency>&…

ROS 学习应用篇(三)话题Topic学习之自定义话题消息的类型的定义与调用

自定义消息类型的定义 Person.msg文件的定义&#xff08;数据接口文件的定义&#xff09; 创建msg文件 首先在功能包下新建msg文件夹&#xff0c;接着在该文件夹下创建文件。 定义msg文件内容 一个消息最重要的就是数据结构类型。这就需要引入一个msg文件&#xff0c;用于…

css:两个行内块元素和图片垂直居中对齐

目录 两个行内块元素垂直居中对齐图片垂直居中问题图片和文字垂直居中对齐参考文章 两个行内块元素垂直居中对齐 先看一段代码&#xff1a; <style> .box {width: 200px;height: 200px;line-height: 200px;font-size: 20px;text-align: center;display: inline-block;b…

Python制作国旗头像

今天教大家用几行代码快速实现一个国庆风头像&#xff0c;效果是这样的 素材&#xff1a;一张头像、一张国旗图片 思路&#xff1a;将国旗图片的每个像素点的透明度从左至右&#xff0c;从上到下逐次递减后&#xff0c;将其盖在头像上面就形成了最终的效果图。 完整代码&…

如何评价C语言形式化语义工作Clight ?

如何评价C语言形式化语义工作Clight &#xff1f; 编程语言的形式语义一即合法程序及 其行为的数学规范。 现实编程语言的形式语义庞大且复杂。这就提出了验证这些语义的问题:我们如何确保它们正确捕最近很多小伙伴找我&#xff0c;说想要一些C语言的资料&#xff0c;然后我根…

游读广州|康园环保行

“走出家门&#xff0c;共享阳光”残障人士游读广州项目是由广州市慈善会、广州市善城社区公益基金会资助、广州市黄埔区惠民社会服务中心实施的第四届“创善?微创投”广州市社区公益微创投项目&#xff0c;黄埔区康园工疗站约120名残障人士为服务对象&#xff0c;通过游玩与教…