-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Expand file tree
/
Copy pathcells_bb_ecp5.v
More file actions
2032 lines (1996 loc) · 60.7 KB
/
Copy pathcells_bb_ecp5.v
File metadata and controls
2032 lines (1996 loc) · 60.7 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
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// Created by cells_xtra.py from Lattice models
(* blackbox *) (* keep *)
module GSR(GSR);
input GSR;
endmodule
(* blackbox *)
module PUR(PUR);
parameter RST_PULSE = 1;
input PUR;
endmodule
(* blackbox *) (* keep *)
module SGSR(GSR, CLK);
input GSR;
input CLK;
endmodule
(* blackbox *)
module PDPW16KD(DI35, DI34, DI33, DI32, DI31, DI30, DI29, DI28, DI27, DI26, DI25, DI24, DI23, DI22, DI21, DI20, DI19, DI18, DI17, DI16, DI15
, DI14, DI13, DI12, DI11, DI10, DI9, DI8, DI7, DI6, DI5, DI4, DI3, DI2, DI1, DI0, ADW8, ADW7, ADW6, ADW5, ADW4, ADW3
, ADW2, ADW1, ADW0, BE3, BE2, BE1, BE0, CEW, CLKW, CSW2, CSW1, CSW0, ADR13, ADR12, ADR11, ADR10, ADR9, ADR8, ADR7, ADR6, ADR5
, ADR4, ADR3, ADR2, ADR1, ADR0, CER, OCER, CLKR, CSR2, CSR1, CSR0, RST, DO35, DO34, DO33, DO32, DO31, DO30, DO29, DO28, DO27
, DO26, DO25, DO24, DO23, DO22, DO21, DO20, DO19, DO18, DO17, DO16, DO15, DO14, DO13, DO12, DO11, DO10, DO9, DO8, DO7, DO6
, DO5, DO4, DO3, DO2, DO1, DO0);
parameter CLKRMUX = "CLKR";
parameter CLKWMUX = "CLKW";
parameter DATA_WIDTH_W = 36;
parameter DATA_WIDTH_R = 36;
parameter GSR = "ENABLED";
parameter REGMODE = "NOREG";
parameter RESETMODE = "SYNC";
parameter ASYNC_RESET_RELEASE = "SYNC";
parameter CSDECODE_W = "0b000";
parameter CSDECODE_R = "0b000";
parameter INITVAL_00 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_01 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_02 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_03 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_04 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_05 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_06 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_07 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_08 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_09 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0A = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0B = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0C = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0D = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0E = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_0F = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_10 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_11 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_12 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_13 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_14 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_15 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_16 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_17 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_18 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_19 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1A = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1B = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1C = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1D = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1E = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_1F = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_20 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_21 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_22 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_23 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_24 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_25 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_26 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_27 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_28 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_29 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2A = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2B = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2C = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2D = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2E = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_2F = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_30 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_31 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_32 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_33 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_34 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_35 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_36 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_37 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_38 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_39 = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3A = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3B = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3C = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3D = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3E = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INITVAL_3F = 320'h00000000000000000000000000000000000000000000000000000000000000000000000000000000;
parameter INIT_DATA = "STATIC";
input DI35;
input DI34;
input DI33;
input DI32;
input DI31;
input DI30;
input DI29;
input DI28;
input DI27;
input DI26;
input DI25;
input DI24;
input DI23;
input DI22;
input DI21;
input DI20;
input DI19;
input DI18;
input DI17;
input DI16;
input DI15;
input DI14;
input DI13;
input DI12;
input DI11;
input DI10;
input DI9;
input DI8;
input DI7;
input DI6;
input DI5;
input DI4;
input DI3;
input DI2;
input DI1;
input DI0;
input ADW8;
input ADW7;
input ADW6;
input ADW5;
input ADW4;
input ADW3;
input ADW2;
input ADW1;
input ADW0;
input BE3;
input BE2;
input BE1;
input BE0;
input CEW;
input CLKW;
input CSW2;
input CSW1;
input CSW0;
input ADR13;
input ADR12;
input ADR11;
input ADR10;
input ADR9;
input ADR8;
input ADR7;
input ADR6;
input ADR5;
input ADR4;
input ADR3;
input ADR2;
input ADR1;
input ADR0;
input CER;
input OCER;
input CLKR;
input CSR2;
input CSR1;
input CSR0;
input RST;
output DO35;
output DO34;
output DO33;
output DO32;
output DO31;
output DO30;
output DO29;
output DO28;
output DO27;
output DO26;
output DO25;
output DO24;
output DO23;
output DO22;
output DO21;
output DO20;
output DO19;
output DO18;
output DO17;
output DO16;
output DO15;
output DO14;
output DO13;
output DO12;
output DO11;
output DO10;
output DO9;
output DO8;
output DO7;
output DO6;
output DO5;
output DO4;
output DO3;
output DO2;
output DO1;
output DO0;
endmodule
(* blackbox *)
module MULT18X18D(A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, A4, A3, A2, A1, A0, B17, B16, B15
, B14, B13, B12, B11, B10, B9, B8, B7, B6, B5, B4, B3, B2, B1, B0, C17, C16, C15, C14, C13, C12
, C11, C10, C9, C8, C7, C6, C5, C4, C3, C2, C1, C0, SIGNEDA, SIGNEDB, SOURCEA, SOURCEB, CLK3, CLK2, CLK1, CLK0, CE3
, CE2, CE1, CE0, RST3, RST2, RST1, RST0, SRIA17, SRIA16, SRIA15, SRIA14, SRIA13, SRIA12, SRIA11, SRIA10, SRIA9, SRIA8, SRIA7, SRIA6, SRIA5, SRIA4
, SRIA3, SRIA2, SRIA1, SRIA0, SRIB17, SRIB16, SRIB15, SRIB14, SRIB13, SRIB12, SRIB11, SRIB10, SRIB9, SRIB8, SRIB7, SRIB6, SRIB5, SRIB4, SRIB3, SRIB2, SRIB1
, SRIB0, SROA17, SROA16, SROA15, SROA14, SROA13, SROA12, SROA11, SROA10, SROA9, SROA8, SROA7, SROA6, SROA5, SROA4, SROA3, SROA2, SROA1, SROA0, SROB17, SROB16
, SROB15, SROB14, SROB13, SROB12, SROB11, SROB10, SROB9, SROB8, SROB7, SROB6, SROB5, SROB4, SROB3, SROB2, SROB1, SROB0, ROA17, ROA16, ROA15, ROA14, ROA13
, ROA12, ROA11, ROA10, ROA9, ROA8, ROA7, ROA6, ROA5, ROA4, ROA3, ROA2, ROA1, ROA0, ROB17, ROB16, ROB15, ROB14, ROB13, ROB12, ROB11, ROB10
, ROB9, ROB8, ROB7, ROB6, ROB5, ROB4, ROB3, ROB2, ROB1, ROB0, ROC17, ROC16, ROC15, ROC14, ROC13, ROC12, ROC11, ROC10, ROC9, ROC8, ROC7
, ROC6, ROC5, ROC4, ROC3, ROC2, ROC1, ROC0, P35, P34, P33, P32, P31, P30, P29, P28, P27, P26, P25, P24, P23, P22
, P21, P20, P19, P18, P17, P16, P15, P14, P13, P12, P11, P10, P9, P8, P7, P6, P5, P4, P3, P2, P1
, P0, SIGNEDP);
parameter REG_INPUTA_CLK = "NONE";
parameter REG_INPUTA_CE = "CE0";
parameter REG_INPUTA_RST = "RST0";
parameter REG_INPUTB_CLK = "NONE";
parameter REG_INPUTB_CE = "CE0";
parameter REG_INPUTB_RST = "RST0";
parameter REG_INPUTC_CLK = "NONE";
parameter REG_INPUTC_CE = "CE0";
parameter REG_INPUTC_RST = "RST0";
parameter REG_PIPELINE_CLK = "NONE";
parameter REG_PIPELINE_CE = "CE0";
parameter REG_PIPELINE_RST = "RST0";
parameter REG_OUTPUT_CLK = "NONE";
parameter REG_OUTPUT_CE = "CE0";
parameter REG_OUTPUT_RST = "RST0";
parameter CLK0_DIV = "ENABLED";
parameter CLK1_DIV = "ENABLED";
parameter CLK2_DIV = "ENABLED";
parameter CLK3_DIV = "ENABLED";
parameter HIGHSPEED_CLK = "NONE";
parameter GSR = "ENABLED";
parameter CAS_MATCH_REG = "FALSE";
parameter SOURCEB_MODE = "B_SHIFT";
parameter MULT_BYPASS = "DISABLED";
parameter RESETMODE = "SYNC";
input A17;
input A16;
input A15;
input A14;
input A13;
input A12;
input A11;
input A10;
input A9;
input A8;
input A7;
input A6;
input A5;
input A4;
input A3;
input A2;
input A1;
input A0;
input B17;
input B16;
input B15;
input B14;
input B13;
input B12;
input B11;
input B10;
input B9;
input B8;
input B7;
input B6;
input B5;
input B4;
input B3;
input B2;
input B1;
input B0;
input C17;
input C16;
input C15;
input C14;
input C13;
input C12;
input C11;
input C10;
input C9;
input C8;
input C7;
input C6;
input C5;
input C4;
input C3;
input C2;
input C1;
input C0;
input SIGNEDA;
input SIGNEDB;
input SOURCEA;
input SOURCEB;
input CLK3;
input CLK2;
input CLK1;
input CLK0;
input CE3;
input CE2;
input CE1;
input CE0;
input RST3;
input RST2;
input RST1;
input RST0;
input SRIA17;
input SRIA16;
input SRIA15;
input SRIA14;
input SRIA13;
input SRIA12;
input SRIA11;
input SRIA10;
input SRIA9;
input SRIA8;
input SRIA7;
input SRIA6;
input SRIA5;
input SRIA4;
input SRIA3;
input SRIA2;
input SRIA1;
input SRIA0;
input SRIB17;
input SRIB16;
input SRIB15;
input SRIB14;
input SRIB13;
input SRIB12;
input SRIB11;
input SRIB10;
input SRIB9;
input SRIB8;
input SRIB7;
input SRIB6;
input SRIB5;
input SRIB4;
input SRIB3;
input SRIB2;
input SRIB1;
input SRIB0;
output SROA17;
output SROA16;
output SROA15;
output SROA14;
output SROA13;
output SROA12;
output SROA11;
output SROA10;
output SROA9;
output SROA8;
output SROA7;
output SROA6;
output SROA5;
output SROA4;
output SROA3;
output SROA2;
output SROA1;
output SROA0;
output SROB17;
output SROB16;
output SROB15;
output SROB14;
output SROB13;
output SROB12;
output SROB11;
output SROB10;
output SROB9;
output SROB8;
output SROB7;
output SROB6;
output SROB5;
output SROB4;
output SROB3;
output SROB2;
output SROB1;
output SROB0;
output ROA17;
output ROA16;
output ROA15;
output ROA14;
output ROA13;
output ROA12;
output ROA11;
output ROA10;
output ROA9;
output ROA8;
output ROA7;
output ROA6;
output ROA5;
output ROA4;
output ROA3;
output ROA2;
output ROA1;
output ROA0;
output ROB17;
output ROB16;
output ROB15;
output ROB14;
output ROB13;
output ROB12;
output ROB11;
output ROB10;
output ROB9;
output ROB8;
output ROB7;
output ROB6;
output ROB5;
output ROB4;
output ROB3;
output ROB2;
output ROB1;
output ROB0;
output ROC17;
output ROC16;
output ROC15;
output ROC14;
output ROC13;
output ROC12;
output ROC11;
output ROC10;
output ROC9;
output ROC8;
output ROC7;
output ROC6;
output ROC5;
output ROC4;
output ROC3;
output ROC2;
output ROC1;
output ROC0;
output P35;
output P34;
output P33;
output P32;
output P31;
output P30;
output P29;
output P28;
output P27;
output P26;
output P25;
output P24;
output P23;
output P22;
output P21;
output P20;
output P19;
output P18;
output P17;
output P16;
output P15;
output P14;
output P13;
output P12;
output P11;
output P10;
output P9;
output P8;
output P7;
output P6;
output P5;
output P4;
output P3;
output P2;
output P1;
output P0;
output SIGNEDP;
endmodule
(* blackbox *)
module ALU54B(CE3, CE2, CE1, CE0, CLK3, CLK2, CLK1, CLK0, RST3, RST2, RST1, RST0, SIGNEDIA, SIGNEDIB, SIGNEDCIN, A35, A34, A33, A32, A31, A30
, A29, A28, A27, A26, A25, A24, A23, A22, A21, A20, A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9
, A8, A7, A6, A5, A4, A3, A2, A1, A0, B35, B34, B33, B32, B31, B30, B29, B28, B27, B26, B25, B24
, B23, B22, B21, B20, B19, B18, B17, B16, B15, B14, B13, B12, B11, B10, B9, B8, B7, B6, B5, B4, B3
, B2, B1, B0, C53, C52, C51, C50, C49, C48, C47, C46, C45, C44, C43, C42, C41, C40, C39, C38, C37, C36
, C35, C34, C33, C32, C31, C30, C29, C28, C27, C26, C25, C24, C23, C22, C21, C20, C19, C18, C17, C16, C15
, C14, C13, C12, C11, C10, C9, C8, C7, C6, C5, C4, C3, C2, C1, C0, CFB53, CFB52, CFB51, CFB50, CFB49, CFB48
, CFB47, CFB46, CFB45, CFB44, CFB43, CFB42, CFB41, CFB40, CFB39, CFB38, CFB37, CFB36, CFB35, CFB34, CFB33, CFB32, CFB31, CFB30, CFB29, CFB28, CFB27
, CFB26, CFB25, CFB24, CFB23, CFB22, CFB21, CFB20, CFB19, CFB18, CFB17, CFB16, CFB15, CFB14, CFB13, CFB12, CFB11, CFB10, CFB9, CFB8, CFB7, CFB6
, CFB5, CFB4, CFB3, CFB2, CFB1, CFB0, MA35, MA34, MA33, MA32, MA31, MA30, MA29, MA28, MA27, MA26, MA25, MA24, MA23, MA22, MA21
, MA20, MA19, MA18, MA17, MA16, MA15, MA14, MA13, MA12, MA11, MA10, MA9, MA8, MA7, MA6, MA5, MA4, MA3, MA2, MA1, MA0
, MB35, MB34, MB33, MB32, MB31, MB30, MB29, MB28, MB27, MB26, MB25, MB24, MB23, MB22, MB21, MB20, MB19, MB18, MB17, MB16, MB15
, MB14, MB13, MB12, MB11, MB10, MB9, MB8, MB7, MB6, MB5, MB4, MB3, MB2, MB1, MB0, CIN53, CIN52, CIN51, CIN50, CIN49, CIN48
, CIN47, CIN46, CIN45, CIN44, CIN43, CIN42, CIN41, CIN40, CIN39, CIN38, CIN37, CIN36, CIN35, CIN34, CIN33, CIN32, CIN31, CIN30, CIN29, CIN28, CIN27
, CIN26, CIN25, CIN24, CIN23, CIN22, CIN21, CIN20, CIN19, CIN18, CIN17, CIN16, CIN15, CIN14, CIN13, CIN12, CIN11, CIN10, CIN9, CIN8, CIN7, CIN6
, CIN5, CIN4, CIN3, CIN2, CIN1, CIN0, OP10, OP9, OP8, OP7, OP6, OP5, OP4, OP3, OP2, OP1, OP0, R53, R52, R51, R50
, R49, R48, R47, R46, R45, R44, R43, R42, R41, R40, R39, R38, R37, R36, R35, R34, R33, R32, R31, R30, R29
, R28, R27, R26, R25, R24, R23, R22, R21, R20, R19, R18, R17, R16, R15, R14, R13, R12, R11, R10, R9, R8
, R7, R6, R5, R4, R3, R2, R1, R0, CO53, CO52, CO51, CO50, CO49, CO48, CO47, CO46, CO45, CO44, CO43, CO42, CO41
, CO40, CO39, CO38, CO37, CO36, CO35, CO34, CO33, CO32, CO31, CO30, CO29, CO28, CO27, CO26, CO25, CO24, CO23, CO22, CO21, CO20
, CO19, CO18, CO17, CO16, CO15, CO14, CO13, CO12, CO11, CO10, CO9, CO8, CO7, CO6, CO5, CO4, CO3, CO2, CO1, CO0, EQZ
, EQZM, EQOM, EQPAT, EQPATB, OVER, UNDER, OVERUNDER, SIGNEDR);
parameter REG_INPUTC0_CLK = "NONE";
parameter REG_INPUTC0_CE = "CE0";
parameter REG_INPUTC0_RST = "RST0";
parameter REG_INPUTC1_CLK = "NONE";
parameter REG_INPUTC1_CE = "CE0";
parameter REG_INPUTC1_RST = "RST0";
parameter REG_OPCODEOP0_0_CLK = "NONE";
parameter REG_OPCODEOP0_0_CE = "CE0";
parameter REG_OPCODEOP0_0_RST = "RST0";
parameter REG_OPCODEOP1_0_CLK = "NONE";
parameter REG_OPCODEOP0_1_CLK = "NONE";
parameter REG_OPCODEOP0_1_CE = "CE0";
parameter REG_OPCODEOP0_1_RST = "RST0";
parameter REG_OPCODEOP1_1_CLK = "NONE";
parameter REG_OPCODEIN_0_CLK = "NONE";
parameter REG_OPCODEIN_0_CE = "CE0";
parameter REG_OPCODEIN_0_RST = "RST0";
parameter REG_OPCODEIN_1_CLK = "NONE";
parameter REG_OPCODEIN_1_CE = "CE0";
parameter REG_OPCODEIN_1_RST = "RST0";
parameter REG_OUTPUT0_CLK = "NONE";
parameter REG_OUTPUT0_CE = "CE0";
parameter REG_OUTPUT0_RST = "RST0";
parameter REG_OUTPUT1_CLK = "NONE";
parameter REG_OUTPUT1_CE = "CE0";
parameter REG_OUTPUT1_RST = "RST0";
parameter REG_FLAG_CLK = "NONE";
parameter REG_FLAG_CE = "CE0";
parameter REG_FLAG_RST = "RST0";
parameter MCPAT_SOURCE = "STATIC";
parameter MASKPAT_SOURCE = "STATIC";
parameter MASK01 = "0x00000000000000";
parameter REG_INPUTCFB_CLK = "NONE";
parameter REG_INPUTCFB_CE = "CE0";
parameter REG_INPUTCFB_RST = "RST0";
parameter CLK0_DIV = "ENABLED";
parameter CLK1_DIV = "ENABLED";
parameter CLK2_DIV = "ENABLED";
parameter CLK3_DIV = "ENABLED";
parameter MCPAT = "0x00000000000000";
parameter MASKPAT = "0x00000000000000";
parameter RNDPAT = "0x00000000000000";
parameter GSR = "ENABLED";
parameter RESETMODE = "SYNC";
parameter MULT9_MODE = "DISABLED";
parameter FORCE_ZERO_BARREL_SHIFT = "DISABLED";
parameter LEGACY = "DISABLED";
input CE3;
input CE2;
input CE1;
input CE0;
input CLK3;
input CLK2;
input CLK1;
input CLK0;
input RST3;
input RST2;
input RST1;
input RST0;
input SIGNEDIA;
input SIGNEDIB;
input SIGNEDCIN;
input A35;
input A34;
input A33;
input A32;
input A31;
input A30;
input A29;
input A28;
input A27;
input A26;
input A25;
input A24;
input A23;
input A22;
input A21;
input A20;
input A19;
input A18;
input A17;
input A16;
input A15;
input A14;
input A13;
input A12;
input A11;
input A10;
input A9;
input A8;
input A7;
input A6;
input A5;
input A4;
input A3;
input A2;
input A1;
input A0;
input B35;
input B34;
input B33;
input B32;
input B31;
input B30;
input B29;
input B28;
input B27;
input B26;
input B25;
input B24;
input B23;
input B22;
input B21;
input B20;
input B19;
input B18;
input B17;
input B16;
input B15;
input B14;
input B13;
input B12;
input B11;
input B10;
input B9;
input B8;
input B7;
input B6;
input B5;
input B4;
input B3;
input B2;
input B1;
input B0;
input C53;
input C52;
input C51;
input C50;
input C49;
input C48;
input C47;
input C46;
input C45;
input C44;
input C43;
input C42;
input C41;
input C40;
input C39;
input C38;
input C37;
input C36;
input C35;
input C34;
input C33;
input C32;
input C31;
input C30;
input C29;
input C28;
input C27;
input C26;
input C25;
input C24;
input C23;
input C22;
input C21;
input C20;
input C19;
input C18;
input C17;
input C16;
input C15;
input C14;
input C13;
input C12;
input C11;
input C10;
input C9;
input C8;
input C7;
input C6;
input C5;
input C4;
input C3;
input C2;
input C1;
input C0;
input CFB53;
input CFB52;
input CFB51;
input CFB50;
input CFB49;
input CFB48;
input CFB47;
input CFB46;
input CFB45;
input CFB44;
input CFB43;
input CFB42;
input CFB41;
input CFB40;
input CFB39;
input CFB38;
input CFB37;
input CFB36;
input CFB35;
input CFB34;
input CFB33;
input CFB32;
input CFB31;
input CFB30;
input CFB29;
input CFB28;
input CFB27;
input CFB26;
input CFB25;
input CFB24;
input CFB23;
input CFB22;
input CFB21;
input CFB20;
input CFB19;
input CFB18;
input CFB17;
input CFB16;
input CFB15;
input CFB14;
input CFB13;
input CFB12;
input CFB11;
input CFB10;
input CFB9;
input CFB8;
input CFB7;
input CFB6;
input CFB5;
input CFB4;
input CFB3;
input CFB2;
input CFB1;
input CFB0;
input MA35;
input MA34;
input MA33;
input MA32;
input MA31;
input MA30;
input MA29;
input MA28;
input MA27;
input MA26;
input MA25;
input MA24;
input MA23;
input MA22;
input MA21;
input MA20;
input MA19;
input MA18;
input MA17;
input MA16;
input MA15;
input MA14;
input MA13;
input MA12;
input MA11;
input MA10;
input MA9;
input MA8;
input MA7;
input MA6;
input MA5;
input MA4;
input MA3;
input MA2;
input MA1;
input MA0;
input MB35;
input MB34;
input MB33;
input MB32;
input MB31;
input MB30;
input MB29;
input MB28;
input MB27;
input MB26;
input MB25;
input MB24;
input MB23;
input MB22;
input MB21;
input MB20;
input MB19;
input MB18;
input MB17;
input MB16;
input MB15;
input MB14;
input MB13;
input MB12;
input MB11;
input MB10;
input MB9;
input MB8;
input MB7;
input MB6;
input MB5;
input MB4;
input MB3;
input MB2;
input MB1;
input MB0;
input CIN53;
input CIN52;
input CIN51;
input CIN50;
input CIN49;
input CIN48;
input CIN47;
input CIN46;
input CIN45;
input CIN44;
input CIN43;
input CIN42;
input CIN41;
input CIN40;
input CIN39;
input CIN38;
input CIN37;
input CIN36;
input CIN35;
input CIN34;
input CIN33;
input CIN32;
input CIN31;
input CIN30;
input CIN29;
input CIN28;
input CIN27;
input CIN26;
input CIN25;
input CIN24;
input CIN23;
input CIN22;
input CIN21;
input CIN20;
input CIN19;
input CIN18;
input CIN17;
input CIN16;
input CIN15;
input CIN14;
input CIN13;
input CIN12;
input CIN11;
input CIN10;
input CIN9;
input CIN8;
input CIN7;
input CIN6;
input CIN5;
input CIN4;
input CIN3;
input CIN2;
input CIN1;
input CIN0;
input OP10;
input OP9;
input OP8;
input OP7;
input OP6;
input OP5;
input OP4;
input OP3;
input OP2;
input OP1;
input OP0;
output R53;
output R52;
output R51;
output R50;
output R49;
output R48;
output R47;
output R46;
output R45;
output R44;
output R43;
output R42;
output R41;
output R40;
output R39;
output R38;
output R37;
output R36;
output R35;
output R34;
output R33;
output R32;
output R31;
output R30;
output R29;
output R28;
output R27;
output R26;
output R25;
output R24;
output R23;
output R22;
output R21;
output R20;
output R19;
output R18;
output R17;
output R16;
output R15;
output R14;
output R13;
output R12;
output R11;
output R10;
output R9;
output R8;
output R7;
output R6;
output R5;
output R4;
output R3;
output R2;
output R1;
output R0;
output CO53;
output CO52;
output CO51;
output CO50;
output CO49;
output CO48;
output CO47;
output CO46;
output CO45;
output CO44;
output CO43;
output CO42;
output CO41;
output CO40;
output CO39;
output CO38;
output CO37;
output CO36;
output CO35;
output CO34;
output CO33;
output CO32;
output CO31;
output CO30;
output CO29;
output CO28;
output CO27;
output CO26;
output CO25;
output CO24;
output CO23;
output CO22;
output CO21;
output CO20;
output CO19;
output CO18;
output CO17;
output CO16;
output CO15;
output CO14;
output CO13;
output CO12;
output CO11;
output CO10;
output CO9;
output CO8;
output CO7;
output CO6;
output CO5;
output CO4;
output CO3;
output CO2;
output CO1;
output CO0;
output EQZ;
output EQZM;
output EQOM;