工作上ppl是什么意思
对于不熟悉Celerity的人,这是一个由多家大学共同合作开发的开源多核RISC-V分层加速器芯片项目。它是DARPA快速电路实现(CRAFT)计划的一部分,旨在缩短定制集成电路的设计周期。Celerity团队首次在Hot Chips 29上展示了这款芯片。
去年,在VLSI 2019会议上,Celerity团队再次展示了第二代芯片的PLL和NoC。演示由密歇根大学的Austin Rovinski负责。
接下来,我们将简要概述整个Celerity SoC:它是一个多核多层AI加速器。芯片主要包括三个层次:通用层、大规模并行层和专用层。设计这种分层SoC的目的是为了实现高灵活性和更高的电源效率。
通用层能够执行各种操作,如通用计算、内存管理以及控制芯片的其余部分。它集成了五个高性能乱序RISC-V Rocket内核。
大规模并行层包含496个定制设计的RISC-V内核,集成在一个网格中。这些内核被称为Vanilla-5,是有序标量内核,占用空间比Rocket内核少40倍。最后一层是集成二值网络(BNN)加速器的专业化层。这三层通过DDR存储器接口紧密连接。
Celerity的Manycore Mesh时钟由自定义数字PLL提供。这个PLL是一个一阶ΔΣ频率数字转换器。整个数字PPL是合成设计,自动放置和布线。PLL的频率范围在10 MHz至3.3 GHz之间。
如许多学术项目一样,硅面积在Celerity的设计中也非常重要。整个芯片面积为25平方毫米。许多设计决策都着眼于限制硅面积,以降低复杂性。Manycore本身是一个3.38毫米乘4.51毫米的阵列,约占整个芯片的61%。Vanilla-5核心是支持整数和乘法扩展的有序流水线RV32IM核心,这些内核在硅芯片中的频率高达1.4 GHz。
为了简化多核阵列的复杂性,Celerity利用分区的全局地址空间进行数据包和远程存储编程模型。该设计采用全局分区地址空间(GPAS),不使用高速缓存,而是使用整个内存地址空间映网络中的所有节点上的32位地址方案。这种方法消除了虚拟化或翻译的需求,从而大大简化了设计。他们声称这种设计将区域开销降低了20倍。
值得注意的是,由于该多核阵列主要针对AI加速工作负载,因此它们采用了显式分区的暂存器存储方案。在这种类型的代码中,控制存储器局部性的能力尤为重要。每个内核都可以自由执行加载并存储到任何本地地址,但是只能执行存储到远程地址的操作。该远程存储编程模型方案通过两个网络实现:数据网络和用于管理优秀存储的可心计数器网络。
外部主机与多核阵列之间的通信是通过内存映射扩展到阵列底部的十六个路由停靠点实现的,这些点使消息能够进出多核阵列,到达芯片上的大核和其他外设。
Celerity并没有使用常见的wormhole routing,而是将地址和数据合并到单个flit数据包中。这种设计减少了数据发送所需的标题/尾部信息,并且由于取消了保留的路由,也摆脱了HOL阻塞。每个flit都是80b宽,包含控制位、数据位、节点地址位和存储器地址位。flit的节点地址允许将数据发送到任何目的地。这种设计的主要好处是,每个周期可以执行一个存储操作,因为仅将一个flit注入网络。
整个路由设计简洁高效,每个节点都有一个路由,使用循环仲裁确定数据包的优先级。路由器与内核位于相同的时钟域,能够实现高达1.4 GHz的运行频率。