基本架构
====

如下展示了总体的硬件基本架构。其中，AI Core通过数据总线与硬件结构中其它基本单元相连接，基于AscendC开发的算子，通过总线传输并最终运行在AI Core上。下文的编程模型基于硬件架构的抽象进行介绍，了解该内容能够更好的理解编程模型；对于需要完成高性能编程的深度开发者，更需要了解硬件架构相关知识，最佳实践中很多内容都以本章为基础进行介绍。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/67/v3/VTXpAmvyQaimbLXBobCeLQ/zh-cn_image_0000002594669522.png?HW-CC-KV=V1&HW-CC-Date=20260612T073657Z&HW-CC-Expire=86400&HW-CC-Sign=DDA7E79FC287CE35EC2AA715510C126435C3FA063968D98D09B4C1644161D16B)

AI Core负责执行标量、向量和张量相关的计算密集型算子，包括三种基础**计算单元**：Cube（矩阵）计算单元、Vector（向量）计算单元和Scalar（标量）计算单元，同时还包含**存储单元**（包括硬件存储和用于数据搬运的搬运单元）和**控制单元**。硬件架构根据Cube计算单元和Vector计算单元是否同核部署分为**耦合架构**和**分离架构**两种。

Kirin9020/KirinX90系列处理器：耦合架构

#### 耦合架构

耦合架构是指Cube计算单元和Vector计算单元同核部署，架构图如下图所示。下图中列出了计算架构中的[存储单元](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/cannkit-storage-unit)和[计算单元](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/cannkit-computing-unit)，箭头表示数据处理流向，MTE1/MTE2/MTE3代表[搬运单元](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/cannkit-storage-unit)。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/60/v3/pGrWZpcLQ8eks3VyeiTmog/zh-cn_image_0000002594829450.png?HW-CC-KV=V1&HW-CC-Date=20260612T073657Z&HW-CC-Expire=86400&HW-CC-Sign=66D8E26A450629053B39465DE562CD0B1D21CD1142C3C99222534F1EDCF4B7FF)

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/e8/v3/7wEU28jBQtSKYTVs05yY5w/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073657Z&HW-CC-Expire=86400&HW-CC-Sign=81AE8D14097789CB82540D90F9D52C30437176FA9802F6381502360E7FA0B262)

图中的虚线箭头表明Kirin9020/KirinX90系列处理器支持Scalar直接读写GM数据。

#### 分离架构

如下图所示，分离架构将AI Core拆成矩阵计算(AI Cube、AIC)和向量计算(AI Vector、AIV)两个独立的核，每个核都有自己的Scalar单元，能独立加载自己的代码段，从而实现矩阵计算与向量计算的解耦，在系统软件的统一调度下互相配合达到计算效率优化的效果。AIV与AIC之间通过Global Memory进行数据传递。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/e8/v3/pBzmZTCOTe6CLRRFU9eY4A/zh-cn_image_0000002625188897.png?HW-CC-KV=V1&HW-CC-Date=20260612T073657Z&HW-CC-Expire=86400&HW-CC-Sign=ADFB1BAC218B3E83DD5BBAC24CAB1C8A354EDECBD0134921C6F4233993165CB7)

*   AIC架构
    
    *   包含4个并行执行单元（搬运单元和计算单元）：MTE1、MTE2、Cube、Scalar。
    *   包含7个内存单元：GM（核外）、L1、L0A、L0B，L0C、BiasTable Buffer、FixPipe Buffer。
*   AIV架构
    
    *   包含4个并行执行单元：MTE2、MTE3、Vector、Scalar。
    *   包含2个内存单元：GM（核外）、UB。
*   典型计算数据流
    
    *   Vector计算：GM-UB- \[Vector\]-UB-GM。
    *   Cube计算：GM-L1-L0A/L0B-Cube-L0C-FixPipe-GM、GM-L1-L0A/L0B-Cube-L0C-FixPipe-L1。