跳转至

TEPL 编码载体

架构角色

TEPL 是 PTO Tile 操作保持不变的 Mode/Function 编码载体,不是执行单元。 每个合法 TEPL selector 都由 v0.58 机器可读目录分类,并且只派发到一个执行单元:

执行单元 职责 操作数量
VEC Tile/Tile 与 Tile/标量的逐元素计算 35
SFU 复杂函数、归约/展开、重排和不规则计算 52

TLSU 与 CUBE 保留各自的编码族和执行单元。因此完整的 Tile 执行单元集合为 VECSFUTLSUCUBE

编码与汇编

TEPL 的 Mode/Function 编码不变。BSTART.TEPL 是唯一编译后的译码身份。 汇编器还接受:

  • 当所选操作在目录中属于 VEC 时使用 BSTART.VEC
  • 当所选操作在目录中属于 SFU 时使用 BSTART.SFU

规范反汇编根据所选操作的执行单元输出 BSTART.VECBSTART.SFU。 这些别名不占用新编码空间,也不产生额外译码身份。

分类

七个规范语义类别如下:

类别 执行单元归属 数量
elementwise-tile-tile 由目录指定为 VEC 或 SFU 25
tile-scalar-and-immediate VEC 15
reduce-and-expand SFU 28
memory-and-data-movement TLSU 9
matrix-and-matrix-vector CUBE 12
layout-and-rearrangement 由目录指定为 SFU 或 TLSU 7
irregular-and-complex SFU 13

VEC 只执行逐元素计算。需要复杂硬件的操作,包括超越函数、归约、展开和 不规则处理,均由 SFU 执行。每条操作的精确归属以 isa/v0.58/state/pto_ops.json 为规范来源,说明文档不得重新定义第二套分类。

块行为

TEPL 承载的操作是头部驱动的 Tile 操作,不包含 SIMT 块体,B.TEXT 非法。 操作数与描述符要求由所选操作和生成的 v0.58 目录定义。

除非具体指令页面规定更严格的规则,TEPL 承载的块只支持顺序落下。 它们操作 Tile 状态,不能替代 TLSU 的内存搬运或 CUBE 的矩阵执行。