AV-Swap
Definition
In the generalized tandem simulation methodology proposed by Xing, Gupta, and Malik (ASPDAC 2022), AV-Swap denotes the operation of copying the values of the instruction-level architectural variables (ILAVs) maintained by the instruction-level execution model (ILEM) into the corresponding RTL architectural variables (RTAVs) of the RTL-based execution model (RTEM). The correspondence between ILAVs and RTAVs is established by the AV map, an augmentation of the ILA refinement map.
Role in the Tandem Simulation Flow
The tandem tool generates three additional blocks from the refinement map: an instruction monitor, an AV-Comparator, and an AV-Converter. The instruction monitor uses the instruction map to detect instruction boundaries in the RTEM. Depending on the scenario, the monitor then invokes:
- The AV-Comparator in Scenarios 1–2 for AV-Check (comparing ILAVs and RTAVs), or
- The AV-Converter in Scenario 3 for swapping AVs and jump-starting.
Both components rely on the AV map, which provides the correspondence between ILAVs and RTAVs.
Relationship to Jump-Starting (Warm-Up Simulation)
AV-Swap is the enabling mechanism for jump-starting the RTEM. By swapping already-computed ILAV values into the RTAVs, the RTEM can begin execution from a meaningful state in the middle of a test, rather than re-running the warm-up phase in the slower RTL model. The paper observes that this "can significantly reduce simulation time by leaving the 'warm-up' part of the test to only the ILEM."
Cold-Start and Micro-Architectural Variables
A challenge for AV-Swap is that the ILA is an abstracted model and there exist RTL micro-architectural variables (e.g., internal counters, pipeline registers) that are not present in the ILA. The methodology addresses this in a manner analogous to processor tandem simulation:
- A "cold start" is applied to set the RTL micro-architectural variables to their reset values.
- The AV map is then used to set the RTAVs with the corresponding ILAVs (the actual AV-Swap).
This is automated through an additional "cold start" map field of the refinement map. The cold-start map contains:
- A pre-swap cycle/sequence section that specifies the input sequence applied to the RTEM for reset (e.g., asserting reset for a couple of cycles, or a general input-pin sequence for reset and global start).
- A swap cycle that describes the holding time for swapped RTAVs, accounting for designs in which RTAVs take multiple cycles to propagate to micro-architectural variables.
See Also
- Tandem Simulation — the cross-level simulation technique that uses AV-Swap.
- AV-Converter — the tool block that implements AV-Swap.
- Jump-Starting (Warm-Up Simulation) — the warm-up reduction technique enabled by AV-Swap.
- AV-Comparator — the companion block that performs AV-Check (Scenarios 1–2) using the same AV map.
- AV map — the data structure providing ILAV–RTAV correspondence.
- Instruction-Level Abstraction (ILA) — the high-level modeling formalism that provides the refinement map underlying the AV map.