hdl.y - a simple verilog parser 
Author Message
 hdl.y - a simple verilog parser

  hdl.y below is a verilog parser written using the Unix utility - yacc. It
by no means is a complete verilog parser. This only represents a few nights of
effort in front of the ole PC. This is donated in the hope that this will
enable additional work by individuals interested in learning verilog & yacc.

  hdl.y however does seem to parse the two supplied examples: s.g & b.g, a
small and big verilog HDL file, representatve of a couple of circuits produced
by Synopsys. 'b.g' has been hacked up so as to remove any likening to a circuit
that will actually work. This file however contains modules mapped to actual
gates, unmapped modules & concatenated net bundles.

  This is doable on DOS but you need to get:
    a Public Domain  yacc
    DOS extender for 386 to avoid intel segmentation/640k problems
    sort - probabily need something better than what DOS offers for large
           netlist. (I forget where a got this)
  See below for source of yacc & DOS extender.

  use :set ts=8 if you use vi

have fun,
Frank

# This is a shell archive.  Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
#

echo x - hdl.y

/*
 * hdl.y parser for verilog net lists
 *  by  Frank Bennett
 *
 * i.e. hdl s.g
 * products two files: s.nam, s.seq - 1 net per line
 *   s.seq is sorted by reference designator
 *   s.nam is sorted by netname
 *
 * - primarily handles "flat" verilog HDL netlists.
 * - parses hierarchical netlist but currently doesn't flatten them.
 * - concatenated signal names need to be expanded. currently the whole
 *   netname bundle is given the name : "concatenation"
 * - not included :
 *      Behavi{*filter*}Statements
 *      Specify blocks
 *
 *  PD yacc :
 * byacc, Bob Corbett. Berkely yacc adapted for MINIX by Peter Housel
 * COLOGNE:commands/lex-yacc/byacc.tar.Z
 *
 * DOS extender - 386 to avoid malloc problems
 * djgpp.zip
 * wuarchive.wustl.edu   (128.252.135.4): /mirrors3/garbo.uwasa.fi/programming
 */
%{
#define YYDEBUG 1
#include <string.h>
#include <ctype.h>
#include <errno.h>
#include <stdio.h>
#include <fcntl.h>

#define out(c) putc(c,yyout)
#define NCOM 300

int     bug=0, ind ;
FILE    *fopen(), *freopen(), *fi, *ft, *fo, *fr ;
static  int i, comment=0;
char    *cp, *st, refd[20], part[20] ;
char    ln[80] ;

extern char     *strsave(), *malloc();
extern int      yyleng, lexval ;
extern char     yytext[];
extern char     yysbuf[];

typedef struct YYS_TYPE { /* use instead of %union below */
    int i;
    char s[50];
    } yys_type ;
#define YYSTYPE     yys_type

%}

/* HP-UX yacc seems to be fussy about :
%union {
    int i;
    char s[50];
    }
 */

%token NL NAME NUMBER MODULE ENDMODULE WIRE INPUT OUTPUT INOUT
%token NETTYPE ASSIGN STRENGTH0 STRENGTH1 GATETYPE INITIAL
%token PARAMETER REG TIME INTEGER REAL EVENT DEFPARAM
%token BIN_OP UNARY_OP PRIMITIVE ENDPRIM TABLE ENDTABLE
%token OUT_SYM LEV_SYM EDGE_SYM

%left BIN_OP

%start modules

%%
modules         : modules mod_prim
                | modules         error
                |         mod_prim
                ;

mod_prim        : module
                | primitive
                ;

primitive       : PRIMITIVE NAME '(' list_of_vars ')' ';' prim_body ENDPRIM
                ;

list_of_vars    : list_of_vars ',' NAME
                | NAME
                ;

prim_body       : UDP_decl UDP_init table_def
                | UDP_decl          table_def
                ;

UDP_decl        : output_decl
                | input_decl
                | reg_decl
                ;

UDP_init        : INITIAL NAME '=' init_val
                ;

init_val        : '1' '\'' 'b' '0'
                | '1' '\'' 'b' '1'
                | '1' '\'' 'b' 'x'
                | '1'
                | '0'
                ;

table_def       : TABLE table_entries ENDTABLE
                ;

table_entries   : table_entries combin_entry
                |               combin_entry
                | table_entries seq_entry
                |               seq_entry
                ;

combin_entry    : level_in_list ':' OUT_SYM ';'
                ;

seq_entry       : level_in_list ':' state ':' next_state ';'
                |  edge_in_list ':' state ':' next_state ';'
                ;

level_in_list   : LEV_SYM
                ;

edge_in_list    : LEV_SYM edge LEV_SYM
                |         edge
                ;

edge            : '(' LEV_SYM LEV_SYM ')'
                | EDGE_SYM
                ;

state           : LEV_SYM
                ;
next_state      : OUT_SYM
                ;

module          : MODULE NAME ';' mod_body ENDMODULE
                | MODULE NAME '('list_of_ports')' ';' mod_body ENDMODULE
                ;

list_of_ports   : list_of_ports ',' port
                | port
                ;

port            : NAME
                | NAME '[' const_exp ']'
                | NAME '[' const_exp ':' const_exp ']'
                ;

mod_body        : mod_body module_item
                |          module_item
                ;

module_item     : param_decl
                | input_decl
                | output_decl
                | inout_decl
                | net_decl
                | reg_decl
                | time_decl
                | integer_decl
                | real_decl
                | event_decl
                | gate_decl
                | module_instant
                | defparm_decl
                | cont_assign
                ;

param_decl      : PARAMETER
                ;
reg_decl        : REG
                ;
time_decl       : TIME
                ;
integer_decl    : INTEGER
                ;
real_decl       : REAL
                ;
event_decl      : EVENT
                ;
defparm_decl    : DEFPARAM
                ;
gate_decl       : GATETYPE                   gate_instant
                | GATETYPE dr_strength       gate_instant
                | GATETYPE             delay gate_instant
                | GATETYPE dr_strength delay gate_instant
                ;

gate_instant    : NAME '(' exp ')'
                ;

input_decl      : INPUT       list_vars ';'
                | INPUT range list_vars ';'
                ;

output_decl     : OUTPUT       list_vars ';'
                | OUTPUT range list_vars ';'
                ;

inout_decl      : INOUT       list_vars ';'
                | INOUT range list_vars ';'
                ;

net_decl        : NETTYPE             list_vars ';'
                | NETTYPE range       list_vars ';'
                | NETTYPE       delay list_vars ';'
                | NETTYPE range delay list_vars ';'
                ;

range           : '[' const_exp ':' const_exp ']'
                ;

delay           : '#' number
                | '#' NAME
                ;

dr_strength     : '(' STRENGTH0 ',' STRENGTH1 ')'
                | '(' STRENGTH1 ',' STRENGTH0 ')'
                ;

list_vars       : list_vars ',' NAME
                |               NAME
                ;

module_instant  : name_mod         mod_inst_list ';'
                | name_mod par_val mod_inst_list ';'
                ;

name_mod        : NAME
                { strcpy( part, yytext); }
                ;

mod_inst_list   : mod_inst_list ',' mod_inst
                |                   mod_inst
                ;

mod_inst        : reference '(' list_mod_conn ')'
                | reference '(' list_nam_conn ')'
                ;

reference       : NAME
                { strcpy( refd, yytext); }
                ;

list_mod_conn   : list_mod_conn ',' exp
                |                   exp
                ;

list_nam_conn   : list_nam_conn ',' nam_conn
                |                   nam_conn
                ;

nam_conn        : '.' NAME '(' sig_nam ')'
                {
                    fprintf(fo,"%-18s %-22s %-10s %10s %s\n",
                         $4.s, refd, $2.s, part, modnam);
                }
                ;

sig_nam         : NAME
                | NAME '[' exp ']'
                { strcpy($$.s, $1.s);
                  strcat($$.s, "[");
                  strcat($$.s, $3.s);
                  strcat($$.s, "]");
                }
                | NAME '[' exp ':' exp ']'
                { strcpy($$.s, $1.s);
                  strcat($$.s, "[");
                  strcat($$.s, $3.s);
                  strcat($$.s, ":");
                  strcat($$.s, $5.s);
                  strcat($$.s, "]");
                }
                | concatenation
                { strcpy($$.s, "concatenation");}
                ;

par_val         : '#' '(' exp ')'
                ;

cont_assign     : ASSIGN                   list_assigns ';'
                | ASSIGN dr_strength       list_assigns ';'
                | ASSIGN             delay list_assigns ';'
                | ASSIGN dr_strength delay list_assigns ';'
                ;

list_assigns    : list_assigns ',' assignment
                |                  assignment
                ;

assignment      : lvalue '='     exp
                | lvalue '=' '(' exp ')'
                ;

lvalue          : NAME
                | NAME '[' exp ']'
                | concatenation
                ;

const_exp       : exp
                ;

concatenation   : '{' exp_list '}'
                ;

exp_list        : exp_list ',' exp
                |              exp
                ;

exp             : primary
                | UNARY_OP primary
                | UNARY_OP '(' exp ')'
                | exp BIN_OP exp
                ;

primary         : number
                | NAME '[' exp ']'
                | NAME
                | concatenation
                ;

number          : NUMBER
                | NUMBER '\'' 'b' NUMBER
                | NUMBER '\'' 'd' NUMBER
                | NUMBER '\'' 'o' NUMBER
                ;

%%      /* start of main */

main(argc,argv)
int     argc;
char    *argv[];
{
    int i,p;
    char frnam[60], fsnam[60];

    if(argc == 1) {
        fprintf(stderr,"use:hdl [-ds] file\n"); exit(1);
    }
    for(i=1; i<argc; i++)
        if(argv[i][0] == '-'){
                bug     = ((argv[i][1] == 'd') || (argv[i][2] == 'd'));
        }
        else break;

    if(freopen( argv[i],"r",stdin) == NULL){
        fprintf(stderr,"can't open %s\n", argv[i]);exit(1);
    }   else {
        /* open output */
        for( cp=argv[i], st=fsnam ; *cp && *cp != '.' ; )*st++ = *cp++;
        *st = 0;
        strcpy( frnam, fsnam );
        strcat( frnam, ".nam");       strcat( fsnam, ".seq");

        if((fo = fopen(fsnam, "w")) == NULL) err("can't open %s",fsnam);

        fprintf(stderr,"reading nets from %s\n", argv[i]);
    }

    yyparse() ;

    fclose(fo);

    fprintf(stderr,"sorting...\n");
    sprintf(ln, "sort <%s >%s", fsnam, frnam);  system(ln);

Quote:
}

# define YYLMAX 132

int     yylineno =0;
int     yyleng ;
char    yytext[YYLMAX];
char    yysbuf[YYLMAX];
char    modnam[YYLMAX];
int     yysptr = -1, yylast, toklast;
FILE    *yyout ={stderr};

#define YYNL 10

int
yylex() /* Gets the next token from the input stream */
{
        int  c, i, j ;
        static int eline ;
        extern int bug;

start:
        if(yysptr == -1){
                i = 0;  eline =1; yylineno++;
                /* get line to yysbuf */
                while( ((c=getchar()) != EOF) && (c != YYNL)){
                        if(c == '\t'){ c=' ';do yysbuf[i++] = c; while(i & 7);}
                        else    {
                                if (c != ' ')eline =0;  
                                yysbuf[i++] = c;
                        }
                }
                yysptr = 0;
                yysbuf[i] = '\0';
                yylast = toklast = 0;
        }
        if(c == EOF)
            return(EOF);

        while( (c = yysbuf[yysptr]) == ' ') yysptr++;

        if(bug){
                fprintf(yyout,"%03d:%s\n",yylineno,yysbuf);
                for( i=yysptr ; i>0 ; i-- )out(' ');
        }

         if ( c == YYNL || c== 0 ){
                yysptr= -1;
                if(bug)fprintf(yyout,"\n");
                goto start;
         }

         if( comment ){
                while( (c = yysbuf[yysptr++]) != '*' && c != '/'&& c );
                if( c == '*' && yysbuf[yysptr]=='/' )
                    comment-- ;
                if( c == '/' && yysbuf[yysptr]=='*' )
                    comment++ ;
                if( c ==  0  )
                    yysptr = -1;
                if( comment )
                    goto start;
                yysptr++;
                    goto start;
         }

         if( c == '/' ) { /* comment // ? */
             if( yysbuf[yysptr+1] == '/') {
                yysptr= -1;
                goto start;
             }
             if( yysbuf[yysptr+1] == '*') {
                comment++; yysptr +=2;
                goto start;
             }
         }
         if( c == '\\'){ /* escaped name */
                yyleng=0;
                while( (c=yysbuf[++yysptr]) != ' ' )
                        yytext[yyleng++] = c;
                yytext[yyleng] = '\0';
                if(bug)fprintf(yyout,"    ^tok:NAME\n");
                if( toklast==MODULE ){
                    toklast = 0;
                    strcpy(modnam, yytext);
                    fprintf(stderr,"module %s\n", modnam);
                }
                if( toklast==PRIMITIVE ){
                    toklast = 0;
                    strcpy(modnam, yytext);
                    fprintf(stderr,"primitive %s\n", modnam);
                }
                strcpy(yylval.s, yytext);
                return(NAME);
         }
         if( isalpha(c) ) {
                if( yylast == '\'' ){ /* number base - 1'b0 */
                    yysptr++;
                    if(bug)
                       if(c < ' ')   fprintf(yyout,"    ^CHAR:%d\n",c);
                              else   fprintf(yyout,"    ^CHAR:%c\n",c);
                    yylast = c;
                    return(c);
                }
                if( (j=chktok()) != 0){
                    toklast = j;
                    return(j);
                }
        name:
                yyleng=0;
                while( isalpha(c) || isdigit(c) || c=='_' ) {
                        yytext[yyleng++] = c; c = yysbuf[++yysptr];
                }
                yytext[yyleng] = '\0';
                if(bug)fprintf(yyout,"    ^tok:NAME\n");
                if( toklast==MODULE ){
                    toklast = 0;
                    strcpy(modnam, yytext);
                    fprintf(stderr,"module %s\n", modnam);
                }
                if( toklast==PRIMITIVE ){
                    toklast = 0;
                    strcpy(modnam, yytext);
                    fprintf(stderr,"primitive %s\n", modnam);
                }
                strcpy(yylval.s, yytext);
                return(NAME);
         }
         if( isdigit(c) ) {
                yyleng=0;
                while( isdigit(c) ) {
                        yytext[yyleng++] = c; c = yysbuf[++yysptr];
                }
                yytext[yyleng] = '\0';
                if(bug)fprintf(yyout,"    ^tok:NUMBER\n");
                strcpy(yylval.s, yytext);
                return(NUMBER);
         }
         yysptr++; yylast = c;
         if( c=='+' || c=='-' || c=='&' || c=='|' || c=='^' ){
             if(bug) fprintf(yyout,"    ^BIN_OP:%c\n",c);
             return(BIN_OP);
         }
         if( c=='!' || c=='~' ){
             if(bug) fprintf(yyout,"    ^UNARY_OP:%c\n",c);
             return(UNARY_OP);
         }
         if(bug)
             if(c < ' ')
                fprintf(yyout,"    ^CHAR:%d\n",c);
             else
                fprintf(yyout,"    ^CHAR:%c\n",c);
         return(c);

Quote:
} /* nexttoken */

int chktok()
{
    static struct { char *keyword; int val, tok; } key [] = {
        "module " ,   0, MODULE,
        "endmodule" , 0, ENDMODULE,
        "primitive ", 0, PRIMITIVE,
        "endprimitive",0,ENDPRIM,
        "input "    , 0, INPUT,
        "output "   , 0, OUTPUT,
        "inout "    , 0, INOUT,
        "assign "   , 0, ASSIGN,
        "wire "     , 0, NETTYPE,
        "triand "   , 1, NETTYPE,
        "trior "    , 2, NETTYPE,
        "tri1 "     , 3, NETTYPE,
        "tri "      , 4, NETTYPE,
        "supply0 "  , 5, NETTYPE,
        "supply1 "  , 6, NETTYPE,
        "wor "      , 7, NETTYPE,
        "trireg "   , 8, NETTYPE,
        "supply0 "  , 0, STRENGTH0,
        "strong0 "  , 1, STRENGTH0,
        "pull0 "    , 2, STRENGTH0,
        "weak0 "    , 3, STRENGTH0,
        "highz0 "   , 4, STRENGTH0,
        "supply1 "  , 0, STRENGTH1,
        "strong1 "  , 1, STRENGTH1,
        "pull1 "    , 2, STRENGTH1,
        "weak1 "    , 3, STRENGTH1,
        "highz1 "   , 4, STRENGTH1,
        "parameter ", 0, PARAMETER,
        "reg "            , 0, REG,
        "time "           , 0, TIME,
        "integer "  , 0, INTEGER,
        "real "     , 0, REAL,
        "event "    , 0, EVENT,
        "defparam " , 0, DEFPARAM,
        "and "            , 0, GATETYPE,
        "nand "     , 1, GATETYPE,
        "or "             , 2, GATETYPE,
        "nor "      , 3, GATETYPE,
        "xor "            , 4, GATETYPE,
        "xnor "     , 5, GATETYPE,
        "buf "            , 6, GATETYPE,
        "tran "     , 7, GATETYPE,
        "table "    , 0, TABLE,
        "endtable"  , 0, ENDTABLE,
        "initial "  , 0, INITIAL,
        NULL, 0, 0
        };
    int save, i, j ;
    char        *s;

    for( j=0 ; (s=key[j].keyword) != NULL ; j++) {
        save = yysptr; yyleng = 0;
        while( *s == yysbuf[yysptr++] && *s )
            yytext[yyleng++] = *s++;
        if(*s == '\0'){
            yytext[yyleng] = '\0';
            yysptr--;
            if(bug){
                for( i=yysptr-1 ; i>0 ; i-- )out(' ');
                fprintf(yyout,"    ^tok:%s\n",yytext);
            }
            yylval.i = key[j].val;
            return(key[j].tok);
        }
        yysptr = save;
    }
    return(0);

Quote:
}

yyerror(s)
char    *s;
{
    int  i;

    fprintf(stderr,"%s error on line %d\n",s,yylineno);
    fprintf(stderr,"%s\n", yysbuf);
    for( i=yysptr ; i>0 ; i-- )out(' ');
    fprintf(stderr,"^\n");

Quote:
}

char *strsave(s)
char *s;
{
    char *p, *malloc();

    if((p = malloc(strlen(s)+1)) != NULL) strcpy(p,s);
    if( p==NULL)err("out of malloc space");
    return(p);

Quote:
}

err(s,t)
char *s,*t;
{
    fprintf(stderr,s,t); fprintf(stderr,"\n");
    exit(1);
Quote:
}


chmod 644 hdl.y

echo x - makefile

CFLAGS = -O

all:    hdl

hdl.o : hdl.y
        yacc -tv $*.y
        mv y.tab.c $*.c
        cc $(CFLAGS) -c $*.c

        cc $(CFLAGS) -c $*.c

hdl:    hdl.o
        cc $(CFLAGS) -o hdl hdl.o
        rm hdl.o

chmod 644 makefile

echo x - s.g

module rpl_sub_n5_3 ( A, B, SUM );
input  [4:0] A;
input  [4:0] B;
output [4:0] SUM;
    wire \B[3] , n50, n51, n52, n53, n40, n54, n41, n55, n42, n43, n44, n45,
        n46, n47, n48, n49, n38, n39;
    EXNORA U7 ( .X(SUM[1]), .A(n48), .B(n54) );
    EXNORA U8 ( .X(SUM[3]), .A(n41), .B(n47) );
    INVB U9 ( .X(n46), .A(B[1]) );
    AO21H U20 ( .X(n38), .A(n50), .B(n54), .C(n39) );
    AOI21H U21 ( .X(SUM[4]), .A(n47), .B(n38), .C(n49) );
    NAN2H U22 ( .X(n40), .A(n45), .B(n42) );
    AOI21H U23 ( .X(n41), .A(n50), .B(n54), .C(n40) );
    AOI22 U10 ( .X(n44), .A(n54), .B(n55), .C(n46), .D(A[1]) );
    OA21H U24 ( .X(n50), .A(A[0]), .B(n52), .C(n53) );
    NAN2B U11 ( .X(n42), .A(n43), .B(A[2]) );
    OR2H U25 ( .X(n55), .A(n52), .B(A[0]) );
    NAN3H U12 ( .X(n45), .A(A[1]), .B(n53), .C(n46) );
    INVB U13 ( .X(n51), .A(A[3]) );
    EXNORA U14 ( .X(n53), .A(A[2]), .B(B[2]) );
    INVB U15 ( .X(n43), .A(B[2]) );
    INVB U16 ( .X(n48), .A(n55) );
    AO21H U17 ( .X(SUM[0]), .A(A[0]), .B(n52), .C(n48) );
    INVB U18 ( .X(n52), .A(B[0]) );
    NOR2B U19 ( .X(n49), .A(n51), .B(\B[3] ) );
    BUF2 U2 ( .X(\B[3] ), .A(B[3]) );
    EXNORA U3 ( .X(SUM[2]), .A(n44), .B(n53) );
    EXNORH U4 ( .X(n54), .A(A[1]), .B(B[1]) );
    NAN2B U5 ( .X(n39), .A(n45), .B(n42) );
    EXORA U6 ( .X(n47), .A(\B[3] ), .B(n51) );

chmod 644 s.g

echo x - b.g

module wrtgraycntr ( count, cnt_en, fifo_disable, anyreset, clock, sqo, sdi,
    se );
output [4:0] count;
input  cnt_en, fifo_disable, anyreset, clock, sdi, se;
output sqo;
    assign n45 = (n41 & ~n43);
    assign n47 = (n45 & n46);
    assign n48 = (n45 & ~n46);
    \**FFGEN**  \next_count_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n142[4] ), .force_01(\n146[4] ), .force_10(\n145[4] ),
        .force_11(\next_count141[4] ), .Q(\next_count[4] ) );
    \**FFGEN**  \next_count_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n142[3] ), .force_01(\n146[3] ), .force_10(\n145[3] ),
        .force_11(\next_count141[3] ), .Q(\next_count[3] ) );
    \**FFGEN**  \next_count_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n142[2] ), .force_01(\n146[2] ), .force_10(\n145[2] ),
        .force_11(\next_count141[2] ), .Q(\next_count[2] ) );
    \**FFGEN**  \next_count_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n142[1] ), .force_01(\n146[1] ), .force_10(\n145[1] ),
        .force_11(\next_count141[1] ), .Q(\next_count[1] ) );
    \**FFGEN**  \next_count_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n142[0] ), .force_01(\n146[0] ), .force_10(\n145[0] ),
        .force_11(\next_count141[0] ), .Q(\next_count[0] ) );
    assign n250 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n118 = n252;
    assign n252 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n115 = n254;
    assign n254 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n133 = n242;
    assign n112 = n256;
    assign n242 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n37 = n139;
    assign n130 = n244;
    assign n256 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n139 = (~(anyreset ^ 1'b1));
    assign n244 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n109 = n258;
    assign \n145[4]  = (\next_count141[4]  & \n142[4] );
    assign \n145[3]  = (\next_count141[3]  & \n142[3] );
    assign \n145[2]  = (\next_count141[2]  & \n142[2] );
    assign \n145[1]  = (\next_count141[1]  & \n142[1] );
    assign \n145[0]  = (\next_count141[0]  & \n142[0] );
    assign \n146[4]  = (~\next_count141[4]  & \n142[4] );
    assign \n146[3]  = (~\next_count141[3]  & \n142[3] );
    assign \n146[2]  = (~\next_count141[2]  & \n142[2] );
    assign \n146[1]  = (~\next_count141[1]  & \n142[1] );
    assign \n146[0]  = (~\next_count141[0]  & \n142[0] );
    assign n258 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n127 = n246;
    assign n246 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n125 = (n123 & n124);
    assign n106 = n260;
    assign n124 = n248;
    assign n126 = (n123 & ~n124);
    SELECT_OP U74 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2({
        Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0,
        Logic0, Logic1, Logic1}), .DATA4({Logic0, Logic0, Logic0, Logic1,
        Logic0}), .DATA5({Logic0, Logic0, Logic1, Logic1, Logic0}), .DATA6({
        Logic0, Logic0, Logic1, Logic1, Logic1}), .DATA7({Logic0, Logic0,
        Logic1, Logic0, Logic1}), .DATA8({Logic0, Logic0, Logic1, Logic0,
        Logic0}), .DATA9({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA10({
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA11({Logic0, Logic1,
        Logic1, Logic1, Logic1}), .DATA12({Logic0, Logic1, Logic1, Logic1,
        Logic0}), .DATA13({Logic0, Logic1, Logic0, Logic1, Logic0}), .DATA14({
        Logic0, Logic1, Logic0, Logic1, Logic1}), .DATA15({Logic0, Logic1,
        Logic0, Logic0, Logic1}), .DATA16({Logic0, Logic1, Logic0, Logic0,
        Logic0}), .DATA17({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA18({
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic1,
        Logic0, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic0, Logic1,
        Logic0}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic0}), .DATA22({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1,
        Logic1, Logic0, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic0,
        Logic0}), .DATA25({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA26({
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA27({Logic1, Logic0,
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic0, Logic1, Logic1,
        Logic0}), .DATA29({Logic1, Logic0, Logic0, Logic1, Logic0}), .DATA30({
        Logic1, Logic0, Logic0, Logic1, Logic1}), .DATA31({Logic1, Logic0,
        Logic0, Logic0, Logic1}), .DATA32({Logic1, Logic0, Logic0, Logic0,
        Logic0}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA34({
        n218, n222, count[2], count[1], count[0]}), .CONTROL1(n38), .CONTROL2(
        n44), .CONTROL3(n47), .CONTROL4(n50), .CONTROL5(n53), .CONTROL6(n56),
        .CONTROL7(n59), .CONTROL8(n62), .CONTROL9(n65), .CONTROL10(n68),
        .CONTROL11(n71), .CONTROL12(n74), .CONTROL13(n77), .CONTROL14(n80),
        .CONTROL15(n83), .CONTROL16(n86), .CONTROL17(n89), .CONTROL18(n92),
        .CONTROL19(n95), .CONTROL20(n98), .CONTROL21(n101), .CONTROL22(n104),
        .CONTROL23(n107), .CONTROL24(n110), .CONTROL25(n113), .CONTROL26(n116),
        .CONTROL27(n119), .CONTROL28(n122), .CONTROL29(n125), .CONTROL30(n128),
        .CONTROL31(n131), .CONTROL32(n134), .CONTROL33(n137), .CONTROL34(n42),
        .Z({\next_count141[4] , \next_count141[3] , \next_count141[2] ,
        \next_count141[1] , \next_count141[0] }) );
    assign n248 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n128 = (n126 & n127);
    assign n40 = n216;
    assign n216 = (~(fifo_disable ^ 1'b0));
    assign n129 = (n126 & ~n127);
    assign n110 = (n108 & n109);
    assign n120 = (n117 & ~n118);
    assign n91 = n270;
    assign n81 = (n78 & ~n79);
    assign n65 = (n63 & n64);
    assign n105 = (n102 & ~n103);
    assign n76 = n280;
    assign n266 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n86 = (n84 & n85);
    assign n66 = (n63 & ~n64);
    assign n107 = (n105 & n106);
    assign n97 = n266;
    assign n87 = (n84 & ~n85);
    assign n278 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n68 = (n66 & n67);
    assign n264 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n79 = n278;
    assign n108 = (n105 & ~n106);
    assign n89 = (n87 & n88);
    assign n50 = (n48 & n49);
    assign n69 = (n66 & ~n67);
    assign n100 = n264;
    assign n276 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n61 = n290;
    assign n51 = (n48 & ~n49);
    assign n90 = (n87 & ~n88);
    assign n71 = (n69 & n70);
    assign n53 = (n51 & n52);
    assign n262 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n72 = (n69 & ~n70);
    assign n82 = n276;
    assign n92 = (n90 & n91);
    assign n288 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n74 = (n72 & n73);
    assign n54 = (n51 & ~n52);
    assign n103 = n262;
    assign n93 = (n90 & ~n91);
    assign n64 = n288;
    assign n274 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n46 = n300;
    assign n75 = (n72 & ~n73);
    assign n56 = (n54 & n55);
    assign n286 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n260 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n85 = n274;
    assign n57 = (n54 & ~n55);
    assign n67 = n286;
    assign n298 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n77 = (n75 & n76);
    assign n272 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n78 = (n75 & ~n76);
    assign n88 = n272;
    assign n49 = n298;
    assign n284 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n59 = (n57 & n58);
    assign n296 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n270 = (~(count[4] ^ 1'b1) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n70 = n284;
    assign n60 = (n57 & ~n58);
    assign n282 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n52 = n296;
    assign n62 = (n60 & n61);
    assign n63 = (n60 & ~n61);
    assign n73 = n282;
    assign n55 = n294;
    assign n280 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b1) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b0));
    assign n292 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b1) & ~(count[0] ^ 1'b1));
    assign n58 = n292;
    assign n290 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b1
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    assign n302 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b0));
    assign n43 = n302;
    assign n300 = (~(count[4] ^ 1'b0) & ~(count[3] ^ 1'b0) & ~(count[2] ^ 1'b0
        ) & ~(count[1] ^ 1'b0) & ~(count[0] ^ 1'b1));
    dff_5 cntr ( .q(count), .sqo(sqo), .d({\next_count[4] , \next_count[3] ,
        \next_count[2] , \next_count[1] , \next_count[0] }), .clk(clock),
        .sdi(sdi), .se(se), .e1(clk_en), .e2(Logic1) );
    assign Logic0 = 1'b0;
    assign Logic1 = 1'b1;
    assign clk_en = (anyreset | cnt_en);
    assign n38 = n37;
    assign n39 = ~n37;
    assign n41 = (n39 & n40);
    assign n42 = (n39 & ~n40);
    assign n44 = (n41 & n43);
endmodule

module infifoctl ( fifofullNS, IFNE, load_fifo, fifoVld, rdy4fifoData,
    fifoUnld, aaaclk, zzclk, fifo_disable, IFCount, aaareset, Level1_ddd,
    Level2_ddd, zzreset, Level1, Level2, Ssdi, se, Usdi, Ssqo, Usqo,
    latchFifoWord, readFifoWord );
output [4:0] IFCount;
output [15:0] latchFifoWord;
output [8:0] readFifoWord;
input  load_fifo, rdy4fifoData, aaaclk, zzclk, fifo_disable, aaareset,
    Level1_ddd, Level2_ddd, zzreset, Level1, Level2, Ssdi, se, Usdi;
output fifofullNS, IFNE, fifoVld, fifoUnld, Ssqo, Usqo;
    AO22H U408 ( .X(n531), .A(\RDcntNotBuffed[0] ), .B(n1500), .C(n1599), .D(
        n1611) );
    OA21H U407 ( .X(n1612), .A(n1654), .B(n1608), .C(n1656) );
    OAI211H U406 ( .X(n1613), .A(n1660), .B(n1655), .C(n1612), .D(n1496) );
    AO22H U405 ( .X(n536), .A(\RDcntNotBuffed[2] ), .B(n1500), .C(n1599), .D(
        n1613) );
    OA22H U404 ( .X(n1672), .A(n1712), .B(n1762), .C(n1656), .D(n1704) );
    NAN5H U403 ( .X(n1673), .A(n1669), .B(n1607), .C(n1653), .D(n1672), .E(
        n1702) );
    INV8B U402 ( .X(fifofullNS), .A(n1740) );
    NOR2B U401 ( .X(\latchFifoWordNS[0] ), .A(n1545), .B(n1554) );
    OR2H U329 ( .X(n1728), .A(n1515), .B(n1615) );
    OR2H U446 ( .X(n1579), .A(n1750), .B(n1548) );
    EXNORA U328 ( .X(n1522), .A(n1442), .B(\WRcntsync2[0] ) );
    AO22H U445 ( .X(n971), .A(n1589), .B(n1584), .C(\WRcntNotBuffed[0] ), .D(
        n1586) );
    OR2H U327 ( .X(n1516), .A(n1517), .B(n1558) );
    OR2H U444 ( .X(n1585), .A(n1565), .B(n1624) );
    AND3 U326 ( .X(n1524), .A(n1518), .B(n1520), .C(n1522) );
    AO22H U443 ( .X(IFCount[2]), .A(n981), .B(n1588), .C(n1015), .D(n1639) );
    INVB U209 ( .X(n1653), .A(n1662) );
    INVB U325 ( .X(n1543), .A(n1724) );
    OR2H U442 ( .X(n1636), .A(n1615), .B(n1517) );
    AND3 U208 ( .X(n1662), .A(n1696), .B(\RDcntNotBuffed[4] ), .C(
        \RDcntNotBuffed[0] ) );
    OR2H U324 ( .X(n1519), .A(n1616), .B(n1624) );
    BUF8 infifoclkEnableBuffer ( .X(n661), .A(n650) );
    AOI22 U441 ( .X(n1641), .A(n1643), .B(n1644), .C(n1533), .D(n1693) );
    INVB U207 ( .X(n1595), .A(n1533) );
    AND3 U323 ( .X(n1526), .A(n1730), .B(n1731), .C(n1524) );
    OR2H U440 ( .X(n1637), .A(n1551), .B(n1687) );
    AND3 U206 ( .X(n1533), .A(\WRcntNotBuffed[3] ), .B(\WRcntNotBuffed[0] ),
        .C(\WRcntNotBuffed[4] ) );
    INVB U322 ( .X(n1628), .A(n1581) );
    INVB U205 ( .X(n1701), .A(n1705) );
    NOR2B U321 ( .X(fifoValid), .A(n1546), .B(n1526) );
    AND3 U204 ( .X(n1705), .A(n1698), .B(n1696), .C(\RDcntNotBuffed[0] ) );
    INVB U489 ( .X(n1534), .A(\WRcntNotBuffed[3] ) );
    OR3 U320 ( .X(n1528), .A(\WRcntNotBuffed[4] ), .B(\WRcntNotBuffed[3] ),
        .C(n1530) );
    OR3 U203 ( .X(n1757), .A(\WRcntNotBuffed[0] ), .B(n1534), .C(n1593) );
    OR3 U488 ( .X(n1695), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[4] ),
        .C(n1534) );
    OR3 U202 ( .X(n1751), .A(n1534), .B(\WRcntNotBuffed[4] ), .C(n1530) );
    NAN2H U487 ( .X(n1569), .A(n1565), .B(n1616) );
    AO22H U201 ( .X(n889), .A(n1593), .B(n1586), .C(n1589), .D(n1512) );
    INVB U486 ( .X(n1593), .A(\WRcntNotBuffed[4] ) );
    NAN2H U369 ( .X(n1655), .A(\RDcntNotBuffed[1] ), .B(\RDcntNotBuffed[2] )
         );
    AO22H U200 ( .X(n666), .A(n1500), .B(n1698), .C(n1599), .D(n1673) );
    OR2H U485 ( .X(n1622), .A(n1515), .B(n1472) );
    NAN2H U368 ( .X(n1721), .A(fifo_disable), .B(n1722) );
    OR3 U484 ( .X(n1648), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[3] ),
        .C(n1593) );
    INVB U367 ( .X(n1578), .A(n1760) );
    INVB U483 ( .X(n1668), .A(n1686) );
    OR3H U249 ( .X(n1527), .A(\RDcntsync2[4] ), .B(\RDcntsync2[3] ), .C(n1499)
         );
    OR2H U366 ( .X(n1654), .A(\RDcntNotBuffed[2] ), .B(n1658) );
    OR2H U482 ( .X(n1571), .A(n1682), .B(n1688) );
    NOR2B U248 ( .X(\latchFifoWordNS[9] ), .A(n1758), .B(n1752) );
    INVB U365 ( .X(n1582), .A(n1761) );
    OR3 U481 ( .X(n1753), .A(\WRcntNotBuffed[3] ), .B(n1593), .C(n1530) );
    NAN2B U247 ( .X(n1501), .A(n1615), .B(n1531) );
    NOR2B U364 ( .X(n1725), .A(n1723), .B(n1721) );
    AND3 U480 ( .X(n1572), .A(n1695), .B(n1648), .C(n1574) );
    INV3 U246 ( .X(n1717), .A(n1017) );
    INVB U363 ( .X(n1676), .A(n1754) );
    INVB U129 ( .X(n1425), .A(\RDcntsync1[3] ) );
    NAN2H U245 ( .X(n1718), .A(n1465), .B(n1471) );
    MUX2IH U362 ( .XB(n1727), .A(n1590), .B(n1725), .SL(n1666) );
    INVB U128 ( .X(n1424), .A(n1423) );
    INVB U244 ( .X(n1523), .A(n1473) );
    OAI21H U361 ( .X(IFCount[0]), .A(n1685), .B(n1729), .C(n1727) );
    INVB U127 ( .X(n1423), .A(\RDcntsync1[2] ) );
    INV2B U243 ( .X(\WRcnt[2] ), .A(n1463) );
    INVB U360 ( .X(n1532), .A(n1528) );
    INVB U126 ( .X(n1422), .A(n1421) );
    INV8 U241 ( .X(n1615), .A(n1460) );
    INVB U123 ( .X(n1419), .A(\RDcntsync1[0] ) );
    INV4 U240 ( .X(n1469), .A(n1484) );
    AOI22 U289 ( .X(n1506), .A(n1712), .B(n1706), .C(n1762), .D(n1669) );
    OR4 U288 ( .X(n1508), .A(n1597), .B(n1664), .C(n1502), .D(n1506) );
    NAN2H word14Cntl ( .X(\latchFifoWordNB[14] ), .A(\latchFifoWordTS[14] ),
        .B(delayAndBufaaaclk) );
    OA22H U287 ( .X(n1510), .A(n1754), .B(n1648), .C(n1761), .D(n1695) );
    EXNORA U286 ( .X(n1745), .A(n1507), .B(\WRcnt[3] ) );
    BUF2C U284 ( .X(n1459), .Y(\RDcntsync2[4] ), .A(n1495) );
    INV3B U167 ( .X(\WRcnt[0] ), .A(n1461) );
    OR3H U283 ( .X(n1551), .A(n1455), .B(n1457), .C(n1563) );
    NAN2B U281 ( .X(n1600), .A(n1683), .B(n1559) );
    INV2B U164 ( .X(n1472), .A(n1475) );
    INV3 U280 ( .X(n1340), .A(n1738) );
    INV4 U163 ( .X(n1461), .A(n1462) );
    INV3B U162 ( .X(n1487), .A(n1535) );
    BUF2C U161 ( .X(n1471), .Y(n1558), .A(n1472) );
    BUF2C U160 ( .X(n1530), .Y(\WRcntNotBuffed[0] ), .A(n1493) );
    BUF8 ctlScanBuf ( .X(seBuf), .A(se) );
    DFF1 \infifod1/d0  ( .Q(\WRcntsync1NB[0] ), .SQ(Usq3), .D(\WRcnt[0] ),
        .CK(zzclk), .SD(n1024), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    INV4B readBuffer8 ( .X(readFifoWord[8]), .A(\readFifoWordNB[8] ) );
    INV4B readBuffer7 ( .X(readFifoWord[7]), .A(\readFifoWordNB[7] ) );
    INV4B readBuffer6 ( .X(readFifoWord[6]), .A(\readFifoWordNB[6] ) );
    INV4B readBuffer5 ( .X(readFifoWord[5]), .A(\readFifoWordNB[5] ) );
    INV4B readBuffer4 ( .X(readFifoWord[4]), .A(\readFifoWordNB[4] ) );
    assign n544 = 1'b1;
    assign Logic1 = 1'b1;
    INV4B readBuffer3 ( .X(readFifoWord[3]), .A(\readFifoWordNB[3] ) );
    INV4B readBuffer2 ( .X(readFifoWord[2]), .A(\readFifoWordNB[2] ) );
    INV4B readBuffer1 ( .X(readFifoWord[1]), .A(\readFifoWordNB[1] ) );
    INV4B readBuffer0 ( .X(readFifoWord[0]), .A(\readFifoWordNB[0] ) );
    DFF4 \infifod1/d0/d0  ( .Q0(\latchFifoWordTS[11] ), .Q1(
        \latchFifoWordTS[10] ), .Q2(\latchFifoWordTS[9] ), .Q3(
        \latchFifoWordTS[8] ), .SQ3(n716), .D0(\latchFifoWordNS[11] ), .D1(
        \latchFifoWordNS[10] ), .D2(\latchFifoWordNS[9] ), .D3(
        \latchFifoWordNS[8] ), .CK(aaaclk), .SD0(n715), .SE(seBuf), .E1(Logic1
        ), .E2(Logic1) );
    BUF2B rdcnt4buffer ( .X(\RDcnt[4] ), .A(\RDcntNotBuffed[4] ) );
    DFF4 \infifod0/d0/d01  ( .Q0(n1494), .Q1(\RDcntsync2[2] ), .Q2(
        \RDcntsync2[1] ), .Q3(n1492), .SQ3(n772), .D0(n1426), .D1(n1424), .D2(
        n1422), .D3(n1420), .CK(aaaclk), .SD0(Ssq0), .SE(seBuf), .E1(Logic1),
        .E2(Logic1) );
    DFF4 infifod0 ( .Q0(\WRcntsync1[2] ), .Q1(\WRcntsync2[2] ), .Q2(
        \WRcntsync1[1] ), .Q3(\WRcntsync2[1] ), .SQ3(Usq2), .D0(n1455), .D1(
        n1436), .D2(n1490), .D3(n1434), .CK(zzclk), .SD0(Usq1), .SE(seBuf),
        .E1(Logic1), .E2(Logic1) );
    NAN2H word1Cntl ( .X(\latchFifoWordNB[1] ), .A(\latchFifoWordTS[1] ), .B(
        delayAndBufaaaclk) );
    NAN2H word3Cntl ( .X(\latchFifoWordNB[3] ), .A(\latchFifoWordTS[3] ), .B(
        delayAndBufaaaclk) );
    DFF1 \infifod1/d1/d01  ( .Q(\RDcntsync1[4] ), .SQ(Ssq1), .D(\RDcnt[4] ),
        .CK(aaaclk), .SD(n769), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    DFF4 infifod01 ( .Q0(\WRcntsync1[4] ), .Q1(\WRcntsync2[4] ), .Q2(
        \WRcntsync1[3] ), .Q3(\WRcntsync2[3] ), .SQ3(Usq1), .D0(\WRcnt[4] ),
        .D1(n1432), .D2(\WRcnt[3] ), .D3(n1430), .CK(zzclk), .SD0(Usq0),
        .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    DFF1 infifod02 ( .Q(fifofull), .SQ(Ssq2), .D(fifofullNS), .CK(aaaclk),
        .SD(Ssq1), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    DFF1 infifod03 ( .Q(fifoUnlded), .SQ(UsqoNotBuffed), .D(n199), .CK(zzclk
        ), .SD(Usq3), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    DFF1 infifod04 ( .Q(\readFifoWordNB[8] ), .SQ(n547), .D(n612), .CK(zzclk
        ), .SD(n546), .SE(seBuf), .E1(n661), .E2(n544) );
    NAN2B U439 ( .X(n1638), .A(n1640), .B(n1642) );
    OA21H U438 ( .X(n1645), .A(n1647), .B(n1753), .C(n1646) );
    NAN2H U437 ( .X(n1644), .A(n1759), .B(n1760) );
    INVB U319 ( .X(n1652), .A(n1693) );
    OAI211H U436 ( .X(n1651), .A(n1652), .B(n1528), .C(n1641), .D(n1649) );
    NAN3H U318 ( .X(n1468), .A(\RDcntsync2[3] ), .B(n1476), .C(\RDcntsync2[4]
        ) );
    AO22H U435 ( .X(n869), .A(\WRcntNotBuffed[1] ), .B(n1586), .C(n1589), .D(
        n1651) );
    INVB U317 ( .X(n1711), .A(n1700) );
    NAN2H U434 ( .X(n1692), .A(n1751), .B(n1753) );
    OR2H U316 ( .X(n1477), .A(\RDcntsync2[1] ), .B(n1562) );
    OR2H U433 ( .X(n1754), .A(n1480), .B(\WRcntNotBuffed[1] ) );
    INVB U315 ( .X(n1504), .A(n1656) );
    NAN2H U432 ( .X(n1755), .A(n1756), .B(n1757) );
    NAN2B U314 ( .X(n1619), .A(n1622), .B(n1624) );
    OA22H U431 ( .X(n1603), .A(n1687), .B(n1758), .C(n1688), .D(n1758) );
    OA211H U313 ( .X(n1744), .A(n1615), .B(n1564), .C(n1516), .D(n1519) );
    NAN2B U430 ( .X(n1760), .A(\WRcntNotBuffed[1] ), .B(n1480) );
    INVB U312 ( .X(n1591), .A(n1570) );
    NAN2B U311 ( .X(n1627), .A(n1630), .B(n1629) );
    INVB U310 ( .X(n1720), .A(n1529) );
    AOI22 U479 ( .X(n1576), .A(n1582), .B(n1642), .C(n1578), .D(n1580) );
    OAI211H U478 ( .X(n1584), .A(n1572), .B(n1754), .C(n1638), .D(n1576) );
    NAN2H U477 ( .X(n1688), .A(\WRcnt[4] ), .B(\WRcnt[3] ) );
    INVB U359 ( .X(n1643), .A(n1756) );
    INVB U476 ( .X(n1650), .A(n1644) );
    OAI211H U358 ( .X(n1634), .A(n1688), .B(n1551), .C(n1714), .D(n1571) );
    NAN3H U475 ( .X(n1625), .A(\WRcnt[2] ), .B(n1491), .C(\WRcnt[0] ) );
    INVB U357 ( .X(n1607), .A(n1597) );
    INVB U474 ( .X(n1574), .A(n1692) );
    OAI22H U356 ( .X(n1635), .A(n1583), .B(n1634), .C(n1567), .D(n1548) );
    AO321H U473 ( .X(n1542), .A(n1541), .B(n1622), .C(n1560), .D(n1473), .E(
        n1569), .F(n1543) );
    INV2B U239 ( .X(n1470), .A(n1486) );
    INVB U238 ( .X(n1476), .A(n1499) );
    AO21H U355 ( .X(n1732), .A(n1559), .B(n1683), .C(n1688) );
    INVB U472 ( .X(n1580), .A(n1572) );
    INV4 U237 ( .X(n1499), .A(n1492) );
    NOR2H U471 ( .X(n1689), .A(n1015), .B(n1014) );
    NAN2B U354 ( .X(n1674), .A(n1695), .B(n1756) );
    BUF3 U236 ( .X(n1683), .A(n1482) );
    OA22H U470 ( .X(n1544), .A(n1591), .B(n1615), .C(n1523), .D(n1565) );
    AND3 U353 ( .X(n1733), .A(n1637), .B(n1575), .C(n1732) );
    INV4 U235 ( .X(n1490), .A(n1563) );
    AOI22 U352 ( .X(n1675), .A(n1582), .B(n1694), .C(n1676), .D(n1674) );
    EXORA U234 ( .X(n1749), .A(n1562), .B(\WRcnt[2] ) );
    NAN4H U351 ( .X(n1677), .A(n1751), .B(n1595), .C(n1697), .D(n1675) );
    EXNORA U233 ( .X(n1748), .A(\WRcnt[4] ), .B(\RDcntsync2[4] ) );
    ANDOI22H U350 ( .X(n1736), .A(n1734), .B(n1345), .C(n1559), .D(n1687) );
    DFF4 \infifod1/d01  ( .Q0(\readFifoWordNB[7] ), .Q1(\readFifoWordNB[6] ),
        .Q2(\readFifoWordNB[5] ), .Q3(\readFifoWordNB[4] ), .SQ3(Usq0), .D0(
        n514), .D1(n617), .D2(n513), .D3(n616), .CK(zzclk), .SD0(n1047),
        .SE(seBuf), .E1(n661), .E2(n544) );
    INVB U232 ( .X(n1491), .A(n1563) );
    DFF1 \infifod1/d02  ( .Q(\RDcntNotBuffed[4] ), .SQ(n546), .D(n666), .CK(
        zzclk), .SD(n1072), .SE(seBuf), .E1(n661), .E2(n544) );
    INVB U231 ( .X(n1457), .A(n1461) );
    DFF1 \infifod1/d03  ( .Q(\WRcntNotBuffed[4] ), .SQ(Ssq0), .D(n889), .CK(
        aaaclk), .SD(n1089), .SE(seBuf), .E1(n935), .E2(n840) );
    INV2B U230 ( .X(n1556), .A(n1458) );
    NOR2B U399 ( .X(\latchFifoWordNS[1] ), .A(n1758), .B(n1554) );
    AO21H U398 ( .X(n650), .A(rdy4fifoData), .B(fifoValid), .C(n1546) );
    NAN3H U397 ( .X(n1547), .A(n1482), .B(n1479), .C(n1483) );
    NOR2B U396 ( .X(n1553), .A(n1492), .B(n1459) );
    AND3H U279 ( .X(n1738), .A(n1733), .B(n1635), .C(n1736) );
    OR2H U395 ( .X(n1646), .A(n1648), .B(n1650) );
    NOR2B U278 ( .X(\latchFifoWordNS[13] ), .A(n1752), .B(n1683) );
    NAN2H U394 ( .X(n1693), .A(n1761), .B(n1760) );
    NAN2B U277 ( .X(n1759), .A(\WRcntNotBuffed[2] ), .B(\WRcntNotBuffed[1] )
         );
    EXNORA U159 ( .X(n1605), .A(n1206), .B(n1366) );
    OR3 U393 ( .X(n1669), .A(\RDcntNotBuffed[0] ), .B(n1698), .C(n1696) );
    AND4H U276 ( .X(n1535), .A(n1716), .B(n1744), .C(n1741), .D(n1746) );
    INVB U158 ( .X(n1449), .A(n1661) );
    NAN2B U392 ( .X(n1697), .A(n1694), .B(n1644) );
    BUF8 clkBuf ( .X(delayAndBufaaaclk), .A(delayedaaaclk) );
    NOR2B U275 ( .X(\latchFifoWordNS[12] ), .A(n1752), .B(n1682) );
    MUX2IH U157 ( .XB(n1680), .A(n1679), .B(n978), .SL(n1668) );
    INVB U391 ( .X(n1698), .A(\RDcntNotBuffed[4] ) );
    OR3H U274 ( .X(n1624), .A(\RDcntsync2[4] ), .B(\RDcntsync2[0] ), .C(n1507)
         );
    EXNORH U156 ( .X(n1686), .A(n1626), .B(n1633) );
    NAN2H U390 ( .X(n1699), .A(n1712), .B(n1654) );
    NAN2B U273 ( .X(n1734), .A(n1625), .B(n1758) );
    OR3H U155 ( .X(n1750), .A(\WRcnt[0] ), .B(n1684), .C(n1563) );
    NOR2B U272 ( .X(\latchFifoWordNS[15] ), .A(n1752), .B(n1625) );
    INV3 U154 ( .X(\RDcntNotBuffed[0] ), .A(n1441) );
    NAN3H U271 ( .X(n1479), .A(\WRcnt[2] ), .B(n1491), .C(\WRcnt[0] ) );
    INVB U153 ( .X(n1441), .A(n1442) );
    INV4 U270 ( .X(n1562), .A(\RDcntsync2[2] ) );
    OR2H U152 ( .X(n1440), .A(n1590), .B(n1620) );
    INVB U151 ( .X(n1586), .A(n1440) );
    OR2H U150 ( .X(n1439), .A(n1590), .B(n1546) );
    AO22H U199 ( .X(n854), .A(n1534), .B(n1586), .C(n1589), .D(n1677) );
    AO22H U198 ( .X(n646), .A(n1500), .B(n1696), .C(n1599), .D(n1508) );
    NAN3H U194 ( .X(n1206), .A(n1598), .B(n1511), .C(n1542) );
    NAN3H U193 ( .X(n1451), .A(n1631), .B(n1564), .C(n1521) );
    DFF1 \infifod1/d0/d01  ( .Q(\RDcntsync1[3] ), .SQ(n769), .D(\RDcnt[3] ),
        .CK(aaaclk), .SD(n780), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    NAN3H U192 ( .X(n1666), .A(n1686), .B(n1449), .C(n1013) );
    EXNORA U191 ( .X(n1659), .A(n1738), .B(n1486) );
    NOR2B U190 ( .X(n1448), .A(n1581), .B(n1540) );
    NAN2H word8Cntl ( .X(\latchFifoWordNB[8] ), .A(\latchFifoWordTS[8] ), .B(
        delayAndBufaaaclk) );
    NAN2H word6Cntl ( .X(\latchFifoWordNB[6] ), .A(\latchFifoWordTS[6] ), .B(
        delayAndBufaaaclk) );
    NAN2H word11Cntl ( .X(\latchFifoWordNB[11] ), .A(\latchFifoWordTS[11] ),
        .B(delayAndBufaaaclk) );
    BUF2B rdcnt3buffer ( .X(\RDcnt[3] ), .A(\RDcntNotBuffed[3] ) );
    BUF2B rdcnt1buffer ( .X(\RDcnt[1] ), .A(\RDcntNotBuffed[1] ) );
    BUF8 fifuldBuf ( .X(fifoUnld), .A(fifoUnlded) );
    AND2H U506 ( .X(n199), .A(fifoVld), .B(rdy4fifoData) );
    assign n1764 = 1'b0;
    assign n1763 = 1'b0;
    AND4H U503 ( .X(n1509), .A(n1521), .B(n1629), .C(n1728), .D(n1718) );
    OA211H U502 ( .X(n1511), .A(n1527), .B(n1565), .C(n1525), .D(n1509) );
    NAN2B U501 ( .X(n1549), .A(n1570), .B(n1529) );
    NOR2B U500 ( .X(\latchFifoWordNS[2] ), .A(n1551), .B(n1554) );
    NAN6CH U429 ( .X(n1366), .A(n1637), .B(n1577), .C(n1573), .D(n1601), .E(
        n1635), .F(n1603) );
    OR2H U428 ( .X(n1761), .A(\WRcntNotBuffed[1] ), .B(\WRcntNotBuffed[2] ) );
    NAN5H U427 ( .X(n1140), .A(n1728), .B(n1557), .C(n1523), .D(n1741), .E(
        n1631) );
    EXNORA U426 ( .X(n1604), .A(n1345), .B(n1140) );
    OR2H U309 ( .X(n1548), .A(n1632), .B(\WRcnt[3] ) );
    INVB U425 ( .X(n1691), .A(load_fifo) );
    OA211H U308 ( .X(n1746), .A(n1527), .B(n1720), .C(n1636), .D(n1585) );
    INVB U424 ( .X(n1632), .A(\WRcnt[4] ) );
    NAN3H U307 ( .X(n1559), .A(n1490), .B(n1684), .C(n1462) );
    INVB U423 ( .X(n1729), .A(n975) );
    AOI21H U306 ( .X(n1739), .A(n1680), .B(n1681), .C(n1713) );
    AND4H U422 ( .X(n1661), .A(n1604), .B(n1605), .C(n1657), .D(n1659) );
    NAN2B U305 ( .X(n1550), .A(n1632), .B(\WRcnt[3] ) );
    INVB U421 ( .X(n1557), .A(n1619) );
    OA21H U304 ( .X(n1536), .A(n1750), .B(n1687), .C(n1575) );
    OR2H U420 ( .X(n1663), .A(n1661), .B(n1020) );
    OR2H U303 ( .X(n1740), .A(n1739), .B(n1737) );
    OR2H U302 ( .X(n1685), .A(fifo_disable), .B(n1686) );
    AO21H U301 ( .X(n1537), .A(n1750), .B(n1683), .C(n1688) );
    OR2H U300 ( .X(n1687), .A(\WRcnt[4] ), .B(\WRcnt[3] ) );
    OR2H U469 ( .X(n1690), .A(n1691), .B(fifofull) );
    OA22H U468 ( .X(n1592), .A(n1616), .B(n1517), .C(n1558), .D(n1624) );
    OR2H U467 ( .X(n1554), .A(n1345), .B(n1690) );
    NAN2H U349 ( .X(n1678), .A(n975), .B(n1668) );
    OA22H U466 ( .X(n1594), .A(n1565), .B(n1515), .C(n1564), .D(n1616) );
    NAN2H U348 ( .X(n1679), .A(n1689), .B(n1717) );
    AO21H U347 ( .X(n1741), .A(n1515), .B(n1560), .C(n1742) );
    INVB U464 ( .X(n1590), .A(fifo_disable) );
    OAI21H U346 ( .X(n1681), .A(n981), .B(n984), .C(n1668) );
    INV4 U229 ( .X(n1515), .A(n1505) );
    OR3 U463 ( .X(n1620), .A(Level1_ddd), .B(aaareset), .C(Level2_ddd) );
    AO21H U345 ( .X(n1735), .A(n1678), .B(n1666), .C(n935) );
    INV2B U228 ( .X(n1486), .A(n1487) );
    AND3 U462 ( .X(n1598), .A(n1516), .B(n1519), .C(n1724) );
    OAI21H U344 ( .X(n1737), .A(n1713), .B(n1665), .C(n1735) );
    EXORA U227 ( .X(n1747), .A(n1476), .B(\WRcnt[0] ) );
    NAN2B U461 ( .X(n1601), .A(n1600), .B(n1345) );
    OR2H U343 ( .X(n1496), .A(n1655), .B(n1497) );
    INVB U226 ( .X(\RDcntsync2[0] ), .A(n1499) );
    INVB U460 ( .X(n1658), .A(\RDcntNotBuffed[1] ) );
    OR3 U342 ( .X(n1630), .A(n1726), .B(\RDcntsync2[3] ), .C(n1503) );
    BUF2C U225 ( .Y(\WRcntNotBuffed[1] ), .A(n1489) );
    INVB U341 ( .X(n1507), .A(\RDcntsync2[3] ) );
    BUF2C U224 ( .Y(n1614), .A(n1468) );
    OR2H U340 ( .X(n1712), .A(\RDcntNotBuffed[1] ), .B(\RDcntNotBuffed[2] ) );
    BUF2C U223 ( .X(n1465), .Y(n1564), .A(n1466) );
    BUF2C U222 ( .X(n1480), .Y(\WRcntNotBuffed[2] ), .A(n1481) );
    EXORA U221 ( .X(n1657), .A(n1377), .B(n1484) );
    INV3 U220 ( .X(n1503), .A(n1501) );
    OR3 U389 ( .X(n1704), .A(\RDcntNotBuffed[3] ), .B(\RDcntNotBuffed[0] ),
        .C(n1698) );
    NAN2H U388 ( .X(n1700), .A(n1656), .B(n1655) );
    INVB U387 ( .X(n1696), .A(\RDcntNotBuffed[3] ) );
    OR3 U269 ( .X(n1517), .A(n1476), .B(\RDcntsync2[4] ), .C(\RDcntsync2[3] )
         );
    AO21H U386 ( .X(n1702), .A(n1669), .B(n1704), .C(n1706) );
    AND2H U268 ( .X(n1475), .A(n1562), .B(\RDcntsync2[1] ) );
    OR3 U385 ( .X(n1762), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[0] ),
        .C(n1696) );
    INV3 U267 ( .X(n1726), .A(n1553) );
    OR3 U384 ( .X(n1667), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[0] ),
        .C(\RDcntNotBuffed[3] ) );
    INVB U266 ( .X(n1473), .A(n1474) );
    NAN2B U383 ( .X(n1708), .A(n1762), .B(n1667) );
    INVB U149 ( .X(n1500), .A(n1439) );
    OR3 U265 ( .X(n1474), .A(n1494), .B(n1556), .C(n1499) );
    AND3 U382 ( .X(n1664), .A(n1698), .B(\RDcntNotBuffed[3] ), .C(
        \RDcntNotBuffed[0] ) );
    OR2H U148 ( .X(n1438), .A(fifo_disable), .B(n1546) );
    INVB U147 ( .X(n1599), .A(n1438) );
    AOI22 U381 ( .X(n1703), .A(n1705), .B(n1699), .C(n1664), .D(n1700) );
    NAN2B U264 ( .X(n1570), .A(n1527), .B(n1614) );
    OR2H U146 ( .X(n1437), .A(fifo_disable), .B(n1620) );
    OR3 U380 ( .X(n1756), .A(\WRcntNotBuffed[0] ), .B(\WRcntNotBuffed[4] ),
        .C(\WRcntNotBuffed[3] ) );
    INV2B U263 ( .X(n1722), .A(n1665) );
    INVB U145 ( .X(n1589), .A(n1437) );
    NAN4H U262 ( .X(n1467), .A(n1544), .B(n1592), .C(n1542), .D(n1596) );
    NAN2H word13Cntl ( .X(\latchFifoWordNB[13] ), .A(\latchFifoWordTS[13] ),
        .B(delayAndBufaaaclk) );
    NAN2H U144 ( .X(n1345), .A(n1548), .B(n1550) );
    INV8B U261 ( .X(n1485), .A(n1488) );
    NAN3H U182 ( .X(n1587), .A(n1686), .B(n1590), .C(n1449) );
    OA211H U181 ( .X(n1443), .A(n1527), .B(n1565), .C(n1525), .D(n1509) );
    NAN2B U180 ( .X(n1529), .A(n1558), .B(n1615) );
    BUF8 fifvldBuf ( .X(fifoVld), .A(fifoValid) );
    DEC8A infifordAddrDec ( .X0(n614), .X1(n511), .X2(n615), .X3(n512), .X4(
        n616), .X5(n513), .X6(n617), .X7(n514), .SL0(n531), .SL1(n644), .SL2(
        n536), .EN(n544) );
    DFF4 \infifod0/d1/d01  ( .Q0(\RDcntsync1[2] ), .Q1(\RDcntsync1[1] ), .Q2(
        \RDcntsync1[0] ), .Q3(n1495), .SQ3(n780), .D0(\RDcnt[2] ), .D1(
        \RDcnt[1] ), .D2(\RDcnt[0] ), .D3(n1428), .CK(aaaclk), .SD0(n772),
        .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    NAN2H word0Cntl ( .X(\latchFifoWordNB[0] ), .A(\latchFifoWordTS[0] ), .B(
        delayAndBufaaaclk) );
    NAN2H word2Cntl ( .X(\latchFifoWordNB[2] ), .A(\latchFifoWordTS[2] ), .B(
        delayAndBufaaaclk) );
    NAN2H word4Cntl ( .X(\latchFifoWordNB[4] ), .A(\latchFifoWordTS[4] ), .B(
        delayAndBufaaaclk) );
    BUF8 IFNEbuffer ( .X(IFNE), .A(IFNEnotBuffed) );
    buf8_16 ltchBuf ( .out(latchFifoWord), .in({\latchFifoWordNB[15] ,
        \latchFifoWordNB[14] , \latchFifoWordNB[13] , \latchFifoWordNB[12] ,
        \latchFifoWordNB[11] , \latchFifoWordNB[10] , \latchFifoWordNB[9] ,
        \latchFifoWordNB[8] , \latchFifoWordNB[7] , \latchFifoWordNB[6] ,
        \latchFifoWordNB[5] , \latchFifoWordNB[4] , \latchFifoWordNB[3] ,
        \latchFifoWordNB[2] , \latchFifoWordNB[1] , \latchFifoWordNB[0] }) );
    INVB U419 ( .X(n1555), .A(n1569) );
    MUX2IH U418 ( .XB(n1665), .A(n994), .B(n1663), .SL(n1686) );
    INVB U417 ( .X(n1631), .A(n1627) );
    INVB U416 ( .X(n1618), .A(n1547) );
    INVB U415 ( .X(n1588), .A(n1685) );
    OR2H U414 ( .X(n1566), .A(n1567), .B(n1550) );
    AND2H U413 ( .X(n1621), .A(n1568), .B(n1688) );
    AND2H U412 ( .X(n1623), .A(n1687), .B(n1618) );
    OA22H U411 ( .X(n1610), .A(n1712), .B(n1497), .C(n1654), .D(n1609) );
    AND3 U410 ( .X(n1583), .A(n1623), .B(n1566), .C(n1621) );
    DLY8 clkDelay ( .X(delayedaaaclk), .A(aaaclk) );
    NAN5H U459 ( .X(n1512), .A(n1753), .B(n1595), .C(n1757), .D(n1510), .E(
        n1646) );
    NAN2H U458 ( .X(n1513), .A(n1640), .B(n1692) );
    NAN2B U457 ( .X(n1514), .A(n1578), .B(n1755) );
    assign n989 = 1'b0;
    AO21H U339 ( .X(n1713), .A(fifo_disable), .B(n1617), .C(n1620) );
    NAN4H U456 ( .X(n1606), .A(n1754), .B(n1513), .C(n1514), .D(n1638) );
    EXORA U338 ( .X(n612), .A(n646), .B(n666) );
    AO22H U455 ( .X(n960), .A(n1589), .B(n1606), .C(\WRcntNotBuffed[2] ), .D(
        n1586) );
    OR2H U337 ( .X(n1714), .A(n1682), .B(n1687) );
    AO22H U454 ( .X(IFCount[1]), .A(n978), .B(n1588), .C(n1014), .D(n1639) );
    EXNORA U336 ( .X(n1730), .A(\RDcntNotBuffed[3] ), .B(\WRcntsync2[3] ) );
    EXNORA U330 ( .X(n1520), .A(\RDcntNotBuffed[2] ), .B(\WRcntsync2[2] ) );
    OA21H U499 ( .X(n1552), .A(n1564), .B(n1555), .C(n1557) );
    OA211H U213 ( .X(n1649), .A(n1751), .B(n1647), .C(n1697), .D(n1645) );
    NOR2B U498 ( .X(\latchFifoWordNS[3] ), .A(n1554), .B(n1559) );
    AND2 U212 ( .X(n1647), .A(n1754), .B(n1759) );
    NAN6CH U497 ( .X(n1560), .Y(n1561), .A(n1517), .B(n1549), .C(n1515), .D(
        n1456), .E(n1552), .F(n1443) );
    AND2 U211 ( .X(n1608), .A(n1667), .B(n1669) );
    OR2H U496 ( .X(n935), .A(n1617), .B(n1620) );
    NAN2H U379 ( .X(n1707), .A(n1708), .B(n1602) );
    AND3 U210 ( .X(n1609), .A(n1762), .B(n1704), .C(n1660) );
    NOR2B U495 ( .X(\latchFifoWordNS[7] ), .A(n1554), .B(n1625) );
    AND3 U378 ( .X(n1597), .A(\RDcntNotBuffed[4] ), .B(\RDcntNotBuffed[3] ),
        .C(\RDcntNotBuffed[0] ) );
    NAN3H U494 ( .X(n1482), .A(n1563), .B(n1455), .C(\WRcnt[0] ) );
    NAN2B U377 ( .X(n1602), .A(n1654), .B(n1655) );
    OR3 U259 ( .X(n1531), .A(n1726), .B(\RDcntsync2[3] ), .C(n1472) );
    OR2H U493 ( .X(n1521), .A(n1565), .B(n1468) );
    NAN2H U376 ( .X(n1656), .A(n1658), .B(\RDcntNotBuffed[2] ) );
    DFF4 \infifod0/d01  ( .Q0(\readFifoWordNB[3] ), .Q1(\readFifoWordNB[2] ),
        .Q2(\readFifoWordNB[1] ), .Q3(\readFifoWordNB[0] ), .SQ3(n1047), .D0(
        n512), .D1(n615), .D2(n511), .D3(n614), .CK(zzclk), .SD0(n547), .SE(
        seBuf), .E1(n661), .E2(n544) );
    NAN2B U258 ( .X(n1466), .A(n1553), .B(\RDcntsync2[3] ) );
    OR2H U492 ( .X(n1629), .A(n1474), .B(n1615) );
    OR2H U375 ( .X(n1671), .A(n978), .B(n981) );
    DFF4 \infifod0/d02  ( .Q0(\RDcntNotBuffed[3] ), .Q1(\RDcntNotBuffed[2] ),
        .Q2(\RDcntNotBuffed[1] ), .Q3(n1442), .SQ3(n1072), .D0(n646), .D1(n536
        ), .D2(n644), .D3(n531), .CK(zzclk), .SD0(Usdi), .SE(seBuf), .E1(
        n661), .E2(n544) );
    OR3 U257 ( .X(n1682), .A(\WRcnt[1] ), .B(n1684), .C(\WRcnt[0] ) );
    OR2H U491 ( .X(n1525), .A(n1527), .B(n1616) );
    NOR2B U374 ( .X(n1660), .A(n1662), .B(n1664) );
    DFF4 \infifod0/d03  ( .Q0(n1478), .Q1(n1481), .Q2(n1489), .Q3(n1493),
        .SQ3(n1089), .D0(n854), .D1(n960), .D2(n869), .D3(n971), .CK(aaaclk),
        .SD0(Ssdi), .SE(seBuf), .E1(n935), .E2(n840) );
    INV4 U256 ( .X(n1460), .A(n1477) );
    OR3 U490 ( .X(n1642), .A(n1532), .B(n1533), .C(n1755) );
    AOI21H U373 ( .X(n1715), .A(n1717), .B(n1689), .C(n1661) );
    INVB U139 ( .X(n1435), .A(\WRcntsync1[2] ) );
    AND3H U255 ( .X(n1505), .A(n1556), .B(\RDcntsync2[0] ), .C(n1494) );
    INVB U372 ( .X(n1617), .A(n1690) );
    INVB U138 ( .X(n1434), .A(n1433) );
    NAN2B U254 ( .X(n1616), .A(\RDcntsync2[1] ), .B(\RDcntsync2[2] ) );
    OR2H U371 ( .X(n1719), .A(n1671), .B(n1670) );
    INVB U137 ( .X(n1433), .A(\WRcntsync1[1] ) );
    INV3 U253 ( .X(n1458), .A(n1459) );
    INVB U370 ( .X(n1640), .A(n1759) );
    INVB U136 ( .X(n1432), .A(n1431) );
    AND3 U252 ( .X(n1596), .A(n1531), .B(n1525), .C(n1594) );
    INVB U135 ( .X(n1431), .A(\WRcntsync1[4] ) );
    OR3 U251 ( .X(n1456), .A(n1726), .B(\RDcntsync2[3] ), .C(n1503) );
    INVB U134 ( .X(n1430), .A(n1429) );
    NOR2B U250 ( .X(\latchFifoWordNS[11] ), .A(n1752), .B(n1559) );
    INVB U133 ( .X(n1429), .A(\WRcntsync1[3] ) );
    INVB U132 ( .X(n1428), .A(n1427) );
    INVB U131 ( .X(n1427), .A(\RDcntsync1[4] ) );
    OR2H U299 ( .X(n1539), .A(n1550), .B(n1545) );
    INVB U130 ( .X(n1426), .A(n1425) );
    NAN8H U298 ( .X(n1540), .A(n1573), .B(n1571), .C(n1714), .D(n1536), .E(
        n1577), .F(n1537), .G(n1539), .H(n1566) );
    AND2 U297 ( .X(n1541), .A(n1585), .B(n1636) );
    INV8 U179 ( .X(n1463), .A(n1464) );
    NAN2H U296 ( .X(n1538), .A(n1748), .B(n1749) );
    INV4 U178 ( .X(n1684), .A(n1464) );
    NAN2H U295 ( .X(n1709), .A(n1597), .B(n1699) );
    INV4 U177 ( .X(n1639), .A(n1587) );
    OA211H U294 ( .X(n1710), .A(n1711), .B(n1653), .C(n1702), .D(n1709) );
    INVB U176 ( .X(n1444), .A(n984) );
    NAN3H U293 ( .X(n1498), .A(n1703), .B(n1707), .C(n1710) );
    INV4 U175 ( .X(n1567), .A(n1445) );
    AO22H U292 ( .X(n644), .A(\RDcntNotBuffed[1] ), .B(n1500), .C(n1599), .D(
        n1498) );
    INV4 U174 ( .X(n1565), .A(n1446) );
    AND2H U291 ( .X(n1502), .A(n1708), .B(n1504) );
    INVB U173 ( .X(n1447), .A(n1548) );
    INVB U290 ( .X(n1706), .A(n1602) );
    INV3B U172 ( .X(n1377), .A(n1448) );
    INVB U171 ( .X(n1450), .A(n1716) );
    INVB U170 ( .X(n1454), .A(Level2) );
    BUF8 uScanQBuffer ( .X(Usqo), .A(UsqoNotBuffed) );
    DFF1 \infifod0/d0  ( .Q(\WRcntsync2[0] ), .SQ(n1024), .D(\WRcntsync1[0] ),
        .CK(zzclk), .SD(Usq2), .SE(seBuf), .E1(Logic1), .E2(Logic1) );
    BUF2B rdcnt0buffer ( .X(\RDcnt[0] ), .A(\RDcntNotBuffed[0] ) );
    BUF8 sScanQBuffer ( .X(Ssqo), .A(SsqoNotBuffed) );
    rpl_sub_n5_3 r123 ( .A({n1763, n1140, n1469, n1470, n1206}), .B({n1764,
        n1345, n1377, n1340, n1366}), .SUM({n994, n984, n981, n978, n975}) );
    rpl_sub_n5_1 r124 ( .A({n990, n989, n989, n989, n989}), .B({n991, n992,
        n995, n997, n999}), .SUM({n1020, n1017, n1015, n1014, n1013}) );
    rpl_sub_n5_2 r125 ( .A({n1764, n1345, n1377, n1340, n1366}), .B({n1763,
        n1140, n1485, n1487, n1206}), .SUM({n991, n992, n995, n997, n999}) );
    BUF2 wrCntSync0Buffer ( .X(\WRcntsync1[0] ), .A(\WRcntsync1NB[0] ) );
    BUF2B rdcnt2buffer ( .X(\RDcnt[2] ), .A(\RDcntNotBuffed[2] ) );
endmodule

module rpl_sub_n5_3 ( A, B, SUM );
input  [4:0] A;
input  [4:0] B;
output [4:0] SUM;
    wire \B[3] , n50, n51, n52, n53, n40, n54, n41, n55, n42, n43, n44, n45,
        n46, n47, n48, n49, n38, n39;
    EXNORA U7 ( .X(SUM[1]), .A(n48), .B(n54) );
    EXNORA U8 ( .X(SUM[3]), .A(n41), .B(n47) );
    INVB U9 ( .X(n46), .A(B[1]) );
    AO21H U20 ( .X(n38), .A(n50), .B(n54), .C(n39) );
    AOI21H U21 ( .X(SUM[4]), .A(n47), .B(n38), .C(n49) );
    NAN2H U22 ( .X(n40), .A(n45), .B(n42) );
    AOI21H U23 ( .X(n41), .A(n50), .B(n54), .C(n40) );
    AOI22 U10 ( .X(n44), .A(n54), .B(n55), .C(n46), .D(A[1]) );
    OA21H U24 ( .X(n50), .A(A[0]), .B(n52), .C(n53) );
    NAN2B U11 ( .X(n42), .A(n43), .B(A[2]) );
    OR2H U25 ( .X(n55), .A(n52), .B(A[0]) );
    NAN3H U12 ( .X(n45), .A(A[1]), .B(n53), .C(n46) );
    INVB U13 ( .X(n51), .A(A[3]) );
    EXNORA U14 ( .X(n53), .A(A[2]), .B(B[2]) );
    INVB U15 ( .X(n43), .A(B[2]) );
    INVB U16 ( .X(n48), .A(n55) );
    AO21H U17 ( .X(SUM[0]), .A(A[0]), .B(n52), .C(n48) );
    INVB U18 ( .X(n52), .A(B[0]) );
    NOR2B U19 ( .X(n49), .A(n51), .B(\B[3] ) );
    BUF2 U2 ( .X(\B[3] ), .A(B[3]) );
    EXNORA U3 ( .X(SUM[2]), .A(n44), .B(n53) );
    EXNORH U4 ( .X(n54), .A(A[1]), .B(B[1]) );
    NAN2B U5 ( .X(n39), .A(n45), .B(n42) );
    EXORA U6 ( .X(n47), .A(\B[3] ), .B(n51) );
endmodule

module rpl_sub_n5_2 ( A, B, SUM );
input  [4:0] A;
input  [4:0] B;
output [4:0] SUM;
    wire \A[3] , n70, n71, n72, n73, n60, n74, n61, n75, n62, n76, n63, n77,
        n64, n78, n65, n66, n67, n68, n69, n57, n58;
    AOI21H U50 ( .X(n63), .A(n76), .B(n78), .C(n62) );
    OAI21H U51 ( .X(SUM[0]), .A(B[0]), .B(n77), .C(n78) );
    EXORH U52 ( .X(SUM[1]), .A(n76), .B(n78) );
    NAN3H U40 ( .X(n66), .A(n61), .B(A[1]), .C(n67) );
    EXNORH U41 ( .X(SUM[2]), .A(n63), .B(n75) );
    INVB U42 ( .X(n72), .A(B[3]) );
    INVB U43 ( .X(n65), .A(B[2]) );
    EXORA U30 ( .X(n61), .A(n57), .B(B[2]) );
    INV4 U32 ( .X(n77), .A(A[0]) );
    AOI22 U46 ( .X(SUM[4]), .A(n69), .B(n70), .C(\A[3] ), .D(n72) );
    INVB U33 ( .X(n67), .A(B[1]) );
    AOI21H U47 ( .X(n73), .A(n74), .B(n76), .C(n71) );
    NAN2H U34 ( .X(n58), .A(n77), .B(B[0]) );
    EXNORA U48 ( .X(SUM[3]), .A(n73), .B(n69) );
    NAN2H U35 ( .X(n78), .A(n77), .B(B[0]) );
    AND2H U49 ( .X(n62), .A(A[1]), .B(n67) );
    EXNORH U36 ( .X(n68), .A(A[1]), .B(n60) );
    AND2H U37 ( .X(n74), .A(n58), .B(n75) );
    NAN2H U38 ( .X(n71), .A(n66), .B(n64) );
    NAN2H U39 ( .X(n64), .A(n65), .B(A[2]) );
    BUF2 U26 ( .X(\A[3] ), .A(A[3]) );
    INV3B U27 ( .X(n76), .A(n68) );
    INV4 U28 ( .X(n60), .A(B[1]) );
    INVB U29 ( .X(n57), .A(A[2]) );
endmodule

module rpl_sub_n5_1 ( A, B, SUM );
input  [4:0] A;
input  [4:0] B;
output [4:0] SUM;
    wire \SUM[0] , n80, n81, n82, n83, n84, n85, n86, n87, n79;
    assign \SUM[0]  = B[0];
    assign SUM[0] = \SUM[0] ;
    NOR2B U60 ( .X(n81), .A(B[1]), .B(\SUM[0] ) );
    NAN2H U61 ( .X(n85), .A(n86), .B(n84) );
    NAN2H U62 ( .X(n87), .A(n83), .B(n82) );
    NOR2B U63 ( .X(n80), .A(n87), .B(B[2]) );
    INVB U54 ( .X(n79), .A(B[4]) );
    EXNORA U55 ( .X(SUM[1]), .A(n83), .B(B[1]) );
    EXNORH U56 ( .X(SUM[3]), .A(n80), .B(B[3]) );
    EXNORA U57 ( .X(SUM[2]), .A(n81), .B(B[2]) );
    NOR2B U58 ( .X(n86), .A(B[1]), .B(\SUM[0] ) );
    NOR2H U59 ( .X(n84), .A(B[2]), .B(B[3]) );
endmodule

module infifo ( fifofullNS, IFNE, load_fifo, fifoVld, rdy4fifoData, fifoUnld,
    aaaclk1, aaaclk7, aaaclk9, zzclk, fifo_disable, aaaDataIn, Addr, BE,
    lastAddrWrite, fifoData, fifoAddr, fifoBE, fifoRnW, IFCount, aaareset,
    Level1_ddd, Level2_ddd, zzreset, Level1, Level2, Usqo, Ssqo, Usdi, Ssdi,
    se );
input  [31:0] aaaDataIn;
input  [24:2] Addr;
output [31:0] fifoData;
output [3:0] fifoBE;
output [4:0] IFCount;
input  [3:0] BE;
output [22:0] fifoAddr;
input  load_fifo, rdy4fifoData, aaaclk1, aaaclk7, aaaclk9, zzclk,
    fifo_disable, lastAddrWrite, aaareset, Level1_ddd, Level2_ddd, zzreset,
    Level1, Level2, Usdi, Ssdi, se;
output fifofullNS, IFNE, fifoVld, fifoUnld, fifoRnW, Usqo, Ssqo;
endmodule

module rdgraycntr ( graycount, readFifoWordNB, cnt_en, fifo_disable, anyreset,
    clock, sqo, sdi, se );
output [4:0] graycount;
output [8:0] readFifoWordNB;
input  cnt_en, fifo_disable, anyreset, clock, sdi, se;
output sqo;
    assign n72 = (n69 & n71);
    assign n73 = (n69 & ~n71);
    assign n75 = (n73 & n74);
    \**FFGEN**  \next_count_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n170[4] ), .force_01(\n174[4] ), .force_10(\n173[4] ),
        .force_11(\next_count169[4] ), .Q(\next_count[4] ) );
    \**FFGEN**  \next_count_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n170[2] ), .force_01(\n174[2] ), .force_10(\n173[2] ),
        .force_11(\next_count169[2] ), .Q(\next_count[2] ) );
    \**FFGEN**  \next_count_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n170[0] ), .force_01(\n174[0] ), .force_10(\n173[0] ),
        .force_11(\next_count169[0] ), .Q(\next_count[0] ) );
    assign n149 = n278;
    assign n278 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n146 = n280;
    assign n280 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n143 = n282;
    assign n282 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n166 = (n163 & ~n164);
    assign n140 = n284;
    assign n65 = n167;
    assign n284 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n167 = (~(anyreset ^ 1'b1));
    assign n137 = n286;
    assign \n173[4]  = (\next_count169[4]  & \n170[4] );
    assign \n173[3]  = (\next_count169[3]  & \n170[3] );
    assign \n173[2]  = (\next_count169[2]  & \n170[2] );
    assign \n173[1]  = (\next_count169[1]  & \n170[1] );
    assign \n173[0]  = (\next_count169[0]  & \n170[0] );
    assign \n174[4]  = (~\next_count169[4]  & \n170[4] );
    assign \n174[3]  = (~\next_count169[3]  & \n170[3] );
    assign \n174[2]  = (~\next_count169[2]  & \n170[2] );
    assign \n174[1]  = (~\next_count169[1]  & \n170[1] );
    assign \n174[0]  = (~\next_count169[0]  & \n170[0] );
    assign n286 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    SELECT_OP U75 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2({
        Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0,
        Logic0, Logic1, Logic1}), .DATA4({Logic0, Logic0, Logic0, Logic1,
        Logic0}), .DATA5({Logic0, Logic0, Logic1, Logic1, Logic0}), .DATA6({
        Logic0, Logic0, Logic1, Logic1, Logic1}), .DATA7({Logic0, Logic0,
        Logic1, Logic0, Logic1}), .DATA8({Logic0, Logic0, Logic1, Logic0,
        Logic0}), .DATA9({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA10({
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA11({Logic0, Logic1,
        Logic1, Logic1, Logic1}), .DATA12({Logic0, Logic1, Logic1, Logic1,
        Logic0}), .DATA13({Logic0, Logic1, Logic0, Logic1, Logic0}), .DATA14({
        Logic0, Logic1, Logic0, Logic1, Logic1}), .DATA15({Logic0, Logic1,
        Logic0, Logic0, Logic1}), .DATA16({Logic0, Logic1, Logic0, Logic0,
        Logic0}), .DATA17({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA18({
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic1,
        Logic0, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic0, Logic1,
        Logic0}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic0}), .DATA22({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1,
        Logic1, Logic0, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic0,
        Logic0}), .DATA25({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA26({
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA27({Logic1, Logic0,
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic0, Logic1, Logic1,
        Logic0}), .DATA29({Logic1, Logic0, Logic0, Logic1, Logic0}), .DATA30({
        Logic1, Logic0, Logic0, Logic1, Logic1}), .DATA31({Logic1, Logic0,
        Logic0, Logic0, Logic1}), .DATA32({Logic1, Logic0, Logic0, Logic0,
        Logic0}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA34({
        n246, n250, graycount[2], graycount[1], graycount[0]}), .CONTROL1(n66),
        .CONTROL2(n72), .CONTROL3(n75), .CONTROL4(n78), .CONTROL5(n81),
        .CONTROL6(n84), .CONTROL7(n87), .CONTROL8(n90), .CONTROL9(n93),
        .CONTROL10(n96), .CONTROL11(n99), .CONTROL12(n102), .CONTROL13(n105),
        .CONTROL14(n108), .CONTROL15(n111), .CONTROL16(n114), .CONTROL17(n117),
        .CONTROL18(n120), .CONTROL19(n123), .CONTROL20(n126), .CONTROL21(n129),
        .CONTROL22(n132), .CONTROL23(n135), .CONTROL24(n138), .CONTROL25(n141),
        .CONTROL26(n144), .CONTROL27(n147), .CONTROL28(n150), .CONTROL29(n153),
        .CONTROL30(n156), .CONTROL31(n159), .CONTROL32(n162), .CONTROL33(n165),
        .CONTROL34(n70), .Z({\next_count169[4] , \next_count169[3] ,
        \next_count169[2] , \next_count169[1] , \next_count169[0] }) );
    assign n68 = n244;
    assign n136 = (n133 & ~n134);
    assign n138 = (n136 & n137);
    assign n244 = (~(fifo_disable ^ 1'b0));
    assign n246 = ~graycount[4];
    assign n139 = (n136 & ~n137);
    assign n250 = ~graycount[3];
    assign n141 = (n139 & n140);
    assign n142 = (n139 & ~n140);
    assign n144 = (n142 & n143);
    assign n145 = (n142 & ~n143);
    assign n106 = (n103 & ~n104);
    assign n147 = (n145 & n146);
    assign n296 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n108 = (n106 & n107);
    assign n148 = (n145 & ~n146);
    assign n122 = n296;
    assign n109 = (n106 & ~n107);
    assign n294 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n150 = (n148 & n149);
    assign n111 = (n109 & n110);
    assign n125 = n294;
    assign n112 = (n109 & ~n110);
    assign n114 = (n112 & n113);
    assign n292 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n76 = (n73 & ~n74);
    assign n115 = (n112 & ~n113);
    assign n128 = n292;
    assign n117 = (n115 & n116);
    assign n78 = (n76 & n77);
    assign n316 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n290 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n118 = (n115 & ~n116);
    assign n131 = n290;
    assign n79 = (n76 & ~n77);
    assign n92 = n316;
    assign n314 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n120 = (n118 & n119);
    assign n288 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n81 = (n79 & n80);
    assign n134 = n288;
    assign n95 = n314;
    assign n82 = (n79 & ~n80);
    assign n312 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n84 = (n82 & n83);
    assign n85 = (n82 & ~n83);
    assign n98 = n312;
    assign n87 = (n85 & n86);
    assign n310 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n88 = (n85 & ~n86);
    assign n101 = n310;
    assign n308 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n90 = (n88 & n89);
    assign n104 = n308;
    assign n330 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n71 = n330;
    assign n328 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n74 = n328;
    assign Logic0 = 1'b0;
    assign Logic1 = 1'b1;
    BUF8 clkEnableBuffer ( .X(clk_en), .A(clk_enNB) );
    dff_8 rdaddr7_0 ( .q(readFifoWordNB[7:0]), .sqo(sqo), .d({
        \readFifoWordNBNS[7] , \readFifoWordNBNS[6] , \readFifoWordNBNS[5] ,
        \readFifoWordNBNS[4] , \readFifoWordNBNS[3] , \readFifoWordNBNS[2] ,
        \readFifoWordNBNS[1] , \readFifoWordNBNS[0] }), .clk(clock), .sdi(sq1),
        .se(se), .e1(clk_en), .e2(Logic1) );
    dff_1 rdaddr8 ( .q(readFifoWordNB[8]), .sqo(sq1), .d(\n51[4] ), .clk(clock
        ), .sdi(sq0), .se(se), .e1(clk_en), .e2(Logic1) );
    \**FFGEN**  \next_count_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n170[3] ), .force_01(\n174[3] ), .force_10(\n173[3] ),
        .force_11(\next_count169[3] ), .Q(\next_count[3] ) );
    \**FFGEN**  \next_count_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n170[1] ), .force_01(\n174[1] ), .force_10(\n173[1] ),
        .force_11(\next_count169[1] ), .Q(\next_count[1] ) );
    assign n164 = n268;
    assign n268 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n161 = n270;
    assign n270 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n158 = n272;
    assign n272 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n151 = (n148 & ~n149);
    assign n155 = n274;
    assign n153 = (n151 & n152);
    assign n274 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n154 = (n151 & ~n152);
    assign n152 = n276;
    assign n276 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n156 = (n154 & n155);
    assign n157 = (n154 & ~n155);
    assign n159 = (n157 & n158);
    assign n121 = (n118 & ~n119);
    assign n127 = (n124 & ~n125);
    assign n129 = (n127 & n128);
    assign n91 = (n88 & ~n89);
    assign n130 = (n127 & ~n128);
    assign n132 = (n130 & n131);
    assign n306 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n93 = (n91 & n92);
    assign n133 = (n130 & ~n131);
    assign n107 = n306;
    assign n94 = (n91 & ~n92);
    assign n304 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n135 = (n133 & n134);
    assign n96 = (n94 & n95);
    assign n97 = (n94 & ~n95);
    assign n110 = n304;
    assign n302 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n99 = (n97 & n98);
    assign n100 = (n97 & ~n98);
    assign n113 = n302;
    assign n326 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n102 = (n100 & n101);
    assign n300 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n77 = n326;
    assign n103 = (n100 & ~n101);
    assign n116 = n300;
    assign n298 = (~(graycount[4] ^ 1'b1) & ~(graycount[3] ^ 1'b1) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b0)
        );
    assign n105 = (n103 & n104);
    assign n324 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b0) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n80 = n324;
    assign n119 = n298;
    assign n322 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b0)
        );
    assign n83 = n322;
    assign n320 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b1) & ~(graycount[0] ^ 1'b1)
        );
    assign n86 = n320;
    assign n318 = (~(graycount[4] ^ 1'b0) & ~(graycount[3] ^ 1'b0) & ~(
        graycount[2] ^ 1'b1) & ~(graycount[1] ^ 1'b0) & ~(graycount[0] ^ 1'b1)
        );
    assign n89 = n318;
    dff_5 cntr ( .q(graycount), .sqo(sq0), .d({\next_count[4] ,
        \next_count[3] , \next_count[2] , \next_count[1] , \next_count[0] }),
        .clk(clock), .sdi(sdi), .se(se), .e1(clk_en), .e2(Logic1) );
    assign \n51[4]  = (\next_count[4]  ^ \next_count[3] );
    assign clk_enNB = (anyreset | cnt_en);
    assign n66 = n65;
    assign n67 = ~n65;
    assign n69 = (n67 & n68);
    assign n70 = (n67 & ~n68);
endmodule

module fifocntr ( n_free, WcntG, RcntG );
output [4:0] n_free;
input  [4:0] WcntG;
input  [4:0] RcntG;
    wire n19, \n_free26[0] , \WcntB[0] , \n_free26[1] , \WcntB[1] ,
        \n_free26[2] , \WcntB[2] , \n_free26[3] , \WcntB[3] , \WcntB[4] ,
        Logic0, Logic1, \n43[1] , \n43[2] , \n27[1] , \n43[3] , \n43[4] ,
        \n43[5] , \RcntB[4] , \RcntB[3] , \RcntB[2] , \RcntB[1] , \RcntB[0] ,
        n30, \n_free25[0] , \n_free25[1] , \n_free25[2] , n13, \n_free25[3] ,
        n15, n16, \n_free25[4] , n17, n18;
    SELECT_OP U7 ( .DATA1({Logic1, Logic0, Logic0, Logic0, Logic0}), .DATA2({
        \n_free25[4] , \n_free25[3] , \n_free25[2] , \n_free25[1] ,
        \n_free25[0] }), .DATA3({\n27[1] , \n_free26[3] , \n_free26[2] ,
        \n_free26[1] , \n_free26[0] }), .CONTROL1(n17), .CONTROL2(n18),
        .CONTROL3(n15), .Z(n_free) );
    SUB_UNS_OP U8 ( .A({\RcntB[3] , \RcntB[2] , \RcntB[1] , \RcntB[0] }), .B({
        \WcntB[3] , \WcntB[2] , \WcntB[1] , \WcntB[0] }), .Z({\n27[1] ,
        \n_free26[3] , \n_free26[2] , \n_free26[1] , \n_free26[0] }) );
    assign n16 = n30;
    assign Logic0 = 1'b0;
    assign Logic1 = 1'b1;
    grayconv read ( .binval({\RcntB[4] , \RcntB[3] , \RcntB[2] , \RcntB[1] ,
        \RcntB[0] }), .grayval(RcntG) );
    assign n30 = (~(\RcntB[3]  ^ \WcntB[3] ) & ~(\RcntB[2]  ^ \WcntB[2] ) & ~(
        \RcntB[1]  ^ \WcntB[1] ) & ~(\RcntB[0]  ^ \WcntB[0] ));
    SUB_UNS_OP U11 ( .A({Logic1, Logic0, Logic0, Logic0, Logic0}), .B({
        \n43[1] , \n43[2] , \n43[3] , \n43[4] , \n43[5] }), .Z({\n_free25[4] ,
        \n_free25[3] , \n_free25[2] , \n_free25[1] , \n_free25[0] }) );
    grayconv write ( .binval({\WcntB[4] , \WcntB[3] , \WcntB[2] , \WcntB[1] ,
        \WcntB[0] }), .grayval(WcntG) );
    assign n15 = ~n13;
    assign n17 = (n13 & n16);
    assign n18 = (n13 & ~n16);
    assign n13 = n19;
    assign n19 = (~(\RcntB[4]  ^ \WcntB[4] ));
endmodule

module grayconv ( binval, grayval );
output [4:0] binval;
input  [4:0] grayval;
    wire \binval173[0] , \binval173[2] , n80, n81, n82, n83, \binval173[4] ,
        n84, n85, n60, n86, n61, n87, n88, n62, n63, n89, n64, n65, n66, n40,
        n41, n67, n68, n42, n69, n43, \n177[1] , n44, n45, n20, n46, n47, n21,
        n48, n22, n49, n23, \n177[3] , n24, n25, n26, n27, n28, n29, \n174[1] ,
        \n178[0] , \n174[3] , \n178[2] , \n178[4] , n9, Logic0, Logic1, n161,
        n163, n165, n167, n141, n143, n169, n145, n121, n147, n123, n149, n125,
        n100, n101, n127, n102, n103, n129, n104, n109, \binval173[1] , n90,
        n91, n92, n93, \binval173[3] , n94, n95, n70, n96, n71, n97, n72, n98,
        n99, n73, n74, n75, n50, n76, n77, n51, n78, n52, n79, n53, \n177[0] ,
        n54, n55, n30, n56, n57, n31, n58, n32, n59, n33, \n177[2] , n34, n35,
        n36, n10, n11, n37, n38, n12, n39, n13, \n177[4] , n14, n15, n16, n17,
        n18, n19, \n174[0] , \n174[2] , \n178[1] , \n174[4] , \n178[3] , n171,
        n151, n153, n155, n131, n157, n133, n159, n135, n111, n137, n139, n113,
        n115, n117, n119;
    assign n19 = (n17 & n18);
    assign n20 = (n17 & ~n18);
    assign n22 = (n20 & n21);
    assign n133 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    assign n63 = n135;
    assign n135 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    assign n123 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n60 = n137;
    \**FFGEN**  \binval_reg[4]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n174[4] ), .force_01(\n178[4] ), .force_10(\n177[4] ),
        .force_11(\binval173[4] ), .Q(binval[4]) );
    assign n137 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    \**FFGEN**  \binval_reg[3]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n174[3] ), .force_01(\n178[3] ), .force_10(\n177[3] ),
        .force_11(\binval173[3] ), .Q(binval[3]) );
    assign n75 = n127;
    assign n139 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n93 = n115;
    assign n54 = n141;
    assign n127 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n141 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n72 = n129;
    assign n129 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    \**FFGEN**  \binval_reg[2]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n174[2] ), .force_01(\n178[2] ), .force_10(\n177[2] ),
        .force_11(\binval173[2] ), .Q(binval[2]) );
    assign n90 = n117;
    assign n98 = (n95 & ~n96);
    assign n51 = n143;
    assign n69 = n131;
    assign n100 = (n98 & n99);
    assign n117 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    assign n101 = (n98 & ~n99);
    assign n87 = n119;
    assign n119 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    \**FFGEN**  \binval_reg[1]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n174[1] ), .force_01(\n178[1] ), .force_10(\n177[1] ),
        .force_11(\binval173[1] ), .Q(binval[1]) );
    assign n103 = (n101 & n102);
    assign n83 = (n80 & ~n81);
    assign n66 = n133;
    assign n85 = (n83 & n84);
    assign n84 = n121;
    assign n104 = (n101 & ~n102);
    assign n102 = n109;
    assign n121 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n86 = (n83 & ~n84);
    assign n81 = n123;
    assign n109 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n88 = (n86 & n87);
    assign n68 = (n65 & ~n66);
    \**FFGEN**  \binval_reg[0]  ( .next_state(Logic0), .clocked_on(Logic0),
        .force_00(\n174[0] ), .force_01(\n178[0] ), .force_10(\n177[0] ),
        .force_11(\binval173[0] ), .Q(binval[0]) );
    assign n70 = (n68 & n69);
    assign n89 = (n86 & ~n87);
    assign n99 = n111;
    assign n71 = (n68 & ~n69);
    assign n91 = (n89 & n90);
    assign n111 = (~(grayval[4] ^ 1'b1) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n53 = (n50 & ~n51);
    assign n92 = (n89 & ~n90);
    assign n94 = (n92 & n93);
    assign n36 = n153;
    assign n55 = (n53 & n54);
    assign n151 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    assign n76 = (n74 & n75);
    assign n95 = (n92 & ~n93);
    assign n56 = (n53 & ~n54);
    assign n39 = n151;
    assign n97 = (n95 & n96);
    assign n77 = (n74 & ~n75);
    assign n58 = (n56 & n57);
    assign n38 = (n35 & ~n36);
    assign n79 = (n77 & n78);
    assign n21 = n163;
    assign n149 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    assign n59 = (n56 & ~n57);
    assign n40 = (n38 & n39);
    assign n80 = (n77 & ~n78);
    assign n42 = n149;
    assign n61 = (n59 & n60);
    assign n161 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    assign n41 = (n38 & ~n39);
    assign n147 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    assign n24 = n161;
    assign n82 = (n80 & n81);
    assign n62 = (n59 & ~n60);
    assign n23 = (n20 & ~n21);
    assign n43 = (n41 & n42);
    assign n45 = n147;
    assign n159 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n25 = (n23 & n24);
    assign \n177[4]  = (\binval173[4]  & \n174[4] );
    assign \n177[3]  = (\binval173[3]  & \n174[3] );
    assign \n177[2]  = (\binval173[2]  & \n174[2] );
    assign \n177[1]  = (\binval173[1]  & \n174[1] );
    assign \n177[0]  = (\binval173[0]  & \n174[0] );
    assign \n178[4]  = (~\binval173[4]  & \n174[4] );
    assign \n178[3]  = (~\binval173[3]  & \n174[3] );
    assign \n178[2]  = (~\binval173[2]  & \n174[2] );
    assign \n178[1]  = (~\binval173[1]  & \n174[1] );
    assign \n178[0]  = (~\binval173[0]  & \n174[0] );
    assign n64 = (n62 & n63);
    assign n44 = (n41 & ~n42);
    assign n26 = (n23 & ~n24);
    assign n145 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    assign n46 = (n44 & n45);
    assign n27 = n159;
    assign n65 = (n62 & ~n63);
    assign n171 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n28 = (n26 & n27);
    assign n47 = (n44 & ~n45);
    assign n48 = n145;
    assign n67 = (n65 & n66);
    assign n157 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n9 = n171;
    assign n29 = (n26 & ~n27);
    assign n49 = (n47 & n48);
    assign n169 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n30 = n157;
    assign n143 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n12 = n169;
    assign n31 = (n29 & n30);
    assign n50 = (n47 & ~n48);
    assign n155 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b0));
    assign n33 = n155;
    assign n52 = (n50 & n51);
    assign n167 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b1));
    assign n32 = (n29 & ~n30);
    assign n153 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b1) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b0) & ~(grayval[0] ^ 1'b1));
    assign n15 = n167;
    assign n34 = (n32 & n33);
    assign n165 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b0) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    assign n35 = (n32 & ~n33);
    assign n37 = (n35 & n36);
    assign n18 = n165;
    assign n163 = (~(grayval[4] ^ 1'b0) & ~(grayval[3] ^ 1'b0) & ~(grayval[2]
         ^ 1'b1) & ~(grayval[1] ^ 1'b1) & ~(grayval[0] ^ 1'b0));
    SELECT_OP U131 ( .DATA1({Logic0, Logic0, Logic0, Logic0, Logic0}), .DATA2(
        {Logic0, Logic0, Logic0, Logic0, Logic1}), .DATA3({Logic0, Logic0,
        Logic0, Logic1, Logic0}), .DATA4({Logic0, Logic0, Logic0, Logic1,
        Logic1}), .DATA5({Logic0, Logic0, Logic1, Logic0, Logic0}), .DATA6({
        Logic0, Logic0, Logic1, Logic0, Logic1}), .DATA7({Logic0, Logic0,
        Logic1, Logic1, Logic0}), .DATA8({Logic0, Logic0, Logic1, Logic1,
        Logic1}), .DATA9({Logic0, Logic1, Logic0, Logic0, Logic0}), .DATA10({
        Logic0, Logic1, Logic0, Logic0, Logic1}), .DATA11({Logic0, Logic1,
        Logic0, Logic1, Logic0}), .DATA12({Logic0, Logic1, Logic0, Logic1,
        Logic1}), .DATA13({Logic0, Logic1, Logic1, Logic0, Logic0}), .DATA14({
        Logic0, Logic1, Logic1, Logic0, Logic1}), .DATA15({Logic0, Logic1,
        Logic1, Logic1, Logic0}), .DATA16({Logic0, Logic1, Logic1, Logic1,
        Logic1}), .DATA17({Logic1, Logic0, Logic0, Logic0, Logic0}), .DATA18({
        Logic1, Logic0, Logic0, Logic0, Logic1}), .DATA19({Logic1, Logic0,
        Logic0, Logic1, Logic0}), .DATA20({Logic1, Logic0, Logic0, Logic1,
        Logic1}), .DATA21({Logic1, Logic0, Logic1, Logic0, Logic0}), .DATA22({
        Logic1, Logic0, Logic1, Logic0, Logic1}), .DATA23({Logic1, Logic0,
        Logic1, Logic1, Logic0}), .DATA24({Logic1, Logic0, Logic1, Logic1,
        Logic1}), .DATA25({Logic1, Logic1, Logic0, Logic0, Logic0}), .DATA26({
        Logic1, Logic1, Logic0, Logic0, Logic1}), .DATA27({Logic1, Logic1,
        Logic0, Logic1, Logic0}), .DATA28({Logic1, Logic1, Logic0, Logic1,
        Logic1}), .DATA29({Logic1, Logic1, Logic1, Logic0, Logic0}), .DATA30({
        Logic1, Logic1, Logic1, Logic0, Logic1}), .DATA31({Logic1, Logic1,
        Logic1, Logic1, Logic0}), .DATA32({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .CONTROL1(n10), .CONTROL2(n13), .CONTROL3(n16), .CONTROL4(
        n19), .CONTROL5(n22), .CONTROL6(n25), .CONTROL7(n28), .CONTROL8(n31),
        .CONTROL9(n34), .CONTROL10(n37), .CONTROL11(n40), .CONTROL12(n43),
        .CONTROL13(n46), .CONTROL14(n49), .CONTROL15(n52), .CONTROL16(n55),
        .CONTROL17(n58), .CONTROL18(n61), .CONTROL19(n64), .CONTROL20(n67),
        .CONTROL21(n70), .CONTROL22(n73), .CONTROL23(n76), .CONTROL24(n79),
        .CONTROL25(n82), .CONTROL26(n85), .CONTROL27(n88), .CONTROL28(n91),
        .CONTROL29(n94), .CONTROL30(n97), .CONTROL31(n100), .CONTROL32(n103),
        .Z({\binval173[4] , \binval173[3] , \binval173[2] , \binval173[1] ,
        \binval173[0] }) );
    SELECT_OP U130 ( .DATA1({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA2(
        {Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA3({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA4({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA5({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA6({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA7({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA8({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA9({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA10({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA11({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA12({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA13({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA14({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA15({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA16({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA17({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA18({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA19({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA20({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA21({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA22({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA23({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA24({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA25({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA26({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA27({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA28({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA29({Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA30({
        Logic1, Logic1, Logic1, Logic1, Logic1}), .DATA31({Logic1, Logic1,
        Logic1, Logic1, Logic1}), .DATA32({Logic1, Logic1, Logic1, Logic1,
        Logic1}), .DATA33({Logic0, Logic0, Logic0, Logic0, Logic0}),
        .CONTROL1(n10), .CONTROL2(n13), .CONTROL3(n16), .CONTROL4(n19),
        .CONTROL5(n22), .CONTROL6(n25), .CONTROL7(n28), .CONTROL8(n31),
        .CONTROL9(n34), .CONTROL10(n37), .CONTROL11(n40), .CONTROL12(n43),
        .CONTROL13(n46), .CONTROL14(n49), .CONTROL15(n52), .CONTROL16(n55),
        .CONTROL17(n58), .CONTROL18(n61), .CONTROL19(n64), .CONTROL20(n67),
        .CONTROL21(n70), .CONTROL22(n73), .CONTROL23(n76), .CONTROL24(n79),
        .CONTROL25(n82), .CONTROL26(n85), .CONTROL27(n88), .CONTROL28(n91),
        .CONTROL29(n94), .CONTROL30(n97), .CONTROL31(n100), .CONTROL32(n103),
        .CONTROL33(n104), .Z({\n174[4] , \n174[3] , \n174[2] , \n174[1] ,
        \n174[0] }) );
    assign Logic0 = 1'b0;
    assign Logic1 = 1'b1;
    assign n10 = n9;
    assign n11 = ~n9;
    assign n13 = (n11 & n12);
    assign n14 = (n11 & ~n12);
    assign n16 = (n14 & n15);
    assign n17 = (n14 & ~n15);
endmodule

module fifoLatchesAndMuxes ( aaaDataIn, Addr, BE, lastAddrWrite, fifoData,
    fifoAddr, fifoBE, fifoRnW, latchFifoWord, readFifoWord, aaaclk1, aaaclk9,
    sqo, sdi, se );
input  [31:0] aaaDataIn;
input  [24:2] Addr;
output [31:0] fifoData;
output [3:0] fifoBE;
input  [3:0] BE;
output [22:0] fifoAddr;
input  [15:0] latchFifoWord;
input  [8:0] readFifoWord;
input  lastAddrWrite, aaaclk1, aaaclk9, sdi, se;
output fifoRnW, sqo;
    wire sq0;
    Afifo addrFifo ( .Addr(Addr), .BE(BE), .lastAddrWrite(lastAddrWrite),
        .fifoAddr(fifoAddr), .fifoBE(fifoBE), .fifoRnW(fifoRnW),
        .latchFifoWord(latchFifoWord), .readFifoWord(readFifoWord), .aaaclk(
        aaaclk9), .sqo(sqo), .sdi(sq0), .se(se) );
    Dfifo dtFifo ( .aaaDataIn(aaaDataIn), .fifoData(fifoData), .latchFifoWord(
        latchFifoWord), .readFifoWord(readFifoWord), .aaaclk(aaaclk1), .sqo(
        sq0), .sdi(sdi), .se(se) );
endmodule

module Afifo ( Addr, BE, lastAddrWrite, fifoAddr, fifoBE, fifoRnW,
    latchFifoWord, readFifoWord, aaaclk, sqo, sdi, se );
input  [24:2] Addr;
output [3:0] fifoBE;
input  [3:0] BE;
output [22:0] fifoAddr;
input  [15:0] latchFifoWord;
input  [8:0] readFifoWord;
input  lastAddrWrite, aaaclk, sdi, se;
output fifoRnW, sqo;
    MX81 \infifou0/u1/u1/u1/u01  ( .X(\addrLower[7] ), .A(\addrword0[7] ),
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[7] ), .SLB(
        \readFifoWordBuffedL[1] ), .C(\addrword2[7] ), .SLC(
        \readFifoWordBuffedL[2] ), .D(\addrword3[7] ), .SLD(
        \readFifoWordBuffedL[3] ), .E(\addrword4[7] ), .SLE(
        \readFifoWordBuffedL[4] ), .F(\addrword5[7] ), .SLF(
        \readFifoWordBuffedL[5] ), .G(\addrword6[7] ), .SLG(
        \readFifoWordBuffedL[6] ), .H(\addrword7[7] ), .SLH(
        \readFifoWordBuffedL[7] ) );
    LATP4 \infifou1/u0/u012  ( .Q0(\addrword5[4] ), .Q1(\addrword5[5] ), .Q2(
        \addrword5[6] ), .Q3(\addrword5[7] ), .D0(\datainlch[4] ), .D1(
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
        latchFifoWord[5]) );
    LATP4 \infifou1/u0/u011  ( .Q0(\addrword4[4] ), .Q1(\addrword4[5] ), .Q2(
        \addrword4[6] ), .Q3(\addrword4[7] ), .D0(\datainlch[4] ), .D1(
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
        latchFifoWord[4]) );
    LATP4 \infifou1/u0/u010  ( .Q0(\addrword3[4] ), .Q1(\addrword3[5] ), .Q2(
        \addrword3[6] ), .Q3(\addrword3[7] ), .D0(\datainlch[4] ), .D1(
        \datainlch[5] ), .D2(\datainlch[6] ), .D3(\datainlch[7] ), .GB(
        latchFifoWord[3]) );
    MX81 \infifou0/u0/u0/u1/u0  ( .X(\addrUpper[1] ), .A(\addrword8[1] ),
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[1] ), .SLB(
        \readFifoWordBuffedU[1] ), .C(\addrword10[1] ), .SLC(
        \readFifoWordBuffedU[2] ), .D(\addrword11[1] ), .SLD(
        \readFifoWordBuffedU[3] ), .E(\addrword12[1] ), .SLE(
        \readFifoWordBuffedU[4] ), .F(\addrword13[1] ), .SLF(
        \readFifoWordBuffedU[5] ), .G(\addrword14[1] ), .SLG(
        \readFifoWordBuffedU[6] ), .H(\addrword15[1] ), .SLH(
        \readFifoWordBuffedU[7] ) );
    DFF4 \infifod0/d0/d1/d0  ( .Q0(\datainNotBuf[7] ), .Q1(\datainNotBuf[6] ),
        .Q2(\datainNotBuf[5] ), .Q3(\datainNotBuf[4] ), .SQ3(n1050), .D0(Addr
        [9]), .D1(Addr[8]), .D2(Addr[7]), .D3(Addr[6]), .CK(aaaclk), .SD0(
        n1033), .SE(AfifoSeBuf), .E1(Logic1), .E2(Logic1) );
    BUF8 \infifob1/b1/b1/b1/b1/b1  ( .A(fifoAddr[0]) );
    LATP4 \infifou0/u010  ( .Q0(\addrword4[0] ), .Q1(\addrword4[1] ), .Q2(
        \addrword4[2] ), .Q3(\addrword4[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[4]) );
    MX81 \infifou1/u0/u1/u1/u0/u0  ( .X(\addrUpper[14] ), .A(\addrword8[14] ),
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[14] ), .SLB(
        \readFifoWordBuffedU[1] ), .C(\addrword10[14] ), .SLC(
        \readFifoWordBuffedU[2] ), .D(\addrword11[14] ), .SLD(
        \readFifoWordBuffedU[3] ), .E(\addrword12[14] ), .SLE(
        \readFifoWordBuffedU[4] ), .F(\addrword13[14] ), .SLF(
        \readFifoWordBuffedU[5] ), .G(\addrword14[14] ), .SLG(
        \readFifoWordBuffedU[6] ), .H(\addrword15[14] ), .SLH(
        \readFifoWordBuffedU[7] ) );
    LATP4 \infifou0/u011  ( .Q0(\addrword5[0] ), .Q1(\addrword5[1] ), .Q2(
        \addrword5[2] ), .Q3(\addrword5[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[5]) );
    MX81 \infifou1/u0/u1/u1/u1/u01  ( .X(\addrLower[15] ), .A(\addrword0[15] ),
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[15] ), .SLB(
        \readFifoWordBuffedL[1] ), .C(\addrword2[15] ), .SLC(
        \readFifoWordBuffedL[2] ), .D(\addrword3[15] ), .SLD(
        \readFifoWordBuffedL[3] ), .E(\addrword4[15] ), .SLE(
        \readFifoWordBuffedL[4] ), .F(\addrword5[15] ), .SLF(
        \readFifoWordBuffedL[5] ), .G(\addrword6[15] ), .SLG(
        \readFifoWordBuffedL[6] ), .H(\addrword7[15] ), .SLH(
        \readFifoWordBuffedL[7] ) );
    LATP4 \infifou0/u012  ( .Q0(\addrword6[0] ), .Q1(\addrword6[1] ), .Q2(
        \addrword6[2] ), .Q3(\addrword6[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[6]) );
    MX81 \infifou1/u0/u1/u1/u0/u01  ( .X(\addrLower[14] ), .A(\addrword0[14] ),
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[14] ), .SLB(
        \readFifoWordBuffedL[1] ), .C(\addrword2[14] ), .SLC(
        \readFifoWordBuffedL[2] ), .D(\addrword3[14] ), .SLD(
        \readFifoWordBuffedL[3] ), .E(\addrword4[14] ), .SLE(
        \readFifoWordBuffedL[4] ), .F(\addrword5[14] ), .SLF(
        \readFifoWordBuffedL[5] ), .G(\addrword6[14] ), .SLG(
        \readFifoWordBuffedL[6] ), .H(\addrword7[14] ), .SLH(
        \readFifoWordBuffedL[7] ) );
    LATP4 \infifou0/u013  ( .Q0(\addrword7[0] ), .Q1(\addrword7[1] ), .Q2(
        \addrword7[2] ), .Q3(\addrword7[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[7]) );
    LATP4 \infifou0/u014  ( .Q0(\addrword8[0] ), .Q1(\addrword8[1] ), .Q2(
        \addrword8[2] ), .Q3(\addrword8[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[8]) );
    LATP4 \infifou0/u015  ( .Q0(\addrword9[0] ), .Q1(\addrword9[1] ), .Q2(
        \addrword9[2] ), .Q3(\addrword9[3] ), .D0(\datainlch[0] ), .D1(
        \datainlch[1] ), .D2(\datainlch[2] ), .D3(\datainlch[3] ), .GB(
        latchFifoWord[9]) );
    INV8 rNwBuf ( .X(fifoRnW), .A(\dataout[27] ) );
    MUX41H \infifou0/u1/u1/u0  ( .X0(fifoAddr[12]), .X1(\dataout[13] ), .X2(
        fifoAddr[14]), .X3(\dataout[15] ), .A0(\addrLower[12] ), .B0(
        \addrUpper[12] ), .A1(\addrLower[13] ), .B1(\addrUpper[13] ), .A2(
        \addrLower[14] ), .B2(\addrUpper[14] ), .A3(\addrLower[15] ), .B3(
        \addrUpper[15] ), .SL(\readFifoWordBuffedL[8] ) );
    MX81 \infifou0/u0/u1/u1/u0  ( .X(\addrUpper[3] ), .A(\addrword8[3] ),
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[3] ), .SLB(
        \readFifoWordBuffedU[1] ), .C(\addrword10[3] ), .SLC(
        \readFifoWordBuffedU[2] ), .D(\addrword11[3] ), .SLD(
        \readFifoWordBuffedU[3] ), .E(\addrword12[3] ), .SLE(
        \readFifoWordBuffedU[4] ), .F(\addrword13[3] ), .SLF(
        \readFifoWordBuffedU[5] ), .G(\addrword14[3] ), .SLG(
        \readFifoWordBuffedU[6] ), .H(\addrword15[3] ), .SLH(
        \readFifoWordBuffedU[7] ) );
    BUF8 \infifob1/b2/b1/b2/b2/b11  ( .X(\datainlch[11] ), .A(
        \datainNotBuf[11] ) );
    BUF8 \infifob1/b2/b1/b2/b1/b11  ( .X(\datainlch[10] ), .A(
        \datainNotBuf[10] ) );
    MX81 \infifou0/u1/u0/u1/u01  ( .X(\addrLower[5] ), .A(\addrword0[5] ),
        .SLA(\readFifoWordBuffedL[0] ), .B(\addrword1[5] ), .SLB(
        \readFifoWordBuffedL[1] ), .C(\addrword2[5] ), .SLC(
        \readFifoWordBuffedL[2] ), .D(\addrword3[5] ), .SLD(
        \readFifoWordBuffedL[3] ), .E(\addrword4[5] ), .SLE(
        \readFifoWordBuffedL[4] ), .F(\addrword5[5] ), .SLF(
        \readFifoWordBuffedL[5] ), .G(\addrword6[5] ), .SLG(
        \readFifoWordBuffedL[6] ), .H(\addrword7[5] ), .SLH(
        \readFifoWordBuffedL[7] ) );
    BUF8 \infifob1/b1/b1/b2/b1/b1  ( .A(fifoAddr[2]) );
    MX81 \infifou1/u0/u1/u0/u0/u0  ( .X(\addrUpper[12] ), .A(\addrword8[12] ),
        .SLA(\readFifoWordBuffedU[0] ), .B(\addrword9[12] ), .SLB(
        \readFifoWordBuffedU[1] ), .C(\addrword10[12] ), .SLC(
        \readFifoWordBuffedU[2] ), .D(\addrword11[12] ), .SLD(
        \readFifoWordBuffedU[3] ), .E(\addrword12[12] ), .SLE(
        \readFifoWordBuffedU[4] ), .F(\addrword13[12] ), .SLF(
        \readFifoWordBuffedU[5] ), .G(\addrword14[12] ), .SLG(
        \readFifoWordBuffedU[6] ), .H(\addrword15[12] ), .SLH(
        \readFifoWordBuffedU[7] ) );
    LATP4 \infifou2/u1/u1/u09  ( .Q0(\addrword2[24] ), .Q1(\addrword2[25] ),
        .Q2(\addrword2[26] ), .Q3(\addrword2[27] ), .D0(\datainlch[24] ), .D1(
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
        latchFifoWord[2]) );
    LATP4 \infifou2/u1/u0/u09  ( .Q0(\addrword2[20] ), .Q1(\addrword2[21] ),
        .Q2(\addrword2[22] ), .Q3(\addrword2[23] ), .D0(\datainlch[20] ), .D1(
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
        latchFifoWord[2]) );
    LATP4 \infifou2/u1/u1/u08  ( .Q0(\addrword1[24] ), .Q1(\addrword1[25] ),
        .Q2(\addrword1[26] ), .Q3(\addrword1[27] ), .D0(\datainlch[24] ), .D1(
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
        latchFifoWord[1]) );
    LATP4 \infifou2/u1/u0/u08  ( .Q0(\addrword1[20] ), .Q1(\addrword1[21] ),
        .Q2(\addrword1[22] ), .Q3(\addrword1[23] ), .D0(\datainlch[20] ), .D1(
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
        latchFifoWord[1]) );
    LATP4 \infifou2/u1/u1/u07  ( .Q0(\addrword0[24] ), .Q1(\addrword0[25] ),
        .Q2(\addrword0[26] ), .Q3(\addrword0[27] ), .D0(\datainlch[24] ), .D1(
        \datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
        latchFifoWord[0]) );
    LATP4 \infifou2/u1/u0/u07  ( .Q0(\addrword0[20] ), .Q1(\addrword0[21] ),
        .Q2(\addrword0[22] ), .Q3(\addrword0[23] ), .D0(\datainlch[20] ), .D1(
        \datainlch[21] ), .D2(\datainlch[22] ), .D3(\datainlch[23] ), .GB(
        latchFifoWord[0]) );
    LATP4 \infifou2/u1/u1/u06  ( .Q0(\addrword15[24] ), .Q1(\addrword15[25] ),
        .Q2(\addrword15[26] ), .Q3(\addrword15[27] ), .D0(\datainlch[24] ),
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
        latchFifoWord[15]) );
    LATP4 \infifou2/u1/u1/u05  ( .Q0(\addrword14[24] ), .Q1(\addrword14[25] ),
        .Q2(\addrword14[26] ), .Q3(\addrword14[27] ), .D0(\datainlch[24] ),
        .D1(\datainlch[25] ), .D2(\datainlch[26] ), .D3(\datainlch[27] ), .GB(
        latchFifoWord[14]) );
    LATP4 \infifou2/u1/u0/u06  ( .Q0(\addrword15[20] ), .Q1(\addrword15[21] ),
...

read more »



Sat, 29 Oct 1994 01:19:24 GMT  
 
 [ 1 post ] 

 Relevant Pages 

1. Verilog HDL parser/analyzer

2. verilog parser updated w/ verilog preprocessor

3. C to Verilog HDL

4. newbie question: difference and advantages between VHDL / Verilog HDL

5. verilog HDL info

6. Visual HDL for Verilog

7. 8255 verilog hdl code needed (please help)

8. What kind of chips does verilog HDL targets ?

9. Looking for VERILOG books (advanced HDL Coding / Coding for Synthesis)

10. verilog HDL and VHDL

11. Palnitkar's book: Verilog HDL...

12. Help on Verilog HDL

 

 
Powered by phpBB® Forum Software