跳转至

第一部分:架构与汇编基础

这一部分介绍汇编程序员可见的 Ascend 910B 结构、配置字、数值边界、掩码/地址语义和架构周期模型。周期表用于排布分析,不等同于芯片实测性能。

目标名称

项目
LLVM/Clang triple hiipu64-hisilicon-cce
Vector 代码目标 dav-c220-vec
Cube 代码目标 dav-c220-cube
通用架构代号 dav-c220 / V220
指令宽度 32 bit
指令对齐 4 byte
目标文件字节序 little-endian

dav-c220-vec 面向 Vector/AIV 代码生成,dav-c220-cube 面向 Cube/AIC 代码生成。二者共享 Scalar、控制流和部分搬运能力,但可用 builtin、指令后缀及调度路径并不完全相同。

程序员需要掌握的五件事

  1. Scalar 负责地址、循环、条件和控制寄存器。
  2. Vector 主要在 UB 上进行逐 lane 运算。
  3. Cube 从 L0A/L0B 读取矩阵块并向 L0C 累加。
  4. MTE 在 GM、L1、L0 与 UB 之间异步搬运和转换布局。
  5. 跨流水线的数据依赖必须由事件或屏障明确表达。

建议依次阅读 架构与执行模型Xs/描述字/Cube shape数值语义MASK/VA 与访存地址与数据对齐周期与冲突