1. 希姆计算STCP920 AI推理卡产品手册

1.1. 版本历史

文档版本 对应产品版本 作者 日期 描述
V1.9.0 STCP920 希姆计算 2024-01-23 增加内存时钟频率、CTO功能的描述。
更新软件规格中PCIe Base Address BAR0、BAR4。
更新配套软件架构图并完善架构图的说明。
V1.8.1 STCP920 希姆计算 2023-11-17 修复软件规格部分的描述问题。
V1.8.0 STCP920 希姆计算 2023-04-04 硬件设计章节新增内存架构内容。
V1.7.0 STCP920 希姆计算 2023-02-13 SMBus带外管理中增加产品序列号的定义。
V1.6.1 STCP920 希姆计算 2022-11-22 编辑优化。
V1.6.0 STCP920 希姆计算 2022-05-16 增加SMBus读写地址描述。
V1.5.0 STCP920 希姆计算 2022-04-11 更新结构外观、散热规格。
V1.4.0 STCP920 希姆计算 2021-08-19 更新内存带宽。
V1.3.0 STCP920 希姆计算 2021-07-13 增加SMBus带外管理说明。
V1.2.0 STCP920 希姆计算 2021-06-19 增加风量需求曲线。
V1.1.0 STCP920 希姆计算 2021-06-07 更新结构散热,增加低功耗说明。
V1.0.0 STCP920 希姆计算 2021-04-08 初版发行。

1.2. 概述

希姆计算STCP920 AI推理卡搭配一颗STCP920芯片,可以通过标准的PCIe接口便捷地集成到各类服务器中,从而快速扩展云端推理能力。STCP920 AI推理卡的硬件设计具有以下特点:

  • 单宽、3/4长、全高(268.44mm × 111.15mm)卡。

  • 功耗为160 W。

  • 采用被动散热,需要系统风扇提供冷却风量。

STCP920芯片使用的指令集基于RISC-V指令集架构。除了RISC-V标量(Scalar)指令,STCP920芯片还实现了RISC-V向量(Vector)指令,以及基于RISC-V的定制指令,将标量、向量、矩阵运算融合在同一套指令集系统中。这套指令集系统既保留了面向通用软件的灵活性,又通过定制指令增加了面向AI场景的专用性,从而满足AI场景的多层次需要,为主流AI场景下的神经网络提供高效的推理加速服务。STCP920芯片具有以下特点:

  • 内部集成了32个运算核(NPC),运算核能完成标量、向量和矩阵的异构运算。每个运算核包含大尺寸的矩阵运算MAC阵列,用于加速矩阵运算。各运算核之间通过高性能的片上网络(NoC)互联。

  • 支持FP16和INT8运算类型,可为云端多样化的人工智能算法及应用需求提供高效的运算处理能力。

1.3. 产品外观

STCP920 AI推理卡正面的示意图如下:

../_images/stcp920-productintro-01.png

STCP920 AI推理卡背面的示意图如下:

../_images/stcp920-productintro-02.png

STCP920 AI推理卡侧面的示意图如下:

../_images/stcp920-productintro-03.png

1.4. 使用要求

1.4.1. 环境要求

STCP920 AI推理卡的环境要求如下:

  • 工作温度:0℃ ~ 50°C

  • 存储温度:-40℃ ~ 75℃

  • 工作湿度:5% ~ 95%相对湿度

  • 存储湿度:5% ~ 95%相对湿度

1.4.2. 时钟要求

STCP920 AI推理卡遵从标准PCIe 4.0协议(PCI Express Card Electromechanical Specification Revision 4.0),需要为整卡提供信号质量满足PCIe 4.0规范(向下兼容PCIe 3.0、PCIe 2.0、PCIe 1.0)的同源时钟。

1.5. 硬件设计

1.5.1. 整体规格

STCP920 AI推理卡的整体规格如下:

规格项 规格说明
标识 型号:STCP920
产地:中国
外观 尺寸:单宽、3/4长、全高(268.44mm × 111.15mm)
重量:721.2 g
功耗 功耗:160 W
电源:一个PCIe 8-Pin电源连接器
散热:被动散热
性能 核心架构:Neural Scale NPC
核心频率:1 GHz
半精度浮点运算速度(FP16):128 TFLOPS
整数运算速度(INT8):256 TOPS
内存 内存类型:LPDDR4X
内存容量:16 GB
内存位宽:256-bit
内存时钟频率:1867 MHz
内存带宽:119.4 GB/s
接口 PCIe接口:PCI Express 4.0 × 16,支持Lane Reversal。
PCI标识符:
- PCIe Vendor ID:0x23e2
- PCIe Device ID:0x0100
- PCIe Sub-Vendor ID:0x23e2
- PCIe Sub-System ID:0x0
CTO(PCIe Completion Timeout)功能:
支持的range(DEVCAP2):10 ms - 250 ms
是否有特殊设定需求(DEVCTL2):默认Completion Timeout值为200 ms

1.5.2. 尺寸规格

STCP920 AI推理卡的尺寸规格为单宽、3/4长、全高(268.44mm × 111.15mm),示意图如下:

../_images/stcp920-productintro-04.png

1.5.3. 电源规格

STCP920 AI推理卡提供一个PCIe 8-Pin的电源接口,您可以直接使用服务器内的PCIe 8-Pin电源插头连接到STCP920 AI推理卡的外接电源连接器上。

电源连接器的位置及管脚排序示意图如下:

../_images/stcp920-productintro-05.png

STCP920 AI推理卡电源接口的输入电压和输入电流规范如下:

电源接口 最小电压 正常电压 最大电压 峰值电流
PCIe Edge Connecter(12V) 11.04V 12V 12.96V 0.5A
PCIe 8-Pin Connecter(12V) 11.04V 12V 12.96V 13A
PCIe Edge Connecter(3V3) 3.0V 3.3V 3.6V 0.3A

1.5.4. 内存架构

希姆计算STCP920芯片包括4个cluster,单cluster包括8个核,可用的内存类型及简单架构图如下:

../_images/stcp920-productintro-14.png

  • L1:单核中可用的缓存,存取速度最快。大小为1.25MiB,芯片上L1的总大小为4×8×1.25MiB。

    说明:1.25MiB又分为两个用途:1MiB的Data Buffer用于存储计算结果,0.25MiB的Weight Buffer用于存储权重数据。

  • LLB:单cluster中的所有核可用的缓存,存取速度中等。单cluster对应的LLB大小为8MiB,芯片上LLB的总大小为4×8MiB。

  • DDR:全局内存,存取速度最慢。单cluster对应的DDR大小为4GiB。芯片上全局内存的总大小为4×4GiB。

1.5.5. 散热规格

1.5.5.1. 温度要求

STCP920 AI推理卡采用被动散热,需要系统风扇提供冷却风量。STCP920芯片内部集成有温度监测点来检测温度,同时板卡的入风口和出风口均有温度监测芯片,可以实时监控温度,便于及时、有效的进行散热。

  • 支持的板卡入风口温度范围:0℃ ~ 50℃。

  • STCP920芯片工作温度范围:0℃ ~ 85℃。同时请关注以下推荐:

    • STCP920芯片推荐工作温度:< 70℃

    • STCP920芯片推荐散热规格:< 80℃

    • STCP920芯片允许的最高工作温度:85℃

1.5.5.2. 风流方向

STCP920 AI推理卡支持在机箱的前端及尾端插卡,板卡支持双向风流,可选的进风风流方向如下:

注意:考虑到STCP920 AI推理卡采用被动散热,服务器的散热设计需要参考各风流风向的风量需求,来满足板卡的散热要求,保证板卡始终处于安全的工作温度范围。

../_images/stcp920-productintro-06.png

1.5.5.3. 吹风方向风量需求

注意:进风口环境温度为平均温度,最小风量需求为通过板卡进风口的风量。最小风量需求为建议值,即使针对同一温度,在不同系统中仍需要根据实际系统实测决定提供的最终风量。

板卡吹风方向的风向示意、进风口环境温度以及对应的最小风量需求如下:

../_images/stcp920-productintro-07.png

我们针对吹风方向实测了进风口环境温度、最小风量需求、压降之间的关系。

  • 进风口环境温度对应的最小风量需求曲线如下:

../_images/stcp920-productintro-08.png

  • 最小风量需求对应的压降曲线如下:

../_images/stcp920-productintro-09.png

1.5.5.4. 吸风方向风量需求

注意:进风口环境温度为平均温度,最小风量需求为通过板卡进风口的风量。最小风量需求为建议值,即使针对同一温度,在不同系统中仍需要根据实际系统实测决定提供的最终风量。

板卡吸风方向的风向示意、进风口环境温度以及对应的最小风量需求如下:

../_images/stcp920-productintro-10.png

我们针对吸风方向实测了进风口环境温度、最小风量需求、压降之间的关系。

  • 进风口环境温度对应的最小风量需求曲线如下:

../_images/stcp920-productintro-11.png

  • 最小风量需求对应的压降曲线如下:

../_images/stcp920-productintro-12.png

1.6. 软件设计

1.6.1. 软件规格

STCP920 AI推理卡PCIe接口的软件规格如下:

  • 1个PF(64bit),相关的PCIe Base Address如下:

    • BAR0:16 GB prefetchable

    • BAR2:32 MB non-prefetchable

    • BAR4:1 GB prefetchable

  • 不支持VF。

STCP920 AI推理卡提供SMBus接口,支持带外管理。SMBus设备地址如下:

  • 8bit读地址:0x55

  • 8bit写地址:0x54

  • 7bit地址:0x2A

SMBus带外管理相关的设计如下:

寄存器定义 地址 读写权限 长度 描述
板卡功耗 0xF1 RO 4 Byte 读取板卡功耗,数据类型float,单位W。
板卡温度 0xF2 RO 4 Byte 读取板卡温度,数据类型float,单位℃。
PCIe Vendor ID and Device ID 0xF3 RO 4 Byte 读取为STCP920 AI推理卡分配的PCIe Vendor ID和Device ID。
- [0:15] Vendor ID:23e2
- [16:31] Device ID:0100
PCIe Sub-Vendor ID and Sub-System ID 0xF4 RO 4 Byte 读取为STCP920 AI推理卡分配的PCIe Sub-Vendor ID和Sub-System ID。
- [0:15] Sub-Vendor ID:23e2
- [16:31] Sub-System ID:0000
固件版本号 0xF5 RO 4 Byte 读取MCU固件版本号。
Power brake 0xF6 WO 1 Byte 向0xF6写入0x55,实现芯片断电。
芯片温度 0xF7 RO 4 Byte 读取芯片温度,数据类型float,单位℃。
产品序列号 0xF8 RO 16 Byte 读取产品序列号,数据类型char。
芯片电压 0x50 RO 4 Byte 读取芯片电压,数据类型UINT_32,单位mV。
MAC电压 0x51 RO 4 Byte 读取MAC电压,数据类型UINT_32,单位mV。

1.6.2. 低功耗模式

STCP920 AI推理卡支持以下低功耗模式:

低功耗模式 描述
省电模式 STCP920芯片包括了4个独立的bank,主机可以通过PCIe控制bank,实现只有1~3个bank工作,让板卡处于省电模式。
待机模式 STCP920芯片包括了4个独立的bank,主机可以通过PCIe控制bank,实现4个bank都不工作,让板卡处于待机模式。在待机模式下,板卡仅有静态功耗损失。
DVFS模式 在低压力应用的场景下,调整STCP920芯片的工作电压或者工作主频来降低板卡功耗:
- 主机可以通过PCIe SMBus管理板卡MCU,降低STCP920芯片核电的工作电压。
- 主机可以通过PCIe调整STCP920芯片工作主频,目前支持的主频有624MHz、800MHz、900MHz、1GHz。频率越低,功耗越低。

1.7. 配套软件

我们为STCP920 AI推理卡量身打造了配套软件,架构图如下:

../_images/stcp920-productintro-13.png

配套软件在多个层级降低调试、部署人工智能应用时的操作难度,同时获得最优的加速效果。

  • 基于硬件的推理加速能力:包括了异构编程环境、AI编译器以及满足监控调试用途的工具,提供了操作芯片的基本能力,并在编译过程中引入了一系列优化策略,同时对实际使用场景中的常见操作封装这些能力。

  • 适配现有生态的推理平台:支持导入基于主流AI框架实现的模型,已打通200余个主流AI模型,支持将STCP920 AI推理卡passthrough到基于KVM的VM,支持在K8s集群中通过k8s-device-plugin申请NPU设备,以及提供端到端推理的优化能力等。

  • 丰富的AI应用框架:基于AI领域的典型任务和典型应用提供针对性的支持,助力客户完善自己的行业方案。