edacation 0.6.0 → 0.6.1
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/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/project/configuration.d.ts +80 -20
- package/dist/project/configuration.js +19 -13
- package/dist/project/configuration.js.map +1 -1
- package/dist/project/flasher.d.ts +1 -3
- package/dist/project/flasher.js +37 -41
- package/dist/project/flasher.js.map +1 -1
- package/dist/project/iverilog.d.ts +2 -4
- package/dist/project/iverilog.js +31 -39
- package/dist/project/iverilog.js.map +1 -1
- package/dist/project/nextpnr.d.ts +1 -3
- package/dist/project/nextpnr.js +34 -48
- package/dist/project/nextpnr.js.map +1 -1
- package/dist/project/project.d.ts +32 -4
- package/dist/project/project.js +7 -0
- package/dist/project/project.js.map +1 -1
- package/dist/project/yosys.d.ts +3 -7
- package/dist/project/yosys.js +97 -82
- package/dist/project/yosys.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -128,7 +128,7 @@ const util_js_2 = require("./util.js");
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
if (command === 'yosys') {
|
|
131
|
-
const workerOptions = (0, index_js_1.
|
|
131
|
+
const workerOptions = (0, index_js_1.getYosysSynthesisWorkerOptions)(project, target.id);
|
|
132
132
|
for (const step of workerOptions.steps) {
|
|
133
133
|
console.log([step.tool, ''].concat(step.commands).join('\n'));
|
|
134
134
|
console.log();
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;;;AACA,0CAA+D;AAC/D,gDAAwB;AAExB,2CAAsC;AACtC,wDAAgC;AAEhC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,7 +38,15 @@ declare const schemaYosysOptions: z.ZodObject<{
|
|
|
38
38
|
topLevelModule: z.ZodOptional<z.ZodString>;
|
|
39
39
|
}, z.core.$strip>;
|
|
40
40
|
declare const schemaYosys: z.ZodObject<{
|
|
41
|
-
|
|
41
|
+
synthPrepareCommands: z.ZodOptional<z.ZodObject<{
|
|
42
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
43
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
44
|
+
}, z.core.$strip>>;
|
|
45
|
+
synthCommands: z.ZodOptional<z.ZodObject<{
|
|
46
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
47
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
48
|
+
}, z.core.$strip>>;
|
|
49
|
+
rtlCommands: z.ZodOptional<z.ZodObject<{
|
|
42
50
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
43
51
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
44
52
|
}, z.core.$strip>>;
|
|
@@ -48,7 +56,17 @@ declare const schemaYosys: z.ZodObject<{
|
|
|
48
56
|
}, z.core.$strip>>;
|
|
49
57
|
}, z.core.$strip>;
|
|
50
58
|
declare const schemaYosysTarget: z.ZodObject<{
|
|
51
|
-
|
|
59
|
+
synthPrepareCommands: z.ZodOptional<z.ZodObject<{
|
|
60
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
61
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
62
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
63
|
+
}, z.core.$strip>>;
|
|
64
|
+
synthCommands: z.ZodOptional<z.ZodObject<{
|
|
65
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
66
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
67
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
68
|
+
}, z.core.$strip>>;
|
|
69
|
+
rtlCommands: z.ZodOptional<z.ZodObject<{
|
|
52
70
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
53
71
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
54
72
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -89,48 +107,57 @@ declare const schemaNextpnrTarget: z.ZodObject<{
|
|
|
89
107
|
pinConfigFile: z.ZodOptional<z.ZodString>;
|
|
90
108
|
}, z.core.$strip>>;
|
|
91
109
|
}, z.core.$strip>;
|
|
92
|
-
declare const
|
|
93
|
-
|
|
110
|
+
declare const schemaFlasherOptions: z.ZodObject<{
|
|
111
|
+
board: z.ZodOptional<z.ZodString>;
|
|
94
112
|
}, z.core.$strip>;
|
|
95
|
-
declare const
|
|
96
|
-
|
|
113
|
+
declare const schemaFlasher: z.ZodObject<{
|
|
114
|
+
packerArguments: z.ZodOptional<z.ZodObject<{
|
|
115
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
116
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
117
|
+
}, z.core.$strip>>;
|
|
118
|
+
flasherArguments: z.ZodOptional<z.ZodObject<{
|
|
97
119
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
98
120
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
99
121
|
}, z.core.$strip>>;
|
|
100
122
|
options: z.ZodOptional<z.ZodObject<{
|
|
101
|
-
|
|
123
|
+
board: z.ZodOptional<z.ZodString>;
|
|
102
124
|
}, z.core.$strip>>;
|
|
103
125
|
}, z.core.$strip>;
|
|
104
|
-
declare const
|
|
105
|
-
|
|
126
|
+
declare const schemaFlasherTarget: z.ZodObject<{
|
|
127
|
+
packerArguments: z.ZodOptional<z.ZodObject<{
|
|
128
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
129
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
130
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
131
|
+
}, z.core.$strip>>;
|
|
132
|
+
flasherArguments: z.ZodOptional<z.ZodObject<{
|
|
106
133
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
107
134
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
108
135
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
109
136
|
}, z.core.$strip>>;
|
|
110
137
|
options: z.ZodOptional<z.ZodObject<{
|
|
111
|
-
|
|
138
|
+
board: z.ZodOptional<z.ZodString>;
|
|
112
139
|
}, z.core.$strip>>;
|
|
113
140
|
}, z.core.$strip>;
|
|
114
|
-
declare const
|
|
115
|
-
|
|
141
|
+
declare const schemaIVerilogOptions: z.ZodObject<{
|
|
142
|
+
testbenchFile: z.ZodOptional<z.ZodString>;
|
|
116
143
|
}, z.core.$strip>;
|
|
117
|
-
declare const
|
|
144
|
+
declare const schemaIVerilog: z.ZodObject<{
|
|
118
145
|
arguments: z.ZodOptional<z.ZodObject<{
|
|
119
146
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
120
147
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
121
148
|
}, z.core.$strip>>;
|
|
122
149
|
options: z.ZodOptional<z.ZodObject<{
|
|
123
|
-
|
|
150
|
+
testbenchFile: z.ZodOptional<z.ZodString>;
|
|
124
151
|
}, z.core.$strip>>;
|
|
125
152
|
}, z.core.$strip>;
|
|
126
|
-
declare const
|
|
153
|
+
declare const schemaIVerilogTarget: z.ZodObject<{
|
|
127
154
|
arguments: z.ZodOptional<z.ZodObject<{
|
|
128
155
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
129
156
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
130
157
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
131
158
|
}, z.core.$strip>>;
|
|
132
159
|
options: z.ZodOptional<z.ZodObject<{
|
|
133
|
-
|
|
160
|
+
testbenchFile: z.ZodOptional<z.ZodString>;
|
|
134
161
|
}, z.core.$strip>>;
|
|
135
162
|
}, z.core.$strip>;
|
|
136
163
|
export declare const schemaProjectConfiguration: z.ZodObject<{
|
|
@@ -144,7 +171,15 @@ export declare const schemaProjectConfiguration: z.ZodObject<{
|
|
|
144
171
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
145
172
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
146
173
|
}, z.core.$strip>>;
|
|
147
|
-
|
|
174
|
+
synthPrepareCommands: z.ZodOptional<z.ZodObject<{
|
|
175
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
176
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
177
|
+
}, z.core.$strip>>;
|
|
178
|
+
synthCommands: z.ZodOptional<z.ZodObject<{
|
|
179
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
180
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
181
|
+
}, z.core.$strip>>;
|
|
182
|
+
rtlCommands: z.ZodOptional<z.ZodObject<{
|
|
148
183
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
149
184
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
150
185
|
}, z.core.$strip>>;
|
|
@@ -199,7 +234,11 @@ export declare const schemaProjectConfiguration: z.ZodObject<{
|
|
|
199
234
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
200
235
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
201
236
|
}, z.core.$strip>>;
|
|
202
|
-
|
|
237
|
+
packerArguments: z.ZodOptional<z.ZodObject<{
|
|
238
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
239
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
240
|
+
}, z.core.$strip>>;
|
|
241
|
+
flasherArguments: z.ZodOptional<z.ZodObject<{
|
|
203
242
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
204
243
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
205
244
|
}, z.core.$strip>>;
|
|
@@ -227,7 +266,17 @@ export declare const schemaProjectConfiguration: z.ZodObject<{
|
|
|
227
266
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
228
267
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
229
268
|
}, z.core.$strip>>;
|
|
230
|
-
|
|
269
|
+
synthPrepareCommands: z.ZodOptional<z.ZodObject<{
|
|
270
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
271
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
272
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
273
|
+
}, z.core.$strip>>;
|
|
274
|
+
synthCommands: z.ZodOptional<z.ZodObject<{
|
|
275
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
276
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
277
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
278
|
+
}, z.core.$strip>>;
|
|
279
|
+
rtlCommands: z.ZodOptional<z.ZodObject<{
|
|
231
280
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
232
281
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
233
282
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -291,7 +340,12 @@ export declare const schemaProjectConfiguration: z.ZodObject<{
|
|
|
291
340
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
292
341
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
293
342
|
}, z.core.$strip>>;
|
|
294
|
-
|
|
343
|
+
packerArguments: z.ZodOptional<z.ZodObject<{
|
|
344
|
+
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
345
|
+
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
346
|
+
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
347
|
+
}, z.core.$strip>>;
|
|
348
|
+
flasherArguments: z.ZodOptional<z.ZodObject<{
|
|
295
349
|
useGenerated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
296
350
|
values: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
297
351
|
useDefault: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -329,9 +383,15 @@ export type TargetOptionTypes = {
|
|
|
329
383
|
iverilog: IVerilogOptions;
|
|
330
384
|
flasher: FlasherOptions;
|
|
331
385
|
};
|
|
386
|
+
export interface GeneratedFile {
|
|
387
|
+
name: string;
|
|
388
|
+
content: Uint8Array;
|
|
389
|
+
}
|
|
332
390
|
export interface WorkerStep {
|
|
391
|
+
id: string;
|
|
333
392
|
tool: string;
|
|
334
393
|
arguments: string[];
|
|
394
|
+
generatedInputFiles?: GeneratedFile[];
|
|
335
395
|
}
|
|
336
396
|
export interface WorkerOptions<Step extends WorkerStep, Options> {
|
|
337
397
|
inputFiles: string[];
|
|
@@ -35,11 +35,15 @@ const schemaYosysOptions = zod_1.z.object({
|
|
|
35
35
|
topLevelModule: zod_1.z.string().optional()
|
|
36
36
|
});
|
|
37
37
|
const schemaYosys = zod_1.z.object({
|
|
38
|
-
|
|
38
|
+
synthPrepareCommands: schemaValueList.optional(),
|
|
39
|
+
synthCommands: schemaValueList.optional(),
|
|
40
|
+
rtlCommands: schemaValueList.optional(),
|
|
39
41
|
options: schemaYosysOptions.optional()
|
|
40
42
|
});
|
|
41
43
|
const schemaYosysTarget = zod_1.z.object({
|
|
42
|
-
|
|
44
|
+
synthPrepareCommands: schemaValueListTarget.optional(),
|
|
45
|
+
synthCommands: schemaValueListTarget.optional(),
|
|
46
|
+
rtlCommands: schemaValueListTarget.optional(),
|
|
43
47
|
options: schemaYosysOptions.optional()
|
|
44
48
|
});
|
|
45
49
|
const schemaNextpnrOptions = zod_1.z.object({
|
|
@@ -56,6 +60,19 @@ const schemaNextpnrTarget = zod_1.z.object({
|
|
|
56
60
|
arguments: schemaValueListTarget.optional(),
|
|
57
61
|
options: schemaNextpnrOptions.optional()
|
|
58
62
|
});
|
|
63
|
+
const schemaFlasherOptions = zod_1.z.object({
|
|
64
|
+
board: zod_1.z.string().optional()
|
|
65
|
+
});
|
|
66
|
+
const schemaFlasher = zod_1.z.object({
|
|
67
|
+
packerArguments: schemaValueList.optional(),
|
|
68
|
+
flasherArguments: schemaValueList.optional(),
|
|
69
|
+
options: schemaFlasherOptions.optional()
|
|
70
|
+
});
|
|
71
|
+
const schemaFlasherTarget = zod_1.z.object({
|
|
72
|
+
packerArguments: schemaValueListTarget.optional(),
|
|
73
|
+
flasherArguments: schemaValueListTarget.optional(),
|
|
74
|
+
options: schemaFlasherOptions.optional()
|
|
75
|
+
});
|
|
59
76
|
const schemaIVerilogOptions = zod_1.z.object({
|
|
60
77
|
testbenchFile: zod_1.z.string().optional()
|
|
61
78
|
});
|
|
@@ -67,17 +84,6 @@ const schemaIVerilogTarget = zod_1.z.object({
|
|
|
67
84
|
arguments: schemaValueListTarget.optional(),
|
|
68
85
|
options: schemaIVerilogOptions.optional()
|
|
69
86
|
});
|
|
70
|
-
const schemaFlasherOptions = zod_1.z.object({
|
|
71
|
-
board: zod_1.z.string().optional()
|
|
72
|
-
});
|
|
73
|
-
const schemaFlasher = zod_1.z.object({
|
|
74
|
-
arguments: schemaValueList.optional(),
|
|
75
|
-
options: schemaFlasherOptions.optional()
|
|
76
|
-
});
|
|
77
|
-
const schemaFlasherTarget = zod_1.z.object({
|
|
78
|
-
arguments: schemaValueListTarget.optional(),
|
|
79
|
-
options: schemaFlasherOptions.optional()
|
|
80
|
-
});
|
|
81
87
|
const schemaCombinedYosys = schemaWorker.merge(schemaYosys);
|
|
82
88
|
const schemaCombinedYosysTarget = schemaWorkerTarget.merge(schemaYosysTarget);
|
|
83
89
|
const schemaCombinedNextpnr = schemaWorker.merge(schemaNextpnr);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/project/configuration.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AAIT,QAAA,cAAc,GAAwB;IAC/C,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,4BAA4B;IAElC,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,UAAU;CACtB,CAAA;AAEY,QAAA,qBAAqB,GAAyB;IACvD,OAAO,EAAE;QACL,sBAAc;KACjB;CACJ,CAAC;AAEF,MAAM,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7B,YAAY,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClD,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACrD,CAAC,CAAC;AACH,MAAM,qBAAqB,GAAG,eAAe,CAAC,MAAM,CAAC;IACjD,UAAU,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACnD,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1B,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE;IACtC,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AACH,MAAM,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChC,UAAU,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,qBAAqB,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChC,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/project/configuration.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,6 @@ import type { FlasherOptions, ProjectConfiguration, WorkerOptions, WorkerStep }
|
|
|
2
2
|
import type { Project } from './project.js';
|
|
3
3
|
export type FlasherStep = WorkerStep;
|
|
4
4
|
export type FlasherWorkerOptions = WorkerOptions<FlasherStep, FlasherOptions>;
|
|
5
|
-
export declare const getFlasherDefaultOptions: (configuration: ProjectConfiguration) => FlasherOptions;
|
|
6
|
-
export declare const getFlasherOptions: (configuration: ProjectConfiguration, targetId: string) => FlasherOptions;
|
|
7
|
-
export declare const generateFlasherWorkerOptions: (configuration: ProjectConfiguration, targetId: string) => FlasherWorkerOptions;
|
|
8
5
|
export declare const parseFlasherArguments: (args: string[]) => string[];
|
|
6
|
+
export declare const getFlasherOptions: (configuration: ProjectConfiguration, targetId: string) => FlasherOptions;
|
|
9
7
|
export declare const getFlasherWorkerOptions: (project: Project, targetId: string) => FlasherWorkerOptions;
|
package/dist/project/flasher.js
CHANGED
|
@@ -1,80 +1,76 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getFlasherWorkerOptions = exports.
|
|
3
|
+
exports.getFlasherWorkerOptions = exports.getFlasherOptions = exports.parseFlasherArguments = void 0;
|
|
4
4
|
const string_args_parser_1 = require("string-args-parser");
|
|
5
5
|
const target_js_1 = require("./target.js");
|
|
6
6
|
const devices_js_1 = require("./devices.js");
|
|
7
7
|
const DEFAULT_OPTIONS = {
|
|
8
8
|
board: undefined,
|
|
9
9
|
};
|
|
10
|
-
const
|
|
11
|
-
exports.
|
|
10
|
+
const parseFlasherArguments = (args) => args.flatMap((arg) => (0, string_args_parser_1.parseArgs)(arg));
|
|
11
|
+
exports.parseFlasherArguments = parseFlasherArguments;
|
|
12
12
|
const getFlasherOptions = (configuration, targetId) => (0, target_js_1.getOptions)(configuration, targetId, 'flasher', DEFAULT_OPTIONS);
|
|
13
13
|
exports.getFlasherOptions = getFlasherOptions;
|
|
14
|
-
const
|
|
14
|
+
const getFlasherWorkerOptions = (project, targetId) => {
|
|
15
|
+
const configuration = project.getConfiguration();
|
|
15
16
|
const target = (0, target_js_1.getTarget)(configuration, targetId);
|
|
16
17
|
const options = (0, exports.getFlasherOptions)(configuration, targetId);
|
|
17
18
|
const vendor = devices_js_1.VENDORS[target.vendor];
|
|
18
19
|
const family = vendor.families[target.family];
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
const
|
|
20
|
+
const generatedInputFiles = [];
|
|
21
|
+
const generatedOutputFiles = [];
|
|
22
|
+
let packerTool;
|
|
23
|
+
const generatedPackerArgs = [];
|
|
24
|
+
const generatedFlasherArgs = [];
|
|
23
25
|
if (options.board) {
|
|
24
|
-
|
|
26
|
+
generatedFlasherArgs.push('-b', options.board);
|
|
25
27
|
}
|
|
26
28
|
switch (family.architecture) {
|
|
27
29
|
case 'ecp5': {
|
|
28
30
|
const bitstreamFile = (0, target_js_1.getTargetFile)(target, `${family.architecture}.config`);
|
|
29
|
-
|
|
31
|
+
generatedInputFiles.push(bitstreamFile);
|
|
30
32
|
const packedFile = (0, target_js_1.getTargetFile)(target, `${family.architecture}.bit`);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
generatedOutputFiles.push(packedFile);
|
|
34
|
+
packerTool = 'ecppack';
|
|
35
|
+
generatedPackerArgs.push(bitstreamFile, packedFile);
|
|
36
|
+
generatedFlasherArgs.push(packedFile);
|
|
34
37
|
break;
|
|
35
38
|
}
|
|
36
39
|
case 'ice40': {
|
|
37
40
|
const bitstreamFile = (0, target_js_1.getTargetFile)(target, `${family.architecture}.asc`);
|
|
38
|
-
|
|
41
|
+
generatedInputFiles.push(bitstreamFile);
|
|
39
42
|
const packedFile = (0, target_js_1.getTargetFile)(target, `${family.architecture}.bin`);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
+
generatedOutputFiles.push(packedFile);
|
|
44
|
+
packerTool = 'icepack';
|
|
45
|
+
generatedPackerArgs.push(bitstreamFile, packedFile);
|
|
46
|
+
generatedFlasherArgs.push(packedFile);
|
|
43
47
|
break;
|
|
44
48
|
}
|
|
45
49
|
default: {
|
|
46
50
|
throw new Error(`Packing not supported for architecture "${family.architecture}"`);
|
|
47
51
|
}
|
|
48
52
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
target,
|
|
54
|
-
options,
|
|
55
|
-
steps
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
exports.generateFlasherWorkerOptions = generateFlasherWorkerOptions;
|
|
59
|
-
const parseFlasherArguments = (args) => args.flatMap((arg) => (0, string_args_parser_1.parseArgs)(arg));
|
|
60
|
-
exports.parseFlasherArguments = parseFlasherArguments;
|
|
61
|
-
const getFlasherWorkerOptions = (project, targetId) => {
|
|
62
|
-
const generated = (0, exports.generateFlasherWorkerOptions)(project.getConfiguration(), targetId);
|
|
63
|
-
const inputFiles = (0, target_js_1.getCombined)(project.getConfiguration(), targetId, 'flasher', 'inputFiles', generated.inputFiles).filter((f) => !!f);
|
|
64
|
-
const outputFiles = (0, target_js_1.getCombined)(project.getConfiguration(), targetId, 'flasher', 'outputFiles', generated.outputFiles).filter((f) => !!f);
|
|
65
|
-
const target = generated.target;
|
|
66
|
-
const options = generated.options;
|
|
67
|
-
const steps = generated.steps.map((step) => {
|
|
68
|
-
const tool = step.tool;
|
|
69
|
-
const args = (0, target_js_1.getCombined)(project.getConfiguration(), targetId, 'flasher', 'arguments', step.arguments, exports.parseFlasherArguments);
|
|
70
|
-
return { tool, arguments: args };
|
|
71
|
-
});
|
|
53
|
+
const inputFiles = (0, target_js_1.getCombined)(configuration, targetId, 'flasher', 'inputFiles', generatedInputFiles).filter((f) => !!f);
|
|
54
|
+
const outputFiles = (0, target_js_1.getCombined)(configuration, targetId, 'flasher', 'outputFiles', generatedOutputFiles).filter((f) => !!f);
|
|
55
|
+
const packerArgs = (0, target_js_1.getCombined)(configuration, targetId, 'flasher', 'packerArguments', generatedPackerArgs, exports.parseFlasherArguments);
|
|
56
|
+
const flasherArgs = (0, target_js_1.getCombined)(configuration, targetId, 'flasher', 'flasherArguments', generatedFlasherArgs, exports.parseFlasherArguments);
|
|
72
57
|
return {
|
|
73
58
|
inputFiles,
|
|
74
59
|
outputFiles,
|
|
75
60
|
target,
|
|
76
61
|
options,
|
|
77
|
-
steps
|
|
62
|
+
steps: [
|
|
63
|
+
{
|
|
64
|
+
id: 'pack',
|
|
65
|
+
tool: packerTool,
|
|
66
|
+
arguments: packerArgs
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
id: 'flash',
|
|
70
|
+
tool: 'openFPGALoader',
|
|
71
|
+
arguments: flasherArgs
|
|
72
|
+
}
|
|
73
|
+
]
|
|
78
74
|
};
|
|
79
75
|
};
|
|
80
76
|
exports.getFlasherWorkerOptions = getFlasherWorkerOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flasher.js","sourceRoot":"","sources":["../../src/project/flasher.ts"],"names":[],"mappings":";;;AAAA,2DAA6C;AAI7C,
|
|
1
|
+
{"version":3,"file":"flasher.js","sourceRoot":"","sources":["../../src/project/flasher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import type { IVerilogOptions, ProjectConfiguration, WorkerOptions, WorkerStep } from './configuration.js';
|
|
2
|
-
import type { Project
|
|
2
|
+
import type { Project } from './project.js';
|
|
3
3
|
export type IVerilogStep = WorkerStep;
|
|
4
4
|
export type IVerilogWorkerOptions = WorkerOptions<IVerilogStep, IVerilogOptions>;
|
|
5
|
-
export declare const getIVerilogDefaultOptions: (configuration: ProjectConfiguration) => IVerilogOptions;
|
|
6
|
-
export declare const getIVerilogOptions: (configuration: ProjectConfiguration, targetId: string) => IVerilogOptions;
|
|
7
|
-
export declare const generateIVerilogWorkerOptions: (configuration: ProjectConfiguration, projectInputFiles: ProjectInputFile[], targetId: string) => IVerilogWorkerOptions;
|
|
8
5
|
export declare const parseIVerilogArguments: (args: string[]) => string[];
|
|
6
|
+
export declare const getIVerilogOptions: (configuration: ProjectConfiguration, targetId: string) => IVerilogOptions;
|
|
9
7
|
export declare const getIVerilogWorkerOptions: (project: Project, targetId: string) => IVerilogWorkerOptions;
|
package/dist/project/iverilog.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getIVerilogWorkerOptions = exports.
|
|
6
|
+
exports.getIVerilogWorkerOptions = exports.getIVerilogOptions = exports.parseIVerilogArguments = void 0;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const string_args_parser_1 = require("string-args-parser");
|
|
9
9
|
const util_js_1 = require("../util.js");
|
|
@@ -11,62 +11,54 @@ const target_js_1 = require("./target.js");
|
|
|
11
11
|
const DEFAULT_OPTIONS = {
|
|
12
12
|
testbenchFile: undefined
|
|
13
13
|
};
|
|
14
|
-
const
|
|
15
|
-
exports.
|
|
14
|
+
const parseIVerilogArguments = (args) => args.flatMap((arg) => (0, string_args_parser_1.parseArgs)(arg));
|
|
15
|
+
exports.parseIVerilogArguments = parseIVerilogArguments;
|
|
16
16
|
const getIVerilogOptions = (configuration, targetId) => (0, target_js_1.getOptions)(configuration, targetId, 'iverilog', DEFAULT_OPTIONS);
|
|
17
17
|
exports.getIVerilogOptions = getIVerilogOptions;
|
|
18
|
-
const
|
|
18
|
+
const getIVerilogWorkerOptions = (project, targetId) => {
|
|
19
|
+
const configuration = project.getConfiguration();
|
|
19
20
|
const target = (0, target_js_1.getTarget)(configuration, targetId);
|
|
20
21
|
const options = (0, exports.getIVerilogOptions)(configuration, targetId);
|
|
21
|
-
|
|
22
|
-
const designFiles =
|
|
22
|
+
// Input files
|
|
23
|
+
const designFiles = project.getInputFiles().filter((inputFile) => inputFile.type === 'design' && util_js_1.FILE_EXTENSIONS_VERILOG.includes(path_1.default.extname(inputFile.path).substring(1))).map(file => file.path);
|
|
23
24
|
let testbenchFile = options.testbenchFile;
|
|
24
25
|
if (!testbenchFile) {
|
|
25
26
|
// Auto-select from testbench input files
|
|
26
|
-
const allTestbenches =
|
|
27
|
+
const allTestbenches = project.getInputFiles().filter((file) => file.type === 'testbench');
|
|
27
28
|
if (allTestbenches.length === 0)
|
|
28
29
|
throw new Error('Could not auto-select testbench file: no input files marked as such');
|
|
29
30
|
testbenchFile = allTestbenches[0].path;
|
|
30
31
|
}
|
|
31
|
-
const
|
|
32
|
+
const generatedInputFiles = designFiles.concat([testbenchFile]);
|
|
33
|
+
const inputFiles = (0, target_js_1.getCombined)(configuration, targetId, 'iverilog', 'inputFiles', generatedInputFiles).filter((f) => !!f);
|
|
34
|
+
// Output files
|
|
32
35
|
const compiledFile = (0, target_js_1.getTargetFile)(target, 'simulator.vvp');
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
{ tool: 'vvp', arguments: [compiledFile] }
|
|
36
|
+
const generatedOutputFiles = [compiledFile, `${path_1.default.parse(testbenchFile).name}.vcd`];
|
|
37
|
+
const outputFiles = (0, target_js_1.getCombined)(configuration, targetId, 'iverilog', 'outputFiles', generatedOutputFiles).filter((f) => !!f);
|
|
38
|
+
// Args
|
|
39
|
+
const generatedCompileArgs = [
|
|
40
|
+
'-o', compiledFile,
|
|
41
|
+
...designFiles,
|
|
42
|
+
testbenchFile,
|
|
41
43
|
];
|
|
44
|
+
const compileArgs = (0, target_js_1.getCombined)(configuration, targetId, 'iverilog', 'arguments', generatedCompileArgs, exports.parseIVerilogArguments);
|
|
42
45
|
return {
|
|
43
46
|
inputFiles,
|
|
44
47
|
outputFiles,
|
|
45
48
|
target,
|
|
46
49
|
options,
|
|
47
|
-
steps
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
const steps = generated.steps.map((step) => {
|
|
60
|
-
const tool = step.tool;
|
|
61
|
-
const args = (0, target_js_1.getCombined)(project.getConfiguration(), targetId, 'iverilog', 'arguments', step.arguments, exports.parseIVerilogArguments);
|
|
62
|
-
return { tool, arguments: args };
|
|
63
|
-
});
|
|
64
|
-
return {
|
|
65
|
-
inputFiles,
|
|
66
|
-
outputFiles,
|
|
67
|
-
target,
|
|
68
|
-
options,
|
|
69
|
-
steps
|
|
50
|
+
steps: [
|
|
51
|
+
{
|
|
52
|
+
id: 'iverilog',
|
|
53
|
+
tool: 'iverilog',
|
|
54
|
+
arguments: compileArgs
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
id: 'vvp',
|
|
58
|
+
tool: 'vvp',
|
|
59
|
+
arguments: [compiledFile]
|
|
60
|
+
}
|
|
61
|
+
]
|
|
70
62
|
};
|
|
71
63
|
};
|
|
72
64
|
exports.getIVerilogWorkerOptions = getIVerilogWorkerOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iverilog.js","sourceRoot":"","sources":["../../src/project/iverilog.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,2DAA6C;AAE7C,wCAAmD;AAInD,
|
|
1
|
+
{"version":3,"file":"iverilog.js","sourceRoot":"","sources":["../../src/project/iverilog.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,6 @@ import type { NextpnrOptions, ProjectConfiguration, WorkerOptions, WorkerStep }
|
|
|
2
2
|
import type { Project } from './project.js';
|
|
3
3
|
export type NextpnrStep = WorkerStep;
|
|
4
4
|
export type NextpnrWorkerOptions = WorkerOptions<NextpnrStep, NextpnrOptions>;
|
|
5
|
-
export declare const getNextpnrDefaultOptions: (configuration: ProjectConfiguration) => NextpnrOptions;
|
|
6
|
-
export declare const getNextpnrOptions: (configuration: ProjectConfiguration, targetId: string) => NextpnrOptions;
|
|
7
|
-
export declare const generateNextpnrWorkerOptions: (configuration: ProjectConfiguration, targetId: string) => NextpnrWorkerOptions;
|
|
8
5
|
export declare const parseNextpnrArguments: (args: string[]) => string[];
|
|
6
|
+
export declare const getNextpnrOptions: (configuration: ProjectConfiguration, targetId: string) => NextpnrOptions;
|
|
9
7
|
export declare const getNextpnrWorkerOptions: (project: Project, targetId: string) => NextpnrWorkerOptions;
|