write_reg macro
CodeArtifactThe `write_reg` macro is an ITL helper used in an operation property for an ADD instruction. It specifies the next architectural register-file state by writing a computed result to one selected register while keeping every other register unchanged.
First seen 5/29/2026
Last seen 5/29/2026
Evidence 2 chunks
Wiki v1
WIKI
Overview
write_reg is a macro shown in an ITL operation property for a simple pipelined processor's ADD instruction. The property decodes an instruction word into opcode, source registers regA and regB, and destination register regD, assumes the opcode is ADD_op and that the processor is not stalled or interrupted, and then proves the register-file update using:
at t: write_reg(regD, vreg(regA) + vreg(regB));
NEIGHBORHOOD
No graph connections found for this entity yet. It may appear in future ingestion runs.
explore full graph →RELATIONSHIPS
3 connectionsThe write_reg macro updates the register file entries.
The instrADD property uses the write_reg macro to express register file updates.
The write_reg macro is used within architectural style properties to specify register updates concisely.
CITATIONS
5 sources5 citations — click to expand
[1] `write_reg` is shown as a macro in the ITL ADD operation property and is invoked as `write_reg(regD, vreg(regA) + vreg(regB))`. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[2] The macro iterates over register indices `0..7`, writes `res(15 downto 0)` to the selected register, and leaves non-selected `vreg(k)` values unchanged. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[3] The paper states that completeness requires claiming that remaining registers do not change, and that this condition is included in `write_reg`. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[4] `vreg` represents the architectural register file and hides pipeline forwarding logic in the abstraction used by the properties. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[5] Under the ADD execution assumptions, the property proves that one time step later the register file is updated with the correct value. Generating an Efficient Instruction Set Simulator from a Complete Property Suite