DLSFQ.v
2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// VERSION:3.01 DATE:1999/09/24 UDP
`timescale 1ps / 1ps
`celldefine
`ifdef verifault
`suppress_faults
`endif
primitive DLSFQ ( 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 ? : ? : 1;
1 (?1) 1 1 ? : ? : 1;
1 1 (?1) 1 ? : ? : 1;
1 1 1 (?1) ? : ? : 1;
(?0) 1 1 1 ? : ? : 0;
0 (?1) 1 1 ? : ? : 0;
0 1 (?1) 1 ? : ? : 0;
0 1 1 (?1) ? : ? : 0;
? 0 (?1) 1 ? : ? : -;
? 0 1 (?1) ? : ? : -;
1 (?x) 1 1 ? : 1 : -;
0 (?x) 1 1 ? : 0 : -;
(?1) x 1 1 ? : 1 : -;
(?0) x 1 1 ? : 0 : -;
0 x (?1) 1 ? : 0 : -; // added 9/22/94
1 x 1 (?1) ? : 1 : -; // added 9/22/94
* 0 1 1 ? : ? : -;
0 0 x 1 ? : 0 : -; // added 3/12/91
1 0 x 1 ? : 0 : -; // added 9/28/94
0 1 x 1 ? : ? : 0;
0 x x 1 ? : 0 : -;
x 0 x 1 ? : 0 : -;
1 0 1 x ? : 1 : -; // added 4/12/95
0 0 1 x ? : 1 : -; // added 4/12/95
1 1 1 x ? : ? : 1; // added 4/12/95
1 x 1 x ? : 1 : -; // added 4/12/95
x 0 1 x ? : 1 : -; // added 4/12/95
? ? 1 0 ? : ? : 1;
? ? 0 1 ? : ? : 0;
// ? ? 0 0 ? : ? : 1; // set & reset
// ? ? 0 x ? : ? : x; // set & reset
// ? ? x 0 ? : ? : 1; // set & reset
? ? 0 0 ? : ? : x; // set & reset
? ? 0 x ? : ? : x; // set & reset
? ? x 0 ? : ? : x; // set & reset
b (?0) 1 1 ? : ? : -;
? ? ? ? * : ? : x; // Output an x if the
//notifier changes
endtable
endprimitive
`ifdef verifault
`nosuppress_faults
`endif
`endcelldefine