@celox-sim/celox 0.1.17 → 0.1.18
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/dut.d.ts.map +1 -1
- package/dist/dut.js +41 -2
- package/dist/dut.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +18 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +9 -2
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
- package/src/dut.test.ts +6 -6
- package/src/dut.ts +39 -2
- package/src/index.ts +1 -0
- package/src/matchers.ts +52 -16
- package/src/types.ts +19 -3
package/dist/dut.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dut.d.ts","sourceRoot":"","sources":["../src/dut.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAEX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,MAAM,YAAY,CAAC;AAOpB;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,OAAO,CAAC;CACf;
|
|
1
|
+
{"version":3,"file":"dut.d.ts","sourceRoot":"","sources":["../src/dut.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAEX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,MAAM,YAAY,CAAC;AAOpB;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,OAAO,CAAC;CACf;AAgKD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAC1B,MAAM,EAAE,WAAW,GAAG,iBAAiB,EACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAClC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,EACjB,SAAS,CAAC,EAAE,aAAa,GACvB,CAAC,CA0EH;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC7B,MAAM,EAAE,WAAW,GAAG,iBAAiB,EACvC,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,GACf,MAAM,CAoER;AAyXD;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,MAAM,EAAE,WAAW,GAAG,iBAAiB,EACvC,GAAG,EAAE,YAAY,GACf,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAe/B"}
|
package/dist/dut.js
CHANGED
|
@@ -111,9 +111,21 @@ function writeFourState(view, sig, fsv) {
|
|
|
111
111
|
};
|
|
112
112
|
writeSignal(view, maskLayout, fsv.mask);
|
|
113
113
|
}
|
|
114
|
-
/** Write all-X
|
|
114
|
+
/** Write all-X to a signal: X = (v=1, m=1) per bit. */
|
|
115
115
|
function writeAllX(view, sig) {
|
|
116
|
-
|
|
116
|
+
const allOnes = (1n << BigInt(sig.width)) - 1n;
|
|
117
|
+
writeSignal(view, sig, allOnes);
|
|
118
|
+
const maskLayout = {
|
|
119
|
+
offset: sig.offset + sig.byteSize,
|
|
120
|
+
width: sig.width,
|
|
121
|
+
byteSize: sig.byteSize,
|
|
122
|
+
is4state: false,
|
|
123
|
+
direction: sig.direction,
|
|
124
|
+
};
|
|
125
|
+
writeSignal(view, maskLayout, allOnes);
|
|
126
|
+
}
|
|
127
|
+
/** Write all-Z to a signal: Z = (v=0, m=1) per bit. */
|
|
128
|
+
function writeAllZ(view, sig) {
|
|
117
129
|
writeSignal(view, sig, 0n);
|
|
118
130
|
const allOnes = (1n << BigInt(sig.width)) - 1n;
|
|
119
131
|
const maskLayout = {
|
|
@@ -283,6 +295,12 @@ function defineSignalProperty(target, name, view, sig, port, handle, state) {
|
|
|
283
295
|
}
|
|
284
296
|
writeAllX(view, sig);
|
|
285
297
|
}
|
|
298
|
+
else if (value === Symbol.for("veryl:Z")) {
|
|
299
|
+
if (!sig.is4state) {
|
|
300
|
+
throw new Error(`Port '${name}' is not 4-state; cannot assign Z`);
|
|
301
|
+
}
|
|
302
|
+
writeAllZ(view, sig);
|
|
303
|
+
}
|
|
286
304
|
else if (isFourStateValue(value)) {
|
|
287
305
|
if (!sig.is4state) {
|
|
288
306
|
throw new Error(`Port '${name}' is not 4-state; cannot assign FourState`);
|
|
@@ -418,6 +436,14 @@ function createArrayDut(view, baseSig, port, handle, state) {
|
|
|
418
436
|
if (!is4state) {
|
|
419
437
|
throw new Error("Array port is not 4-state; cannot assign X");
|
|
420
438
|
}
|
|
439
|
+
const allOnes = (1 << elementWidth) - 1;
|
|
440
|
+
writeBitPackedElement(view, baseOffset, elementWidth, i, allOnes);
|
|
441
|
+
writeBitPackedElement(view, maskBase, elementWidth, i, allOnes);
|
|
442
|
+
}
|
|
443
|
+
else if (value === Symbol.for("veryl:Z")) {
|
|
444
|
+
if (!is4state) {
|
|
445
|
+
throw new Error("Array port is not 4-state; cannot assign Z");
|
|
446
|
+
}
|
|
421
447
|
writeBitPackedElement(view, baseOffset, elementWidth, i, 0);
|
|
422
448
|
writeBitPackedElement(view, maskBase, elementWidth, i, (1 << elementWidth) - 1);
|
|
423
449
|
}
|
|
@@ -472,6 +498,19 @@ function createArrayDut(view, baseSig, port, handle, state) {
|
|
|
472
498
|
};
|
|
473
499
|
writeAllX(view, elemSig);
|
|
474
500
|
}
|
|
501
|
+
else if (value === Symbol.for("veryl:Z")) {
|
|
502
|
+
if (!is4state) {
|
|
503
|
+
throw new Error("Array port is not 4-state; cannot assign Z");
|
|
504
|
+
}
|
|
505
|
+
const elemSig = {
|
|
506
|
+
offset,
|
|
507
|
+
width: elementWidth,
|
|
508
|
+
byteSize: elementByteSize,
|
|
509
|
+
is4state,
|
|
510
|
+
direction: baseSig.direction,
|
|
511
|
+
};
|
|
512
|
+
writeAllZ(view, elemSig);
|
|
513
|
+
}
|
|
475
514
|
else if (isFourStateValue(value)) {
|
|
476
515
|
if (!is4state) {
|
|
477
516
|
throw new Error("Array port is not 4-state; cannot assign FourState");
|
package/dist/dut.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dut.js","sourceRoot":"","sources":["../src/dut.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dut.js","sourceRoot":"","sources":["../src/dut.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,5 +19,5 @@ export { Simulation } from "./simulation.js";
|
|
|
19
19
|
export { Simulator } from "./simulator.js";
|
|
20
20
|
/** @internal */
|
|
21
21
|
export type { CreateResult, EventHandle, FourStateValue, LoopBreak, ModuleDefinition, NativeHandle, NativeSimulationHandle, NativeSimulatorHandle, ParamOverride, PortInfo, SignalLayout, SimulatorOptions, SourceFile, TrueLoopSpec, } from "./types.js";
|
|
22
|
-
export { FourState, isFourStateValue, SimulationTimeoutError, X, } from "./types.js";
|
|
22
|
+
export { FourState, isFourStateValue, SimulationTimeoutError, X, Z, } from "./types.js";
|
|
23
23
|
//# sourceMappingURL=index.d.ts.map
|
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,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,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,GACD,MAAM,YAAY,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,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,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"}
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ export { Simulation } from "./simulation.js";
|
|
|
17
17
|
export { Simulator } from "./simulator.js";
|
|
18
18
|
// 4-state helpers
|
|
19
19
|
// Error types
|
|
20
|
-
export { FourState, isFourStateValue, SimulationTimeoutError, X, } from "./types.js";
|
|
20
|
+
export { FourState, isFourStateValue, SimulationTimeoutError, X, Z, } from "./types.js";
|
|
21
21
|
// NAPI bridge (backward compat — re-exports from napi-helpers)
|
|
22
22
|
// Consumers that import from "./napi-bridge.js" still work.
|
|
23
23
|
//# sourceMappingURL=index.js.map
|
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,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;AAmB3C,kBAAkB;AAClB,cAAc;AACd,OAAO,EACN,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,CAAC,GACD,MAAM,YAAY,CAAC;AAEpB,+DAA+D;AAC/D,4DAA4D"}
|
|
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,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;AAmB3C,kBAAkB;AAClB,cAAc;AACd,OAAO,EACN,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,CAAC,EACD,CAAC,GACD,MAAM,YAAY,CAAC;AAEpB,+DAA+D;AAC/D,4DAA4D"}
|
package/dist/types.d.ts
CHANGED
|
@@ -140,15 +140,30 @@ export interface EventHandle {
|
|
|
140
140
|
readonly name: string;
|
|
141
141
|
readonly id: number;
|
|
142
142
|
}
|
|
143
|
-
/** Sentinel representing all-X. */
|
|
143
|
+
/** Sentinel representing all-X (unknown). X = (v=1, m=1) per bit. */
|
|
144
144
|
export declare const X: unique symbol;
|
|
145
|
-
/**
|
|
145
|
+
/** Sentinel representing all-Z (high-impedance). Z = (v=0, m=1) per bit. */
|
|
146
|
+
export declare const Z: unique symbol;
|
|
147
|
+
/**
|
|
148
|
+
* A 4-state value with explicit bit-level mask.
|
|
149
|
+
*
|
|
150
|
+
* Encoding per bit:
|
|
151
|
+
* - `(v=0, m=0)` → 0
|
|
152
|
+
* - `(v=1, m=0)` → 1
|
|
153
|
+
* - `(v=0, m=1)` → Z (high-impedance)
|
|
154
|
+
* - `(v=1, m=1)` → X (unknown)
|
|
155
|
+
*/
|
|
146
156
|
export interface FourStateValue {
|
|
147
157
|
readonly __fourState: true;
|
|
148
158
|
readonly value: bigint;
|
|
149
159
|
readonly mask: bigint;
|
|
150
160
|
}
|
|
151
|
-
/**
|
|
161
|
+
/**
|
|
162
|
+
* Construct a 4-state value with explicit value and mask.
|
|
163
|
+
*
|
|
164
|
+
* Mask bits set to 1 with value=1 indicate X (unknown).
|
|
165
|
+
* Mask bits set to 1 with value=0 indicate Z (high-impedance).
|
|
166
|
+
*/
|
|
152
167
|
export declare function FourState(value: number | bigint, mask: number | bigint): FourStateValue;
|
|
153
168
|
export declare function isFourStateValue(v: unknown): v is FourStateValue;
|
|
154
169
|
/**
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChE,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,yEAAyE;IACzE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,qDAAqD;AACrD,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IAC9D,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;IACnD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,4CAA4C;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAC9C;AAMD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC5B,4CAA4C;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IAC9D,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CAClC;AAMD;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACrC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,IAAI,IAAI,CAAC;IACjB,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7D,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,IAAI,MAAM,CAAC;IACf,aAAa,IAAI,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,IAAI,IAAI,CAAC;IACjB,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;AAE1E;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IAClE,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,iBAAiB,CAAC;IACjD,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC9C,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,mBAAmB,EAAE,aAAa,CAAC;IAC/D,oDAAoD;IACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAMD,MAAM,WAAW,gBAAgB;IAChC,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,sDAAsD;IACtD,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,wCAAwC;IACxC,SAAS,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IAClE,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,qDAAqD;IACrD,eAAe,CAAC,EAAE,KAAK,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;CAClE;AAED,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAMD,wDAAwD;AACxD,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACpB;AAMD,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -9,9 +9,16 @@
|
|
|
9
9
|
// ---------------------------------------------------------------------------
|
|
10
10
|
// 4-state helpers
|
|
11
11
|
// ---------------------------------------------------------------------------
|
|
12
|
-
/** Sentinel representing all-X. */
|
|
12
|
+
/** Sentinel representing all-X (unknown). X = (v=1, m=1) per bit. */
|
|
13
13
|
export const X = Symbol.for("veryl:X");
|
|
14
|
-
/**
|
|
14
|
+
/** Sentinel representing all-Z (high-impedance). Z = (v=0, m=1) per bit. */
|
|
15
|
+
export const Z = Symbol.for("veryl:Z");
|
|
16
|
+
/**
|
|
17
|
+
* Construct a 4-state value with explicit value and mask.
|
|
18
|
+
*
|
|
19
|
+
* Mask bits set to 1 with value=1 indicate X (unknown).
|
|
20
|
+
* Mask bits set to 1 with value=0 indicate Z (high-impedance).
|
|
21
|
+
*/
|
|
15
22
|
export function FourState(value, mask) {
|
|
16
23
|
return { __fourState: true, value: BigInt(value), mask: BigInt(mask) };
|
|
17
24
|
}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAuKH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAuKH,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;AAiBvC;;;;;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.18",
|
|
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.18"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"vitest": ">=1.0.0"
|
package/src/dut.test.ts
CHANGED
|
@@ -437,9 +437,9 @@ describe("createDut — 4-state", () => {
|
|
|
437
437
|
const dut = createDut<{ a: bigint }>(buffer, layout, ports, handle, state);
|
|
438
438
|
|
|
439
439
|
(dut as any).a = X;
|
|
440
|
-
//
|
|
440
|
+
// X = (v=1, m=1) per bit: value should be 0xFF, mask should be 0xFF
|
|
441
441
|
const [value, mask] = readFourState(buffer, layout.a);
|
|
442
|
-
expect(value).toBe(
|
|
442
|
+
expect(value).toBe(0xffn);
|
|
443
443
|
expect(mask).toBe(0xffn);
|
|
444
444
|
});
|
|
445
445
|
|
|
@@ -831,9 +831,9 @@ describe("createDut — array ports", () => {
|
|
|
831
831
|
|
|
832
832
|
const view = new DataView(buffer);
|
|
833
833
|
|
|
834
|
-
// Assign X to element 3: value bit 3 →
|
|
834
|
+
// Assign X to element 3: X = (v=1, m=1), so value bit 3 → 1, mask bit 3 → 1
|
|
835
835
|
dut.bits.set(3, X);
|
|
836
|
-
expect(view.getUint8(0) & 0b00001000).toBe(
|
|
836
|
+
expect(view.getUint8(0) & 0b00001000).toBe(0b00001000); // value: bit 3 = 1
|
|
837
837
|
expect(view.getUint8(1) & 0b00001000).toBe(0b00001000); // mask: bit 3 = 1
|
|
838
838
|
|
|
839
839
|
// Write a defined 1 to element 3: value bit 3 → 1, mask bit 3 → 0
|
|
@@ -882,9 +882,9 @@ describe("createDut — array ports", () => {
|
|
|
882
882
|
|
|
883
883
|
const view = new DataView(buffer);
|
|
884
884
|
|
|
885
|
-
// Assign X to element 0 (bitStart=0, no cross-byte): value bits 0-2 =
|
|
885
|
+
// Assign X to element 0 (bitStart=0, no cross-byte): X = (v=1, m=1), value bits 0-2 = 0b111, mask bits 0-2 = 0b111
|
|
886
886
|
dut.data.set(0, X);
|
|
887
|
-
expect(view.getUint8(0) & 0b111).toBe(
|
|
887
|
+
expect(view.getUint8(0) & 0b111).toBe(0b111); // value byte 0: bits 0-2 set (X encoding)
|
|
888
888
|
expect(view.getUint8(2) & 0b111).toBe(0b111); // mask byte 2: bits 0-2 set
|
|
889
889
|
expect(view.getUint8(1)).toBe(0); // value byte 1: untouched
|
|
890
890
|
expect(view.getUint8(3)).toBe(0); // mask byte 3: untouched
|
package/src/dut.ts
CHANGED
|
@@ -157,9 +157,22 @@ function writeFourState(
|
|
|
157
157
|
writeSignal(view, maskLayout, fsv.mask);
|
|
158
158
|
}
|
|
159
159
|
|
|
160
|
-
/** Write all-X
|
|
160
|
+
/** Write all-X to a signal: X = (v=1, m=1) per bit. */
|
|
161
161
|
function writeAllX(view: DataView, sig: SignalLayout): void {
|
|
162
|
-
|
|
162
|
+
const allOnes = (1n << BigInt(sig.width)) - 1n;
|
|
163
|
+
writeSignal(view, sig, allOnes);
|
|
164
|
+
const maskLayout: SignalLayout = {
|
|
165
|
+
offset: sig.offset + sig.byteSize,
|
|
166
|
+
width: sig.width,
|
|
167
|
+
byteSize: sig.byteSize,
|
|
168
|
+
is4state: false,
|
|
169
|
+
direction: sig.direction,
|
|
170
|
+
};
|
|
171
|
+
writeSignal(view, maskLayout, allOnes);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/** Write all-Z to a signal: Z = (v=0, m=1) per bit. */
|
|
175
|
+
function writeAllZ(view: DataView, sig: SignalLayout): void {
|
|
163
176
|
writeSignal(view, sig, 0n);
|
|
164
177
|
const allOnes = (1n << BigInt(sig.width)) - 1n;
|
|
165
178
|
const maskLayout: SignalLayout = {
|
|
@@ -381,6 +394,11 @@ function defineSignalProperty(
|
|
|
381
394
|
throw new Error(`Port '${name}' is not 4-state; cannot assign X`);
|
|
382
395
|
}
|
|
383
396
|
writeAllX(view, sig);
|
|
397
|
+
} else if (value === Symbol.for("veryl:Z")) {
|
|
398
|
+
if (!sig.is4state) {
|
|
399
|
+
throw new Error(`Port '${name}' is not 4-state; cannot assign Z`);
|
|
400
|
+
}
|
|
401
|
+
writeAllZ(view, sig);
|
|
384
402
|
} else if (isFourStateValue(value)) {
|
|
385
403
|
if (!sig.is4state) {
|
|
386
404
|
throw new Error(
|
|
@@ -574,6 +592,13 @@ function createArrayDut(
|
|
|
574
592
|
if (!is4state) {
|
|
575
593
|
throw new Error("Array port is not 4-state; cannot assign X");
|
|
576
594
|
}
|
|
595
|
+
const allOnes = (1 << elementWidth) - 1;
|
|
596
|
+
writeBitPackedElement(view, baseOffset, elementWidth, i, allOnes);
|
|
597
|
+
writeBitPackedElement(view, maskBase, elementWidth, i, allOnes);
|
|
598
|
+
} else if (value === Symbol.for("veryl:Z")) {
|
|
599
|
+
if (!is4state) {
|
|
600
|
+
throw new Error("Array port is not 4-state; cannot assign Z");
|
|
601
|
+
}
|
|
577
602
|
writeBitPackedElement(view, baseOffset, elementWidth, i, 0);
|
|
578
603
|
writeBitPackedElement(
|
|
579
604
|
view,
|
|
@@ -656,6 +681,18 @@ function createArrayDut(
|
|
|
656
681
|
direction: baseSig.direction,
|
|
657
682
|
};
|
|
658
683
|
writeAllX(view, elemSig);
|
|
684
|
+
} else if (value === Symbol.for("veryl:Z")) {
|
|
685
|
+
if (!is4state) {
|
|
686
|
+
throw new Error("Array port is not 4-state; cannot assign Z");
|
|
687
|
+
}
|
|
688
|
+
const elemSig: SignalLayout = {
|
|
689
|
+
offset,
|
|
690
|
+
width: elementWidth,
|
|
691
|
+
byteSize: elementByteSize,
|
|
692
|
+
is4state,
|
|
693
|
+
direction: baseSig.direction,
|
|
694
|
+
};
|
|
695
|
+
writeAllZ(view, elemSig);
|
|
659
696
|
} else if (isFourStateValue(value)) {
|
|
660
697
|
if (!is4state) {
|
|
661
698
|
throw new Error("Array port is not 4-state; cannot assign FourState");
|
package/src/index.ts
CHANGED
package/src/matchers.ts
CHANGED
|
@@ -18,18 +18,24 @@ import type { SignalLayout } from "./types.js";
|
|
|
18
18
|
|
|
19
19
|
declare module "vitest" {
|
|
20
20
|
interface Assertion {
|
|
21
|
-
/** Assert that the value has any X bits (mask !== 0). */
|
|
21
|
+
/** Assert that the value has any X/Z bits (mask !== 0). */
|
|
22
22
|
toBeX(): void;
|
|
23
|
-
/** Assert that the value is all-X (
|
|
23
|
+
/** Assert that the value is all-X (v=1,m=1 for all bits). */
|
|
24
24
|
toBeAllX(): void;
|
|
25
|
-
/** Assert that the value has no X bits (mask === 0). */
|
|
25
|
+
/** Assert that the value has no X/Z bits (mask === 0). */
|
|
26
26
|
toBeNotX(): void;
|
|
27
|
+
/** Assert that the value has any Z bits (mask=1,value=0 somewhere). */
|
|
28
|
+
toBeZ(): void;
|
|
29
|
+
/** Assert that the value is all-Z (v=0,m=1 for all bits). */
|
|
30
|
+
toBeAllZ(): void;
|
|
27
31
|
}
|
|
28
32
|
|
|
29
33
|
interface AsymmetricMatchersContaining {
|
|
30
34
|
toBeX(): void;
|
|
31
35
|
toBeAllX(): void;
|
|
32
36
|
toBeNotX(): void;
|
|
37
|
+
toBeZ(): void;
|
|
38
|
+
toBeAllZ(): void;
|
|
33
39
|
}
|
|
34
40
|
}
|
|
35
41
|
|
|
@@ -70,27 +76,26 @@ function isFourStateRef(v: unknown): v is FourStateRef {
|
|
|
70
76
|
// Matcher implementations
|
|
71
77
|
// ---------------------------------------------------------------------------
|
|
72
78
|
|
|
73
|
-
function
|
|
79
|
+
function getValueAndMask(received: unknown): [bigint, bigint] {
|
|
74
80
|
if (!isFourStateRef(received)) {
|
|
75
81
|
throw new TypeError(
|
|
76
|
-
"
|
|
82
|
+
"4-state matchers require a FourStateRef. " +
|
|
77
83
|
"Use sim.fourStateRef(name) to get one.",
|
|
78
84
|
);
|
|
79
85
|
}
|
|
80
|
-
|
|
81
|
-
return mask;
|
|
86
|
+
return readFourState(received.buffer, received.layout);
|
|
82
87
|
}
|
|
83
88
|
|
|
84
89
|
const customMatchers = {
|
|
85
90
|
toBeX(received: unknown) {
|
|
86
|
-
const mask =
|
|
91
|
+
const [, mask] = getValueAndMask(received);
|
|
87
92
|
const pass = mask !== 0n;
|
|
88
93
|
return {
|
|
89
94
|
pass,
|
|
90
95
|
message: () =>
|
|
91
96
|
pass
|
|
92
|
-
? `expected signal NOT to have X bits, but mask = ${mask}`
|
|
93
|
-
: `expected signal to have X bits, but mask = 0`,
|
|
97
|
+
? `expected signal NOT to have X/Z bits, but mask = ${mask}`
|
|
98
|
+
: `expected signal to have X/Z bits, but mask = 0`,
|
|
94
99
|
};
|
|
95
100
|
},
|
|
96
101
|
|
|
@@ -98,28 +103,59 @@ const customMatchers = {
|
|
|
98
103
|
if (!isFourStateRef(received)) {
|
|
99
104
|
throw new TypeError("toBeAllX requires a FourStateRef");
|
|
100
105
|
}
|
|
101
|
-
const [, mask] = readFourState(received.buffer, received.layout);
|
|
106
|
+
const [value, mask] = readFourState(received.buffer, received.layout);
|
|
102
107
|
const width = received.layout.width;
|
|
103
108
|
const allOnes = (1n << BigInt(width)) - 1n;
|
|
104
|
-
const pass = mask === allOnes;
|
|
109
|
+
const pass = mask === allOnes && value === allOnes;
|
|
105
110
|
return {
|
|
106
111
|
pass,
|
|
107
112
|
message: () =>
|
|
108
113
|
pass
|
|
109
114
|
? `expected signal NOT to be all-X`
|
|
110
|
-
: `expected signal to be all-X, but
|
|
115
|
+
: `expected signal to be all-X (v=all-1s, m=all-1s), but v=${value}, m=${mask}`,
|
|
111
116
|
};
|
|
112
117
|
},
|
|
113
118
|
|
|
114
119
|
toBeNotX(received: unknown) {
|
|
115
|
-
const mask =
|
|
120
|
+
const [, mask] = getValueAndMask(received);
|
|
116
121
|
const pass = mask === 0n;
|
|
117
122
|
return {
|
|
118
123
|
pass,
|
|
119
124
|
message: () =>
|
|
120
125
|
pass
|
|
121
|
-
? `expected signal to have X bits, but mask = 0`
|
|
122
|
-
: `expected signal NOT to have X bits, but mask = ${mask}`,
|
|
126
|
+
? `expected signal to have X/Z bits, but mask = 0`
|
|
127
|
+
: `expected signal NOT to have X/Z bits, but mask = ${mask}`,
|
|
128
|
+
};
|
|
129
|
+
},
|
|
130
|
+
|
|
131
|
+
toBeZ(received: unknown) {
|
|
132
|
+
const [value, mask] = getValueAndMask(received);
|
|
133
|
+
// Z bits: mask=1 AND value=0
|
|
134
|
+
const zBits = mask & ~value;
|
|
135
|
+
const pass = zBits !== 0n;
|
|
136
|
+
return {
|
|
137
|
+
pass,
|
|
138
|
+
message: () =>
|
|
139
|
+
pass
|
|
140
|
+
? `expected signal NOT to have Z bits, but found Z`
|
|
141
|
+
: `expected signal to have Z bits, but none found (v=${value}, m=${mask})`,
|
|
142
|
+
};
|
|
143
|
+
},
|
|
144
|
+
|
|
145
|
+
toBeAllZ(received: unknown) {
|
|
146
|
+
if (!isFourStateRef(received)) {
|
|
147
|
+
throw new TypeError("toBeAllZ requires a FourStateRef");
|
|
148
|
+
}
|
|
149
|
+
const [value, mask] = readFourState(received.buffer, received.layout);
|
|
150
|
+
const width = received.layout.width;
|
|
151
|
+
const allOnes = (1n << BigInt(width)) - 1n;
|
|
152
|
+
const pass = mask === allOnes && value === 0n;
|
|
153
|
+
return {
|
|
154
|
+
pass,
|
|
155
|
+
message: () =>
|
|
156
|
+
pass
|
|
157
|
+
? `expected signal NOT to be all-Z`
|
|
158
|
+
: `expected signal to be all-Z (v=0, m=all-1s), but v=${value}, m=${mask}`,
|
|
123
159
|
};
|
|
124
160
|
},
|
|
125
161
|
};
|
package/src/types.ts
CHANGED
|
@@ -176,17 +176,33 @@ export interface EventHandle {
|
|
|
176
176
|
// 4-state helpers
|
|
177
177
|
// ---------------------------------------------------------------------------
|
|
178
178
|
|
|
179
|
-
/** Sentinel representing all-X. */
|
|
179
|
+
/** Sentinel representing all-X (unknown). X = (v=1, m=1) per bit. */
|
|
180
180
|
export const X = Symbol.for("veryl:X");
|
|
181
181
|
|
|
182
|
-
/**
|
|
182
|
+
/** Sentinel representing all-Z (high-impedance). Z = (v=0, m=1) per bit. */
|
|
183
|
+
export const Z = Symbol.for("veryl:Z");
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* A 4-state value with explicit bit-level mask.
|
|
187
|
+
*
|
|
188
|
+
* Encoding per bit:
|
|
189
|
+
* - `(v=0, m=0)` → 0
|
|
190
|
+
* - `(v=1, m=0)` → 1
|
|
191
|
+
* - `(v=0, m=1)` → Z (high-impedance)
|
|
192
|
+
* - `(v=1, m=1)` → X (unknown)
|
|
193
|
+
*/
|
|
183
194
|
export interface FourStateValue {
|
|
184
195
|
readonly __fourState: true;
|
|
185
196
|
readonly value: bigint;
|
|
186
197
|
readonly mask: bigint;
|
|
187
198
|
}
|
|
188
199
|
|
|
189
|
-
/**
|
|
200
|
+
/**
|
|
201
|
+
* Construct a 4-state value with explicit value and mask.
|
|
202
|
+
*
|
|
203
|
+
* Mask bits set to 1 with value=1 indicate X (unknown).
|
|
204
|
+
* Mask bits set to 1 with value=0 indicate Z (high-impedance).
|
|
205
|
+
*/
|
|
190
206
|
export function FourState(
|
|
191
207
|
value: number | bigint,
|
|
192
208
|
mask: number | bigint,
|