name: PTO指令文档更新模式 description: PTO ISA 新增指令时需要更新的文档文件和位置模式总结。根据 docs/assembly/README.md 中的分类动态选择需要修改的汇编文件。触发:新增 PTO 指令(如 TPOW、TPOWS)后需要同步更新文档时。 license: CANN Open Software License Agreement Version 2.0
PTO指令文档更新模式
此 skill 总结了为 PTO ISA 添加新指令(如 TPOW、TPOWS)时需要更新的文档文件和位置模式。
适用场景
当新增 PTO 指令后,需要同步更新相关文档时使用此 skill。使用 git status 查看当前 staging 的文件列表来确认所有需要修改的文件。
Git Staged 文件分类
新增文件(需预先创建)
| 类型 | 说明 |
|---|---|
| 指令diagrams | docs/figures/isa/{指令名}.svg - 指令操作示意图 |
| 指令文档 | docs/isa/{指令名}.md - 详细指令文档(英文) |
| 指令文档 | docs/isa/{指令名}_zh.md - 详细指令文档(中文) |
修改文件(需同步更新)
| 类型 | 说明 |
|---|---|
| ISA主索引 | docs/PTOISA.md - ISA索引表格 |
| ISA主索引 | docs/PTOISA_zh.md - ISA索引表格(中文) |
| ISA参考目录 | docs/isa/README.md - 按分类排序的指令列表 |
| ISA参考目录 | docs/isa/README_zh.md - 按分类排序的指令列表(中文) |
| 菜单文档 | docs/menu_apis.md - 按分类排序的中文链接 |
| 汇编参考 | docs/assembly/<类别>-ops.md - 根据指令类型动态选择 |
| 指令族矩阵 | docs/mkdocs/src/manual/appendix-d-instruction-family-matrix.md - 指令族矩阵 |
| 指令族矩阵 | docs/mkdocs/src/manual/appendix-d-instruction-family-matrix_zh.md - 指令族矩阵(中文) |
| include索引 | include/README.md - 实现状态表格 |
| include索引 | include/README_zh.md - 实现状态表格(中文) |
动态选择汇编文档
根据 docs/assembly/README.md 中的 ### 2. PTO Tile Operation Categories 决定需要修改的汇编文件。
汇编文件列表(对应分类)
| 分类 | 汇编文件 | 说明 |
|---|---|---|
| Elementwise (Tile-Tile) | elementwise-ops.md | tile-tile 逐元素操作 |
| Tile-Scalar / Tile-Immediate | tile-scalar-ops.md | tile-标量操作 |
| Axis Reduce / Expand | axis-ops.md | 轴归约/扩展操作 |
| Memory (GM ↔ Tile) | memory-ops.md | 内存操作 |
| Matrix Multiply | matrix-ops.md | 矩阵乘操作 |
| Data Movement / Layout | data-movement-ops.md | 数据搬运/布局操作 |
| Complex | complex-ops.md | 复杂操作 |
| Manual Resource Binding | manual-binding-ops.md | 手动资源绑定操作 |
| Scalar Arithmetic | scalar-arith-ops.md | 标量算术操作 |
| Control Flow | control-flow-ops.md | 控制流操作 |
| Auxiliary Functions | nonisa-ops.md | 辅助函数操作 |
动态选择规则
- 确定指令分类 - 查看
docs/assembly/README.md中的分类定义 - 选择对应文件 - 根据分类选择对应的
<类别>-ops.md文件 - 更新计数 - 更新该文件中
**Total Operations:** N的计数 - 添加章节 - 在该分类最后一个指令后插入新指令章节
更新模式详解
1. ISA 主索引文件
docs/PTOISA.md / docs/PTOISA_zh.md
- 位置: 指令索引表格
- 分类:
- 逐元素(Tile-Tile)指令 → 插在
TFMOD后 - Tile-标量 / Tile-立即数 → 插在
TSUBSC后
- 逐元素(Tile-Tile)指令 → 插在
include/README.md / include/README_zh.md
- 位置: 实现状态表格(按字母序)
- 分类:
- TPOW → 插在
TPRELU和TPUT之间 - TPOWS → 插在
TPUT_ASYNC和TQUANT之间
- TPOW → 插在
2. ISA 参考目录
docs/isa/README.md / docs/isa/README_zh.md
- 位置: 按分类排序的指令列表
- 分类:
- Elementwise (Tile-Tile) → 插在
TFMOD后 - Tile-Scalar / Tile-Immediate → 插在
TSUBSC后
- Elementwise (Tile-Tile) → 插在
3. 菜单文档
docs/menu_apis.md
- 位置: 按分类排序的中文链接列表
- 同 ISA 参考目录结构
4. 汇编文档(动态选择)
根据指令类型选择对应的文件:
| 指令类型 | 目标文件 | 插入位置 |
|---|---|---|
| TPOW (Elementwise) | elementwise-ops.md | TFMOD 后 |
| TPOWS (Tile-Scalar) | tile-scalar-ops.md | TSU BSC 后 |
| TROWSUM (Axis) | axis-ops.md | 最后一个 Axis 指令后 |
| TLOAD (Memory) | memory-ops.md | 最后一个 Memory 指令后 |
| TMATMUL (Matrix) | matrix-ops.md | 最后一个 Matrix 指令后 |
| TMOV (Data Movement) | data-movement-ops.md | 最后一个 Data Movement 指令后 |
| TQUANT (Complex) | complex-ops.md | 最后一个 Complex 指令后 |
| TASSIGN (Manual Binding) | manual-binding-ops.md | 最后一个 Manual 指令后 |
5. 指令族矩阵
docs/mkdocs/src/manual/appendix-d-instruction-family-matrix.md
- 位置: D.2 覆盖统计表 + D.4 家族矩阵表
- D.2 更新示例:
| Elementwise (Tile-Tile) | 28 → 29 | | Tile-Scalar / Tile-Immediate | 19 → 20 | | Total | 126 → 128 | - D.4 更新:
- 在对应分类的最后一条目后插入新指令
docs/mkdocs/src/manual/appendix-d-instruction-family-matrix_zh.md
- 同英文版本
常见新增指令分类与插入位置
Tile-Tile (逐元素双Tile)
- 插入位置:
TFMOD之后 - 对应文件:
elementwise-ops.md - 示例: TPOW
Tile-Scalar (Tile与标量)
- 插入位置:
TSUBSC之后 - 对应文件:
tile-scalar-ops.md - 示例: TPOWS
Axis Reduce / Expand
- 插入位置: 最后一个 Axis 指令之后
- 对应文件:
axis-ops.md
Memory (GM ↔ Tile)
- 插入位置: 最后一个 Memory 指令之后
- 对应文件:
memory-ops.md
更新检查清单
新增文件(预先创建)
-
docs/figures/isa/{新指令}.svg- 指令操作示意图 -
docs/isa/{新指令}.md- 详细指令文档(英文) -
docs/isa/{新指令}_zh.md- 详细指令文档(中文)
修改文件(同步更新)
-
docs/PTOISA.md- ISA主索引 -
docs/PTOISA_zh.md- ISA主索引(中文) -
include/README.md- include索引 -
include/README_zh.md- include索引(中文) -
docs/isa/README.md- ISA参考目录 -
docs/isa/README_zh.md- ISA参考目录(中文) -
docs/menu_apis.md- 菜单文档 -
docs/assembly/<类别>-ops.md- 动态选择的汇编文件(英文+中文) -
docs/mkdocs/src/manual/appendix-d-instruction-family-matrix.md- 指令族矩阵 -
docs/mkdocs/src/manual/appendix-d-instruction-family-matrix_zh.md- 指令族矩阵(中文)
注意事项
- 英文+中文: 每个文件都有中英文两个版本,需要同步更新
- 动态选择: 根据
docs/assembly/README.md选择的分类来确定需要修改的汇编文件 - 计数变化: 需要同时更新 Operation Count(分类小计)和 Total(总计)
- 详细指令文档: 需要预先创建在
docs/isa/目录下 - diagrams: 需要预先创建在
docs/figures/isa/目录下 - 使用
git status可以查看当前 staging 的文件列表,这是确认所有需要修改文件的最佳方式