-
Notifications
You must be signed in to change notification settings - Fork 1
/
fuel.txt
65 lines (55 loc) · 1.59 KB
/
fuel.txt
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
X::X 0120 2101 2102 0120 2
0L:X0R0#XOR:0L 0212 0112 1000 0212 0
0R:0RX0#X0L:0L 0121 0221 2000 0121 0
0L:X0L0#0RX:0R 2212 0221 0220 2212 0
0R:0LX0#0LX:0R 2202 2022 0220 2202 2
0L:X1L0#1LX,
0L1R0#0R1R:0R 2202 0122 0122 2202 0
0L:X1R0#1LX,
0L1L0#1R0R:0R 2102 2121 0121 2102 2
1L:1L0R0#1R0R,
X0L0#0LX:1R 2012 2122 0122 2202 0
1L:1L0L0#0R1R,
X0R0#0LX:1R 2112 0120 0120 2112 0
<win>":"<s0: inL inR "0#" outL outR> ... ":"<wout>]
where in/out are 0,1,... and X.
initially unconnected inputs float at 0
the circuit is asynchronous ... i.e. forward propagation is instantaneous;
backward happens at next clock tick
!! world inputs/outputs do not need to be on the same gate:
0L:X1L0#1L1R,
0L0R0#0RX:1R 2202 0111 0112 2202 0
the (non-commutative) operations are:
R
|0 1 2
Lout = Lin - Rin -+-----
0|0 2 1
L 1|1 0 2
2|2 1 0
|0 1 2
Rout = (Lin * Rin) + 2 -+-------
0|2 2 2
1|2 0 1
2|2 1 0
observations:
a
------------
0 0
1 1 0
2 2 1
3 10 2
4 11 0
5 12 2
6 20 1
7 21 0
8 22 1
9 100 2 f(a0)
10 101 1 f(a1)
11 102 0 f(a2) where f 0 |-> 2
12 110 2 f(a3) f 1 |-> 1
13 111 0 f(a4) f 2 |-> 0
14 112 1 f(a5)
15 120 2 f(a6)
16 121 0 f(a7)
17 122 2 f(a8)
18 200 ?