Skip to main content

PTO-ARCH-STATE-PROGRAM-COUNTER

PTO-ARCH-STATE-PROGRAM-COUNTER

ASL pseudocode

The complete ASL owner is shown directly below.

// PTO-UNIT: {"id":"PTO-ARCH-STATE-PROGRAM-COUNTER","surface":"arch","classification":["state","program-counter"],"depends_on":["PTO-ARCH-PROGRAMMING-MODEL-SCALAR-REGISTERS"]}readonly func ReadPC() => Wordbegin    return _PC;end;
readonly func ReadTPC() => Wordbegin    return _PC;end;
readonly func ReadBPC() => Wordbegin    return _BPC;end;
func WritePC(value: Word)begin    _PC = value;end;
func WriteTPC(value: Word)begin    _PC = value;end;
func WriteBPC(value: Word)begin    _BPC = value;end;

Architecture behavior

purpose scope

Purpose and scope

This unit defines the read and write helpers for the ordinary program counter, trap program counter, and bundle program counter views.

concepts state

Counter views

ReadPC and ReadTPC both return _PC. ReadBPC returns the separate _BPC state.

WritePC and WriteTPC both replace _PC, while WriteBPC replaces _BPC.

rules interactions

Shared PC storage

PC and TPC are two access names for the same stored Word; they are not independent counters in this model. BPC remains independent of that shared storage.

boundaries

Architectural boundaries

These helpers define storage access only. They do not by themselves define instruction sequencing, alignment checks, trap entry, bundle completion, or recovery eligibility.

example usage

illustrative view example

After WriteTPC stores an aligned address, ReadPC observes the same value because both use _PC. A subsequent WriteBPC changes only the value returned by ReadBPC.

NDF clauses

Bodies come from owning ASL. Dragging or buttons change only this page-session view order.

No NDF clause is attached to this unit.

Evidence index

10 matching entries

Executable evidence2
  • Covers Scalar State.
    1. surfaceARCH
    2. ownerPTO-ARCH-STATE-PROGRAM-COUNTER
    3. categorySTATE-TRANSITION
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001
    Path
    tests/asl/arch/state/program-counter/arch-state-scalar-001.asl
    Kind / role
    state-transition
    Pass condition
    TestScalarState completes without assertion failure
    SHA-256
    2f4c57a7182ce6707369e1cca732679572bcf318089ccea5f6188271736d8bda
    Open exact source ↗ for PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001
  • PTO-ARCH-STATE-PROGRAM-COUNTER compiles as an independent normative unit
    1. surfaceARCH
    2. ownerPTO-ARCH-STATE-PROGRAM-COUNTER
    3. categorySTATIC-INVARIANT
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-ARCH-STATE-PROGRAM-COUNTER-STATIC-001
    Path
    tests/asl/arch/state/program-counter/arch-static-program-counter-contract-001.asl
    Kind / role
    static-invariant
    Pass condition
    the complete model and this unit's static invariant compile
    SHA-256
    029beecc1a36ba671aa592a04339db70da60bd5aae48ff817c28d7490cc3047b
    Open exact source ↗ for PTO-AVS-ARCH-STATE-PROGRAM-COUNTER-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 history3
  • Define the PTO architectural state contract · accepted
    1. decision recordADR
    2. case0008

    Decision record

    Loading ADR-0008…

    Sources and references
    Complete stable ID
    ADR-0008
    Path
    docs/status/decisions/0008-architectural-state-contract.md
    Affected units
    PTO-ARCH-OVERVIEW-ARCHITECTURE, PTO-ARCH-PROGRAMMING-MODEL-EXECUTION-CONTEXT, PTO-ARCH-PROGRAMMING-MODEL-PREDICATE-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-SCALAR-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-SHARED-TILE-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-TILE-REGISTERS, PTO-ARCH-STATE-DEFINEDNESS, PTO-ARCH-STATE-PROGRAM-COUNTER, PTO-ARCH-STATE-TILE-DESCRIPTOR, PTO-ARCH-STATE-TRAP-CONTEXT, PTO-ARCH-SYSTEM-REGISTERS-ACCESS-CONTROL, PTO-ARCH-SYSTEM-REGISTERS-ADDRESSING, PTO-ARCH-SYSTEM-REGISTERS-CONTEXT, PTO-BLOCK-B-IOR, PTO-BLOCK-B-IOS, PTO-BLOCK-B-IOT, PTO-BLOCK-MODEL-STATE-BINDING-STATE, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES, PTO-TILE-MODEL-STATE-LOCAL-REGISTERS
    Affected NDF
    PTO-ARCH-STATE-CLOSURE-001, PTO-REQ-BUNDLE-STATE-001, PTO-REQ-SHARED-TILE-001, PTO-REQ-STATE-001, PTO-REQ-TILE-001, PTO-TILE-CAPACITY-PER-PE
    SHA-256
    9c33e1b57d0f04c4d808ee61aaf975187a3dbd32a071329ca65a916dc0e614ca
    Open exact decision source ↗ for ADR-0008
  • scalar TPC and execution status · accepted
    1. decision recordADR
    2. case0009

    Decision record

    Loading ADR-0009…

    Sources and references
    Complete stable ID
    ADR-0009
    Path
    docs/status/decisions/0009-scalar-tpc-and-execution-status.md
    Affected units
    PTO-ARCH-PROGRAMMING-MODEL-EXECUTION-CONTEXT, PTO-ARCH-STATE-PROGRAM-COUNTER, PTO-BLOCK-BSTART, PTO-BLOCK-BSTOP, PTO-BLOCK-C-BSTOP, PTO-BLOCK-L-BSTOP, PTO-BLOCK-MODEL-STATE-BARG, PTO-BLOCK-MODEL-STATE-CONTROL-STATE
    Affected NDF
    PTO-BARG-CONTINUATION-001, PTO-BSTART-DECISION-BINDING-001, PTO-BSTOP-DECISION-BINDING-001, PTO-C-BSTOP-DECISION-BINDING-001, PTO-L-BSTOP-DECISION-BINDING-001, PTO-REQ-BUNDLE-STATE-001, PTO-REQ-STATE-001
    SHA-256
    158daf8c726f443cb35afc2e6218d64f0a7da1a68cb3aa9624472baf25467a11
    Open exact decision source ↗ for ADR-0009
  • Scalar PC-relative and return-address state · accepted
    1. decision recordADR
    2. case0021

    Decision record

    Loading ADR-0021…

    Sources and references
    Complete stable ID
    ADR-0021
    Path
    docs/status/decisions/0021-scalar-pc-relative-and-return-address.md
    Affected units
    PTO-ARCH-STATE-PROGRAM-COUNTER, PTO-BLOCK-MODEL-STATE-BARG, PTO-SCALAR-ADDTPC, PTO-SCALAR-C-SETRET, PTO-SCALAR-HL-ADDTPC, PTO-SCALAR-HL-SETRET, PTO-SCALAR-SETRET
    Affected NDF
    PTO-ADDTPC-PAGE-001, PTO-BARG-CONTINUATION-001, PTO-C-SETRET-DECISION-BINDING-001, PTO-HL-ADDTPC-PAGE-001, PTO-HL-SETRET-DECISION-BINDING-001, PTO-SETRET-ADR-CONTRACT-001
    SHA-256
    99c06f12ee973312181938672a9e059a0dc5a0c4e08effd666616b8006e5f5f9
    Open exact decision source ↗ for ADR-0021

Unit metadata

Open 4 generated metadata fields
id
PTO-ARCH-STATE-PROGRAM-COUNTER
surface
arch
classification
[
  "state",
  "program-counter"
]
depends_on
[
  "PTO-ARCH-PROGRAMMING-MODEL-SCALAR-REGISTERS"
]
Open generated traceability record
{
  "classification": [
    "state",
    "program-counter"
  ],
  "documentation": "docs/arch/state/program-counter.md",
  "id": "PTO-ARCH-STATE-PROGRAM-COUNTER",
  "mnemonic": null,
  "readiness_subjects": [
    "ADR-0008",
    "ADR-0009",
    "ADR-0021"
  ],
  "semantic_tests": [
    "PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001"
  ],
  "source": "asl/arch/state/program-counter.asl",
  "surface": "arch",
  "tests": [
    "PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001",
    "PTO-AVS-ARCH-STATE-PROGRAM-COUNTER-STATIC-001"
  ]
}

Sources and release identity

Show commit, paths, hashes, version, and canonical owners
Release
0.58.5 · Release candidate
Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812
ASL SHA-256
3b5f7bad14ca62af5d776ae551ddf32b4b9f43fe25d96ce0fd31a59b44e1e845
Generated documentation
docs/arch/state/program-counter.md · embedded in this page
Documentation SHA-256
8aedcb21ce2bc653515041f92cf1de114cc48a840d3b3afa80a669aae3adf970

Exact owners