@celox-sim/celox 0.1.32 → 0.1.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/napi-helpers.d.ts +22 -0
- package/dist/napi-helpers.d.ts.map +1 -1
- package/dist/napi-helpers.js +18 -0
- package/dist/napi-helpers.js.map +1 -1
- package/dist/simulator.d.ts.map +1 -1
- package/dist/simulator.js +11 -5
- package/dist/simulator.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -4
- package/src/dut.test.ts +59 -13
- package/src/e2e.bench.ts +13 -5
- package/src/e2e.test.ts +84 -22
- package/src/index.ts +1 -0
- package/src/napi-helpers.ts +46 -0
- package/src/simulator.ts +13 -4
- package/src/types.ts +7 -0
package/dist/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export { buildNapiOpts, buildPortsFromLayout, clearJitCache, createSimulationBri
|
|
|
18
18
|
export { Simulation } from "./simulation.js";
|
|
19
19
|
export { Simulator } from "./simulator.js";
|
|
20
20
|
/** @internal */
|
|
21
|
-
export type { CreateResult, EventHandle, FourStateValue, LoopBreak, ModuleDefinition, NativeHandle, NativeSimulationHandle, NativeSimulatorHandle, OptimizeOptions, ParamOverride, PortInfo, SignalLayout, SimulatorOptions, SourceFile, TrueLoopSpec, } from "./types.js";
|
|
21
|
+
export type { CreateResult, EventHandle, FourStateSignalValue, FourStateValue, LoopBreak, ModuleDefinition, NativeHandle, NativeSimulationHandle, NativeSimulatorHandle, OptimizeOptions, ParamOverride, PortInfo, SignalLayout, SimulatorOptions, SourceFile, TrueLoopSpec, } from "./types.js";
|
|
22
22
|
export { FourState, isFourStateValue, SimulationTimeoutError, X, Z, } from "./types.js";
|
|
23
23
|
/** @internal */
|
|
24
24
|
export type { RawWasmSimulatorHandle, WasmBridgeResult, } from "./wasm-bridge.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gBAAgB;AAChB,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,gBAAgB;AAChB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACpE,gBAAgB;AAChB,YAAY,EACX,aAAa,EACb,YAAY,EACZ,uBAAuB,EACvB,sBAAsB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,gBAAgB;AAChB,OAAO,EACN,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,gBAAgB;AAChB,YAAY,EACX,YAAY,EACZ,WAAW,EACX,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,YAAY,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACN,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,CAAC,EACD,CAAC,GACD,MAAM,YAAY,CAAC;AAGpB,gBAAgB;AAChB,YAAY,EACX,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,yBAAyB,EACzB,8BAA8B,EAC9B,YAAY,GACZ,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gBAAgB;AAChB,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,gBAAgB;AAChB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACpE,gBAAgB;AAChB,YAAY,EACX,aAAa,EACb,YAAY,EACZ,uBAAuB,EACvB,sBAAsB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,gBAAgB;AAChB,OAAO,EACN,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,gBAAgB;AAChB,YAAY,EACX,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,YAAY,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACN,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,CAAC,EACD,CAAC,GACD,MAAM,YAAY,CAAC;AAGpB,gBAAgB;AAChB,YAAY,EACX,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,yBAAyB,EACzB,8BAA8B,EAC9B,YAAY,GACZ,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,gBAAgB;AAChB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAQpE,gBAAgB;AAChB,OAAO,EACN,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,0BAA0B;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,0BAA0B;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,gBAAgB;AAChB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAQpE,gBAAgB;AAChB,OAAO,EACN,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,0BAA0B;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,0BAA0B;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAqB3C,kBAAkB;AAClB,cAAc;AACd,OAAO,EACN,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,CAAC,EACD,CAAC,GACD,MAAM,YAAY,CAAC;AAQpB,OAAO,EACN,yBAAyB,EACzB,8BAA8B,EAC9B,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAE1B,+DAA+D;AAC/D,4DAA4D"}
|
package/dist/napi-helpers.d.ts
CHANGED
|
@@ -169,6 +169,28 @@ export declare function parseNapiLayout(json: string): {
|
|
|
169
169
|
}>;
|
|
170
170
|
forDut: Record<string, SignalLayout>;
|
|
171
171
|
};
|
|
172
|
+
/**
|
|
173
|
+
* Recover 4-state flags for wasm32 layout JSON emitted by older addons.
|
|
174
|
+
*
|
|
175
|
+
* Older wasm artifacts reported `is_4state: false` for every signal even when
|
|
176
|
+
* the simulator was created with `fourState: true`. In that case, infer the
|
|
177
|
+
* flag from `typeKind` so JS-side DUT access continues to work.
|
|
178
|
+
*/
|
|
179
|
+
export declare function recoverWasmFourStateLayout(layout: {
|
|
180
|
+
signals: Record<string, SignalLayout & {
|
|
181
|
+
typeKind: string;
|
|
182
|
+
arrayDims?: number[];
|
|
183
|
+
associatedClock?: string;
|
|
184
|
+
}>;
|
|
185
|
+
forDut: Record<string, SignalLayout>;
|
|
186
|
+
}): {
|
|
187
|
+
signals: Record<string, SignalLayout & {
|
|
188
|
+
typeKind: string;
|
|
189
|
+
arrayDims?: number[];
|
|
190
|
+
associatedClock?: string;
|
|
191
|
+
}>;
|
|
192
|
+
forDut: Record<string, SignalLayout>;
|
|
193
|
+
};
|
|
172
194
|
/**
|
|
173
195
|
* Build PortInfo records from the NAPI layout signals.
|
|
174
196
|
* This auto-detects port metadata so users don't need to hand-write ModuleDefinition.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"napi-helpers.d.ts","sourceRoot":"","sources":["../src/napi-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"napi-helpers.d.ts","sourceRoot":"","sources":["../src/napi-helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/napi-helpers.js
CHANGED
|
@@ -237,6 +237,24 @@ export function parseNapiLayout(json) {
|
|
|
237
237
|
}
|
|
238
238
|
return { signals, forDut };
|
|
239
239
|
}
|
|
240
|
+
/**
|
|
241
|
+
* Recover 4-state flags for wasm32 layout JSON emitted by older addons.
|
|
242
|
+
*
|
|
243
|
+
* Older wasm artifacts reported `is_4state: false` for every signal even when
|
|
244
|
+
* the simulator was created with `fourState: true`. In that case, infer the
|
|
245
|
+
* flag from `typeKind` so JS-side DUT access continues to work.
|
|
246
|
+
*/
|
|
247
|
+
export function recoverWasmFourStateLayout(layout) {
|
|
248
|
+
const signals = Object.fromEntries(Object.entries(layout.signals).map(([name, sig]) => {
|
|
249
|
+
const inferred = sig.is4state || (sig.typeKind !== "bit" && sig.typeKind !== "other");
|
|
250
|
+
return [name, { ...sig, is4state: inferred }];
|
|
251
|
+
}));
|
|
252
|
+
const forDut = Object.fromEntries(Object.entries(layout.forDut).map(([name, sig]) => [
|
|
253
|
+
name,
|
|
254
|
+
{ ...sig, is4state: signals[name]?.is4state ?? sig.is4state },
|
|
255
|
+
]));
|
|
256
|
+
return { signals, forDut };
|
|
257
|
+
}
|
|
240
258
|
/**
|
|
241
259
|
* Build PortInfo records from the NAPI layout signals.
|
|
242
260
|
* This auto-detects port metadata so users don't need to hand-write ModuleDefinition.
|
package/dist/napi-helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"napi-helpers.js","sourceRoot":"","sources":["../src/napi-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"napi-helpers.js","sourceRoot":"","sources":["../src/napi-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAeH,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAiK3E,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,SAAkB;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE/C,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,OAAO,CAAC,SAAS,CAAiB,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC;QACJ,OAAO,OAAO,CAAC,uBAAuB,CAAiB,CAAC;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACd,wDAAwD;YACvD,oCAAoC,EACrC,EAAE,KAAK,EAAE,CAAC,EAAE,CACZ,CAAC;IACH,CAAC;AACF,CAAC;AAED,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAEzC,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjE,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC5B,OAA0B;IAE1B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACvC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACrC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,sDAAsD;QACtD,QAAQ,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxD,4EAA4E;YAC5E,OAAO,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC9B,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACrC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAa,EAAE,EAAE,CAAC,CAAC;YAChE,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC;YAC9B,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;SAC1B,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAgB,EAAE,EAAE,CAAC,CAAC;YACjE,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC;YAC9B,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,EAAE,CAAC,OAAO;SACnB,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACvC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACvC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QAC3C,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;SAC9D,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC/B,MAAM,KAAK,GAA2B;YACrC,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,YAAY,EAAE,gBAAgB;SAC9B,CAAC;QACF,QAAQ,CAAC,iBAAiB;YACzB,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC;QAC/D,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC/B,MAAM,KAAK,GAA2B;YACrC,YAAY,EAAE,cAAc;YAC5B,UAAU,EAAE,aAAa;SACzB,CAAC;QACF,QAAQ,CAAC,iBAAiB;YACzB,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC;QAC/D,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACzC,QAAQ,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;QAC3D,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;QACpC,QAAQ,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QACjD,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;QACnC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,IAAI,EAAE,CAAC,mBAAmB,IAAI,IAAI;YACjC,MAAM,CAAC,mBAAmB,GAAG,EAAE,CAAC,mBAAmB,CAAC;QACrD,IAAI,EAAE,CAAC,sBAAsB,IAAI,IAAI;YACpC,MAAM,CAAC,sBAAsB,GAAG,EAAE,CAAC,sBAAsB,CAAC;QAC3D,IAAI,EAAE,CAAC,kBAAkB,IAAI,IAAI;YAChC,MAAM,CAAC,kBAAkB,GAAG,EAAE,CAAC,kBAAkB,CAAC;QACnD,IAAI,EAAE,CAAC,cAAc,IAAI,IAAI;YAAE,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC;QACzE,IAAI,EAAE,CAAC,gBAAgB,IAAI,IAAI;YAC9B,MAAM,CAAC,gBAAgB,GAAG,EAAE,CAAC,gBAAgB,CAAC;QAC/C,IAAI,EAAE,CAAC,aAAa,IAAI,IAAI;YAAE,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;QACtE,IAAI,EAAE,CAAC,sBAAsB,IAAI,IAAI;YACpC,MAAM,CAAC,sBAAsB,GAAG,EAAE,CAAC,sBAAsB,CAAC;QAC3D,IAAI,EAAE,CAAC,0BAA0B,IAAI,IAAI;YACxC,MAAM,CAAC,0BAA0B,GAAG,EAAE,CAAC,0BAA0B,CAAC;QACnE,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI;YAAE,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;QAC7D,IAAI,EAAE,CAAC,cAAc,IAAI,IAAI;YAAE,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC;QACzE,QAAQ,CAAC,eAAe,GAAG,MAAM,CAAC;QAClC,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC;QAClE,MAAM,GAAG,GAA2B;YACnC,gBAAgB,EAAE,oBAAoB;YACtC,gBAAgB,EAAE,oBAAoB;SACtC,CAAC;QACF,QAAQ,CAAC,eAAe;YACvB,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACtC,CAAC;AAiBD;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAW3C,MAAM,GAAG,GAAoC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,OAAO,GAOT,EAAE,CAAC;IACP,MAAM,MAAM,GAAiC,EAAE,CAAC;IAEhD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,EAAE,GAAiB;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAChE,QAAQ,EAAE,CAAC,CAAC,SAAS;YACrB,SAAS,EAAE,CAAC,CAAC,SAAsC;SACnD,CAAC;QACF,MAAM,KAAK,GAIP;YACH,GAAG,EAAE;YACL,QAAQ,EAAE,CAAC,CAAC,SAAS;SACrB,CAAC;QACF,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACxB,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,gBAAgB,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAU1C;IAWA,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE;QAClD,MAAM,QAAQ,GACb,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CACuB,CAAC;IAE3B,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QAClD,IAAI;QACJ,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE;KAC7D,CAAC,CACsB,CAAC;IAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CACnC,OAGC,EACD,OAA+B;IAE/B,oDAAoD;IACpD,MAAM,IAAI,GAA6B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,IAAI,QAA6C,CAAC;QAClD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC1B,QAAQ,GAAG,OAAO,CAAC;QACpB,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,QAAQ,GAAG,OAAO,CAAC;QACpB,CAAC;aAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC/B,QAAQ,GAAG,KAAK,CAAC;QAClB,CAAC;aAAM,CAAC;YACP,QAAQ,GAAG,OAAO,CAAC;QACpB,CAAC;QAED,MAAM,IAAI,GAAa;YACtB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACtB,CAAC;QACF,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAyC,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,6EAA6E;IAC7E,kFAAkF;IAClF,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,KAAK,GAA6B,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoC,CAAC;IAE3D,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACnB,SAAS;QACV,CAAC;QACD,gEAAgE;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,KAAK,GAA6B,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC9B,KAAK,CAAC,UAAU,CAAC,GAAG;gBACnB,SAAS,EAAE,OAAO;gBAClB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC;gBACR,SAAS,EAAE,KAAK;aAChB,CAAC;QACH,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC5C,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAuBD;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CACnC,IAAY,EACZ,MAA8B;IAE9B,MAAM,GAAG,GAAqB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/C,qEAAqE;IACrE,uCAAuC;IACvC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO;YACN,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,EAAE;SACZ,CAAC;IACH,CAAC;IAED,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,oBAAoB,CAC5B,GAAqB,EACrB,MAA8B;IAE9B,MAAM,OAAO,GAGT,EAAE,CAAC;IACP,MAAM,MAAM,GAAiC,EAAE,CAAC;IAEhD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,MAAM,EAAE,GAAiB;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAChE,QAAQ,EAAE,CAAC,CAAC,SAAS;YACrB,SAAS,EAAE,CAAC,CAAC,SAAsC;SACnD,CAAC;QACF,MAAM,KAAK,GAA8D;YACxE,GAAG,EAAE;YACL,QAAQ,EAAE,CAAC,CAAC,SAAS;SACrB,CAAC;QACF,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC;QAChC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEpD,MAAM,QAAQ,GAAoC,EAAE,CAAC;IACrD,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9D,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACvC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,CAClC,CAAC;IACH,CAAC;IAED,OAAO;QACN,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,OAAO;QACP,MAAM;QACN,KAAK;QACL,QAAQ;KACR,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACpC,SAAwB,EACxB,MAAwD;IAExD,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,MAAM,KAAK,kBAAkB;QAAE,OAAO,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACzE,8EAA8E;IAC9E,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,gDAAgD;AAChD,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACxC,GAA2B;IAE3B,OAAO;QACN,IAAI,CAAC,OAAe;YACnB,GAAG,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;QACD,KAAK,CAAC,OAAe,EAAE,KAAa;YACnC,GAAG,CAAC,KAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,QAAQ;YACP,GAAG,CAAC,QAAS,EAAE,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,SAAiB;YACrB,GAAG,CAAC,IAAK,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QACD,OAAO;YACN,GAAG,CAAC,OAAO,EAAE,CAAC;QACf,CAAC;KACD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACzC,GAA4B;IAE5B,OAAO;QACN,QAAQ,CAAC,OAAe,EAAE,MAAc,EAAE,YAAoB;YAC7D,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;QACD,QAAQ,CAAC,OAAe,EAAE,IAAY,EAAE,KAAa;YACpD,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;QACD,QAAQ,CAAC,OAAe;YACvB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;QACD,IAAI;YACH,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,IAAI;YACH,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,aAAa;YACZ,OAAO,GAAG,CAAC,aAAa,EAAE,CAAC;QAC5B,CAAC;QACD,QAAQ;YACP,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,SAAiB;YACrB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC;QACD,OAAO;YACN,GAAG,CAAC,OAAO,EAAE,CAAC;QACf,CAAC;KACD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,gDAAgD;AAChD,8EAA8E;AAE9E,SAAS,iBAAiB,CAAC,IAAY;IACtC,MAAM,GAAG,GAAoC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAiC,EAAE,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,GAAG;YACd,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAChE,QAAQ,EAAE,CAAC,CAAC,SAAS;YACrB,SAAS,EAAE,CAAC,CAAC,SAAsC;SACnD,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,gDAAgD;AAChD,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAmB;IACxD,OAAO,CACN,OAAkC,EAClC,UAAkB,EAClB,OAAyB,EACa,EAAE;QACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,IAAI;SACZ,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,qBAAqB,CAC1C,WAAW,EACX,UAAU,EACV,QAAQ,CACR,CAAC;QAEF,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,MAAM,GAA2B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAElE,gDAAgD;QAChD,IAAI,GAAoC,CAAC;QACzC,IAAI,MAA6B,CAAC;QAClC,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;YAC9C,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,GAAG,GAAG,GAAG,CAAC,YAAa,EAAE,CAAC,MAAM,CAAC;YACjC,MAAM,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC;QAEhE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACrE,CAAC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACrC,KAAmB;IAEnB,OAAO,CACN,OAAkC,EAClC,UAAkB,EAClB,OAAyB,EACc,EAAE;QACzC,oDAAoD;QACpD,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACd,4CAA4C;gBAC3C,yFAAyF,CAC1F,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,IAAI;SACZ,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAC3C,WAAW,EACX,UAAU,EACV,QAAQ,CACR,CAAC;QAEF,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,MAAM,GAA2B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAElE,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC;QAEhE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACrE,CAAC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAmB;IAChD,KAAK,CAAC,aAAa,EAAE,CAAC;AACvB,CAAC"}
|
package/dist/simulator.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,OAAO,KAAK,EACX,YAAY,EACZ,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EAErB,gBAAgB,EAChB,UAAU,EACV,MAAM,YAAY,CAAC;AAGpB;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,CAC5B,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,EAClC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,gBAAgB,KACrB,YAAY,CAAC,qBAAqB,CAAC,CAAC;AAIzC;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAEjE;AAMD,qBAAa,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAI;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO;IAoBP;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EACd,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAC3B,OAAO,CAAC,EAAE,gBAAgB,GAAG;QAC5B,iEAAiE;QACjE,cAAc,CAAC,EAAE,cAAc,CAAC;KAChC,GACC,SAAS,CAAC,CAAC,CAAC;IAoEf;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,gBAAgB,GAAG;QAAE,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GACvD,SAAS,CAAC,CAAC,CAAC;IAgEf;;;;;;;;;;OAUG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,gBAAgB,GAAG;QAAE,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GACvD,SAAS,CAAC,CAAC,CAAC;IA6Df,sEAAsE;IACtE,IAAI,GAAG,IAAI,CAAC,CAEX;IAED,oDAAoD;IACpD,IAAI,QAAQ,IAAI,SAAS,MAAM,EAAE,CAEhC;IAED;;;;;;OAMG;IACH,IAAI,CAAC,KAAK,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IACxD,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAiC1B,+DAA+D;IAC/D,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAUhC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAY3C,iEAAiE;IACjE,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAK7B,gCAAgC;IAChC,OAAO,IAAI,IAAI;IAcf,OAAO,CAAC,WAAW;CAKnB"}
|
package/dist/simulator.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* for manually controlling clock edges via `tick()`.
|
|
6
6
|
*/
|
|
7
7
|
import { createDut, readFourState } from "./dut.js";
|
|
8
|
-
import { buildNapiOpts, buildPortsFromLayout, filterHierarchyForDse, loadNativeAddon, parseHierarchyLayout, parseNapiLayout, wrapDirectSimulatorHandle, } from "./napi-helpers.js";
|
|
8
|
+
import { buildNapiOpts, buildPortsFromLayout, filterHierarchyForDse, loadNativeAddon, parseHierarchyLayout, parseNapiLayout, recoverWasmFourStateLayout, wrapDirectSimulatorHandle, } from "./napi-helpers.js";
|
|
9
9
|
import { createWasmSimulatorBridge, isWasmHandle } from "./wasm-bridge.js";
|
|
10
10
|
let _nativeCreate;
|
|
11
11
|
/**
|
|
@@ -101,7 +101,10 @@ export class Simulator {
|
|
|
101
101
|
const addon = loadNativeAddon(options?.nativeAddonPath);
|
|
102
102
|
const napiOpts = buildNapiOpts(options);
|
|
103
103
|
const raw = new addon.NativeSimulatorHandle([{ content: source, path: "" }], top, napiOpts);
|
|
104
|
-
const
|
|
104
|
+
const isWasm = isWasmHandle(raw);
|
|
105
|
+
const layout = isWasm && options?.fourState
|
|
106
|
+
? recoverWasmFourStateLayout(parseNapiLayout(raw.layoutJson))
|
|
107
|
+
: parseNapiLayout(raw.layoutJson);
|
|
105
108
|
const events = JSON.parse(raw.eventsJson);
|
|
106
109
|
const rawHierarchy = parseHierarchyLayout(raw.hierarchyJson, events);
|
|
107
110
|
const hierarchy = filterHierarchyForDse(rawHierarchy, options?.deadStorePolicy);
|
|
@@ -115,7 +118,7 @@ export class Simulator {
|
|
|
115
118
|
// Detect WASM-compiled addon and use the bridge
|
|
116
119
|
let buf;
|
|
117
120
|
let handle;
|
|
118
|
-
if (
|
|
121
|
+
if (isWasm) {
|
|
119
122
|
const bridge = createWasmSimulatorBridge(raw);
|
|
120
123
|
buf = bridge.sharedMemory.buffer;
|
|
121
124
|
handle = bridge.handle;
|
|
@@ -144,7 +147,10 @@ export class Simulator {
|
|
|
144
147
|
const addon = loadNativeAddon(options?.nativeAddonPath);
|
|
145
148
|
const napiOpts = buildNapiOpts(options);
|
|
146
149
|
const raw = addon.NativeSimulatorHandle.fromProject(projectPath, top, napiOpts);
|
|
147
|
-
const
|
|
150
|
+
const isWasm = isWasmHandle(raw);
|
|
151
|
+
const layout = isWasm && options?.fourState
|
|
152
|
+
? recoverWasmFourStateLayout(parseNapiLayout(raw.layoutJson))
|
|
153
|
+
: parseNapiLayout(raw.layoutJson);
|
|
148
154
|
const events = JSON.parse(raw.eventsJson);
|
|
149
155
|
const rawHierarchy = parseHierarchyLayout(raw.hierarchyJson, events);
|
|
150
156
|
const hierarchy = filterHierarchyForDse(rawHierarchy, options?.deadStorePolicy);
|
|
@@ -155,7 +161,7 @@ export class Simulator {
|
|
|
155
161
|
// Detect WASM-compiled addon and use the bridge
|
|
156
162
|
let buf;
|
|
157
163
|
let handle;
|
|
158
|
-
if (
|
|
164
|
+
if (isWasm) {
|
|
159
165
|
const bridge = createWasmSimulatorBridge(raw);
|
|
160
166
|
buf = bridge.sharedMemory.buffer;
|
|
161
167
|
handle = bridge.handle;
|
package/dist/simulator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulator.js","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"simulator.js","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -232,6 +232,8 @@ export interface FourStateValue {
|
|
|
232
232
|
readonly value: bigint;
|
|
233
233
|
readonly mask: bigint;
|
|
234
234
|
}
|
|
235
|
+
/** Values assignable to a writable 4-state signal. */
|
|
236
|
+
export type FourStateSignalValue = bigint | typeof X | typeof Z | FourStateValue;
|
|
235
237
|
/**
|
|
236
238
|
* Construct a 4-state value with explicit value and mask.
|
|
237
239
|
*
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkPH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,qEAAqE;AACrE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAEvC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkPH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,qEAAqE;AACrE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAEvC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAwBvC;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CACxB,KAAsB,EACtB,IAAqB;IAErB,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,CAAU;IAC1C,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACT,CAAoB,CAAC,WAAW,KAAK,IAAI,CAC1C,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IACvC,IAAI,CAAS;IACb,KAAK,CAAS;IAEvB,YAAY,OAAe,EAAE,IAAY,EAAE,KAAa;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;CACD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@celox-sim/celox",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.33",
|
|
4
4
|
"description": "TypeScript runtime for Celox HDL simulation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
},
|
|
30
30
|
"license": "MIT",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@celox-sim/celox-napi": "0.1.
|
|
32
|
+
"@celox-sim/celox-napi": "0.1.33"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"vitest": ">=1.0.0"
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^25.3.2",
|
|
44
|
-
"typescript": "^
|
|
45
|
-
"vitest": "^
|
|
44
|
+
"typescript": "^6.0.0",
|
|
45
|
+
"vitest": "^4.0.0"
|
|
46
46
|
},
|
|
47
47
|
"scripts": {
|
|
48
48
|
"build": "tsc",
|
package/src/dut.test.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { describe, expect, test, vi } from "vitest";
|
|
2
2
|
import { createDut, type DirtyState, readFourState } from "./dut.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type {
|
|
4
|
+
FourStateSignalValue,
|
|
5
|
+
NativeSimulatorHandle,
|
|
6
|
+
PortInfo,
|
|
7
|
+
SignalLayout,
|
|
8
|
+
} from "./types.js";
|
|
4
9
|
import { FourState, X } from "./types.js";
|
|
5
10
|
|
|
6
11
|
// ---------------------------------------------------------------------------
|
|
@@ -21,6 +26,11 @@ function makeBuffer(size: number): SharedArrayBuffer {
|
|
|
21
26
|
return new SharedArrayBuffer(size);
|
|
22
27
|
}
|
|
23
28
|
|
|
29
|
+
interface WritableFourStatePort {
|
|
30
|
+
get a(): bigint;
|
|
31
|
+
set a(value: FourStateSignalValue);
|
|
32
|
+
}
|
|
33
|
+
|
|
24
34
|
// ---------------------------------------------------------------------------
|
|
25
35
|
// Basic scalar read/write
|
|
26
36
|
// ---------------------------------------------------------------------------
|
|
@@ -434,9 +444,15 @@ describe("createDut — 4-state", () => {
|
|
|
434
444
|
const handle = mockHandle();
|
|
435
445
|
const state: DirtyState = { dirty: false };
|
|
436
446
|
|
|
437
|
-
const dut = createDut<
|
|
447
|
+
const dut = createDut<WritableFourStatePort>(
|
|
448
|
+
buffer,
|
|
449
|
+
layout,
|
|
450
|
+
ports,
|
|
451
|
+
handle,
|
|
452
|
+
state,
|
|
453
|
+
);
|
|
438
454
|
|
|
439
|
-
|
|
455
|
+
dut.a = X;
|
|
440
456
|
// X = (v=1, m=1) per bit: value should be 0xFF, mask should be 0xFF
|
|
441
457
|
const [value, mask] = readFourState(buffer, layout.a);
|
|
442
458
|
expect(value).toBe(0xffn);
|
|
@@ -460,9 +476,15 @@ describe("createDut — 4-state", () => {
|
|
|
460
476
|
const handle = mockHandle();
|
|
461
477
|
const state: DirtyState = { dirty: false };
|
|
462
478
|
|
|
463
|
-
const dut = createDut<
|
|
479
|
+
const dut = createDut<WritableFourStatePort>(
|
|
480
|
+
buffer,
|
|
481
|
+
layout,
|
|
482
|
+
ports,
|
|
483
|
+
handle,
|
|
484
|
+
state,
|
|
485
|
+
);
|
|
464
486
|
|
|
465
|
-
|
|
487
|
+
dut.a = FourState(0b1010, 0b0100);
|
|
466
488
|
const [value, mask] = readFourState(buffer, layout.a);
|
|
467
489
|
expect(value).toBe(0b1010n);
|
|
468
490
|
expect(mask).toBe(0b0100n);
|
|
@@ -485,10 +507,16 @@ describe("createDut — 4-state", () => {
|
|
|
485
507
|
const handle = mockHandle();
|
|
486
508
|
const state: DirtyState = { dirty: false };
|
|
487
509
|
|
|
488
|
-
const dut = createDut<
|
|
510
|
+
const dut = createDut<WritableFourStatePort>(
|
|
511
|
+
buffer,
|
|
512
|
+
layout,
|
|
513
|
+
ports,
|
|
514
|
+
handle,
|
|
515
|
+
state,
|
|
516
|
+
);
|
|
489
517
|
|
|
490
518
|
expect(() => {
|
|
491
|
-
|
|
519
|
+
dut.a = X;
|
|
492
520
|
}).toThrow("not 4-state");
|
|
493
521
|
});
|
|
494
522
|
|
|
@@ -509,10 +537,16 @@ describe("createDut — 4-state", () => {
|
|
|
509
537
|
const handle = mockHandle();
|
|
510
538
|
const state: DirtyState = { dirty: false };
|
|
511
539
|
|
|
512
|
-
const dut = createDut<
|
|
540
|
+
const dut = createDut<WritableFourStatePort>(
|
|
541
|
+
buffer,
|
|
542
|
+
layout,
|
|
543
|
+
ports,
|
|
544
|
+
handle,
|
|
545
|
+
state,
|
|
546
|
+
);
|
|
513
547
|
|
|
514
548
|
expect(() => {
|
|
515
|
-
|
|
549
|
+
dut.a = FourState(0xa5, 0x0f);
|
|
516
550
|
}).toThrow("not 4-state");
|
|
517
551
|
});
|
|
518
552
|
|
|
@@ -533,10 +567,16 @@ describe("createDut — 4-state", () => {
|
|
|
533
567
|
const handle = mockHandle();
|
|
534
568
|
const state: DirtyState = { dirty: false };
|
|
535
569
|
|
|
536
|
-
const dut = createDut<
|
|
570
|
+
const dut = createDut<WritableFourStatePort>(
|
|
571
|
+
buffer,
|
|
572
|
+
layout,
|
|
573
|
+
ports,
|
|
574
|
+
handle,
|
|
575
|
+
state,
|
|
576
|
+
);
|
|
537
577
|
|
|
538
578
|
// First write X
|
|
539
|
-
|
|
579
|
+
dut.a = X;
|
|
540
580
|
const [, maskBefore] = readFourState(buffer, layout.a);
|
|
541
581
|
expect(maskBefore).toBe(0xffn);
|
|
542
582
|
|
|
@@ -598,9 +638,15 @@ describe("createDut — 4-state", () => {
|
|
|
598
638
|
const handle = mockHandle();
|
|
599
639
|
const state: DirtyState = { dirty: false };
|
|
600
640
|
|
|
601
|
-
const dut = createDut<
|
|
641
|
+
const dut = createDut<WritableFourStatePort>(
|
|
642
|
+
buffer,
|
|
643
|
+
layout,
|
|
644
|
+
ports,
|
|
645
|
+
handle,
|
|
646
|
+
state,
|
|
647
|
+
);
|
|
602
648
|
|
|
603
|
-
|
|
649
|
+
dut.a = X;
|
|
604
650
|
expect(state.dirty).toBe(true);
|
|
605
651
|
});
|
|
606
652
|
});
|
package/src/e2e.bench.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
* 4. Simulator::tick vs Simulation::step overhead
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
import { readFileSync } from "node:fs";
|
|
12
|
+
import { existsSync, readdirSync, readFileSync } from "node:fs";
|
|
13
|
+
import { homedir } from "node:os";
|
|
13
14
|
import { dirname, resolve } from "node:path";
|
|
14
15
|
import { fileURLToPath } from "node:url";
|
|
15
16
|
import { afterAll, bench, describe } from "vitest";
|
|
@@ -25,10 +26,17 @@ import type { ModuleDefinition } from "./types.js";
|
|
|
25
26
|
const addon = loadNativeAddon();
|
|
26
27
|
|
|
27
28
|
const __benchDir = dirname(fileURLToPath(import.meta.url));
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
)
|
|
29
|
+
function resolveVerylStd(): string {
|
|
30
|
+
const cargoHome = process.env.CARGO_HOME ?? resolve(homedir(), ".cargo");
|
|
31
|
+
const registrySrc = resolve(cargoHome, "registry/src");
|
|
32
|
+
for (const registry of readdirSync(registrySrc)) {
|
|
33
|
+
const source = resolve(registrySrc, registry, "veryl-std-0.20.0/veryl/src");
|
|
34
|
+
if (existsSync(source)) return source;
|
|
35
|
+
}
|
|
36
|
+
throw new Error("veryl-std 0.20.0 source not found; run cargo fetch first");
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const VERYL_STD = resolveVerylStd();
|
|
32
40
|
function readVeryl(...parts: string[]): string {
|
|
33
41
|
return readFileSync(resolve(VERYL_STD, ...parts), "utf8");
|
|
34
42
|
}
|
package/src/e2e.test.ts
CHANGED
|
@@ -22,7 +22,12 @@ import {
|
|
|
22
22
|
} from "./napi-helpers.js";
|
|
23
23
|
import { Simulation } from "./simulation.js";
|
|
24
24
|
import { Simulator } from "./simulator.js";
|
|
25
|
-
import {
|
|
25
|
+
import {
|
|
26
|
+
FourState,
|
|
27
|
+
type FourStateSignalValue,
|
|
28
|
+
SimulationTimeoutError,
|
|
29
|
+
X,
|
|
30
|
+
} from "./types.js";
|
|
26
31
|
|
|
27
32
|
// Fixture project directories
|
|
28
33
|
const FIXTURES_DIR = path.resolve(
|
|
@@ -522,7 +527,8 @@ module InitTest (
|
|
|
522
527
|
|
|
523
528
|
test("writing X clears value and sets mask", () => {
|
|
524
529
|
interface Ports {
|
|
525
|
-
a: bigint;
|
|
530
|
+
get a(): bigint;
|
|
531
|
+
set a(value: FourStateSignalValue);
|
|
526
532
|
readonly y_and: bigint;
|
|
527
533
|
}
|
|
528
534
|
|
|
@@ -532,7 +538,7 @@ module InitTest (
|
|
|
532
538
|
raw = undefined; // sim manages its own handle
|
|
533
539
|
|
|
534
540
|
// Write X to input 'a' via DUT
|
|
535
|
-
|
|
541
|
+
sim.dut.a = X;
|
|
536
542
|
|
|
537
543
|
// We can't inspect mask through DUT getter (it only returns value),
|
|
538
544
|
// so this test verifies X write doesn't throw and propagation works.
|
|
@@ -832,8 +838,10 @@ module InitTest (
|
|
|
832
838
|
|
|
833
839
|
test("4-state through DUT high-level API (fromSource with fourState)", () => {
|
|
834
840
|
interface Ports {
|
|
835
|
-
a: bigint;
|
|
836
|
-
|
|
841
|
+
get a(): bigint;
|
|
842
|
+
set a(value: FourStateSignalValue);
|
|
843
|
+
get b(): bigint;
|
|
844
|
+
set b(value: FourStateSignalValue);
|
|
837
845
|
readonly y: bigint;
|
|
838
846
|
}
|
|
839
847
|
|
|
@@ -847,14 +855,14 @@ module InitTest (
|
|
|
847
855
|
expect(sim.dut.y).toBe(155n);
|
|
848
856
|
|
|
849
857
|
// Write X to a — output should propagate X (value reads as 0)
|
|
850
|
-
|
|
858
|
+
sim.dut.a = X;
|
|
851
859
|
// After writing X, the value part of 'y' is implementation-defined
|
|
852
860
|
// but the read should not throw
|
|
853
861
|
const _yVal = sim.dut.y;
|
|
854
862
|
expect(typeof _yVal).toBe("bigint");
|
|
855
863
|
|
|
856
864
|
// Write FourState with partial X
|
|
857
|
-
|
|
865
|
+
sim.dut.a = FourState(0xa0, 0x0f);
|
|
858
866
|
const _yVal2 = sim.dut.y;
|
|
859
867
|
expect(typeof _yVal2).toBe("bigint");
|
|
860
868
|
|
|
@@ -942,7 +950,8 @@ describe("E2E: 4-state high-level DUT API", () => {
|
|
|
942
950
|
test("FF via DUT API: write X input, tick, read output", () => {
|
|
943
951
|
interface FFPorts {
|
|
944
952
|
rst: bigint;
|
|
945
|
-
d: bigint;
|
|
953
|
+
get d(): bigint;
|
|
954
|
+
set d(value: FourStateSignalValue);
|
|
946
955
|
readonly q: bigint;
|
|
947
956
|
}
|
|
948
957
|
|
|
@@ -962,7 +971,7 @@ describe("E2E: 4-state high-level DUT API", () => {
|
|
|
962
971
|
expect(sim.dut.q).toBe(0x42n);
|
|
963
972
|
|
|
964
973
|
// Write X to d, tick — q should capture it (value read still returns a bigint)
|
|
965
|
-
|
|
974
|
+
sim.dut.d = X;
|
|
966
975
|
sim.tick();
|
|
967
976
|
expect(typeof sim.dut.q).toBe("bigint");
|
|
968
977
|
|
|
@@ -976,8 +985,10 @@ describe("E2E: 4-state high-level DUT API", () => {
|
|
|
976
985
|
|
|
977
986
|
test("X to defined transition: adder recovers from X", () => {
|
|
978
987
|
interface Ports {
|
|
979
|
-
a: bigint;
|
|
980
|
-
|
|
988
|
+
get a(): bigint;
|
|
989
|
+
set a(value: FourStateSignalValue);
|
|
990
|
+
get b(): bigint;
|
|
991
|
+
set b(value: FourStateSignalValue);
|
|
981
992
|
readonly y: bigint;
|
|
982
993
|
}
|
|
983
994
|
|
|
@@ -986,7 +997,7 @@ describe("E2E: 4-state high-level DUT API", () => {
|
|
|
986
997
|
});
|
|
987
998
|
|
|
988
999
|
// Start with X
|
|
989
|
-
|
|
1000
|
+
sim.dut.a = X;
|
|
990
1001
|
sim.dut.b = 10n;
|
|
991
1002
|
// Output has X — just verify it doesn't crash
|
|
992
1003
|
expect(typeof sim.dut.y).toBe("bigint");
|
|
@@ -1345,8 +1356,10 @@ describe("E2E: fourState() method", () => {
|
|
|
1345
1356
|
|
|
1346
1357
|
test("Simulator.fourState: reads X mask when input is X", () => {
|
|
1347
1358
|
interface Ports {
|
|
1348
|
-
a: bigint;
|
|
1349
|
-
|
|
1359
|
+
get a(): bigint;
|
|
1360
|
+
set a(value: FourStateSignalValue);
|
|
1361
|
+
get b(): bigint;
|
|
1362
|
+
set b(value: FourStateSignalValue);
|
|
1350
1363
|
readonly y: bigint;
|
|
1351
1364
|
}
|
|
1352
1365
|
|
|
@@ -1354,7 +1367,7 @@ describe("E2E: fourState() method", () => {
|
|
|
1354
1367
|
fourState: true,
|
|
1355
1368
|
});
|
|
1356
1369
|
|
|
1357
|
-
|
|
1370
|
+
sim.dut.a = X;
|
|
1358
1371
|
sim.dut.b = 10n;
|
|
1359
1372
|
// Trigger evalComb via output read
|
|
1360
1373
|
sim.dut.y;
|
|
@@ -1707,7 +1720,7 @@ describe("E2E: parameter override — DUT correctness", () => {
|
|
|
1707
1720
|
sim.dispose();
|
|
1708
1721
|
});
|
|
1709
1722
|
|
|
1710
|
-
test
|
|
1723
|
+
test("param value reflected in logic via fromSource", () => {
|
|
1711
1724
|
// blocked by upstream Veryl IR bug
|
|
1712
1725
|
interface Ports {
|
|
1713
1726
|
a: bigint;
|
|
@@ -2714,7 +2727,7 @@ ${TB_COUNTER_SOURCE}
|
|
|
2714
2727
|
#[test(t)]
|
|
2715
2728
|
module CounterTbPass {
|
|
2716
2729
|
inst clk: $tb::clock_gen;
|
|
2717
|
-
inst rst: $tb::reset_gen;
|
|
2730
|
+
inst rst: $tb::reset_gen(clk);
|
|
2718
2731
|
var cnt: logic<32>;
|
|
2719
2732
|
inst dut: Counter_tb (clk, rst, cnt);
|
|
2720
2733
|
initial {
|
|
@@ -2731,7 +2744,7 @@ ${TB_COUNTER_SOURCE}
|
|
|
2731
2744
|
#[test(t)]
|
|
2732
2745
|
module CounterTbFail {
|
|
2733
2746
|
inst clk: $tb::clock_gen;
|
|
2734
|
-
inst rst: $tb::reset_gen;
|
|
2747
|
+
inst rst: $tb::reset_gen(clk);
|
|
2735
2748
|
var cnt: logic<32>;
|
|
2736
2749
|
inst dut: Counter_tb (clk, rst, cnt);
|
|
2737
2750
|
initial {
|
|
@@ -2744,6 +2757,38 @@ module CounterTbFail {
|
|
|
2744
2757
|
}
|
|
2745
2758
|
`;
|
|
2746
2759
|
|
|
2760
|
+
const TB_MULTIPLE_TESTS_SOURCE = `
|
|
2761
|
+
${TB_COUNTER_SOURCE}
|
|
2762
|
+
#[test(t)]
|
|
2763
|
+
module CounterTbFailFirst {
|
|
2764
|
+
inst clk: $tb::clock_gen;
|
|
2765
|
+
inst rst: $tb::reset_gen(clk);
|
|
2766
|
+
var cnt: logic<32>;
|
|
2767
|
+
inst dut: Counter_tb (clk, rst, cnt);
|
|
2768
|
+
initial {
|
|
2769
|
+
rst.assert(clk);
|
|
2770
|
+
clk.next (5);
|
|
2771
|
+
$assert (cnt == 32'd99, "fail first");
|
|
2772
|
+
$assert (cnt == 32'd5, "should not run");
|
|
2773
|
+
$finish ();
|
|
2774
|
+
}
|
|
2775
|
+
}
|
|
2776
|
+
|
|
2777
|
+
#[test(t)]
|
|
2778
|
+
module CounterTbPassSecond {
|
|
2779
|
+
inst clk: $tb::clock_gen;
|
|
2780
|
+
inst rst: $tb::reset_gen(clk);
|
|
2781
|
+
var cnt: logic<32>;
|
|
2782
|
+
inst dut: Counter_tb (clk, rst, cnt);
|
|
2783
|
+
initial {
|
|
2784
|
+
rst.assert(clk);
|
|
2785
|
+
clk.next (5);
|
|
2786
|
+
$assert (cnt == 32'd5, "pass second");
|
|
2787
|
+
$finish ();
|
|
2788
|
+
}
|
|
2789
|
+
}
|
|
2790
|
+
`;
|
|
2791
|
+
|
|
2747
2792
|
describe("E2E: native testbench (runTest)", () => {
|
|
2748
2793
|
const addon = loadNativeAddon();
|
|
2749
2794
|
|
|
@@ -2757,16 +2802,33 @@ describe("E2E: native testbench (runTest)", () => {
|
|
|
2757
2802
|
expect(result.assertions[0]!.passed).toBe(true);
|
|
2758
2803
|
});
|
|
2759
2804
|
|
|
2760
|
-
test("failing testbench returns passed=false and
|
|
2805
|
+
test("failing testbench returns passed=false and stops on plain assert", () => {
|
|
2761
2806
|
const result: NapiTestResult = addon.runTest(
|
|
2762
2807
|
[{ content: TB_FAIL_SOURCE, path: "test.veryl" }],
|
|
2763
2808
|
"CounterTbFail",
|
|
2764
2809
|
);
|
|
2765
2810
|
expect(result.passed).toBe(false);
|
|
2766
|
-
|
|
2767
|
-
expect(result.assertions.length).toBe(2);
|
|
2811
|
+
expect(result.assertions.length).toBe(1);
|
|
2768
2812
|
expect(result.assertions[0]!.passed).toBe(false);
|
|
2769
|
-
|
|
2813
|
+
});
|
|
2814
|
+
|
|
2815
|
+
test("multiple test modules run independently after one fails", () => {
|
|
2816
|
+
const sources = [{ content: TB_MULTIPLE_TESTS_SOURCE, path: "test.veryl" }];
|
|
2817
|
+
|
|
2818
|
+
const first: NapiTestResult = addon.runTest(sources, "CounterTbFailFirst");
|
|
2819
|
+
expect(first.passed).toBe(false);
|
|
2820
|
+
expect(first.assertions.length).toBe(1);
|
|
2821
|
+
expect(first.assertions[0]!.passed).toBe(false);
|
|
2822
|
+
expect(first.assertions[0]!.message).toBe("fail first");
|
|
2823
|
+
|
|
2824
|
+
const second: NapiTestResult = addon.runTest(
|
|
2825
|
+
sources,
|
|
2826
|
+
"CounterTbPassSecond",
|
|
2827
|
+
);
|
|
2828
|
+
expect(second.passed).toBe(true);
|
|
2829
|
+
expect(second.assertions.length).toBe(1);
|
|
2830
|
+
expect(second.assertions[0]!.passed).toBe(true);
|
|
2831
|
+
expect(second.assertions[0]!.message).toBe("pass second");
|
|
2770
2832
|
});
|
|
2771
2833
|
|
|
2772
2834
|
test("assertion results include source location", () => {
|
package/src/index.ts
CHANGED
package/src/napi-helpers.ts
CHANGED
|
@@ -462,6 +462,52 @@ export function parseNapiLayout(json: string): {
|
|
|
462
462
|
return { signals, forDut };
|
|
463
463
|
}
|
|
464
464
|
|
|
465
|
+
/**
|
|
466
|
+
* Recover 4-state flags for wasm32 layout JSON emitted by older addons.
|
|
467
|
+
*
|
|
468
|
+
* Older wasm artifacts reported `is_4state: false` for every signal even when
|
|
469
|
+
* the simulator was created with `fourState: true`. In that case, infer the
|
|
470
|
+
* flag from `typeKind` so JS-side DUT access continues to work.
|
|
471
|
+
*/
|
|
472
|
+
export function recoverWasmFourStateLayout(layout: {
|
|
473
|
+
signals: Record<
|
|
474
|
+
string,
|
|
475
|
+
SignalLayout & {
|
|
476
|
+
typeKind: string;
|
|
477
|
+
arrayDims?: number[];
|
|
478
|
+
associatedClock?: string;
|
|
479
|
+
}
|
|
480
|
+
>;
|
|
481
|
+
forDut: Record<string, SignalLayout>;
|
|
482
|
+
}): {
|
|
483
|
+
signals: Record<
|
|
484
|
+
string,
|
|
485
|
+
SignalLayout & {
|
|
486
|
+
typeKind: string;
|
|
487
|
+
arrayDims?: number[];
|
|
488
|
+
associatedClock?: string;
|
|
489
|
+
}
|
|
490
|
+
>;
|
|
491
|
+
forDut: Record<string, SignalLayout>;
|
|
492
|
+
} {
|
|
493
|
+
const signals = Object.fromEntries(
|
|
494
|
+
Object.entries(layout.signals).map(([name, sig]) => {
|
|
495
|
+
const inferred =
|
|
496
|
+
sig.is4state || (sig.typeKind !== "bit" && sig.typeKind !== "other");
|
|
497
|
+
return [name, { ...sig, is4state: inferred }];
|
|
498
|
+
}),
|
|
499
|
+
) as typeof layout.signals;
|
|
500
|
+
|
|
501
|
+
const forDut = Object.fromEntries(
|
|
502
|
+
Object.entries(layout.forDut).map(([name, sig]) => [
|
|
503
|
+
name,
|
|
504
|
+
{ ...sig, is4state: signals[name]?.is4state ?? sig.is4state },
|
|
505
|
+
]),
|
|
506
|
+
) as typeof layout.forDut;
|
|
507
|
+
|
|
508
|
+
return { signals, forDut };
|
|
509
|
+
}
|
|
510
|
+
|
|
465
511
|
/**
|
|
466
512
|
* Build PortInfo records from the NAPI layout signals.
|
|
467
513
|
* This auto-detects port metadata so users don't need to hand-write ModuleDefinition.
|
package/src/simulator.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
loadNativeAddon,
|
|
14
14
|
parseHierarchyLayout,
|
|
15
15
|
parseNapiLayout,
|
|
16
|
+
recoverWasmFourStateLayout,
|
|
16
17
|
wrapDirectSimulatorHandle,
|
|
17
18
|
} from "./napi-helpers.js";
|
|
18
19
|
import type {
|
|
@@ -194,8 +195,12 @@ export class Simulator<P = Record<string, unknown>> {
|
|
|
194
195
|
top,
|
|
195
196
|
napiOpts,
|
|
196
197
|
);
|
|
198
|
+
const isWasm = isWasmHandle(raw);
|
|
197
199
|
|
|
198
|
-
const layout =
|
|
200
|
+
const layout =
|
|
201
|
+
isWasm && options?.fourState
|
|
202
|
+
? recoverWasmFourStateLayout(parseNapiLayout(raw.layoutJson))
|
|
203
|
+
: parseNapiLayout(raw.layoutJson);
|
|
199
204
|
const events: Record<string, number> = JSON.parse(raw.eventsJson);
|
|
200
205
|
const rawHierarchy = parseHierarchyLayout(raw.hierarchyJson, events);
|
|
201
206
|
const hierarchy = filterHierarchyForDse(
|
|
@@ -214,7 +219,7 @@ export class Simulator<P = Record<string, unknown>> {
|
|
|
214
219
|
// Detect WASM-compiled addon and use the bridge
|
|
215
220
|
let buf: ArrayBuffer | SharedArrayBuffer;
|
|
216
221
|
let handle: NativeSimulatorHandle;
|
|
217
|
-
if (
|
|
222
|
+
if (isWasm) {
|
|
218
223
|
const bridge = createWasmSimulatorBridge(raw);
|
|
219
224
|
buf = bridge.sharedMemory.buffer;
|
|
220
225
|
handle = bridge.handle;
|
|
@@ -269,8 +274,12 @@ export class Simulator<P = Record<string, unknown>> {
|
|
|
269
274
|
top,
|
|
270
275
|
napiOpts,
|
|
271
276
|
);
|
|
277
|
+
const isWasm = isWasmHandle(raw);
|
|
272
278
|
|
|
273
|
-
const layout =
|
|
279
|
+
const layout =
|
|
280
|
+
isWasm && options?.fourState
|
|
281
|
+
? recoverWasmFourStateLayout(parseNapiLayout(raw.layoutJson))
|
|
282
|
+
: parseNapiLayout(raw.layoutJson);
|
|
274
283
|
const events: Record<string, number> = JSON.parse(raw.eventsJson);
|
|
275
284
|
const rawHierarchy = parseHierarchyLayout(raw.hierarchyJson, events);
|
|
276
285
|
const hierarchy = filterHierarchyForDse(
|
|
@@ -286,7 +295,7 @@ export class Simulator<P = Record<string, unknown>> {
|
|
|
286
295
|
// Detect WASM-compiled addon and use the bridge
|
|
287
296
|
let buf: ArrayBuffer | SharedArrayBuffer;
|
|
288
297
|
let handle: NativeSimulatorHandle;
|
|
289
|
-
if (
|
|
298
|
+
if (isWasm) {
|
|
290
299
|
const bridge = createWasmSimulatorBridge(raw);
|
|
291
300
|
buf = bridge.sharedMemory.buffer;
|
|
292
301
|
handle = bridge.handle;
|
package/src/types.ts
CHANGED
|
@@ -272,6 +272,13 @@ export interface FourStateValue {
|
|
|
272
272
|
readonly mask: bigint;
|
|
273
273
|
}
|
|
274
274
|
|
|
275
|
+
/** Values assignable to a writable 4-state signal. */
|
|
276
|
+
export type FourStateSignalValue =
|
|
277
|
+
| bigint
|
|
278
|
+
| typeof X
|
|
279
|
+
| typeof Z
|
|
280
|
+
| FourStateValue;
|
|
281
|
+
|
|
275
282
|
/**
|
|
276
283
|
* Construct a 4-state value with explicit value and mask.
|
|
277
284
|
*
|