操作数与参数
DataType- prefetched element data type
B.IOR.RegSrc0- each PE's private-GPR GM base
B.IOR.RegSrc1- each PE's private-GPR logical row stride in elements
B.DIM.LB0- ValidCol
B.DIM.LB1- ValidRow
B.DIM.LB2- physical Col
Prefetches one typed, strided GM rectangle for each of the four PEs without a Tile destination.
PTO-BLOCK-BSTART-TPREFETCHBSTART.TPREFETCH DataType| 字段 | 位宽 | 有符号性 | 架构角色 | 编码零 |
|---|---|---|---|---|
DataType | 5 | encoding-defined | prefetched element data type | Encoded zero selects FP64. |
B.IOR.RegSrc0 | — | — | each PE's private-GPR GM base | — |
B.IOR.RegSrc1 | — | — | each PE's private-GPR logical row stride in elements | — |
B.DIM.LB0 | — | — | ValidCol | — |
B.DIM.LB1 | — | — | ValidRow | — |
B.DIM.LB2 | — | — | physical Col | — |
Loading WaveDrom diagram… The encoding table and WaveJSON remain available below.
| Decoded item | Bit range | Value |
|---|---|---|
| DataType | 31:27 | variable |
| Constant | 26:0 | 27'b000001100010001000110000001 |
{
"reg": [
{
"bits": 27,
"name": "27'b000001100010001000110000001"
},
{
"bits": 5,
"name": "DataType"
}
],
"config": {
"bits": 32,
"fontsize": 13,
"hspace": 900,
"lanes": 1,
"offset": 0
}
}BSTART.TPREFETCH DataType
DataTypeB.IOR.RegSrc0B.IOR.RegSrc1B.DIM.LB0B.DIM.LB1B.DIM.LB2Decode 与 Operation 均直接来自指令所有者,并按执行阶段分开显示。
readonly func InstructionContractMatches_BSTART_TPREFETCH(operation: CommandOperation) => booleanbegin return (operation == CommandOperation_bstart_tprefetch_32_d5f83e5aadf6);end;readonly func InstructionContractHandler_BSTART_TPREFETCH() => CommandSemanticHandlerbegin return CommandHandler_ExecuteBundleStart;end;
readonly func InstructionContractStartedTileOperation_BSTART_TPREFETCH() => TileOperationbegin return TileOperation_TPREFETCH;end;
pure func InstructionContractStartsTileBundle_BSTART_TPREFETCH() => booleanbegin return TRUE;end;// PTO-INSTRUCTION: {"assembly":["BSTART.TPREFETCH DataType"],"block":[],"catalog_indices":[49],"catalog_records":[{"asm":"BSTART.TPREFETCH DataType","constraints":[{"field":"DataType","operator":"one-of","values":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,24,25,26,27,28]}],"encoding":[{"index":0,"mask":"0x07ffffff","match":"0x00311181","width_bits":32}],"encoding_kind":"L32","fields":[{"name":"DataType","pieces":[{"instruction_lsb":27,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5}],"form_id":"bstart_tprefetch_32_d5f83e5aadf6","length_bits":32,"mnemonic":"BSTART.TPREFETCH","semantic_family":"CMD","semantic_group":"Bundle Split","semantic_handler":"ExecuteBundleStart","semantic_summary":"Starts a destination-free, four-PE TLSU prefetch block with an explicit element data type.","status":"accepted"}],"classification":["execution"],"contract":{"block_composition":["BSTART.TPREFETCH DataType; optional B.DATR Layout; optional B.DIM LB0/ValidCol, LB1/ValidRow, LB2/Col; optional B.IOR base,row_stride; BSTOP","B.IOT and B.IOS are not members of a TPREFETCH block."],"canonical_assembly":["BSTART.TPREFETCH DataType"],"defaults":["DataType is explicit and B.DATR omission selects NORM layout.","Omitted LB0 and LB1 each default to one; omitted LB2 defaults to resolved ValidCol.","Omitted B.IOR supplies base zero and row stride equal to resolved Col independently for every PE. Explicit zero selectors read the architectural zero GPR and therefore supply actual zero values."],"encoding_class":"standalone-encoded","examples":["BSTART.TPREFETCH FP16; B.DIM zero, 64, ->LB0; B.DIM zero, 4, ->LB1; B.DIM zero, 64, ->LB2; B.IOR zero, a0; BSTOP"],"exceptions":["Reserved DataType, unsupported Layout, explicit zero or out-of-range dimensions, non-power-of-two Col, malformed B.IOR, any B.IOT/B.IOS, or any participating-PE memory fault rejects before the first request or memory event.","A memory fault is precise for the complete four-PE block and recovery reissues the complete combined footprint."],"field_contracts":{"DataType":{"ref":"PTO-FIELD-BLOCK-DATATYPE"}},"field_zero_meanings":{"DataType":"Encoded zero selects FP64."},"legality":["bstart_tprefetch_32_d5f83e5aadf6.DataType accepts only 0..14, 16..20, 24..28; all other encodings are reserved.","TPREFETCH has implicit PE participation 1111 and no Local or Shared Tile binding.","ValidCol and ValidRow are positive, Col is a nonzero power of two, and ValidCol does not exceed Col."],"memory_effects":["For every PE and every element in ValidRow x ValidCol, access GM at base + ((row * row_stride_elements + column) * element_size), with packed four-bit types using the same logical-element byte addressing as TLOAD.","The operation produces the same typed-element load-event decomposition as TLOAD but allocates and writes no destination Tile. Cache level, placement, and retention are not architectural results."],"operands":[{"field":"DataType","role":"prefetched element data type"},{"field":"B.IOR.RegSrc0","role":"each PE's private-GPR GM base"},{"field":"B.IOR.RegSrc1","role":"each PE's private-GPR logical row stride in elements"},{"field":"B.DIM.LB0","role":"ValidCol"},{"field":"B.DIM.LB1","role":"ValidRow"},{"field":"B.DIM.LB2","role":"physical Col"}],"ordering":["The four PE footprints are one combined preflighted block attempt; no request or event becomes effective until every address, translation, permission, and access check succeeds.","All successful accesses participate in PTO-TSO using the block aq/rl attributes exactly as TLOAD."],"standalone_opcode":true,"state_effects":["Starts a destination-free TLSU block whose successful architectural effects are limited to its defined typed memory accesses and ordering events.","No Tile or Shared descriptor, allocation, payload, definedness, publication, or lifetime state changes."]},"depends_on":["PTO-BLOCK-MODEL-SCHEMA-PROFILE-ENCODING"],"id":"PTO-BLOCK-BSTART-TPREFETCH","mnemonic":"BSTART.TPREFETCH","summary":"Prefetches one typed, strided GM rectangle for each of the four PEs without a Tile destination.","surface":"block"}// PTO-REVIEW: {"review_method":"formal-definition-read","outcome":"FORMAL-COMPLETE","reviewed_fields":["assembly","encoding","defaults","operation","state","memory","ordering","faults","reserved"]}// NDF-BEGIN: PTO-BSTART-TPREFETCH-MEMORY-001// ndf: kind=contract level=L1 layer=block status=accepted// TPREFETCH MUST preflight the complete typed, strided footprint of all four// PEs before effects and MUST use the same load-event decomposition, ordering,// fault, and restart rules as destination-producing TLOAD.// NDF-END: PTO-BSTART-TPREFETCH-MEMORY-001// DOC-BEGIN: decodereadonly func InstructionContractMatches_BSTART_TPREFETCH(operation: CommandOperation) => booleanbegin return (operation == CommandOperation_bstart_tprefetch_32_d5f83e5aadf6);end;// DOC-END: decode// DOC-BEGIN: operationreadonly func InstructionContractHandler_BSTART_TPREFETCH() => CommandSemanticHandlerbegin return CommandHandler_ExecuteBundleStart;end;
readonly func InstructionContractStartedTileOperation_BSTART_TPREFETCH() => TileOperationbegin return TileOperation_TPREFETCH;end;
pure func InstructionContractStartsTileBundle_BSTART_TPREFETCH() => booleanbegin return TRUE;end;// DOC-END: operation
BSTART.TPREFETCH 打开一个活动 Block 描述符;Block 体在完成前提供所需属性与绑定。
BSTART.TPREFETCH 必须位于所属 Block 的起始位置。后续属性、维度与绑定会累积到活动描述符中,直到 BSTOP 或下一条已接受的 BSTART 完成边界。
已接受载体使用 L32 编码类别;命令在读取绑定或改变状态前,会先解析所有显示字段。
完成时,只有全部模式与状态预检成功,描述符才会执行所选 Block 操作。
DataType — 预取元素数据类型; B.IOR.RegSrc0 — 每个 PE 的私有 GPR GM 基址; B.IOR.RegSrc1 — 每个 PE 的私有 GPR 逻辑行步长(按元素计); B.DIM.LB0 — ValidCol; B.DIM.LB1 — ValidRow; B.DIM.LB2 — physical Col。B.DATR、B.DIM 和 B.IOR;TPREFETCH 没有 Tile/Shared 绑定或目的端,因此明确禁止 B.IOT 与 B.IOS。启动 Block 会记录所选载体,并把操作执行推迟到完成边界。
完成全部预检与计算后,所有启用输出按归属单元规定的原子组发布;除非契约明确消费,成功执行后的数学源仍保持可用。
固定比特、保留值、选择器取值域与必需的 Block 放置关系都在架构效果之前检查。
无效模式、状态、地址或后继条件通过当前归属单元定义的故障行为报告;本页不添加故障规则。
完整模式、绑定、就绪状态、别名、容量与分配预检发生在源快照和所有目的端发布之前。
该示例只演示放置关系与载体流;精确行为仍由当前 ASL 和指令契约定义。
BSTART.TPREFETCH FP16; B.DIM zero, 64, ->LB0; B.DIM zero, 4, ->LB1; B.DIM zero, 64, ->LB2; B.IOR zero, a0; BSTOP起始指令先建立描述符;后续载体按声明模式补充内容,最终完成边界触发验证与操作执行。
正文来自 owning ASL。拖拽或按钮只临时改变当前页面显示顺序。
TPREFETCH MUST preflight the complete typed, strided footprint of all four PEs before effects and MUST use the same load-event decomposition, ordering, fault, and restart rules as destination-producing TLOAD.
PTO-BSTART-TPREFETCH-MEMORY-001asl/block/execution/BSTART.TPREFETCH.aslc8c57ca48a101a23ed51a8c22d9b126690814b0f95096c4aa5519bb1439f74a9bc61ddce371c7758505d4c9fa0bb017da35c8b535e3b85d3189d13513f81427a19 matching entries
PTO-AVS-BLOCK-BSTART-TPREFETCH-DECODE-001tests/asl/block/execution/BSTART.TPREFETCH/block-decode-bstart-tprefetch-canonical-001.asl3d05bf3763f39b1c0170f8c571e746fd396aebae13b32ecd517f027f5e452fbePTO-AVS-BLOCK-TPREFETCH-DEFAULTS-001tests/asl/block/execution/BSTART.TPREFETCH/block-bound-bstart-tprefetch-defaults-001.asl24f34fcfaeb4ba168bc992690d85df12f8c421cb61e6cb4fd62eacdef29f14f0PTO-AVS-BLOCK-TPREFETCH-FAULT-001tests/asl/block/execution/BSTART.TPREFETCH/block-fault-bstart-tprefetch-range-preflight-001.aslc3941e63962c2afea6609731b441cc6606ae1b745b7feeb06e1597e578c64982PTO-AVS-BLOCK-TPREFETCH-FOOTPRINT-001tests/asl/block/execution/BSTART.TPREFETCH/block-exec-bstart-tprefetch-footprint-001.asl1176ec83fb8daf56da4b9bc20a365710c93ed1ffa95fb94a85ec28e0a8315936PTO-AVS-BLOCK-TPREFETCH-PACKED-001tests/asl/block/execution/BSTART.TPREFETCH/block-exec-bstart-tprefetch-packed-001.aslc021f47ab702000dbc6179a6de8ac45c3719c72706b615bdf5f3760e8bc56886PTO-AVS-BLOCK-TPREFETCH-SCHEMA-001tests/asl/block/execution/BSTART.TPREFETCH/block-bound-bstart-tprefetch-schema-001.asl90d62c8b33c053965bfa236bef955c168ced55a8d348a30ff3a99c90a9b03e05PTO-EVIDENCE-RELEASE-TRACEABILITYPTO-EVIDENCE-RELEASE-TRACEABILITYspec/evidence/release-traceability-readiness.jsonc7327021d39dc67ac5564bc55073b3870a397d79ac8d9648284d56e33bc14a3ePTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSUREPTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSUREspec/evidence/instruction-contract-closure.json3ef2bb62421c79dff8fa77a1c7983923b523244b8090812883ef81286ca8106aPTO-EVIDENCE-ARCHITECTURE-READINESSPTO-EVIDENCE-ARCHITECTURE-READINESSspec/evidence/architecture-readiness.json4b0b85199101251bea744e0f3591cc31906909dc80d5ab651c417a936036a004PTO-EVIDENCE-RELEASE-GATE-READINESSPTO-EVIDENCE-RELEASE-GATE-READINESSspec/evidence/release-gate-readiness.jsona0f4d2b6920c08981ea55fd8ef820708a40d4feb5402c5150e8e9ab532d84ce0PTO-EVIDENCE-RELEASE-MANIFESTPTO-EVIDENCE-RELEASE-MANIFESTspec/release-manifest.json1a64c109ed7a90351c41e2a418b3c0ebaf8ad975838986d2101385186b85c0d8Loading ADR-0020…
ADR-0020docs/status/decisions/0020-production-memory-events-and-atomic-corners.md215b18f05d0b53120949373fce6a5ce22f7ab534fb22df24743a9b2b4beb2decLoading ADR-0032…
ADR-0032docs/status/decisions/0032-bundle-command-totality-and-profile-boundaries.mde1f91826817343c0977a565a91e495a15397b83fa2af227124f225821ffa54aeLoading ADR-0033…
ADR-0033docs/status/decisions/0033-tlsu-four-bit-memory-packing.md6fd4f3016f503498cf6a1068907f48998e39f3c29b034d7ddfc486cd6494104bLoading ADR-0052…
ADR-0052docs/status/decisions/0052-direct-tile-and-bundle-catalog-closure.md5fdb38bf480e37affe5075f93b35a57d32803018c986bfe05160f188a19ccaf6Loading ADR-0055…
ADR-0055docs/status/decisions/0055-complete-bundle-bior-schema-and-defaults.mdd84224ee1980cb16a6c4efb6ce3c5c2649d5db27002e7e6429850da189a2cdffLoading ADR-0056…
ADR-0056docs/status/decisions/0056-pto-encoding-ownership-and-gm-access.md846120c256746358eb7b2bd649687e7dddd7e116495b0447afb04be370676d29Loading ADR-0059…
ADR-0059docs/status/decisions/0059-mnemonic-field-encoding-closure.mdf18d13f735cfaf9f2803c754c5818f4af33d1cc42c489f0d9ce060b07bb3a196Loading ADR-0078…
ADR-0078docs/status/decisions/0078-tlsu-and-global-memory-operations.md467537ae8ea30d9a555acee815808394bf800808267a4e58f2e2bbd14c1ee981{
"classification": [
"execution"
],
"documentation": "docs/block/execution/BSTART.TPREFETCH.md",
"id": "PTO-BLOCK-BSTART-TPREFETCH",
"instruction_contract": {
"artifact": "spec/evidence/instruction-contract-closure.json",
"mnemonic": "BSTART.TPREFETCH",
"ndf_clause": "PTO-INST-BLOCK-BSTART-TPREFETCH"
},
"mnemonic": "BSTART.TPREFETCH",
"readiness_subjects": [
"ADR-0020",
"ADR-0032",
"ADR-0033",
"ADR-0052",
"ADR-0055",
"ADR-0056",
"ADR-0059",
"ADR-0078"
],
"semantic_tests": [
"PTO-AVS-BLOCK-TPREFETCH-DEFAULTS-001",
"PTO-AVS-BLOCK-TPREFETCH-FAULT-001",
"PTO-AVS-BLOCK-TPREFETCH-FOOTPRINT-001",
"PTO-AVS-BLOCK-TPREFETCH-PACKED-001",
"PTO-AVS-BLOCK-TPREFETCH-SCHEMA-001"
],
"source": "asl/block/execution/BSTART.TPREFETCH.asl",
"surface": "block",
"tests": [
"PTO-AVS-BLOCK-BSTART-TPREFETCH-DECODE-001",
"PTO-AVS-BLOCK-TPREFETCH-DEFAULTS-001",
"PTO-AVS-BLOCK-TPREFETCH-FAULT-001",
"PTO-AVS-BLOCK-TPREFETCH-FOOTPRINT-001",
"PTO-AVS-BLOCK-TPREFETCH-PACKED-001",
"PTO-AVS-BLOCK-TPREFETCH-SCHEMA-001"
]
}0.58.5 · 候选发布7dc8b7e5b121d2b2499a2273bebff29e2cd86812c8c57ca48a101a23ed51a8c22d9b126690814b0f95096c4aa5519bb1439f74a90f218a73975136a02fdac74bb9a7f125be2de8b2a43e13fe3225dd95a51085bbasl/block/execution/BSTART.TPREFETCH.aslasl/block/execution/BSTART.TPREFETCH.aslasl/block/execution/BSTART.TPREFETCH.asl