Skip to content
STIMSMITH

Cold Start

Concept WIKI v1 · 6/6/2026

In the context of tandem simulation that pairs an Instruction-Level Abstraction (ILA) with an RTL Execution Model (RTEM), a 'cold start' is the initialization procedure used to bring RTL micro-architectural variables (e.g., internal counters, pipeline registers) that are not represented in the ILA to a known reset state, so that architectural-variable values lifted from the ILA can be safely substituted into the RTL model before co-simulation begins.

Cold Start

In generalized tandem simulation, an abstract Instruction-Level Abstraction (ILA) model is co-simulated against a more detailed RTL Execution Model (RTEM) of the same design. Because the ILA deliberately omits many RTL micro-architectural state elements (internal counters, pipeline registers, and similar implementation details), those RTL variables have no counterpart in the ILA and must be initialized before the two models can be brought into lock-step.

Purpose

A cold start solves this initialization problem. Rather than running the RTL model from an arbitrary or random state, the cold-start procedure drives the RTEM into a well-defined reset configuration for the micro-architectural variables, after which the architectural-variable (AV) map is used to load the RTL architectural variables (RTAVs) with values taken from the ILA (ILAVs). Without this step, the RTL model would carry unconstrained internal state that is inconsistent with the ILA's view of the design.

Mechanism

The cold start is specified declaratively as an additional field, the cold start map, of the refinement map. It contains two parts:

  • Pre-swap cycle / sequence. An input sequence applied to the RTEM that forces the design into reset. A simple form asserts the reset signal for a few cycles; a more general form supplies an arbitrary stimulus sequence to RTEM input pins (e.g., a reset followed by a global start).
  • Swap cycle. The number of cycles for which the swapped-in RTAVs are held in place. This is necessary for designs in which an architectural value takes multiple cycles to propagate from an architectural register into the micro-architectural state (e.g., a pipeline stage), so that all internal variables reach their consistent values before regular tandem stepping begins.

Once the pre-swap sequence has completed and the swap-cycle delay has elapsed, ordinary tandem simulation can proceed using the AV map to keep RTAVs synchronized with ILAVs.

Relation to Prior Work

The approach mirrors the initialization step used in earlier processor tandem-simulation work, and it is one of the mechanisms that enables jump-starting (warm-up simulation) — another tandem-simulation concept in which simulation is launched partway through a program rather than from time zero.

Implementation Context

In the ASPDAC'22 case studies that introduced the generalized methodology, the cold-start field is part of the same refinement map used to describe the correspondence between an ILA and each of several RTL implementations (accelerator designs such as AES and FlexNLP, and RISC-V processor cores such as Pico, Piccolo, and Rocket). Automation of the cold-start map is what allows the same ILA to be paired with multiple different refinement maps and RTL implementations without manual RTL-state initialization.

CITATIONS

3 sources
3 citations
[1] Cold start sets RTL micro-architectural variables (internal counters, pipeline registers) that are not present in the ILA to their reset values, analogous to the approach used in processor tandem simulation. Generalizing Tandem Simulation: Connecting High-level and RTL Simulation Models
[2] The cold start is automated via an additional 'cold start' field of the refinement map, which contains a pre-swap cycle/sequence section (input stimulus to the RTEM, e.g., asserting reset for a couple of cycles or a general reset-and-global-start sequence) and a swap cycle that holds swapped RTAVs long enough for multi-cycle propagation into micro-architectural variables. Generalizing Tandem Simulation: Connecting High-level and RTL Simulation Models
[3] After the cold start, the AV map is used to set the RTAVs with the corresponding ILAVs from the ILA model, enabling coherent co-simulation between the ILEM and the RTEM. Generalizing Tandem Simulation: Connecting High-level and RTL Simulation Models