DLSFQB.v 2.67 KB
// VERSION:3.01 DATE:1999/09/24 UDP
`timescale 1ps / 1ps
`celldefine
`ifdef verifault
    `suppress_faults
`endif

primitive DLSFQB ( Q, D, C, R, S, notifier );
    output Q;
    reg    Q;
    input  D,C,R,S,notifier;

    table
    // D    C    R    S notifier  : Qtn        :  Qtn+1

     (?1)   1    1    1    ?      :  ?         :   0;
       1  (?1)   1    1    ?      :  ?         :   0;
       1    1  (?1)   1    ?      :  ?         :   0;
       1    1    1  (?1)   ?      :  ?         :   0;
     (?0)   1    1    1    ?      :  ?         :   1;
       0  (?1)   1    1    ?      :  ?         :   1;
       0    1  (?1)   1    ?      :  ?         :   1;
       0    1    1  (?1)   ?      :  ?         :   1;
       ?    0   (?1)  1    ?      :  ?         :   -;
       ?    0    1   (?1)  ?      :  ?         :   -;
       1  (?x)   1    1    ?      :  0         :   -;
       0  (?x)   1    1    ?      :  1         :   -;
     (?1)   x    1    1    ?      :  0         :   -;
     (?0)   x    1    1    ?      :  1         :   -;
       0    x   (?1)  1    ?      :  1         :   -; // added 9/22/94
       1    x    1   (?1)  ?      :  0         :   -; // added 9/22/94
       *    0    1    1    ?      :  ?         :   -;

       0    0    x    1    ?      :  1         :   -; // added 3/12/91
       1    0    x    1    ?      :  1         :   -; // added 9/28/94
       0    1    x    1    ?      :  ?         :   1;
       0    x    x    1    ?      :  1         :   -;
       x    0    x    1    ?      :  1         :   -;  
     
       1    0    1    x    ?      :  0         :   -; // added 4/12/95
       0    0    1    x    ?      :  0         :   -; // added 4/12/95
       1    1    1    x    ?      :  ?         :   0; // added 4/12/95
       1    x    1    x    ?      :  0         :   -; // added 4/12/95
       x    0    1    x    ?      :  0         :   -; // added 4/12/95

       ?    ?    1    0    ?      :  ?         :   0;
       ?    ?    0    1    ?      :  ?         :   1;

//       ?    ?    0    0    ?      :  ?         :   0; // set & reset
//       ?    ?    0    x    ?      :  ?         :   x; // set & reset
//       ?    ?    x    0    ?      :  ?         :   0; // set & reset
       ?    ?    0    0    ?      :  ?         :   x; // set & reset
       ?    ?    0    x    ?      :  ?         :   x; // set & reset
       ?    ?    x    0    ?      :  ?         :   x; // set & reset

       b  (?0)   1    1    ?      :  ?         :   -;
       ?    ?    ?    ?    *      :  ?         :   x; // On any changes of the
                                                      //notifier output an x

    endtable
endprimitive

`ifdef verifault
	`nosuppress_faults
`endif
`endcelldefine