Purpose and scope
NumericFormatDescriptor records whether numeric-format metadata is available and, when it is, describes carrier width, logical lanes, field widths and positions, constrained zero bits, exponent bias, and supported value classes.
PTO-ARCH-DATA-TYPES-FORMAT-DESCRIPTORThis Operation comes directly from the instruction owner; the page does not rewrite its behavior.
type NumericFormatKind of enumeration { NumericFormatKind_Unavailable, NumericFormatKind_FixedBinary, NumericFormatKind_HiF8, NumericFormatKind_E8M0};
type NumericFormatDescriptor of record { available: boolean, kind: NumericFormatKind, carrier_bits: integer {0..64}, lane_bits: integer {0..64}, lanes_per_carrier: integer {0..2}, sign_bits: integer {0..1}, sign_bit: integer {0..63}, exponent_bits_min: integer {0..11}, exponent_bits_max: integer {0..11}, fraction_bits_min: integer {0..52}, fraction_bits_max: integer {0..52}, exponent_bias_available: boolean, exponent_bias: integer {0..1023}, required_low_zero_bits: integer {0..13}, required_high_zero_bits: integer {0..2}, has_zero: boolean, has_signed_zero: boolean, has_subnormal: boolean, has_infinity: boolean, has_quiet_nan: boolean, has_signaling_nan: boolean};
type HiF8DotField of enumeration { HiF8DotField_Denormal, HiF8DotField_D0, HiF8DotField_D1, HiF8DotField_D2, HiF8DotField_D3, HiF8DotField_D4};
pure func UnavailableNumericFormatDescriptor() => NumericFormatDescriptorbegin return NumericFormatDescriptor { available = FALSE, kind = NumericFormatKind_Unavailable, carrier_bits = 0, lane_bits = 0, lanes_per_carrier = 0, sign_bits = 0, sign_bit = 0, exponent_bits_min = 0, exponent_bits_max = 0, fraction_bits_min = 0, fraction_bits_max = 0, exponent_bias_available = FALSE, exponent_bias = 0, required_low_zero_bits = 0, required_high_zero_bits = 0, has_zero = FALSE, has_signed_zero = FALSE, has_subnormal = FALSE, has_infinity = FALSE, has_quiet_nan = FALSE, has_signaling_nan = FALSE };end;// PTO-UNIT: {"id":"PTO-ARCH-DATA-TYPES-FORMAT-DESCRIPTOR","surface":"arch","classification":["data-types","format-descriptor"],"depends_on":["PTO-ARCH-DATA-TYPES-TILE-DATA-TYPES"]}
// NDF-BEGIN: PTO-NUMERIC-FORMAT-DESCRIPTOR-001// ndf: kind=contract level=L1 layer=architecture status=accepted// Each assigned floating or scale Tile DataType MUST expose one exact carrier,// lane, field-width, bias, constrained-bit, and special-value descriptor.// Integer Tile DataTypes MUST report that no floating-format descriptor exists.// NDF-END: PTO-NUMERIC-FORMAT-DESCRIPTOR-001
// DOC-BEGIN: operationtype NumericFormatKind of enumeration { NumericFormatKind_Unavailable, NumericFormatKind_FixedBinary, NumericFormatKind_HiF8, NumericFormatKind_E8M0};
type NumericFormatDescriptor of record { available: boolean, kind: NumericFormatKind, carrier_bits: integer {0..64}, lane_bits: integer {0..64}, lanes_per_carrier: integer {0..2}, sign_bits: integer {0..1}, sign_bit: integer {0..63}, exponent_bits_min: integer {0..11}, exponent_bits_max: integer {0..11}, fraction_bits_min: integer {0..52}, fraction_bits_max: integer {0..52}, exponent_bias_available: boolean, exponent_bias: integer {0..1023}, required_low_zero_bits: integer {0..13}, required_high_zero_bits: integer {0..2}, has_zero: boolean, has_signed_zero: boolean, has_subnormal: boolean, has_infinity: boolean, has_quiet_nan: boolean, has_signaling_nan: boolean};
type HiF8DotField of enumeration { HiF8DotField_Denormal, HiF8DotField_D0, HiF8DotField_D1, HiF8DotField_D2, HiF8DotField_D3, HiF8DotField_D4};
pure func UnavailableNumericFormatDescriptor() => NumericFormatDescriptorbegin return NumericFormatDescriptor { available = FALSE, kind = NumericFormatKind_Unavailable, carrier_bits = 0, lane_bits = 0, lanes_per_carrier = 0, sign_bits = 0, sign_bit = 0, exponent_bits_min = 0, exponent_bits_max = 0, fraction_bits_min = 0, fraction_bits_max = 0, exponent_bias_available = FALSE, exponent_bias = 0, required_low_zero_bits = 0, required_high_zero_bits = 0, has_zero = FALSE, has_signed_zero = FALSE, has_subnormal = FALSE, has_infinity = FALSE, has_quiet_nan = FALSE, has_signaling_nan = FALSE };end;// DOC-END: operation
NumericFormatDescriptor records whether numeric-format metadata is available and, when it is, describes carrier width, logical lanes, field widths and positions, constrained zero bits, exponent bias, and supported value classes.
NumericFormatKind distinguishes unavailable metadata, fixed binary formats, HiF8, and E8M0. The width fields describe the carrier, each logical lane, the number of lanes, and the sign, exponent, and fraction fields.
The remaining fields state whether an exponent bias exists, how many high or low bits are constrained to zero, and whether zero, signed zero, subnormal, infinity, quiet NaN, and signaling NaN classes exist.
The embedded PTO-NUMERIC-FORMAT-DESCRIPTOR-001 contract assigns one exact descriptor to each floating or scale Tile data type and assigns the unavailable result to integer Tile data types.
A descriptor reports capabilities and layout; format-specific decomposition and classification functions still own the interpretation of raw encodings.
UnavailableNumericFormatDescriptor sets available to false, selects NumericFormatKind_Unavailable, zeros every width, position, bias, and constrained-bit field, and clears every special-value capability.
The focused boundary AVS checks the unavailable descriptor fields listed above; this sentence records evidence scope rather than defining another descriptor rule.
This example is an inspection pattern, not a new format rule.
Before decoding a Tile data type as floating point, inspect available and kind; then use the field widths and constrained-bit counts to select the format-specific validity, decomposition, and classification owner.
Bodies come from owning ASL. Dragging or buttons change only this page-session view order.
Each assigned floating or scale Tile DataType MUST expose one exact carrier, lane, field-width, bias, constrained-bit, and special-value descriptor. Integer Tile DataTypes MUST report that no floating-format descriptor exists.
PTO-NUMERIC-FORMAT-DESCRIPTOR-001asl/arch/data-types/format-descriptor.asl28d06bf9eea7977f94fdb7139fa279f7758594423364e00b81bd41a3e671b542a893420a24c9e0c78ea6ef5a212de91d9b1f1cba2c9f29b6e5c03cd64cef3b0014 matching entries
PTO-AVS-ARCH-DATA-TYPES-FORMAT-DESCRIPTOR-STATIC-001tests/asl/arch/data-types/format-descriptor/arch-static-format-descriptor-contract-001.asl492f6c23b061f25bb5be048ca27fc4ab579137e6a89fd150aaff120df7f1f817PTO-AVS-ARCH-FORMAT-DESCRIPTOR-EMPTY-001tests/asl/arch/data-types/format-descriptor/arch-bound-format-descriptor-empty-001.asl9388d0b49d52432be34313cbffd91eb0957230b10a8f9ca92262d9302332e107PTO-AVS-ARCH-NUMERIC-FORMATS-DOMAIN-001tests/asl/arch/data-types/numeric-formats/arch-bound-numeric-formats-domain-001.aslc7b1f56fb35f44e0e50f09f523979d377ca88f340f1b3f10f874de6ebfe9e9e0PTO-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-0040…
ADR-0040docs/status/decisions/0040-numeric-format-namespace-ownership.mdd4383e3d07be37218f7d060e0b4d8f2aa610684aadfb128583980e2f4ecf3b92Loading ADR-0043…
ADR-0043docs/status/decisions/0043-public-numeric-type-identity-and-availability.md4fa14704464afe3ea85b98835f2f6e7d6fa832a1f297100f41414cd3faf66924Loading ADR-0048…
ADR-0048docs/status/decisions/0048-numeric-format-value-classification.mdce3ecd1851e22b5517d07076ab8bd2db36b6b4582111c761db19240275853d9cLoading ADR-0049…
ADR-0049docs/status/decisions/0049-hardware-subnormal-policy.mdac969b6247bbaa16e480ae96c9f227f68ffa859d06121df838c8d3b6f141ca3aLoading ADR-0050…
ADR-0050docs/status/decisions/0050-hardware-special-value-checkpoint.md08cfdeb16bf245980c9db849994e181e5079efc53475762cdad1df9f555993b5Loading ADR-0059…
ADR-0059docs/status/decisions/0059-mnemonic-field-encoding-closure.mdf18d13f735cfaf9f2803c754c5818f4af33d1cc42c489f0d9ce060b07bb3a196{
"classification": [
"data-types",
"format-descriptor"
],
"documentation": "docs/arch/data-types/format-descriptor.md",
"id": "PTO-ARCH-DATA-TYPES-FORMAT-DESCRIPTOR",
"mnemonic": null,
"readiness_subjects": [
"ADR-0040",
"ADR-0043",
"ADR-0048",
"ADR-0049",
"ADR-0050",
"ADR-0059"
],
"semantic_tests": [
"PTO-AVS-ARCH-FORMAT-DESCRIPTOR-EMPTY-001"
],
"source": "asl/arch/data-types/format-descriptor.asl",
"surface": "arch",
"tests": [
"PTO-AVS-ARCH-DATA-TYPES-FORMAT-DESCRIPTOR-STATIC-001",
"PTO-AVS-ARCH-FORMAT-DESCRIPTOR-EMPTY-001"
]
}0.58.5 · Release candidate7dc8b7e5b121d2b2499a2273bebff29e2cd8681228d06bf9eea7977f94fdb7139fa279f7758594423364e00b81bd41a3e671b542e5730dcf362c77658d4f8f4e6aa36e2c3db2d628b6059ca2e3156b427d4df1dcasl/arch/data-types/format-descriptor.aslasl/arch/data-types/format-descriptor.asl