Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / libs / cl / cl_u1 / cl_u1.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: cl_u1.v
4// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
5// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
6//
7// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8//
9// This program is free software; you can redistribute it and/or modify
10// it under the terms of the GNU General Public License as published by
11// the Free Software Foundation; version 2 of the License.
12//
13// This program is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17//
18// You should have received a copy of the GNU General Public License
19// along with this program; if not, write to the Free Software
20// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21//
22// For the avoidance of doubt, and except that if any non-GPL license
23// choice is available it will apply instead, Sun elects to use only
24// the General Public License version 2 (GPLv2) at this time for any
25// software where a choice of GPL license versions is made
26// available with the language indicating that GPLv2 or any later version
27// may be used, or where a choice of which version of the GPL is applied is
28// otherwise unspecified.
29//
30// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
31// CA 95054 USA or visit www.sun.com if you need additional information or
32// have any questions.
33//
34// ========== Copyright Header End ============================================
35module cl_u1_aoi12_12x (
36 out,
37 in10,
38 in00,
39 in01 );
40
41 output out;
42 input in10;
43 input in00;
44 input in01;
45
46`ifdef LIB
47 assign out = ~(( in10 ) | ( in00 & in01 ));
48`endif
49
50endmodule
51// --------------------------------------------------
52// File: cl_u1_aoi12_16x.behV
53// Auto generated verilog module by HnBCellAuto
54//
55// Created: Thursday Nov 29,2001 at 11:51:25 AM PST
56// By: balmiki
57// --------------------------------------------------
58//
59module cl_u1_aoi12_16x (
60 out,
61 in10,
62 in00,
63 in01 );
64
65 output out;
66 input in10;
67 input in00;
68 input in01;
69
70`ifdef LIB
71 assign out = ~(( in10 ) | ( in00 & in01 ));
72`endif
73
74endmodule
75// --------------------------------------------------
76// File: cl_u1_aoi12_1x.behV
77// Auto generated verilog module by HnBCellAuto
78//
79// Created: Thursday Dec 6,2001 at 02:09:00 PM PST
80// By: balmiki
81// --------------------------------------------------
82//
83module cl_u1_aoi12_1x (
84 out,
85 in10,
86 in00,
87 in01 );
88
89 output out;
90 input in10;
91 input in00;
92 input in01;
93
94`ifdef LIB
95 assign out = ~(( in10 ) | ( in00 & in01 ));
96`endif
97
98endmodule
99// --------------------------------------------------
100// File: cl_u1_aoi12_2x.behV
101// Auto generated verilog module by HnBCellAuto
102//
103// Created: Thursday Nov 29,2001 at 11:51:25 AM PST
104// By: balmiki
105// --------------------------------------------------
106//
107module cl_u1_aoi12_2x (
108 out,
109 in10,
110 in00,
111 in01 );
112
113 output out;
114 input in10;
115 input in00;
116 input in01;
117
118`ifdef LIB
119 assign out = ~(( in10 ) | ( in00 & in01 ));
120`endif
121
122endmodule
123// --------------------------------------------------
124// File: cl_u1_aoi12_4x.behV
125// Auto generated verilog module by HnBCellAuto
126//
127// Created: Thursday Nov 29,2001 at 11:51:25 AM PST
128// By: balmiki
129// --------------------------------------------------
130//
131module cl_u1_aoi12_4x (
132 out,
133 in10,
134 in00,
135 in01 );
136
137 output out;
138 input in10;
139 input in00;
140 input in01;
141
142`ifdef LIB
143 assign out = ~(( in10 ) | ( in00 & in01 ));
144`endif
145
146endmodule
147// --------------------------------------------------
148// File: cl_u1_aoi12_8x.behV
149// Auto generated verilog module by HnBCellAuto
150//
151// Created: Thursday Nov 29,2001 at 11:51:25 AM PST
152// By: balmiki
153// --------------------------------------------------
154//
155module cl_u1_aoi12_8x (
156 out,
157 in10,
158 in00,
159 in01 );
160
161 output out;
162 input in10;
163 input in00;
164 input in01;
165
166`ifdef LIB
167 assign out = ~(( in10 ) | ( in00 & in01 ));
168`endif
169
170endmodule
171// --------------------------------------------------
172// File: cl_u1_aoi21_12x.behV
173// Auto generated verilog module by HnBCellAuto
174//
175// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
176// By: balmiki
177// --------------------------------------------------
178//
179module cl_u1_aoi21_12x (
180 out,
181 in10,
182 in11,
183 in00 );
184
185 output out;
186 input in10;
187 input in11;
188 input in00;
189
190`ifdef LIB
191 assign out = ~(( in10 & in11 ) | ( in00 ));
192`endif
193
194endmodule
195// --------------------------------------------------
196// File: cl_u1_aoi21_16x.behV
197// Auto generated verilog module by HnBCellAuto
198//
199// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
200// By: balmiki
201// --------------------------------------------------
202//
203module cl_u1_aoi21_16x (
204 out,
205 in10,
206 in11,
207 in00 );
208
209 output out;
210 input in10;
211 input in11;
212 input in00;
213
214`ifdef LIB
215 assign out = ~(( in10 & in11 ) | ( in00 ));
216`endif
217
218endmodule
219// --------------------------------------------------
220// File: cl_u1_aoi21_1x.behV
221// Auto generated verilog module by HnBCellAuto
222//
223// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
224// By: balmiki
225// --------------------------------------------------
226//
227module cl_u1_aoi21_1x (
228 out,
229 in10,
230 in11,
231 in00 );
232
233 output out;
234 input in10;
235 input in11;
236 input in00;
237
238`ifdef LIB
239 assign out = ~(( in10 & in11 ) | ( in00 ));
240`endif
241
242endmodule
243// --------------------------------------------------
244// File: cl_u1_aoi21_2x.behV
245// Auto generated verilog module by HnBCellAuto
246//
247// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
248// By: balmiki
249// --------------------------------------------------
250//
251module cl_u1_aoi21_2x (
252 out,
253 in10,
254 in11,
255 in00 );
256
257 output out;
258 input in10;
259 input in11;
260 input in00;
261
262`ifdef LIB
263 assign out = ~(( in10 & in11 ) | ( in00 ));
264`endif
265
266endmodule
267// --------------------------------------------------
268// File: cl_u1_aoi21_4x.behV
269// Auto generated verilog module by HnBCellAuto
270//
271// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
272// By: balmiki
273// --------------------------------------------------
274//
275module cl_u1_aoi21_4x (
276 out,
277 in10,
278 in11,
279 in00 );
280
281 output out;
282 input in10;
283 input in11;
284 input in00;
285
286`ifdef LIB
287 assign out = ~(( in10 & in11 ) | ( in00 ));
288`endif
289
290endmodule
291// --------------------------------------------------
292// File: cl_u1_aoi21_8x.behV
293// Auto generated verilog module by HnBCellAuto
294//
295// Created: Monday Oct 8,2001 at 11:32:15 AM PDT
296// By: balmiki
297// --------------------------------------------------
298//
299module cl_u1_aoi21_8x (
300 out,
301 in10,
302 in11,
303 in00 );
304
305 output out;
306 input in10;
307 input in11;
308 input in00;
309
310`ifdef LIB
311 assign out = ~(( in10 & in11 ) | ( in00 ));
312`endif
313
314endmodule
315// --------------------------------------------------
316// File: cl_u1_aoi22_12x.behV
317// Auto generated verilog module by HnBCellAuto
318//
319// Created: Monday Oct 8,2001 at 11:32:16 AM PDT
320// By: balmiki
321// --------------------------------------------------
322//
323module cl_u1_aoi22_12x (
324 out,
325 in10,
326 in11,
327 in00,
328 in01 );
329
330 output out;
331 input in10;
332 input in11;
333 input in00;
334 input in01;
335
336`ifdef LIB
337 assign out = ~(( in10 & in11 ) | ( in00 & in01 ));
338`endif
339
340endmodule
341
342// --------------------------------------------------
343// File: cl_u1_aoi22_1x.behV
344// Auto generated verilog module by HnBCellAuto
345//
346// Created: Wednesday May 29,2002 at 04:04:32 PM PDT
347// By: balmiki
348// --------------------------------------------------
349//
350module cl_u1_aoi22_1x (
351 out,
352 in10,
353 in11,
354 in00,
355 in01 );
356
357 output out;
358 input in10;
359 input in11;
360 input in00;
361 input in01;
362
363`ifdef LIB
364 assign out = ~(( in10 & in11 ) | ( in00 & in01 ));
365`endif
366
367endmodule
368// --------------------------------------------------
369// File: cl_u1_aoi22_2x.behV
370// Auto generated verilog module by HnBCellAuto
371//
372// Created: Monday Oct 8,2001 at 11:32:16 AM PDT
373// By: balmiki
374// --------------------------------------------------
375//
376module cl_u1_aoi22_2x (
377 out,
378 in10,
379 in11,
380 in00,
381 in01 );
382
383 output out;
384 input in10;
385 input in11;
386 input in00;
387 input in01;
388
389`ifdef LIB
390 assign out = ~(( in10 & in11 ) | ( in00 & in01 ));
391`endif
392
393endmodule
394
395`ifdef FPGA
396`else
397
398// --------------------------------------------------
399// File: cl_u1_aoi22_4x.behV
400// Auto generated verilog module by HnBCellAuto
401//
402// Created: Monday Oct 8,2001 at 11:32:16 AM PDT
403// By: balmiki
404// --------------------------------------------------
405//
406module cl_u1_aoi22_4x (
407 out,
408 in10,
409 in11,
410 in00,
411 in01 );
412
413 output out;
414 input in10;
415 input in11;
416 input in00;
417 input in01;
418
419`ifdef LIB
420 assign out = ~(( in10 & in11 ) | ( in00 & in01 ));
421`endif
422
423endmodule
424`endif // `ifdef FPGA
425
426// --------------------------------------------------
427// File: cl_u1_aoi22_8x.behV
428// Auto generated verilog module by HnBCellAuto
429//
430// Created: Monday Oct 8,2001 at 11:32:16 AM PDT
431// By: balmiki
432// --------------------------------------------------
433//
434module cl_u1_aoi22_8x (
435 out,
436 in10,
437 in11,
438 in00,
439 in01 );
440
441 output out;
442 input in10;
443 input in11;
444 input in00;
445 input in01;
446
447`ifdef LIB
448 assign out = ~(( in10 & in11 ) | ( in00 & in01 ));
449`endif
450
451endmodule
452
453
454// --------------------------------------------------
455// File: cl_u1_aoi33_1x.behV
456// Auto generated verilog module by HnBCellAuto
457//
458// Created: Thursday Dec 6,2001 at 02:09:02 PM PST
459// By: balmiki
460// --------------------------------------------------
461//
462module cl_u1_aoi33_1x (
463 out,
464 in10,
465 in11,
466 in12,
467 in00,
468 in01,
469 in02 );
470
471 output out;
472 input in10;
473 input in11;
474 input in12;
475 input in00;
476 input in01;
477 input in02;
478
479`ifdef LIB
480 assign out = ~(( in10 & in11 & in12 ) | ( in00 & in01 & in02 ));
481`endif
482
483endmodule
484// --------------------------------------------------
485// File: cl_u1_aoi33_2x.behV
486// Auto generated verilog module by HnBCellAuto
487//
488// Created: Monday Oct 8,2001 at 11:32:18 AM PDT
489// By: balmiki
490// --------------------------------------------------
491//
492module cl_u1_aoi33_2x (
493 out,
494 in10,
495 in11,
496 in12,
497 in00,
498 in01,
499 in02 );
500
501 output out;
502 input in10;
503 input in11;
504 input in12;
505 input in00;
506 input in01;
507 input in02;
508
509`ifdef LIB
510 assign out = ~(( in10 & in11 & in12 ) | ( in00 & in01 & in02 ));
511`endif
512
513endmodule
514// --------------------------------------------------
515// File: cl_u1_aoi33_4x.behV
516// Auto generated verilog module by HnBCellAuto
517//
518// Created: Monday Oct 8,2001 at 11:32:18 AM PDT
519// By: balmiki
520// --------------------------------------------------
521//
522module cl_u1_aoi33_4x (
523 out,
524 in10,
525 in11,
526 in12,
527 in00,
528 in01,
529 in02 );
530
531 output out;
532 input in10;
533 input in11;
534 input in12;
535 input in00;
536 input in01;
537 input in02;
538
539`ifdef LIB
540 assign out = ~(( in10 & in11 & in12 ) | ( in00 & in01 & in02 ));
541`endif
542
543endmodule
544// --------------------------------------------------
545// File: cl_u1_aoi33_8x.behV
546// Auto generated verilog module by HnBCellAuto
547//
548// Created: Monday Oct 8,2001 at 11:32:18 AM PDT
549// By: balmiki
550// --------------------------------------------------
551//
552module cl_u1_aoi33_8x (
553 out,
554 in10,
555 in11,
556 in12,
557 in00,
558 in01,
559 in02 );
560
561 output out;
562 input in10;
563 input in11;
564 input in12;
565 input in00;
566 input in01;
567 input in02;
568
569`ifdef LIB
570 assign out = ~(( in10 & in11 & in12 ) | ( in00 & in01 & in02 ));
571`endif
572
573endmodule
574module cl_u1_rep_lvt_32x (
575in,
576out
577);
578input in;
579output out;
580
581`ifdef LIB
582//assign out = in;
583buf (out, in);
584`endif
585
586endmodule
587module cl_u1_rep_lvt_48x (
588in,
589out
590);
591input in;
592output out;
593
594`ifdef LIB
595//assign out = in;
596buf (out, in);
597`endif
598
599endmodule
600module cl_u1_rep_32x (
601in,
602out
603);
604input in;
605output out;
606
607`ifdef LIB
608//assign out = in;
609buf (out, in);
610`endif
611
612endmodule
613module cl_u1_rep_40x (
614in,
615out
616);
617input in;
618output out;
619
620`ifdef LIB
621//assign out = in;
622buf (out, in);
623`endif
624
625endmodule
626module cl_u1_rep_24x (
627in,
628out
629);
630input in;
631output out;
632
633`ifdef LIB
634//assign out = in;
635buf (out, in);
636`endif
637
638endmodule
639module cl_u1_rep_16x (
640in,
641out
642);
643input in;
644output out;
645
646`ifdef LIB
647//assign out = in;
648buf (out, in);
649`endif
650
651endmodule
652module cl_u1_rep_8x (
653in,
654out
655);
656input in;
657output out;
658
659`ifdef LIB
660//assign out = in;
661buf (out, in);
662`endif
663
664endmodule
665module cl_u1_rep_48x (
666in,
667out
668);
669input in;
670output out;
671
672`ifdef LIB
673//assign out = in;
674buf (out, in);
675`endif
676
677endmodule
678module cl_u1_rep_dcp2x_32x (
679in,
680out
681);
682input in;
683output out;
684
685`ifdef LIB
686//assign out = in;
687buf (out, in);
688`endif
689
690endmodule
691
692module cl_u1_rep_dcp2x_16x (
693in,
694out
695);
696input in;
697output out;
698
699`ifdef LIB
700//assign out = in;
701buf (out, in);
702`endif
703
704endmodule
705module cl_u1_rep_dcp2x_24x (
706in,
707out
708);
709input in;
710output out;
711
712`ifdef LIB
713//assign out = in;
714buf (out, in);
715`endif
716
717endmodule
718module cl_u1_rep_dcp2x_40x (
719in,
720out
721);
722input in;
723output out;
724
725`ifdef LIB
726//assign out = in;
727buf (out, in);
728`endif
729
730endmodule
731module cl_u1_rep_dcp2x_48x (
732in,
733out
734);
735input in;
736output out;
737
738`ifdef LIB
739//assign out = in;
740buf (out, in);
741`endif
742
743endmodule
744module cl_u1_rep_dcp_32x (
745in,
746out
747);
748input in;
749output out;
750
751`ifdef LIB
752//assign out = in;
753buf (out, in);
754`endif
755
756endmodule
757
758module cl_u1_rep_dcp_16x (
759in,
760out
761);
762input in;
763output out;
764
765`ifdef LIB
766//assign out = in;
767buf (out, in);
768`endif
769
770endmodule
771module cl_u1_rep_dcp_24x (
772in,
773out
774);
775input in;
776output out;
777
778`ifdef LIB
779//assign out = in;
780buf (out, in);
781`endif
782
783endmodule
784module cl_u1_rep_dcp_40x (
785in,
786out
787);
788input in;
789output out;
790
791`ifdef LIB
792//assign out = in;
793buf (out, in);
794`endif
795
796endmodule
797module cl_u1_rep_dcp_48x (
798in,
799out
800);
801input in;
802output out;
803
804`ifdef LIB
805//assign out = in;
806buf (out, in);
807`endif
808
809endmodule
810module cl_u1_rep_dcp50k_48x (
811in,
812out
813);
814input in;
815output out;
816
817`ifdef LIB
818//assign out = in;
819buf (out, in);
820`endif
821
822endmodule
823module cl_u1_rep_dcp50k_32x (
824in,
825out
826);
827input in;
828output out;
829
830`ifdef LIB
831//assign out = in;
832buf (out, in);
833`endif
834
835endmodule
836module cl_u1_rep_dcp50k_40x (
837in,
838out
839);
840input in;
841output out;
842
843`ifdef LIB
844//assign out = in;
845buf (out, in);
846`endif
847
848endmodule
849
850module cl_u1_buf_12x (
851in,
852out
853);
854input in;
855output out;
856
857`ifdef LIB
858//assign out = in;
859buf (out, in);
860`endif
861
862endmodule
863`ifdef FPGA
864`else
865
866module cl_u1_buf_16x (
867in,
868out
869);
870input in;
871output out;
872
873`ifdef LIB
874//assign out = in;
875buf (out, in);
876`endif
877
878endmodule
879
880`endif // `ifdef FPGA
881
882module cl_u1_buf_1x (
883in,
884out
885);
886input in;
887output out;
888
889`ifdef LIB
890//assign out = in;
891buf (out, in);
892`endif
893
894endmodule
895module cl_u1_buf_20x (
896in,
897out
898);
899input in;
900output out;
901
902`ifdef LIB
903//assign out = in;
904buf (out, in);
905`endif
906
907endmodule
908module cl_u1_buf_24x (
909in,
910out
911);
912input in;
913output out;
914
915`ifdef LIB
916//assign out = in;
917buf (out, in);
918`endif
919
920endmodule
921module cl_u1_buf_28x (
922in,
923out
924);
925input in;
926output out;
927
928`ifdef LIB
929//assign out = in;
930buf (out, in);
931`endif
932
933endmodule
934module cl_u1_buf_2x (
935in,
936out
937);
938input in;
939output out;
940
941`ifdef LIB
942//assign out = in;
943buf (out, in);
944`endif
945
946endmodule
947
948`ifdef FPGA
949`else
950
951module cl_u1_buf_32x (
952in,
953out
954);
955input in;
956output out;
957
958`ifdef LIB
959//assign out = in;
960buf (out, in);
961`endif
962
963endmodule
964
965`endif // `ifdef FPGA
966
967
968module cl_u1_buf_36x (
969in,
970out
971);
972input in;
973output out;
974
975`ifdef LIB
976//assign out = in;
977buf (out, in);
978`endif
979
980endmodule
981module cl_u1_buf_40x (
982in,
983out
984);
985input in;
986output out;
987
988`ifdef LIB
989//assign out = in;
990buf (out, in);
991`endif
992
993endmodule
994module cl_u1_buf_44x (
995in,
996out
997);
998input in;
999output out;
1000
1001`ifdef LIB
1002//assign out = in;
1003buf (out, in);
1004`endif
1005
1006endmodule
1007module cl_u1_buf_48x (
1008in,
1009out
1010);
1011input in;
1012output out;
1013
1014`ifdef LIB
1015//assign out = in;
1016buf (out, in);
1017`endif
1018
1019endmodule
1020module cl_u1_buf_4x (
1021in,
1022out
1023);
1024input in;
1025output out;
1026
1027`ifdef LIB
1028//assign out = in;
1029buf (out, in);
1030`endif
1031
1032endmodule
1033module cl_u1_buf_56x (
1034in,
1035out
1036);
1037input in;
1038output out;
1039
1040`ifdef LIB
1041//assign out = in;
1042buf (out, in);
1043`endif
1044
1045endmodule
1046module cl_u1_buf_64x (
1047in,
1048out
1049);
1050input in;
1051output out;
1052
1053`ifdef LIB
1054//assign out = in;
1055buf (out, in);
1056`endif
1057
1058endmodule
1059module cl_u1_buf_6x (
1060in,
1061out
1062);
1063input in;
1064output out;
1065
1066`ifdef LIB
1067//assign out = in;
1068buf (out, in);
1069`endif
1070
1071endmodule
1072
1073`ifdef FPGA
1074`else
1075
1076module cl_u1_buf_8x (
1077in,
1078out
1079);
1080input in;
1081output out;
1082
1083`ifdef LIB
1084//assign out = in;
1085buf (out, in);
1086`endif
1087
1088endmodule
1089`endif // `ifdef FPGA
1090
1091
1092module cl_u1_bufmin_15ps_32x (
1093in,
1094out
1095);
1096input in;
1097output out;
1098
1099`ifdef LIB
1100//assign out = in;
1101buf (out, in);
1102`endif
1103
1104endmodule
1105module cl_u1_bufmin_1x (
1106in,
1107out
1108);
1109input in;
1110output out;
1111
1112`ifdef LIB
1113//assign out = in;
1114buf (out, in);
1115`endif
1116
1117endmodule
1118module cl_u1_bufmin_4x (
1119in,
1120out
1121);
1122input in;
1123output out;
1124
1125`ifdef LIB
1126//assign out = in;
1127buf (out, in);
1128`endif
1129
1130endmodule
1131module cl_u1_bufmin_8x (
1132in,
1133out
1134);
1135input in;
1136output out;
1137
1138`ifdef LIB
1139//assign out = in;
1140buf (out, in);
1141`endif
1142
1143endmodule
1144module cl_u1_bufmin_16x (
1145in,
1146out
1147);
1148input in;
1149output out;
1150
1151`ifdef LIB
1152//assign out = in;
1153buf (out, in);
1154`endif
1155
1156endmodule
1157module cl_u1_bufmin_32x (
1158in,
1159out
1160);
1161input in;
1162output out;
1163
1164`ifdef LIB
1165//assign out = in;
1166buf (out, in);
1167`endif
1168
1169endmodule
1170module cl_u1_csa32_16x (
1171in0,
1172in1,
1173in2,
1174carry,
1175sum
1176);
1177input in0;
1178input in1;
1179input in2;
1180output carry;
1181output sum;
1182
1183`ifdef LIB
1184 assign carry = (in0 & in1) | (in0 & in2) | (in1 & in2);
1185 assign sum = (in0 ^ in1 ^ in2);
1186`endif
1187
1188endmodule
1189module cl_u1_csa32_4x (
1190in0,
1191in1,
1192in2,
1193carry,
1194sum
1195);
1196input in0;
1197input in1;
1198input in2;
1199output carry;
1200output sum;
1201
1202`ifdef LIB
1203 assign carry = (in0 & in1) | (in0 & in2) | (in1 & in2);
1204 assign sum = (in0 ^ in1 ^ in2);
1205`endif
1206
1207endmodule
1208module cl_u1_csa32_8x (
1209in0,
1210in1,
1211in2,
1212carry,
1213sum
1214);
1215input in0;
1216input in1;
1217input in2;
1218output carry;
1219output sum;
1220
1221`ifdef LIB
1222 assign carry = (in0 & in1) | (in0 & in2) | (in1 & in2);
1223 assign sum = (in0 ^ in1 ^ in2);
1224`endif
1225
1226endmodule
1227module cl_u1_csa42_16x (
1228in0,
1229in1,
1230in2,
1231in3,
1232cin,
1233cout,
1234carry,
1235sum
1236);
1237input in0;
1238input in1;
1239input in2;
1240input in3;
1241input cin;
1242output cout;
1243output carry;
1244output sum;
1245
1246`ifdef LIB
1247 assign cout = (in1 & in2) | (in0 & in2) | (in0 & in1);
1248
1249 assign sum = (~in0 & ~in1 & ~in2 & ~in3 & cin) |
1250 (~in0 & ~in1 & ~in2 & in3 & ~cin) |
1251 (~in0 & ~in1 & in2 & ~in3 & ~cin) |
1252 (~in0 & ~in1 & in2 & in3 & cin) |
1253
1254 (~in0 & in1 & ~in2 & ~in3 & ~cin) |
1255 (~in0 & in1 & ~in2 & in3 & cin) |
1256 (~in0 & in1 & in2 & ~in3 & cin) |
1257 (~in0 & in1 & in2 & in3 & ~cin) |
1258
1259 ( in0 & ~in1 & ~in2 & ~in3 & ~cin) |
1260 ( in0 & ~in1 & ~in2 & in3 & cin) |
1261 ( in0 & ~in1 & in2 & ~in3 & cin) |
1262 ( in0 & ~in1 & in2 & in3 & ~cin) |
1263
1264 ( in0 & in1 & ~in2 & ~in3 & cin) |
1265 ( in0 & in1 & ~in2 & in3 & ~cin) |
1266 ( in0 & in1 & in2 & ~in3 & ~cin) |
1267 ( in0 & in1 & in2 & in3 & cin);
1268
1269 assign carry = (~in0 & ~in1 & ~in2 & ~in3 & 1'b0) |
1270 (~in0 & ~in1 & ~in2 & in3 & cin) |
1271 (~in0 & ~in1 & in2 & ~in3 & cin) |
1272 (~in0 & ~in1 & in2 & in3 & 1'b1) |
1273
1274 (~in0 & in1 & ~in2 & ~in3 & cin) |
1275 (~in0 & in1 & ~in2 & in3 & 1'b1) |
1276 (~in0 & in1 & in2 & ~in3 & 1'b0) |
1277 (~in0 & in1 & in2 & in3 & cin) |
1278
1279 ( in0 & ~in1 & ~in2 & ~in3 & cin) |
1280 ( in0 & ~in1 & ~in2 & in3 & 1'b1) |
1281 ( in0 & ~in1 & in2 & ~in3 & 1'b0) |
1282 ( in0 & ~in1 & in2 & in3 & cin) |
1283
1284 ( in0 & in1 & ~in2 & ~in3 & 1'b0) |
1285 ( in0 & in1 & ~in2 & in3 & cin) |
1286 ( in0 & in1 & in2 & ~in3 & cin) |
1287 ( in0 & in1 & in2 & in3 & 1'b1);
1288
1289
1290
1291`endif
1292
1293endmodule
1294module cl_u1_csa42_4x (
1295in0,
1296in1,
1297in2,
1298in3,
1299cin,
1300cout,
1301carry,
1302sum
1303);
1304input in0;
1305input in1;
1306input in2;
1307input in3;
1308input cin;
1309output cout;
1310output carry;
1311output sum;
1312
1313`ifdef LIB
1314 assign cout = (in1 & in2) | (in0 & in2) | (in0 & in1);
1315
1316 assign sum = (~in0 & ~in1 & ~in2 & ~in3 & cin) |
1317 (~in0 & ~in1 & ~in2 & in3 & ~cin) |
1318 (~in0 & ~in1 & in2 & ~in3 & ~cin) |
1319 (~in0 & ~in1 & in2 & in3 & cin) |
1320
1321 (~in0 & in1 & ~in2 & ~in3 & ~cin) |
1322 (~in0 & in1 & ~in2 & in3 & cin) |
1323 (~in0 & in1 & in2 & ~in3 & cin) |
1324 (~in0 & in1 & in2 & in3 & ~cin) |
1325
1326 ( in0 & ~in1 & ~in2 & ~in3 & ~cin) |
1327 ( in0 & ~in1 & ~in2 & in3 & cin) |
1328 ( in0 & ~in1 & in2 & ~in3 & cin) |
1329 ( in0 & ~in1 & in2 & in3 & ~cin) |
1330
1331 ( in0 & in1 & ~in2 & ~in3 & cin) |
1332 ( in0 & in1 & ~in2 & in3 & ~cin) |
1333 ( in0 & in1 & in2 & ~in3 & ~cin) |
1334 ( in0 & in1 & in2 & in3 & cin);
1335
1336 assign carry = (~in0 & ~in1 & ~in2 & ~in3 & 1'b0) |
1337 (~in0 & ~in1 & ~in2 & in3 & cin) |
1338 (~in0 & ~in1 & in2 & ~in3 & cin) |
1339 (~in0 & ~in1 & in2 & in3 & 1'b1) |
1340
1341 (~in0 & in1 & ~in2 & ~in3 & cin) |
1342 (~in0 & in1 & ~in2 & in3 & 1'b1) |
1343 (~in0 & in1 & in2 & ~in3 & 1'b0) |
1344 (~in0 & in1 & in2 & in3 & cin) |
1345
1346 ( in0 & ~in1 & ~in2 & ~in3 & cin) |
1347 ( in0 & ~in1 & ~in2 & in3 & 1'b1) |
1348 ( in0 & ~in1 & in2 & ~in3 & 1'b0) |
1349 ( in0 & ~in1 & in2 & in3 & cin) |
1350
1351 ( in0 & in1 & ~in2 & ~in3 & 1'b0) |
1352 ( in0 & in1 & ~in2 & in3 & cin) |
1353 ( in0 & in1 & in2 & ~in3 & cin) |
1354 ( in0 & in1 & in2 & in3 & 1'b1);
1355
1356
1357
1358`endif
1359
1360endmodule
1361module cl_u1_csa42_8x (
1362in0,
1363in1,
1364in2,
1365in3,
1366cin,
1367cout,
1368carry,
1369sum
1370);
1371input in0;
1372input in1;
1373input in2;
1374input in3;
1375input cin;
1376output cout;
1377output carry;
1378output sum;
1379
1380`ifdef LIB
1381 assign cout = (in1 & in2) | (in0 & in2) | (in0 & in1);
1382
1383 assign sum = (~in0 & ~in1 & ~in2 & ~in3 & cin) |
1384 (~in0 & ~in1 & ~in2 & in3 & ~cin) |
1385 (~in0 & ~in1 & in2 & ~in3 & ~cin) |
1386 (~in0 & ~in1 & in2 & in3 & cin) |
1387
1388 (~in0 & in1 & ~in2 & ~in3 & ~cin) |
1389 (~in0 & in1 & ~in2 & in3 & cin) |
1390 (~in0 & in1 & in2 & ~in3 & cin) |
1391 (~in0 & in1 & in2 & in3 & ~cin) |
1392
1393 ( in0 & ~in1 & ~in2 & ~in3 & ~cin) |
1394 ( in0 & ~in1 & ~in2 & in3 & cin) |
1395 ( in0 & ~in1 & in2 & ~in3 & cin) |
1396 ( in0 & ~in1 & in2 & in3 & ~cin) |
1397
1398 ( in0 & in1 & ~in2 & ~in3 & cin) |
1399 ( in0 & in1 & ~in2 & in3 & ~cin) |
1400 ( in0 & in1 & in2 & ~in3 & ~cin) |
1401 ( in0 & in1 & in2 & in3 & cin);
1402
1403 assign carry = (~in0 & ~in1 & ~in2 & ~in3 & 1'b0) |
1404 (~in0 & ~in1 & ~in2 & in3 & cin) |
1405 (~in0 & ~in1 & in2 & ~in3 & cin) |
1406 (~in0 & ~in1 & in2 & in3 & 1'b1) |
1407
1408 (~in0 & in1 & ~in2 & ~in3 & cin) |
1409 (~in0 & in1 & ~in2 & in3 & 1'b1) |
1410 (~in0 & in1 & in2 & ~in3 & 1'b0) |
1411 (~in0 & in1 & in2 & in3 & cin) |
1412
1413 ( in0 & ~in1 & ~in2 & ~in3 & cin) |
1414 ( in0 & ~in1 & ~in2 & in3 & 1'b1) |
1415 ( in0 & ~in1 & in2 & ~in3 & 1'b0) |
1416 ( in0 & ~in1 & in2 & in3 & cin) |
1417
1418 ( in0 & in1 & ~in2 & ~in3 & 1'b0) |
1419 ( in0 & in1 & ~in2 & in3 & cin) |
1420 ( in0 & in1 & in2 & ~in3 & cin) |
1421 ( in0 & in1 & in2 & in3 & 1'b1);
1422
1423
1424
1425`endif
1426
1427endmodule
1428module cl_u1_inv_12x (
1429in,
1430out
1431);
1432input in;
1433output out;
1434
1435`ifdef LIB
1436//assign out = ~in;
1437not (out, in);
1438`endif
1439
1440endmodule
1441
1442`ifdef FPGA
1443`else
1444
1445module cl_u1_inv_16x (
1446in,
1447out
1448);
1449input in;
1450output out;
1451
1452`ifdef LIB
1453//assign out = ~in;
1454not (out, in);
1455`endif
1456
1457endmodule
1458`endif // `ifdef FPGA
1459
1460module cl_u1_inv_1x (
1461in,
1462out
1463);
1464input in;
1465output out;
1466
1467`ifdef LIB
1468//assign out = ~in;
1469not (out, in);
1470`endif
1471
1472endmodule
1473module cl_u1_inv_20x (
1474in,
1475out
1476);
1477input in;
1478output out;
1479
1480`ifdef LIB
1481//assign out = ~in;
1482not (out, in);
1483`endif
1484
1485endmodule
1486module cl_u1_inv_24x (
1487in,
1488out
1489);
1490input in;
1491output out;
1492
1493`ifdef LIB
1494//assign out = ~in;
1495not (out, in);
1496`endif
1497
1498endmodule
1499module cl_u1_inv_28x (
1500in,
1501out
1502);
1503input in;
1504output out;
1505
1506`ifdef LIB
1507//assign out = ~in;
1508not (out, in);
1509`endif
1510
1511endmodule
1512module cl_u1_inv_2x (
1513in,
1514out
1515);
1516input in;
1517output out;
1518
1519`ifdef LIB
1520//assign out = ~in;
1521not (out, in);
1522`endif
1523
1524endmodule
1525
1526`ifdef FPGA
1527`else
1528
1529module cl_u1_inv_32x (
1530in,
1531out
1532);
1533input in;
1534output out;
1535
1536`ifdef LIB
1537//assign out = ~in;
1538not (out, in);
1539`endif
1540
1541endmodule
1542
1543`endif // `ifdef FPGA
1544
1545
1546module cl_u1_inv_36x (
1547in,
1548out
1549);
1550input in;
1551output out;
1552
1553`ifdef LIB
1554//assign out = ~in;
1555not (out, in);
1556`endif
1557
1558endmodule
1559module cl_u1_inv_40x (
1560in,
1561out
1562);
1563input in;
1564output out;
1565
1566`ifdef LIB
1567//assign out = ~in;
1568not (out, in);
1569`endif
1570
1571endmodule
1572module cl_u1_inv_44x (
1573in,
1574out
1575);
1576input in;
1577output out;
1578
1579`ifdef LIB
1580//assign out = ~in;
1581not (out, in);
1582`endif
1583
1584endmodule
1585module cl_u1_inv_48x (
1586in,
1587out
1588);
1589input in;
1590output out;
1591
1592`ifdef LIB
1593//assign out = ~in;
1594not (out, in);
1595`endif
1596
1597endmodule
1598module cl_u1_inv_4x (
1599in,
1600out
1601);
1602input in;
1603output out;
1604
1605`ifdef LIB
1606//assign out = ~in;
1607not (out, in);
1608`endif
1609
1610endmodule
1611module cl_u1_inv_56x (
1612in,
1613out
1614);
1615input in;
1616output out;
1617
1618`ifdef LIB
1619//assign out = ~in;
1620not (out, in);
1621`endif
1622
1623endmodule
1624module cl_u1_inv_64x (
1625in,
1626out
1627);
1628input in;
1629output out;
1630
1631`ifdef LIB
1632//assign out = ~in;
1633not (out, in);
1634`endif
1635
1636endmodule
1637module cl_u1_inv_6x (
1638in,
1639out
1640);
1641input in;
1642output out;
1643
1644`ifdef LIB
1645//assign out = ~in;
1646not (out, in);
1647`endif
1648
1649endmodule
1650
1651`ifdef FPGA
1652`else
1653
1654module cl_u1_inv_8x (
1655in,
1656out
1657);
1658input in;
1659output out;
1660
1661`ifdef LIB
1662//assign out = ~in;
1663not (out, in);
1664`endif
1665
1666endmodule
1667
1668`endif // `ifdef FPGA
1669
1670
1671module cl_u1_nand2_12x (
1672in0,
1673in1,
1674out
1675);
1676input in0;
1677input in1;
1678output out;
1679
1680`ifdef LIB
1681assign out = ~(in0 & in1);
1682`endif
1683
1684endmodule
1685
1686`ifdef FPGA
1687`else
1688
1689module cl_u1_nand2_16x (
1690in0,
1691in1,
1692out
1693);
1694input in0;
1695input in1;
1696output out;
1697
1698`ifdef LIB
1699assign out = ~(in0 & in1);
1700`endif
1701
1702endmodule
1703
1704`endif // `ifdef FPGA
1705
1706
1707module cl_u1_nand2_1x (
1708in0,
1709in1,
1710out
1711);
1712input in0;
1713input in1;
1714output out;
1715
1716`ifdef LIB
1717assign out = ~(in0 & in1);
1718`endif
1719
1720endmodule
1721module cl_u1_nand2_20x (
1722in0,
1723in1,
1724out
1725);
1726input in0;
1727input in1;
1728output out;
1729
1730`ifdef LIB
1731assign out = ~(in0 & in1);
1732`endif
1733
1734endmodule
1735module cl_u1_nand2_24x (
1736in0,
1737in1,
1738out
1739);
1740input in0;
1741input in1;
1742output out;
1743
1744`ifdef LIB
1745assign out = ~(in0 & in1);
1746`endif
1747
1748endmodule
1749module cl_u1_nand2_28x (
1750in0,
1751in1,
1752out
1753);
1754input in0;
1755input in1;
1756output out;
1757
1758`ifdef LIB
1759assign out = ~(in0 & in1);
1760`endif
1761
1762endmodule
1763module cl_u1_nand2_2x (
1764in0,
1765in1,
1766out
1767);
1768input in0;
1769input in1;
1770output out;
1771
1772`ifdef LIB
1773assign out = ~(in0 & in1);
1774`endif
1775
1776endmodule
1777module cl_u1_nand2_32x (
1778in0,
1779in1,
1780out
1781);
1782input in0;
1783input in1;
1784output out;
1785
1786`ifdef LIB
1787assign out = ~(in0 & in1);
1788`endif
1789
1790endmodule
1791module cl_u1_nand2_4x (
1792in0,
1793in1,
1794out
1795);
1796input in0;
1797input in1;
1798output out;
1799
1800`ifdef LIB
1801assign out = ~(in0 & in1);
1802`endif
1803
1804endmodule
1805module cl_u1_nand2_6x (
1806in0,
1807in1,
1808out
1809);
1810input in0;
1811input in1;
1812output out;
1813
1814`ifdef LIB
1815assign out = ~(in0 & in1);
1816`endif
1817
1818endmodule
1819
1820`ifdef FPGA
1821`else
1822
1823module cl_u1_nand2_8x (
1824in0,
1825in1,
1826out
1827);
1828input in0;
1829input in1;
1830output out;
1831
1832`ifdef LIB
1833assign out = ~(in0 & in1);
1834`endif
1835
1836endmodule
1837
1838`endif // `ifdef FPGA
1839
1840
1841module cl_u1_nand3_12x (
1842in0,
1843in1,
1844in2,
1845out
1846);
1847input in0;
1848input in1;
1849input in2;
1850output out;
1851
1852`ifdef LIB
1853assign out = ~(in0 & in1 & in2);
1854`endif
1855
1856endmodule
1857module cl_u1_nand3_16x (
1858in0,
1859in1,
1860in2,
1861out
1862);
1863input in0;
1864input in1;
1865input in2;
1866output out;
1867
1868`ifdef LIB
1869assign out = ~(in0 & in1 & in2);
1870`endif
1871
1872endmodule
1873module cl_u1_nand3_1x (
1874in0,
1875in1,
1876in2,
1877out
1878);
1879input in0;
1880input in1;
1881input in2;
1882output out;
1883
1884`ifdef LIB
1885assign out = ~(in0 & in1 & in2);
1886`endif
1887
1888endmodule
1889module cl_u1_nand3_20x (
1890in0,
1891in1,
1892in2,
1893out
1894);
1895input in0;
1896input in1;
1897input in2;
1898output out;
1899
1900`ifdef LIB
1901assign out = ~(in0 & in1 & in2);
1902`endif
1903
1904endmodule
1905module cl_u1_nand3_24x (
1906in0,
1907in1,
1908in2,
1909out
1910);
1911input in0;
1912input in1;
1913input in2;
1914output out;
1915
1916`ifdef LIB
1917assign out = ~(in0 & in1 & in2);
1918`endif
1919
1920endmodule
1921
1922module cl_u1_nand3_2x (
1923in0,
1924in1,
1925in2,
1926out
1927);
1928input in0;
1929input in1;
1930input in2;
1931output out;
1932
1933`ifdef LIB
1934assign out = ~(in0 & in1 & in2);
1935`endif
1936
1937endmodule
1938
1939module cl_u1_nand3_4x (
1940in0,
1941in1,
1942in2,
1943out
1944);
1945input in0;
1946input in1;
1947input in2;
1948output out;
1949
1950`ifdef LIB
1951assign out = ~(in0 & in1 & in2);
1952`endif
1953
1954endmodule
1955module cl_u1_nand3_6x (
1956in0,
1957in1,
1958in2,
1959out
1960);
1961input in0;
1962input in1;
1963input in2;
1964output out;
1965
1966`ifdef LIB
1967assign out = ~(in0 & in1 & in2);
1968`endif
1969
1970endmodule
1971
1972`ifdef FPGA
1973`else
1974
1975module cl_u1_nand3_8x (
1976in0,
1977in1,
1978in2,
1979out
1980);
1981input in0;
1982input in1;
1983input in2;
1984output out;
1985
1986`ifdef LIB
1987assign out = ~(in0 & in1 & in2);
1988`endif
1989
1990endmodule
1991
1992`endif // `ifdef FPGA
1993
1994
1995
1996module cl_u1_nand4_12x (
1997in0,
1998in1,
1999in2,
2000in3,
2001out
2002);
2003input in0;
2004input in1;
2005input in2;
2006input in3;
2007output out;
2008
2009`ifdef LIB
2010assign out = ~(in0 & in1 & in2 & in3);
2011`endif
2012
2013endmodule
2014module cl_u1_nand4_16x (
2015in0,
2016in1,
2017in2,
2018in3,
2019out
2020);
2021input in0;
2022input in1;
2023input in2;
2024input in3;
2025output out;
2026
2027`ifdef LIB
2028assign out = ~(in0 & in1 & in2 & in3);
2029`endif
2030
2031endmodule
2032module cl_u1_nand4_1x (
2033in0,
2034in1,
2035in2,
2036in3,
2037out
2038);
2039input in0;
2040input in1;
2041input in2;
2042input in3;
2043output out;
2044
2045`ifdef LIB
2046assign out = ~(in0 & in1 & in2 & in3);
2047`endif
2048
2049endmodule
2050
2051
2052module cl_u1_nand4_2x (
2053in0,
2054in1,
2055in2,
2056in3,
2057out
2058);
2059input in0;
2060input in1;
2061input in2;
2062input in3;
2063output out;
2064
2065`ifdef LIB
2066assign out = ~(in0 & in1 & in2 & in3);
2067`endif
2068
2069endmodule
2070
2071module cl_u1_nand4_4x (
2072in0,
2073in1,
2074in2,
2075in3,
2076out
2077);
2078input in0;
2079input in1;
2080input in2;
2081input in3;
2082output out;
2083
2084`ifdef LIB
2085assign out = ~(in0 & in1 & in2 & in3);
2086`endif
2087
2088endmodule
2089module cl_u1_nand4_6x (
2090in0,
2091in1,
2092in2,
2093in3,
2094out
2095);
2096input in0;
2097input in1;
2098input in2;
2099input in3;
2100output out;
2101
2102`ifdef LIB
2103assign out = ~(in0 & in1 & in2 & in3);
2104`endif
2105
2106endmodule
2107module cl_u1_nand4_8x (
2108in0,
2109in1,
2110in2,
2111in3,
2112out
2113);
2114input in0;
2115input in1;
2116input in2;
2117input in3;
2118output out;
2119
2120`ifdef LIB
2121assign out = ~(in0 & in1 & in2 & in3);
2122`endif
2123
2124endmodule
2125module cl_u1_nor2_12x (
2126in0,
2127in1,
2128out
2129);
2130input in0;
2131input in1;
2132output out;
2133
2134`ifdef LIB
2135assign out = ~(in0 | in1);
2136`endif
2137
2138endmodule
2139
2140`ifdef FPGA
2141`else
2142
2143module cl_u1_nor2_16x (
2144in0,
2145in1,
2146out
2147);
2148input in0;
2149input in1;
2150output out;
2151
2152`ifdef LIB
2153assign out = ~(in0 | in1);
2154`endif
2155
2156endmodule
2157
2158`endif // `ifdef FPGA
2159
2160
2161module cl_u1_nor2_1x (
2162in0,
2163in1,
2164out
2165);
2166input in0;
2167input in1;
2168output out;
2169
2170`ifdef LIB
2171assign out = ~(in0 | in1);
2172`endif
2173
2174endmodule
2175module cl_u1_nor2_2x (
2176in0,
2177in1,
2178out
2179);
2180input in0;
2181input in1;
2182output out;
2183
2184`ifdef LIB
2185assign out = ~(in0 | in1);
2186`endif
2187
2188endmodule
2189module cl_u1_nor2_4x (
2190in0,
2191in1,
2192out
2193);
2194input in0;
2195input in1;
2196output out;
2197
2198`ifdef LIB
2199assign out = ~(in0 | in1);
2200`endif
2201
2202endmodule
2203module cl_u1_nor2_6x (
2204in0,
2205in1,
2206out
2207);
2208input in0;
2209input in1;
2210output out;
2211
2212`ifdef LIB
2213assign out = ~(in0 | in1);
2214`endif
2215
2216endmodule
2217module cl_u1_nor2_8x (
2218in0,
2219in1,
2220out
2221);
2222input in0;
2223input in1;
2224output out;
2225
2226`ifdef LIB
2227assign out = ~(in0 | in1);
2228`endif
2229
2230endmodule
2231module cl_u1_nor3_1x (
2232in0,
2233in1,
2234in2,
2235out
2236);
2237input in0;
2238input in1;
2239input in2;
2240output out;
2241
2242`ifdef LIB
2243assign out = ~(in0 | in1 | in2);
2244`endif
2245
2246endmodule
2247module cl_u1_nor3_2x (
2248in0,
2249in1,
2250in2,
2251out
2252);
2253input in0;
2254input in1;
2255input in2;
2256output out;
2257
2258`ifdef LIB
2259assign out = ~(in0 | in1 | in2);
2260`endif
2261
2262endmodule
2263
2264`ifdef FPGA
2265`else
2266
2267module cl_u1_nor3_4x (
2268in0,
2269in1,
2270in2,
2271out
2272);
2273input in0;
2274input in1;
2275input in2;
2276output out;
2277
2278`ifdef LIB
2279assign out = ~(in0 | in1 | in2);
2280`endif
2281
2282endmodule
2283
2284`endif // `ifdef FPGA
2285
2286
2287// --------------------------------------------------
2288// File: cl_u1_oai12_12x.behV
2289// Auto generated verilog module by HnBCellAuto
2290//
2291// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2292// By: balmiki
2293// --------------------------------------------------
2294//
2295module cl_u1_oai12_12x (
2296 out,
2297 in10,
2298 in00,
2299 in01 );
2300
2301 output out;
2302 input in10;
2303 input in00;
2304 input in01;
2305
2306`ifdef LIB
2307 assign out = ~(( in10 ) & ( in00 | in01 ));
2308`endif
2309
2310endmodule
2311// --------------------------------------------------
2312// File: cl_u1_oai12_16x.behV
2313// Auto generated verilog module by HnBCellAuto
2314//
2315// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2316// By: balmiki
2317// --------------------------------------------------
2318//
2319module cl_u1_oai12_16x (
2320 out,
2321 in10,
2322 in00,
2323 in01 );
2324
2325 output out;
2326 input in10;
2327 input in00;
2328 input in01;
2329
2330`ifdef LIB
2331 assign out = ~(( in10 ) & ( in00 | in01 ));
2332`endif
2333
2334endmodule
2335// --------------------------------------------------
2336// File: cl_u1_oai12_1x.behV
2337// Auto generated verilog module by HnBCellAuto
2338//
2339// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2340// By: balmiki
2341// --------------------------------------------------
2342//
2343module cl_u1_oai12_1x (
2344 out,
2345 in10,
2346 in00,
2347 in01 );
2348
2349 output out;
2350 input in10;
2351 input in00;
2352 input in01;
2353
2354`ifdef LIB
2355 assign out = ~(( in10 ) & ( in00 | in01 ));
2356`endif
2357
2358endmodule
2359// --------------------------------------------------
2360// File: cl_u1_oai12_2x.behV
2361// Auto generated verilog module by HnBCellAuto
2362//
2363// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2364// By: balmiki
2365// --------------------------------------------------
2366//
2367module cl_u1_oai12_2x (
2368 out,
2369 in10,
2370 in00,
2371 in01 );
2372
2373 output out;
2374 input in10;
2375 input in00;
2376 input in01;
2377
2378`ifdef LIB
2379 assign out = ~(( in10 ) & ( in00 | in01 ));
2380`endif
2381
2382endmodule
2383// --------------------------------------------------
2384// File: cl_u1_oai12_4x.behV
2385// Auto generated verilog module by HnBCellAuto
2386//
2387// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2388// By: balmiki
2389// --------------------------------------------------
2390//
2391module cl_u1_oai12_4x (
2392 out,
2393 in10,
2394 in00,
2395 in01 );
2396
2397 output out;
2398 input in10;
2399 input in00;
2400 input in01;
2401
2402`ifdef LIB
2403 assign out = ~(( in10 ) & ( in00 | in01 ));
2404`endif
2405
2406endmodule
2407// --------------------------------------------------
2408// File: cl_u1_oai12_8x.behV
2409// Auto generated verilog module by HnBCellAuto
2410//
2411// Created: Wednesday May 29,2002 at 04:04:34 PM PDT
2412// By: balmiki
2413// --------------------------------------------------
2414//
2415module cl_u1_oai12_8x (
2416 out,
2417 in10,
2418 in00,
2419 in01 );
2420
2421 output out;
2422 input in10;
2423 input in00;
2424 input in01;
2425
2426`ifdef LIB
2427 assign out = ~(( in10 ) & ( in00 | in01 ));
2428`endif
2429
2430endmodule
2431// --------------------------------------------------
2432// File: cl_u1_oai21_12x.behV
2433// Auto generated verilog module by HnBCellAuto
2434//
2435// Created: Wednesday May 29,2002 at 04:04:35 PM PDT
2436// By: balmiki
2437// --------------------------------------------------
2438//
2439module cl_u1_oai21_12x (
2440 out,
2441 in10,
2442 in11,
2443 in00 );
2444
2445 output out;
2446 input in10;
2447 input in11;
2448 input in00;
2449
2450`ifdef LIB
2451 assign out = ~(( in10 | in11 ) & ( in00 ));
2452`endif
2453
2454endmodule
2455// --------------------------------------------------
2456// File: cl_u1_oai21_16x.behV
2457// Auto generated verilog module by HnBCellAuto
2458//
2459// Created: Wednesday May 29,2002 at 04:04:35 PM PDT
2460// By: balmiki
2461// --------------------------------------------------
2462//
2463module cl_u1_oai21_16x (
2464 out,
2465 in10,
2466 in11,
2467 in00 );
2468
2469 output out;
2470 input in10;
2471 input in11;
2472 input in00;
2473
2474`ifdef LIB
2475 assign out = ~(( in10 | in11 ) & ( in00 ));
2476`endif
2477
2478endmodule
2479// --------------------------------------------------
2480// File: cl_u1_oai21_1x.behV
2481// Auto generated verilog module by HnBCellAuto
2482//
2483// Created: Friday Mar 15,2002 at 02:53:58 PM PST
2484// By: balmiki
2485// --------------------------------------------------
2486//
2487module cl_u1_oai21_1x (
2488 out,
2489 in10,
2490 in11,
2491 in00 );
2492
2493 output out;
2494 input in10;
2495 input in11;
2496 input in00;
2497
2498`ifdef LIB
2499 assign out = ~(( in10 | in11 ) & ( in00 ));
2500`endif
2501
2502endmodule
2503// --------------------------------------------------
2504// File: cl_u1_oai21_2x.behV
2505// Auto generated verilog module by HnBCellAuto
2506//
2507// Created: Monday Oct 8,2001 at 11:32:23 AM PDT
2508// By: balmiki
2509// --------------------------------------------------
2510//
2511module cl_u1_oai21_2x (
2512 out,
2513 in10,
2514 in11,
2515 in00 );
2516
2517 output out;
2518 input in10;
2519 input in11;
2520 input in00;
2521
2522`ifdef LIB
2523 assign out = ~(( in10 | in11 ) & ( in00 ));
2524`endif
2525
2526endmodule
2527// --------------------------------------------------
2528// File: cl_u1_oai21_4x.behV
2529// Auto generated verilog module by HnBCellAuto
2530//
2531// Created: Monday Oct 8,2001 at 11:32:23 AM PDT
2532// By: balmiki
2533// --------------------------------------------------
2534//
2535module cl_u1_oai21_4x (
2536 out,
2537 in10,
2538 in11,
2539 in00 );
2540
2541 output out;
2542 input in10;
2543 input in11;
2544 input in00;
2545
2546`ifdef LIB
2547 assign out = ~(( in10 | in11 ) & ( in00 ));
2548`endif
2549
2550endmodule
2551// --------------------------------------------------
2552// File: cl_u1_oai21_8x.behV
2553// Auto generated verilog module by HnBCellAuto
2554//
2555// Created: Monday Oct 8,2001 at 11:32:23 AM PDT
2556// By: balmiki
2557// --------------------------------------------------
2558//
2559module cl_u1_oai21_8x (
2560 out,
2561 in10,
2562 in11,
2563 in00 );
2564
2565 output out;
2566 input in10;
2567 input in11;
2568 input in00;
2569
2570`ifdef LIB
2571 assign out = ~(( in10 | in11 ) & ( in00 ));
2572`endif
2573
2574endmodule
2575// --------------------------------------------------
2576// File: cl_u1_oai22_12x.behV
2577// Auto generated verilog module by HnBCellAuto
2578//
2579// Created: Wednesday May 29,2002 at 04:04:35 PM PDT
2580// By: balmiki
2581// --------------------------------------------------
2582//
2583module cl_u1_oai22_12x (
2584 out,
2585 in10,
2586 in11,
2587 in00,
2588 in01 );
2589
2590 output out;
2591 input in10;
2592 input in11;
2593 input in00;
2594 input in01;
2595
2596`ifdef LIB
2597 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2598`endif
2599
2600endmodule
2601// --------------------------------------------------
2602// File: cl_u1_oai22_16x.behV
2603// Auto generated verilog module by HnBCellAuto
2604//
2605// Created: Wednesday May 29,2002 at 04:04:35 PM PDT
2606// By: balmiki
2607// --------------------------------------------------
2608//
2609module cl_u1_oai22_16x (
2610 out,
2611 in10,
2612 in11,
2613 in00,
2614 in01 );
2615
2616 output out;
2617 input in10;
2618 input in11;
2619 input in00;
2620 input in01;
2621
2622`ifdef LIB
2623 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2624`endif
2625
2626endmodule
2627// --------------------------------------------------
2628// File: cl_u1_oai22_1x.behV
2629// Auto generated verilog module by HnBCellAuto
2630//
2631// Created: Wednesday May 29,2002 at 04:04:35 PM PDT
2632// By: balmiki
2633// --------------------------------------------------
2634//
2635module cl_u1_oai22_1x (
2636 out,
2637 in10,
2638 in11,
2639 in00,
2640 in01 );
2641
2642 output out;
2643 input in10;
2644 input in11;
2645 input in00;
2646 input in01;
2647
2648`ifdef LIB
2649 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2650`endif
2651
2652endmodule
2653// --------------------------------------------------
2654// File: cl_u1_oai22_2x.behV
2655// Auto generated verilog module by HnBCellAuto
2656//
2657// Created: Monday Oct 8,2001 at 11:32:24 AM PDT
2658// By: balmiki
2659// --------------------------------------------------
2660//
2661module cl_u1_oai22_2x (
2662 out,
2663 in10,
2664 in11,
2665 in00,
2666 in01 );
2667
2668 output out;
2669 input in10;
2670 input in11;
2671 input in00;
2672 input in01;
2673
2674`ifdef LIB
2675 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2676`endif
2677
2678endmodule
2679
2680`ifdef FPGA
2681`else
2682
2683// --------------------------------------------------
2684// File: cl_u1_oai22_4x.behV
2685// Auto generated verilog module by HnBCellAuto
2686//
2687// Created: Monday Oct 8,2001 at 11:32:24 AM PDT
2688// By: balmiki
2689// --------------------------------------------------
2690//
2691module cl_u1_oai22_4x (
2692 out,
2693 in10,
2694 in11,
2695 in00,
2696 in01 );
2697
2698 output out;
2699 input in10;
2700 input in11;
2701 input in00;
2702 input in01;
2703
2704`ifdef LIB
2705 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2706`endif
2707
2708endmodule
2709
2710`endif // `ifdef FPGA
2711
2712// --------------------------------------------------
2713// File: cl_u1_oai22_8x.behV
2714// Auto generated verilog module by HnBCellAuto
2715//
2716// Created: Monday Oct 8,2001 at 11:32:24 AM PDT
2717// By: balmiki
2718// --------------------------------------------------
2719//
2720module cl_u1_oai22_8x (
2721 out,
2722 in10,
2723 in11,
2724 in00,
2725 in01 );
2726
2727 output out;
2728 input in10;
2729 input in11;
2730 input in00;
2731 input in01;
2732
2733`ifdef LIB
2734 assign out = ~(( in10 | in11 ) & ( in00 | in01 ));
2735`endif
2736
2737endmodule
2738module cl_u1_xnor2_16x (
2739in0,
2740in1,
2741out
2742);
2743input in0;
2744input in1;
2745output out;
2746
2747`ifdef LIB
2748assign out = ~(in0 ^ in1);
2749`endif
2750
2751endmodule
2752
2753module cl_u1_xnor2_1x (
2754in0,
2755in1,
2756out
2757);
2758input in0;
2759input in1;
2760output out;
2761
2762`ifdef LIB
2763assign out = ~(in0 ^ in1);
2764`endif
2765
2766endmodule
2767module cl_u1_xnor2_2x (
2768in0,
2769in1,
2770out
2771);
2772input in0;
2773input in1;
2774output out;
2775
2776`ifdef LIB
2777assign out = ~(in0 ^ in1);
2778`endif
2779
2780endmodule
2781module cl_u1_xnor2_4x (
2782in0,
2783in1,
2784out
2785);
2786input in0;
2787input in1;
2788output out;
2789
2790`ifdef LIB
2791assign out = ~(in0 ^ in1);
2792`endif
2793
2794endmodule
2795module cl_u1_xnor2_6x (
2796in0,
2797in1,
2798out
2799);
2800input in0;
2801input in1;
2802output out;
2803
2804`ifdef LIB
2805assign out = ~(in0 ^ in1);
2806`endif
2807
2808endmodule
2809module cl_u1_xnor2_8x (
2810in0,
2811in1,
2812out
2813);
2814input in0;
2815input in1;
2816output out;
2817
2818`ifdef LIB
2819assign out = ~(in0 ^ in1);
2820`endif
2821
2822endmodule
2823
2824module cl_u1_xnor3_16x (
2825in0,
2826in1,
2827in2,
2828out
2829);
2830input in0;
2831input in1;
2832input in2;
2833output out;
2834
2835`ifdef LIB
2836assign out = ~(in0 ^ in1 ^ in2);
2837`endif
2838
2839
2840
2841endmodule
2842module cl_u1_xnor3_1x (
2843in0,
2844in1,
2845in2,
2846out
2847);
2848input in0;
2849input in1;
2850input in2;
2851output out;
2852
2853`ifdef LIB
2854assign out = ~(in0 ^ in1 ^ in2);
2855`endif
2856
2857
2858
2859endmodule
2860module cl_u1_xnor3_2x (
2861in0,
2862in1,
2863in2,
2864out
2865);
2866input in0;
2867input in1;
2868input in2;
2869output out;
2870
2871`ifdef LIB
2872assign out = ~(in0 ^ in1 ^ in2);
2873`endif
2874
2875
2876
2877endmodule
2878module cl_u1_xnor3_4x (
2879in0,
2880in1,
2881in2,
2882out
2883);
2884input in0;
2885input in1;
2886input in2;
2887output out;
2888
2889`ifdef LIB
2890assign out = ~(in0 ^ in1 ^ in2);
2891`endif
2892
2893
2894
2895endmodule
2896module cl_u1_xnor3_6x (
2897in0,
2898in1,
2899in2,
2900out
2901);
2902input in0;
2903input in1;
2904input in2;
2905output out;
2906
2907`ifdef LIB
2908assign out = ~(in0 ^ in1 ^ in2);
2909`endif
2910
2911
2912
2913endmodule
2914module cl_u1_xnor3_8x (
2915in0,
2916in1,
2917in2,
2918out
2919);
2920input in0;
2921input in1;
2922input in2;
2923output out;
2924
2925`ifdef LIB
2926assign out = ~(in0 ^ in1 ^ in2);
2927`endif
2928
2929
2930
2931endmodule
2932module cl_u1_xor2_16x (
2933in0,
2934in1,
2935out
2936);
2937input in0;
2938input in1;
2939output out;
2940
2941`ifdef LIB
2942assign out = in0 ^ in1;
2943`endif
2944
2945endmodule
2946
2947module cl_u1_xor2_1x (
2948in0,
2949in1,
2950out
2951);
2952input in0;
2953input in1;
2954output out;
2955
2956`ifdef LIB
2957assign out = in0 ^ in1;
2958`endif
2959
2960endmodule
2961module cl_u1_xor2_2x (
2962in0,
2963in1,
2964out
2965);
2966input in0;
2967input in1;
2968output out;
2969
2970`ifdef LIB
2971assign out = in0 ^ in1;
2972`endif
2973
2974endmodule
2975module cl_u1_xor2_4x (
2976in0,
2977in1,
2978out
2979);
2980input in0;
2981input in1;
2982output out;
2983
2984`ifdef LIB
2985assign out = in0 ^ in1;
2986`endif
2987
2988endmodule
2989module cl_u1_xor2_6x (
2990in0,
2991in1,
2992out
2993);
2994input in0;
2995input in1;
2996output out;
2997
2998`ifdef LIB
2999assign out = in0 ^ in1;
3000`endif
3001
3002endmodule
3003module cl_u1_xor2_8x (
3004in0,
3005in1,
3006out
3007);
3008input in0;
3009input in1;
3010output out;
3011
3012`ifdef LIB
3013assign out = in0 ^ in1;
3014`endif
3015
3016endmodule
3017module cl_u1_xor3_16x (
3018in0,
3019in1,
3020in2,
3021out
3022);
3023input in0;
3024input in1;
3025input in2;
3026output out;
3027
3028`ifdef LIB
3029assign out = in0 ^ in1 ^ in2;
3030`endif
3031
3032
3033endmodule
3034
3035module cl_u1_xor3_1x (
3036in0,
3037in1,
3038in2,
3039out
3040);
3041input in0;
3042input in1;
3043input in2;
3044output out;
3045
3046`ifdef LIB
3047assign out = in0 ^ in1 ^ in2;
3048`endif
3049
3050
3051endmodule
3052module cl_u1_xor3_2x (
3053in0,
3054in1,
3055in2,
3056out
3057);
3058input in0;
3059input in1;
3060input in2;
3061output out;
3062
3063`ifdef LIB
3064assign out = in0 ^ in1 ^ in2;
3065`endif
3066
3067
3068endmodule
3069module cl_u1_xor3_4x (
3070in0,
3071in1,
3072in2,
3073out
3074);
3075input in0;
3076input in1;
3077input in2;
3078output out;
3079
3080`ifdef LIB
3081assign out = in0 ^ in1 ^ in2;
3082`endif
3083
3084
3085endmodule
3086module cl_u1_xor3_6x (
3087in0,
3088in1,
3089in2,
3090out
3091);
3092input in0;
3093input in1;
3094input in2;
3095output out;
3096
3097`ifdef LIB
3098assign out = in0 ^ in1 ^ in2;
3099`endif
3100
3101
3102endmodule
3103module cl_u1_xor3_8x (
3104in0,
3105in1,
3106in2,
3107out
3108);
3109input in0;
3110input in1;
3111input in2;
3112output out;
3113
3114`ifdef LIB
3115assign out = in0 ^ in1 ^ in2;
3116`endif
3117
3118
3119endmodule
3120
3121module cl_u1_clkchp_4x (
3122 tck,
3123 aclk,
3124 bclk
3125);
3126input tck;
3127output aclk;
3128output bclk;
3129
3130
3131`ifdef LIB
3132 reg chop_aclk, chop_bclk;
3133
3134 always @(posedge tck) begin
3135 chop_aclk = 1'b1;
3136 #5 chop_aclk = 1'b0;
3137 end
3138 always @(negedge tck) begin
3139 chop_bclk = 1'b1;
3140 #5 chop_bclk = 1'b0;
3141 end
3142
3143 assign aclk = chop_aclk;
3144 assign bclk = chop_bclk;
3145`endif
3146
3147endmodule
3148
3149module cl_u1_muxprotect_2x (
3150d0,
3151d1,
3152d2,
3153d3,
3154scan_en,
3155e0,
3156e1,
3157e2,
3158e3
3159);
3160input d0;
3161input d1;
3162input d2;
3163input d3;
3164input scan_en;
3165output e0;
3166output e1;
3167output e2;
3168output e3;
3169
3170`ifdef LIB
3171assign e0 = scan_en | d0;
3172assign e1= ~scan_en & d1;
3173assign e2= ~scan_en & d2;
3174assign e3= ~scan_en & d3;
3175`endif
3176
3177endmodule
3178