SimDigest Module
A deterministic text rendering of a design's observable simulation behaviour, shared by both runtimes so they can be compared byte for byte. This is the golden-model render, moved here from the test suite unchanged so that the dotnet sidecar can produce the SAME text the tests pin in their .golden files: every top-level input driven by the deterministic stimulus, every output, viewer and clocked component printed per cycle, RAM contents at the end. Electron computes it locally and the sidecar answers the SimDigest protocol command with its own; any difference is a real cross-runtime divergence, located by the first differing line.
Nested modules
| Modules | Description |
Functions and values
| Function or value | Description |
Full Usage:
render ldcs topSheet ticks
Parameters:
LoadedComponent list
topSheet : string
ticks : int
Returns: Result<string, string>
|
|
Full Usage:
renderWith waveTables ldcs topSheet ticks
Parameters:
WaveTables
ldcs : LoadedComponent list
topSheet : string
ticks : int
Returns: Result<string, string>
|
Simulate `ticks` clock cycles of `topSheet`, driving all top-level inputs with the deterministic stimulus, and render the observable behaviour as text. Error when the design does not build. `waveTables` is a parameter only so that a test can render one design both ways and compare: nothing below reads WaveComps, Drivers or WaveIndex, so the two texts must be identical, and that is the whole claim the sidecar's build rests on.
|
Full Usage:
stimulus inputIndex tick width
Parameters:
int
tick : int
width : int
Returns: bigint
|