目的与范围
目的与范围
本单元为标量、块、Tile、内存、系统寄存器和陷阱归属单元共享的定宽载体与有界索引域命名。
集中定义这些类型后,ASL 签名可以直接表明整数所属的架构域,而无需到处传递无约束整数。
PTO-ARCH-DATA-TYPES-INTEGER下面直接显示完整的 ASL 所有者。
// PTO-UNIT: {"id":"PTO-ARCH-DATA-TYPES-INTEGER","surface":"arch","classification":["data-types","integer"],"depends_on":["PTO-ARCH-FEATURES-TILE-ALLOCATION"]}// Requirement references: PTO-REQ-STATE-001, PTO-REQ-TILE-001,// PTO-REQ-FAULT-001, PTO-REQ-MEMORY-TSO-001.
type Word of bits(PTO_XLEN);type DoubleWord of bits(PTO_XLEN * 2);type HalfWord of bits(32);type Byte of bits(8);type PredicateWord of bits(PTO_PREDICATE_WIDTH);type GPRIndex of integer {0..PTO_ABSOLUTE_GPR_COUNT-1};type PERegisterFile of array [[PTO_ABSOLUTE_GPR_COUNT]] of Word;type CorePEWords of array [[PTO_MODEL_MEMORY_AGENTS]] of Word;type Reg5Selector of integer {0..31};type TileIndex of integer {0..PTO_TILE_REGISTER_COUNT-1};type SharedTileID of bits(6);type SharedTileIndex of integer {0..PTO_SHARED_TILE_COUNT-1};type TemporaryQueueIndex of integer {0..PTO_TEMPORARY_QUEUE_DEPTH-1};type PredicateIndex of integer {0..PTO_PREDICATE_REGISTER_COUNT-1};type BundleDimensionIndex of integer {0..PTO_BUNDLE_DIMENSION_COUNT-1};type BundleScalarBindingIndex of integer {0..PTO_BUNDLE_SCALAR_BINDING_COUNT-1};type BundleTileBindingIndex of integer {0..PTO_BUNDLE_TILE_BINDING_COUNT-1};type BundleSharedBindingIndex of integer {0..3};type TileBaseIndex of integer {0..PTO_TILE_BASE_COUNT-1};type ModelTileElementIndex of integer {0..PTO_MODEL_TILE_ELEMENTS-1};type PackedTileElementIndex of integer {0..524287};type PackedTileCarrierIndex of integer {0..PTO_MODEL_TILE_ELEMENTS-1};type PackedTileLaneIndex of integer {0..15};type ModelAddress of integer {0..PTO_MODEL_MEMORY_BYTES-1};type SystemRegisterAddress of bits(24);type SystemRegisterFileIndex of integer {0..65535};type TrapNumber of bits(6);type InterruptID of integer {0..63};
本单元为标量、块、Tile、内存、系统寄存器和陷阱归属单元共享的定宽载体与有界索引域命名。
集中定义这些类型后,ASL 签名可以直接表明整数所属的架构域,而无需到处传递无约束整数。
Word、DoubleWord、HalfWord 和 Byte 的宽度分别是 PTO_XLEN、PTO_XLEN * 2、32 和 8 位;PredicateWord 使用 PTO_PREDICATE_WIDTH。GPRIndex、TileIndex、PredicateIndex 以及各类束绑定索引。ModelAddress、24 位 SystemRegisterAddress 和 16 位文件索引 SystemRegisterFileIndex;陷阱使用六位 TrapNumber 和范围为 0..63 的 InterruptID。PERegisterFile 和 CorePEWords 等数组类型从模型常量取得范围,不引入新的架构数量。
SharedTileID 是六位载体,SharedTileIndex 则是有界整数索引;调用者不能混用这两个不同角色。
打包 Tile 索引具有明确的模型边界:元素为 0..524287,载体为 0..PTO_MODEL_TILE_ELEMENTS-1,通道为 0..15。
包含 PTO_MODEL_* 的边界属于验证模型边界,并不声称所有实现都具有相同的物理容量。
本单元只定义类型;状态分配、访问检查、故障和指令效果仍由使用这些类型的归属单元定义。
接受 TileIndex 的函数只能接收 0..PTO_TILE_REGISTER_COUNT-1 范围内的索引;六位 SharedTileID 仍需显式映射后才能用作 SharedTileIndex。
模型数组范围应理解为当前 ASL 模型的类型检查契约;架构可见的容量规则仍需查阅使用该类型的状态归属单元。
正文来自 owning ASL。拖拽或按钮只临时改变当前页面显示顺序。
No NDF clause is attached to this unit.
8 matching entries
PTO-AVS-ARCH-DATA-TYPES-INTEGER-STATIC-001tests/asl/arch/data-types/integer/arch-static-integer-contract-001.asle1f308efd1e2f8cc8c7ef4b8cf8ed241041da15e44aa225ffac0f9ff6946d77bPTO-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-0096…
ADR-0096docs/status/decisions/0096-b-iot-b-ios-sizecode-pemode.mdc4b4fb7bc17878f710015207dc19ddaf22a0cf6989d185b16844714c71e23f62Loading ADR-0097…
ADR-0097docs/status/decisions/0097-local-shared-capacity-and-cooperative-m-sharding.md7de93019f9272a73d5f42e42bec242725edadbcf41ed34a3155d40fb37f0cd14{
"classification": [
"data-types",
"integer"
],
"documentation": "docs/arch/data-types/integer.md",
"id": "PTO-ARCH-DATA-TYPES-INTEGER",
"mnemonic": null,
"readiness_subjects": [
"ADR-0096",
"ADR-0097"
],
"semantic_tests": [],
"source": "asl/arch/data-types/integer.asl",
"surface": "arch",
"tests": [
"PTO-AVS-ARCH-DATA-TYPES-INTEGER-STATIC-001"
]
}0.58.5 · 候选发布7dc8b7e5b121d2b2499a2273bebff29e2cd8681290d7132478de54d665d973587b61c3ecfd5e57645e5985aef5918b4b722e816d8906b9000980ab149e2c035e883cf0430cd340777c6a47d330e12f92dab1ccbeasl/arch/data-types/integer.asl