Operands and parameters
SrcL- Reg5 source: R0..R23, T#1..T#4, or U#1..U#4
BWI publishes the WaitInterrupt nonblocking execution-control request.
PTO-SCALAR-BWIbwi SrcL| Field | Bits | Signedness | Architectural role | Encoded zero |
|---|---|---|---|---|
SrcL | 5 | encoding-defined | Reg5 source: R0..R23, T#1..T#4, or U#1..U#4 | Encoded zero names the architectural zero GPR. |
Loading WaveDrom diagram… The encoding table and WaveJSON remain available below.
| Decoded item | Bit range | Value |
|---|---|---|
| Constant | 31:20 | 12'b000000000010 |
| SrcL | 19:15 | variable |
| Constant | 14:0 | 15'b000000000101011 |
{
"reg": [
{
"bits": 15,
"name": "15'b000000000101011"
},
{
"bits": 5,
"name": "SrcL"
},
{
"bits": 12,
"name": "12'b000000000010"
}
],
"config": {
"bits": 32,
"fontsize": 13,
"hspace": 900,
"lanes": 1,
"offset": 0
}
}bwi SrcL
SrcLThis Operation comes directly from the instruction owner; the page does not rewrite its behavior.
readonly func InstructionContractOperation_BWI() => ScalarOperationbegin return ScalarOperation_BWI;end;readonly func InstructionContractHandler_BWI() => ScalarSemanticHandlerbegin return ScalarHandler_ExecuteControlRequest;end;
pure func InstructionContractRequiresSystemBlock_BWI() => booleanbegin return TRUE;end;
pure func InstructionContractControlRequest_BWI() => ExecutionControlRequestbegin return ExecutionControl_WaitInterrupt;end;
pure func InstructionContractControlRequestIsNonblocking_BWI() => booleanbegin return TRUE;end;// PTO-INSTRUCTION: {"assembly":["bwi SrcL"],"block":[],"catalog_indices":[19],"catalog_records":[{"asm":"bwi SrcL","constraints":[],"encoding":[{"index":0,"mask":"0xfff07fff","match":"0x0020002b","width_bits":32}],"encoding_kind":"L32","fields":[{"name":"SrcL","pieces":[{"instruction_lsb":15,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5}],"form_id":"bwi_32_d9a0905cb31b","length_bits":32,"mnemonic":"BWI","semantic_family":"SYS","semantic_group":"SYS","semantic_handler":"ExecuteControlRequest","semantic_summary":"BWI publishes the WaitInterrupt nonblocking execution-control request.","status":"accepted"}],"classification":["sys"],"contract":{"block_composition":["BWI executes as one scalar operation in the body of an active SYS block."],"canonical_assembly":["bwi SrcL"],"defaults":["Every displayed operand is encoded explicitly. Encoded zero is an assigned value and never denotes omission."],"encoding_class":"standalone-encoded","examples":["bwi SrcL"],"exceptions":["Invalid block placement raises Illegal Block Exception before encoded-field legality or effects.","A reserved encoding or rejected access raises Illegal Instruction before destination, queue, system-state, or TPC effects."],"field_contracts":{},"field_zero_meanings":{"SrcL":"Encoded zero names the architectural zero GPR."},"legality":["Every fixed bit and explicit field constraint is checked before operation semantics.","Every assigned Reg5 source selector follows the common scalar-source availability rule."],"memory_effects":["none"],"operands":[{"field":"SrcL","role":"Reg5 source: R0..R23, T#1..T#4, or U#1..U#4"}],"ordering":["Check block placement and encoded legality before source reads or architectural effects.","Snapshot every scalar source before the selected system effect, then advance TPC only after success."],"standalone_opcode":true,"state_effects":["Snapshot SrcL, publish ExecutionControl_WaitInterrupt and the exact XLEN operand, increment the architecture-request epoch, then advance TPC.","PTO defines no additional asleep, mailbox, timeout-counter, or pending-wake state for this nonblocking request."]},"depends_on":["PTO-SCALAR-MODEL-SYS-SEMANTICS"],"id":"PTO-SCALAR-BWI","mnemonic":"BWI","summary":"BWI publishes the WaitInterrupt nonblocking execution-control request.","surface":"scalar"}// PTO-REVIEW: {"review_method":"formal-definition-read","outcome":"FORMAL-COMPLETE","reviewed_fields":["assembly","encoding","defaults","operation","state","memory","ordering","faults","reserved"]}// NDF-BEGIN: PTO-BWI-DECISION-BINDING-001// ndf: kind=contract level=L1 layer=scalar status=accepted// BWI MUST implement the mnemonic-local canonical assembly, encoded// legality, defaults, state and memory effects, ordering, and fault boundaries// declared in this owner. The operation region below is the executable binding// for every accepted decision that names this mnemonic.// NDF-END: PTO-BWI-DECISION-BINDING-001// DOC-BEGIN: decodereadonly func InstructionContractOperation_BWI() => ScalarOperationbegin return ScalarOperation_BWI;end;// DOC-END: decode// DOC-BEGIN: operationreadonly func InstructionContractHandler_BWI() => ScalarSemanticHandlerbegin return ScalarHandler_ExecuteControlRequest;end;
pure func InstructionContractRequiresSystemBlock_BWI() => booleanbegin return TRUE;end;
pure func InstructionContractControlRequest_BWI() => ExecutionControlRequestbegin return ExecutionControl_WaitInterrupt;end;
pure func InstructionContractControlRequestIsNonblocking_BWI() => booleanbegin return TRUE;end;// DOC-END: operation
BWI publishes its assigned nonblocking execution-control request using a snapshotted scalar operand.
The ASL DOC region selects ScalarHandler_ExecuteControlRequest. Placement and encoded legality are checked before sources or system state can change.
The instruction occupies one scalar operation position in the body of an active SYS block.
SrcL carries the Reg5 source: R0..R23, T#1..T#4, or U#1..U#4.
Encoded zero is an assigned field value, never an omitted operand.
The snapshotted SrcL value is published with ExecutionControl_WaitInterrupt, and the architecture-request epoch increments before TPC advances.
The request is nonblocking in the portable model and creates no separate sleep, mailbox, timeout-counter, or pending-wake state.
Every assigned Reg5 selector follows the common scalar-source rule.
Invalid SYS-block placement is rejected before field checks. Reserved encodings or denied access produce no destination, queue, system-state, or TPC effect beyond the ordinary trap envelope.
This spelling example is illustrative; exact legality and effects remain in the generated contract below.
Start with bwi SrcL and trace its encoded fields through preflight before following the selected system effect.
Bodies come from owning ASL. Dragging or buttons change only this page-session view order.
BWI MUST implement the mnemonic-local canonical assembly, encoded legality, defaults, state and memory effects, ordering, and fault boundaries declared in this owner. The operation region below is the executable binding for every accepted decision that names this mnemonic.
PTO-BWI-DECISION-BINDING-001asl/scalar/sys/BWI.asl36622c80f9a1c4918a5f0abb3a8cb1e7d5df9bf7740e5c90e95111cbcd4a08c8abb3546ef953e82804f4f767cf049c7d8332aee79ecbb9294f73424f06c6e23914 matching entries
PTO-AVS-SCALAR-BWI-DECODE-001tests/asl/scalar/sys/BWI/scalar-decode-bwi-canonical-001.asl21f921dc0eb1ed45ff68e90c6fcafdfd52dccd1f5cc1fa4a552e0ef2710db508PTO-AVS-SYS-BWI-EXEC-001tests/asl/scalar/sys/BWI/scalar-exec-bwi-direct-001.aslfab6178b55f682d5246da1dc84dec0eece6a71b7179eec9eac43cc7cdff4f94aPTO-AVS-SYS-BWI-PLACE-001tests/asl/scalar/sys/BWI/scalar-fault-bwi-place-001.aslda9edf3c6b94d06b0aca80214c24d19435ee44c2dea8bca494f0122cea2e9f13PTO-AVS-SYS-BWI-TSRC-001tests/asl/scalar/sys/BWI/scalar-exec-bwi-tsrc-001.asl62f5f5a7d0bd3793f1d9880db70bf75433004c893e1ad29999c57864e69ace96PTO-AVS-SYS-BWI-USRC-001tests/asl/scalar/sys/BWI/scalar-exec-bwi-usrc-001.asl4159dfd66b4b6400dfda1935224168acae89facaf1ecb7cc62da26bff59747a9PTO-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-0018…
ADR-0018docs/status/decisions/0018-pto-v0-trap-disposition.mdce33454ffd2a595425ebece5954c9990ea2b9c4890008ad700599f767d7b9716Loading ADR-0031…
ADR-0031docs/status/decisions/0031-scalar-sys-totality-and-profile-boundaries.md5680b3516be6c28a1ccb198c99f5efb66317c65330f6d87434173024d2795a7dLoading ADR-0059…
ADR-0059docs/status/decisions/0059-mnemonic-field-encoding-closure.mdf18d13f735cfaf9f2803c754c5818f4af33d1cc42c489f0d9ce060b07bb3a196Loading ADR-0084…
ADR-0084docs/status/decisions/0084-scalar-system-and-queue-operations.mde068992fa81e2c4ac46e492391a2f784141d68e041bf0b9e0586c37217d1e08c{
"classification": [
"sys"
],
"documentation": "docs/scalar/sys/BWI.md",
"id": "PTO-SCALAR-BWI",
"instruction_contract": {
"artifact": "spec/evidence/instruction-contract-closure.json",
"mnemonic": "BWI",
"ndf_clause": "PTO-INST-SCALAR-BWI"
},
"mnemonic": "BWI",
"readiness_subjects": [
"ADR-0018",
"ADR-0031",
"ADR-0059",
"ADR-0084"
],
"semantic_tests": [
"PTO-AVS-SYS-BWI-EXEC-001",
"PTO-AVS-SYS-BWI-PLACE-001",
"PTO-AVS-SYS-BWI-TSRC-001",
"PTO-AVS-SYS-BWI-USRC-001"
],
"source": "asl/scalar/sys/BWI.asl",
"surface": "scalar",
"tests": [
"PTO-AVS-SCALAR-BWI-DECODE-001",
"PTO-AVS-SYS-BWI-EXEC-001",
"PTO-AVS-SYS-BWI-PLACE-001",
"PTO-AVS-SYS-BWI-TSRC-001",
"PTO-AVS-SYS-BWI-USRC-001"
]
}0.58.5 · Release candidate7dc8b7e5b121d2b2499a2273bebff29e2cd8681236622c80f9a1c4918a5f0abb3a8cb1e7d5df9bf7740e5c90e95111cbcd4a08c8d19dedc050d8e14b8926cd6f49f65b72342f76aa5e1c572017d41b40ca2fa6daasl/scalar/sys/BWI.aslasl/scalar/sys/BWI.aslasl/scalar/sys/BWI.asl