endmodule
+== Test =================================================================
+// expected output
+#expect 9
+
+// ships required in order to run this code
+#ship debug : Debug
+#ship fifo : Fifo
+
+debug.in: [*] take, deliver;
+9: sendto fifo.in;
+fifo.in:
+ take;
+ [100] deliver;
+fifo.out:
+ (99) take, sendto fifo.in;
+ (1) take, sendto debug.in;
+
+
+
== Contributors =========================================================
Adam Megacz <megacz@cs.berkeley.edu>
end
+== Test =================================================================
+#expect 0
+#expect -128
+#expect 64
+#expect -64
+#expect 32
+#expect -96
+#expect 96
+#expect -32
+#expect 16
+#expect -112
+#expect 80
+#expect -48
+#expect 48
+#expect -80
+#expect 112
+#expect -16
+#expect 8
+#expect -120
+#expect 72
+#expect -56
+#expect 40
+#expect -88
+#expect 104
+#expect -24
+#expect 24
+#expect -104
+#expect 88
+#expect -40
+#expect 56
+#expect -72
+#expect 120
+#expect -8
+#expect 4
+#expect -124
+#expect 68
+#expect -60
+#expect 36
+#expect -92
+#expect 100
+#expect -28
+#expect 20
+#expect -108
+#expect 84
+#expect -44
+#expect 52
+#expect -76
+#expect 116
+#expect -12
+#expect 12
+#expect -116
+#expect 76
+#expect -52
+#expect 44
+#expect -84
+#expect 108
+#expect -20
+#expect 28
+#expect -100
+#expect 92
+#expect -36
+#expect 60
+#expect -68
+#expect 124
+#expect -4
+#expect 2
+#expect -126
+#expect 66
+#expect -62
+#expect 34
+#expect -94
+#expect 98
+#expect -30
+#expect 18
+#expect -110
+#expect 82
+#expect -46
+#expect 50
+#expect -78
+#expect 114
+#expect -14
+#expect 10
+#expect -118
+#expect 74
+#expect -54
+#expect 42
+#expect -86
+#expect 106
+#expect -22
+#expect 26
+#expect -102
+#expect 90
+#expect -38
+#expect 58
+#expect -70
+#expect 122
+#expect -6
+#expect 6
+#expect -122
+#expect 70
+#expect -58
+#expect 38
+#expect -90
+#expect 102
+#expect -26
+#expect 22
+#expect -106
+#expect 86
+#expect -42
+#expect 54
+#expect -74
+#expect 118
+#expect -10
+#expect 14
+#expect -114
+#expect 78
+#expect -50
+#expect 46
+#expect -82
+#expect 110
+#expect -18
+#expect 30
+#expect -98
+#expect 94
+#expect -34
+#expect 62
+#expect -66
+#expect 126
+#expect -2
+#expect 1
+#expect -127
+#expect 65
+#expect -63
+#expect 33
+#expect -95
+#expect 97
+#expect -31
+#expect 17
+#expect -111
+#expect 81
+#expect -47
+#expect 49
+#expect -79
+#expect 113
+#expect -15
+#expect 9
+#expect -119
+#expect 73
+#expect -55
+#expect 41
+#expect -87
+#expect 105
+#expect -23
+#expect 25
+#expect -103
+#expect 89
+#expect -39
+#expect 57
+#expect -71
+#expect 121
+#expect -7
+#expect 5
+#expect -123
+#expect 69
+#expect -59
+#expect 37
+#expect -91
+#expect 101
+#expect -27
+#expect 21
+#expect -107
+#expect 85
+#expect -43
+#expect 53
+#expect -75
+#expect 117
+#expect -11
+#expect 13
+#expect -115
+#expect 77
+#expect -51
+#expect 45
+#expect -83
+#expect 109
+#expect -19
+#expect 29
+#expect -99
+#expect 93
+#expect -35
+#expect 61
+#expect -67
+#expect 125
+#expect -3
+#expect 3
+#expect -125
+#expect 67
+#expect -61
+#expect 35
+#expect -93
+#expect 99
+#expect -29
+#expect 19
+#expect -109
+#expect 83
+#expect -45
+#expect 51
+#expect -77
+#expect 115
+#expect -13
+#expect 11
+#expect -117
+#expect 75
+#expect -53
+#expect 43
+#expect -85
+#expect 107
+#expect -21
+#expect 27
+#expect -101
+#expect 91
+#expect -37
+#expect 59
+#expect -69
+#expect 123
+#expect -5
+#expect 7
+#expect -121
+#expect 71
+#expect -57
+#expect 39
+#expect -89
+#expect 103
+#expect -25
+#expect 23
+#expect -105
+#expect 87
+#expect -41
+#expect 55
+#expect -73
+#expect 119
+#expect -9
+#expect 15
+#expect -113
+#expect 79
+#expect -49
+#expect 47
+#expect -81
+#expect 111
+#expect -17
+#expect 31
+#expect -97
+#expect 95
+#expect -33
+#expect 63
+#expect -65
+#expect 127
+#expect -1
+
+#ship debug : Debug
+#ship lut : Lut3
+#ship alu : Alu1
+
+// constant inputs
+85: sendto lut.in1;
+51: sendto lut.in2;
+15: sendto lut.in3;
+
+lut.in1: take; [*] deliver;
+lut.in2: take; [*] deliver;
+lut.in3: take; [*] deliver;
+lut.inLut: [*] take, deliver;
+lut.out: [*] take, sendto debug.in;
+
+// cycle through truth tables using alu as INC
+1: sendto alu.inOp;
+alu.inOp:
+ take;
+ [120] deliver;
+ [120] deliver;
+ [15] deliver;
+alu.in: [*] take, deliver;
+0: sendto alu.in;
+alu.out:
+ [*] nop;
+ (*) wait, take, sendto lut.inLut;
+ (*) sendto alu.in;
+ kill;
+
+// acks from debug ship trigger new truth tables
+debug.in: [*] take, deliver, notify alu.out;
+
+// kickoff
+0: sendto lut.inLut;
+
+
+
+
== Contributors =========================================================
Adam Megacz <megacz@cs.berkeley.edu>
+++ /dev/null
-// expected output
-#expect 9
-
-// ships required in order to run this code
-#ship debug : Debug
-#ship fifo : Fifo
-
-debug.in: [*] take, deliver;
-9: sendto fifo.in;
-fifo.in:
- take;
- [100] deliver;
-fifo.out:
- (99) take, sendto fifo.in;
- (1) take, sendto debug.in;
+++ /dev/null
-#expect 0
-#expect -128
-#expect 64
-#expect -64
-#expect 32
-#expect -96
-#expect 96
-#expect -32
-#expect 16
-#expect -112
-#expect 80
-#expect -48
-#expect 48
-#expect -80
-#expect 112
-#expect -16
-#expect 8
-#expect -120
-#expect 72
-#expect -56
-#expect 40
-#expect -88
-#expect 104
-#expect -24
-#expect 24
-#expect -104
-#expect 88
-#expect -40
-#expect 56
-#expect -72
-#expect 120
-#expect -8
-#expect 4
-#expect -124
-#expect 68
-#expect -60
-#expect 36
-#expect -92
-#expect 100
-#expect -28
-#expect 20
-#expect -108
-#expect 84
-#expect -44
-#expect 52
-#expect -76
-#expect 116
-#expect -12
-#expect 12
-#expect -116
-#expect 76
-#expect -52
-#expect 44
-#expect -84
-#expect 108
-#expect -20
-#expect 28
-#expect -100
-#expect 92
-#expect -36
-#expect 60
-#expect -68
-#expect 124
-#expect -4
-#expect 2
-#expect -126
-#expect 66
-#expect -62
-#expect 34
-#expect -94
-#expect 98
-#expect -30
-#expect 18
-#expect -110
-#expect 82
-#expect -46
-#expect 50
-#expect -78
-#expect 114
-#expect -14
-#expect 10
-#expect -118
-#expect 74
-#expect -54
-#expect 42
-#expect -86
-#expect 106
-#expect -22
-#expect 26
-#expect -102
-#expect 90
-#expect -38
-#expect 58
-#expect -70
-#expect 122
-#expect -6
-#expect 6
-#expect -122
-#expect 70
-#expect -58
-#expect 38
-#expect -90
-#expect 102
-#expect -26
-#expect 22
-#expect -106
-#expect 86
-#expect -42
-#expect 54
-#expect -74
-#expect 118
-#expect -10
-#expect 14
-#expect -114
-#expect 78
-#expect -50
-#expect 46
-#expect -82
-#expect 110
-#expect -18
-#expect 30
-#expect -98
-#expect 94
-#expect -34
-#expect 62
-#expect -66
-#expect 126
-#expect -2
-#expect 1
-#expect -127
-#expect 65
-#expect -63
-#expect 33
-#expect -95
-#expect 97
-#expect -31
-#expect 17
-#expect -111
-#expect 81
-#expect -47
-#expect 49
-#expect -79
-#expect 113
-#expect -15
-#expect 9
-#expect -119
-#expect 73
-#expect -55
-#expect 41
-#expect -87
-#expect 105
-#expect -23
-#expect 25
-#expect -103
-#expect 89
-#expect -39
-#expect 57
-#expect -71
-#expect 121
-#expect -7
-#expect 5
-#expect -123
-#expect 69
-#expect -59
-#expect 37
-#expect -91
-#expect 101
-#expect -27
-#expect 21
-#expect -107
-#expect 85
-#expect -43
-#expect 53
-#expect -75
-#expect 117
-#expect -11
-#expect 13
-#expect -115
-#expect 77
-#expect -51
-#expect 45
-#expect -83
-#expect 109
-#expect -19
-#expect 29
-#expect -99
-#expect 93
-#expect -35
-#expect 61
-#expect -67
-#expect 125
-#expect -3
-#expect 3
-#expect -125
-#expect 67
-#expect -61
-#expect 35
-#expect -93
-#expect 99
-#expect -29
-#expect 19
-#expect -109
-#expect 83
-#expect -45
-#expect 51
-#expect -77
-#expect 115
-#expect -13
-#expect 11
-#expect -117
-#expect 75
-#expect -53
-#expect 43
-#expect -85
-#expect 107
-#expect -21
-#expect 27
-#expect -101
-#expect 91
-#expect -37
-#expect 59
-#expect -69
-#expect 123
-#expect -5
-#expect 7
-#expect -121
-#expect 71
-#expect -57
-#expect 39
-#expect -89
-#expect 103
-#expect -25
-#expect 23
-#expect -105
-#expect 87
-#expect -41
-#expect 55
-#expect -73
-#expect 119
-#expect -9
-#expect 15
-#expect -113
-#expect 79
-#expect -49
-#expect 47
-#expect -81
-#expect 111
-#expect -17
-#expect 31
-#expect -97
-#expect 95
-#expect -33
-#expect 63
-#expect -65
-#expect 127
-#expect -1
-
-#ship debug : Debug
-#ship lut : Lut3
-#ship alu : Alu1
-
-// constant inputs
-85: sendto lut.in1;
-51: sendto lut.in2;
-15: sendto lut.in3;
-
-lut.in1: take; [*] deliver;
-lut.in2: take; [*] deliver;
-lut.in3: take; [*] deliver;
-lut.inLut: [*] take, deliver;
-lut.out: [*] take, sendto debug.in;
-
-// cycle through truth tables using alu as INC
-1: sendto alu.inOp;
-alu.inOp:
- take;
- [120] deliver;
- [120] deliver;
- [15] deliver;
-alu.in: [*] take, deliver;
-0: sendto alu.in;
-alu.out:
- [*] nop;
- (*) wait, take, sendto lut.inLut;
- (*) sendto alu.in;
- kill;
-
-// acks from debug ship trigger new truth tables
-debug.in: [*] take, deliver, notify alu.out;
-
-// kickoff
-0: sendto lut.inLut;
-
-