Subversion Repositories Vertical

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 mjames 1
From comp.lang.verilog Wed May 13 09:09:29 1992
2
From: fwb@hpfcso.FC.HP.COM (Frank Bennett)
3
Date: Mon, 11 May 1992 17:19:24 GMT
4
Subject: hdl.y - a simple verilog parser
5
Message-ID: <122770003@hpfcso.FC.HP.COM>
6
Organization: Hewlett-Packard, Fort Collins, CO, USA
7
Path: walter.cray.com!timbuk.cray.com!uunet!europa.asd.contel.com!darwin.sura.net!mips!sdd.hp.com!hpscdc!hplextra!hpfcso!fwb
8
Newsgroups: comp.lang.verilog
9
Lines: 3318
10
Status: OR
11
 
12
 
13
  hdl.y below is a verilog parser written using the Unix utility - yacc. It 
14
by no means is a complete verilog parser. This only represents a few nights of
15
effort in front of the ole PC. This is donated in the hope that this will 
16
enable additional work by individuals interested in learning verilog & yacc.
17
 
18
  hdl.y however does seem to parse the two supplied examples: s.g & b.g, a
19
small and big verilog HDL file, representatve of a couple of circuits produced
20
by Synopsys. 'b.g' has been hacked up so as to remove any likening to a circuit
21
that will actually work. This file however contains modules mapped to actual
22
gates, unmapped modules & concatenated net bundles.
23
 
24
  This is doable on DOS but you need to get:
25
    a Public Domain  yacc
26
    DOS extender for 386 to avoid intel segmentation/640k problems
27
    sort - probabily need something better than what DOS offers for large
28
           netlist. (I forget where a got this)
29
  See below for source of yacc & DOS extender.
30
 
31
  use :set ts=8 if you use vi
32
 
33
have fun,
34
Frank
35
 
36
# This is a shell archive.  Remove anything before this line,
37
# then unpack it by saving it in a file and typing "sh file".
38
#
39
 
40
echo x - hdl.y
41
cat >hdl.y <<'@EOF'
42
/*
43
 * hdl.y parser for verilog net lists 
44
 *  by  Frank Bennett 
45
 *
46
 * i.e. hdl s.g 
47
 * products two files: s.nam, s.seq - 1 net per line
48
 *   s.seq is sorted by reference designator
49
 *   s.nam is sorted by netname
50
 *
51
 * - primarily handles "flat" verilog HDL netlists.
52
 * - parses hierarchical netlist but currently doesn't flatten them.
53
 * - concatenated signal names need to be expanded. currently the whole
54
 *   netname bundle is given the name : "concatenation"
55
 * - not included :
56
 * 	Behavioral Statements
57
 *	Specify blocks
58
 *
59
 *  PD yacc :
60
 * byacc, Bob Corbett. Berkely yacc adapted for MINIX by Peter Housel
61
 * COLOGNE:commands/lex-yacc/byacc.tar.Z
62
 *
63
 * DOS extender - 386 to avoid malloc problems
64
 * djgpp.zip 
65
 * wuarchive.wustl.edu   (128.252.135.4): /mirrors3/garbo.uwasa.fi/programming
66
 */
67
%{
68
#define YYDEBUG 1
69
#include <string.h>
70
#include <ctype.h>
71
#include <errno.h>
72
#include <stdio.h>
73
#include <fcntl.h>
74
 
75
#define out(c) putc(c,yyout)
76
#define NCOM 300
77
 
78
int	bug=0, ind ;
79
FILE 	*fopen(), *freopen(), *fi, *ft, *fo, *fr ;
80
static 	int i, comment=0;
81
char  	*cp, *st, refd[20], part[20] ;
82
char	ln[80] ;
83
 
84
extern char 	*strsave(), *malloc();
85
extern int	yyleng, lexval ;
86
extern char	yytext[];
87
extern char	yysbuf[];
88
 
89
typedef struct YYS_TYPE { /* use instead of %union below */
90
    int i;
91
    char s[50];
92
    } yys_type ;
93
#define YYSTYPE     yys_type
94
 
95
%}
96
 
97
/* HP-UX yacc seems to be fussy about :
98
%union {
99
    int i;
100
    char s[50];
101
    }
102
 */
103
 
104
%token NL NAME NUMBER MODULE ENDMODULE WIRE INPUT OUTPUT INOUT
105
%token NETTYPE ASSIGN STRENGTH0 STRENGTH1 GATETYPE INITIAL
106
%token PARAMETER REG TIME INTEGER REAL EVENT DEFPARAM
107
%token BIN_OP UNARY_OP PRIMITIVE ENDPRIM TABLE ENDTABLE
108
%token OUT_SYM LEV_SYM EDGE_SYM
109
 
110
%left BIN_OP
111
 
112
%start modules
113
 
114
%%
115
modules 	: modules mod_prim
116
		| modules         error
117
		|      	  mod_prim
118
		;
119
 
120
mod_prim	: module
121
		| primitive
122
		;
123
 
124
primitive	: PRIMITIVE NAME '(' list_of_vars ')' ';' prim_body ENDPRIM
125
		;
126
 
127
list_of_vars	: list_of_vars ',' NAME
128
		| NAME
129
		;
130
 
131
prim_body	: UDP_decl UDP_init table_def
132
		| UDP_decl          table_def
133
		;
134
 
135
UDP_decl	: output_decl
136
		| input_decl
137
		| reg_decl
138
		;
139
 
140
UDP_init	: INITIAL NAME '=' init_val
141
		;
142
 
143
init_val	: '1' '\'' 'b' '0'
144
		| '1' '\'' 'b' '1'
145
		| '1' '\'' 'b' 'x'
146
		| '1'
147
		| '0'
148
		;
149
 
150
table_def	: TABLE table_entries ENDTABLE
151
		;
152
 
153
table_entries	: table_entries combin_entry
154
		|               combin_entry
155
		| table_entries seq_entry
156
		|               seq_entry
157
		;
158
 
159
combin_entry	: level_in_list ':' OUT_SYM ';'
160
		;
161
 
162
seq_entry	: level_in_list ':' state ':' next_state ';'
163
		|  edge_in_list ':' state ':' next_state ';'
164
		;
165
 
166
level_in_list 	: LEV_SYM
167
		;
168
 
169
edge_in_list	: LEV_SYM edge LEV_SYM
170
		|         edge
171
		;
172
 
173
edge		: '(' LEV_SYM LEV_SYM ')'
174
		| EDGE_SYM
175
		;
176
 
177
state		: LEV_SYM
178
		;
179
next_state	: OUT_SYM
180
		;
181
 
182
module		: MODULE NAME ';' mod_body ENDMODULE 
183
      	 	| MODULE NAME '('list_of_ports')' ';' mod_body ENDMODULE 
184
		;
185
 
186
list_of_ports	: list_of_ports ',' port
187
		| port
188
		;
189
 
190
port		: NAME
191
		| NAME '[' const_exp ']'
192
		| NAME '[' const_exp ':' const_exp ']'
193
		;
194
 
195
mod_body	: mod_body module_item 
196
		|          module_item 
197
		;
198
 
199
module_item	: param_decl
200
		| input_decl
201
		| output_decl
202
		| inout_decl
203
		| net_decl
204
		| reg_decl
205
		| time_decl
206
		| integer_decl
207
		| real_decl
208
		| event_decl
209
		| gate_decl
210
		| module_instant
211
		| defparm_decl
212
		| cont_assign
213
		;
214
 
215
param_decl	: PARAMETER
216
		;
217
reg_decl	: REG
218
		;
219
time_decl	: TIME
220
		;
221
integer_decl	: INTEGER
222
		;
223
real_decl	: REAL
224
		;
225
event_decl	: EVENT
226
		;
227
defparm_decl	: DEFPARAM
228
		;
229
gate_decl	: GATETYPE                   gate_instant
230
		| GATETYPE dr_strength       gate_instant
231
		| GATETYPE             delay gate_instant
232
		| GATETYPE dr_strength delay gate_instant
233
		;
234
 
235
gate_instant	: NAME '(' exp ')'
236
		;
237
 
238
input_decl	: INPUT       list_vars ';'
239
		| INPUT range list_vars ';'
240
		;
241
 
242
output_decl	: OUTPUT       list_vars ';'
243
		| OUTPUT range list_vars ';'
244
		;
245
 
246
inout_decl	: INOUT       list_vars ';'
247
		| INOUT range list_vars ';'
248
		;
249
 
250
net_decl	: NETTYPE             list_vars ';'
251
		| NETTYPE range       list_vars ';'
252
		| NETTYPE       delay list_vars ';'
253
		| NETTYPE range delay list_vars ';'
254
		;
255
 
256
range		: '[' const_exp ':' const_exp ']' 
257
		;
258
 
259
delay		: '#' number
260
		| '#' NAME
261
		;
262
 
263
dr_strength	: '(' STRENGTH0 ',' STRENGTH1 ')'
264
		| '(' STRENGTH1 ',' STRENGTH0 ')'
265
		;
266
 
267
list_vars	: list_vars ',' NAME
268
		|               NAME
269
		;
270
 
271
module_instant	: name_mod         mod_inst_list ';' 
272
              	| name_mod par_val mod_inst_list ';' 
273
		;
274
 
275
name_mod	: NAME
276
		{ strcpy( part, yytext); }
277
		;
278
 
279
mod_inst_list	: mod_inst_list ',' mod_inst
280
		|                   mod_inst
281
		;
282
 
283
mod_inst	: reference '(' list_mod_conn ')'
284
        	| reference '(' list_nam_conn ')'
285
		;
286
 
287
reference	: NAME
288
		{ strcpy( refd, yytext); }
289
		;
290
 
291
list_mod_conn	: list_mod_conn ',' exp
292
		|                   exp
293
		;
294
 
295
list_nam_conn	: list_nam_conn ',' nam_conn
296
		|                   nam_conn
297
		;
298
 
299
nam_conn	: '.' NAME '(' sig_nam ')'
300
		{
301
		    fprintf(fo,"%-18s %-22s %-10s %10s %s\n",
302
			 $4.s, refd, $2.s, part, modnam);
303
		}
304
		;
305
 
306
sig_nam		: NAME
307
		| NAME '[' exp ']'
308
		{ strcpy($$.s, $1.s);
309
		  strcat($$.s, "[");
310
		  strcat($$.s, $3.s);
311
		  strcat($$.s, "]");
312
		}
313
		| NAME '[' exp ':' exp ']'
314
		{ strcpy($$.s, $1.s);
315
		  strcat($$.s, "[");
316
		  strcat($$.s, $3.s);
317
		  strcat($$.s, ":");
318
		  strcat($$.s, $5.s);
319
		  strcat($$.s, "]");
320
		}
321
		| concatenation
322
		{ strcpy($$.s, "concatenation");}
323
		;
324
 
325
par_val		: '#' '(' exp ')' 
326
		;
327
 
328
cont_assign	: ASSIGN                   list_assigns ';'
329
		| ASSIGN dr_strength       list_assigns ';'
330
		| ASSIGN             delay list_assigns ';'
331
		| ASSIGN dr_strength delay list_assigns ';'
332
		;
333
 
334
list_assigns	: list_assigns ',' assignment
335
		|                  assignment
336
		;
337
 
338
assignment	: lvalue '='     exp
339
		| lvalue '=' '(' exp ')'
340
		;
341
 
342
lvalue		: NAME
343
		| NAME '[' exp ']'
344
		| concatenation
345
		;
346
 
347
const_exp	: exp
348
		;
349
 
350
concatenation	: '{' exp_list '}'
351
		;
352
 
353
exp_list	: exp_list ',' exp
354
		|              exp
355
		;
356
 
357
exp		: primary
358
		| UNARY_OP primary
359
		| UNARY_OP '(' exp ')'
360
		| exp BIN_OP exp
361
		;
362
 
363
primary		: number
364
		| NAME '[' exp ']'
365
		| NAME
366
		| concatenation
367
		;
368
 
369
number		: NUMBER
370
		| NUMBER '\'' 'b' NUMBER
371
		| NUMBER '\'' 'd' NUMBER
372
		| NUMBER '\'' 'o' NUMBER
373
		;
374
 
375
%%	/* start of main */
376
 
377
main(argc,argv)
378
int	argc;
379
char	*argv[];
380
{
381
    int	i,p;
382
    char frnam[60], fsnam[60];
383
 
384
    if(argc == 1) {
385
	fprintf(stderr,"use:hdl [-ds] file\n"); exit(1);
386
    }
387
    for(i=1; i<argc; i++)
388
    	if(argv[i][0] == '-'){
389
		bug     = ((argv[i][1] == 'd') || (argv[i][2] == 'd'));
390
	}
391
	else break;
392
 
393
 
394
    if(freopen( argv[i],"r",stdin) == NULL){
395
	fprintf(stderr,"can't open %s\n", argv[i]);exit(1);
396
    }	else {
397
	/* open output */
398
	for( cp=argv[i], st=fsnam ; *cp && *cp != '.' ; )*st++ = *cp++;
399
	*st = 0;
400
	strcpy( frnam, fsnam );	
401
	strcat( frnam, ".nam");	strcat( fsnam, ".seq");
402
 
403
	if((fo = fopen(fsnam, "w")) == NULL) err("can't open %s",fsnam);
404
 
405
	fprintf(stderr,"reading nets from %s\n", argv[i]);
406
    }
407
 
408
    yyparse() ;
409
 
410
    fclose(fo);
411
 
412
    fprintf(stderr,"sorting...\n");
413
    sprintf(ln, "sort <%s >%s", fsnam, frnam);	system(ln);
414
}
415
 
416
# define YYLMAX 132
417
 
418
int	yylineno =0;
419
int	yyleng ;
420
char	yytext[YYLMAX];
421
char	yysbuf[YYLMAX];
422
char 	modnam[YYLMAX];
423
int 	yysptr = -1, yylast, toklast;
424
FILE	*yyout ={stderr};
425
 
426
#define YYNL 10
427
 
428
int 
429
yylex() /* Gets the next token from the input stream */
430
{
431
	int  c, i, j ;
432
	static int eline ; 
433
	extern int bug;
434
 
435
start:
436
	if(yysptr == -1){
437
		i = 0;	eline =1; yylineno++;
438
		/* get line to yysbuf */
439
		while( ((c=getchar()) != EOF) && (c != YYNL)){
440
			if(c == '\t'){ c=' ';do yysbuf[i++] = c; while(i & 7);}
441
			else	{
442
				if (c != ' ')eline =0;	
443
				yysbuf[i++] = c;
444
			}
445
		}
446
		yysptr = 0;
447
		yysbuf[i] = '\0';
448
		yylast = toklast = 0;
449
	}
450
	if(c == EOF) 
451
	    return(EOF);
452
 
453
	while( (c = yysbuf[yysptr]) == ' ') yysptr++;
454
 
455
	if(bug){
456
		fprintf(yyout,"%03d:%s\n",yylineno,yysbuf);
457
		for( i=yysptr ; i>0 ; i-- )out(' ');
458
	}
459
 
460
	 if ( c == YYNL || c== 0 ){ 
461
		yysptr= -1;
462
		if(bug)fprintf(yyout,"\n");
463
		goto start;
464
	 } 
465
 
466
	 if( comment ){
467
		while( (c = yysbuf[yysptr++]) != '*' && c != '/'&& c );
468
		if( c == '*' && yysbuf[yysptr]=='/' )
469
		    comment-- ;
470
	        if( c == '/' && yysbuf[yysptr]=='*' )
471
		    comment++ ;
472
		if( c ==  0  )
473
		    yysptr = -1;
474
		if( comment )
475
		    goto start;
476
		yysptr++;
477
		    goto start;
478
	 }
479
 
480
	 if( c == '/' ) { /* comment // ? */
481
	     if( yysbuf[yysptr+1] == '/') {
482
	     	yysptr= -1;
483
	     	goto start;
484
	     }
485
	     if( yysbuf[yysptr+1] == '*') {
486
		comment++; yysptr +=2;
487
		goto start;
488
	     }
489
	 }
490
	 if( c == '\\'){ /* escaped name */
491
 		yyleng=0;
492
	        while( (c=yysbuf[++yysptr]) != ' ' ) 
493
	                yytext[yyleng++] = c;
494
		yytext[yyleng] = '\0'; 
495
	        if(bug)fprintf(yyout,"    ^tok:NAME\n");
496
		if( toklast==MODULE ){
497
		    toklast = 0;
498
		    strcpy(modnam, yytext);
499
		    fprintf(stderr,"module %s\n", modnam);
500
		}
501
		if( toklast==PRIMITIVE ){
502
		    toklast = 0;
503
		    strcpy(modnam, yytext);
504
		    fprintf(stderr,"primitive %s\n", modnam);
505
		}
506
		strcpy(yylval.s, yytext);
507
		return(NAME);
508
	 }
509
	 if( isalpha(c) ) {
510
		if( yylast == '\'' ){ /* number base - 1'b0 */
511
		    yysptr++;
512
	 	    if(bug)
513
         	       if(c < ' ')   fprintf(yyout,"    ^CHAR:%d\n",c);
514
			      else   fprintf(yyout,"    ^CHAR:%c\n",c);
515
	            yylast = c;
516
	            return(c);
517
		}
518
		if( (j=chktok()) != 0){
519
		    toklast = j; 
520
		    return(j);
521
		}
522
        name:
523
 		yyleng=0;
524
	        while( isalpha(c) || isdigit(c) || c=='_' ) {
525
	                yytext[yyleng++] = c; c = yysbuf[++yysptr];
526
       		}
527
		yytext[yyleng] = '\0'; 
528
	        if(bug)fprintf(yyout,"    ^tok:NAME\n");
529
		if( toklast==MODULE ){
530
		    toklast = 0;
531
		    strcpy(modnam, yytext);
532
		    fprintf(stderr,"module %s\n", modnam);
533
		}
534
		if( toklast==PRIMITIVE ){
535
		    toklast = 0;
536
		    strcpy(modnam, yytext);
537
		    fprintf(stderr,"primitive %s\n", modnam);
538
		}
539
		strcpy(yylval.s, yytext);
540
		return(NAME);
541
	 } 
542
	 if( isdigit(c) ) {
543
 		yyleng=0;
544
	        while( isdigit(c) ) {
545
	                yytext[yyleng++] = c; c = yysbuf[++yysptr];
546
       		}
547
		yytext[yyleng] = '\0'; 
548
	        if(bug)fprintf(yyout,"    ^tok:NUMBER\n");
549
		strcpy(yylval.s, yytext);
550
		return(NUMBER);
551
	 }
552
	 yysptr++; yylast = c;
553
	 if( c=='+' || c=='-' || c=='&' || c=='|' || c=='^' ){
554
	     if(bug) fprintf(yyout,"    ^BIN_OP:%c\n",c);
555
	     return(BIN_OP);
556
	 }
557
	 if( c=='!' || c=='~' ){
558
	     if(bug) fprintf(yyout,"    ^UNARY_OP:%c\n",c);
559
	     return(UNARY_OP);
560
	 }
561
	 if(bug)
562
	     if(c < ' ')
563
		fprintf(yyout,"    ^CHAR:%d\n",c);
564
	     else
565
		fprintf(yyout,"    ^CHAR:%c\n",c);
566
	 return(c);
567
} /* nexttoken */
568
 
569
int chktok()
570
{
571
    static struct { char *keyword; int val, tok; } key [] = {
572
	"module " ,   0, MODULE,
573
	"endmodule" , 0, ENDMODULE, 
574
	"primitive ", 0, PRIMITIVE,
575
	"endprimitive",0,ENDPRIM,
576
	"input "    , 0, INPUT,
577
	"output "   , 0, OUTPUT,
578
	"inout "    , 0, INOUT,
579
	"assign "   , 0, ASSIGN,
580
	"wire "     , 0, NETTYPE,
581
	"triand "   , 1, NETTYPE,
582
	"trior "    , 2, NETTYPE,
583
	"tri1 "     , 3, NETTYPE,
584
	"tri "      , 4, NETTYPE,
585
	"supply0 "  , 5, NETTYPE,
586
	"supply1 "  , 6, NETTYPE,
587
	"wor "      , 7, NETTYPE,
588
	"trireg "   , 8, NETTYPE,
589
	"supply0 "  , 0, STRENGTH0,
590
	"strong0 "  , 1, STRENGTH0,
591
	"pull0 "    , 2, STRENGTH0,
592
	"weak0 "    , 3, STRENGTH0,
593
	"highz0 "   , 4, STRENGTH0,
594
	"supply1 "  , 0, STRENGTH1,
595
	"strong1 "  , 1, STRENGTH1,
596
	"pull1 "    , 2, STRENGTH1,
597
	"weak1 "    , 3, STRENGTH1,
598
	"highz1 "   , 4, STRENGTH1,
599
	"parameter ", 0, PARAMETER,
600
	"reg "	    , 0, REG,
601
	"time "	    , 0, TIME,
602
	"integer "  , 0, INTEGER,
603
	"real "     , 0, REAL,
604
	"event "    , 0, EVENT,
605
	"defparam " , 0, DEFPARAM,
606
	"and "	    , 0, GATETYPE,
607
	"nand "     , 1, GATETYPE,
608
	"or " 	    , 2, GATETYPE,
609
	"nor "      , 3, GATETYPE,
610
	"xor "	    , 4, GATETYPE,
611
	"xnor "     , 5, GATETYPE,
612
	"buf "	    , 6, GATETYPE,
613
	"tran "     , 7, GATETYPE,
614
	"table "    , 0, TABLE,
615
	"endtable"  , 0, ENDTABLE,
616
	"initial "  , 0, INITIAL,
617
	NULL, 0, 0
618
	};
619
    int	save, i, j ;
620
    char	*s; 
621
 
622
    for( j=0 ; (s=key[j].keyword) != NULL ; j++) {
623
	save = yysptr; yyleng = 0;
624
	while( *s == yysbuf[yysptr++] && *s )
625
	    yytext[yyleng++] = *s++;
626
	if(*s == '\0'){
627
	    yytext[yyleng] = '\0';
628
	    yysptr--;
629
	    if(bug){
630
		for( i=yysptr-1 ; i>0 ; i-- )out(' ');
631
		fprintf(yyout,"    ^tok:%s\n",yytext);
632
	    }
633
	    yylval.i = key[j].val;
634
	    return(key[j].tok);
635
        }
636
        yysptr = save;
637
    }
638
    return(0);
639
}
640
 
641
yyerror(s)
642
char	*s;
643
{
644
    int  i;
645
 
646
    fprintf(stderr,"%s error on line %d\n",s,yylineno);
647
    fprintf(stderr,"%s\n", yysbuf);
648
    for( i=yysptr ; i>0 ; i-- )out(' ');
649
    fprintf(stderr,"^\n");
650
}
651
 
652
char *strsave(s)
653
char *s;
654
{
655
    char *p, *malloc();
656
 
657
    if((p = malloc(strlen(s)+1)) != NULL) strcpy(p,s);
658
    if( p==NULL)err("out of malloc space");
659
    return(p);
660
}
661
 
662
err(s,t)
663
char *s,*t;
664
{
665
    fprintf(stderr,s,t); fprintf(stderr,"\n");
666
    exit(1);
667
}
668
@EOF
669
 
670
chmod 644 hdl.y
671
 
672
echo x - makefile
673
sed 's/^@//' >makefile <<'@EOF'
674
 
675
CFLAGS = -O
676
 
677
all:	hdl
678
 
679
hdl.o : hdl.y
680
	yacc -tv $*.y
681
	mv y.tab.c $*.c
682
	cc $(CFLAGS) -c $*.c
683
 
684
@.c.o:
685
	cc $(CFLAGS) -c $*.c
686
 
687
hdl:	hdl.o
688
	cc $(CFLAGS) -o hdl hdl.o
689
	rm hdl.o
690
 
691
@EOF
692
 
693
chmod 644 makefile
694
 
695
echo x - s.g
696
cat >s.g <<'@EOF'
697
 
698
module rpl_sub_n5_3 ( A, B, SUM );
699
input  [4:0] A;
700
input  [4:0] B;
701
output [4:0] SUM;
702
    wire \B[3] , n50, n51, n52, n53, n40, n54, n41, n55, n42, n43, n44, n45, 
703
        n46, n47, n48, n49, n38, n39;
704
    EXNORA U7 ( .X(SUM[1]), .A(n48), .B(n54) );
705
    EXNORA U8 ( .X(SUM[3]), .A(n41), .B(n47) );
706
    INVB U9 ( .X(n46), .A(B[1]) );
707
    AO21H U20 ( .X(n38), .A(n50), .B(n54), .C(n39) );
708
    AOI21H U21 ( .X(SUM[4]), .A(n47), .B(n38), .C(n49) );
709
    NAN2H U22 ( .X(n40), .A(n45), .B(n42) );
710
    AOI21H U23 ( .X(n41), .A(n50), .B(n54), .C(n40) );
711
    AOI22 U10 ( .X(n44), .A(n54), .B(n55), .C(n46), .D(A[1]) );
712
    OA21H U24 ( .X(n50), .A(A[0]), .B(n52), .C(n53) );
713
    NAN2B U11 ( .X(n42), .A(n43), .B(A[2]) );
714
    OR2H U25 ( .X(n55), .A(n52), .B(A[0]) );
715
    NAN3H U12 ( .X(n45), .A(A[1]), .B(n53), .C(n46) );
716
    INVB U13 ( .X(n51), .A(A[3]) );
717
    EXNORA U14 ( .X(n53), .A(A[2]), .B(B[2]) );
718
    INVB U15 ( .X(n43), .A(B[2]) );
719
    INVB U16 ( .X(n48), .A(n55) );
720
    AO21H U17 ( .X(SUM[0]), .A(A[0]), .B(n52), .C(n48) );
721
    INVB U18 ( .X(n52), .A(B[0]) );
722
    NOR2B U19 ( .X(n49), .A(n51), .B(\B[3] ) );
723
    BUF2 U2 ( .X(\B[3] ), .A(B[3]) );
724
    EXNORA U3 ( .X(SUM[2]), .A(n44), .B(n53) );
725
    EXNORH U4 ( .X(n54), .A(A[1]), .B(B[1]) );
726
    NAN2B U5 ( .X(n39), .A(n45), .B(n42) );
727
    EXORA U6 ( .X(n47), .A(\B[3] ), .B(n51) );
728
endmodule
729
@EOF
730
 
731
chmod 644 s.g
732
 
733
echo x - b.g
734
cat >b.g <<'@EOF'
735
module wrtgraycntr ( count, cnt_en, fifo_disable, anyreset, clock, sqo, sdi, 
736
    se );
737
output [4:0] count;
738
input  cnt_en, fifo_disable, anyreset, clock, sdi, se;
739
output sqo;
740
    assign n45 = (n41 & ~n43);
741
    assign n47 = (n45 & n46);
742
    assign n48 = (n45 & ~n46);
743
    \**FFGEN**  \next_count_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0), 
744
        .force_00(\n142[4] ), .force_01(\n146[4] ), .force_10(\n145[4] ), 
745
        .force_11(\next_count141[4] ), .Q(\next_count[4] ) );
746
    \**FFGEN**  \next_count_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0), 
747
        .force_00(\n142[3] ), .force_01(\n146[3] ), .force_10(\n145[3] ), 
748
        .force_11(\next_count141[3] ), .Q(\next_count[3] ) );
749
    \**FFGEN**  \next_count_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0), 
750
        .force_00(\n142[2] ), .force_01(\n146[2] ), .force_10(\n145[2] ), 
751
        .force_11(\next_count141[2] ), .Q(\next_count[2] ) );
752
    \**FFGEN**  \next_count_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0), 
753
        .force_00(\n142[1] ), .force_01(\n146[1] ), .force_10(\n145[1] ), 
754
        .force_11(\next_count141[1] ), .Q(\next_count[1] ) );
755
    \**FFGEN**  \next_count_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0), 
756
        .force_00(\n142[0] ), .force_01(\n146[0] ), .force_10(\n145[0] ), 
757
        .force_11(\next_count141[0] ), .Q(\next_count[0] ) );
758
    assign n250 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
759
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
760
    assign n118 = n252;
761
    assign n252 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
762
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
763
    assign n115 = n254;
764
    assign n254 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
765
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
766
    assign n133 = n242;
767
    assign n112 = n256;
768
    assign n242 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
769
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
770
    assign n37 = n139;
771
    assign n130 = n244;
772
    assign n256 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
773
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
774
    assign n139 = (~(anyreset ^ 1'b1));
775
    assign n244 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
776
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
777
    assign n109 = n258;
778
    assign \n145[4]  = (\next_count141[4]  & \n142[4] );
779
    assign \n145[3]  = (\next_count141[3]  & \n142[3] );
780
    assign \n145[2]  = (\next_count141[2]  & \n142[2] );
781
    assign \n145[1]  = (\next_count141[1]  & \n142[1] );
782
    assign \n145[0]  = (\next_count141[0]  & \n142[0] );
783
    assign \n146[4]  = (~\next_count141[4]  & \n142[4] );
784
    assign \n146[3]  = (~\next_count141[3]  & \n142[3] );
785
    assign \n146[2]  = (~\next_count141[2]  & \n142[2] );
786
    assign \n146[1]  = (~\next_count141[1]  & \n142[1] );
787
    assign \n146[0]  = (~\next_count141[0]  & \n142[0] );
788
    assign n258 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
789
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
790
    assign n127 = n246;
791
    assign n246 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
792
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
793
    assign n125 = (n123 & n124);
794
    assign n106 = n260;
795
    assign n124 = n248;
796
    assign n126 = (n123 & ~n124);
797
    SELECT_OP U74 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2({
798
        Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0, 
799
        Logic0, Logic1, Logic1}), .DATA4({Logic0, Logic0, Logic0, Logic1, 
800
        Logic0}), .DATA5({Logic0, Logic0, Logic1, Logic1, Logic0}), .DATA6({
801
        Logic0, Logic0, Logic1, Logic1, Logic1}), .DATA7({Logic0, Logic0, 
802
        Logic1, Logic0, Logic1}), .DATA8({Logic0, Logic0, Logic1, Logic0, 
803
        Logic0}), .DATA9({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA10({
804
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA11({Logic0, Logic1, 
805
        Logic1, Logic1, Logic1}), .DATA12({Logic0, Logic1, Logic1, Logic1, 
806
        Logic0}), .DATA13({Logic0, Logic1, Logic0, Logic1, Logic0}), .DATA14({
807
        Logic0, Logic1, Logic0, Logic1, Logic1}), .DATA15({Logic0, Logic1, 
808
        Logic0, Logic0, Logic1}), .DATA16({Logic0, Logic1, Logic0, Logic0, 
809
        Logic0}), .DATA17({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA18({
810
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic1, 
811
        Logic0, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic0, Logic1, 
812
        Logic0}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic0}), .DATA22({
813
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1, 
814
        Logic1, Logic0, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic0, 
815
        Logic0}), .DATA25({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA26({
816
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA27({Logic1, Logic0, 
817
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic0, Logic1, Logic1, 
818
        Logic0}), .DATA29({Logic1, Logic0, Logic0, Logic1, Logic0}), .DATA30({
819
        Logic1, Logic0, Logic0, Logic1, Logic1}), .DATA31({Logic1, Logic0, 
820
        Logic0, Logic0, Logic1}), .DATA32({Logic1, Logic0, Logic0, Logic0, 
821
        Logic0}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA34({
822
        n218, n222, count[2], count[1], count[0]}), .CONTROL1(n38), .CONTROL2(
823
        n44), .CONTROL3(n47), .CONTROL4(n50), .CONTROL5(n53), .CONTROL6(n56), 
824
        .CONTROL7(n59), .CONTROL8(n62), .CONTROL9(n65), .CONTROL10(n68), 
825
        .CONTROL11(n71), .CONTROL12(n74), .CONTROL13(n77), .CONTROL14(n80), 
826
        .CONTROL15(n83), .CONTROL16(n86), .CONTROL17(n89), .CONTROL18(n92), 
827
        .CONTROL19(n95), .CONTROL20(n98), .CONTROL21(n101), .CONTROL22(n104), 
828
        .CONTROL23(n107), .CONTROL24(n110), .CONTROL25(n113), .CONTROL26(n116), 
829
        .CONTROL27(n119), .CONTROL28(n122), .CONTROL29(n125), .CONTROL30(n128), 
830
        .CONTROL31(n131), .CONTROL32(n134), .CONTROL33(n137), .CONTROL34(n42), 
831
        .Z({\next_count141[4] , \next_count141[3] , \next_count141[2] , 
832
        \next_count141[1] , \next_count141[0] }) );
833
    assign n248 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
834
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
835
    assign n128 = (n126 & n127);
836
    assign n40 = n216;
837
    assign n216 = (~(fifo_disable ^ 1'b0));
838
    assign n129 = (n126 & ~n127);
839
    assign n110 = (n108 & n109);
840
    assign n120 = (n117 & ~n118);
841
    assign n91 = n270;
842
    assign n81 = (n78 & ~n79);
843
    assign n65 = (n63 & n64);
844
    assign n105 = (n102 & ~n103);
845
    assign n76 = n280;
846
    assign n266 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
847
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
848
    assign n86 = (n84 & n85);
849
    assign n66 = (n63 & ~n64);
850
    assign n107 = (n105 & n106);
851
    assign n97 = n266;
852
    assign n87 = (n84 & ~n85);
853
    assign n278 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
854
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
855
    assign n68 = (n66 & n67);
856
    assign n264 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
857
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
858
    assign n79 = n278;
859
    assign n108 = (n105 & ~n106);
860
    assign n89 = (n87 & n88);
861
    assign n50 = (n48 & n49);
862
    assign n69 = (n66 & ~n67);
863
    assign n100 = n264;
864
    assign n276 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
865
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
866
    assign n61 = n290;
867
    assign n51 = (n48 & ~n49);
868
    assign n90 = (n87 & ~n88);
869
    assign n71 = (n69 & n70);
870
    assign n53 = (n51 & n52);
871
    assign n262 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
872
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
873
    assign n72 = (n69 & ~n70);
874
    assign n82 = n276;
875
    assign n92 = (n90 & n91);
876
    assign n288 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
877
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
878
    assign n74 = (n72 & n73);
879
    assign n54 = (n51 & ~n52);
880
    assign n103 = n262;
881
    assign n93 = (n90 & ~n91);
882
    assign n64 = n288;
883
    assign n274 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
884
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
885
    assign n46 = n300;
886
    assign n75 = (n72 & ~n73);
887
    assign n56 = (n54 & n55);
888
    assign n286 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
889
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
890
    assign n260 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
891
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
892
    assign n85 = n274;
893
    assign n57 = (n54 & ~n55);
894
    assign n67 = n286;
895
    assign n298 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
896
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
897
    assign n77 = (n75 & n76);
898
    assign n272 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
899
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
900
    assign n78 = (n75 & ~n76);
901
    assign n88 = n272;
902
    assign n49 = n298;
903
    assign n284 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
904
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
905
    assign n59 = (n57 & n58);
906
    assign n296 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
907
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
908
    assign n270 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
909
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
910
    assign n70 = n284;
911
    assign n60 = (n57 & ~n58);
912
    assign n282 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
913
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
914
    assign n52 = n296;
915
    assign n62 = (n60 & n61);
916
    assign n63 = (n60 & ~n61);
917
    assign n73 = n282;
918
    assign n55 = n294;
919
    assign n280 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
920
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
921
    assign n292 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
922
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
923
    assign n58 = n292;
924
    assign n290 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
925
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
926
    assign n302 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
927
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
928
    assign n43 = n302;
929
    assign n300 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
930
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
931
    dff_5 cntr ( .q(count), .sqo(sqo), .d({\next_count[4] , \next_count[3] , 
932
        \next_count[2] , \next_count[1] , \next_count[0] }), .clk(clock), 
933
        .sdi(sdi), .se(se), .e1(clk_en), .e2(Logic1) );
934
    assign Logic0 = 1'b0;
935
    assign Logic1 = 1'b1;
936
    assign clk_en = (anyreset | cnt_en);
937
    assign n38 = n37;
938
    assign n39 = ~n37;
939
    assign n41 = (n39 & n40);
940
    assign n42 = (n39 & ~n40);
941
    assign n44 = (n41 & n43);
942
endmodule
943
 
944
module infifoctl ( fifofullNS, IFNE, load_fifo, fifoVld, rdy4fifoData, 
945
    fifoUnld, aaaclk, zzclk, fifo_disable, IFCount, aaareset, Level1_ddd, 
946
    Level2_ddd, zzreset, Level1, Level2, Ssdi, se, Usdi, Ssqo, Usqo, 
947
    latchFifoWord, readFifoWord );
948
output [4:0] IFCount;
949
output [15:0] latchFifoWord;
950
output [8:0] readFifoWord;
951
input  load_fifo, rdy4fifoData, aaaclk, zzclk, fifo_disable, aaareset, 
952
    Level1_ddd, Level2_ddd, zzreset, Level1, Level2, Ssdi, se, Usdi;
953
output fifofullNS, IFNE, fifoVld, fifoUnld, Ssqo, Usqo;
954
    AO22H U408 ( .X(n531), .A(\RDcntNotBuffed[0] ), .B(n1500), .C(n1599), .D(
955
        n1611) );
956
    OA21H U407 ( .X(n1612), .A(n1654), .B(n1608), .C(n1656) );
957
    OAI211H U406 ( .X(n1613), .A(n1660), .B(n1655), .C(n1612), .D(n1496) );
958
    AO22H U405 ( .X(n536), .A(\RDcntNotBuffed[2] ), .B(n1500), .C(n1599), .D(
959
        n1613) );
960
    OA22H U404 ( .X(n1672), .A(n1712), .B(n1762), .C(n1656), .D(n1704) );
961
    NAN5H U403 ( .X(n1673), .A(n1669), .B(n1607), .C(n1653), .D(n1672), .E(
962
        n1702) );
963
    INV8B U402 ( .X(fifofullNS), .A(n1740) );
964
    NOR2B U401 ( .X(\latchFifoWordNS[0] ), .A(n1545), .B(n1554) );
965
    OR2H U329 ( .X(n1728), .A(n1515), .B(n1615) );
966
    OR2H U446 ( .X(n1579), .A(n1750), .B(n1548) );
967
    EXNORA U328 ( .X(n1522), .A(n1442), .B(\WRcntsync2[0] ) );
968
    AO22H U445 ( .X(n971), .A(n1589), .B(n1584), .C(\WRcntNotBuffed[0] ), .D(
969
        n1586) );
970
    OR2H U327 ( .X(n1516), .A(n1517), .B(n1558) );
971
    OR2H U444 ( .X(n1585), .A(n1565), .B(n1624) );
972
    AND3 U326 ( .X(n1524), .A(n1518), .B(n1520), .C(n1522) );
973
    AO22H U443 ( .X(IFCount[2]), .A(n981), .B(n1588), .C(n1015), .D(n1639) );
974
    INVB U209 ( .X(n1653), .A(n1662) );
975
    INVB U325 ( .X(n1543), .A(n1724) );
976
    OR2H U442 ( .X(n1636), .A(n1615), .B(n1517) );
977
    AND3 U208 ( .X(n1662), .A(n1696), .B(\RDcntNotBuffed[4] ), .C(
978
        \RDcntNotBuffed[0] ) );
979
    OR2H U324 ( .X(n1519), .A(n1616), .B(n1624) );
980
    BUF8 infifoclkEnableBuffer ( .X(n661), .A(n650) );
981
    AOI22 U441 ( .X(n1641), .A(n1643), .B(n1644), .C(n1533), .D(n1693) );
982
    INVB U207 ( .X(n1595), .A(n1533) );
983
    AND3 U323 ( .X(n1526), .A(n1730), .B(n1731), .C(n1524) );
984
    OR2H U440 ( .X(n1637), .A(n1551), .B(n1687) );
985
    AND3 U206 ( .X(n1533), .A(\WRcntNotBuffed[3] ), .B(\WRcntNotBuffed[0] ), 
986
        .C(\WRcntNotBuffed[4] ) );
987
    INVB U322 ( .X(n1628), .A(n1581) );
988
    INVB U205 ( .X(n1701), .A(n1705) );
989
    NOR2B U321 ( .X(fifoValid), .A(n1546), .B(n1526) );
990
    AND3 U204 ( .X(n1705), .A(n1698), .B(n1696), .C(\RDcntNotBuffed[0] ) );
991
    INVB U489 ( .X(n1534), .A(\WRcntNotBuffed[3] ) );
992
    OR3 U320 ( .X(n1528), .A(\WRcntNotBuffed[4] ), .B(\WRcntNotBuffed[3] ), 
993
        .C(n1530) );
994
    OR3 U203 ( .X(n1757), .A(\WRcntNotBuffed[0] ), .B(n1534), .C(n1593) );
995
    OR3 U488 ( .X(n1695), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[4] ), 
996
        .C(n1534) );
997
    OR3 U202 ( .X(n1751), .A(n1534), .B(\WRcntNotBuffed[4] ), .C(n1530) );
998
    NAN2H U487 ( .X(n1569), .A(n1565), .B(n1616) );
999
    AO22H U201 ( .X(n889), .A(n1593), .B(n1586), .C(n1589), .D(n1512) );
1000
    INVB U486 ( .X(n1593), .A(\WRcntNotBuffed[4] ) );
1001
    NAN2H U369 ( .X(n1655), .A(\RDcntNotBuffed[1] ), .B(\RDcntNotBuffed[2] )
1002
         );
1003
    AO22H U200 ( .X(n666), .A(n1500), .B(n1698), .C(n1599), .D(n1673) );
1004
    OR2H U485 ( .X(n1622), .A(n1515), .B(n1472) );
1005
    NAN2H U368 ( .X(n1721), .A(fifo_disable), .B(n1722) );
1006
    OR3 U484 ( .X(n1648), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[3] ), 
1007
        .C(n1593) );
1008
    INVB U367 ( .X(n1578), .A(n1760) );
1009
    INVB U483 ( .X(n1668), .A(n1686) );
1010
    OR3H U249 ( .X(n1527), .A(\RDcntsync2[4] ), .B(\RDcntsync2[3] ), .C(n1499)
1011
         );
1012
    OR2H U366 ( .X(n1654), .A(\RDcntNotBuffed[2] ), .B(n1658) );
1013
    OR2H U482 ( .X(n1571), .A(n1682), .B(n1688) );
1014
    NOR2B U248 ( .X(\latchFifoWordNS[9] ), .A(n1758), .B(n1752) );
1015
    INVB U365 ( .X(n1582), .A(n1761) );
1016
    OR3 U481 ( .X(n1753), .A(\WRcntNotBuffed[3] ), .B(n1593), .C(n1530) );
1017
    NAN2B U247 ( .X(n1501), .A(n1615), .B(n1531) );
1018
    NOR2B U364 ( .X(n1725), .A(n1723), .B(n1721) );
1019
    AND3 U480 ( .X(n1572), .A(n1695), .B(n1648), .C(n1574) );
1020
    INV3 U246 ( .X(n1717), .A(n1017) );
1021
    INVB U363 ( .X(n1676), .A(n1754) );
1022
    INVB U129 ( .X(n1425), .A(\RDcntsync1[3] ) );
1023
    NAN2H U245 ( .X(n1718), .A(n1465), .B(n1471) );
1024
    MUX2IH U362 ( .XB(n1727), .A(n1590), .B(n1725), .SL(n1666) );
1025
    INVB U128 ( .X(n1424), .A(n1423) );
1026
    INVB U244 ( .X(n1523), .A(n1473) );
1027
    OAI21H U361 ( .X(IFCount[0]), .A(n1685), .B(n1729), .C(n1727) );
1028
    INVB U127 ( .X(n1423), .A(\RDcntsync1[2] ) );
1029
    INV2B U243 ( .X(\WRcnt[2] ), .A(n1463) );
1030
    INVB U360 ( .X(n1532), .A(n1528) );
1031
    INVB U126 ( .X(n1422), .A(n1421) );
1032
    INV8 U241 ( .X(n1615), .A(n1460) );
1033
    INVB U123 ( .X(n1419), .A(\RDcntsync1[0] ) );
1034
    INV4 U240 ( .X(n1469), .A(n1484) );
1035
    AOI22 U289 ( .X(n1506), .A(n1712), .B(n1706), .C(n1762), .D(n1669) );
1036
    OR4 U288 ( .X(n1508), .A(n1597), .B(n1664), .C(n1502), .D(n1506) );
1037
    NAN2H word14Cntl ( .X(\latchFifoWordNB[14] ), .A(\latchFifoWordTS[14] ), 
1038
        .B(delayAndBufaaaclk) );
1039
    OA22H U287 ( .X(n1510), .A(n1754), .B(n1648), .C(n1761), .D(n1695) );
1040
    EXNORA U286 ( .X(n1745), .A(n1507), .B(\WRcnt[3] ) );
1041
    BUF2C U284 ( .X(n1459), .Y(\RDcntsync2[4] ), .A(n1495) );
1042
    INV3B U167 ( .X(\WRcnt[0] ), .A(n1461) );
1043
    OR3H U283 ( .X(n1551), .A(n1455), .B(n1457), .C(n1563) );
1044
    NAN2B U281 ( .X(n1600), .A(n1683), .B(n1559) );
1045
    INV2B U164 ( .X(n1472), .A(n1475) );
1046
    INV3 U280 ( .X(n1340), .A(n1738) );
1047
    INV4 U163 ( .X(n1461), .A(n1462) );
1048
    INV3B U162 ( .X(n1487), .A(n1535) );
1049
    BUF2C U161 ( .X(n1471), .Y(n1558), .A(n1472) );
1050
    BUF2C U160 ( .X(n1530), .Y(\WRcntNotBuffed[0] ), .A(n1493) );
1051
    BUF8 ctlScanBuf ( .X(seBuf), .A(se) );
1052
    DFF1 \infifod1/d0  ( .Q(\WRcntsync1NB[0] ), .SQ(Usq3), .D(\WRcnt[0] ), 
1053
        .CK(zzclk), .SD(n1024), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1054
    INV4B readBuffer8 ( .X(readFifoWord[8]), .A(\readFifoWordNB[8] ) );
1055
    INV4B readBuffer7 ( .X(readFifoWord[7]), .A(\readFifoWordNB[7] ) );
1056
    INV4B readBuffer6 ( .X(readFifoWord[6]), .A(\readFifoWordNB[6] ) );
1057
    INV4B readBuffer5 ( .X(readFifoWord[5]), .A(\readFifoWordNB[5] ) );
1058
    INV4B readBuffer4 ( .X(readFifoWord[4]), .A(\readFifoWordNB[4] ) );
1059
    assign n544 = 1'b1;
1060
    assign Logic1 = 1'b1;
1061
    INV4B readBuffer3 ( .X(readFifoWord[3]), .A(\readFifoWordNB[3] ) );
1062
    INV4B readBuffer2 ( .X(readFifoWord[2]), .A(\readFifoWordNB[2] ) );
1063
    INV4B readBuffer1 ( .X(readFifoWord[1]), .A(\readFifoWordNB[1] ) );
1064
    INV4B readBuffer0 ( .X(readFifoWord[0]), .A(\readFifoWordNB[0] ) );
1065
    DFF4 \infifod1/d0/d0  ( .Q0(\latchFifoWordTS[11] ), .Q1(
1066
        \latchFifoWordTS[10] ), .Q2(\latchFifoWordTS[9] ), .Q3(
1067
        \latchFifoWordTS[8] ), .SQ3(n716), .D0(\latchFifoWordNS[11] ), .D1(
1068
        \latchFifoWordNS[10] ), .D2(\latchFifoWordNS[9] ), .D3(
1069
        \latchFifoWordNS[8] ), .CK(aaaclk), .SD0(n715), .SE(seBuf), .E1(Logic1
1070
        ), .E2(Logic1) );
1071
    BUF2B rdcnt4buffer ( .X(\RDcnt[4] ), .A(\RDcntNotBuffed[4] ) );
1072
    DFF4 \infifod0/d0/d01  ( .Q0(n1494), .Q1(\RDcntsync2[2] ), .Q2(
1073
        \RDcntsync2[1] ), .Q3(n1492), .SQ3(n772), .D0(n1426), .D1(n1424), .D2(
1074
        n1422), .D3(n1420), .CK(aaaclk), .SD0(Ssq0), .SE(seBuf), .E1(Logic1), 
1075
        .E2(Logic1) );
1076
    DFF4 infifod0 ( .Q0(\WRcntsync1[2] ), .Q1(\WRcntsync2[2] ), .Q2(
1077
        \WRcntsync1[1] ), .Q3(\WRcntsync2[1] ), .SQ3(Usq2), .D0(n1455), .D1(
1078
        n1436), .D2(n1490), .D3(n1434), .CK(zzclk), .SD0(Usq1), .SE(seBuf), 
1079
        .E1(Logic1), .E2(Logic1) );
1080
    NAN2H word1Cntl ( .X(\latchFifoWordNB[1] ), .A(\latchFifoWordTS[1] ), .B(
1081
        delayAndBufaaaclk) );
1082
    NAN2H word3Cntl ( .X(\latchFifoWordNB[3] ), .A(\latchFifoWordTS[3] ), .B(
1083
        delayAndBufaaaclk) );
1084
    DFF1 \infifod1/d1/d01  ( .Q(\RDcntsync1[4] ), .SQ(Ssq1), .D(\RDcnt[4] ), 
1085
        .CK(aaaclk), .SD(n769), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1086
    DFF4 infifod01 ( .Q0(\WRcntsync1[4] ), .Q1(\WRcntsync2[4] ), .Q2(
1087
        \WRcntsync1[3] ), .Q3(\WRcntsync2[3] ), .SQ3(Usq1), .D0(\WRcnt[4] ), 
1088
        .D1(n1432), .D2(\WRcnt[3] ), .D3(n1430), .CK(zzclk), .SD0(Usq0), 
1089
        .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1090
    DFF1 infifod02 ( .Q(fifofull), .SQ(Ssq2), .D(fifofullNS), .CK(aaaclk), 
1091
        .SD(Ssq1), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1092
    DFF1 infifod03 ( .Q(fifoUnlded), .SQ(UsqoNotBuffed), .D(n199), .CK(zzclk
1093
        ), .SD(Usq3), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1094
    DFF1 infifod04 ( .Q(\readFifoWordNB[8] ), .SQ(n547), .D(n612), .CK(zzclk
1095
        ), .SD(n546), .SE(seBuf), .E1(n661), .E2(n544) );
1096
    NAN2B U439 ( .X(n1638), .A(n1640), .B(n1642) );
1097
    OA21H U438 ( .X(n1645), .A(n1647), .B(n1753), .C(n1646) );
1098
    NAN2H U437 ( .X(n1644), .A(n1759), .B(n1760) );
1099
    INVB U319 ( .X(n1652), .A(n1693) );
1100
    OAI211H U436 ( .X(n1651), .A(n1652), .B(n1528), .C(n1641), .D(n1649) );
1101
    NAN3H U318 ( .X(n1468), .A(\RDcntsync2[3] ), .B(n1476), .C(\RDcntsync2[4] 
1102
        ) );
1103
    AO22H U435 ( .X(n869), .A(\WRcntNotBuffed[1] ), .B(n1586), .C(n1589), .D(
1104
        n1651) );
1105
    INVB U317 ( .X(n1711), .A(n1700) );
1106
    NAN2H U434 ( .X(n1692), .A(n1751), .B(n1753) );
1107
    OR2H U316 ( .X(n1477), .A(\RDcntsync2[1] ), .B(n1562) );
1108
    OR2H U433 ( .X(n1754), .A(n1480), .B(\WRcntNotBuffed[1] ) );
1109
    INVB U315 ( .X(n1504), .A(n1656) );
1110
    NAN2H U432 ( .X(n1755), .A(n1756), .B(n1757) );
1111
    NAN2B U314 ( .X(n1619), .A(n1622), .B(n1624) );
1112
    OA22H U431 ( .X(n1603), .A(n1687), .B(n1758), .C(n1688), .D(n1758) );
1113
    OA211H U313 ( .X(n1744), .A(n1615), .B(n1564), .C(n1516), .D(n1519) );
1114
    NAN2B U430 ( .X(n1760), .A(\WRcntNotBuffed[1] ), .B(n1480) );
1115
    INVB U312 ( .X(n1591), .A(n1570) );
1116
    NAN2B U311 ( .X(n1627), .A(n1630), .B(n1629) );
1117
    INVB U310 ( .X(n1720), .A(n1529) );
1118
    AOI22 U479 ( .X(n1576), .A(n1582), .B(n1642), .C(n1578), .D(n1580) );
1119
    OAI211H U478 ( .X(n1584), .A(n1572), .B(n1754), .C(n1638), .D(n1576) );
1120
    NAN2H U477 ( .X(n1688), .A(\WRcnt[4] ), .B(\WRcnt[3] ) );
1121
    INVB U359 ( .X(n1643), .A(n1756) );
1122
    INVB U476 ( .X(n1650), .A(n1644) );
1123
    OAI211H U358 ( .X(n1634), .A(n1688), .B(n1551), .C(n1714), .D(n1571) );
1124
    NAN3H U475 ( .X(n1625), .A(\WRcnt[2] ), .B(n1491), .C(\WRcnt[0] ) );
1125
    INVB U357 ( .X(n1607), .A(n1597) );
1126
    INVB U474 ( .X(n1574), .A(n1692) );
1127
    OAI22H U356 ( .X(n1635), .A(n1583), .B(n1634), .C(n1567), .D(n1548) );
1128
    AO321H U473 ( .X(n1542), .A(n1541), .B(n1622), .C(n1560), .D(n1473), .E(
1129
        n1569), .F(n1543) );
1130
    INV2B U239 ( .X(n1470), .A(n1486) );
1131
    INVB U238 ( .X(n1476), .A(n1499) );
1132
    AO21H U355 ( .X(n1732), .A(n1559), .B(n1683), .C(n1688) );
1133
    INVB U472 ( .X(n1580), .A(n1572) );
1134
    INV4 U237 ( .X(n1499), .A(n1492) );
1135
    NOR2H U471 ( .X(n1689), .A(n1015), .B(n1014) );
1136
    NAN2B U354 ( .X(n1674), .A(n1695), .B(n1756) );
1137
    BUF3 U236 ( .X(n1683), .A(n1482) );
1138
    OA22H U470 ( .X(n1544), .A(n1591), .B(n1615), .C(n1523), .D(n1565) );
1139
    AND3 U353 ( .X(n1733), .A(n1637), .B(n1575), .C(n1732) );
1140
    INV4 U235 ( .X(n1490), .A(n1563) );
1141
    AOI22 U352 ( .X(n1675), .A(n1582), .B(n1694), .C(n1676), .D(n1674) );
1142
    EXORA U234 ( .X(n1749), .A(n1562), .B(\WRcnt[2] ) );
1143
    NAN4H U351 ( .X(n1677), .A(n1751), .B(n1595), .C(n1697), .D(n1675) );
1144
    EXNORA U233 ( .X(n1748), .A(\WRcnt[4] ), .B(\RDcntsync2[4] ) );
1145
    ANDOI22H U350 ( .X(n1736), .A(n1734), .B(n1345), .C(n1559), .D(n1687) );
1146
    DFF4 \infifod1/d01  ( .Q0(\readFifoWordNB[7] ), .Q1(\readFifoWordNB[6] ), 
1147
        .Q2(\readFifoWordNB[5] ), .Q3(\readFifoWordNB[4] ), .SQ3(Usq0), .D0(
1148
        n514), .D1(n617), .D2(n513), .D3(n616), .CK(zzclk), .SD0(n1047), 
1149
        .SE(seBuf), .E1(n661), .E2(n544) );
1150
    INVB U232 ( .X(n1491), .A(n1563) );
1151
    DFF1 \infifod1/d02  ( .Q(\RDcntNotBuffed[4] ), .SQ(n546), .D(n666), .CK(
1152
        zzclk), .SD(n1072), .SE(seBuf), .E1(n661), .E2(n544) );
1153
    INVB U231 ( .X(n1457), .A(n1461) );
1154
    DFF1 \infifod1/d03  ( .Q(\WRcntNotBuffed[4] ), .SQ(Ssq0), .D(n889), .CK(
1155
        aaaclk), .SD(n1089), .SE(seBuf), .E1(n935), .E2(n840) );
1156
    INV2B U230 ( .X(n1556), .A(n1458) );
1157
    NOR2B U399 ( .X(\latchFifoWordNS[1] ), .A(n1758), .B(n1554) );
1158
    AO21H U398 ( .X(n650), .A(rdy4fifoData), .B(fifoValid), .C(n1546) );
1159
    NAN3H U397 ( .X(n1547), .A(n1482), .B(n1479), .C(n1483) );
1160
    NOR2B U396 ( .X(n1553), .A(n1492), .B(n1459) );
1161
    AND3H U279 ( .X(n1738), .A(n1733), .B(n1635), .C(n1736) );
1162
    OR2H U395 ( .X(n1646), .A(n1648), .B(n1650) );
1163
    NOR2B U278 ( .X(\latchFifoWordNS[13] ), .A(n1752), .B(n1683) );
1164
    NAN2H U394 ( .X(n1693), .A(n1761), .B(n1760) );
1165
    NAN2B U277 ( .X(n1759), .A(\WRcntNotBuffed[2] ), .B(\WRcntNotBuffed[1] )
1166
         );
1167
    EXNORA U159 ( .X(n1605), .A(n1206), .B(n1366) );
1168
    OR3 U393 ( .X(n1669), .A(\RDcntNotBuffed[0] ), .B(n1698), .C(n1696) );
1169
    AND4H U276 ( .X(n1535), .A(n1716), .B(n1744), .C(n1741), .D(n1746) );
1170
    INVB U158 ( .X(n1449), .A(n1661) );
1171
    NAN2B U392 ( .X(n1697), .A(n1694), .B(n1644) );
1172
    BUF8 clkBuf ( .X(delayAndBufaaaclk), .A(delayedaaaclk) );
1173
    NOR2B U275 ( .X(\latchFifoWordNS[12] ), .A(n1752), .B(n1682) );
1174
    MUX2IH U157 ( .XB(n1680), .A(n1679), .B(n978), .SL(n1668) );
1175
    INVB U391 ( .X(n1698), .A(\RDcntNotBuffed[4] ) );
1176
    OR3H U274 ( .X(n1624), .A(\RDcntsync2[4] ), .B(\RDcntsync2[0] ), .C(n1507)
1177
         );
1178
    EXNORH U156 ( .X(n1686), .A(n1626), .B(n1633) );
1179
    NAN2H U390 ( .X(n1699), .A(n1712), .B(n1654) );
1180
    NAN2B U273 ( .X(n1734), .A(n1625), .B(n1758) );
1181
    OR3H U155 ( .X(n1750), .A(\WRcnt[0] ), .B(n1684), .C(n1563) );
1182
    NOR2B U272 ( .X(\latchFifoWordNS[15] ), .A(n1752), .B(n1625) );
1183
    INV3 U154 ( .X(\RDcntNotBuffed[0] ), .A(n1441) );
1184
    NAN3H U271 ( .X(n1479), .A(\WRcnt[2] ), .B(n1491), .C(\WRcnt[0] ) );
1185
    INVB U153 ( .X(n1441), .A(n1442) );
1186
    INV4 U270 ( .X(n1562), .A(\RDcntsync2[2] ) );
1187
    OR2H U152 ( .X(n1440), .A(n1590), .B(n1620) );
1188
    INVB U151 ( .X(n1586), .A(n1440) );
1189
    OR2H U150 ( .X(n1439), .A(n1590), .B(n1546) );
1190
    AO22H U199 ( .X(n854), .A(n1534), .B(n1586), .C(n1589), .D(n1677) );
1191
    AO22H U198 ( .X(n646), .A(n1500), .B(n1696), .C(n1599), .D(n1508) );
1192
    NAN3H U194 ( .X(n1206), .A(n1598), .B(n1511), .C(n1542) );
1193
    NAN3H U193 ( .X(n1451), .A(n1631), .B(n1564), .C(n1521) );
1194
    DFF1 \infifod1/d0/d01  ( .Q(\RDcntsync1[3] ), .SQ(n769), .D(\RDcnt[3] ), 
1195
        .CK(aaaclk), .SD(n780), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1196
    NAN3H U192 ( .X(n1666), .A(n1686), .B(n1449), .C(n1013) );
1197
    EXNORA U191 ( .X(n1659), .A(n1738), .B(n1486) );
1198
    NOR2B U190 ( .X(n1448), .A(n1581), .B(n1540) );
1199
    NAN2H word8Cntl ( .X(\latchFifoWordNB[8] ), .A(\latchFifoWordTS[8] ), .B(
1200
        delayAndBufaaaclk) );
1201
    NAN2H word6Cntl ( .X(\latchFifoWordNB[6] ), .A(\latchFifoWordTS[6] ), .B(
1202
        delayAndBufaaaclk) );
1203
    NAN2H word11Cntl ( .X(\latchFifoWordNB[11] ), .A(\latchFifoWordTS[11] ), 
1204
        .B(delayAndBufaaaclk) );
1205
    BUF2B rdcnt3buffer ( .X(\RDcnt[3] ), .A(\RDcntNotBuffed[3] ) );
1206
    BUF2B rdcnt1buffer ( .X(\RDcnt[1] ), .A(\RDcntNotBuffed[1] ) );
1207
    BUF8 fifuldBuf ( .X(fifoUnld), .A(fifoUnlded) );
1208
    AND2H U506 ( .X(n199), .A(fifoVld), .B(rdy4fifoData) );
1209
    assign n1764 = 1'b0;
1210
    assign n1763 = 1'b0;
1211
    AND4H U503 ( .X(n1509), .A(n1521), .B(n1629), .C(n1728), .D(n1718) );
1212
    OA211H U502 ( .X(n1511), .A(n1527), .B(n1565), .C(n1525), .D(n1509) );
1213
    NAN2B U501 ( .X(n1549), .A(n1570), .B(n1529) );
1214
    NOR2B U500 ( .X(\latchFifoWordNS[2] ), .A(n1551), .B(n1554) );
1215
    NAN6CH U429 ( .X(n1366), .A(n1637), .B(n1577), .C(n1573), .D(n1601), .E(
1216
        n1635), .F(n1603) );
1217
    OR2H U428 ( .X(n1761), .A(\WRcntNotBuffed[1] ), .B(\WRcntNotBuffed[2] ) );
1218
    NAN5H U427 ( .X(n1140), .A(n1728), .B(n1557), .C(n1523), .D(n1741), .E(
1219
        n1631) );
1220
    EXNORA U426 ( .X(n1604), .A(n1345), .B(n1140) );
1221
    OR2H U309 ( .X(n1548), .A(n1632), .B(\WRcnt[3] ) );
1222
    INVB U425 ( .X(n1691), .A(load_fifo) );
1223
    OA211H U308 ( .X(n1746), .A(n1527), .B(n1720), .C(n1636), .D(n1585) );
1224
    INVB U424 ( .X(n1632), .A(\WRcnt[4] ) );
1225
    NAN3H U307 ( .X(n1559), .A(n1490), .B(n1684), .C(n1462) );
1226
    INVB U423 ( .X(n1729), .A(n975) );
1227
    AOI21H U306 ( .X(n1739), .A(n1680), .B(n1681), .C(n1713) );
1228
    AND4H U422 ( .X(n1661), .A(n1604), .B(n1605), .C(n1657), .D(n1659) );
1229
    NAN2B U305 ( .X(n1550), .A(n1632), .B(\WRcnt[3] ) );
1230
    INVB U421 ( .X(n1557), .A(n1619) );
1231
    OA21H U304 ( .X(n1536), .A(n1750), .B(n1687), .C(n1575) );
1232
    OR2H U420 ( .X(n1663), .A(n1661), .B(n1020) );
1233
    OR2H U303 ( .X(n1740), .A(n1739), .B(n1737) );
1234
    OR2H U302 ( .X(n1685), .A(fifo_disable), .B(n1686) );
1235
    AO21H U301 ( .X(n1537), .A(n1750), .B(n1683), .C(n1688) );
1236
    OR2H U300 ( .X(n1687), .A(\WRcnt[4] ), .B(\WRcnt[3] ) );
1237
    OR2H U469 ( .X(n1690), .A(n1691), .B(fifofull) );
1238
    OA22H U468 ( .X(n1592), .A(n1616), .B(n1517), .C(n1558), .D(n1624) );
1239
    OR2H U467 ( .X(n1554), .A(n1345), .B(n1690) );
1240
    NAN2H U349 ( .X(n1678), .A(n975), .B(n1668) );
1241
    OA22H U466 ( .X(n1594), .A(n1565), .B(n1515), .C(n1564), .D(n1616) );
1242
    NAN2H U348 ( .X(n1679), .A(n1689), .B(n1717) );
1243
    AO21H U347 ( .X(n1741), .A(n1515), .B(n1560), .C(n1742) );
1244
    INVB U464 ( .X(n1590), .A(fifo_disable) );
1245
    OAI21H U346 ( .X(n1681), .A(n981), .B(n984), .C(n1668) );
1246
    INV4 U229 ( .X(n1515), .A(n1505) );
1247
    OR3 U463 ( .X(n1620), .A(Level1_ddd), .B(aaareset), .C(Level2_ddd) );
1248
    AO21H U345 ( .X(n1735), .A(n1678), .B(n1666), .C(n935) );
1249
    INV2B U228 ( .X(n1486), .A(n1487) );
1250
    AND3 U462 ( .X(n1598), .A(n1516), .B(n1519), .C(n1724) );
1251
    OAI21H U344 ( .X(n1737), .A(n1713), .B(n1665), .C(n1735) );
1252
    EXORA U227 ( .X(n1747), .A(n1476), .B(\WRcnt[0] ) );
1253
    NAN2B U461 ( .X(n1601), .A(n1600), .B(n1345) );
1254
    OR2H U343 ( .X(n1496), .A(n1655), .B(n1497) );
1255
    INVB U226 ( .X(\RDcntsync2[0] ), .A(n1499) );
1256
    INVB U460 ( .X(n1658), .A(\RDcntNotBuffed[1] ) );
1257
    OR3 U342 ( .X(n1630), .A(n1726), .B(\RDcntsync2[3] ), .C(n1503) );
1258
    BUF2C U225 ( .Y(\WRcntNotBuffed[1] ), .A(n1489) );
1259
    INVB U341 ( .X(n1507), .A(\RDcntsync2[3] ) );
1260
    BUF2C U224 ( .Y(n1614), .A(n1468) );
1261
    OR2H U340 ( .X(n1712), .A(\RDcntNotBuffed[1] ), .B(\RDcntNotBuffed[2] ) );
1262
    BUF2C U223 ( .X(n1465), .Y(n1564), .A(n1466) );
1263
    BUF2C U222 ( .X(n1480), .Y(\WRcntNotBuffed[2] ), .A(n1481) );
1264
    EXORA U221 ( .X(n1657), .A(n1377), .B(n1484) );
1265
    INV3 U220 ( .X(n1503), .A(n1501) );
1266
    OR3 U389 ( .X(n1704), .A(\RDcntNotBuffed[3] ), .B(\RDcntNotBuffed[0] ), 
1267
        .C(n1698) );
1268
    NAN2H U388 ( .X(n1700), .A(n1656), .B(n1655) );
1269
    INVB U387 ( .X(n1696), .A(\RDcntNotBuffed[3] ) );
1270
    OR3 U269 ( .X(n1517), .A(n1476), .B(\RDcntsync2[4] ), .C(\RDcntsync2[3] )
1271
         );
1272
    AO21H U386 ( .X(n1702), .A(n1669), .B(n1704), .C(n1706) );
1273
    AND2H U268 ( .X(n1475), .A(n1562), .B(\RDcntsync2[1] ) );
1274
    OR3 U385 ( .X(n1762), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[0] ), 
1275
        .C(n1696) );
1276
    INV3 U267 ( .X(n1726), .A(n1553) );
1277
    OR3 U384 ( .X(n1667), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[0] ), 
1278
        .C(\RDcntNotBuffed[3] ) );
1279
    INVB U266 ( .X(n1473), .A(n1474) );
1280
    NAN2B U383 ( .X(n1708), .A(n1762), .B(n1667) );
1281
    INVB U149 ( .X(n1500), .A(n1439) );
1282
    OR3 U265 ( .X(n1474), .A(n1494), .B(n1556), .C(n1499) );
1283
    AND3 U382 ( .X(n1664), .A(n1698), .B(\RDcntNotBuffed[3] ), .C(
1284
        \RDcntNotBuffed[0] ) );
1285
    OR2H U148 ( .X(n1438), .A(fifo_disable), .B(n1546) );
1286
    INVB U147 ( .X(n1599), .A(n1438) );
1287
    AOI22 U381 ( .X(n1703), .A(n1705), .B(n1699), .C(n1664), .D(n1700) );
1288
    NAN2B U264 ( .X(n1570), .A(n1527), .B(n1614) );
1289
    OR2H U146 ( .X(n1437), .A(fifo_disable), .B(n1620) );
1290
    OR3 U380 ( .X(n1756), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[4] ), 
1291
        .C(\WRcntNotBuffed[3] ) );
1292
    INV2B U263 ( .X(n1722), .A(n1665) );
1293
    INVB U145 ( .X(n1589), .A(n1437) );
1294
    NAN4H U262 ( .X(n1467), .A(n1544), .B(n1592), .C(n1542), .D(n1596) );
1295
    NAN2H word13Cntl ( .X(\latchFifoWordNB[13] ), .A(\latchFifoWordTS[13] ), 
1296
        .B(delayAndBufaaaclk) );
1297
    NAN2H U144 ( .X(n1345), .A(n1548), .B(n1550) );
1298
    INV8B U261 ( .X(n1485), .A(n1488) );
1299
    NAN3H U182 ( .X(n1587), .A(n1686), .B(n1590), .C(n1449) );
1300
    OA211H U181 ( .X(n1443), .A(n1527), .B(n1565), .C(n1525), .D(n1509) );
1301
    NAN2B U180 ( .X(n1529), .A(n1558), .B(n1615) );
1302
    BUF8 fifvldBuf ( .X(fifoVld), .A(fifoValid) );
1303
    DEC8A infifordAddrDec ( .X0(n614), .X1(n511), .X2(n615), .X3(n512), .X4(
1304
        n616), .X5(n513), .X6(n617), .X7(n514), .SL0(n531), .SL1(n644), .SL2(
1305
        n536), .EN(n544) );
1306
    DFF4 \infifod0/d1/d01  ( .Q0(\RDcntsync1[2] ), .Q1(\RDcntsync1[1] ), .Q2(
1307
        \RDcntsync1[0] ), .Q3(n1495), .SQ3(n780), .D0(\RDcnt[2] ), .D1(
1308
        \RDcnt[1] ), .D2(\RDcnt[0] ), .D3(n1428), .CK(aaaclk), .SD0(n772), 
1309
        .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1310
    NAN2H word0Cntl ( .X(\latchFifoWordNB[0] ), .A(\latchFifoWordTS[0] ), .B(
1311
        delayAndBufaaaclk) );
1312
    NAN2H word2Cntl ( .X(\latchFifoWordNB[2] ), .A(\latchFifoWordTS[2] ), .B(
1313
        delayAndBufaaaclk) );
1314
    NAN2H word4Cntl ( .X(\latchFifoWordNB[4] ), .A(\latchFifoWordTS[4] ), .B(
1315
        delayAndBufaaaclk) );
1316
    BUF8 IFNEbuffer ( .X(IFNE), .A(IFNEnotBuffed) );
1317
    buf8_16 ltchBuf ( .out(latchFifoWord), .in({\latchFifoWordNB[15] , 
1318
        \latchFifoWordNB[14] , \latchFifoWordNB[13] , \latchFifoWordNB[12] , 
1319
        \latchFifoWordNB[11] , \latchFifoWordNB[10] , \latchFifoWordNB[9] , 
1320
        \latchFifoWordNB[8] , \latchFifoWordNB[7] , \latchFifoWordNB[6] , 
1321
        \latchFifoWordNB[5] , \latchFifoWordNB[4] , \latchFifoWordNB[3] , 
1322
        \latchFifoWordNB[2] , \latchFifoWordNB[1] , \latchFifoWordNB[0] }) );
1323
    INVB U419 ( .X(n1555), .A(n1569) );
1324
    MUX2IH U418 ( .XB(n1665), .A(n994), .B(n1663), .SL(n1686) );
1325
    INVB U417 ( .X(n1631), .A(n1627) );
1326
    INVB U416 ( .X(n1618), .A(n1547) );
1327
    INVB U415 ( .X(n1588), .A(n1685) );
1328
    OR2H U414 ( .X(n1566), .A(n1567), .B(n1550) );
1329
    AND2H U413 ( .X(n1621), .A(n1568), .B(n1688) );
1330
    AND2H U412 ( .X(n1623), .A(n1687), .B(n1618) );
1331
    OA22H U411 ( .X(n1610), .A(n1712), .B(n1497), .C(n1654), .D(n1609) );
1332
    AND3 U410 ( .X(n1583), .A(n1623), .B(n1566), .C(n1621) );
1333
    DLY8 clkDelay ( .X(delayedaaaclk), .A(aaaclk) );
1334
    NAN5H U459 ( .X(n1512), .A(n1753), .B(n1595), .C(n1757), .D(n1510), .E(
1335
        n1646) );
1336
    NAN2H U458 ( .X(n1513), .A(n1640), .B(n1692) );
1337
    NAN2B U457 ( .X(n1514), .A(n1578), .B(n1755) );
1338
    assign n989 = 1'b0;
1339
    AO21H U339 ( .X(n1713), .A(fifo_disable), .B(n1617), .C(n1620) );
1340
    NAN4H U456 ( .X(n1606), .A(n1754), .B(n1513), .C(n1514), .D(n1638) );
1341
    EXORA U338 ( .X(n612), .A(n646), .B(n666) );
1342
    AO22H U455 ( .X(n960), .A(n1589), .B(n1606), .C(\WRcntNotBuffed[2] ), .D(
1343
        n1586) );
1344
    OR2H U337 ( .X(n1714), .A(n1682), .B(n1687) );
1345
    AO22H U454 ( .X(IFCount[1]), .A(n978), .B(n1588), .C(n1014), .D(n1639) );
1346
    EXNORA U336 ( .X(n1730), .A(\RDcntNotBuffed[3] ), .B(\WRcntsync2[3] ) );
1347
    EXNORA U330 ( .X(n1520), .A(\RDcntNotBuffed[2] ), .B(\WRcntsync2[2] ) );
1348
    OA21H U499 ( .X(n1552), .A(n1564), .B(n1555), .C(n1557) );
1349
    OA211H U213 ( .X(n1649), .A(n1751), .B(n1647), .C(n1697), .D(n1645) );
1350
    NOR2B U498 ( .X(\latchFifoWordNS[3] ), .A(n1554), .B(n1559) );
1351
    AND2 U212 ( .X(n1647), .A(n1754), .B(n1759) );
1352
    NAN6CH U497 ( .X(n1560), .Y(n1561), .A(n1517), .B(n1549), .C(n1515), .D(
1353
        n1456), .E(n1552), .F(n1443) );
1354
    AND2 U211 ( .X(n1608), .A(n1667), .B(n1669) );
1355
    OR2H U496 ( .X(n935), .A(n1617), .B(n1620) );
1356
    NAN2H U379 ( .X(n1707), .A(n1708), .B(n1602) );
1357
    AND3 U210 ( .X(n1609), .A(n1762), .B(n1704), .C(n1660) );
1358
    NOR2B U495 ( .X(\latchFifoWordNS[7] ), .A(n1554), .B(n1625) );
1359
    AND3 U378 ( .X(n1597), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[3] ), 
1360
        .C(\RDcntNotBuffed[0] ) );
1361
    NAN3H U494 ( .X(n1482), .A(n1563), .B(n1455), .C(\WRcnt[0] ) );
1362
    NAN2B U377 ( .X(n1602), .A(n1654), .B(n1655) );
1363
    OR3 U259 ( .X(n1531), .A(n1726), .B(\RDcntsync2[3] ), .C(n1472) );
1364
    OR2H U493 ( .X(n1521), .A(n1565), .B(n1468) );
1365
    NAN2H U376 ( .X(n1656), .A(n1658), .B(\RDcntNotBuffed[2] ) );
1366
    DFF4 \infifod0/d01  ( .Q0(\readFifoWordNB[3] ), .Q1(\readFifoWordNB[2] ), 
1367
        .Q2(\readFifoWordNB[1] ), .Q3(\readFifoWordNB[0] ), .SQ3(n1047), .D0(
1368
        n512), .D1(n615), .D2(n511), .D3(n614), .CK(zzclk), .SD0(n547), .SE(
1369
        seBuf), .E1(n661), .E2(n544) );
1370
    NAN2B U258 ( .X(n1466), .A(n1553), .B(\RDcntsync2[3] ) );
1371
    OR2H U492 ( .X(n1629), .A(n1474), .B(n1615) );
1372
    OR2H U375 ( .X(n1671), .A(n978), .B(n981) );
1373
    DFF4 \infifod0/d02  ( .Q0(\RDcntNotBuffed[3] ), .Q1(\RDcntNotBuffed[2] ), 
1374
        .Q2(\RDcntNotBuffed[1] ), .Q3(n1442), .SQ3(n1072), .D0(n646), .D1(n536
1375
        ), .D2(n644), .D3(n531), .CK(zzclk), .SD0(Usdi), .SE(seBuf), .E1(
1376
        n661), .E2(n544) );
1377
    OR3 U257 ( .X(n1682), .A(\WRcnt[1] ), .B(n1684), .C(\WRcnt[0] ) );
1378
    OR2H U491 ( .X(n1525), .A(n1527), .B(n1616) );
1379
    NOR2B U374 ( .X(n1660), .A(n1662), .B(n1664) );
1380
    DFF4 \infifod0/d03  ( .Q0(n1478), .Q1(n1481), .Q2(n1489), .Q3(n1493), 
1381
        .SQ3(n1089), .D0(n854), .D1(n960), .D2(n869), .D3(n971), .CK(aaaclk), 
1382
        .SD0(Ssdi), .SE(seBuf), .E1(n935), .E2(n840) );
1383
    INV4 U256 ( .X(n1460), .A(n1477) );
1384
    OR3 U490 ( .X(n1642), .A(n1532), .B(n1533), .C(n1755) );
1385
    AOI21H U373 ( .X(n1715), .A(n1717), .B(n1689), .C(n1661) );
1386
    INVB U139 ( .X(n1435), .A(\WRcntsync1[2] ) );
1387
    AND3H U255 ( .X(n1505), .A(n1556), .B(\RDcntsync2[0] ), .C(n1494) );
1388
    INVB U372 ( .X(n1617), .A(n1690) );
1389
    INVB U138 ( .X(n1434), .A(n1433) );
1390
    NAN2B U254 ( .X(n1616), .A(\RDcntsync2[1] ), .B(\RDcntsync2[2] ) );
1391
    OR2H U371 ( .X(n1719), .A(n1671), .B(n1670) );
1392
    INVB U137 ( .X(n1433), .A(\WRcntsync1[1] ) );
1393
    INV3 U253 ( .X(n1458), .A(n1459) );
1394
    INVB U370 ( .X(n1640), .A(n1759) );
1395
    INVB U136 ( .X(n1432), .A(n1431) );
1396
    AND3 U252 ( .X(n1596), .A(n1531), .B(n1525), .C(n1594) );
1397
    INVB U135 ( .X(n1431), .A(\WRcntsync1[4] ) );
1398
    OR3 U251 ( .X(n1456), .A(n1726), .B(\RDcntsync2[3] ), .C(n1503) );
1399
    INVB U134 ( .X(n1430), .A(n1429) );
1400
    NOR2B U250 ( .X(\latchFifoWordNS[11] ), .A(n1752), .B(n1559) );
1401
    INVB U133 ( .X(n1429), .A(\WRcntsync1[3] ) );
1402
    INVB U132 ( .X(n1428), .A(n1427) );
1403
    INVB U131 ( .X(n1427), .A(\RDcntsync1[4] ) );
1404
    OR2H U299 ( .X(n1539), .A(n1550), .B(n1545) );
1405
    INVB U130 ( .X(n1426), .A(n1425) );
1406
    NAN8H U298 ( .X(n1540), .A(n1573), .B(n1571), .C(n1714), .D(n1536), .E(
1407
        n1577), .F(n1537), .G(n1539), .H(n1566) );
1408
    AND2 U297 ( .X(n1541), .A(n1585), .B(n1636) );
1409
    INV8 U179 ( .X(n1463), .A(n1464) );
1410
    NAN2H U296 ( .X(n1538), .A(n1748), .B(n1749) );
1411
    INV4 U178 ( .X(n1684), .A(n1464) );
1412
    NAN2H U295 ( .X(n1709), .A(n1597), .B(n1699) );
1413
    INV4 U177 ( .X(n1639), .A(n1587) );
1414
    OA211H U294 ( .X(n1710), .A(n1711), .B(n1653), .C(n1702), .D(n1709) );
1415
    INVB U176 ( .X(n1444), .A(n984) );
1416
    NAN3H U293 ( .X(n1498), .A(n1703), .B(n1707), .C(n1710) );
1417
    INV4 U175 ( .X(n1567), .A(n1445) );
1418
    AO22H U292 ( .X(n644), .A(\RDcntNotBuffed[1] ), .B(n1500), .C(n1599), .D(
1419
        n1498) );
1420
    INV4 U174 ( .X(n1565), .A(n1446) );
1421
    AND2H U291 ( .X(n1502), .A(n1708), .B(n1504) );
1422
    INVB U173 ( .X(n1447), .A(n1548) );
1423
    INVB U290 ( .X(n1706), .A(n1602) );
1424
    INV3B U172 ( .X(n1377), .A(n1448) );
1425
    INVB U171 ( .X(n1450), .A(n1716) );
1426
    INVB U170 ( .X(n1454), .A(Level2) );
1427
    BUF8 uScanQBuffer ( .X(Usqo), .A(UsqoNotBuffed) );
1428
    DFF1 \infifod0/d0  ( .Q(\WRcntsync2[0] ), .SQ(n1024), .D(\WRcntsync1[0] ), 
1429
        .CK(zzclk), .SD(Usq2), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
1430
    BUF2B rdcnt0buffer ( .X(\RDcnt[0] ), .A(\RDcntNotBuffed[0] ) );
1431
    BUF8 sScanQBuffer ( .X(Ssqo), .A(SsqoNotBuffed) );
1432
    rpl_sub_n5_3 r123 ( .A({n1763, n1140, n1469, n1470, n1206}), .B({n1764, 
1433
        n1345, n1377, n1340, n1366}), .SUM({n994, n984, n981, n978, n975}) );
1434
    rpl_sub_n5_1 r124 ( .A({n990, n989, n989, n989, n989}), .B({n991, n992, 
1435
        n995, n997, n999}), .SUM({n1020, n1017, n1015, n1014, n1013}) );
1436
    rpl_sub_n5_2 r125 ( .A({n1764, n1345, n1377, n1340, n1366}), .B({n1763, 
1437
        n1140, n1485, n1487, n1206}), .SUM({n991, n992, n995, n997, n999}) );
1438
    BUF2 wrCntSync0Buffer ( .X(\WRcntsync1[0] ), .A(\WRcntsync1NB[0] ) );
1439
    BUF2B rdcnt2buffer ( .X(\RDcnt[2] ), .A(\RDcntNotBuffed[2] ) );
1440
endmodule
1441
 
1442
module rpl_sub_n5_3 ( A, B, SUM );
1443
input  [4:0] A;
1444
input  [4:0] B;
1445
output [4:0] SUM;
1446
    wire \B[3] , n50, n51, n52, n53, n40, n54, n41, n55, n42, n43, n44, n45, 
1447
        n46, n47, n48, n49, n38, n39;
1448
    EXNORA U7 ( .X(SUM[1]), .A(n48), .B(n54) );
1449
    EXNORA U8 ( .X(SUM[3]), .A(n41), .B(n47) );
1450
    INVB U9 ( .X(n46), .A(B[1]) );
1451
    AO21H U20 ( .X(n38), .A(n50), .B(n54), .C(n39) );
1452
    AOI21H U21 ( .X(SUM[4]), .A(n47), .B(n38), .C(n49) );
1453
    NAN2H U22 ( .X(n40), .A(n45), .B(n42) );
1454
    AOI21H U23 ( .X(n41), .A(n50), .B(n54), .C(n40) );
1455
    AOI22 U10 ( .X(n44), .A(n54), .B(n55), .C(n46), .D(A[1]) );
1456
    OA21H U24 ( .X(n50), .A(A[0]), .B(n52), .C(n53) );
1457
    NAN2B U11 ( .X(n42), .A(n43), .B(A[2]) );
1458
    OR2H U25 ( .X(n55), .A(n52), .B(A[0]) );
1459
    NAN3H U12 ( .X(n45), .A(A[1]), .B(n53), .C(n46) );
1460
    INVB U13 ( .X(n51), .A(A[3]) );
1461
    EXNORA U14 ( .X(n53), .A(A[2]), .B(B[2]) );
1462
    INVB U15 ( .X(n43), .A(B[2]) );
1463
    INVB U16 ( .X(n48), .A(n55) );
1464
    AO21H U17 ( .X(SUM[0]), .A(A[0]), .B(n52), .C(n48) );
1465
    INVB U18 ( .X(n52), .A(B[0]) );
1466
    NOR2B U19 ( .X(n49), .A(n51), .B(\B[3] ) );
1467
    BUF2 U2 ( .X(\B[3] ), .A(B[3]) );
1468
    EXNORA U3 ( .X(SUM[2]), .A(n44), .B(n53) );
1469
    EXNORH U4 ( .X(n54), .A(A[1]), .B(B[1]) );
1470
    NAN2B U5 ( .X(n39), .A(n45), .B(n42) );
1471
    EXORA U6 ( .X(n47), .A(\B[3] ), .B(n51) );
1472
endmodule
1473
 
1474
 
1475
module rpl_sub_n5_2 ( A, B, SUM );
1476
input  [4:0] A;
1477
input  [4:0] B;
1478
output [4:0] SUM;
1479
    wire \A[3] , n70, n71, n72, n73, n60, n74, n61, n75, n62, n76, n63, n77, 
1480
        n64, n78, n65, n66, n67, n68, n69, n57, n58;
1481
    AOI21H U50 ( .X(n63), .A(n76), .B(n78), .C(n62) );
1482
    OAI21H U51 ( .X(SUM[0]), .A(B[0]), .B(n77), .C(n78) );
1483
    EXORH U52 ( .X(SUM[1]), .A(n76), .B(n78) );
1484
    NAN3H U40 ( .X(n66), .A(n61), .B(A[1]), .C(n67) );
1485
    EXNORH U41 ( .X(SUM[2]), .A(n63), .B(n75) );
1486
    INVB U42 ( .X(n72), .A(B[3]) );
1487
    INVB U43 ( .X(n65), .A(B[2]) );
1488
    EXORA U30 ( .X(n61), .A(n57), .B(B[2]) );
1489
    INV4 U32 ( .X(n77), .A(A[0]) );
1490
    AOI22 U46 ( .X(SUM[4]), .A(n69), .B(n70), .C(\A[3] ), .D(n72) );
1491
    INVB U33 ( .X(n67), .A(B[1]) );
1492
    AOI21H U47 ( .X(n73), .A(n74), .B(n76), .C(n71) );
1493
    NAN2H U34 ( .X(n58), .A(n77), .B(B[0]) );
1494
    EXNORA U48 ( .X(SUM[3]), .A(n73), .B(n69) );
1495
    NAN2H U35 ( .X(n78), .A(n77), .B(B[0]) );
1496
    AND2H U49 ( .X(n62), .A(A[1]), .B(n67) );
1497
    EXNORH U36 ( .X(n68), .A(A[1]), .B(n60) );
1498
    AND2H U37 ( .X(n74), .A(n58), .B(n75) );
1499
    NAN2H U38 ( .X(n71), .A(n66), .B(n64) );
1500
    NAN2H U39 ( .X(n64), .A(n65), .B(A[2]) );
1501
    BUF2 U26 ( .X(\A[3] ), .A(A[3]) );
1502
    INV3B U27 ( .X(n76), .A(n68) );
1503
    INV4 U28 ( .X(n60), .A(B[1]) );
1504
    INVB U29 ( .X(n57), .A(A[2]) );
1505
endmodule
1506
 
1507
 
1508
module rpl_sub_n5_1 ( A, B, SUM );
1509
input  [4:0] A;
1510
input  [4:0] B;
1511
output [4:0] SUM;
1512
    wire \SUM[0] , n80, n81, n82, n83, n84, n85, n86, n87, n79;
1513
    assign \SUM[0]  = B[0];
1514
    assign SUM[0] = \SUM[0] ;
1515
    NOR2B U60 ( .X(n81), .A(B[1]), .B(\SUM[0] ) );
1516
    NAN2H U61 ( .X(n85), .A(n86), .B(n84) );
1517
    NAN2H U62 ( .X(n87), .A(n83), .B(n82) );
1518
    NOR2B U63 ( .X(n80), .A(n87), .B(B[2]) );
1519
    INVB U54 ( .X(n79), .A(B[4]) );
1520
    EXNORA U55 ( .X(SUM[1]), .A(n83), .B(B[1]) );
1521
    EXNORH U56 ( .X(SUM[3]), .A(n80), .B(B[3]) );
1522
    EXNORA U57 ( .X(SUM[2]), .A(n81), .B(B[2]) );
1523
    NOR2B U58 ( .X(n86), .A(B[1]), .B(\SUM[0] ) );
1524
    NOR2H U59 ( .X(n84), .A(B[2]), .B(B[3]) );
1525
endmodule
1526
 
1527
 
1528
module infifo ( fifofullNS, IFNE, load_fifo, fifoVld, rdy4fifoData, fifoUnld, 
1529
    aaaclk1, aaaclk7, aaaclk9, zzclk, fifo_disable, aaaDataIn, Addr, BE, 
1530
    lastAddrWrite, fifoData, fifoAddr, fifoBE, fifoRnW, IFCount, aaareset, 
1531
    Level1_ddd, Level2_ddd, zzreset, Level1, Level2, Usqo, Ssqo, Usdi, Ssdi, 
1532
    se );
1533
input  [31:0] aaaDataIn;
1534
input  [24:2] Addr;
1535
output [31:0] fifoData;
1536
output [3:0] fifoBE;
1537
output [4:0] IFCount;
1538
input  [3:0] BE;
1539
output [22:0] fifoAddr;
1540
input  load_fifo, rdy4fifoData, aaaclk1, aaaclk7, aaaclk9, zzclk, 
1541
    fifo_disable, lastAddrWrite, aaareset, Level1_ddd, Level2_ddd, zzreset, 
1542
    Level1, Level2, Usdi, Ssdi, se;
1543
output fifofullNS, IFNE, fifoVld, fifoUnld, fifoRnW, Usqo, Ssqo;
1544
endmodule
1545
 
1546
module rdgraycntr ( graycount, readFifoWordNB, cnt_en, fifo_disable, anyreset, 
1547
    clock, sqo, sdi, se );
1548
output [4:0] graycount;
1549
output [8:0] readFifoWordNB;
1550
input  cnt_en, fifo_disable, anyreset, clock, sdi, se;
1551
output sqo;
1552
    assign n72 = (n69 & n71);
1553
    assign n73 = (n69 & ~n71);
1554
    assign n75 = (n73 & n74);
1555
    \**FFGEN**  \next_count_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0), 
1556
        .force_00(\n170[4] ), .force_01(\n174[4] ), .force_10(\n173[4] ), 
1557
        .force_11(\next_count169[4] ), .Q(\next_count[4] ) );
1558
    \**FFGEN**  \next_count_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0), 
1559
        .force_00(\n170[2] ), .force_01(\n174[2] ), .force_10(\n173[2] ), 
1560
        .force_11(\next_count169[2] ), .Q(\next_count[2] ) );
1561
    \**FFGEN**  \next_count_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0), 
1562
        .force_00(\n170[0] ), .force_01(\n174[0] ), .force_10(\n173[0] ), 
1563
        .force_11(\next_count169[0] ), .Q(\next_count[0] ) );
1564
    assign n149 = n278;
1565
    assign n278 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1566
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1567
        );
1568
    assign n146 = n280;
1569
    assign n280 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1570
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1571
        );
1572
    assign n143 = n282;
1573
    assign n282 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1574
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1575
        );
1576
    assign n166 = (n163 & ~n164);
1577
    assign n140 = n284;
1578
    assign n65 = n167;
1579
    assign n284 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1580
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1581
        );
1582
    assign n167 = (~(anyreset ^ 1'b1));
1583
    assign n137 = n286;
1584
    assign \n173[4]  = (\next_count169[4]  & \n170[4] );
1585
    assign \n173[3]  = (\next_count169[3]  & \n170[3] );
1586
    assign \n173[2]  = (\next_count169[2]  & \n170[2] );
1587
    assign \n173[1]  = (\next_count169[1]  & \n170[1] );
1588
    assign \n173[0]  = (\next_count169[0]  & \n170[0] );
1589
    assign \n174[4]  = (~\next_count169[4]  & \n170[4] );
1590
    assign \n174[3]  = (~\next_count169[3]  & \n170[3] );
1591
    assign \n174[2]  = (~\next_count169[2]  & \n170[2] );
1592
    assign \n174[1]  = (~\next_count169[1]  & \n170[1] );
1593
    assign \n174[0]  = (~\next_count169[0]  & \n170[0] );
1594
    assign n286 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1595
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1596
        );
1597
    SELECT_OP U75 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2({
1598
        Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0, 
1599
        Logic0, Logic1, Logic1}), .DATA4({Logic0, Logic0, Logic0, Logic1, 
1600
        Logic0}), .DATA5({Logic0, Logic0, Logic1, Logic1, Logic0}), .DATA6({
1601
        Logic0, Logic0, Logic1, Logic1, Logic1}), .DATA7({Logic0, Logic0, 
1602
        Logic1, Logic0, Logic1}), .DATA8({Logic0, Logic0, Logic1, Logic0, 
1603
        Logic0}), .DATA9({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA10({
1604
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA11({Logic0, Logic1, 
1605
        Logic1, Logic1, Logic1}), .DATA12({Logic0, Logic1, Logic1, Logic1, 
1606
        Logic0}), .DATA13({Logic0, Logic1, Logic0, Logic1, Logic0}), .DATA14({
1607
        Logic0, Logic1, Logic0, Logic1, Logic1}), .DATA15({Logic0, Logic1, 
1608
        Logic0, Logic0, Logic1}), .DATA16({Logic0, Logic1, Logic0, Logic0, 
1609
        Logic0}), .DATA17({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA18({
1610
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic1, 
1611
        Logic0, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic0, Logic1, 
1612
        Logic0}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic0}), .DATA22({
1613
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1, 
1614
        Logic1, Logic0, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic0, 
1615
        Logic0}), .DATA25({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA26({
1616
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA27({Logic1, Logic0, 
1617
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic0, Logic1, Logic1, 
1618
        Logic0}), .DATA29({Logic1, Logic0, Logic0, Logic1, Logic0}), .DATA30({
1619
        Logic1, Logic0, Logic0, Logic1, Logic1}), .DATA31({Logic1, Logic0, 
1620
        Logic0, Logic0, Logic1}), .DATA32({Logic1, Logic0, Logic0, Logic0, 
1621
        Logic0}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA34({
1622
        n246, n250, graycount[2], graycount[1], graycount[0]}), .CONTROL1(n66), 
1623
        .CONTROL2(n72), .CONTROL3(n75), .CONTROL4(n78), .CONTROL5(n81), 
1624
        .CONTROL6(n84), .CONTROL7(n87), .CONTROL8(n90), .CONTROL9(n93), 
1625
        .CONTROL10(n96), .CONTROL11(n99), .CONTROL12(n102), .CONTROL13(n105), 
1626
        .CONTROL14(n108), .CONTROL15(n111), .CONTROL16(n114), .CONTROL17(n117), 
1627
        .CONTROL18(n120), .CONTROL19(n123), .CONTROL20(n126), .CONTROL21(n129), 
1628
        .CONTROL22(n132), .CONTROL23(n135), .CONTROL24(n138), .CONTROL25(n141), 
1629
        .CONTROL26(n144), .CONTROL27(n147), .CONTROL28(n150), .CONTROL29(n153), 
1630
        .CONTROL30(n156), .CONTROL31(n159), .CONTROL32(n162), .CONTROL33(n165), 
1631
        .CONTROL34(n70), .Z({\next_count169[4] , \next_count169[3] , 
1632
        \next_count169[2] , \next_count169[1] , \next_count169[0] }) );
1633
    assign n68 = n244;
1634
    assign n136 = (n133 & ~n134);
1635
    assign n138 = (n136 & n137);
1636
    assign n244 = (~(fifo_disable ^ 1'b0));
1637
    assign n246 = ~graycount[4];
1638
    assign n139 = (n136 & ~n137);
1639
    assign n250 = ~graycount[3];
1640
    assign n141 = (n139 & n140);
1641
    assign n142 = (n139 & ~n140);
1642
    assign n144 = (n142 & n143);
1643
    assign n145 = (n142 & ~n143);
1644
    assign n106 = (n103 & ~n104);
1645
    assign n147 = (n145 & n146);
1646
    assign n296 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1647
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1648
        );
1649
    assign n108 = (n106 & n107);
1650
    assign n148 = (n145 & ~n146);
1651
    assign n122 = n296;
1652
    assign n109 = (n106 & ~n107);
1653
    assign n294 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1654
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1655
        );
1656
    assign n150 = (n148 & n149);
1657
    assign n111 = (n109 & n110);
1658
    assign n125 = n294;
1659
    assign n112 = (n109 & ~n110);
1660
    assign n114 = (n112 & n113);
1661
    assign n292 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1662
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1663
        );
1664
    assign n76 = (n73 & ~n74);
1665
    assign n115 = (n112 & ~n113);
1666
    assign n128 = n292;
1667
    assign n117 = (n115 & n116);
1668
    assign n78 = (n76 & n77);
1669
    assign n316 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1670
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1671
        );
1672
    assign n290 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1673
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1674
        );
1675
    assign n118 = (n115 & ~n116);
1676
    assign n131 = n290;
1677
    assign n79 = (n76 & ~n77);
1678
    assign n92 = n316;
1679
    assign n314 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1680
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1681
        );
1682
    assign n120 = (n118 & n119);
1683
    assign n288 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1684
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1685
        );
1686
    assign n81 = (n79 & n80);
1687
    assign n134 = n288;
1688
    assign n95 = n314;
1689
    assign n82 = (n79 & ~n80);
1690
    assign n312 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1691
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1692
        );
1693
    assign n84 = (n82 & n83);
1694
    assign n85 = (n82 & ~n83);
1695
    assign n98 = n312;
1696
    assign n87 = (n85 & n86);
1697
    assign n310 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1698
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1699
        );
1700
    assign n88 = (n85 & ~n86);
1701
    assign n101 = n310;
1702
    assign n308 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1703
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1704
        );
1705
    assign n90 = (n88 & n89);
1706
    assign n104 = n308;
1707
    assign n330 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1708
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1709
        );
1710
    assign n71 = n330;
1711
    assign n328 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1712
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1713
        );
1714
    assign n74 = n328;
1715
    assign Logic0 = 1'b0;
1716
    assign Logic1 = 1'b1;
1717
    BUF8 clkEnableBuffer ( .X(clk_en), .A(clk_enNB) );
1718
    dff_8 rdaddr7_0 ( .q(readFifoWordNB[7:0]), .sqo(sqo), .d({
1719
        \readFifoWordNBNS[7] , \readFifoWordNBNS[6] , \readFifoWordNBNS[5] , 
1720
        \readFifoWordNBNS[4] , \readFifoWordNBNS[3] , \readFifoWordNBNS[2] , 
1721
        \readFifoWordNBNS[1] , \readFifoWordNBNS[0] }), .clk(clock), .sdi(sq1), 
1722
        .se(se), .e1(clk_en), .e2(Logic1) );
1723
    dff_1 rdaddr8 ( .q(readFifoWordNB[8]), .sqo(sq1), .d(\n51[4] ), .clk(clock
1724
        ), .sdi(sq0), .se(se), .e1(clk_en), .e2(Logic1) );
1725
    \**FFGEN**  \next_count_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0), 
1726
        .force_00(\n170[3] ), .force_01(\n174[3] ), .force_10(\n173[3] ), 
1727
        .force_11(\next_count169[3] ), .Q(\next_count[3] ) );
1728
    \**FFGEN**  \next_count_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0), 
1729
        .force_00(\n170[1] ), .force_01(\n174[1] ), .force_10(\n173[1] ), 
1730
        .force_11(\next_count169[1] ), .Q(\next_count[1] ) );
1731
    assign n164 = n268;
1732
    assign n268 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1733
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1734
        );
1735
    assign n161 = n270;
1736
    assign n270 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1737
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1738
        );
1739
    assign n158 = n272;
1740
    assign n272 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1741
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1742
        );
1743
    assign n151 = (n148 & ~n149);
1744
    assign n155 = n274;
1745
    assign n153 = (n151 & n152);
1746
    assign n274 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1747
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1748
        );
1749
    assign n154 = (n151 & ~n152);
1750
    assign n152 = n276;
1751
    assign n276 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
1752
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1753
        );
1754
    assign n156 = (n154 & n155);
1755
    assign n157 = (n154 & ~n155);
1756
    assign n159 = (n157 & n158);
1757
    assign n121 = (n118 & ~n119);
1758
    assign n127 = (n124 & ~n125);
1759
    assign n129 = (n127 & n128);
1760
    assign n91 = (n88 & ~n89);
1761
    assign n130 = (n127 & ~n128);
1762
    assign n132 = (n130 & n131);
1763
    assign n306 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1764
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1765
        );
1766
    assign n93 = (n91 & n92);
1767
    assign n133 = (n130 & ~n131);
1768
    assign n107 = n306;
1769
    assign n94 = (n91 & ~n92);
1770
    assign n304 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1771
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1772
        );
1773
    assign n135 = (n133 & n134);
1774
    assign n96 = (n94 & n95);
1775
    assign n97 = (n94 & ~n95);
1776
    assign n110 = n304;
1777
    assign n302 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1778
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1779
        );
1780
    assign n99 = (n97 & n98);
1781
    assign n100 = (n97 & ~n98);
1782
    assign n113 = n302;
1783
    assign n326 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1784
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1785
        );
1786
    assign n102 = (n100 & n101);
1787
    assign n300 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
1788
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1789
        );
1790
    assign n77 = n326;
1791
    assign n103 = (n100 & ~n101);
1792
    assign n116 = n300;
1793
    assign n298 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
1794
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
1795
        );
1796
    assign n105 = (n103 & n104);
1797
    assign n324 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1798
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1799
        );
1800
    assign n80 = n324;
1801
    assign n119 = n298;
1802
    assign n322 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1803
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
1804
        );
1805
    assign n83 = n322;
1806
    assign n320 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1807
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
1808
        );
1809
    assign n86 = n320;
1810
    assign n318 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
1811
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
1812
        );
1813
    assign n89 = n318;
1814
    dff_5 cntr ( .q(graycount), .sqo(sq0), .d({\next_count[4] , 
1815
        \next_count[3] , \next_count[2] , \next_count[1] , \next_count[0] }), 
1816
        .clk(clock), .sdi(sdi), .se(se), .e1(clk_en), .e2(Logic1) );
1817
    assign \n51[4]  = (\next_count[4]  ^ \next_count[3] );
1818
    assign clk_enNB = (anyreset | cnt_en);
1819
    assign n66 = n65;
1820
    assign n67 = ~n65;
1821
    assign n69 = (n67 & n68);
1822
    assign n70 = (n67 & ~n68);
1823
endmodule
1824
 
1825
 
1826
module fifocntr ( n_free, WcntG, RcntG );
1827
output [4:0] n_free;
1828
input  [4:0] WcntG;
1829
input  [4:0] RcntG;
1830
    wire n19, \n_free26[0] , \WcntB[0] , \n_free26[1] , \WcntB[1] , 
1831
        \n_free26[2] , \WcntB[2] , \n_free26[3] , \WcntB[3] , \WcntB[4] , 
1832
        Logic0, Logic1, \n43[1] , \n43[2] , \n27[1] , \n43[3] , \n43[4] , 
1833
        \n43[5] , \RcntB[4] , \RcntB[3] , \RcntB[2] , \RcntB[1] , \RcntB[0] , 
1834
        n30, \n_free25[0] , \n_free25[1] , \n_free25[2] , n13, \n_free25[3] , 
1835
        n15, n16, \n_free25[4] , n17, n18;
1836
    SELECT_OP U7 ( .DATA1({Logic1, Logic0, Logic0, Logic0, Logic0}), .DATA2({
1837
        \n_free25[4] , \n_free25[3] , \n_free25[2] , \n_free25[1] , 
1838
        \n_free25[0] }), .DATA3({\n27[1] , \n_free26[3] , \n_free26[2] , 
1839
        \n_free26[1] , \n_free26[0] }), .CONTROL1(n17), .CONTROL2(n18), 
1840
        .CONTROL3(n15), .Z(n_free) );
1841
    SUB_UNS_OP U8 ( .A({\RcntB[3] , \RcntB[2] , \RcntB[1] , \RcntB[0] }), .B({
1842
        \WcntB[3] , \WcntB[2] , \WcntB[1] , \WcntB[0] }), .Z({\n27[1] , 
1843
        \n_free26[3] , \n_free26[2] , \n_free26[1] , \n_free26[0] }) );
1844
    assign n16 = n30;
1845
    assign Logic0 = 1'b0;
1846
    assign Logic1 = 1'b1;
1847
    grayconv read ( .binval({\RcntB[4] , \RcntB[3] , \RcntB[2] , \RcntB[1] , 
1848
        \RcntB[0] }), .grayval(RcntG) );
1849
    assign n30 = (~(\RcntB[3]  ^ \WcntB[3] ) & ~(\RcntB[2]  ^ \WcntB[2] ) & ~(
1850
        \RcntB[1]  ^ \WcntB[1] ) & ~(\RcntB[0]  ^ \WcntB[0] ));
1851
    SUB_UNS_OP U11 ( .A({Logic1, Logic0, Logic0, Logic0, Logic0}), .B({
1852
        \n43[1] , \n43[2] , \n43[3] , \n43[4] , \n43[5] }), .Z({\n_free25[4] , 
1853
        \n_free25[3] , \n_free25[2] , \n_free25[1] , \n_free25[0] }) );
1854
    grayconv write ( .binval({\WcntB[4] , \WcntB[3] , \WcntB[2] , \WcntB[1] , 
1855
        \WcntB[0] }), .grayval(WcntG) );
1856
    assign n15 = ~n13;
1857
    assign n17 = (n13 & n16);
1858
    assign n18 = (n13 & ~n16);
1859
    assign n13 = n19;
1860
    assign n19 = (~(\RcntB[4]  ^ \WcntB[4] ));
1861
endmodule
1862
 
1863
 
1864
module grayconv ( binval, grayval );
1865
output [4:0] binval;
1866
input  [4:0] grayval;
1867
    wire \binval173[0] , \binval173[2] , n80, n81, n82, n83, \binval173[4] , 
1868
        n84, n85, n60, n86, n61, n87, n88, n62, n63, n89, n64, n65, n66, n40, 
1869
        n41, n67, n68, n42, n69, n43, \n177[1] , n44, n45, n20, n46, n47, n21, 
1870
        n48, n22, n49, n23, \n177[3] , n24, n25, n26, n27, n28, n29, \n174[1] , 
1871
        \n178[0] , \n174[3] , \n178[2] , \n178[4] , n9, Logic0, Logic1, n161, 
1872
        n163, n165, n167, n141, n143, n169, n145, n121, n147, n123, n149, n125, 
1873
        n100, n101, n127, n102, n103, n129, n104, n109, \binval173[1] , n90, 
1874
        n91, n92, n93, \binval173[3] , n94, n95, n70, n96, n71, n97, n72, n98, 
1875
        n99, n73, n74, n75, n50, n76, n77, n51, n78, n52, n79, n53, \n177[0] , 
1876
        n54, n55, n30, n56, n57, n31, n58, n32, n59, n33, \n177[2] , n34, n35, 
1877
        n36, n10, n11, n37, n38, n12, n39, n13, \n177[4] , n14, n15, n16, n17, 
1878
        n18, n19, \n174[0] , \n174[2] , \n178[1] , \n174[4] , \n178[3] , n171, 
1879
        n151, n153, n155, n131, n157, n133, n159, n135, n111, n137, n139, n113, 
1880
        n115, n117, n119;
1881
    assign n19 = (n17 & n18);
1882
    assign n20 = (n17 & ~n18);
1883
    assign n22 = (n20 & n21);
1884
    assign n133 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1885
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
1886
    assign n63 = n135;
1887
    assign n135 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1888
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
1889
    assign n123 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1890
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
1891
    assign n60 = n137;
1892
    \**FFGEN**  \binval_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0), 
1893
        .force_00(\n174[4] ), .force_01(\n178[4] ), .force_10(\n177[4] ), 
1894
        .force_11(\binval173[4] ), .Q(binval[4]) );
1895
    assign n137 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1896
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
1897
    \**FFGEN**  \binval_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0), 
1898
        .force_00(\n174[3] ), .force_01(\n178[3] ), .force_10(\n177[3] ), 
1899
        .force_11(\binval173[3] ), .Q(binval[3]) );
1900
    assign n75 = n127;
1901
    assign n139 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1902
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
1903
    assign n93 = n115;
1904
    assign n54 = n141;
1905
    assign n127 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1906
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
1907
    assign n141 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1908
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
1909
    assign n72 = n129;
1910
    assign n129 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1911
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
1912
    \**FFGEN**  \binval_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0), 
1913
        .force_00(\n174[2] ), .force_01(\n178[2] ), .force_10(\n177[2] ), 
1914
        .force_11(\binval173[2] ), .Q(binval[2]) );
1915
    assign n90 = n117;
1916
    assign n98 = (n95 & ~n96);
1917
    assign n51 = n143;
1918
    assign n69 = n131;
1919
    assign n100 = (n98 & n99);
1920
    assign n117 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1921
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
1922
    assign n101 = (n98 & ~n99);
1923
    assign n87 = n119;
1924
    assign n119 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1925
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
1926
    \**FFGEN**  \binval_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0), 
1927
        .force_00(\n174[1] ), .force_01(\n178[1] ), .force_10(\n177[1] ), 
1928
        .force_11(\binval173[1] ), .Q(binval[1]) );
1929
    assign n103 = (n101 & n102);
1930
    assign n83 = (n80 & ~n81);
1931
    assign n66 = n133;
1932
    assign n85 = (n83 & n84);
1933
    assign n84 = n121;
1934
    assign n104 = (n101 & ~n102);
1935
    assign n102 = n109;
1936
    assign n121 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1937
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
1938
    assign n86 = (n83 & ~n84);
1939
    assign n81 = n123;
1940
    assign n109 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1941
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
1942
    assign n88 = (n86 & n87);
1943
    assign n68 = (n65 & ~n66);
1944
    \**FFGEN**  \binval_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0), 
1945
        .force_00(\n174[0] ), .force_01(\n178[0] ), .force_10(\n177[0] ), 
1946
        .force_11(\binval173[0] ), .Q(binval[0]) );
1947
    assign n70 = (n68 & n69);
1948
    assign n89 = (n86 & ~n87);
1949
    assign n99 = n111;
1950
    assign n71 = (n68 & ~n69);
1951
    assign n91 = (n89 & n90);
1952
    assign n111 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1953
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
1954
    assign n53 = (n50 & ~n51);
1955
    assign n92 = (n89 & ~n90);
1956
    assign n94 = (n92 & n93);
1957
    assign n36 = n153;
1958
    assign n55 = (n53 & n54);
1959
    assign n151 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1960
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
1961
    assign n76 = (n74 & n75);
1962
    assign n95 = (n92 & ~n93);
1963
    assign n56 = (n53 & ~n54);
1964
    assign n39 = n151;
1965
    assign n97 = (n95 & n96);
1966
    assign n77 = (n74 & ~n75);
1967
    assign n58 = (n56 & n57);
1968
    assign n38 = (n35 & ~n36);
1969
    assign n79 = (n77 & n78);
1970
    assign n21 = n163;
1971
    assign n149 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1972
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
1973
    assign n59 = (n56 & ~n57);
1974
    assign n40 = (n38 & n39);
1975
    assign n80 = (n77 & ~n78);
1976
    assign n42 = n149;
1977
    assign n61 = (n59 & n60);
1978
    assign n161 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1979
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
1980
    assign n41 = (n38 & ~n39);
1981
    assign n147 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
1982
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
1983
    assign n24 = n161;
1984
    assign n82 = (n80 & n81);
1985
    assign n62 = (n59 & ~n60);
1986
    assign n23 = (n20 & ~n21);
1987
    assign n43 = (n41 & n42);
1988
    assign n45 = n147;
1989
    assign n159 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
1990
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
1991
    assign n25 = (n23 & n24);
1992
    assign \n177[4]  = (\binval173[4]  & \n174[4] );
1993
    assign \n177[3]  = (\binval173[3]  & \n174[3] );
1994
    assign \n177[2]  = (\binval173[2]  & \n174[2] );
1995
    assign \n177[1]  = (\binval173[1]  & \n174[1] );
1996
    assign \n177[0]  = (\binval173[0]  & \n174[0] );
1997
    assign \n178[4]  = (~\binval173[4]  & \n174[4] );
1998
    assign \n178[3]  = (~\binval173[3]  & \n174[3] );
1999
    assign \n178[2]  = (~\binval173[2]  & \n174[2] );
2000
    assign \n178[1]  = (~\binval173[1]  & \n174[1] );
2001
    assign \n178[0]  = (~\binval173[0]  & \n174[0] );
2002
    assign n64 = (n62 & n63);
2003
    assign n44 = (n41 & ~n42);
2004
    assign n26 = (n23 & ~n24);
2005
    assign n145 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
2006
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
2007
    assign n46 = (n44 & n45);
2008
    assign n27 = n159;
2009
    assign n65 = (n62 & ~n63);
2010
    assign n171 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2011
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
2012
    assign n28 = (n26 & n27);
2013
    assign n47 = (n44 & ~n45);
2014
    assign n48 = n145;
2015
    assign n67 = (n65 & n66);
2016
    assign n157 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2017
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
2018
    assign n9 = n171;
2019
    assign n29 = (n26 & ~n27);
2020
    assign n49 = (n47 & n48);
2021
    assign n169 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2022
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
2023
    assign n30 = n157;
2024
    assign n143 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
2025
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
2026
    assign n12 = n169;
2027
    assign n31 = (n29 & n30);
2028
    assign n50 = (n47 & ~n48);
2029
    assign n155 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
2030
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
2031
    assign n33 = n155;
2032
    assign n52 = (n50 & n51);
2033
    assign n167 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2034
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
2035
    assign n32 = (n29 & ~n30);
2036
    assign n153 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
2037
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
2038
    assign n15 = n167;
2039
    assign n34 = (n32 & n33);
2040
    assign n165 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2041
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
2042
    assign n35 = (n32 & ~n33);
2043
    assign n37 = (n35 & n36);
2044
    assign n18 = n165;
2045
    assign n163 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
2046
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
2047
    SELECT_OP U131 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2(
2048
        {Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0, 
2049
        Logic0, Logic1, Logic0}), .DATA4({Logic0, Logic0, Logic0, Logic1, 
2050
        Logic1}), .DATA5({Logic0, Logic0, Logic1, Logic0, Logic0}), .DATA6({
2051
        Logic0, Logic0, Logic1, Logic0, Logic1}), .DATA7({Logic0, Logic0, 
2052
        Logic1, Logic1, Logic0}), .DATA8({Logic0, Logic0, Logic1, Logic1, 
2053
        Logic1}), .DATA9({Logic0, Logic1, Logic0, Logic0, Logic0}), .DATA10({
2054
        Logic0, Logic1, Logic0, Logic0, Logic1}), .DATA11({Logic0, Logic1, 
2055
        Logic0, Logic1, Logic0}), .DATA12({Logic0, Logic1, Logic0, Logic1, 
2056
        Logic1}), .DATA13({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA14({
2057
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA15({Logic0, Logic1, 
2058
        Logic1, Logic1, Logic0}), .DATA16({Logic0, Logic1, Logic1, Logic1, 
2059
        Logic1}), .DATA17({Logic1, Logic0, Logic0, Logic0, Logic0}), .DATA18({
2060
        Logic1, Logic0, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic0, 
2061
        Logic0, Logic1, Logic0}), .DATA20({Logic1, Logic0, Logic0, Logic1, 
2062
        Logic1}), .DATA21({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA22({
2063
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA23({Logic1, Logic0, 
2064
        Logic1, Logic1, Logic0}), .DATA24({Logic1, Logic0, Logic1, Logic1, 
2065
        Logic1}), .DATA25({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA26({
2066
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA27({Logic1, Logic1, 
2067
        Logic0, Logic1, Logic0}), .DATA28({Logic1, Logic1, Logic0, Logic1, 
2068
        Logic1}), .DATA29({Logic1, Logic1, Logic1, Logic0, Logic0}), .DATA30({
2069
        Logic1, Logic1, Logic1, Logic0, Logic1}), .DATA31({Logic1, Logic1, 
2070
        Logic1, Logic1, Logic0}), .DATA32({Logic1, Logic1, Logic1, Logic1, 
2071
        Logic1}), .CONTROL1(n10), .CONTROL2(n13), .CONTROL3(n16), .CONTROL4(
2072
        n19), .CONTROL5(n22), .CONTROL6(n25), .CONTROL7(n28), .CONTROL8(n31), 
2073
        .CONTROL9(n34), .CONTROL10(n37), .CONTROL11(n40), .CONTROL12(n43), 
2074
        .CONTROL13(n46), .CONTROL14(n49), .CONTROL15(n52), .CONTROL16(n55), 
2075
        .CONTROL17(n58), .CONTROL18(n61), .CONTROL19(n64), .CONTROL20(n67), 
2076
        .CONTROL21(n70), .CONTROL22(n73), .CONTROL23(n76), .CONTROL24(n79), 
2077
        .CONTROL25(n82), .CONTROL26(n85), .CONTROL27(n88), .CONTROL28(n91), 
2078
        .CONTROL29(n94), .CONTROL30(n97), .CONTROL31(n100), .CONTROL32(n103), 
2079
        .Z({\binval173[4] , \binval173[3] , \binval173[2] , \binval173[1] , 
2080
        \binval173[0] }) );
2081
    SELECT_OP U130 ( .DATA1({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA2(
2082
        {Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA3({Logic1, Logic1, 
2083
        Logic1, Logic1, Logic1}), .DATA4({Logic1, Logic1, Logic1, Logic1, 
2084
        Logic1}), .DATA5({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA6({
2085
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA7({Logic1, Logic1, 
2086
        Logic1, Logic1, Logic1}), .DATA8({Logic1, Logic1, Logic1, Logic1, 
2087
        Logic1}), .DATA9({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA10({
2088
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA11({Logic1, Logic1, 
2089
        Logic1, Logic1, Logic1}), .DATA12({Logic1, Logic1, Logic1, Logic1, 
2090
        Logic1}), .DATA13({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA14({
2091
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA15({Logic1, Logic1, 
2092
        Logic1, Logic1, Logic1}), .DATA16({Logic1, Logic1, Logic1, Logic1, 
2093
        Logic1}), .DATA17({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA18({
2094
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA19({Logic1, Logic1, 
2095
        Logic1, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic1, Logic1, 
2096
        Logic1}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA22({
2097
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1, 
2098
        Logic1, Logic1, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic1, 
2099
        Logic1}), .DATA25({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA26({
2100
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA27({Logic1, Logic1, 
2101
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic1, Logic1, Logic1, 
2102
        Logic1}), .DATA29({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA30({
2103
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA31({Logic1, Logic1, 
2104
        Logic1, Logic1, Logic1}), .DATA32({Logic1, Logic1, Logic1, Logic1, 
2105
        Logic1}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}), 
2106
        .CONTROL1(n10), .CONTROL2(n13), .CONTROL3(n16), .CONTROL4(n19), 
2107
        .CONTROL5(n22), .CONTROL6(n25), .CONTROL7(n28), .CONTROL8(n31), 
2108
        .CONTROL9(n34), .CONTROL10(n37), .CONTROL11(n40), .CONTROL12(n43), 
2109
        .CONTROL13(n46), .CONTROL14(n49), .CONTROL15(n52), .CONTROL16(n55), 
2110
        .CONTROL17(n58), .CONTROL18(n61), .CONTROL19(n64), .CONTROL20(n67), 
2111
        .CONTROL21(n70), .CONTROL22(n73), .CONTROL23(n76), .CONTROL24(n79), 
2112
        .CONTROL25(n82), .CONTROL26(n85), .CONTROL27(n88), .CONTROL28(n91), 
2113
        .CONTROL29(n94), .CONTROL30(n97), .CONTROL31(n100), .CONTROL32(n103), 
2114
        .CONTROL33(n104), .Z({\n174[4] , \n174[3] , \n174[2] , \n174[1] , 
2115
        \n174[0] }) );
2116
    assign Logic0 = 1'b0;
2117
    assign Logic1 = 1'b1;
2118
    assign n10 = n9;
2119
    assign n11 = ~n9;
2120
    assign n13 = (n11 & n12);
2121
    assign n14 = (n11 & ~n12);
2122
    assign n16 = (n14 & n15);
2123
    assign n17 = (n14 & ~n15);
2124
endmodule
2125
 
2126
 
2127
module fifoLatchesAndMuxes ( aaaDataIn, Addr, BE, lastAddrWrite, fifoData, 
2128
    fifoAddr, fifoBE, fifoRnW, latchFifoWord, readFifoWord, aaaclk1, aaaclk9, 
2129
    sqo, sdi, se );
2130
input  [31:0] aaaDataIn;
2131
input  [24:2] Addr;
2132
output [31:0] fifoData;
2133
output [3:0] fifoBE;
2134
input  [3:0] BE;
2135
output [22:0] fifoAddr;
2136
input  [15:0] latchFifoWord;
2137
input  [8:0] readFifoWord;
2138
input  lastAddrWrite, aaaclk1, aaaclk9, sdi, se;
2139
output fifoRnW, sqo;
2140
    wire sq0;
2141
    Afifo addrFifo ( .Addr(Addr), .BE(BE), .lastAddrWrite(lastAddrWrite), 
2142
        .fifoAddr(fifoAddr), .fifoBE(fifoBE), .fifoRnW(fifoRnW), 
2143
        .latchFifoWord(latchFifoWord), .readFifoWord(readFifoWord), .aaaclk(
2144
        aaaclk9), .sqo(sqo), .sdi(sq0), .se(se) );
2145
    Dfifo dtFifo ( .aaaDataIn(aaaDataIn), .fifoData(fifoData), .latchFifoWord(
2146
        latchFifoWord), .readFifoWord(readFifoWord), .aaaclk(aaaclk1), .sqo(
2147
        sq0), .sdi(sdi), .se(se) );
2148
endmodule
2149
 
2150
 
2151
module Afifo ( Addr, BE, lastAddrWrite, fifoAddr, fifoBE, fifoRnW, 
2152
    latchFifoWord, readFifoWord, aaaclk, sqo, sdi, se );
2153
input  [24:2] Addr;
2154
output [3:0] fifoBE;
2155
input  [3:0] BE;
2156
output [22:0] fifoAddr;
2157
input  [15:0] latchFifoWord;
2158
input  [8:0] readFifoWord;
2159
input  lastAddrWrite, aaaclk, sdi, se;
2160
output fifoRnW, sqo;
2161
    MX81 \infifou0/u1/u1/u1/u01  ( .X(\addrLower[7] ), .A(\addrword0[7] ), 
2162
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[7] ), .SLB(
2163
        \readFifoWordBuffedL[1] ), .C(\addrword2[7] ), .SLC(
2164
        \readFifoWordBuffedL[2] ), .D(\addrword3[7] ), .SLD(
2165
        \readFifoWordBuffedL[3] ), .E(\addrword4[7] ), .SLE(
2166
        \readFifoWordBuffedL[4] ), .F(\addrword5[7] ), .SLF(
2167
        \readFifoWordBuffedL[5] ), .G(\addrword6[7] ), .SLG(
2168
        \readFifoWordBuffedL[6] ), .H(\addrword7[7] ), .SLH(
2169
        \readFifoWordBuffedL[7] ) );
2170
    LATP4 \infifou1/u0/u012  ( .Q0(\addrword5[4] ), .Q1(\addrword5[5] ), .Q2(
2171
        \addrword5[6] ), .Q3(\addrword5[7] ), .D0(\datainlch[4] ), .D1(
2172
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2173
        latchFifoWord[5]) );
2174
    LATP4 \infifou1/u0/u011  ( .Q0(\addrword4[4] ), .Q1(\addrword4[5] ), .Q2(
2175
        \addrword4[6] ), .Q3(\addrword4[7] ), .D0(\datainlch[4] ), .D1(
2176
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2177
        latchFifoWord[4]) );
2178
    LATP4 \infifou1/u0/u010  ( .Q0(\addrword3[4] ), .Q1(\addrword3[5] ), .Q2(
2179
        \addrword3[6] ), .Q3(\addrword3[7] ), .D0(\datainlch[4] ), .D1(
2180
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2181
        latchFifoWord[3]) );
2182
    MX81 \infifou0/u0/u0/u1/u0  ( .X(\addrUpper[1] ), .A(\addrword8[1] ), 
2183
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[1] ), .SLB(
2184
        \readFifoWordBuffedU[1] ), .C(\addrword10[1] ), .SLC(
2185
        \readFifoWordBuffedU[2] ), .D(\addrword11[1] ), .SLD(
2186
        \readFifoWordBuffedU[3] ), .E(\addrword12[1] ), .SLE(
2187
        \readFifoWordBuffedU[4] ), .F(\addrword13[1] ), .SLF(
2188
        \readFifoWordBuffedU[5] ), .G(\addrword14[1] ), .SLG(
2189
        \readFifoWordBuffedU[6] ), .H(\addrword15[1] ), .SLH(
2190
        \readFifoWordBuffedU[7] ) );
2191
    DFF4 \infifod0/d0/d1/d0  ( .Q0(\datainNotBuf[7] ), .Q1(\datainNotBuf[6] ), 
2192
        .Q2(\datainNotBuf[5] ), .Q3(\datainNotBuf[4] ), .SQ3(n1050), .D0(Addr
2193
        [9]), .D1(Addr[8]), .D2(Addr[7]), .D3(Addr[6]), .CK(aaaclk), .SD0(
2194
        n1033), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2195
    BUF8 \infifob1/b1/b1/b1/b1/b1  ( .A(fifoAddr[0]) );
2196
    LATP4 \infifou0/u010  ( .Q0(\addrword4[0] ), .Q1(\addrword4[1] ), .Q2(
2197
        \addrword4[2] ), .Q3(\addrword4[3] ), .D0(\datainlch[0] ), .D1(
2198
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2199
        latchFifoWord[4]) );
2200
    MX81 \infifou1/u0/u1/u1/u0/u0  ( .X(\addrUpper[14] ), .A(\addrword8[14] ), 
2201
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[14] ), .SLB(
2202
        \readFifoWordBuffedU[1] ), .C(\addrword10[14] ), .SLC(
2203
        \readFifoWordBuffedU[2] ), .D(\addrword11[14] ), .SLD(
2204
        \readFifoWordBuffedU[3] ), .E(\addrword12[14] ), .SLE(
2205
        \readFifoWordBuffedU[4] ), .F(\addrword13[14] ), .SLF(
2206
        \readFifoWordBuffedU[5] ), .G(\addrword14[14] ), .SLG(
2207
        \readFifoWordBuffedU[6] ), .H(\addrword15[14] ), .SLH(
2208
        \readFifoWordBuffedU[7] ) );
2209
    LATP4 \infifou0/u011  ( .Q0(\addrword5[0] ), .Q1(\addrword5[1] ), .Q2(
2210
        \addrword5[2] ), .Q3(\addrword5[3] ), .D0(\datainlch[0] ), .D1(
2211
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2212
        latchFifoWord[5]) );
2213
    MX81 \infifou1/u0/u1/u1/u1/u01  ( .X(\addrLower[15] ), .A(\addrword0[15] ), 
2214
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[15] ), .SLB(
2215
        \readFifoWordBuffedL[1] ), .C(\addrword2[15] ), .SLC(
2216
        \readFifoWordBuffedL[2] ), .D(\addrword3[15] ), .SLD(
2217
        \readFifoWordBuffedL[3] ), .E(\addrword4[15] ), .SLE(
2218
        \readFifoWordBuffedL[4] ), .F(\addrword5[15] ), .SLF(
2219
        \readFifoWordBuffedL[5] ), .G(\addrword6[15] ), .SLG(
2220
        \readFifoWordBuffedL[6] ), .H(\addrword7[15] ), .SLH(
2221
        \readFifoWordBuffedL[7] ) );
2222
    LATP4 \infifou0/u012  ( .Q0(\addrword6[0] ), .Q1(\addrword6[1] ), .Q2(
2223
        \addrword6[2] ), .Q3(\addrword6[3] ), .D0(\datainlch[0] ), .D1(
2224
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2225
        latchFifoWord[6]) );
2226
    MX81 \infifou1/u0/u1/u1/u0/u01  ( .X(\addrLower[14] ), .A(\addrword0[14] ), 
2227
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[14] ), .SLB(
2228
        \readFifoWordBuffedL[1] ), .C(\addrword2[14] ), .SLC(
2229
        \readFifoWordBuffedL[2] ), .D(\addrword3[14] ), .SLD(
2230
        \readFifoWordBuffedL[3] ), .E(\addrword4[14] ), .SLE(
2231
        \readFifoWordBuffedL[4] ), .F(\addrword5[14] ), .SLF(
2232
        \readFifoWordBuffedL[5] ), .G(\addrword6[14] ), .SLG(
2233
        \readFifoWordBuffedL[6] ), .H(\addrword7[14] ), .SLH(
2234
        \readFifoWordBuffedL[7] ) );
2235
    LATP4 \infifou0/u013  ( .Q0(\addrword7[0] ), .Q1(\addrword7[1] ), .Q2(
2236
        \addrword7[2] ), .Q3(\addrword7[3] ), .D0(\datainlch[0] ), .D1(
2237
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2238
        latchFifoWord[7]) );
2239
    LATP4 \infifou0/u014  ( .Q0(\addrword8[0] ), .Q1(\addrword8[1] ), .Q2(
2240
        \addrword8[2] ), .Q3(\addrword8[3] ), .D0(\datainlch[0] ), .D1(
2241
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2242
        latchFifoWord[8]) );
2243
    LATP4 \infifou0/u015  ( .Q0(\addrword9[0] ), .Q1(\addrword9[1] ), .Q2(
2244
        \addrword9[2] ), .Q3(\addrword9[3] ), .D0(\datainlch[0] ), .D1(
2245
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2246
        latchFifoWord[9]) );
2247
    INV8 rNwBuf ( .X(fifoRnW), .A(\dataout[27] ) );
2248
    MUX41H \infifou0/u1/u1/u0  ( .X0(fifoAddr[12]), .X1(\dataout[13] ), .X2(
2249
        fifoAddr[14]), .X3(\dataout[15] ), .A0(\addrLower[12] ), .B0(
2250
        \addrUpper[12] ), .A1(\addrLower[13] ), .B1(\addrUpper[13] ), .A2(
2251
        \addrLower[14] ), .B2(\addrUpper[14] ), .A3(\addrLower[15] ), .B3(
2252
        \addrUpper[15] ), .SL(\readFifoWordBuffedL[8] ) );
2253
    MX81 \infifou0/u0/u1/u1/u0  ( .X(\addrUpper[3] ), .A(\addrword8[3] ), 
2254
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[3] ), .SLB(
2255
        \readFifoWordBuffedU[1] ), .C(\addrword10[3] ), .SLC(
2256
        \readFifoWordBuffedU[2] ), .D(\addrword11[3] ), .SLD(
2257
        \readFifoWordBuffedU[3] ), .E(\addrword12[3] ), .SLE(
2258
        \readFifoWordBuffedU[4] ), .F(\addrword13[3] ), .SLF(
2259
        \readFifoWordBuffedU[5] ), .G(\addrword14[3] ), .SLG(
2260
        \readFifoWordBuffedU[6] ), .H(\addrword15[3] ), .SLH(
2261
        \readFifoWordBuffedU[7] ) );
2262
    BUF8 \infifob1/b2/b1/b2/b2/b11  ( .X(\datainlch[11] ), .A(
2263
        \datainNotBuf[11] ) );
2264
    BUF8 \infifob1/b2/b1/b2/b1/b11  ( .X(\datainlch[10] ), .A(
2265
        \datainNotBuf[10] ) );
2266
    MX81 \infifou0/u1/u0/u1/u01  ( .X(\addrLower[5] ), .A(\addrword0[5] ), 
2267
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[5] ), .SLB(
2268
        \readFifoWordBuffedL[1] ), .C(\addrword2[5] ), .SLC(
2269
        \readFifoWordBuffedL[2] ), .D(\addrword3[5] ), .SLD(
2270
        \readFifoWordBuffedL[3] ), .E(\addrword4[5] ), .SLE(
2271
        \readFifoWordBuffedL[4] ), .F(\addrword5[5] ), .SLF(
2272
        \readFifoWordBuffedL[5] ), .G(\addrword6[5] ), .SLG(
2273
        \readFifoWordBuffedL[6] ), .H(\addrword7[5] ), .SLH(
2274
        \readFifoWordBuffedL[7] ) );
2275
    BUF8 \infifob1/b1/b1/b2/b1/b1  ( .A(fifoAddr[2]) );
2276
    MX81 \infifou1/u0/u1/u0/u0/u0  ( .X(\addrUpper[12] ), .A(\addrword8[12] ), 
2277
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[12] ), .SLB(
2278
        \readFifoWordBuffedU[1] ), .C(\addrword10[12] ), .SLC(
2279
        \readFifoWordBuffedU[2] ), .D(\addrword11[12] ), .SLD(
2280
        \readFifoWordBuffedU[3] ), .E(\addrword12[12] ), .SLE(
2281
        \readFifoWordBuffedU[4] ), .F(\addrword13[12] ), .SLF(
2282
        \readFifoWordBuffedU[5] ), .G(\addrword14[12] ), .SLG(
2283
        \readFifoWordBuffedU[6] ), .H(\addrword15[12] ), .SLH(
2284
        \readFifoWordBuffedU[7] ) );
2285
    LATP4 \infifou2/u1/u1/u09  ( .Q0(\addrword2[24] ), .Q1(\addrword2[25] ), 
2286
        .Q2(\addrword2[26] ), .Q3(\addrword2[27] ), .D0(\datainlch[24] ), .D1(
2287
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2288
        latchFifoWord[2]) );
2289
    LATP4 \infifou2/u1/u0/u09  ( .Q0(\addrword2[20] ), .Q1(\addrword2[21] ), 
2290
        .Q2(\addrword2[22] ), .Q3(\addrword2[23] ), .D0(\datainlch[20] ), .D1(
2291
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2292
        latchFifoWord[2]) );
2293
    LATP4 \infifou2/u1/u1/u08  ( .Q0(\addrword1[24] ), .Q1(\addrword1[25] ), 
2294
        .Q2(\addrword1[26] ), .Q3(\addrword1[27] ), .D0(\datainlch[24] ), .D1(
2295
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2296
        latchFifoWord[1]) );
2297
    LATP4 \infifou2/u1/u0/u08  ( .Q0(\addrword1[20] ), .Q1(\addrword1[21] ), 
2298
        .Q2(\addrword1[22] ), .Q3(\addrword1[23] ), .D0(\datainlch[20] ), .D1(
2299
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2300
        latchFifoWord[1]) );
2301
    LATP4 \infifou2/u1/u1/u07  ( .Q0(\addrword0[24] ), .Q1(\addrword0[25] ), 
2302
        .Q2(\addrword0[26] ), .Q3(\addrword0[27] ), .D0(\datainlch[24] ), .D1(
2303
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2304
        latchFifoWord[0]) );
2305
    LATP4 \infifou2/u1/u0/u07  ( .Q0(\addrword0[20] ), .Q1(\addrword0[21] ), 
2306
        .Q2(\addrword0[22] ), .Q3(\addrword0[23] ), .D0(\datainlch[20] ), .D1(
2307
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2308
        latchFifoWord[0]) );
2309
    LATP4 \infifou2/u1/u1/u06  ( .Q0(\addrword15[24] ), .Q1(\addrword15[25] ), 
2310
        .Q2(\addrword15[26] ), .Q3(\addrword15[27] ), .D0(\datainlch[24] ), 
2311
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2312
        latchFifoWord[15]) );
2313
    LATP4 \infifou2/u1/u1/u05  ( .Q0(\addrword14[24] ), .Q1(\addrword14[25] ), 
2314
        .Q2(\addrword14[26] ), .Q3(\addrword14[27] ), .D0(\datainlch[24] ), 
2315
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2316
        latchFifoWord[14]) );
2317
    LATP4 \infifou2/u1/u0/u06  ( .Q0(\addrword15[20] ), .Q1(\addrword15[21] ), 
2318
        .Q2(\addrword15[22] ), .Q3(\addrword15[23] ), .D0(\datainlch[20] ), 
2319
        .D1(\datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2320
        latchFifoWord[15]) );
2321
    BUF8 \infifob2/b1/b1/b1/b1  ( .X(\datainlch[16] ), .A(\datainNotBuf[16] )
2322
         );
2323
    LATP4 \infifou2/u1/u1/u04  ( .Q0(\addrword13[24] ), .Q1(\addrword13[25] ), 
2324
        .Q2(\addrword13[26] ), .Q3(\addrword13[27] ), .D0(\datainlch[24] ), 
2325
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2326
        latchFifoWord[13]) );
2327
    LATP4 \infifou2/u1/u0/u05  ( .Q0(\addrword14[20] ), .Q1(\addrword14[21] ), 
2328
        .Q2(\addrword14[22] ), .Q3(\addrword14[23] ), .D0(\datainlch[20] ), 
2329
        .D1(\datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2330
        latchFifoWord[14]) );
2331
    BUF8 AfifoScanBuf ( .X(AfifoSeBuf), .A(se) );
2332
    LATP4 \infifou2/u1/u1/u03  ( .Q0(\addrword12[24] ), .Q1(\addrword12[25] ), 
2333
        .Q2(\addrword12[26] ), .Q3(\addrword12[27] ), .D0(\datainlch[24] ), 
2334
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2335
        latchFifoWord[12]) );
2336
    LATP4 \infifou2/u1/u0/u04  ( .Q0(\addrword13[20] ), .Q1(\addrword13[21] ), 
2337
        .Q2(\addrword13[22] ), .Q3(\addrword13[23] ), .D0(\datainlch[20] ), 
2338
        .D1(\datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2339
        latchFifoWord[13]) );
2340
    LATP4 \infifou2/u1/u1/u02  ( .Q0(\addrword11[24] ), .Q1(\addrword11[25] ), 
2341
        .Q2(\addrword11[26] ), .Q3(\addrword11[27] ), .D0(\datainlch[24] ), 
2342
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2343
        latchFifoWord[11]) );
2344
    MX81 \infifou2/u1/u0/u017  ( .X(\addrLower[26] ), .A(\addrword0[26] ), 
2345
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[26] ), .SLB(
2346
        \readFifoWordBuffedL[1] ), .C(\addrword2[26] ), .SLC(
2347
        \readFifoWordBuffedL[2] ), .D(\addrword3[26] ), .SLD(
2348
        \readFifoWordBuffedL[3] ), .E(\addrword4[26] ), .SLE(
2349
        \readFifoWordBuffedL[4] ), .F(\addrword5[26] ), .SLF(
2350
        \readFifoWordBuffedL[5] ), .G(\addrword6[26] ), .SLG(
2351
        \readFifoWordBuffedL[6] ), .H(\addrword7[26] ), .SLH(
2352
        \readFifoWordBuffedL[7] ) );
2353
    LATP4 \infifou2/u1/u0/u016  ( .Q0(\addrword9[20] ), .Q1(\addrword9[21] ), 
2354
        .Q2(\addrword9[22] ), .Q3(\addrword9[23] ), .D0(\datainlch[20] ), .D1(
2355
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2356
        latchFifoWord[9]) );
2357
    LATP4 \infifou2/u1/u0/u015  ( .Q0(\addrword8[20] ), .Q1(\addrword8[21] ), 
2358
        .Q2(\addrword8[22] ), .Q3(\addrword8[23] ), .D0(\datainlch[20] ), .D1(
2359
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2360
        latchFifoWord[8]) );
2361
    LATP4 \infifou2/u1/u0/u014  ( .Q0(\addrword7[20] ), .Q1(\addrword7[21] ), 
2362
        .Q2(\addrword7[22] ), .Q3(\addrword7[23] ), .D0(\datainlch[20] ), .D1(
2363
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2364
        latchFifoWord[7]) );
2365
    LATP4 \infifou2/u1/u0/u013  ( .Q0(\addrword6[20] ), .Q1(\addrword6[21] ), 
2366
        .Q2(\addrword6[22] ), .Q3(\addrword6[23] ), .D0(\datainlch[20] ), .D1(
2367
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2368
        latchFifoWord[6]) );
2369
    LATP4 \infifou2/u1/u0/u012  ( .Q0(\addrword5[20] ), .Q1(\addrword5[21] ), 
2370
        .Q2(\addrword5[22] ), .Q3(\addrword5[23] ), .D0(\datainlch[20] ), .D1(
2371
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2372
        latchFifoWord[5]) );
2373
    LATP4 \infifou2/u1/u0/u011  ( .Q0(\addrword4[20] ), .Q1(\addrword4[21] ), 
2374
        .Q2(\addrword4[22] ), .Q3(\addrword4[23] ), .D0(\datainlch[20] ), .D1(
2375
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2376
        latchFifoWord[4]) );
2377
    LATP4 \infifou2/u1/u0/u010  ( .Q0(\addrword3[20] ), .Q1(\addrword3[21] ), 
2378
        .Q2(\addrword3[22] ), .Q3(\addrword3[23] ), .D0(\datainlch[20] ), .D1(
2379
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
2380
        latchFifoWord[3]) );
2381
    BUF8 \infifob3/b2/b2/b1  ( .X(\datainlch[27] ), .A(\datainNotBuf[27] ) );
2382
    INV8 readWordBufferU0 ( .X(\readFifoWordBuffedU[0] ), .A(readFifoWord[0])
2383
         );
2384
    INV8 readWordBufferU1 ( .X(\readFifoWordBuffedU[1] ), .A(readFifoWord[1])
2385
         );
2386
    INV8 readWordBufferU2 ( .X(\readFifoWordBuffedU[2] ), .A(readFifoWord[2])
2387
         );
2388
    INV8 readWordBufferU3 ( .X(\readFifoWordBuffedU[3] ), .A(readFifoWord[3])
2389
         );
2390
    MUX41H \infifou0/u0/u1/u0  ( .X0(fifoAddr[4]), .X1(\dataout[5] ), .X2(
2391
        fifoAddr[6]), .X3(\dataout[7] ), .A0(\addrLower[4] ), .B0(
2392
        \addrUpper[4] ), .A1(\addrLower[5] ), .B1(\addrUpper[5] ), .A2(
2393
        \addrLower[6] ), .B2(\addrUpper[6] ), .A3(\addrLower[7] ), .B3(
2394
        \addrUpper[7] ), .SL(\readFifoWordBuffedL[8] ) );
2395
    INV8 readWordBufferU4 ( .X(\readFifoWordBuffedU[4] ), .A(readFifoWord[4])
2396
         );
2397
    INV8 readWordBufferU5 ( .X(\readFifoWordBuffedU[5] ), .A(readFifoWord[5])
2398
         );
2399
    INV8 readWordBufferU6 ( .X(\readFifoWordBuffedU[6] ), .A(readFifoWord[6])
2400
         );
2401
    INV8 readWordBufferU7 ( .X(\readFifoWordBuffedU[7] ), .A(readFifoWord[7])
2402
         );
2403
    BUF8 \infifob2/b1/b1/b1  ( .A(fifoAddr[16]) );
2404
    LATP4 \infifou1/u1/u016  ( .Q0(\addrword9[8] ), .Q1(\addrword9[9] ), .Q2(
2405
        \addrword9[10] ), .Q3(\addrword9[11] ), .D0(\datainlch[8] ), .D1(
2406
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2407
        latchFifoWord[9]) );
2408
    LATP4 \infifou1/u1/u015  ( .Q0(\addrword8[8] ), .Q1(\addrword8[9] ), .Q2(
2409
        \addrword8[10] ), .Q3(\addrword8[11] ), .D0(\datainlch[8] ), .D1(
2410
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2411
        latchFifoWord[8]) );
2412
    LATP4 \infifou1/u1/u014  ( .Q0(\addrword7[8] ), .Q1(\addrword7[9] ), .Q2(
2413
        \addrword7[10] ), .Q3(\addrword7[11] ), .D0(\datainlch[8] ), .D1(
2414
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2415
        latchFifoWord[7]) );
2416
    BUF8 \infifob3/b1/b2/b1  ( .X(fifoAddr[21]), .A(\dataout[21] ) );
2417
    LATP4 \infifou0/u01  ( .Q0(\addrword11[0] ), .Q1(\addrword11[1] ), .Q2(
2418
        \addrword11[2] ), .Q3(\addrword11[3] ), .D0(\datainlch[0] ), .D1(
2419
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2420
        latchFifoWord[11]) );
2421
    LATP4 \infifou1/u1/u012  ( .Q0(\addrword5[8] ), .Q1(\addrword5[9] ), .Q2(
2422
        \addrword5[10] ), .Q3(\addrword5[11] ), .D0(\datainlch[8] ), .D1(
2423
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2424
        latchFifoWord[5]) );
2425
    LATP4 \infifou0/u03  ( .Q0(\addrword13[0] ), .Q1(\addrword13[1] ), .Q2(
2426
        \addrword13[2] ), .Q3(\addrword13[3] ), .D0(\datainlch[0] ), .D1(
2427
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2428
        latchFifoWord[13]) );
2429
    LATP4 \infifou1/u1/u011  ( .Q0(\addrword4[8] ), .Q1(\addrword4[9] ), .Q2(
2430
        \addrword4[10] ), .Q3(\addrword4[11] ), .D0(\datainlch[8] ), .D1(
2431
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2432
        latchFifoWord[4]) );
2433
    LATP4 \infifou0/u04  ( .Q0(\addrword14[0] ), .Q1(\addrword14[1] ), .Q2(
2434
        \addrword14[2] ), .Q3(\addrword14[3] ), .D0(\datainlch[0] ), .D1(
2435
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2436
        latchFifoWord[14]) );
2437
    LATP4 \infifou1/u1/u010  ( .Q0(\addrword3[8] ), .Q1(\addrword3[9] ), .Q2(
2438
        \addrword3[10] ), .Q3(\addrword3[11] ), .D0(\datainlch[8] ), .D1(
2439
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2440
        latchFifoWord[3]) );
2441
    LATP4 \infifou0/u05  ( .Q0(\addrword15[0] ), .Q1(\addrword15[1] ), .Q2(
2442
        \addrword15[2] ), .Q3(\addrword15[3] ), .D0(\datainlch[0] ), .D1(
2443
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2444
        latchFifoWord[15]) );
2445
    LATP4 \infifou0/u06  ( .Q0(\addrword0[0] ), .Q1(\addrword0[1] ), .Q2(
2446
        \addrword0[2] ), .Q3(\addrword0[3] ), .D0(\datainlch[0] ), .D1(
2447
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2448
        latchFifoWord[0]) );
2449
    LATP4 \infifou0/u07  ( .Q0(\addrword1[0] ), .Q1(\addrword1[1] ), .Q2(
2450
        \addrword1[2] ), .Q3(\addrword1[3] ), .D0(\datainlch[0] ), .D1(
2451
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2452
        latchFifoWord[1]) );
2453
    LATP4 \infifou0/u08  ( .Q0(\addrword2[0] ), .Q1(\addrword2[1] ), .Q2(
2454
        \addrword2[2] ), .Q3(\addrword2[3] ), .D0(\datainlch[0] ), .D1(
2455
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2456
        latchFifoWord[2]) );
2457
    LATP4 \infifou0/u09  ( .Q0(\addrword3[0] ), .Q1(\addrword3[1] ), .Q2(
2458
        \addrword3[2] ), .Q3(\addrword3[3] ), .D0(\datainlch[0] ), .D1(
2459
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2460
        latchFifoWord[3]) );
2461
    LATP4 \infifou1/u0/u0  ( .Q0(\addrword10[4] ), .Q1(\addrword10[5] ), .Q2(
2462
        \addrword10[6] ), .Q3(\addrword10[7] ), .D0(\datainlch[4] ), .D1(
2463
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2464
        latchFifoWord[10]) );
2465
    MX81 \infifou1/u1/u1/u0/u0/u0  ( .X(\addrUpper[20] ), .A(\addrword8[20] ), 
2466
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[20] ), .SLB(
2467
        \readFifoWordBuffedU[1] ), .C(\addrword10[20] ), .SLC(
2468
        \readFifoWordBuffedU[2] ), .D(\addrword11[20] ), .SLD(
2469
        \readFifoWordBuffedU[3] ), .E(\addrword12[20] ), .SLE(
2470
        \readFifoWordBuffedU[4] ), .F(\addrword13[20] ), .SLF(
2471
        \readFifoWordBuffedU[5] ), .G(\addrword14[20] ), .SLG(
2472
        \readFifoWordBuffedU[6] ), .H(\addrword15[20] ), .SLH(
2473
        \readFifoWordBuffedU[7] ) );
2474
    BUF8 \infifob1/b2/b1/b2/b2/b1  ( .X(fifoAddr[11]), .A(\dataout[11] ) );
2475
    MX81 \infifou1/u1/u0/u0/u1/u01  ( .X(\addrLower[17] ), .A(\addrword0[17] ), 
2476
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[17] ), .SLB(
2477
        \readFifoWordBuffedL[1] ), .C(\addrword2[17] ), .SLC(
2478
        \readFifoWordBuffedL[2] ), .D(\addrword3[17] ), .SLD(
2479
        \readFifoWordBuffedL[3] ), .E(\addrword4[17] ), .SLE(
2480
        \readFifoWordBuffedL[4] ), .F(\addrword5[17] ), .SLF(
2481
        \readFifoWordBuffedL[5] ), .G(\addrword6[17] ), .SLG(
2482
        \readFifoWordBuffedL[6] ), .H(\addrword7[17] ), .SLH(
2483
        \readFifoWordBuffedL[7] ) );
2484
    MX81 \infifou1/u1/u0/u0/u0/u01  ( .X(\addrLower[16] ), .A(\addrword0[16] ), 
2485
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[16] ), .SLB(
2486
        \readFifoWordBuffedL[1] ), .C(\addrword2[16] ), .SLC(
2487
        \readFifoWordBuffedL[2] ), .D(\addrword3[16] ), .SLD(
2488
        \readFifoWordBuffedL[3] ), .E(\addrword4[16] ), .SLE(
2489
        \readFifoWordBuffedL[4] ), .F(\addrword5[16] ), .SLF(
2490
        \readFifoWordBuffedL[5] ), .G(\addrword6[16] ), .SLG(
2491
        \readFifoWordBuffedL[6] ), .H(\addrword7[16] ), .SLH(
2492
        \readFifoWordBuffedL[7] ) );
2493
    BUF8 \infifob2/b2/b2/b2/b1  ( .X(\datainlch[23] ), .A(\datainNotBuf[23] )
2494
         );
2495
    MX81 \infifou1/u0/u1/u0/u1/u0  ( .X(\addrUpper[13] ), .A(\addrword8[13] ), 
2496
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[13] ), .SLB(
2497
        \readFifoWordBuffedU[1] ), .C(\addrword10[13] ), .SLC(
2498
        \readFifoWordBuffedU[2] ), .D(\addrword11[13] ), .SLD(
2499
        \readFifoWordBuffedU[3] ), .E(\addrword12[13] ), .SLE(
2500
        \readFifoWordBuffedU[4] ), .F(\addrword13[13] ), .SLF(
2501
        \readFifoWordBuffedU[5] ), .G(\addrword14[13] ), .SLG(
2502
        \readFifoWordBuffedU[6] ), .H(\addrword15[13] ), .SLH(
2503
        \readFifoWordBuffedU[7] ) );
2504
    assign Logic1 = 1'b1;
2505
    MX81 \infifou1/u0/u0/u1/u1/u0  ( .X(\addrUpper[11] ), .A(\addrword8[11] ), 
2506
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[11] ), .SLB(
2507
        \readFifoWordBuffedU[1] ), .C(\addrword10[11] ), .SLC(
2508
        \readFifoWordBuffedU[2] ), .D(\addrword11[11] ), .SLD(
2509
        \readFifoWordBuffedU[3] ), .E(\addrword12[11] ), .SLE(
2510
        \readFifoWordBuffedU[4] ), .F(\addrword13[11] ), .SLF(
2511
        \readFifoWordBuffedU[5] ), .G(\addrword14[11] ), .SLG(
2512
        \readFifoWordBuffedU[6] ), .H(\addrword15[11] ), .SLH(
2513
        \readFifoWordBuffedU[7] ) );
2514
    MX81 \infifou0/u0/u1/u0/u0  ( .X(\addrUpper[2] ), .A(\addrword8[2] ), 
2515
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[2] ), .SLB(
2516
        \readFifoWordBuffedU[1] ), .C(\addrword10[2] ), .SLC(
2517
        \readFifoWordBuffedU[2] ), .D(\addrword11[2] ), .SLD(
2518
        \readFifoWordBuffedU[3] ), .E(\addrword12[2] ), .SLE(
2519
        \readFifoWordBuffedU[4] ), .F(\addrword13[2] ), .SLF(
2520
        \readFifoWordBuffedU[5] ), .G(\addrword14[2] ), .SLG(
2521
        \readFifoWordBuffedU[6] ), .H(\addrword15[2] ), .SLH(
2522
        \readFifoWordBuffedU[7] ) );
2523
    LATP4 \infifou1/u1/u09  ( .Q0(\addrword2[8] ), .Q1(\addrword2[9] ), .Q2(
2524
        \addrword2[10] ), .Q3(\addrword2[11] ), .D0(\datainlch[8] ), .D1(
2525
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2526
        latchFifoWord[2]) );
2527
    LATP4 \infifou1/u0/u09  ( .Q0(\addrword2[4] ), .Q1(\addrword2[5] ), .Q2(
2528
        \addrword2[6] ), .Q3(\addrword2[7] ), .D0(\datainlch[4] ), .D1(
2529
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2530
        latchFifoWord[2]) );
2531
    LATP4 \infifou1/u1/u08  ( .Q0(\addrword1[8] ), .Q1(\addrword1[9] ), .Q2(
2532
        \addrword1[10] ), .Q3(\addrword1[11] ), .D0(\datainlch[8] ), .D1(
2533
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2534
        latchFifoWord[1]) );
2535
    LATP4 \infifou1/u0/u08  ( .Q0(\addrword1[4] ), .Q1(\addrword1[5] ), .Q2(
2536
        \addrword1[6] ), .Q3(\addrword1[7] ), .D0(\datainlch[4] ), .D1(
2537
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2538
        latchFifoWord[1]) );
2539
    LATP4 \infifou1/u1/u07  ( .Q0(\addrword0[8] ), .Q1(\addrword0[9] ), .Q2(
2540
        \addrword0[10] ), .Q3(\addrword0[11] ), .D0(\datainlch[8] ), .D1(
2541
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2542
        latchFifoWord[0]) );
2543
    MX81 \infifou0/u1/u0/u0/u0  ( .X(\addrUpper[4] ), .A(\addrword8[4] ), 
2544
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[4] ), .SLB(
2545
        \readFifoWordBuffedU[1] ), .C(\addrword10[4] ), .SLC(
2546
        \readFifoWordBuffedU[2] ), .D(\addrword11[4] ), .SLD(
2547
        \readFifoWordBuffedU[3] ), .E(\addrword12[4] ), .SLE(
2548
        \readFifoWordBuffedU[4] ), .F(\addrword13[4] ), .SLF(
2549
        \readFifoWordBuffedU[5] ), .G(\addrword14[4] ), .SLG(
2550
        \readFifoWordBuffedU[6] ), .H(\addrword15[4] ), .SLH(
2551
        \readFifoWordBuffedU[7] ) );
2552
    LATP4 \infifou1/u0/u07  ( .Q0(\addrword0[4] ), .Q1(\addrword0[5] ), .Q2(
2553
        \addrword0[6] ), .Q3(\addrword0[7] ), .D0(\datainlch[4] ), .D1(
2554
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2555
        latchFifoWord[0]) );
2556
    MUX41H \infifou1/u1/u06  ( .X0(fifoAddr[20]), .X1(\dataout[21] ), .X2(
2557
        fifoAddr[22]), .X3(fifoBE[0]), .A0(\addrLower[20] ), .B0(
2558
        \addrUpper[20] ), .A1(\addrLower[21] ), .B1(\addrUpper[21] ), .A2(
2559
        \addrLower[22] ), .B2(\addrUpper[22] ), .A3(\addrLower[23] ), .B3(
2560
        \addrUpper[23] ), .SL(\readFifoWordBuffedL[8] ) );
2561
    MX81 \infifou1/u1/u1/u1/u0/u0  ( .X(\addrUpper[22] ), .A(\addrword8[22] ), 
2562
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[22] ), .SLB(
2563
        \readFifoWordBuffedU[1] ), .C(\addrword10[22] ), .SLC(
2564
        \readFifoWordBuffedU[2] ), .D(\addrword11[22] ), .SLD(
2565
        \readFifoWordBuffedU[3] ), .E(\addrword12[22] ), .SLE(
2566
        \readFifoWordBuffedU[4] ), .F(\addrword13[22] ), .SLF(
2567
        \readFifoWordBuffedU[5] ), .G(\addrword14[22] ), .SLG(
2568
        \readFifoWordBuffedU[6] ), .H(\addrword15[22] ), .SLH(
2569
        \readFifoWordBuffedU[7] ) );
2570
    MUX41H \infifou1/u0/u06  ( .X0(fifoAddr[16]), .X1(\dataout[17] ), .X2(
2571
        fifoAddr[18]), .X3(\dataout[19] ), .A0(\addrLower[16] ), .B0(
2572
        \addrUpper[16] ), .A1(\addrLower[17] ), .B1(\addrUpper[17] ), .A2(
2573
        \addrLower[18] ), .B2(\addrUpper[18] ), .A3(\addrLower[19] ), .B3(
2574
        \addrUpper[19] ), .SL(\readFifoWordBuffedL[8] ) );
2575
    LATP4 \infifou1/u1/u05  ( .Q0(\addrword15[8] ), .Q1(\addrword15[9] ), .Q2(
2576
        \addrword15[10] ), .Q3(\addrword15[11] ), .D0(\datainlch[8] ), .D1(
2577
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2578
        latchFifoWord[15]) );
2579
    LATP4 \infifou1/u1/u04  ( .Q0(\addrword14[8] ), .Q1(\addrword14[9] ), .Q2(
2580
        \addrword14[10] ), .Q3(\addrword14[11] ), .D0(\datainlch[8] ), .D1(
2581
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2582
        latchFifoWord[14]) );
2583
    LATP4 \infifou1/u0/u05  ( .Q0(\addrword15[4] ), .Q1(\addrword15[5] ), .Q2(
2584
        \addrword15[6] ), .Q3(\addrword15[7] ), .D0(\datainlch[4] ), .D1(
2585
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2586
        latchFifoWord[15]) );
2587
    BUF8 \infifob1/b1/b2/b1/b1/b11  ( .X(\datainlch[4] ), .A(\datainNotBuf[4] 
2588
        ) );
2589
    LATP4 \infifou1/u1/u03  ( .Q0(\addrword13[8] ), .Q1(\addrword13[9] ), .Q2(
2590
        \addrword13[10] ), .Q3(\addrword13[11] ), .D0(\datainlch[8] ), .D1(
2591
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2592
        latchFifoWord[13]) );
2593
    LATP4 \infifou1/u0/u04  ( .Q0(\addrword14[4] ), .Q1(\addrword14[5] ), .Q2(
2594
        \addrword14[6] ), .Q3(\addrword14[7] ), .D0(\datainlch[4] ), .D1(
2595
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2596
        latchFifoWord[14]) );
2597
    BUF8 \infifob1/b1/b2/b1/b2/b11  ( .X(\datainlch[5] ), .A(\datainNotBuf[5] 
2598
        ) );
2599
    LATP4 \infifou1/u1/u02  ( .Q0(\addrword12[8] ), .Q1(\addrword12[9] ), .Q2(
2600
        \addrword12[10] ), .Q3(\addrword12[11] ), .D0(\datainlch[8] ), .D1(
2601
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2602
        latchFifoWord[12]) );
2603
    LATP4 \infifou1/u0/u03  ( .Q0(\addrword13[4] ), .Q1(\addrword13[5] ), .Q2(
2604
        \addrword13[6] ), .Q3(\addrword13[7] ), .D0(\datainlch[4] ), .D1(
2605
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2606
        latchFifoWord[13]) );
2607
    LATP4 \infifou1/u1/u01  ( .Q0(\addrword11[8] ), .Q1(\addrword11[9] ), .Q2(
2608
        \addrword11[10] ), .Q3(\addrword11[11] ), .D0(\datainlch[8] ), .D1(
2609
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2610
        latchFifoWord[11]) );
2611
    LATP4 \infifou1/u0/u02  ( .Q0(\addrword12[4] ), .Q1(\addrword12[5] ), .Q2(
2612
        \addrword12[6] ), .Q3(\addrword12[7] ), .D0(\datainlch[4] ), .D1(
2613
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2614
        latchFifoWord[12]) );
2615
    LATP4 \infifou1/u0/u01  ( .Q0(\addrword11[4] ), .Q1(\addrword11[5] ), .Q2(
2616
        \addrword11[6] ), .Q3(\addrword11[7] ), .D0(\datainlch[4] ), .D1(
2617
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
2618
        latchFifoWord[11]) );
2619
    DFF4 \infifod0/d1/d0/d0  ( .Q0(\datainNotBuf[11] ), .Q1(\datainNotBuf[10] 
2620
        ), .Q2(\datainNotBuf[9] ), .Q3(\datainNotBuf[8] ), .SQ3(n1054), .D0(
2621
        Addr[13]), .D1(Addr[12]), .D2(Addr[11]), .D3(Addr[10]), .CK(aaaclk), 
2622
        .SD0(n1050), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2623
    BUF8 \infifob2/b2/b1/b2/b1  ( .X(\datainlch[21] ), .A(\datainNotBuf[21] )
2624
         );
2625
    DFF4 \infifod1/d0/d0  ( .Q0(\datainNotBuf[19] ), .Q1(\datainNotBuf[18] ), 
2626
        .Q2(\datainNotBuf[17] ), .Q3(\datainNotBuf[16] ), .SQ3(n1025), .D0(
2627
        Addr[21]), .D1(Addr[20]), .D2(Addr[19]), .D3(Addr[18]), .CK(aaaclk), 
2628
        .SD0(n1020), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2629
    BUF8 \infifob1/b1/b1/b1/b2/b11  ( .X(\datainlch[1] ), .A(\datainNotBuf[1] 
2630
        ) );
2631
    BUF8 \infifob1/b1/b1/b1/b1/b11  ( .X(\datainlch[0] ), .A(\datainNotBuf[0] 
2632
        ) );
2633
    DFF4 \infifod1/d1/d0  ( .Q0(\datainNotBuf[23] ), .Q1(\datainNotBuf[22] ), 
2634
        .Q2(\datainNotBuf[21] ), .Q3(\datainNotBuf[20] ), .SQ3(n1034), .D0(BE
2635
        [0]), .D1(Addr[24]), .D2(Addr[23]), .D3(Addr[22]), .CK(aaaclk), .SD0(
2636
        n1025), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2637
    LATP4 \infifou2/u1/u1/u010  ( .Q0(\addrword3[24] ), .Q1(\addrword3[25] ), 
2638
        .Q2(\addrword3[26] ), .Q3(\addrword3[27] ), .D0(\datainlch[24] ), .D1(
2639
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
2640
        latchFifoWord[3]) );
2641
    DFF4 \infifod0/d0/d0/d0  ( .Q0(\datainNotBuf[3] ), .Q1(\datainNotBuf[2] ), 
2642
        .Q2(\datainNotBuf[1] ), .Q3(\datainNotBuf[0] ), .SQ3(n1033), .D0(Addr
2643
        [5]), .D1(Addr[4]), .D2(Addr[3]), .D3(Addr[2]), .CK(aaaclk), .SD0(sdi), 
2644
        .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2645
    MX81 \infifou0/u0/u1/u1/u01  ( .X(\addrLower[3] ), .A(\addrword0[3] ), 
2646
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[3] ), .SLB(
2647
        \readFifoWordBuffedL[1] ), .C(\addrword2[3] ), .SLC(
2648
        \readFifoWordBuffedL[2] ), .D(\addrword3[3] ), .SLD(
2649
        \readFifoWordBuffedL[3] ), .E(\addrword4[3] ), .SLE(
2650
        \readFifoWordBuffedL[4] ), .F(\addrword5[3] ), .SLF(
2651
        \readFifoWordBuffedL[5] ), .G(\addrword6[3] ), .SLG(
2652
        \readFifoWordBuffedL[6] ), .H(\addrword7[3] ), .SLH(
2653
        \readFifoWordBuffedL[7] ) );
2654
    MX81 \infifou1/u1/u1/u0/u0/u01  ( .X(\addrLower[20] ), .A(\addrword0[20] ), 
2655
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[20] ), .SLB(
2656
        \readFifoWordBuffedL[1] ), .C(\addrword2[20] ), .SLC(
2657
        \readFifoWordBuffedL[2] ), .D(\addrword3[20] ), .SLD(
2658
        \readFifoWordBuffedL[3] ), .E(\addrword4[20] ), .SLE(
2659
        \readFifoWordBuffedL[4] ), .F(\addrword5[20] ), .SLF(
2660
        \readFifoWordBuffedL[5] ), .G(\addrword6[20] ), .SLG(
2661
        \readFifoWordBuffedL[6] ), .H(\addrword7[20] ), .SLH(
2662
        \readFifoWordBuffedL[7] ) );
2663
    MX81 \infifou1/u1/u1/u0/u1/u01  ( .X(\addrLower[21] ), .A(\addrword0[21] ), 
2664
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[21] ), .SLB(
2665
        \readFifoWordBuffedL[1] ), .C(\addrword2[21] ), .SLC(
2666
        \readFifoWordBuffedL[2] ), .D(\addrword3[21] ), .SLD(
2667
        \readFifoWordBuffedL[3] ), .E(\addrword4[21] ), .SLE(
2668
        \readFifoWordBuffedL[4] ), .F(\addrword5[21] ), .SLF(
2669
        \readFifoWordBuffedL[5] ), .G(\addrword6[21] ), .SLG(
2670
        \readFifoWordBuffedL[6] ), .H(\addrword7[21] ), .SLH(
2671
        \readFifoWordBuffedL[7] ) );
2672
    BUF8 \infifob1/b1/b1/b1/b2/b1  ( .X(fifoAddr[1]), .A(\dataout[1] ) );
2673
    BUF8 \infifob2/b2/b2/b1/b1  ( .X(\datainlch[22] ), .A(\datainNotBuf[22] )
2674
         );
2675
    BUF8 \infifob1/b1/b2/b1/b2/b1  ( .X(fifoAddr[5]), .A(\dataout[5] ) );
2676
    BUF8 \infifob1/b2/b2/b1/b1/b1  ( .A(fifoAddr[12]) );
2677
    MX81 \infifou1/u1/u0/u1/u1/u0  ( .X(\addrUpper[19] ), .A(\addrword8[19] ), 
2678
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[19] ), .SLB(
2679
        \readFifoWordBuffedU[1] ), .C(\addrword10[19] ), .SLC(
2680
        \readFifoWordBuffedU[2] ), .D(\addrword11[19] ), .SLD(
2681
        \readFifoWordBuffedU[3] ), .E(\addrword12[19] ), .SLE(
2682
        \readFifoWordBuffedU[4] ), .F(\addrword13[19] ), .SLF(
2683
        \readFifoWordBuffedU[5] ), .G(\addrword14[19] ), .SLG(
2684
        \readFifoWordBuffedU[6] ), .H(\addrword15[19] ), .SLH(
2685
        \readFifoWordBuffedU[7] ) );
2686
    MX81 \infifou1/u1/u1/u0/u1/u0  ( .X(\addrUpper[21] ), .A(\addrword8[21] ), 
2687
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[21] ), .SLB(
2688
        \readFifoWordBuffedU[1] ), .C(\addrword10[21] ), .SLC(
2689
        \readFifoWordBuffedU[2] ), .D(\addrword11[21] ), .SLD(
2690
        \readFifoWordBuffedU[3] ), .E(\addrword12[21] ), .SLE(
2691
        \readFifoWordBuffedU[4] ), .F(\addrword13[21] ), .SLF(
2692
        \readFifoWordBuffedU[5] ), .G(\addrword14[21] ), .SLG(
2693
        \readFifoWordBuffedU[6] ), .H(\addrword15[21] ), .SLH(
2694
        \readFifoWordBuffedU[7] ) );
2695
    MX81 \infifou1/u0/u0/u0/u0/u01  ( .X(\addrLower[8] ), .A(\addrword0[8] ), 
2696
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[8] ), .SLB(
2697
        \readFifoWordBuffedL[1] ), .C(\addrword2[8] ), .SLC(
2698
        \readFifoWordBuffedL[2] ), .D(\addrword3[8] ), .SLD(
2699
        \readFifoWordBuffedL[3] ), .E(\addrword4[8] ), .SLE(
2700
        \readFifoWordBuffedL[4] ), .F(\addrword5[8] ), .SLF(
2701
        \readFifoWordBuffedL[5] ), .G(\addrword6[8] ), .SLG(
2702
        \readFifoWordBuffedL[6] ), .H(\addrword7[8] ), .SLH(
2703
        \readFifoWordBuffedL[7] ) );
2704
    MX81 \infifou1/u0/u0/u0/u1/u01  ( .X(\addrLower[9] ), .A(\addrword0[9] ), 
2705
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[9] ), .SLB(
2706
        \readFifoWordBuffedL[1] ), .C(\addrword2[9] ), .SLC(
2707
        \readFifoWordBuffedL[2] ), .D(\addrword3[9] ), .SLD(
2708
        \readFifoWordBuffedL[3] ), .E(\addrword4[9] ), .SLE(
2709
        \readFifoWordBuffedL[4] ), .F(\addrword5[9] ), .SLF(
2710
        \readFifoWordBuffedL[5] ), .G(\addrword6[9] ), .SLG(
2711
        \readFifoWordBuffedL[6] ), .H(\addrword7[9] ), .SLH(
2712
        \readFifoWordBuffedL[7] ) );
2713
    BUF8 \infifob1/b1/b1/b2/b2/b1  ( .X(fifoAddr[3]), .A(\dataout[3] ) );
2714
    LATP4 \infifou1/u1/u0  ( .Q0(\addrword10[8] ), .Q1(\addrword10[9] ), .Q2(
2715
        \addrword10[10] ), .Q3(\addrword10[11] ), .D0(\datainlch[8] ), .D1(
2716
        \datainlch[9] ), .D2(\datainlch[10] ), .D3(\datainlch[11] ), .GB(
2717
        latchFifoWord[10]) );
2718
    MX81 \infifou0/u0/u0/u0/u01  ( .X(\addrLower[0] ), .A(\addrword0[0] ), 
2719
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[0] ), .SLB(
2720
        \readFifoWordBuffedL[1] ), .C(\addrword2[0] ), .SLC(
2721
        \readFifoWordBuffedL[2] ), .D(\addrword3[0] ), .SLD(
2722
        \readFifoWordBuffedL[3] ), .E(\addrword4[0] ), .SLE(
2723
        \readFifoWordBuffedL[4] ), .F(\addrword5[0] ), .SLF(
2724
        \readFifoWordBuffedL[5] ), .G(\addrword6[0] ), .SLG(
2725
        \readFifoWordBuffedL[6] ), .H(\addrword7[0] ), .SLH(
2726
        \readFifoWordBuffedL[7] ) );
2727
    MX81 \infifou0/u0/u0/u1/u01  ( .X(\addrLower[1] ), .A(\addrword0[1] ), 
2728
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[1] ), .SLB(
2729
        \readFifoWordBuffedL[1] ), .C(\addrword2[1] ), .SLC(
2730
        \readFifoWordBuffedL[2] ), .D(\addrword3[1] ), .SLD(
2731
        \readFifoWordBuffedL[3] ), .E(\addrword4[1] ), .SLE(
2732
        \readFifoWordBuffedL[4] ), .F(\addrword5[1] ), .SLF(
2733
        \readFifoWordBuffedL[5] ), .G(\addrword6[1] ), .SLG(
2734
        \readFifoWordBuffedL[6] ), .H(\addrword7[1] ), .SLH(
2735
        \readFifoWordBuffedL[7] ) );
2736
    BUF8 \infifob1/b2/b2/b2/b1/b1  ( .A(fifoAddr[14]) );
2737
    BUF8 \infifob2/b1/b1/b2/b1  ( .X(\datainlch[17] ), .A(\datainNotBuf[17] )
2738
         );
2739
    MUX41H \infifou0/u0/u0/u0  ( .X0(fifoAddr[0]), .X1(\dataout[1] ), .X2(
2740
        fifoAddr[2]), .X3(\dataout[3] ), .A0(\addrLower[0] ), .B0(
2741
        \addrUpper[0] ), .A1(\addrLower[1] ), .B1(\addrUpper[1] ), .A2(
2742
        \addrLower[2] ), .B2(\addrUpper[2] ), .A3(\addrLower[3] ), .B3(
2743
        \addrUpper[3] ), .SL(\readFifoWordBuffedL[8] ) );
2744
    MX81 \infifou0/u0/u0/u0/u0  ( .X(\addrUpper[0] ), .A(\addrword8[0] ), 
2745
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[0] ), .SLB(
2746
        \readFifoWordBuffedU[1] ), .C(\addrword10[0] ), .SLC(
2747
        \readFifoWordBuffedU[2] ), .D(\addrword11[0] ), .SLD(
2748
        \readFifoWordBuffedU[3] ), .E(\addrword12[0] ), .SLE(
2749
        \readFifoWordBuffedU[4] ), .F(\addrword13[0] ), .SLF(
2750
        \readFifoWordBuffedU[5] ), .G(\addrword14[0] ), .SLG(
2751
        \readFifoWordBuffedU[6] ), .H(\addrword15[0] ), .SLH(
2752
        \readFifoWordBuffedU[7] ) );
2753
    MX81 \infifou1/u0/u0/u1/u0/u01  ( .X(\addrLower[10] ), .A(\addrword0[10] ), 
2754
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[10] ), .SLB(
2755
        \readFifoWordBuffedL[1] ), .C(\addrword2[10] ), .SLC(
2756
        \readFifoWordBuffedL[2] ), .D(\addrword3[10] ), .SLD(
2757
        \readFifoWordBuffedL[3] ), .E(\addrword4[10] ), .SLE(
2758
        \readFifoWordBuffedL[4] ), .F(\addrword5[10] ), .SLF(
2759
        \readFifoWordBuffedL[5] ), .G(\addrword6[10] ), .SLG(
2760
        \readFifoWordBuffedL[6] ), .H(\addrword7[10] ), .SLH(
2761
        \readFifoWordBuffedL[7] ) );
2762
    LATP4 \infifou2/u0/u1/u010  ( .Q0(\addrword3[16] ), .Q1(\addrword3[17] ), 
2763
        .Q2(\addrword3[18] ), .Q3(\addrword3[19] ), .D0(\datainlch[16] ), .D1(
2764
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2765
        latchFifoWord[3]) );
2766
    LATP4 \infifou2/u0/u1/u011  ( .Q0(\addrword4[16] ), .Q1(\addrword4[17] ), 
2767
        .Q2(\addrword4[18] ), .Q3(\addrword4[19] ), .D0(\datainlch[16] ), .D1(
2768
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2769
        latchFifoWord[4]) );
2770
    LATP4 \infifou2/u0/u1/u012  ( .Q0(\addrword5[16] ), .Q1(\addrword5[17] ), 
2771
        .Q2(\addrword5[18] ), .Q3(\addrword5[19] ), .D0(\datainlch[16] ), .D1(
2772
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2773
        latchFifoWord[5]) );
2774
    LATP4 \infifou2/u0/u1/u013  ( .Q0(\addrword6[16] ), .Q1(\addrword6[17] ), 
2775
        .Q2(\addrword6[18] ), .Q3(\addrword6[19] ), .D0(\datainlch[16] ), .D1(
2776
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2777
        latchFifoWord[6]) );
2778
    LATP4 \infifou2/u0/u1/u014  ( .Q0(\addrword7[16] ), .Q1(\addrword7[17] ), 
2779
        .Q2(\addrword7[18] ), .Q3(\addrword7[19] ), .D0(\datainlch[16] ), .D1(
2780
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2781
        latchFifoWord[7]) );
2782
    MX81 \infifou1/u0/u1/u1/u1/u0  ( .X(\addrUpper[15] ), .A(\addrword8[15] ), 
2783
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[15] ), .SLB(
2784
        \readFifoWordBuffedU[1] ), .C(\addrword10[15] ), .SLC(
2785
        \readFifoWordBuffedU[2] ), .D(\addrword11[15] ), .SLD(
2786
        \readFifoWordBuffedU[3] ), .E(\addrword12[15] ), .SLE(
2787
        \readFifoWordBuffedU[4] ), .F(\addrword13[15] ), .SLF(
2788
        \readFifoWordBuffedU[5] ), .G(\addrword14[15] ), .SLG(
2789
        \readFifoWordBuffedU[6] ), .H(\addrword15[15] ), .SLH(
2790
        \readFifoWordBuffedU[7] ) );
2791
    LATP4 \infifou2/u0/u1/u015  ( .Q0(\addrword8[16] ), .Q1(\addrword8[17] ), 
2792
        .Q2(\addrword8[18] ), .Q3(\addrword8[19] ), .D0(\datainlch[16] ), .D1(
2793
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2794
        latchFifoWord[8]) );
2795
    LATP4 \infifou2/u0/u1/u016  ( .Q0(\addrword9[16] ), .Q1(\addrword9[17] ), 
2796
        .Q2(\addrword9[18] ), .Q3(\addrword9[19] ), .D0(\datainlch[16] ), .D1(
2797
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2798
        latchFifoWord[9]) );
2799
    BUF8 \infifob3/b2/b1/b1  ( .X(\datainlch[26] ), .A(\datainNotBuf[26] ) );
2800
    BUF8 \infifob2/b1/b2/b2/b1  ( .X(\datainlch[19] ), .A(\datainNotBuf[19] )
2801
         );
2802
    BUF8 \infifob1/b2/b1/b1/b2/b1  ( .X(fifoAddr[9]), .A(\dataout[9] ) );
2803
    MX81 \infifou1/u1/u1/u1/u0/u01  ( .X(\addrLower[22] ), .A(\addrword0[22] ), 
2804
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[22] ), .SLB(
2805
        \readFifoWordBuffedL[1] ), .C(\addrword2[22] ), .SLC(
2806
        \readFifoWordBuffedL[2] ), .D(\addrword3[22] ), .SLD(
2807
        \readFifoWordBuffedL[3] ), .E(\addrword4[22] ), .SLE(
2808
        \readFifoWordBuffedL[4] ), .F(\addrword5[22] ), .SLF(
2809
        \readFifoWordBuffedL[5] ), .G(\addrword6[22] ), .SLG(
2810
        \readFifoWordBuffedL[6] ), .H(\addrword7[22] ), .SLH(
2811
        \readFifoWordBuffedL[7] ) );
2812
    LATP4 \infifou0/u0  ( .Q0(\addrword10[0] ), .Q1(\addrword10[1] ), .Q2(
2813
        \addrword10[2] ), .Q3(\addrword10[3] ), .D0(\datainlch[0] ), .D1(
2814
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
2815
        latchFifoWord[10]) );
2816
    BUF8 \infifob3/b2/b1  ( .A(fifoAddr[22]) );
2817
    BUF8 \infifob2/b2/b1/b1  ( .A(fifoAddr[18]) );
2818
    BUF8 \infifob2/b1/b2/b1  ( .X(fifoAddr[17]), .A(\dataout[17] ) );
2819
    BUF8 \infifob3/b1/b1/b1  ( .A(fifoAddr[20]) );
2820
    BUF8 \infifob1/b2/b2/b2/b1/b11  ( .X(\datainlch[14] ), .A(
2821
        \datainNotBuf[14] ) );
2822
    BUF8 \infifob1/b2/b2/b2/b2/b11  ( .X(\datainlch[15] ), .A(
2823
        \datainNotBuf[15] ) );
2824
    BUF8 \infifob1/b1/b2/b2/b2/b11  ( .X(\datainlch[7] ), .A(\datainNotBuf[7] 
2825
        ) );
2826
    BUF8 \infifob1/b1/b2/b2/b1/b11  ( .X(\datainlch[6] ), .A(\datainNotBuf[6] 
2827
        ) );
2828
    MUX41H \infifou2/u0  ( .X0(fifoBE[1]), .X1(fifoBE[2]), .X2(fifoBE[3]), 
2829
        .X3(\dataout[27] ), .A0(\addrLower[24] ), .B0(\addrUpper[24] ), .A1(
2830
        \addrLower[25] ), .B1(\addrUpper[25] ), .A2(\addrLower[26] ), .B2(
2831
        \addrUpper[26] ), .A3(\addrLower[27] ), .B3(\addrUpper[27] ), .SL(
2832
        \readFifoWordBuffedL[8] ) );
2833
    BUF8 \infifob1/b2/b1/b2/b1/b1  ( .A(fifoAddr[10]) );
2834
    BUF8 \infifob1/b1/b1/b2/b1/b11  ( .X(\datainlch[2] ), .A(\datainNotBuf[2] 
2835
        ) );
2836
    BUF8 \infifob2/b2/b2/b1  ( .X(fifoAddr[19]), .A(\dataout[19] ) );
2837
    BUF8 \infifob1/b1/b1/b2/b2/b11  ( .X(\datainlch[3] ), .A(\datainNotBuf[3] 
2838
        ) );
2839
    INV8 readWordBufferL0 ( .X(\readFifoWordBuffedL[0] ), .A(readFifoWord[0])
2840
         );
2841
    BUF8 \infifob1/b2/b2/b1/b1/b11  ( .X(\datainlch[12] ), .A(
2842
        \datainNotBuf[12] ) );
2843
    INV8 readWordBufferL1 ( .X(\readFifoWordBuffedL[1] ), .A(readFifoWord[1])
2844
         );
2845
    INV8 readWordBufferL2 ( .X(\readFifoWordBuffedL[2] ), .A(readFifoWord[2])
2846
         );
2847
    BUF8 \infifob1/b2/b2/b1/b2/b11  ( .X(\datainlch[13] ), .A(
2848
        \datainNotBuf[13] ) );
2849
    INV8 readWordBufferL3 ( .X(\readFifoWordBuffedL[3] ), .A(readFifoWord[3])
2850
         );
2851
    INV8 readWordBufferL4 ( .X(\readFifoWordBuffedL[4] ), .A(readFifoWord[4])
2852
         );
2853
    INV8 readWordBufferL5 ( .X(\readFifoWordBuffedL[5] ), .A(readFifoWord[5])
2854
         );
2855
    INV8 readWordBufferL6 ( .X(\readFifoWordBuffedL[6] ), .A(readFifoWord[6])
2856
         );
2857
    MX81 \infifou1/u1/u1/u1/u1/u0  ( .X(\addrUpper[23] ), .A(\addrword8[23] ), 
2858
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[23] ), .SLB(
2859
        \readFifoWordBuffedU[1] ), .C(\addrword10[23] ), .SLC(
2860
        \readFifoWordBuffedU[2] ), .D(\addrword11[23] ), .SLD(
2861
        \readFifoWordBuffedU[3] ), .E(\addrword12[23] ), .SLE(
2862
        \readFifoWordBuffedU[4] ), .F(\addrword13[23] ), .SLF(
2863
        \readFifoWordBuffedU[5] ), .G(\addrword14[23] ), .SLG(
2864
        \readFifoWordBuffedU[6] ), .H(\addrword15[23] ), .SLH(
2865
        \readFifoWordBuffedU[7] ) );
2866
    INV8 readWordBufferL7 ( .X(\readFifoWordBuffedL[7] ), .A(readFifoWord[7])
2867
         );
2868
    INV8 readWordBufferL8 ( .X(\readFifoWordBuffedL[8] ), .A(readFifoWord[8])
2869
         );
2870
    BUF8 \infifob1/b2/b1/b1/b1/b1  ( .A(fifoAddr[8]) );
2871
    BUF8 \infifob2/b1/b2/b1/b1  ( .X(\datainlch[18] ), .A(\datainNotBuf[18] )
2872
         );
2873
    BUF8 \infifob2/b2/b1/b1/b1  ( .X(\datainlch[20] ), .A(\datainNotBuf[20] )
2874
         );
2875
    MX81 \infifou1/u1/u0/u1/u0/u01  ( .X(\addrLower[18] ), .A(\addrword0[18] ), 
2876
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[18] ), .SLB(
2877
        \readFifoWordBuffedL[1] ), .C(\addrword2[18] ), .SLC(
2878
        \readFifoWordBuffedL[2] ), .D(\addrword3[18] ), .SLD(
2879
        \readFifoWordBuffedL[3] ), .E(\addrword4[18] ), .SLE(
2880
        \readFifoWordBuffedL[4] ), .F(\addrword5[18] ), .SLF(
2881
        \readFifoWordBuffedL[5] ), .G(\addrword6[18] ), .SLG(
2882
        \readFifoWordBuffedL[6] ), .H(\addrword7[18] ), .SLH(
2883
        \readFifoWordBuffedL[7] ) );
2884
    BUF8 \infifob1/b1/b2/b2/b1/b1  ( .A(fifoAddr[6]) );
2885
    LATP4 \infifou2/u0/u0/u010  ( .Q0(\addrword3[12] ), .Q1(\addrword3[13] ), 
2886
        .Q2(\addrword3[14] ), .Q3(\addrword3[15] ), .D0(\datainlch[12] ), .D1(
2887
        \datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2888
        latchFifoWord[3]) );
2889
    LATP4 \infifou2/u0/u0/u011  ( .Q0(\addrword4[12] ), .Q1(\addrword4[13] ), 
2890
        .Q2(\addrword4[14] ), .Q3(\addrword4[15] ), .D0(\datainlch[12] ), .D1(
2891
        \datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2892
        latchFifoWord[4]) );
2893
    LATP4 \infifou2/u0/u0/u012  ( .Q0(\addrword5[12] ), .Q1(\addrword5[13] ), 
2894
        .Q2(\addrword5[14] ), .Q3(\addrword5[15] ), .D0(\datainlch[12] ), .D1(
2895
        \datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2896
        latchFifoWord[5]) );
2897
    MX81 \infifou2/u0/u1/u0  ( .X(\addrUpper[25] ), .A(\addrword8[25] ), .SLA(
2898
        \readFifoWordBuffedU[0] ), .B(\addrword9[25] ), .SLB(
2899
        \readFifoWordBuffedU[1] ), .C(\addrword10[25] ), .SLC(
2900
        \readFifoWordBuffedU[2] ), .D(\addrword11[25] ), .SLD(
2901
        \readFifoWordBuffedU[3] ), .E(\addrword12[25] ), .SLE(
2902
        \readFifoWordBuffedU[4] ), .F(\addrword13[25] ), .SLF(
2903
        \readFifoWordBuffedU[5] ), .G(\addrword14[25] ), .SLG(
2904
        \readFifoWordBuffedU[6] ), .H(\addrword15[25] ), .SLH(
2905
        \readFifoWordBuffedU[7] ) );
2906
    DFF4 \infifod2/d0  ( .Q0(\datainNotBuf[27] ), .Q1(\datainNotBuf[26] ), 
2907
        .Q2(\datainNotBuf[25] ), .Q3(\datainNotBuf[24] ), .SQ3(sqo), .D0(
2908
        lastAddrWrite), .D1(BE[3]), .D2(BE[2]), .D3(BE[1]), .CK(aaaclk), .SD0(
2909
        n1034), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2910
    MX81 \infifou0/u1/u0/u0/u01  ( .X(\addrLower[4] ), .A(\addrword0[4] ), 
2911
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[4] ), .SLB(
2912
        \readFifoWordBuffedL[1] ), .C(\addrword2[4] ), .SLC(
2913
        \readFifoWordBuffedL[2] ), .D(\addrword3[4] ), .SLD(
2914
        \readFifoWordBuffedL[3] ), .E(\addrword4[4] ), .SLE(
2915
        \readFifoWordBuffedL[4] ), .F(\addrword5[4] ), .SLF(
2916
        \readFifoWordBuffedL[5] ), .G(\addrword6[4] ), .SLG(
2917
        \readFifoWordBuffedL[6] ), .H(\addrword7[4] ), .SLH(
2918
        \readFifoWordBuffedL[7] ) );
2919
    MX81 \infifou1/u0/u0/u1/u0/u0  ( .X(\addrUpper[10] ), .A(\addrword8[10] ), 
2920
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[10] ), .SLB(
2921
        \readFifoWordBuffedU[1] ), .C(\addrword10[10] ), .SLC(
2922
        \readFifoWordBuffedU[2] ), .D(\addrword11[10] ), .SLD(
2923
        \readFifoWordBuffedU[3] ), .E(\addrword12[10] ), .SLE(
2924
        \readFifoWordBuffedU[4] ), .F(\addrword13[10] ), .SLF(
2925
        \readFifoWordBuffedU[5] ), .G(\addrword14[10] ), .SLG(
2926
        \readFifoWordBuffedU[6] ), .H(\addrword15[10] ), .SLH(
2927
        \readFifoWordBuffedU[7] ) );
2928
    BUF8 \infifob1/b2/b2/b1/b2/b1  ( .X(fifoAddr[13]), .A(\dataout[13] ) );
2929
    BUF8 \infifob1/b1/b2/b1/b1/b1  ( .A(fifoAddr[4]) );
2930
    MX81 \infifou1/u1/u0/u1/u0/u0  ( .X(\addrUpper[18] ), .A(\addrword8[18] ), 
2931
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[18] ), .SLB(
2932
        \readFifoWordBuffedU[1] ), .C(\addrword10[18] ), .SLC(
2933
        \readFifoWordBuffedU[2] ), .D(\addrword11[18] ), .SLD(
2934
        \readFifoWordBuffedU[3] ), .E(\addrword12[18] ), .SLE(
2935
        \readFifoWordBuffedU[4] ), .F(\addrword13[18] ), .SLF(
2936
        \readFifoWordBuffedU[5] ), .G(\addrword14[18] ), .SLG(
2937
        \readFifoWordBuffedU[6] ), .H(\addrword15[18] ), .SLH(
2938
        \readFifoWordBuffedU[7] ) );
2939
    LATP4 \infifou2/u0/u0/u01  ( .Q0(\addrword10[12] ), .Q1(\addrword10[13] ), 
2940
        .Q2(\addrword10[14] ), .Q3(\addrword10[15] ), .D0(\datainlch[12] ), 
2941
        .D1(\datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2942
        latchFifoWord[10]) );
2943
    MX81 \infifou1/u0/u1/u0/u1/u01  ( .X(\addrLower[13] ), .A(\addrword0[13] ), 
2944
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[13] ), .SLB(
2945
        \readFifoWordBuffedL[1] ), .C(\addrword2[13] ), .SLC(
2946
        \readFifoWordBuffedL[2] ), .D(\addrword3[13] ), .SLD(
2947
        \readFifoWordBuffedL[3] ), .E(\addrword4[13] ), .SLE(
2948
        \readFifoWordBuffedL[4] ), .F(\addrword5[13] ), .SLF(
2949
        \readFifoWordBuffedL[5] ), .G(\addrword6[13] ), .SLG(
2950
        \readFifoWordBuffedL[6] ), .H(\addrword7[13] ), .SLH(
2951
        \readFifoWordBuffedL[7] ) );
2952
    LATP4 \infifou2/u0/u1/u01  ( .Q0(\addrword10[16] ), .Q1(\addrword10[17] ), 
2953
        .Q2(\addrword10[18] ), .Q3(\addrword10[19] ), .D0(\datainlch[16] ), 
2954
        .D1(\datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2955
        latchFifoWord[10]) );
2956
    LATP4 \infifou2/u0/u0/u02  ( .Q0(\addrword11[12] ), .Q1(\addrword11[13] ), 
2957
        .Q2(\addrword11[14] ), .Q3(\addrword11[15] ), .D0(\datainlch[12] ), 
2958
        .D1(\datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2959
        latchFifoWord[11]) );
2960
    DFF4 \infifod0/d1/d1/d0  ( .Q0(\datainNotBuf[15] ), .Q1(\datainNotBuf[14] 
2961
        ), .Q2(\datainNotBuf[13] ), .Q3(\datainNotBuf[12] ), .SQ3(n1020), .D0(
2962
        Addr[17]), .D1(Addr[16]), .D2(Addr[15]), .D3(Addr[14]), .CK(aaaclk), 
2963
        .SD0(n1054), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
2964
    MX81 \infifou1/u0/u0/u0/u1/u0  ( .X(\addrUpper[9] ), .A(\addrword8[9] ), 
2965
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[9] ), .SLB(
2966
        \readFifoWordBuffedU[1] ), .C(\addrword10[9] ), .SLC(
2967
        \readFifoWordBuffedU[2] ), .D(\addrword11[9] ), .SLD(
2968
        \readFifoWordBuffedU[3] ), .E(\addrword12[9] ), .SLE(
2969
        \readFifoWordBuffedU[4] ), .F(\addrword13[9] ), .SLF(
2970
        \readFifoWordBuffedU[5] ), .G(\addrword14[9] ), .SLG(
2971
        \readFifoWordBuffedU[6] ), .H(\addrword15[9] ), .SLH(
2972
        \readFifoWordBuffedU[7] ) );
2973
    LATP4 \infifou2/u0/u1/u03  ( .Q0(\addrword12[16] ), .Q1(\addrword12[17] ), 
2974
        .Q2(\addrword12[18] ), .Q3(\addrword12[19] ), .D0(\datainlch[16] ), 
2975
        .D1(\datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2976
        latchFifoWord[12]) );
2977
    LATP4 \infifou2/u0/u0/u04  ( .Q0(\addrword13[12] ), .Q1(\addrword13[13] ), 
2978
        .Q2(\addrword13[14] ), .Q3(\addrword13[15] ), .D0(\datainlch[12] ), 
2979
        .D1(\datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2980
        latchFifoWord[13]) );
2981
    LATP4 \infifou2/u0/u1/u04  ( .Q0(\addrword13[16] ), .Q1(\addrword13[17] ), 
2982
        .Q2(\addrword13[18] ), .Q3(\addrword13[19] ), .D0(\datainlch[16] ), 
2983
        .D1(\datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2984
        latchFifoWord[13]) );
2985
    LATP4 \infifou2/u0/u0/u05  ( .Q0(\addrword14[12] ), .Q1(\addrword14[13] ), 
2986
        .Q2(\addrword14[14] ), .Q3(\addrword14[15] ), .D0(\datainlch[12] ), 
2987
        .D1(\datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2988
        latchFifoWord[14]) );
2989
    LATP4 \infifou2/u0/u1/u05  ( .Q0(\addrword14[16] ), .Q1(\addrword14[17] ), 
2990
        .Q2(\addrword14[18] ), .Q3(\addrword14[19] ), .D0(\datainlch[16] ), 
2991
        .D1(\datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
2992
        latchFifoWord[14]) );
2993
    LATP4 \infifou2/u0/u0/u06  ( .Q0(\addrword15[12] ), .Q1(\addrword15[13] ), 
2994
        .Q2(\addrword15[14] ), .Q3(\addrword15[15] ), .D0(\datainlch[12] ), 
2995
        .D1(\datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
2996
        latchFifoWord[15]) );
2997
    LATP4 \infifou2/u0/u0/u07  ( .Q0(\addrword0[12] ), .Q1(\addrword0[13] ), 
2998
        .Q2(\addrword0[14] ), .Q3(\addrword0[15] ), .D0(\datainlch[12] ), .D1(
2999
        \datainlch[13] ), .D2(\datainlch[14] ), .D3(\datainlch[15] ), .GB(
3000
        latchFifoWord[0]) );
3001
    LATP4 \infifou2/u0/u1/u06  ( .Q0(\addrword15[16] ), .Q1(\addrword15[17] ), 
3002
        .Q2(\addrword15[18] ), .Q3(\addrword15[19] ), .D0(\datainlch[16] ), 
3003
        .D1(\datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
3004
        latchFifoWord[15]) );
3005
    LATP4 \infifou2/u0/u1/u09  ( .Q0(\addrword2[16] ), .Q1(\addrword2[17] ), 
3006
        .Q2(\addrword2[18] ), .Q3(\addrword2[19] ), .D0(\datainlch[16] ), .D1(
3007
        \datainlch[17] ), .D2(\datainlch[18] ), .D3(\datainlch[19] ), .GB(
3008
        latchFifoWord[2]) );
3009
    BUF8 \infifob1/b2/b2/b2/b2/b1  ( .X(fifoAddr[15]), .A(\dataout[15] ) );
3010
    MX81 \infifou1/u1/u0/u0/u0/u0  ( .X(\addrUpper[16] ), .A(\addrword8[16] ), 
3011
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[16] ), .SLB(
3012
        \readFifoWordBuffedU[1] ), .C(\addrword10[16] ), .SLC(
3013
        \readFifoWordBuffedU[2] ), .D(\addrword11[16] ), .SLD(
3014
        \readFifoWordBuffedU[3] ), .E(\addrword12[16] ), .SLE(
3015
        \readFifoWordBuffedU[4] ), .F(\addrword13[16] ), .SLF(
3016
        \readFifoWordBuffedU[5] ), .G(\addrword14[16] ), .SLG(
3017
        \readFifoWordBuffedU[6] ), .H(\addrword15[16] ), .SLH(
3018
        \readFifoWordBuffedU[7] ) );
3019
    BUF8 \infifob1/b2/b1/b1/b1/b11  ( .X(\datainlch[8] ), .A(\datainNotBuf[8] 
3020
        ) );
3021
    LATP4 \infifou1/u0/u013  ( .Q0(\addrword6[4] ), .Q1(\addrword6[5] ), .Q2(
3022
        \addrword6[6] ), .Q3(\addrword6[7] ), .D0(\datainlch[4] ), .D1(
3023
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
3024
        latchFifoWord[6]) );
3025
endmodule
3026
 
3027
 
3028
module Dfifo ( aaaDataIn, fifoData, latchFifoWord, readFifoWord, aaaclk, sqo, 
3029
    sdi, se );
3030
input  [31:0] aaaDataIn;
3031
output [31:0] fifoData;
3032
input  [15:0] latchFifoWord;
3033
input  [8:0] readFifoWord;
3034
input  aaaclk, sdi, se;
3035
output sqo;
3036
    wire \dataword4[10] , \dataword2[22] , \dataword1[20] , 
3037
        \readFifoWordBuffedU[3] , \dataword5[20] , \dataword2[30] , 
3038
        \dataword12[19] , \dataword15[1] , \dataword11[17] , \dataword1[0] , 
3039
        \dataword15[17] , \dataword11[4] , \dataword10[15] , \dataword9[6] , 
3040
        \dataword13[29] , n1812, n1811, \dataword14[15] , \dataword12[27] , 
3041
        n1739, \dataword13[13] , \dataword11[25] , n1736, n1735, 
3042
        \dataword15[25] , \dataword12[11] , \dataword10[23] , \dataword5[5] , 
3043
        n1732, n1731, \dataword12[1] , \dataword15[9] , \dataword8[9] , 
3044
        \dataword14[23] , \dataword1[8] , \dataword13[21] , \dataword10[31] , 
3045
        \dataword0[7] , \dataword6[2] , \dataword14[8] , \dataword8[30] , 
3046
        \dataword14[31] , \dataword4[4] , \dataword2[5] , \dataword12[9] , 
3047
        \dataword8[1] , \dataUpper[6] , \dataword7[20] , \dataword8[22] , 
3048
        \dataword10[3] , \dataword9[24] , \dataword6[10] , \dataword3[7] , 
3049
        \dataword14[0] , \dataword7[12] , \dataword6[26] , \dataword8[14] , 
3050
        \datainNotBuf[28] , \dataLower[19] , \dataword7[28] , \datainlch[49] , 
3051
        \dataword2[14] , \dataword5[28] , \dataword0[26] , \dataword4[26] , 
3052
        \dataword1[12] , \dataword5[12] , \dataword0[10] , \dataword3[24] ;
3053
    INVB U7 ( .X(n1763), .A(aaaDataIn[29]) );
3054
    INVB U8 ( .X(n1787), .A(aaaDataIn[13]) );
3055
    INVB U9 ( .X(n1735), .A(aaaDataIn[5]) );
3056
    MX81 \base_nameu0/u0/u1/u0/u0/u01  ( .X(\dataUpper[4] ), .A(\dataword8[4] 
3057
        ), .SLA(\readFifoWordBuffedU[0] ), .B(\dataword9[4] ), .SLB(
3058
        \readFifoWordBuffedU[1] ), .C(\dataword10[4] ), .SLC(
3059
        \readFifoWordBuffedU[2] ), .D(\dataword11[4] ), .SLD(
3060
        \readFifoWordBuffedU[3] ), .E(\dataword12[4] ), .SLE(
3061
        \readFifoWordBuffedU[4] ), .F(\dataword13[4] ), .SLF(
3062
        \readFifoWordBuffedU[5] ), .G(\dataword14[4] ), .SLG(
3063
        \readFifoWordBuffedU[6] ), .H(\dataword15[4] ), .SLH(
3064
        \readFifoWordBuffedU[7] ) );
3065
    MX81 \base_nameu1/u1/u0/u1/u1/u0  ( .X(\dataLower[27] ), .A(
3066
        \dataword0[27] ), .SLA(\readFifoWordBuffedL[0] ), .B(\dataword1[27] ), 
3067
        .SLB(\readFifoWordBuffedL[1] ), .C(\dataword2[27] ), .SLC(
3068
        \readFifoWordBuffedL[2] ), .D(\dataword3[27] ), .SLD(
3069
        \readFifoWordBuffedL[3] ), .E(\dataword4[27] ), .SLE(
3070
        \readFifoWordBuffedL[4] ), .F(\dataword5[27] ), .SLF(
3071
        \readFifoWordBuffedL[5] ), .G(\dataword6[27] ), .SLG(
3072
        \readFifoWordBuffedL[6] ), .H(\dataword7[27] ), .SLH(
3073
        \readFifoWordBuffedL[7] ) );
3074
    BUF8 \base_nameb1/b2/b2/b2/b1/b1  ( .A(fifoData[14]) );
3075
    MX81 \base_nameu1/u1/u0/u0/u1/u01  ( .X(\dataUpper[25] ), .A(
3076
        \dataword8[25] ), .SLA(\readFifoWordBuffedU[0] ), .B(\dataword9[25] ), 
3077
        .SLB(\readFifoWordBuffedU[1] ), .C(\dataword10[25] ), .SLC(
3078
        \readFifoWordBuffedU[2] ), .D(\dataword11[25] ), .SLD(
3079
        \readFifoWordBuffedU[3] ), .E(\dataword12[25] ), .SLE(
3080
        \readFifoWordBuffedU[4] ), .F(\dataword13[25] ), .SLF(
3081
        \readFifoWordBuffedU[5] ), .G(\dataword14[25] ), .SLG(
3082
        \readFifoWordBuffedU[6] ), .H(\dataword15[25] ), .SLH(
3083
        \readFifoWordBuffedU[7] ) );
3084
    BUF8 \base_nameb2/b1/b2/b2/b1/b1  ( .A(fifoData[22]) );
3085
    MX81 \base_nameu0/u0/u0/u1/u0/u0  ( .X(\dataLower[2] ), .A(\dataword0[2] ), 
3086
        .SLA(\readFifoWordBuffedL[0] ), .B(\dataword1[2] ), .SLB(
3087
        \readFifoWordBuffedL[1] ), .C(\dataword2[2] ), .SLC(
3088
        \readFifoWordBuffedL[2] ), .D(\dataword3[2] ), .SLD(
3089
        \readFifoWordBuffedL[3] ), .E(\dataword4[2] ), .SLE(
3090
        \readFifoWordBuffedL[4] ), .F(\dataword5[2] ), .SLF(
3091
        \readFifoWordBuffedL[5] ), .G(\dataword6[2] ), .SLG(
3092
        \readFifoWordBuffedL[6] ), .H(\dataword7[2] ), .SLH(
3093
        \readFifoWordBuffedL[7] ) );
3094
    MUX41H \base_nameu0/u1/u1/u0  ( .X0(fifoData[12]), .X1(fifoData[13]), .X2(
3095
        fifoData[14]), .X3(fifoData[15]), .A0(\dataLower[12] ), .B0(
3096
        \dataUpper[12] ), .A1(\dataLower[13] ), .B1(\dataUpper[13] ), .A2(
3097
        \dataLower[14] ), .B2(\dataUpper[14] ), .A3(\dataLower[15] ), .B3(
3098
        \dataUpper[15] ), .SL(\readFifoWordBuffedL[8] ) );
3099
    MX81 \base_nameu1/u0/u1/u1/u1/u0  ( .X(\dataLower[23] ), .A(
3100
        \dataword0[23] ), .SLA(\readFifoWordBuffedL[0] ), .B(\dataword1[23] ), 
3101
        .SLB(\readFifoWordBuffedL[1] ), .C(\dataword2[23] ), .SLC(
3102
        \readFifoWordBuffedL[2] ), .D(\dataword3[23] ), .SLD(
3103
        \readFifoWordBuffedL[3] ), .E(\dataword4[23] ), .SLE(
3104
        \readFifoWordBuffedL[4] ), .F(\dataword5[23] ), .SLF(
3105
        \readFifoWordBuffedL[5] ), .G(\dataword6[23] ), .SLG(
3106
        \readFifoWordBuffedL[6] ), .H(\dataword7[23] ), .SLH(
3107
        \readFifoWordBuffedL[7] ) );
3108
    MUX41H \base_nameu1/u0/u1/u0  ( .X0(fifoData[20]), .X1(fifoData[21]), .X2(
3109
        fifoData[22]), .X3(fifoData[23]), .A0(\dataLower[20] ), .B0(
3110
        \dataUpper[20] ), .A1(\dataLower[21] ), .B1(\dataUpper[21] ), .A2(
3111
        \dataLower[22] ), .B2(\dataUpper[22] ), .A3(\dataLower[23] ), .B3(
3112
        \dataUpper[23] ), .SL(\readFifoWordBuffedL[8] ) );
3113
    DLY8 base_namedelay230 ( .X(n1808), .A(n1807) );
3114
    INVB U30 ( .X(n1695), .A(aaaDataIn[11]) );
3115
    DLY8 base_namedelay231 ( .X(n1812), .A(n1811) );
3116
    INVB U31 ( .X(n1699), .A(aaaDataIn[10]) );
3117
    INVB U32 ( .X(n1703), .A(aaaDataIn[9]) );
3118
    INVB U33 ( .X(n1707), .A(aaaDataIn[8]) );
3119
    INV2B base_namedelay310 ( .X(\datainDel[47] ), .A(n1728) );
3120
    INV2B base_namedelay311 ( .X(\datainDel[59] ), .A(n1732) );
3121
    INV2B base_namedelay312 ( .X(\datainDel[33] ), .A(n1736) );
3122
    INV2B base_namedelay313 ( .X(\datainDel[46] ), .A(n1740) );
3123
    INV2B base_namedelay314 ( .X(\datainDel[45] ), .A(n1744) );
3124
    INV2B base_namedelay315 ( .X(\datainDel[58] ), .A(n1748) );
3125
    INV2B base_namedelay316 ( .X(\datainDel[32] ), .A(n1752) );
3126
    INV2B base_namedelay317 ( .X(\datainDel[31] ), .A(n1756) );
3127
    INV2B base_namedelay318 ( .X(\datainDel[44] ), .A(n1760) );
3128
    INV2B base_namedelay319 ( .X(\datainDel[57] ), .A(n1764) );
3129
    BUF8 \base_nameb2/b2/b2/b2/b2/b11  ( .X(\datainlch[59] ), .A(
3130
        \datainNotBuf[59] ) );
3131
    MUX41H \base_nameu1/u1/u0/u0  ( .X0(fifoData[24]), .X1(fifoData[25]), .X2(
3132
        fifoData[26]), .X3(fifoData[27]), .A0(\dataLower[24] ), .B0(
3133
        \dataUpper[24] ), .A1(\dataLower[25] ), .B1(\dataUpper[25] ), .A2(
3134
        \dataLower[26] ), .B2(\dataUpper[26] ), .A3(\dataLower[27] ), .B3(
3135
        \dataUpper[27] ), .SL(\readFifoWordBuffedL[8] ) );
3136
    BUF8 \base_nameb1/b2/b1/b2/b1/b11  ( .X(\datainlch[38] ), .A(
3137
        \datainNotBuf[38] ) );
3138
    LATP4 \base_nameu0/u0/u0/u09  ( .Q0(\dataword1[0] ), .Q1(\dataword1[1] ), 
3139
        .Q2(\dataword1[2] ), .Q3(\dataword1[3] ), .D0(\datainlch[28] ), .D1(
3140
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3141
        latchFifoWord[1]) );
3142
    LATP4 \base_nameu0/u0/u0/u08  ( .Q0(\dataword2[0] ), .Q1(\dataword2[1] ), 
3143
        .Q2(\dataword2[2] ), .Q3(\dataword2[3] ), .D0(\datainlch[28] ), .D1(
3144
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3145
        latchFifoWord[2]) );
3146
    INV2B base_namedelay31 ( .X(\datainDel[28] ), .A(n1692) );
3147
    LATP4 \base_nameu0/u0/u0/u05  ( .Q0(\dataword5[0] ), .Q1(\dataword5[1] ), 
3148
        .Q2(\dataword5[2] ), .Q3(\dataword5[3] ), .D0(\datainlch[28] ), .D1(
3149
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3150
        latchFifoWord[5]) );
3151
    INV2B base_namedelay3 ( .X(\datainDel[29] ), .A(n1688) );
3152
    INV2B base_namedelay32 ( .X(\datainDel[39] ), .A(n1696) );
3153
    LATP4 \base_nameu0/u0/u0/u04  ( .Q0(\dataword6[0] ), .Q1(\dataword6[1] ), 
3154
        .Q2(\dataword6[2] ), .Q3(\dataword6[3] ), .D0(\datainlch[28] ), .D1(
3155
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3156
        latchFifoWord[6]) );
3157
    DLY8 base_namedelay2 ( .X(n1688), .A(n1687) );
3158
    INV2B base_namedelay33 ( .X(\datainDel[38] ), .A(n1700) );
3159
    LATP4 \base_nameu0/u0/u0/u03  ( .Q0(\dataword7[0] ), .Q1(\dataword7[1] ), 
3160
        .Q2(\dataword7[2] ), .Q3(\dataword7[3] ), .D0(\datainlch[28] ), .D1(
3161
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3162
        latchFifoWord[7]) );
3163
    INV2B base_namedelay34 ( .X(\datainDel[37] ), .A(n1704) );
3164
    LATP4 \base_nameu0/u0/u0/u02  ( .Q0(\dataword8[0] ), .Q1(\dataword8[1] ), 
3165
        .Q2(\dataword8[2] ), .Q3(\dataword8[3] ), .D0(\datainlch[28] ), .D1(
3166
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3167
        latchFifoWord[8]) );
3168
    INV2B base_namedelay35 ( .X(\datainDel[36] ), .A(n1708) );
3169
    BUF8 \base_nameb1/b1/b1/b1/b2/b1  ( .A(fifoData[1]) );
3170
    LATP4 \base_nameu0/u0/u0/u01  ( .Q0(\dataword9[0] ), .Q1(\dataword9[1] ), 
3171
        .Q2(\dataword9[2] ), .Q3(\dataword9[3] ), .D0(\datainlch[28] ), .D1(
3172
        \datainlch[29] ), .D2(\datainlch[30] ), .D3(\datainlch[31] ), .GB(
3173
        latchFifoWord[9]) );
3174
    INV2B base_namedelay36 ( .X(\datainDel[49] ), .A(n1712) );
3175
    INV2B base_namedelay37 ( .X(\datainDel[48] ), .A(n1716) );
3176
    INV2B base_namedelay38 ( .X(\datainDel[35] ), .A(n1720) );
3177
    INV2B base_namedelay39 ( .X(\datainDel[34] ), .A(n1724) );
3178
    BUF8 \base_nameb2/b1/b2/b1/b2/b1  ( .A(fifoData[21]) );
3179
    MX81 \base_nameu1/u0/u1/u1/u1/u01  ( .X(\dataUpper[23] ), .A(
3180
        \dataword8[23] ), .SLA(\readFifoWordBuffedU[0] ), .B(\dataword9[23] ), 
3181
        .SLB(\readFifoWordBuffedU[1] ), .C(\dataword10[23] ), .SLC(
3182
        \readFifoWordBuffedU[2] ), .D(\dataword11[23] ), .SLD(
3183
        \readFifoWordBuffedU[3] ), .E(\dataword12[23] ), .SLE(
3184
        \readFifoWordBuffedU[4] ), .F(\dataword13[23] ), .SLF(
3185
        \readFifoWordBuffedU[5] ), .G(\dataword14[23] ), .SLG(
3186
        \readFifoWordBuffedU[6] ), .H(\dataword15[23] ), .SLH(
3187
        \readFifoWordBuffedU[7] ) );
3188
    BUF8 \base_nameb1/b2/b1/b1/b1/b1  ( .A(fifoData[8]) );
3189
    assign Logic1 = 1'b1;
3190
    INV8 rdWordBfrU0 ( .X(\readFifoWordBuffedU[0] ), .A(readFifoWord[0]) );
3191
    LATP4 \base_nameu0/u1/u1/u09  ( .Q0(\dataword1[12] ), .Q1(\dataword1[13] ), 
3192
        .Q2(\dataword1[14] ), .Q3(\dataword1[15] ), .D0(\datainlch[40] ), .D1(
3193
        \datainlch[41] ), .D2(\datainlch[42] ), .D3(\datainlch[43] ), .GB(
3194
        latchFifoWord[1]) );
3195
    INV8 rdWordBfrU1 ( .X(\readFifoWordBuffedU[1] ), .A(readFifoWord[1]) );
3196
    LATP4 \base_nameu0/u1/u1/u06  ( .Q0(\dataword4[12] ), .Q1(\dataword4[13] ), 
3197
        .Q2(\dataword4[14] ), .Q3(\dataword4[15] ), .D0(\datainlch[40] ), .D1(
3198
        \datainlch[41] ), .D2(\datainlch[42] ), .D3(\datainlch[43] ), .GB(
3199
        latchFifoWord[4]) );
3200
    INV8 rdWordBfrU4 ( .X(\readFifoWordBuffedU[4] ), .A(readFifoWord[4]) );
3201
    LATP4 \base_nameu0/u1/u1/u05  ( .Q0(\dataword5[12] ), .Q1(\dataword5[13] ), 
3202
        .Q2(\dataword5[14] ), .Q3(\dataword5[15] ), .D0(\datainlch[40] ), .D1(
3203
        \datainlch[41] ), .D2(\datainlch[42] ), .D3(\datainlch[43] ), .GB(
3204
        latchFifoWord[5]) );
3205
    INV8 rdWordBfrU5 ( .X(\readFifoWordBuffedU[5] ), .A(readFifoWord[5]) );
3206
    MX81 \base_nameu0/u0/u0/u1/u0/u01  ( .X(\dataUpper[2] ), .A(\dataword8[2] 
3207
        ), .SLA(\readFifoWordBuffedU[0] ), .B(\dataword9[2] ), .SLB(
3208
        \readFifoWordBuffedU[1] ), .C(\dataword10[2] ), .SLC(
3209
        \readFifoWordBuffedU[2] ), .D(\dataword11[2] ), .SLD(
3210
        \readFifoWordBuffedU[3] ), .E(\dataword12[2] ), .SLE(
3211
        \readFifoWordBuffedU[4] ), .F(\dataword13[2] ), .SLF(
3212
        \readFifoWordBuffedU[5] ), .G(\dataword14[2] ), .SLG(
3213
        \readFifoWordBuffedU[6] ), .H(\dataword15[2] ), .SLH(
3214
        \readFifoWordBuffedU[7] ) );
3215
    LATP4 \base_nameu0/u1/u1/u04  ( .Q0(\dataword6[12] ), .Q1(\dataword6[13] ), 
3216
        .Q2(\dataword6[14] ), .Q3(\dataword6[15] ), .D0(\datainlch[40] ), .D1(
3217
        \datainlch[41] ), .D2(\datainlch[42] ), .D3(\datainlch[43] ), .GB(
3218
        latchFifoWord[6]) );
3219
    INV8 rdWordBfrU6 ( .X(\readFifoWordBuffedU[6] ), .A(readFifoWord[6]) );
3220
    LATP4 \base_nameu0/u1/u1/u03  ( .Q0(\dataword7[12] ), .Q1(\dataword7[13] ), 
3221
        .Q2(\dataword7[14] ), .Q3(\dataword7[15] ), .D0(\datainlch[40] ), .D1(
3222
        \datainlch[41] ), .D2(\datainlch[42] ), .D3(\datainlch[43] ), .GB(
3223
        latchFifoWord[7]) );
3224
    LATP4 \base_nameu1/u0/u1/u02  ( .Q0(\dataword8[20] ), .Q1(\dataword8[21] ), 
3225
        .Q2(\dataword8[22] ), .Q3(\dataword8[23] ), .D0(\datainlch[48] ), .D1(
3226
        \datainlch[49] ), .D2(\datainlch[50] ), .D3(\datainlch[51] ), .GB(
3227
        latchFifoWord[8]) );
3228
    LATP4 \base_nameu1/u0/u1/u01  ( .Q0(\dataword9[20] ), .Q1(\dataword9[21] ), 
3229
        .Q2(\dataword9[22] ), .Q3(\dataword9[23] ), .D0(\datainlch[48] ), .D1(
3230
        \datainlch[49] ), .D2(\datainlch[50] ), .D3(\datainlch[51] ), .GB(
3231
        latchFifoWord[9]) );
3232
    BUF8 \base_nameb1/b1/b1/b2/b1/b11  ( .X(\datainlch[30] ), .A(
3233
        \datainNotBuf[30] ) );
3234
    BUF8 \base_nameb1/b2/b1/b1/b1/b11  ( .X(\datainlch[36] ), .A(
3235
        \datainNotBuf[36] ) );
3236
    DLY8 base_namedelay213 ( .X(n1740), .A(n1739) );
3237
    INVB U13 ( .X(n1795), .A(aaaDataIn[25]) );
3238
    INV2B base_namedelay331 ( .X(\datainDel[50] ), .A(n1812) );
3239
    DLY8 base_namedelay214 ( .X(n1744), .A(n1743) );
3240
    INVB U14 ( .X(n1807), .A(aaaDataIn[23]) );
3241
    DLY8 base_namedelay215 ( .X(n1748), .A(n1747) );
3242
    INVB U15 ( .X(n1743), .A(aaaDataIn[17]) );
3243
    DLY8 base_namedelay216 ( .X(n1752), .A(n1751) );
3244
    INVB U16 ( .X(n1811), .A(aaaDataIn[22]) );
3245
    BUF8 \base_nameb1/b2/b2/b2/b1/b11  ( .X(\datainlch[42] ), .A(
3246
        \datainNotBuf[42] ) );
3247
    DLY8 base_namedelay217 ( .X(n1756), .A(n1755) );
3248
    INVB U17 ( .X(n1799), .A(aaaDataIn[12]) );
3249
    DLY8 base_namedelay218 ( .X(n1760), .A(n1759) );
3250
    INVB U18 ( .X(n1767), .A(aaaDataIn[28]) );
3251
    DLY8 base_namedelay219 ( .X(n1764), .A(n1763) );
3252
    INVB U19 ( .X(n1747), .A(aaaDataIn[30]) );
3253
    MUX41H \base_nameu1/u1/u1/u0  ( .X0(fifoData[28]), .X1(fifoData[29]), .X2(
3254
        fifoData[30]), .X3(fifoData[31]), .A0(\dataLower[28] ), .B0(
3255
        \dataUpper[28] ), .A1(\dataLower[29] ), .B1(\dataUpper[29] ), .A2(
3256
        \dataLower[30] ), .B2(\dataUpper[30] ), .A3(\dataLower[31] ), .B3(
3257
        \dataUpper[31] ), .SL(\readFifoWordBuffedL[8] ) );
3258
    BUF8 scanQBuffer ( .X(sqo), .A(sqoNotBuffed) );
3259
    BUF8 \base_nameb2/b2/b2/b2/b1/b11  ( .X(\datainlch[58] ), .A(
3260
        \datainNotBuf[58] ) );
3261
    LATP4 \base_nameu1/u0/u1/u010  ( .Q0(\dataword0[20] ), .Q1(\dataword0[21] 
3262
        ), .Q2(\dataword0[22] ), .Q3(\dataword0[23] ), .D0(\datainlch[48] ), 
3263
        .D1(\datainlch[49] ), .D2(\datainlch[50] ), .D3(\datainlch[51] ), .GB(
3264
        latchFifoWord[0]) );
3265
    LATP4 \base_nameu1/u0/u1/u011  ( .Q0(\dataword10[20] ), .Q1(
3266
        \dataword10[21] ), .Q2(\dataword10[22] ), .Q3(\dataword10[23] ), .D0(
3267
        \datainlch[48] ), .D1(\datainlch[49] ), .D2(\datainlch[50] ), .D3(
3268
        \datainlch[51] ), .GB(latchFifoWord[10]) );
3269
    INVB U25 ( .X(n1727), .A(aaaDataIn[19]) );
3270
    DLY8 base_namedelay226 ( .X(n1792), .A(n1791) );
3271
    INVB U26 ( .X(n1783), .A(aaaDataIn[27]) );
3272
    DLY8 base_namedelay227 ( .X(n1796), .A(n1795) );
3273
    INVB U27 ( .X(n1731), .A(aaaDataIn[31]) );
3274
    DLY8 base_namedelay228 ( .X(n1800), .A(n1799) );
3275
    LATP4 \base_nameu0/u1/u0/u010  ( .Q0(\dataword0[8] ), .Q1(\dataword0[9] ), 
3276
        .Q2(\dataword0[10] ), .Q3(\dataword0[11] ), .D0(\datainlch[36] ), .D1(
3277
        \datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3278
        latchFifoWord[0]) );
3279
    INVB U28 ( .X(n1687), .A(aaaDataIn[1]) );
3280
    LATP4 \base_nameu0/u1/u0/u011  ( .Q0(\dataword10[8] ), .Q1(\dataword10[9] 
3281
        ), .Q2(\dataword10[10] ), .Q3(\dataword10[11] ), .D0(\datainlch[36] ), 
3282
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3283
        latchFifoWord[10]) );
3284
    DLY8 base_namedelay229 ( .X(n1804), .A(n1803) );
3285
    INVB U29 ( .X(n1691), .A(aaaDataIn[0]) );
3286
    LATP4 \base_nameu0/u1/u0/u012  ( .Q0(\dataword11[8] ), .Q1(\dataword11[9] 
3287
        ), .Q2(\dataword11[10] ), .Q3(\dataword11[11] ), .D0(\datainlch[36] ), 
3288
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3289
        latchFifoWord[11]) );
3290
    LATP4 \base_nameu0/u1/u0/u013  ( .Q0(\dataword12[8] ), .Q1(\dataword12[9] 
3291
        ), .Q2(\dataword12[10] ), .Q3(\dataword12[11] ), .D0(\datainlch[36] ), 
3292
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3293
        latchFifoWord[12]) );
3294
    LATP4 \base_nameu0/u1/u0/u014  ( .Q0(\dataword13[8] ), .Q1(\dataword13[9] 
3295
        ), .Q2(\dataword13[10] ), .Q3(\dataword13[11] ), .D0(\datainlch[36] ), 
3296
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3297
        latchFifoWord[13]) );
3298
    LATP4 \base_nameu0/u1/u0/u015  ( .Q0(\dataword14[8] ), .Q1(\dataword14[9] 
3299
        ), .Q2(\dataword14[10] ), .Q3(\dataword14[11] ), .D0(\datainlch[36] ), 
3300
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3301
        latchFifoWord[14]) );
3302
    LATP4 \base_nameu0/u1/u0/u016  ( .Q0(\dataword15[8] ), .Q1(\dataword15[9] 
3303
        ), .Q2(\dataword15[10] ), .Q3(\dataword15[11] ), .D0(\datainlch[36] ), 
3304
        .D1(\datainlch[37] ), .D2(\datainlch[38] ), .D3(\datainlch[39] ), .GB(
3305
        latchFifoWord[15]) );
3306
    DLY8 base_namedelay27 ( .X(n1716), .A(n1715) );
3307
    BUF8 \base_nameb2/b1/b2/b2/b1/b11  ( .X(\datainlch[50] ), .A(
3308
        \datainNotBuf[50] ) );
3309
    DLY8 base_namedelay28 ( .X(n1720), .A(n1719) );
3310
    INVB U4 ( .X(n1719), .A(aaaDataIn[7]) );
3311
    INVB U5 ( .X(n1755), .A(aaaDataIn[3]) );
3312
    INVB U6 ( .X(n1759), .A(aaaDataIn[16]) );
3313
endmodule
3314
 
3315
 
3316
module inDFDly ( out, in );
3317
input  in;
3318
output out;
3319
    wire dly1, dly2;
3320
    INV2B delay3 ( .X(out), .A(dly2) );
3321
    DLY8 delay2 ( .X(dly2), .A(dly1) );
3322
    DS1536I delay1 ( .X(dly1), .A(in) );
3323
endmodule
3324
 
3325
@EOF
3326
 
3327
chmod 644 b.g
3328
 
3329
exit 0
3330