处理器与AI芯片-阿里平头哥-NPU&RISC-V

前言

阿里平头哥在高性能处理器与AI芯片主要有玄铁处理器、含光人工智能芯片、羽阵RFIC系列、倚天处理器芯片、无剑SoC。

结合最近几年阿里平头哥在HotChips、ISCA发布的报告和论文,总结了含光800-NPU加速器、玄铁810处理器-RISC-V硬件架构,可作为学习、研发高性能处理器与AI芯片的参考资料。本人才疏学浅,如有错漏之处,敬请指正。

1. 含光800

含光:上古三剑,一曰含光;视不可见,运之不知其所处;泯然无际,经物而物不觉。

商业驱动的设计

系统框图

顶层:4 核,带环形总线;命令处理器 (CP);PCIE 第 4 代 X16。

每个核心:张量引擎 (TE);池化引擎(PE);内存引擎(ME)。

仅 SRAM:192MB 本地内存 (LM);分布式共享;无DDR。

张量引擎

权量+激活固定

数据复用:通过W 缓冲区、A 缓冲区、组播

避免 img2col():通过滑动窗口访问

融合OP:CONV-BN-ResidualADD-ReLU

将 CONV2D 映射到张量引擎

池化引擎

池化单元:POOLs、ROIs,ROI_align 2

INTP单元:插值、ROI_align 1

比例/偏差单位:缩放/偏置操作,数据格式化

内存引擎

环形总线

板端内存、重塑内存

PCIE和x-core、张量复制、矩阵转置、矩阵到权重、图像展平

192MB 片上 SRAM

1个R/W SRAM模块:高密度、低功率

2块W&A:每个区块有16个模块

4个集群:分布式共享

4个核心中的每一个都有48MB:通过ME和环形总线跨核心进行内存复制

压缩和量化存储/处理

压缩模型:Sparsity Engine可使用位掩码打开包装,修剪是可选的

量化计算和存储:

矢量单元w/FP-24:1sign.8exp.15man

INT-8/16中的矩阵计算

FP-24中的矢量计算

命令级工作流

DNN模型:

SW:FE/编译器:

模型网络

consts:scale、bias、qnt

权重参数

SW:RT/驱动程序:

Cmd队列:

NPU Core:

Task0、Task1、Task2

指令级工作流

特定于域的指令集

–类似CISC,操作融合

–张量级别的粗粒度数据(HW分解和ctr)

3个引擎之间的同步

–指令中的嵌入位

–硬件依赖性检查器

工作流

(a) 算法映射

(b) 指令

(c) 在核心0上执行

可扩展任务映射

适用于中小型:数据并行性、多个模型

对于大型型号:层流水线、模型并行、混合并行

对于X-Large型号:多芯片流水线

实施

峰值性能(INT8 TOPS)

频率(MHz)

TDP(瓦特)

面积(毫米^2)

工艺(nm)

软件栈

Caafe、MXNet、TensorFlow、ONNX

编译器

训练后网络

转换、量化、优化、编译

优化后的推理网络

应用程序推理运行

CPU:CPU算子、MLK、CPU

NPU:NPU引擎算子、运行态、用户态驱动、内核态驱动、NPU

软件栈

2.玄铁910

构建AIoT时代的芯片基础设施

玄铁-不断发展的处理器架构

超高性能架构-玄铁910

RISC-V RV64GCV:

基于集群的多核架构

每个集群 1/2/4 个核心

32KB/64KB L1 D$; 32KB/64KB L1 I$

64位、12级、乱序

3 次解码,8 次发布

双问题无序内存访问

高性能混合分支处理

多模式动态数据预取

用于人工智能加速的矢量引擎

人工智能、边缘服务器、工业控制、ADAS

兼容RISC-V规范

扩展增强 - RISC-V Turbo

深层超标量无序管道

前端

获取 8 条指令/周期;每个周期解码 3 条指令;第 8 期指令/周期;

后端

无序内存访问;专用分支处理;乱序向量计算

无序管道

取指令;指令译码及发出;装载/存储管道

支管道:ALU/DIV管道;ALU/MUL管道;矢量管道

具有混合预测功能的取指单元

混合多模式分支预测

分支方向预测

分支目标预测

返回地址预测

间接分支预测

高带宽并行提取

128位读取

并行封装多达 8 条指令

指令缓存方式预测

循环加速

双问题无序加载存储单元

无序双重发行

加载/存储地址管道;独立存储数据管道;推测失败预测。

快速完成加载/存储

3 个循环加载使用;1 个周期存储执行。

强大的预取能力

多模式和多流;虚拟地址和物理地址预取;可配置的预取容量。

高效多核互联

解耦处理器接口单元 (PIUx)

MOESI 一致性协议

基于目录的架构

支持探听过滤器

可配置的L2缓存,高达8MB

支持 ECC

AI优化矢量计算引擎

兼容 RISC-V 0.7.1 矢量扩展

支持 FP16/32/64、INT8/16/32/64

256 位操作宽度,VL = 128 和 2 个流水线

每个周期两个 128 位向量 ALU 操作

每个周期 1 个 128 位向量加载和 1 个 128 位向量存储

直接访问向量加载和向量存储上的L1$

双发出乱序向量执行管道

每个集群超过 300GFLOPS 的 FP16 计算能力(32 FLOPS/核心/周期 x 2.5 GHz x 4 核心)

扩展至 FP32 时,FP16 计算能力减半

AISC实施

工艺技术:台积电12nm FinFET

工作频率:2.0 GHz a ~ 2.5 GHz b

a.LVT 6T-turbo STD 电池,0.8V VDD,TT 85oC

b.30% ULVT 标准电池,1.0V VDD,TT 85oC

每芯面积(不含L2$):0.6 mm2(无VEC),0.8 mm2(有VEC)

总结

与Google、百度类似,阿里也在自研云服务器芯片,已经大规模上应用于阿里云和数据中心。

参考文献

HC32-2022:含光800https://www.hc32.hotchips.org/assets/program/conference/day2/HotChips2020_ML_Inference_Alibaba_HanguangNPU_final.pdf

HC32-2020:玄铁910https://www.hc32.hotchips.org/assets/program/conference/day1/HotChips2020_Edge_Computing_Xuantie910_v1.1.pdf

ISCA-2020:玄铁910https://ieeexplore.ieee.org/doc

  • 8
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值