• 正文
  • 相关推荐
申请入驻 产业图谱

DSA架构介绍

10/14 09:43
791
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、DSA架构是什么

DSA 的全称是Domain Specific? Architecture,即 “领域专用架构”。要理解DSA,最好的方法是与它的对立面——通用架构 进行对比。

1. 通用架构

· 代表:我们日常使用的CPU就是最典型的通用架构。
· 设计哲学:追求“无所不能”。它被设计用来处理各种各样、千变万化的任务。

· 特点:

· 灵活性极高:通过软件编程,可以执行任何计算任务。

· 硬件相对通用:其内部硬件(如ALU、缓存、控制单元)是为通用操作优化的,不针对任何特定任务。

· 性能/能效折中:因为要兼顾所有情况,所以在处理任何单一特定任务时,其性能和能效往往不是最优的。

2. 领域专用架构(DSA)

· 代表:谷歌的TPU英伟达的Tensor Core、苹果的神经网络引擎、各种AI加速芯片、视频编解码芯片等。
· 设计哲学:追求“一招鲜”。它只为某一个特定领域的计算任务进行精心设计和优化。

· 特点:

· 极高的效率:硬件资源被精确地配置给该领域最核心、最耗时的算法和操作。

· 性能极强:通过并行化、定制数据流、专用内存层级等方式,在该特定任务上性能远超通用处理器

· 能效比极高:由于去除了不必要的通用逻辑,只保留必要功能,能量几乎都用在“刀刃”上。

· 灵活性受限:它只擅长自己领域内的工作,无法像CPU一样编程去处理任意任务。

核心比喻:

· CPU(通用架构) 像是一个 “全能运动员” ,什么项目都会,但可能都不是世界顶尖。

· DSA(领域专用架构) 像是一个 “奥运专项冠军” ,比如举重冠军或游泳冠军,在他自己的项目上无人能敌,但让他去跑马拉松可能就不行了。

二、为什么需要DSA

驱动DSA兴起的三大趋势:

1. 摩尔定律的放缓:晶体管尺寸缩小带来的免费性能提升已经接近物理极限,不能再指望通过制程工艺升级来轻松获得性能飞跃。

2. 登纳德缩放定律的终结:晶体管变小,功耗密度却无法同步降低,导致“功耗墙”成为芯片设计的主要瓶颈。能效变得比峰值性能更重要。

3. 数据洪流与AI浪潮:特定计算领域(如AI机器学习、图形处理、大数据分析)的工作负载爆炸式增长,并且这些负载的特征非常鲜明和稳定(例如,AI主要是大量的矩阵乘加运算)。

在这种情况下,计算机体系的泰斗们(如图灵奖得主David Patterson和John Hennessy)提出,未来的出路不再是制造更“通用”的处理器,而是转向更“专用”的架构,即用领域专用性来换取极致的性能和能效。

三、DSA是如何实现高性能和高能效的?

DSA并非简单地设计一个“硬连线”的电路,其核心在于 “软硬件协同设计” ,针对领域内的计算特征和数据特征进行深度优化。

1. 针对计算特征优化:接近数据流

· 通用CPU是“控制流”架构,通过指令集指挥ALU工作,指令解码和调度开销大。

· DSA更倾向于“数据流”架构。硬件单元的组织和连接方式直接映射了目标领域的核心算法(如AI的乘法-累加树、视频编解码的像素流水线)。数据在精心设计的专用管道中流动,减少了不必要的控制开销和数据搬运。

2. 针对数据特征优化:高效的内存层级

· “内存墙” 是性能的主要瓶颈。数据在慢速的主内存和快速的处理器之间搬运非常耗能和耗时。

· DSA 会设计专用的、多层次的内存系统。

· 高带宽:为满足巨大的数据吞吐需求(如AI芯片),使用超高带宽的片上存储或HBM。

· 数据复用:通过精巧的数据排布,让数据在靠近计算单元的小缓存中被反复使用,极大减少访问外部大内存的次数。

3. 极致的并行化

· 识别出目标领域中可以并行执行的操作,然后在硬件上大规模复制对应的计算单元。
· 例子:GPU和TPU内部有成千上万个专门用于执行乘加运算的核心,可以同时处理海量数据。

4. 降低精度

· 很多领域(如图形处理、AI推理)并不需要CPU那样的高数值精度(如64位双精度浮点数)。

· DSA会使用更低的精度(如FP16, INT8, INT4)进行计算,这能显著降低计算单元的面积、功耗,同时提升计算吞吐量。

四、DSA的典型例子

1. 谷歌的TPU

· 领域:人工智能,特别是神经网络推理和训练。

· 专用设计:

· 巨大的脉动阵列 作为核心,专门优化大规模的矩阵乘法。
· 庞大的片上统一缓冲区,用于在本地存储中间结果,减少DDR访问。
· 支持低精度计算(从最初的INT8到后来的BF16等)。

2. 苹果的神经网络引擎

· 领域:移动设备上的AI任务(如人脸识别、照片处理、Siri)。

· 专用设计:高度集成在SoC中,为iPhone的功耗和性能约束专门优化,能高效运行Core ML模型。

3. 英伟达的Tensor Core

· 领域:AI训练和高性能计算。

· 专用设计:虽然内置于通用GPU中,但Tensor Core本身是一个DSA单元。它在一个时钟周期内就能完成一个4x4的矩阵运算,效率远高于传统的GPU CUDA核心。

4. 视频编解码器

· 领域:视频的编码和解码(如H.264, HEVC, AV1)。

· 专用设计:硬件电路直接实现视频编解码标准中的特定步骤(如DCT变换、运动估计、熵编码),其效率是通用CPU用软件解码的数十倍,且功耗极低。

五、DSA的挑战与未来

DSA并非完美无缺,其主要挑战在于:

· 设计成本高:为每个领域设计一个专用芯片,研发投入巨大。

· 灵活性差:如果算法发生变革,专用的硬件可能就会落后甚至失效。

· 编程难度:需要全新的编程模型、软件栈和工具链,对开发者不友好。

未来的方向是“异构计算”:即不再依赖单一的通用处理器,而是将一个CPU(控制中心)、一个GPU(通用并行计算) 和多个DSA(专用任务加速) 集成在同一颗芯片或同一个系统内。

· CPU 负责控制、调度和通用任务。
· GPU 处理大规模的并行图形和计算任务。
· DSA 接管最耗能的特定任务(如AI、视频、音频、安全加密)。

通过软件,系统可以智能地将不同的任务分发给最合适的计算单元去执行,从而实现整体性能与能效的最大化。这正是现代SoC设计的核心思想。

总结:

DSA架构是一种“牺牲通用灵活性,换取在特定任务上极致性能和能效”的芯片设计方法。它通过软硬件协同设计,深度优化计算和内存层级,来应对后摩尔时代通用计算性能增长乏力的挑战,是未来计算架构发展的核心方向之一。

相关推荐