OpenCores
URL https://opencores.org/ocsvn/sdcard_mass_storage_controller/sdcard_mass_storage_controller/trunk

Subversion Repositories sdcard_mass_storage_controller

[/] [sdcard_mass_storage_controller/] [trunk/] [backend/] [Actel/] [proasic3_redused.v] - Diff between revs 2 and 13

Show entire file | Details | Blame | View Log

Rev 2 Rev 13
Line 1... Line 1...
 
/********************************************************************
 
        Actel ProASIC3 Verilog Library
 
        NAME: proasic3.v
 
        DATE: Oct 31, 2006
 
*********************************************************************/
 
 
 
`timescale 1 ns / 100 ps
 
 
 
//----------------------------------------------------------------------
 
//---             VERILOG LIBRRAY PRIMITIVE SECTION                     
 
//----------------------------------------------------------------------
 
 
 
 
 
 
 
primitive Dffpr (Q, D, CLK, CLR, PRE, E, NOTIFIER_REG);
 
  output Q;
 
  input  NOTIFIER_REG;
 
  input  D, CLK, E, CLR, PRE;
 
  reg Q;
 
 
 
        table
 
 
 
        //  D   CLK   CLR  PRE   E  NOTIFIER_REG  :   Qt  :  Qt+1
 
 
 
            1   (01)    1   1    0      ?         :   ?   :   1;  // clocked data
 
            0   (01)    1   1    0      ?         :   ?   :   0;  // clocked data
 
            1   (01)    1   1    x      ?         :   1   :   1;  // clocked data
 
            0   (01)    1   1    x      ?         :   0   :   0;
 
            0   (01)    1   1    x      ?         :   1   :   x;
 
            1   (01)    1   1    x      ?         :   0   :   x;
 
            0   (01)    x   1    0      ?         :   ?   :   0;  // pessimism
 
            1   (01)    1   x    0      ?         :   ?   :   1;  // pessimism
 
            ?    ?      1   x    ?      ?         :   1   :   1;  // pessimism
 
            0    ?      1   x    ?      ?         :   x   :   x;  // pessimism
 
            ?    ?      1   x    ?      ?         :   0   :   x;
 
            ?    ?      x   x    ?      ?         :   ?   :   x;
 
            ?    ?      x   0    ?      ?         :   ?   :   x;
 
            ?    ?      x   1    ?      ?         :   0   :   0;
 
            ?    ?      x   1    ?      ?         :   1   :   x;
 
            ?    ?      0   ?    ?      ?         :   ?   :   0;
 
            ?    ?      1   0    ?      ?         :   ?   :   1;
 
            1   (x1)    1   1    0      ?         :   1   :   1;  // reducing pessimism
 
            0   (x1)    1   1    0      ?         :   0   :   0;
 
            1   (0x)    1   1    0      ?         :   1   :   1;
 
     0   (0x)    1   1    0      ?         :   0   :   0;
 
            1   (x1)    1   1    x      ?         :   1   :   1;  // reducing pessimism
 
            0   (x1)    1   1    x      ?         :   0   :   0;
 
            1   (0x)    1   1    x      ?         :   1   :   1;
 
            0   (0x)    1   1    x      ?         :   0   :   0;
 
            ?  (?1)     1   1    1      ?         :   ?   :   -;  //no action for CE = 1
 
            ?  (0x)     1   1    1      ?         :   ?   :   -;  //no action for CE = 1
 
            ?   ?       ?   ?    *      ?         :   ?   :   -;
 
            ?   (?0)    ?   ?    ?      ?         :   ?   :   -;  // ignore falling clock
 
            ?   (1x)    ?   ?    ?      ?         :   ?   :   -;  // ignore falling clock
 
            *    ?      ?   ?    ?      ?         :   ?   :   -;  // ignore data edges
 
            ?   ?     (?1)  ?    ?      ?         :   ?   :   -;  // ignore the edges on
 
            ?   ?       ?  (?1)  ?      ?         :   ?   :   -;  //       set and clear
 
            ?   ?       ?   ?    ?      *         :   ?   :   x;
 
 
 
        endtable
 
 endprimitive
 
 
 
 
 
primitive UDP_MUX2 (Q, A, B, SL);
 
output Q;
 
input A, B, SL;
 
 
 
// FUNCTION :  TWO TO ONE MULTIPLEXER
 
 
 
    table
 
    //  A   B   SL  :   Q
 
        0   0   ?   :   0 ;
 
        1   1   ?   :   1 ;
 
 
 
        0   ?   1   :   0 ;
 
        1   ?   1   :   1 ;
 
 
 
        ?   0   0   :   0 ;
 
        ?   1   0   :   1 ;
 
 
 
    endtable
 
endprimitive
 
 
 
 
 
 
 
primitive UDPN_MUX2 (Q, A, B, SL);
 
output Q;
 
input A, B, SL;
 
 
 
// FUNCTION :  TWO TO ONE MULTIPLEXER
 
 
 
    table
 
    //  A   B   SL  :   Q
 
        0   0   ?   :   1 ;
 
        1   1   ?   :   0 ;
 
 
 
        0   ?   1   :   1 ;
 
        1   ?   1   :   0 ;
 
 
 
        ?   0   0   :   1 ;
 
        ?   1   0   :   0 ;
 
 
 
    endtable
 
endprimitive
 
 
 
 
 
primitive UFPRB (Q, D, CP, RB, NOTIFIER_REG);
 
 
 
    output Q;
 
    input  NOTIFIER_REG,
 
           D, CP, RB;
 
    reg    Q;
 
 
 
// FUNCTION : POSITIVE EDGE TRIGGERED D FLIP-FLOP WITH ACTIVE LOW
 
//            ASYNCHRONOUS CLEAR ( Q OUTPUT UDP ).
 
 
 
    table
 
    //  D   CP      RB     NOTIFIER_REG  :   Qt  :   Qt+1
 
 
 
        1   (01)    1         ?          :   ?   :   1;  // clocked data
 
        0   (01)    1         ?          :   ?   :   0;
 
 
 
        0   (01)    x         ?          :   ?   :   0;  // pessimism
 
        0    ?      x         ?          :   0   :   0;  // pessimism
 
 
 
        1    0      x         ?          :   0   :   0;  // pessimism
 
        1    x    (?x)        ?          :   0   :   0;  // pessimism
 
        1    1    (?x)        ?          :   0   :   0;  // pessimism
 
        x    0      x         ?          :   0   :   0;  // pessimism
 
        x    x    (?x)        ?          :   0   :   0;  // pessimism
 
        x    1    (?x)        ?          :   0   :   0;  // pessimism
 
        1   (x1)    1         ?          :   1   :   1;  // reducing pessimism
 
        0   (x1)    1         ?          :   0   :   0;
 
        1   (0x)    1         ?          :   1   :   1;
 
        0   (0x)    1         ?          :   0   :   0;
 
        ?   ?       0         ?          :   ?   :   0;  // asynchronous clear
 
        ?   (?0)    ?         ?          :   ?   :   -;  // ignore falling clock
 
        ?   (1x)    ?         ?          :   ?   :   -;  // ignore falling clock
 
        *    ?      ?         ?          :   ?   :   -;  // ignore the edges on data
 
        ?    ?    (?1)        ?          :   ?   :   -;  // ignore the edges on clear
 
        ?    ?      ?         *          :   ?   :   x;
 
    endtable
 
endprimitive
 
 
 
 
 
 
 
 
 
//----------------------------------------------------------------------
 
//---             VERILOG LIBRRAY MODULES SECTION                     
 
//----------------------------------------------------------------------
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AND2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A & B
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AND2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 and      U2(Y, A, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AO1
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A & B) + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AO1(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 and      U142(NET_0_0, A, B);
 
 or       U143(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AO1A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A & B) + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AO1A(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_31(A_, A);
 
 and      U147(NET_0_0, A_, B);
 
 or       U148(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AO1B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A & B) + !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AO1B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_32(C_, C);
 
 and      U152(NET_0_0, A, B);
 
 or       U153(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AO1D
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A & !B) + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AO1D(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_35(A_, A);
 
 not    INV_36(B_, B);
 
 and      U162(NET_0_0, A_, B_);
 
 or       U163(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AOI1
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A & B + C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AOI1(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 and      U192(NET_0_0, A, B);
 
 nor      U193(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AOI1B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A & B + !C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AOI1B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_45(C_, C);
 
 and      U202(NET_0_0, A, B);
 
 nor      U203(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AO1C
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A & B) + !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AO1C(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_33(A_, A);
 
 not    INV_34(C_, C);
 
 and      U157(NET_0_0, A_, B);
 
 or       U158(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AX1
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A & B) ^ C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AX1(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_57(A_, A);
 
 and      U245(NET_0_0, A_, B);
 
 xor      U246(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AX1B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A & !B) ^ C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AX1B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_59(A_, A);
 
 not    INV_60(B_, B);
 
 and      U255(NET_0_0, A_, B_);
 
 xor      U256(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AX1C
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A & B) ^ C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AX1C(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 and      U260(NET_0_0, A, B);
 
 xor      U261(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AX1D
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !((!A & !B) ^ C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AX1D(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_61(A_, A);
 
 not    INV_62(B_, B);
 
 and      U265(NET_0_0, A_, B_);
 
 xnor     U266(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : AX1E
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !((A & B) ^ C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module AX1E(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 and      U270(NET_0_0, A, B);
 
 xnor     U271(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : CLKINT
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module CLKINT(Y,A);
 
 input A;
 
 output Y;
 
 
 
 assign Y = A;
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------
 
 CELL NAME : DFN1C1
 
 CELL TYPE : sequential Logic
 
 CELL SEQ EQN : DFF[Q=Q,CLK =CLK, CLR=CLR, D=D ];
 
----------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module DFN1C1(CLR, CLK, Q,D);
 
 input D,CLR,CLK;
 
 output Q;
 
 reg NOTIFY_REG;
 
 
 
 not INV_CLR_0(CLR_0, CLR);
 
 
 
 UFPRB DF_0( Q, D, CLK, CLR_0, NOTIFY_REG );
 
 
 
// some temp signals created for timing checking sections
 
 
 
      not U0_I2 (_CLR0, CLR);
 
      buf U_c0 (Enable01,_CLR0);
 
       buf U_c2 (Enable02, _CLR0);
 
      buf U_c6 (Enable05, _CLR0);
 
 
 
//--------------------------------------------------------------
 
//              Timing Checking Section 
 
//-------------------------------------------------------------
 
 
 
 specify
 
 
 
        specparam   tpdLH_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdLH_CLR_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLR_to_Q = (0.1:0.1:0.1);
 
 
 
 
 
 
 
        //check timing delay for output
 
 
 
        (posedge CLK => (Q +: D))=(tpdLH_CLK_to_Q, tpdHL_CLK_to_Q);
 
        (posedge CLR => (Q +: 1'b0)) = (tpdLH_CLR_to_Q, tpdHL_CLR_to_Q);
 
 
 
        //checking setup and hold timing for inputs
 
 
 
        $setup(posedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $setup(negedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, posedge D,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, negedge D,0.0, NOTIFY_REG);
 
 
 
        //checking timing for control signals
 
 
 
        $hold(posedge CLK, negedge CLR,0.0, NOTIFY_REG);
 
 
 
        //checking the pulse width
 
 
 
        $width(posedge CLK &&& Enable05 ,0,  0, NOTIFY_REG);
 
        $width(negedge CLK &&& Enable05, 0, 0, NOTIFY_REG);
 
        $width(posedge CLR, 0.0, 0, NOTIFY_REG);
 
 
 
        //checing the recovery data
 
 
 
        $recovery(negedge CLR, posedge CLK, 0.0, NOTIFY_REG);
 
 
 
 endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
/*--------------------------------------------------------------
 
 CELL NAME : DFN1E1C1
 
 CELL TYPE : sequential Logic
 
 CELL SEQ EQN : DFF[Q=Q,CLK =CLK, E=E, CLR=CLR, D=D ];
 
----------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module DFN1E1C1(CLR, E, CLK, Q,D);
 
 input D,CLR,E,CLK;
 
 output Q;
 
 supply1 VCC_0;
 
 reg NOTIFY_REG;
 
 
 
 not INV_CLR_0(CLR_0, CLR);
 
 not INV_EN_0(E_0, E);
 
 
 
 Dffpr DF_0(Q, D,CLK,CLR_0, VCC_0, E_0, NOTIFY_REG);
 
 
 
// some temp signals created for timing checking sections
 
 
 
      not U0_I2 (_CLR0, CLR);
 
      and U_c0 (Enable01, E, _CLR0);
 
      and U_c2 (Enable02, E, _CLR0);
 
      buf U_c4 (Enable04, E);
 
      buf U_c6 (Enable05, _CLR0);
 
 
 
//--------------------------------------------------------------
 
//              Timing Checking Section 
 
//-------------------------------------------------------------
 
 
 
 specify
 
 
 
        specparam   tpdLH_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdLH_CLR_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLR_to_Q = (0.1:0.1:0.1);
 
 
 
 
 
 
 
        //check timing delay for output
 
 
 
        (posedge CLK => (Q +: D))=(tpdLH_CLK_to_Q, tpdHL_CLK_to_Q);
 
        (posedge CLR => (Q +: 1'b0)) = (tpdLH_CLR_to_Q, tpdHL_CLR_to_Q);
 
 
 
        //checking setup and hold timing for inputs
 
 
 
        $setup(posedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $setup(negedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, posedge D,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, negedge D,0.0, NOTIFY_REG);
 
 
 
        //checking timing for control signals
 
 
 
        $setup(posedge E,posedge CLK &&& Enable05,  0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, posedge E,0.0, NOTIFY_REG);
 
        $setup(negedge E,posedge CLK &&& Enable05, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, negedge E,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable04, negedge CLR,0.0, NOTIFY_REG);
 
 
 
        //checking the pulse width
 
 
 
        $width(posedge CLK &&& Enable05 ,0,  0, NOTIFY_REG);
 
        $width(negedge CLK &&& Enable05, 0, 0, NOTIFY_REG);
 
        $width(posedge CLR, 0.0, 0, NOTIFY_REG);
 
 
 
        //checing the recovery data
 
 
 
        $recovery(negedge CLR, posedge CLK &&& Enable04, 0.0, NOTIFY_REG);
 
 
 
 endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------
 
 CELL NAME : DFN1E0C1
 
 CELL TYPE : sequential Logic
 
 CELL SEQ EQN : DFF[Q=Q,CLK =CLK, _E=E, CLR=CLR, D=D ];
 
----------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module DFN1E0C1(CLR, E, CLK, Q,D);
 
 input D,CLR,E,CLK;
 
 output Q;
 
 supply1 VCC_0;
 
 reg NOTIFY_REG;
 
 
 
 not INV_CLR_0(CLR_0, CLR);
 
 
 
 Dffpr DF_0(Q, D,CLK,CLR_0, VCC_0, E, NOTIFY_REG);
 
 
 
// some temp signals created for timing checking sections
 
 
 
      not U0_I2 (_CLR0, CLR);
 
      not U0_I3 (_E0, E);
 
      and U_c0 (Enable01, _E0, _CLR0);
 
      and U_c2 (Enable02, _E0, _CLR0);
 
      buf U_c4 (Enable04, _E0);
 
      buf U_c6 (Enable05, _CLR0);
 
 
 
//--------------------------------------------------------------
 
//              Timing Checking Section 
 
//-------------------------------------------------------------
 
 
 
 specify
 
 
 
        specparam   tpdLH_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdLH_CLR_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLR_to_Q = (0.1:0.1:0.1);
 
 
 
 
 
 
 
        //check timing delay for output
 
 
 
        (posedge CLK => (Q +: D))=(tpdLH_CLK_to_Q, tpdHL_CLK_to_Q);
 
        (posedge CLR => (Q +: 1'b0)) = (tpdLH_CLR_to_Q, tpdHL_CLR_to_Q);
 
 
 
        //checking setup and hold timing for inputs
 
 
 
        $setup(posedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $setup(negedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, posedge D,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, negedge D,0.0, NOTIFY_REG);
 
 
 
        //checking timing for control signals
 
 
 
        $setup(posedge E,posedge CLK &&& Enable05,  0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, posedge E,0.0, NOTIFY_REG);
 
        $setup(negedge E,posedge CLK &&& Enable05, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, negedge E,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable04, negedge CLR,0.0, NOTIFY_REG);
 
 
 
        //checking the pulse width
 
 
 
        $width(posedge CLK &&& Enable05 ,0,  0, NOTIFY_REG);
 
        $width(negedge CLK &&& Enable05, 0, 0, NOTIFY_REG);
 
        $width(posedge CLR, 0.0, 0, NOTIFY_REG);
 
 
 
        //checing the recovery data
 
 
 
        $recovery(negedge CLR, posedge CLK &&& Enable04, 0.0, NOTIFY_REG);
 
 
 
 endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------
 
 CELL NAME : DFN1E1P1
 
 CELL TYPE : sequential Logic
 
 CELL SEQ EQN : DFF[Q=Q,CLK =CLK, E=E, PRE=PRE, D=D ];
 
----------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module DFN1E1P1(PRE, E, CLK, Q,D);
 
 input D,PRE,E,CLK;
 
 output Q;
 
 supply1 VCC_0;
 
 reg NOTIFY_REG;
 
 
 
 not INV_PRE_0(PRE_0, PRE);
 
 not INV_EN_0(E_0, E);
 
 
 
 Dffpr DF_0(Q, D,CLK,VCC_0, PRE_0, E_0, NOTIFY_REG);
 
 
 
// some temp signals created for timing checking sections
 
 
 
      not U0_I1 (_PRE0, PRE);
 
      and U_c0 (Enable01, E, _PRE0);
 
      buf U_c2 (Enable02, E);
 
      and U_c4 (Enable04, E, _PRE0);
 
       buf U_c6 (Enable05, _PRE0);
 
 
 
//--------------------------------------------------------------
 
//              Timing Checking Section 
 
//-------------------------------------------------------------
 
 
 
 specify
 
 
 
        specparam   tpdLH_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdLH_PRE_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_PRE_to_Q = (0.1:0.1:0.1);
 
 
 
 
 
 
 
        //check timing delay for output
 
 
 
        (posedge CLK => (Q +: D))=(tpdLH_CLK_to_Q, tpdHL_CLK_to_Q);
 
        (posedge PRE => (Q +: 1'b1)) = (tpdLH_PRE_to_Q, tpdHL_PRE_to_Q);
 
 
 
        //checking setup and hold timing for inputs
 
 
 
        $setup(posedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $setup(negedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, posedge D,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, negedge D,0.0, NOTIFY_REG);
 
 
 
        //checking timing for control signals
 
 
 
        $setup(posedge E,posedge CLK &&& Enable05,  0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, posedge E,0.0, NOTIFY_REG);
 
        $setup(negedge E,posedge CLK &&& Enable05, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable05, negedge E,0.0, NOTIFY_REG);
 
 
 
        $hold(posedge CLK &&& Enable02, negedge PRE,0.0, NOTIFY_REG);
 
 
 
        //checking the pulse width
 
 
 
        $width(posedge CLK &&& Enable05 ,0,  0, NOTIFY_REG);
 
        $width(negedge CLK &&& Enable05, 0, 0, NOTIFY_REG);
 
        $width(posedge PRE,  0.0, 0, NOTIFY_REG);
 
 
 
        //checing the recovery data
 
 
 
        $recovery(negedge PRE, posedge CLK &&& Enable02, 0.0, NOTIFY_REG);
 
 
 
 endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------
 
 CELL NAME : DFN1P1
 
 CELL TYPE : sequential Logic
 
 CELL SEQ EQN : DFF[Q=Q,CLK =CLK, PRE=PRE, D=D ];
 
----------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module DFN1P1(PRE, CLK, Q,D);
 
 input D,PRE,CLK;
 
 output Q;
 
 supply1 VCC_0;
 
 supply0 GND_0;
 
 reg NOTIFY_REG;
 
 
 
 not INV_PRE_0(PRE_0, PRE);
 
 
 
 Dffpr DF_0(Q, D,CLK,VCC_0, PRE_0, GND_0, NOTIFY_REG);
 
 
 
// some temp signals created for timing checking sections
 
 
 
      not U0_I1 (_PRE0, PRE);
 
      buf U_c0 (Enable01, _PRE0);
 
       buf U_c4 (Enable04, _PRE0);
 
       buf U_c6 (Enable05, _PRE0);
 
 
 
//--------------------------------------------------------------
 
//              Timing Checking Section 
 
//-------------------------------------------------------------
 
 
 
 specify
 
 
 
        specparam   tpdLH_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_CLK_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdLH_PRE_to_Q = (0.1:0.1:0.1);
 
        specparam   tpdHL_PRE_to_Q = (0.1:0.1:0.1);
 
 
 
 
 
 
 
        //check timing delay for output
 
 
 
        (posedge CLK => (Q +: D))=(tpdLH_CLK_to_Q, tpdHL_CLK_to_Q);
 
        (posedge PRE => (Q +: 1'b1)) = (tpdLH_PRE_to_Q, tpdHL_PRE_to_Q);
 
 
 
        //checking setup and hold timing for inputs
 
 
 
        $setup(posedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $setup(negedge D,posedge CLK &&& Enable01, 0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, posedge D,0.0, NOTIFY_REG);
 
        $hold(posedge CLK &&& Enable01, negedge D,0.0, NOTIFY_REG);
 
 
 
        //checking timing for control signals
 
 
 
 
 
        $hold(posedge CLK, negedge PRE,0.0, NOTIFY_REG);
 
 
 
        //checking the pulse width
 
 
 
        $width(posedge CLK &&& Enable05 ,0,  0, NOTIFY_REG);
 
        $width(negedge CLK &&& Enable05, 0, 0, NOTIFY_REG);
 
        $width(posedge PRE,  0.0, 0, NOTIFY_REG);
 
 
 
        //checing the recovery data
 
 
 
        $recovery(negedge PRE, posedge CLK, 0.0, NOTIFY_REG);
 
 
 
 endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : GND
 
 CELL TYPE : comb
 
 CELL LOGIC : Y=0
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module GND(Y);
 
 output Y;
 
 
 
 supply0        Y;
 
 
 
       specify
 
 
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : MX2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A & !S) + (B & S)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module MX2(Y,A,S,B);
 
 input A,S,B;
 
 output Y;
 
 wire NET_0_0, NET_0_1;
 
 
 
 not    INV_110(S_, S);
 
 UDP_MUX2   U594(Y, A, B, S_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_S_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_S_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (S => Y ) = ( tpdLH_S_to_Y, tpdHL_S_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NAND2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A & B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NAND2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 nand     U610(Y, A, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A + B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 nor      U649(Y, A, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR2A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(!A + B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR2A(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_130(A_, A);
 
 nor      U652(Y, A_, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR2B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(!A + !B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR2B(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_131(A_, A);
 
 not    INV_132(B_, B);
 
 nor      U655(Y, A_, B_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR3
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A + B + C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR3(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 or       U662(NET_0_0, A, B);
 
 nor      U663(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR3A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(!A + B + C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR3A(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_134(A_, A);
 
 or       U667(NET_0_0, A_, B);
 
 nor      U668(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR3B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(!A + !B + C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR3B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_135(A_, A);
 
 not    INV_136(B_, B);
 
 or       U672(NET_0_0, A_, B_);
 
 nor      U673(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : NOR3C
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(!A + !B + !C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module NOR3C(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_137(A_, A);
 
 not    INV_138(B_, B);
 
 not    INV_139(C_, C);
 
 or       U677(NET_0_0, A_, B_);
 
 nor      U678(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OA1
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A + B) & C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OA1(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 or       U692(NET_0_0, A, B);
 
 and      U693(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OA1A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A + B) & C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OA1A(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_143(A_, A);
 
 or       U697(NET_0_0, A_, B);
 
 and      U698(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OA1B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !C & (A + B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OA1B(Y,C,A,B);
 
 input C,A,B;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_144(C_, C);
 
 and      U701(Y, C_, NET_0_0);
 
 or       U703(NET_0_0, A, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OA1C
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (!A + B) & !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OA1C(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_145(A_, A);
 
 not    INV_146(C_, C);
 
 or       U707(NET_0_0, A_, B);
 
 and      U708(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A + B
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 or       U756(Y, A, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR2A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !A + B
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR2A(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_156(A_, A);
 
 or       U759(Y, A_, B);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR2B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !A + !B
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR2B(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_157(A_, A);
 
 not    INV_158(B_, B);
 
 or       U762(Y, A_, B_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR3
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A + B + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR3(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 or       U769(NET_0_0, A, B);
 
 or       U770(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR3A
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !A + B + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR3A(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_160(A_, A);
 
 or       U774(NET_0_0, A_, B);
 
 or       U775(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR3B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !A + !B + C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR3B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_161(A_, A);
 
 not    INV_162(B_, B);
 
 or       U779(NET_0_0, A_, B_);
 
 or       U780(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OR3C
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !A + !B + !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OR3C(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_163(A_, A);
 
 not    INV_164(B_, B);
 
 not    INV_165(C_, C);
 
 or       U784(NET_0_0, A_, B_);
 
 or       U785(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : OAI1
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !((A + B) & C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module OAI1(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 or       U732(NET_0_0, A, B);
 
 nand     U733(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : VCC
 
 CELL TYPE : comb
 
 CELL LOGIC : Y=1
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module VCC(Y);
 
 output Y;
 
 
 
 supply1    Y;
 
 
 
       specify
 
 
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : XA1B
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = (A ^ B) & !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module XA1B(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_173(A_, A);
 
 not    INV_174(B_, B);
 
 not    INV_175(C_, C);
 
 UDP_MUX2   U949(NET_0_0, B, B_, A_);
 
 and      U951(Y, NET_0_0, C_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : XNOR2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A ^ B)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module XNOR2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_183(A_, A);
 
 not    INV_184(B_, B);
 
 UDPN_MUX2  U972(Y, B, B_, A_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : XNOR3
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = !(A ^ B ^ C)
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module XNOR3(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0;
 
 
 
 not    INV_187(A_, A);
 
 not    INV_188(B_, B);
 
 UDP_MUX2   U981(NET_0_0, B, B_, A_);
 
 xnor     U983(Y, NET_0_0, C);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : XOR2
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A ^ B
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module XOR2(Y,A,B);
 
 input A,B;
 
 output Y;
 
 
 
 not    INV_193(A_, A);
 
 not    INV_194(B_, B);
 
 UDP_MUX2   U998(Y, B, B_, A_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 
/*--------------------------------------------------------------------
 
 CELL NAME : ZOR3
 
 CELL TYPE : comb
 
 CELL LOGIC : Y = A & B & C + !A & !B & !C
 
---------------------------------------------------------------------*/
 
 
 
`suppress_faults
 
`enable_portfaults
 
`celldefine
 
`delay_mode_path
 
`timescale 1 ns / 100 ps
 
 
 
module ZOR3(Y,A,B,C);
 
 input A,B,C;
 
 output Y;
 
 wire NET_0_0, NET_0_1, NET_0_2, NET_0_3;
 
 
 
 not    INV_199(A_, A);
 
 not    INV_200(B_, B);
 
 not    INV_201(C_, C);
 
 and      U1013(NET_0_0, A, B);
 
 UDP_MUX2   U1014(Y, NET_0_0, NET_0_2, C);
 
 and      U1017(NET_0_2, A_, B_);
 
 
 
       specify
 
 
 
                specparam tpdLH_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_A_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_B_to_Y = (0.1:0.1:0.1);
 
                specparam tpdLH_C_to_Y = (0.1:0.1:0.1);
 
                specparam tpdHL_C_to_Y = (0.1:0.1:0.1);
 
                specparam MacroType = "comb";
 
 
 
                //pin to pin path delay 
 
 
 
                (A => Y ) = ( tpdLH_A_to_Y, tpdHL_A_to_Y );
 
                (B => Y ) = ( tpdLH_B_to_Y, tpdHL_B_to_Y );
 
                (C => Y ) = ( tpdLH_C_to_Y, tpdHL_C_to_Y );
 
   endspecify
 
 
 
endmodule
 
 
 
`endcelldefine
 
`disable_portfaults
 
`nosuppress_faults
 
 
 
 
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.