@vessel-dsp/compiler 0.5.0 → 0.7.0
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/README.md +4 -2
- package/dist/bbd-clock.d.ts +42 -0
- package/dist/bbd-clock.d.ts.map +1 -1
- package/dist/bbd-clock.js +383 -1
- package/dist/bbd-clock.js.map +1 -1
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +316 -34
- package/dist/compile.js.map +1 -1
- package/dist/device-laws.d.ts.map +1 -1
- package/dist/device-laws.js +581 -98
- package/dist/device-laws.js.map +1 -1
- package/dist/fixtures/circuits.d.ts +23 -2
- package/dist/fixtures/circuits.d.ts.map +1 -1
- package/dist/fixtures/circuits.js +205 -2
- package/dist/fixtures/circuits.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +13 -0
- package/dist/lower.js.map +1 -1
- package/dist/netlist.d.ts +30 -0
- package/dist/netlist.d.ts.map +1 -1
- package/dist/netlist.js +502 -8
- package/dist/netlist.js.map +1 -1
- package/dist/part-catalog.d.ts +42 -18
- package/dist/part-catalog.d.ts.map +1 -1
- package/dist/part-catalog.js +2518 -576
- package/dist/part-catalog.js.map +1 -1
- package/dist/partition.d.ts.map +1 -1
- package/dist/partition.js +6 -0
- package/dist/partition.js.map +1 -1
- package/dist/registry-data/bjt.d.ts +3 -0
- package/dist/registry-data/bjt.d.ts.map +1 -0
- package/dist/registry-data/bjt.js +1350 -0
- package/dist/registry-data/bjt.js.map +1 -0
- package/dist/registry-data/charge-pump.d.ts +3 -0
- package/dist/registry-data/charge-pump.d.ts.map +1 -0
- package/dist/registry-data/charge-pump.js +204 -0
- package/dist/registry-data/charge-pump.js.map +1 -0
- package/dist/registry-data/diode.d.ts +3 -0
- package/dist/registry-data/diode.d.ts.map +1 -0
- package/dist/registry-data/diode.js +786 -0
- package/dist/registry-data/diode.js.map +1 -0
- package/dist/registry-data/index.d.ts +21 -0
- package/dist/registry-data/index.d.ts.map +1 -0
- package/dist/registry-data/index.js +103 -0
- package/dist/registry-data/index.js.map +1 -0
- package/dist/registry-data/jfet.d.ts +3 -0
- package/dist/registry-data/jfet.d.ts.map +1 -0
- package/dist/registry-data/jfet.js +605 -0
- package/dist/registry-data/jfet.js.map +1 -0
- package/dist/registry-data/loader.d.ts +137 -0
- package/dist/registry-data/loader.d.ts.map +1 -0
- package/dist/registry-data/loader.js +350 -0
- package/dist/registry-data/loader.js.map +1 -0
- package/dist/registry-data/mosfet.d.ts +3 -0
- package/dist/registry-data/mosfet.d.ts.map +1 -0
- package/dist/registry-data/mosfet.js +63 -0
- package/dist/registry-data/mosfet.js.map +1 -0
- package/dist/registry-data/opamp.d.ts +37 -0
- package/dist/registry-data/opamp.d.ts.map +1 -0
- package/dist/registry-data/opamp.js +669 -0
- package/dist/registry-data/opamp.js.map +1 -0
- package/dist/registry-data/regulator.d.ts +3 -0
- package/dist/registry-data/regulator.d.ts.map +1 -0
- package/dist/registry-data/regulator.js +189 -0
- package/dist/registry-data/regulator.js.map +1 -0
- package/dist/registry-data/schema.d.ts +60 -0
- package/dist/registry-data/schema.d.ts.map +1 -0
- package/dist/registry-data/schema.js +151 -0
- package/dist/registry-data/schema.js.map +1 -0
- package/dist/registry-data/ujt.d.ts +3 -0
- package/dist/registry-data/ujt.d.ts.map +1 -0
- package/dist/registry-data/ujt.js +48 -0
- package/dist/registry-data/ujt.js.map +1 -0
- package/dist/registry-data/zener.d.ts +3 -0
- package/dist/registry-data/zener.d.ts.map +1 -0
- package/dist/registry-data/zener.js +547 -0
- package/dist/registry-data/zener.js.map +1 -0
- package/dist/registry.d.ts +93 -6
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +35 -7
- package/dist/registry.js.map +1 -1
- package/dist/types.d.ts +242 -19
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opamp.js","sourceRoot":"","sources":["../../src/registry-data/opamp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regulator.d.ts","sourceRoot":"","sources":["../../src/registry-data/regulator.ts"],"names":[],"mappings":"AAcA,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAQ9D,eAAO,MAAM,wBAAwB,EAAE,SAAS,aAAa,EAmL3D,CAAC"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
// Fixed-rail regulator registry data: the output voltage by exact part id.
|
|
2
|
+
//
|
|
3
|
+
// **Rails, not models.** Each record is one fixed rail a regulator holds its output at,
|
|
4
|
+
// stamped as a single two-terminal `voltage-source` section (output relative to ground).
|
|
5
|
+
// The terminal wiring -- which package positions are input, ground and output -- stays in
|
|
6
|
+
// `part-catalog.ts` code with the entry skeletons; this file holds only the numbers.
|
|
7
|
+
//
|
|
8
|
+
// Provenance, honestly: these are the pre-registry catalog's fixed-rail values, kept
|
|
9
|
+
// mechanically. No datasheet row was re-read at stage 1 -- family nominals (5/9/18 V),
|
|
10
|
+
// a part-number reading (LM340T-15), and one known-latent sharing (7912 on the 7915
|
|
11
|
+
// entry) -- and the derivation of each record says so. Stage 3 must cite the datasheets.
|
|
12
|
+
// `sourceOhms` is the `SUPPLY_SOURCE_OHMS` convention (device-laws.ts): a 1 ohm series
|
|
13
|
+
// source impedance every supply stamp carries, not a measured part figure.
|
|
14
|
+
import { definePartData } from "./loader.js";
|
|
15
|
+
const SUPPLY_OHMS_SOURCE = "SUPPLY_SOURCE_OHMS convention (device-laws.ts): 1 ohm series source impedance, not a measured part figure";
|
|
16
|
+
const SUPPLY_OHMS_DERIVATION = "Every supply stamp in the compiler carries 1 ohm; the regulator records repeat the " +
|
|
17
|
+
"convention rather than claiming a measured output impedance. Stage 3 may refine per part.";
|
|
18
|
+
export const regulatorRegistryRecords = definePartData([
|
|
19
|
+
{
|
|
20
|
+
// Wave 5: LM78L05 and L7805 ride this 5 V entry. LM78L05 is the exact spelling
|
|
21
|
+
// printed in TI LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.6 'Electrical
|
|
22
|
+
// Characteristics: LM78L05 (Legacy and New Chip)' (VIN = 10 V, IO = 40 mA):
|
|
23
|
+
// 'VO Output voltage, TJ = 25C: MIN 4.8 TYP 5 MAX 5.2 V' (legacy chip; new chip
|
|
24
|
+
// 4.9/5/5.18). L7805 is the exact TYPE printed in the ST L7800 series device
|
|
25
|
+
// summary (Doc ID 2143 Rev 26, Feb 2012, Table 1: 'L7805' among L7805C/L7805AB/
|
|
26
|
+
// L7805AC). Bare L78L05 is NOT added: no ST L78L revision prints the bare stem
|
|
27
|
+
// (TYPE rows are L78L05C/AC/AB only), so suffix-folding it would be unsourced.
|
|
28
|
+
partIds: ["uPC78L05", "78L05", "7805", "78M05", "TA78L05F", "TA78L05S", "2930L05", "BA78L05", "uPC78L05T", "LM78L05", "L7805"],
|
|
29
|
+
class: "regulator",
|
|
30
|
+
params: {
|
|
31
|
+
volts: {
|
|
32
|
+
value: 5,
|
|
33
|
+
basis: "derived",
|
|
34
|
+
source: "Pre-registry catalog fixed-rail value (5 V family nominal)",
|
|
35
|
+
derivation: "Transcribed mechanically from the pre-registry entry; no datasheet row was re-read " +
|
|
36
|
+
"at stage 1 (the Toshiba TA78L05S spelling shares the 5 V TA78L die in TO-92). Stage 3 " +
|
|
37
|
+
"must cite the datasheet.",
|
|
38
|
+
},
|
|
39
|
+
sourceOhms: {
|
|
40
|
+
value: 1,
|
|
41
|
+
basis: "derived",
|
|
42
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
43
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
note: "Toshiba's TA78L05S (product page detail.TA78L05S): the same 5 V TA78L die in TO-92. " +
|
|
47
|
+
"Without it, boss-dd-5's IC5 fell to the pin-name rung and matched the 78L18 entry, " +
|
|
48
|
+
"solving the pedal's 5 V rail at 18 V.",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
// Wave 5: LM78L09 rides this 9 V entry. It is the exact spelling printed in TI
|
|
52
|
+
// LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.8 'Electrical Characteristics:
|
|
53
|
+
// LM78L09 (Legacy Chip Only)' (VIN = 15 V, IO = 40 mA): 'VO Output voltage,
|
|
54
|
+
// TJ = 25C: MIN 8.64 TYP 9 MAX 9.36 V'. Bare L78L09 is NOT added: no ST L78L
|
|
55
|
+
// revision prints the bare stem (TYPE rows are L78L09C/AC/AB only).
|
|
56
|
+
partIds: ["uPC78L09", "78L09", "7809", "78M09", "TA78L09F", "2930L09", "BA78L09", "uPC78L09T", "LM78L09"],
|
|
57
|
+
class: "regulator",
|
|
58
|
+
params: {
|
|
59
|
+
volts: {
|
|
60
|
+
value: 9,
|
|
61
|
+
basis: "derived",
|
|
62
|
+
source: "Pre-registry catalog fixed-rail value (9 V family nominal)",
|
|
63
|
+
derivation: "Transcribed mechanically from the pre-registry entry; no datasheet row was re-read " +
|
|
64
|
+
"at stage 1. Stage 3 must cite the datasheet.",
|
|
65
|
+
},
|
|
66
|
+
sourceOhms: {
|
|
67
|
+
value: 1,
|
|
68
|
+
basis: "derived",
|
|
69
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
70
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
partIds: ["78L18", "78L18AC", "78L18T", "7818"],
|
|
76
|
+
class: "regulator",
|
|
77
|
+
params: {
|
|
78
|
+
volts: {
|
|
79
|
+
value: 18,
|
|
80
|
+
basis: "derived",
|
|
81
|
+
source: "Pre-registry catalog fixed-rail value (18 V family nominal)",
|
|
82
|
+
derivation: "Transcribed mechanically from the pre-registry entry (electro-harmonix-q-tron's U6, " +
|
|
83
|
+
"24 V to +18 V rail); no datasheet row was re-read at stage 1. Stage 3 must cite the " +
|
|
84
|
+
"datasheet.",
|
|
85
|
+
},
|
|
86
|
+
sourceOhms: {
|
|
87
|
+
value: 1,
|
|
88
|
+
basis: "derived",
|
|
89
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
90
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
partIds: ["LM7915", "7915", "7912", "LM7912"],
|
|
96
|
+
class: "regulator",
|
|
97
|
+
params: {
|
|
98
|
+
volts: {
|
|
99
|
+
value: -15,
|
|
100
|
+
basis: "derived",
|
|
101
|
+
source: "Pre-registry catalog fixed-rail value (-15 V family nominal)",
|
|
102
|
+
derivation: "Transcribed mechanically from the pre-registry entry; no datasheet row was re-read at " +
|
|
103
|
+
"stage 1. Stage 3 must cite the datasheet and split the entry: 7912/LM7912 are -12 V " +
|
|
104
|
+
"parts sharing this -15 V row, so a 7912 would be modelled 3 V low (latent -- the only " +
|
|
105
|
+
"corpus user is deluxe-memory-man's U12_LM7915).",
|
|
106
|
+
},
|
|
107
|
+
sourceOhms: {
|
|
108
|
+
value: 1,
|
|
109
|
+
basis: "derived",
|
|
110
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
111
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
note: "`volts` here is SIGNED, against the convention the consumer documents (the law carries a " +
|
|
115
|
+
"magnitude and the lowering reverses the source's sense for an output declared `negative`); " +
|
|
116
|
+
"until that is settled, a negative regulator using this entry must declare its output " +
|
|
117
|
+
"`positive`, which is why deluxe-memory-man does. See the entry note in part-catalog.ts.",
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
// Wave 5: the 12 V rail (no 12 V entry existed). LM78L12 is the exact spelling
|
|
121
|
+
// printed in TI LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.9 'Electrical
|
|
122
|
+
// Characteristics: LM78L12 (Legacy and New Chip)' (VIN = 19 V, CIN = 0.33 uF,
|
|
123
|
+
// COUT = 0.1 uF, IO = 40 mA): 'VO Output voltage, TJ = 25C: MIN 11.5 TYP 12
|
|
124
|
+
// MAX 12.5 V' (legacy chip; new chip 11.8/12/12.3). Bare L78L12 is NOT added
|
|
125
|
+
// (same unsuffixed-stem reason as L78L05/L78L09 above).
|
|
126
|
+
partIds: ["LM78L12"],
|
|
127
|
+
class: "regulator",
|
|
128
|
+
params: {
|
|
129
|
+
volts: {
|
|
130
|
+
value: 12,
|
|
131
|
+
basis: "datasheet",
|
|
132
|
+
source: "TI LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.9 'Electrical " +
|
|
133
|
+
"Characteristics: LM78L12 (Legacy and New Chip)' (VIN = 19 V, IO = 40 mA): " +
|
|
134
|
+
"'VO Output voltage, TJ = 25C: MIN 11.5 TYP 12 MAX 12.5 V' (new chip 11.8/12/12.3)",
|
|
135
|
+
},
|
|
136
|
+
sourceOhms: {
|
|
137
|
+
value: 1,
|
|
138
|
+
basis: "derived",
|
|
139
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
140
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
// Wave 5: the 3.3 V rail (no 3.3 V entry existed). LM78L33 is the exact spelling
|
|
146
|
+
// printed in TI LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.5 'Electrical
|
|
147
|
+
// Characteristics: LM78L33 (New Chip Only)' (VIN = 5.5-20 V, IO = 1-40 mA):
|
|
148
|
+
// 'VO Output voltage, TJ = 25C: MIN 3.29 TYP 3.3 MAX 3.44 V'. Bare L78L33 is
|
|
149
|
+
// NOT added (same unsuffixed-stem reason as above).
|
|
150
|
+
partIds: ["LM78L33"],
|
|
151
|
+
class: "regulator",
|
|
152
|
+
params: {
|
|
153
|
+
volts: {
|
|
154
|
+
value: 3.3,
|
|
155
|
+
basis: "datasheet",
|
|
156
|
+
source: "TI LM78L SNVS754O (Jan 2000, rev Aug 2026) 5.5 'Electrical " +
|
|
157
|
+
"Characteristics: LM78L33 (New Chip Only)' (VIN = 5.5-20 V, IO = 1-40 mA): " +
|
|
158
|
+
"'VO Output voltage, TJ = 25C: MIN 3.29 TYP 3.3 MAX 3.44 V'",
|
|
159
|
+
},
|
|
160
|
+
sourceOhms: {
|
|
161
|
+
value: 1,
|
|
162
|
+
basis: "derived",
|
|
163
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
164
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
partIds: ["LM340T-15"],
|
|
170
|
+
class: "regulator",
|
|
171
|
+
params: {
|
|
172
|
+
volts: {
|
|
173
|
+
value: 15,
|
|
174
|
+
basis: "derived",
|
|
175
|
+
source: "Pre-registry catalog value, read off the part number and the packet's Description",
|
|
176
|
+
derivation: "15 V fixed regulator read off the part number and mxr-m117r-flanger VR1's own " +
|
|
177
|
+
"Description ('15 V regulator from the selected factory schematic'); no datasheet row " +
|
|
178
|
+
"was re-read at stage 1. Stage 3 must cite the datasheet.",
|
|
179
|
+
},
|
|
180
|
+
sourceOhms: {
|
|
181
|
+
value: 1,
|
|
182
|
+
basis: "derived",
|
|
183
|
+
source: SUPPLY_OHMS_SOURCE,
|
|
184
|
+
derivation: SUPPLY_OHMS_DERIVATION,
|
|
185
|
+
},
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
]);
|
|
189
|
+
//# sourceMappingURL=regulator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regulator.js","sourceRoot":"","sources":["../../src/registry-data/regulator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Every parameter name a class accepts, exactly as the engine's law fields spell it. */
|
|
2
|
+
export declare const CLASS_PARAM_SCHEMAS: {
|
|
3
|
+
readonly bjt: readonly ["saturationCurrent", "forwardBeta", "reverseBeta", "thermalVoltage", "leakageAmps"];
|
|
4
|
+
readonly jfet: readonly ["thresholdVolts", "transconductance", "channelLengthModulation", "subthresholdVolts", "gateSaturationCurrent", "gateOnsetVolts", "gateScaleVolts"];
|
|
5
|
+
readonly mosfet: readonly ["thresholdVolts", "transconductance", "channelLengthModulation", "subthresholdVolts", "gateSaturationCurrent", "gateOnsetVolts", "gateScaleVolts"];
|
|
6
|
+
readonly diode: readonly ["saturationCurrent", "emissionCoefficient", "thermalVoltage", "breakdownVolts", "seriesResistance"];
|
|
7
|
+
readonly zener: readonly ["saturationCurrent", "emissionCoefficient", "thermalVoltage", "breakdownVolts", "seriesResistance"];
|
|
8
|
+
readonly led: readonly ["saturationCurrent", "emissionCoefficient", "thermalVoltage", "breakdownVolts", "seriesResistance"];
|
|
9
|
+
readonly opamp: readonly ["openLoopGain", "gainBandwidthHz", "outputSwingDropHighVolts", "outputSwingDropLowVolts"];
|
|
10
|
+
readonly regulator: readonly ["volts", "sourceOhms"];
|
|
11
|
+
readonly "charge-pump": readonly ["sourceOhms", "chargePumpLossVolts"];
|
|
12
|
+
readonly ujt: readonly ["intrinsicStandoffRatio", "interbaseResistanceOhms"];
|
|
13
|
+
};
|
|
14
|
+
/** The closed set of part classes the registry holds parameters for. */
|
|
15
|
+
export type PartClassName = keyof typeof CLASS_PARAM_SCHEMAS;
|
|
16
|
+
/** The accepted parameter names for a class, in schema order. */
|
|
17
|
+
export declare function classParamNames(cls: PartClassName): readonly string[];
|
|
18
|
+
/**
|
|
19
|
+
* The parameters a `custom` override must supply for each class, in schema order.
|
|
20
|
+
*
|
|
21
|
+
* Stage 2 (explicit `DeviceOverride` block, `measured` | `custom`): a `custom` block is for a
|
|
22
|
+
* part the registry does not have, so it must state every parameter that moves behaviour --
|
|
23
|
+
* anything it omits falls back to a class default that was never measured against that part.
|
|
24
|
+
* `measured` needs no completeness (it refines known values), and an unknown name for the
|
|
25
|
+
* class is an error either way (checked against `CLASS_PARAM_SCHEMAS`).
|
|
26
|
+
*
|
|
27
|
+
* Minimal by class, and why the rest may default:
|
|
28
|
+
*
|
|
29
|
+
* - `bjt`: saturationCurrent (the Vbe knee) and forwardBeta (stage gain). reverseBeta keeps 1,
|
|
30
|
+
* thermalVoltage is a physical constant, leakageAmps keeps 0 (silicon: no excess leakage).
|
|
31
|
+
* - `jfet` / `mosfet`: thresholdVolts (pinch-off) and transconductance (gain). Geometry and
|
|
32
|
+
* gate refinements (channelLengthModulation, subthresholdVolts, gate terms) keep defaults.
|
|
33
|
+
* - `diode` / `led`: saturationCurrent (knee position) and emissionCoefficient (knee slope).
|
|
34
|
+
* thermalVoltage is a constant, breakdownVolts 0 is an ordinary diode, seriesResistance
|
|
35
|
+
* keeps its default.
|
|
36
|
+
* - `zener`: the diode pair plus breakdownVolts -- the breakdown IS the part, and without it
|
|
37
|
+
* the law stamps an ordinary diode.
|
|
38
|
+
* - `opamp`: openLoopGain and gainBandwidthHz. The swing pair is deliberately absent: per the
|
|
39
|
+
* D4 freeze no entry states one, and requiring it would stop every custom op-amp.
|
|
40
|
+
* - `regulator`: volts -- the rail is the part; sourceOhms keeps the supply convention.
|
|
41
|
+
* - `charge-pump`: sourceOhms and chargePumpLossVolts -- both shape the derived rail, and an
|
|
42
|
+
* unknown pump has no safe default for either.
|
|
43
|
+
* - `ujt`: intrinsicStandoffRatio and interbaseResistanceOhms -- the tap fraction and the
|
|
44
|
+
* bar are the whole part model (emitter diode and modulation are law structure).
|
|
45
|
+
*/
|
|
46
|
+
export declare const REQUIRED_CLASS_PARAMS: {
|
|
47
|
+
readonly bjt: readonly ["saturationCurrent", "forwardBeta"];
|
|
48
|
+
readonly jfet: readonly ["thresholdVolts", "transconductance"];
|
|
49
|
+
readonly mosfet: readonly ["thresholdVolts", "transconductance"];
|
|
50
|
+
readonly diode: readonly ["saturationCurrent", "emissionCoefficient"];
|
|
51
|
+
readonly zener: readonly ["saturationCurrent", "emissionCoefficient", "breakdownVolts"];
|
|
52
|
+
readonly led: readonly ["saturationCurrent", "emissionCoefficient"];
|
|
53
|
+
readonly opamp: readonly ["openLoopGain", "gainBandwidthHz"];
|
|
54
|
+
readonly regulator: readonly ["volts"];
|
|
55
|
+
readonly "charge-pump": readonly ["sourceOhms", "chargePumpLossVolts"];
|
|
56
|
+
readonly ujt: readonly ["intrinsicStandoffRatio", "interbaseResistanceOhms"];
|
|
57
|
+
};
|
|
58
|
+
/** The parameters a `custom` override must supply for a class, in schema order. */
|
|
59
|
+
export declare function requiredClassParams(cls: PartClassName): readonly string[];
|
|
60
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/registry-data/schema.ts"],"names":[],"mappings":"AAkCA,yFAAyF;AACzF,eAAO,MAAM,mBAAmB;;;;;;;;;;;CAwDtB,CAAC;AAEX,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,mBAAmB,CAAC;AAE7D,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,MAAM,EAAE,CAErE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAW2B,CAAC;AAE9D,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,MAAM,EAAE,CAEzE"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
// Per-class parameter schemas, as data.
|
|
2
|
+
//
|
|
3
|
+
// **Schemas are data, not code.** Stage 2's override block ("an override may set only the
|
|
4
|
+
// part's own class parameters") checks override names against this same table, so the table
|
|
5
|
+
// is the one place that says what a class accepts. Parameter *names* follow exactly the
|
|
6
|
+
// fields the engine's laws accept for each class, read from `types.ts` (`DeviceLaw`) and
|
|
7
|
+
// the resolution narrowings in `device-laws.ts`; no name here is invented:
|
|
8
|
+
//
|
|
9
|
+
// - `bjt`: `device-laws.ts` `case "bjt"` stamps `polarity` plus these five numerics.
|
|
10
|
+
// - `jfet` / `mosfet`: both lower to the shared `fet` law; the seven numerics below are the
|
|
11
|
+
// law's numeric fields (`gateSaturationCurrent: 0` is the MOSFET's insulated gate).
|
|
12
|
+
// - `diode` / `zener` / `led`: all three lower to the `diode` law; a zener adds a reverse
|
|
13
|
+
// knee (`breakdownVolts`), an LED adds `isLed`, and a Schottky is a diode with a low
|
|
14
|
+
// forward knee -- all fit these five numeric names.
|
|
15
|
+
// - `opamp`: the `ideal-opamp` law's numeric part facts. `openLoopGain` is listed because it
|
|
16
|
+
// is a class parameter (stage 2 must allow overriding it) even though stage 1 keeps its
|
|
17
|
+
// values in `part-catalog.ts` code; `gainBandwidthHz` and the swing pair move to data now.
|
|
18
|
+
// - `regulator`: a fixed-rail `voltage-source` section; the part contributes its rail and
|
|
19
|
+
// the series impedance stamps carry.
|
|
20
|
+
// - `charge-pump`: a switched-capacitor inverter section plus the entry-level loss term the
|
|
21
|
+
// `pumpDerivation` reads. `volts` is deliberately NOT a parameter: the rail is derived per
|
|
22
|
+
// circuit from the input node, and the `volts: 0` in each entry is an unused placeholder.
|
|
23
|
+
// - `ujt`: the unijunction transistor's own two facts -- the tap fraction (intrinsic
|
|
24
|
+
// standoff ratio eta) and the bar resistance (interbase resistance Rbb). The emitter
|
|
25
|
+
// junction is a silicon diode by construction (law constants, like the JFET gate's
|
|
26
|
+
// stated silicon-junction current) and the conductivity modulation is the lowering's
|
|
27
|
+
// business (it needs a hysteretic switch stamp, so neither is a per-part parameter).
|
|
28
|
+
//
|
|
29
|
+
// Structural (non-numeric) law fields -- `polarity`, `channel`, the swing `translation` and
|
|
30
|
+
// printed condition, rails, pinouts -- stay in code at stage 1: a cited value is a number,
|
|
31
|
+
// and stage 2 decides how an override states an enum. Classes with no migrated entries yet
|
|
32
|
+
// (`bjt`, `mosfet`, `diode`, `led`) carry their schema here and no entry file; their fill
|
|
33
|
+
// is stage 3.
|
|
34
|
+
/** Every parameter name a class accepts, exactly as the engine's law fields spell it. */
|
|
35
|
+
export const CLASS_PARAM_SCHEMAS = {
|
|
36
|
+
bjt: [
|
|
37
|
+
"saturationCurrent",
|
|
38
|
+
"forwardBeta",
|
|
39
|
+
"reverseBeta",
|
|
40
|
+
"thermalVoltage",
|
|
41
|
+
"leakageAmps",
|
|
42
|
+
],
|
|
43
|
+
jfet: [
|
|
44
|
+
"thresholdVolts",
|
|
45
|
+
"transconductance",
|
|
46
|
+
"channelLengthModulation",
|
|
47
|
+
"subthresholdVolts",
|
|
48
|
+
"gateSaturationCurrent",
|
|
49
|
+
"gateOnsetVolts",
|
|
50
|
+
"gateScaleVolts",
|
|
51
|
+
],
|
|
52
|
+
mosfet: [
|
|
53
|
+
"thresholdVolts",
|
|
54
|
+
"transconductance",
|
|
55
|
+
"channelLengthModulation",
|
|
56
|
+
"subthresholdVolts",
|
|
57
|
+
"gateSaturationCurrent",
|
|
58
|
+
"gateOnsetVolts",
|
|
59
|
+
"gateScaleVolts",
|
|
60
|
+
],
|
|
61
|
+
diode: [
|
|
62
|
+
"saturationCurrent",
|
|
63
|
+
"emissionCoefficient",
|
|
64
|
+
"thermalVoltage",
|
|
65
|
+
"breakdownVolts",
|
|
66
|
+
"seriesResistance",
|
|
67
|
+
],
|
|
68
|
+
zener: [
|
|
69
|
+
"saturationCurrent",
|
|
70
|
+
"emissionCoefficient",
|
|
71
|
+
"thermalVoltage",
|
|
72
|
+
"breakdownVolts",
|
|
73
|
+
"seriesResistance",
|
|
74
|
+
],
|
|
75
|
+
led: [
|
|
76
|
+
"saturationCurrent",
|
|
77
|
+
"emissionCoefficient",
|
|
78
|
+
"thermalVoltage",
|
|
79
|
+
"breakdownVolts",
|
|
80
|
+
"seriesResistance",
|
|
81
|
+
],
|
|
82
|
+
opamp: [
|
|
83
|
+
"openLoopGain",
|
|
84
|
+
"gainBandwidthHz",
|
|
85
|
+
"outputSwingDropHighVolts",
|
|
86
|
+
"outputSwingDropLowVolts",
|
|
87
|
+
],
|
|
88
|
+
regulator: ["volts", "sourceOhms"],
|
|
89
|
+
"charge-pump": ["sourceOhms", "chargePumpLossVolts"],
|
|
90
|
+
ujt: ["intrinsicStandoffRatio", "interbaseResistanceOhms"],
|
|
91
|
+
};
|
|
92
|
+
/** The accepted parameter names for a class, in schema order. */
|
|
93
|
+
export function classParamNames(cls) {
|
|
94
|
+
return CLASS_PARAM_SCHEMAS[cls];
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* The parameters a `custom` override must supply for each class, in schema order.
|
|
98
|
+
*
|
|
99
|
+
* Stage 2 (explicit `DeviceOverride` block, `measured` | `custom`): a `custom` block is for a
|
|
100
|
+
* part the registry does not have, so it must state every parameter that moves behaviour --
|
|
101
|
+
* anything it omits falls back to a class default that was never measured against that part.
|
|
102
|
+
* `measured` needs no completeness (it refines known values), and an unknown name for the
|
|
103
|
+
* class is an error either way (checked against `CLASS_PARAM_SCHEMAS`).
|
|
104
|
+
*
|
|
105
|
+
* Minimal by class, and why the rest may default:
|
|
106
|
+
*
|
|
107
|
+
* - `bjt`: saturationCurrent (the Vbe knee) and forwardBeta (stage gain). reverseBeta keeps 1,
|
|
108
|
+
* thermalVoltage is a physical constant, leakageAmps keeps 0 (silicon: no excess leakage).
|
|
109
|
+
* - `jfet` / `mosfet`: thresholdVolts (pinch-off) and transconductance (gain). Geometry and
|
|
110
|
+
* gate refinements (channelLengthModulation, subthresholdVolts, gate terms) keep defaults.
|
|
111
|
+
* - `diode` / `led`: saturationCurrent (knee position) and emissionCoefficient (knee slope).
|
|
112
|
+
* thermalVoltage is a constant, breakdownVolts 0 is an ordinary diode, seriesResistance
|
|
113
|
+
* keeps its default.
|
|
114
|
+
* - `zener`: the diode pair plus breakdownVolts -- the breakdown IS the part, and without it
|
|
115
|
+
* the law stamps an ordinary diode.
|
|
116
|
+
* - `opamp`: openLoopGain and gainBandwidthHz. The swing pair is deliberately absent: per the
|
|
117
|
+
* D4 freeze no entry states one, and requiring it would stop every custom op-amp.
|
|
118
|
+
* - `regulator`: volts -- the rail is the part; sourceOhms keeps the supply convention.
|
|
119
|
+
* - `charge-pump`: sourceOhms and chargePumpLossVolts -- both shape the derived rail, and an
|
|
120
|
+
* unknown pump has no safe default for either.
|
|
121
|
+
* - `ujt`: intrinsicStandoffRatio and interbaseResistanceOhms -- the tap fraction and the
|
|
122
|
+
* bar are the whole part model (emitter diode and modulation are law structure).
|
|
123
|
+
*/
|
|
124
|
+
export const REQUIRED_CLASS_PARAMS = {
|
|
125
|
+
bjt: ["saturationCurrent", "forwardBeta"],
|
|
126
|
+
jfet: ["thresholdVolts", "transconductance"],
|
|
127
|
+
mosfet: ["thresholdVolts", "transconductance"],
|
|
128
|
+
diode: ["saturationCurrent", "emissionCoefficient"],
|
|
129
|
+
zener: ["saturationCurrent", "emissionCoefficient", "breakdownVolts"],
|
|
130
|
+
led: ["saturationCurrent", "emissionCoefficient"],
|
|
131
|
+
opamp: ["openLoopGain", "gainBandwidthHz"],
|
|
132
|
+
regulator: ["volts"],
|
|
133
|
+
"charge-pump": ["sourceOhms", "chargePumpLossVolts"],
|
|
134
|
+
ujt: ["intrinsicStandoffRatio", "interbaseResistanceOhms"],
|
|
135
|
+
};
|
|
136
|
+
/** The parameters a `custom` override must supply for a class, in schema order. */
|
|
137
|
+
export function requiredClassParams(cls) {
|
|
138
|
+
return REQUIRED_CLASS_PARAMS[cls];
|
|
139
|
+
}
|
|
140
|
+
// Loud at module load when a required set names a parameter its class schema does not
|
|
141
|
+
// accept: the two tables must agree, and a drift between them would refuse valid customs
|
|
142
|
+
// (or admit unknown names) silently.
|
|
143
|
+
for (const cls of Object.keys(CLASS_PARAM_SCHEMAS)) {
|
|
144
|
+
const allowed = new Set(classParamNames(cls));
|
|
145
|
+
for (const name of requiredClassParams(cls)) {
|
|
146
|
+
if (!allowed.has(name)) {
|
|
147
|
+
throw new Error(`REQUIRED_CLASS_PARAMS[${cls}] lists "${name}", which CLASS_PARAM_SCHEMAS[${cls}] does not accept`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/registry-data/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ujt.d.ts","sourceRoot":"","sources":["../../src/registry-data/ujt.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9D,eAAO,MAAM,kBAAkB,EAAE,SAAS,aAAa,EA6BrD,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// UJT registry data: intrinsic standoff ratio and interbase resistance by exact part id.
|
|
2
|
+
//
|
|
3
|
+
// The two numbers ARE the part model: eta sets the tap (RB1 = eta * Rbb, the peak-point
|
|
4
|
+
// fraction) and Rbb sets the bar. Everything else about the law is structure, not data:
|
|
5
|
+
// the emitter junction is a silicon diode by construction (the law's constants) and the
|
|
6
|
+
// conductivity modulation is the lowering's VCCS factor. So a record states exactly these
|
|
7
|
+
// two parameters, and `ujtLawEntry` (part-catalog.ts) throws on anything else shaped
|
|
8
|
+
// like a UJT record that omits one.
|
|
9
|
+
//
|
|
10
|
+
// Derivation rule (standing): a printed range becomes one value by its arithmetic
|
|
11
|
+
// midpoint (eta and Rbb are divider fractions and resistances, not gains, so the
|
|
12
|
+
// geomean-for-gains rule does not apply). A printed TYP is transcribed with its row
|
|
13
|
+
// quoted. One value per parameter, no min/typ/max.
|
|
14
|
+
//
|
|
15
|
+
// Pending: none. The 2N4871 entry below is seeded from the manufacturer datasheet
|
|
16
|
+
// (Digitron Semiconductors 2N4870, 2N4871 UNIJUNCTION TRANSISTORS, Rev. 20120705,
|
|
17
|
+
// sha256 81b46aa8ad8a271a3aca154f7129fe3e6abfc7066440d52d50a4d99ff9a17722).
|
|
18
|
+
// 2N4870 is deliberately absent: nothing in the corpus uses it, and the registry
|
|
19
|
+
// holds parts, not families.
|
|
20
|
+
import { definePartData } from "./loader.js";
|
|
21
|
+
export const ujtRegistryRecords = definePartData([
|
|
22
|
+
{
|
|
23
|
+
partIds: ["2N4871"],
|
|
24
|
+
class: "ujt",
|
|
25
|
+
params: {
|
|
26
|
+
intrinsicStandoffRatio: {
|
|
27
|
+
value: 0.775,
|
|
28
|
+
basis: "derived",
|
|
29
|
+
source: "Digitron Semiconductors 2N4870, 2N4871 UNIJUNCTION TRANSISTORS " +
|
|
30
|
+
"(Rev. 20120705) p1, ELECTRICAL CHARACTERISTICS (TA = 25 C): " +
|
|
31
|
+
"'Intrinsic standoff ratio eta (VB2B1 = 10V), 2N4871, MIN 0.70 MAX 0.85' " +
|
|
32
|
+
"(no TYP printed; Note 1: VP = eta*VB2B1 + VF, VF about 0.49V at 25 C @ IF = 10uA)",
|
|
33
|
+
derivation: "Printed 2N4871 eta range 0.70-0.85 at VB2B1 = 10 V, no TYP printed; " +
|
|
34
|
+
"arithmetic midpoint (form 2, printed range -- a divider fraction, not a gain, " +
|
|
35
|
+
"so no geomean): (0.70 + 0.85) / 2 = 0.775.",
|
|
36
|
+
},
|
|
37
|
+
interbaseResistanceOhms: {
|
|
38
|
+
value: 6000,
|
|
39
|
+
basis: "datasheet",
|
|
40
|
+
source: "Digitron Semiconductors 2N4870, 2N4871 UNIJUNCTION TRANSISTORS " +
|
|
41
|
+
"(Rev. 20120705) p1, ELECTRICAL CHARACTERISTICS (TA = 25 C): " +
|
|
42
|
+
"'Interbase resistance RBB (VB2B1 = 3.0V, IE = 0), MIN 4.0 TYP 6.0 MAX 9.1 kohm' " +
|
|
43
|
+
"(one row for both parts)",
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
]);
|
|
48
|
+
//# sourceMappingURL=ujt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ujt.js","sourceRoot":"","sources":["../../src/registry-data/ujt.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,EAAE;AACF,wFAAwF;AACxF,wFAAwF;AACxF,wFAAwF;AACxF,0FAA0F;AAC1F,qFAAqF;AACrF,oCAAoC;AACpC,EAAE;AACF,kFAAkF;AAClF,iFAAiF;AACjF,oFAAoF;AACpF,mDAAmD;AACnD,EAAE;AACF,kFAAkF;AAClF,kFAAkF;AAClF,4EAA4E;AAC5E,iFAAiF;AACjF,6BAA6B;AAE7B,OAAO,EAAE,cAAc,EAAsB,MAAM,UAAU,CAAC;AAE9D,MAAM,CAAC,MAAM,kBAAkB,GAA6B,cAAc,CAAC;IAC1E;QACC,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE;YACP,sBAAsB,EAAE;gBACvB,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,SAAS;gBAChB,MAAM,EACL,iEAAiE;oBACjE,8DAA8D;oBAC9D,0EAA0E;oBAC1E,mFAAmF;gBACpF,UAAU,EACT,sEAAsE;oBACtE,gFAAgF;oBAChF,4CAA4C;aAC7C;YACD,uBAAuB,EAAE;gBACxB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,WAAW;gBAClB,MAAM,EACL,iEAAiE;oBACjE,8DAA8D;oBAC9D,kFAAkF;oBAClF,0BAA0B;aAC3B;SACD;KACD;CACD,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zener.d.ts","sourceRoot":"","sources":["../../src/registry-data/zener.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAK9D,eAAO,MAAM,oBAAoB,EAAE,SAAS,aAAa,EAuiBvD,CAAC"}
|