概述
设计方案
主要有两种设计方案。
RISCV核+ASIC
RISCV核是标准的基于RISCV指令集的CPU设计,ASIC部分通常是基于RISCV自带的向量扩展指令集构建的向量处理器,或是自定义的矩阵计算单元。
根据CPU+AI ASIC部件的接口可以分为紧耦合和松耦合的设计1。
CPU+AI AISC紧耦合设计
紧耦合设计最大的特征是软件对硬件透明,具体设计时以CPU主干为骨架,将AI计算单元集成在CPU内部,共享PC(程序计数器)、寄存器堆等流水线单元,仅在执行单元部分增加了矩阵或向量单元,适用于低功耗场景
将加速部件作为Core流水线的执行部件,通过自定义的指令来控制部件,这种方式有如下优势:
1)普通指令核自定义指令共享软件栈,软件设计更加简单
2)比较容易升级
3)逻辑设计比AISC IP设计与集成工作量更小
4)通过自定义的设计工具,该设计方案可以减少投入市场时间
通过向量扩展指令加速AI
玄铁C906/908/910/920 向量计算扩展
C908架构图
2022年发布的玄铁C908是一款兼容RISC-V架构的64位高能效处理器,支持同构多核架构,支持多cluster,每个cluster支持1~4个C908核心,User模式支持RV64及RV32模式。采用9级双发按序流水线,典型工作频率>2GHz,通过指令融合技术进一步提升流水线效率,实现了卓越的能效比。兼容RVA22标准,同时兼容RISC-V最新Vector1.0标准以进一步提升AI算力。
如图为C908的架构图:
C920架构图
2021年发布的C920MP 是基于 RISC-V 指令架构的 64 位高性能多核心处理器,主要面向对性能要求严格的边缘计算领域,如边缘服务器、边缘计算卡、高端机器视觉、高端视频监控、自动驾驶、移动智能终端、5G 基站等。C920MP 采用同构多核架构,支持 1~4 个 C920 核心可配置。每个 C920 核心采用自主设计的微体系结构,并重点针对性能进行优化,引入 3 译码 8 执行的超标量架构和多通道的数据预取等高性能技术。
如图为C920微体系结构图:
C908核微架构参考:
XuanTie C908: High-performance RISC-V Processor Catered to AIoT Industry
官方网站C908
PPA
与C906性能对比:
XuanTie C908 Accelerates AI with Software and Hardware Fusion
SiFive X290/X390:向量扩展
X390是具有可扩展矢量计算功能的高性能 AI 数据流处理器,基于 X280 的成功,X390 在单核配置下,以矢量长度翻倍、搭配双矢量 ALUs,即可将矢量计算性能增长 4 倍。
SiFive官网产品页面
LLM在X390 FPGA上的布署与最佳化
VCIX(Vector Coprocessor Interface eXtension )接口
SiFive官网:X280 Processor Innovation - the Vector Coprocessor Interface Extension
自定义扩展指令
这种场景设计下的CPU流水段和执行部件有很强的互操作性,具体表现可以是:
- 自定义寄存器,通过自定义load/store指令将数据在寄存器和内存间交互
Andes RVV-ACE
Andes在向量部件中自定义指令(Andes Custom Extension),用于Transformer的非线性计算
Youtube: Enhancing Transformers: Accelerating Nonlinear Function Computation On… Heng-Kuan Lee & Simon Wang
玄铁C907 矩阵计算扩展
采用传统向量计算的AI增强技术带来的性能提升难以匹配高速发展的应用需求,这也使得各CPU厂商的研究目光从向量计算逐渐