-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMult.v
More file actions
475 lines (474 loc) · 10.5 KB
/
Copy pathMult.v
File metadata and controls
475 lines (474 loc) · 10.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
/*
* Generated by Digital. Don't modify this file!
* Any changes will be lost if this file is regenerated.
*/
module Mult (
input [7:0] A,
input [7:0] B,
output [15:0] out
);
wire s0;
wire s1;
wire s2;
wire s3;
wire s4;
wire s5;
wire s6;
wire s7;
wire s8;
wire s9;
wire s10;
wire s11;
wire s12;
wire s13;
wire s14;
wire s15;
wire s16;
wire s17;
wire s18;
wire s19;
wire s20;
wire s21;
wire s22;
wire s23;
wire s24;
wire s25;
wire s26;
wire s27;
wire s28;
wire s29;
wire s30;
wire s31;
wire s32;
wire s33;
wire s34;
wire s35;
wire s36;
wire s37;
wire s38;
wire s39;
wire s40;
wire s41;
wire s42;
wire s43;
wire s44;
wire s45;
wire s46;
wire s47;
wire s48;
wire s49;
wire s50;
wire s51;
wire s52;
wire s53;
wire s54;
wire s55;
wire s56;
wire s57;
wire s58;
wire s59;
wire s60;
wire s61;
wire s62;
wire s63;
wire s64;
wire s65;
wire s66;
wire s67;
wire s68;
wire s69;
wire s70;
wire s71;
wire s72;
wire s73;
wire s74;
wire s75;
wire s76;
wire s77;
wire s78;
wire s79;
wire s80;
wire s81;
wire s82;
wire s83;
wire s84;
wire s85;
wire s86;
wire s87;
wire s88;
wire s89;
wire s90;
wire s91;
wire s92;
wire s93;
wire s94;
wire s95;
wire s96;
wire s97;
wire s98;
wire s99;
wire s100;
wire s101;
wire s102;
wire s103;
wire s104;
wire s105;
wire s106;
wire s107;
wire s108;
wire s109;
wire s110;
wire s111;
wire s112;
wire s113;
wire s114;
wire s115;
wire s116;
wire s117;
wire s118;
wire s119;
wire s120;
wire s121;
wire s122;
wire s123;
wire s124;
wire s125;
wire s126;
wire s127;
wire s128;
wire s129;
wire s130;
wire s131;
wire s132;
wire s133;
wire s134;
wire s135;
wire s136;
wire s137;
wire s138;
wire s139;
wire s140;
wire s141;
wire s142;
wire s143;
wire s144;
wire s145;
wire s146;
wire s147;
wire s148;
wire s149;
wire s150;
wire s151;
wire s152;
wire s153;
wire s154;
wire s155;
wire s156;
wire s157;
wire s158;
wire s159;
wire s160;
wire s161;
wire s162;
wire s163;
wire s164;
wire s165;
wire s166;
wire s167;
wire s168;
wire s169;
wire s170;
wire s171;
wire s172;
wire s173;
wire s174;
wire s175;
wire s176;
wire s177;
wire s178;
wire s179;
wire s180;
wire s181;
wire s182;
wire s183;
wire s184;
wire s185;
wire s186;
wire s187;
wire s188;
wire s189;
wire s190;
wire s191;
wire s192;
wire s193;
wire s194;
wire s195;
wire s196;
wire s197;
wire s198;
wire s199;
wire s200;
wire s201;
wire s202;
wire s203;
wire s204;
wire s205;
wire s206;
wire s207;
wire s208;
wire s209;
wire s210;
wire s211;
wire s212;
wire s213;
wire s214;
wire s215;
wire s216;
wire s217;
wire s218;
wire s219;
wire s220;
wire s221;
wire s222;
wire s223;
assign s0 = A[0];
assign s1 = A[1];
assign s2 = A[2];
assign s3 = A[3];
assign s4 = A[4];
assign s5 = A[5];
assign s6 = A[6];
assign s7 = A[7];
assign s8 = B[0];
assign s9 = B[1];
assign s10 = B[2];
assign s11 = B[3];
assign s12 = B[4];
assign s13 = B[5];
assign s14 = B[6];
assign s15 = B[7];
assign s16 = (s8 & s1);
assign s17 = (s9 & s0);
assign s18 = (s8 & s2);
assign s19 = (s9 & s1);
assign s20 = (s10 & s0);
assign s21 = (s8 & s3);
assign s22 = (s9 & s2);
assign s23 = (s10 & s1);
assign s24 = (s11 & s0);
assign s25 = (s8 & s4);
assign s26 = (s9 & s3);
assign s27 = (s10 & s2);
assign s28 = (s11 & s1);
assign s29 = (s12 & s0);
assign s30 = (s9 & s4);
assign s31 = (s10 & s3);
assign s32 = (s11 & s2);
assign s33 = (s12 & s1);
assign s34 = (s8 & s5);
assign s35 = (s13 & s0);
assign s36 = (s9 & s5);
assign s37 = (s10 & s4);
assign s38 = (s11 & s3);
assign s39 = (s12 & s2);
assign s40 = (s8 & s6);
assign s41 = (s13 & s1);
assign s42 = (s14 & s0);
assign s43 = (s9 & s6);
assign s44 = (s10 & s5);
assign s45 = (s11 & s4);
assign s46 = (s12 & s3);
assign s47 = (s8 & s7);
assign s48 = (s13 & s2);
assign s49 = (s14 & s1);
assign s50 = (s15 & s0);
assign s51 = (s10 & s6);
assign s52 = (s11 & s5);
assign s53 = (s12 & s4);
assign s54 = (s13 & s3);
assign s55 = (s9 & s7);
assign s56 = (s14 & s2);
assign s57 = (s15 & s1);
assign s58 = (s11 & s6);
assign s59 = (s12 & s5);
assign s60 = (s13 & s4);
assign s61 = (s14 & s3);
assign s62 = (s10 & s7);
assign s63 = (s15 & s2);
assign s64 = (s12 & s6);
assign s65 = (s13 & s5);
assign s66 = (s14 & s4);
assign s67 = (s15 & s3);
assign s68 = (s11 & s7);
assign s69 = (s13 & s6);
assign s70 = (s14 & s4);
assign s71 = (s15 & s3);
assign s72 = (s12 & s7);
assign s73 = (s13 & s7);
assign s74 = (s14 & s6);
assign s75 = (s15 & s5);
assign s76 = (s14 & s7);
assign s77 = (s15 & s6);
assign s78 = (s15 & s7);
assign s79 = (s17 & s16);
assign s80 = (s19 ^ s18);
assign s84 = (s22 ^ s21);
assign s91 = (s26 ^ s25);
assign s101 = (s30 ^ s34);
assign s114 = (s36 ^ s40);
assign s130 = (s43 ^ s47);
assign s149 = (s58 ^ s62);
assign s159 = (s51 ^ s55);
assign s185 = (s64 ^ s68);
assign s197 = (s69 ^ s72);
assign s209 = (s74 ^ s73);
assign s217 = (s77 ^ s76);
assign s81 = (s20 ^ s80);
assign s82 = ((s20 & s80) | (s19 & s18));
assign s85 = (s23 ^ s84);
assign s86 = ((s23 & s84) | (s22 & s21));
assign s92 = (s27 ^ s91);
assign s93 = ((s27 & s91) | (s26 & s25));
assign s102 = (s31 ^ s101);
assign s103 = ((s31 & s101) | (s30 & s34));
assign s115 = (s37 ^ s114);
assign s116 = ((s37 & s114) | (s36 & s40));
assign s131 = (s44 ^ s130);
assign s132 = ((s44 & s130) | (s43 & s47));
assign s150 = (s59 ^ s149);
assign s151 = ((s59 & s149) | (s58 & s62));
assign s160 = (s52 ^ s159);
assign s156 = ((s52 & s159) | (s51 & s55));
assign s186 = (s65 ^ s185);
assign s187 = ((s65 & s185) | (s64 & s68));
assign s198 = (s70 ^ s197);
assign s199 = ((s70 & s197) | (s69 & s72));
assign s210 = (s75 ^ s209);
assign s211 = ((s75 & s209) | (s74 & s73));
assign s83 = (s79 & s81);
assign s87 = (s24 ^ s85);
assign s94 = (s28 ^ s92);
assign s104 = (s32 ^ s102);
assign s117 = (s38 ^ s115);
assign s133 = (s45 ^ s131);
assign s152 = (s60 ^ s150);
assign s161 = (s53 ^ s160);
assign s188 = (s66 ^ s186);
assign s200 = (s71 ^ s198);
assign s212 = (s199 ^ s210);
assign s218 = (s211 ^ s217);
assign s219 = ((s211 & s217) | (s77 & s76));
assign s88 = (s82 ^ s87);
assign s89 = ((s82 & s87) | (s24 & s85));
assign s95 = (s29 ^ s94);
assign s96 = ((s29 & s94) | (s28 & s92));
assign s105 = (s33 ^ s104);
assign s106 = ((s33 & s104) | (s32 & s102));
assign s118 = (s39 ^ s117);
assign s119 = ((s39 & s117) | (s38 & s115));
assign s134 = (s46 ^ s133);
assign s135 = ((s46 & s133) | (s45 & s131));
assign s153 = (s61 ^ s152);
assign s154 = ((s61 & s152) | (s60 & s150));
assign s162 = (s54 ^ s161);
assign s163 = ((s54 & s161) | (s53 & s160));
assign s189 = (s67 ^ s188);
assign s190 = ((s67 & s188) | (s66 & s186));
assign s201 = (s187 ^ s200);
assign s202 = ((s187 & s200) | (s71 & s198));
assign s222 = (s219 ^ s78);
assign s90 = (s83 & s88);
assign s97 = (s86 ^ s95);
assign s107 = (s35 ^ s105);
assign s120 = (s41 ^ s118);
assign s136 = (s48 ^ s134);
assign s155 = (s63 ^ s153);
assign s164 = (s56 ^ s162);
assign s191 = (s151 ^ s189);
assign s203 = (s190 ^ s201);
assign s213 = (s202 ^ s212);
assign s214 = ((s202 & s212) | (s199 & s210));
assign s98 = (s89 ^ s97);
assign s99 = ((s89 & s97) | (s86 & s95));
assign s108 = (s93 ^ s107);
assign s109 = ((s93 & s107) | (s35 & s105));
assign s121 = (s42 ^ s120);
assign s122 = ((s42 & s120) | (s41 & s118));
assign s137 = (s49 ^ s136);
assign s138 = ((s49 & s136) | (s48 & s134));
assign s157 = (s156 ^ s155);
assign s158 = ((s156 & s155) | (s63 & s153));
assign s165 = (s57 ^ s164);
assign s166 = ((s57 & s164) | (s56 & s162));
assign s192 = (s154 ^ s191);
assign s193 = ((s154 & s191) | (s151 & s189));
assign s220 = (s214 ^ s218);
assign s100 = (s90 & s98);
assign s110 = (s96 ^ s108);
assign s123 = (s103 ^ s121);
assign s139 = (s50 ^ s137);
assign s167 = (s132 ^ s165);
assign s177 = (s163 ^ s157);
assign s194 = (s158 ^ s192);
assign s204 = (s193 ^ s203);
assign s205 = ((s193 & s203) | (s190 & s201));
assign s111 = (s99 ^ s110);
assign s112 = ((s99 & s110) | (s96 & s108));
assign s124 = (s106 ^ s123);
assign s125 = ((s106 & s123) | (s103 & s121));
assign s140 = (s116 ^ s139);
assign s141 = ((s116 & s139) | (s50 & s137));
assign s168 = (s135 ^ s167);
assign s169 = ((s135 & s167) | (s132 & s165));
assign s178 = (s166 ^ s177);
assign s179 = ((s166 & s177) | (s163 & s157));
assign s215 = (s205 ^ s213);
assign s113 = (s100 & s111);
assign s126 = (s109 ^ s124);
assign s142 = (s119 ^ s140);
assign s170 = (s138 ^ s168);
assign s180 = (s169 ^ s178);
assign s195 = (s179 ^ s194);
assign s196 = ((s179 & s194) | (s158 & s192));
assign s127 = (s112 ^ s126);
assign s128 = ((s112 & s126) | (s109 & s124));
assign s143 = (s122 ^ s142);
assign s144 = ((s122 & s142) | (s119 & s140));
assign s171 = (s141 ^ s170);
assign s172 = ((s141 & s170) | (s138 & s168));
assign s206 = (s196 ^ s204);
assign s129 = (s113 & s127);
assign s145 = (s125 ^ s143);
assign s173 = (s144 ^ s171);
assign s181 = (s172 ^ s180);
assign s182 = ((s172 & s180) | (s169 & s178));
assign s146 = (s128 ^ s145);
assign s147 = ((s128 & s145) | (s125 & s143));
assign s223 = (s182 ^ s195);
assign s148 = (s129 & s146);
assign s174 = (s147 ^ s173);
assign s175 = ((s147 & s173) | (s144 & s171));
assign s176 = (s148 & s174);
assign s183 = (s175 ^ s181);
assign s184 = ((s176 & s183) | (s175 & s181));
assign s207 = ((s184 & s223) | (s182 & s195));
assign s208 = ((s207 & s206) | (s196 & s204));
assign s216 = ((s208 & s215) | (s205 & s213));
assign s221 = ((s216 & s220) | (s214 & s218));
assign out[0] = (s8 & s0);
assign out[1] = (s17 ^ s16);
assign out[2] = (s79 ^ s81);
assign out[3] = (s83 ^ s88);
assign out[4] = (s90 ^ s98);
assign out[5] = (s100 ^ s111);
assign out[6] = (s113 ^ s127);
assign out[7] = (s129 ^ s146);
assign out[8] = (s148 ^ s174);
assign out[9] = (s176 ^ s183);
assign out[10] = (s184 ^ s223);
assign out[11] = (s207 ^ s206);
assign out[12] = (s208 ^ s215);
assign out[13] = (s216 ^ s220);
assign out[14] = (s221 ^ s222);
assign out[15] = ((s221 & s222) | (s219 & s78));
endmodule