-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path1D-FSSP.ma
63 lines (53 loc) · 4.22 KB
/
1D-FSSP.ma
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
#include(1D-FSSP-Macro.inc)
[top]
components : FSSP
[FSSP]
type : cell
width : 12
height : 1
delay : transport
defaultDelayTime : 100
border : wrapped
neighbors : FSSP(0,-1) FSSP(0,0) FSSP(0,1)
initialvalue : 0
initialrowvalue : 0 100000000071
localtransition : FSSP-rule
[FSSP-rule]
rule : {#macro(L)} 100 { (0,0) = #macro(D) and (0,-1) = #macro(L)}
rule : {#macro(G)} 100 { (0,0) = #macro(D) and (0,-1) = #macro(S)}
rule : {#macro(C)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(A) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(G)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(A) and (0,1) = #macro(L)}
rule : {#macro(A)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(C) and (0,1) = #macro(L)}
rule : {#macro(G)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(C) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(C)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(G) and (0,1) = #macro(L)}
rule : {#macro(A)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(G) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(D)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(L) and (0,1) = #macro(D)}
rule : {#macro(D)} 100 { (0,0) = #macro(L) and (0,-1) = #macro(S) and (0,1) = #macro(D)}
rule : {#macro(B)} 100 { (0,0) = #macro(G) and ((0,-1) = #macro(A) or (0,-1) = #macro(B) or (0,-1) = #macro(G)) and (0,1) = #macro(L)}
rule : {#macro(A)} 100 { (0,0) = #macro(G) and (0,-1) = #macro(C) and ((0,1) = #macro(G) or (0,1) = #macro(L) or (0,1) = #macro(S))}
rule : {#macro(A)} 100 { (0,0) = #macro(G) and (0,-1) = #macro(S) and (0,1) = #macro(L)}
rule : {#macro(F)} 100 { (0,0) = #macro(G) and ((0,-1) = #macro(G) or (0,-1) = #macro(S)) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(B)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(A) and ((0,1) = #macro(B) or (0,1) = #macro(G))}
rule : {#macro(C)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(B) and ((0,1) = #macro(C) or (0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(C)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(A) and (0,1) = #macro(C)}
rule : {#macro(C)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(G) and ((0,1) = #macro(C) or (0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(G)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(B) and ((0,1) = #macro(B) or (0,1) = #macro(L))}
rule : {#macro(G)} 100 { (0,0) = #macro(A) and ((0,-1) = #macro(S) or (0,-1) = #macro(L)) and (0,1) = #macro(C)}
rule : {#macro(L)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(L) and (0,1) = #macro(B)}
rule : {#macro(F)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(A) and (0,1) = #macro(S)}
rule : {#macro(F)} 100 { (0,0) = #macro(A) and (0,-1) = #macro(S) and (0,1) = #macro(A)}
rule : {#macro(L)} 100 { (0,0) = #macro(B) and ((0,-1) = #macro(A) or (0,-1) = #macro(L)) and (0,1) = #macro(C)}
rule : {#macro(L)} 100 { (0,0) = #macro(B) and (0,-1) = #macro(C) and ((0,1) = #macro(G) or (0,1) = #macro(L) or (0,1) = #macro(S))}
rule : {#macro(A)} 100 { (0,0) = #macro(B) and ((0,-1) = #macro(B) or (0,-1) = #macro(C)) and (0,1) = #macro(A)}
rule : {#macro(C)} 100 { (0,0) = #macro(B) and (0,-1) = #macro(B) and (0,1) = #macro(C)}
rule : {#macro(C)} 100 { (0,0) = #macro(B) and (0,-1) = #macro(G) and ((0,1) = #macro(A) or (0,1) = #macro(L))}
rule : {#macro(G)} 100 { (0,0) = #macro(B) and (0,-1) = #macro(L) and (0,1) = #macro(A)}
rule : {#macro(G)} 100 { (0,0) = #macro(B) and (0,-1) = #macro(G) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(G)} 100 { (0,0) = #macro(B) and ((0,-1) = #macro(A) or (0,-1) = #macro(B)) and (0,1) = #macro(L)}
rule : {#macro(A)} 100 { (0,0) = #macro(C) and ((0,-1) = #macro(L) or (0,-1) = #macro(C)) and (0,1) = #macro(A)}
rule : {#macro(G)} 100 { (0,0) = #macro(C) and (0,-1) = #macro(B) and ((0,1) = #macro(G) or (0,1) = #macro(S))}
rule : {#macro(G)} 100 { (0,0) = #macro(C) and (0,-1) = #macro(L) and ((0,1) = #macro(B) or (0,1) = #macro(G))}
rule : {#macro(B)} 100 { (0,0) = #macro(C) and (0,-1) = #macro(A) and ((0,1) = #macro(B) or (0,1) = #macro(G) or (0,1) = #macro(L) or (0,1) = #macro(S))}
rule : {#macro(B)} 100 { (0,0) = #macro(C) and (0,-1) = #macro(G) and ((0,1) = #macro(B) or (0,1) = #macro(G) or (0,1) = #macro(L) or (0,1) = #macro(S))}
rule : {#macro(B)} 100 { (0,0) = #macro(C) and (0,-1) = #macro(C) and ((0,1) = #macro(B) or (0,1) = #macro(G))}
rule : {(0,0)} 100 { t }