跳到主要内容

PTO-ARCH-STATE-NUMERIC-STATUS

PTO-ARCH-STATE-NUMERIC-STATUS

ASL 伪代码

下面直接显示完整的 ASL 所有者。

// PTO-UNIT: {"id":"PTO-ARCH-STATE-NUMERIC-STATUS","surface":"arch","classification":["state","numeric-status"],"depends_on":["PTO-ARCH-SYSTEM-REGISTERS-ADDRESSING"]}// NDF-BEGIN: PTO-NUMERIC-STATUS-STICKY-001// ndf: kind=contract level=L1 layer=architecture status=accepted// Numeric execution flags MUST map to CORE_STATE[36:32] as NV, DZ, OF, UF,// and NX, and a successful numeric operation MUST OR its produced flags into// the existing sticky status without clearing an earlier flag.// NDF-END: PTO-NUMERIC-STATUS-STICKY-001// DOC-BEGIN: statereadonly func NumericStatusFlags() => bits(5)begin    return _SystemRegisters.core_state[36:32];end;
func RecordNumericStatusFlags(flags: bits(5))begin    _SystemRegisters.core_state[36:32] = NumericStatusFlags() OR flags;end;// DOC-END: state

架构行为

目的与范围

用途与范围

本单元拥有五个架构可见的数值状态标志,以及成功数值操作之后应用的粘滞更新规则。

概念与架构状态

标志布局

NumericStatusFlags 读取 CORE_STATE[36:32]。从位 36 到位 32,五个标志依次是 NV、DZ、OF、UF 和 NX。

规则与交互

粘滞更新规则

RecordNumericStatusFlags 把给定五位值与当前状态进行 OR,并把结果写回 CORE_STATE[36:32]。

因此,成功的数值操作可以设置标志,但不能清除先前操作已经设置的标志。

边界与未定义范围

架构边界

本所有者定义状态布局和累积操作,但不决定哪个数值操作产生 NV、DZ、OF、UF 或 NX;该决定属于数值操作的当前 ASL 所有者,以及适用时的配置档钩子。

使用示例

示例性粘滞标志示例

如果当前五位状态是 10000,之后一次成功操作提供 00001,记录值将变成 10001。随后提供 00000 时,10001 保持不变。

NDF 条款

正文来自 owning ASL。拖拽或按钮只临时改变当前页面显示顺序。

    1. surfaceARCH
    2. ownerPTO-ARCH-STATE-NUMERIC-STATUS
    3. categoryNUMERIC-STATUS-STICKY
    4. case001

    规范契约

    contract · L1 · accepted

    Numeric execution flags MUST map to CORE_STATE[36:32] as NV, DZ, OF, UF, and NX, and a successful numeric operation MUST OR its produced flags into the existing sticky status without clearing an earlier flag.

    来源与引用
    完整稳定 ID
    PTO-NUMERIC-STATUS-STICKY-001
    来源路径
    asl/arch/state/numeric-status.asl
    适用单元
    PTO-ARCH-STATE-NUMERIC-STATUS
    源 SHA-256
    3d3fe1709c7e2903bca96d50e9671a6a484c442ff08ce4a8340168cdb38ac6d9
    条款 SHA-256
    726594cdc2b4175fe94b32f63471549fab32de6dcf2cf0272ecf2845684ffb77
    打开精确 canonical source ↗

Evidence index

8 matching entries

Executable evidence2
  • numeric status accumulates sticky architectural flags
    1. surfaceARCH
    2. ownerPTO-ARCH-STATE-NUMERIC-STATUS
    3. categorySTATE-TRANSITION
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-ARCH-NUMERIC-STATUS-001
    Path
    tests/asl/arch/state/numeric-status/arch-state-numeric-status-001.asl
    Kind / role
    state-transition
    Requirements
    PTO-NUMERIC-STATUS-STICKY-001
    Pass condition
    new flags are ORed into CORE_STATE without clearing an existing flag
    SHA-256
    73c82a0e416a7635964e18f0b52a0330df6edcb3292f9eb65937b9ace7d9948d
    Open exact source ↗ for PTO-AVS-ARCH-NUMERIC-STATUS-001
  • PTO-ARCH-STATE-NUMERIC-STATUS compiles as an independent normative unit
    1. surfaceARCH
    2. ownerPTO-ARCH-STATE-NUMERIC-STATUS
    3. categorySTATIC-INVARIANT
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-ARCH-STATE-NUMERIC-STATUS-STATIC-001
    Path
    tests/asl/arch/state/numeric-status/arch-static-numeric-status-contract-001.asl
    Kind / role
    static-invariant
    Requirements
    PTO-NUMERIC-STATUS-STICKY-001
    Pass condition
    the complete model and this unit's static invariant compile
    SHA-256
    98f5b7e8fe831e27ddfd019b142755a3675e04ff9fe7224a881f3f5d28eca221
    Open exact source ↗ for PTO-AVS-ARCH-STATE-NUMERIC-STATUS-STATIC-001
Commit-scoped evidence5
  • spec/evidence/release-traceability-readiness.json · closedPTO-EVIDENCE-RELEASE-TRACEABILITY
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-TRACEABILITY
    Path
    spec/evidence/release-traceability-readiness.json
    Kind / role
    ASL/NDF/documentation/AVS traceability
    SHA-256
    c7327021d39dc67ac5564bc55073b3870a397d79ac8d9648284d56e33bc14a3e
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-TRACEABILITY
  • spec/evidence/instruction-contract-closure.json · closedPTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
    Path
    spec/evidence/instruction-contract-closure.json
    Kind / role
    mnemonic and encoding contract closure
    SHA-256
    3ef2bb62421c79dff8fa77a1c7983923b523244b8090812883ef81286ca8106a
    Open exact source ↗ for PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
  • spec/evidence/architecture-readiness.json · openPTO-EVIDENCE-ARCHITECTURE-READINESS
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-ARCHITECTURE-READINESS
    Path
    spec/evidence/architecture-readiness.json
    Kind / role
    architecture maturity and blockers
    SHA-256
    4b0b85199101251bea744e0f3591cc31906909dc80d5ab651c417a936036a004
    Open exact source ↗ for PTO-EVIDENCE-ARCHITECTURE-READINESS
  • spec/evidence/release-gate-readiness.json · ready-for-exact-head-verificationPTO-EVIDENCE-RELEASE-GATE-READINESS
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-GATE-READINESS
    Path
    spec/evidence/release-gate-readiness.json
    Kind / role
    exact-head gate readiness
    SHA-256
    a0f4d2b6920c08981ea55fd8ef820708a40d4feb5402c5150e8e9ab532d84ce0
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-GATE-READINESS
  • spec/release-manifest.json · draftPTO-EVIDENCE-RELEASE-MANIFEST
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-MANIFEST
    Path
    spec/release-manifest.json
    Kind / role
    release content and encoding fingerprints
    SHA-256
    1a64c109ed7a90351c41e2a418b3c0ebaf8ad975838986d2101385186b85c0d8
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-MANIFEST
Decision history1
  • Scalar numeric flag state and producer ownership · accepted
    1. decision recordADR
    2. case0038

    Decision record

    Loading ADR-0038…

    Sources and references
    Complete stable ID
    ADR-0038
    Path
    docs/status/decisions/0038-scalar-numeric-flag-state-and-ownership.md
    Affected units
    PTO-ARCH-STATE-NUMERIC-STATUS, PTO-ARCH-SYSTEM-REGISTERS-ADDRESSING, PTO-SCALAR-FABS, PTO-SCALAR-FADD, PTO-SCALAR-FCVT, PTO-SCALAR-FCVTA, PTO-SCALAR-FCVTM, PTO-SCALAR-FCVTN, PTO-SCALAR-FCVTP, PTO-SCALAR-FCVTZ, PTO-SCALAR-FDIV, PTO-SCALAR-FEQ, PTO-SCALAR-FEQS, PTO-SCALAR-FEXP, PTO-SCALAR-FGE, PTO-SCALAR-FGES, PTO-SCALAR-FLT, PTO-SCALAR-FLTS, PTO-SCALAR-FMADD, PTO-SCALAR-FMAX, PTO-SCALAR-FMIN, PTO-SCALAR-FMSUB, PTO-SCALAR-FMUL, PTO-SCALAR-FNE, PTO-SCALAR-FNES, PTO-SCALAR-FNMADD, PTO-SCALAR-FNMSUB, PTO-SCALAR-FRECIP, PTO-SCALAR-FSQRT, PTO-SCALAR-FSUB, PTO-SCALAR-SCVTF, PTO-SCALAR-UCVTF
    Affected NDF
    PTO-FABS-DECISION-BINDING-001, PTO-FCVTA-DECISION-BINDING-001, PTO-FCVTM-DECISION-BINDING-001, PTO-FCVTN-DECISION-BINDING-001, PTO-FCVTP-DECISION-BINDING-001, PTO-FCVTZ-DECISION-BINDING-001, PTO-FMAX-DECISION-BINDING-001, PTO-FMIN-DECISION-BINDING-001, PTO-FNE-DECISION-BINDING-001, PTO-FNES-DECISION-BINDING-001, PTO-NUMERIC-STATUS-STICKY-001, PTO-SCVTF-DECISION-BINDING-001, PTO-UCVTF-DECISION-BINDING-001
    SHA-256
    eac15c3bee955bb92833482b9af8b9f149fe17c13138e6f2b22f0ed1cf40fc07
    Open exact decision source ↗ for ADR-0038

Unit metadata

Open 4 generated metadata fields
id
PTO-ARCH-STATE-NUMERIC-STATUS
surface
arch
classification
[
  "state",
  "numeric-status"
]
depends_on
[
  "PTO-ARCH-SYSTEM-REGISTERS-ADDRESSING"
]
Open generated traceability record
{
  "classification": [
    "state",
    "numeric-status"
  ],
  "documentation": "docs/arch/state/numeric-status.md",
  "id": "PTO-ARCH-STATE-NUMERIC-STATUS",
  "mnemonic": null,
  "readiness_subjects": [
    "ADR-0038"
  ],
  "semantic_tests": [
    "PTO-AVS-ARCH-NUMERIC-STATUS-001"
  ],
  "source": "asl/arch/state/numeric-status.asl",
  "surface": "arch",
  "tests": [
    "PTO-AVS-ARCH-NUMERIC-STATUS-001",
    "PTO-AVS-ARCH-STATE-NUMERIC-STATUS-STATIC-001"
  ]
}

来源与发布信息

展开 commit、路径、hash、版本和规范所有者
发布
0.58.5 · 候选发布
Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812
ASL SHA-256
3d3fe1709c7e2903bca96d50e9671a6a484c442ff08ce4a8340168cdb38ac6d9
文档 SHA-256
1ac9ad9edb2c9ff4c681f40e8a10c70d38d2d27bd2a829623d0c4278be03d5e4

精确所有者