convert many more test cases
[fleet.git] / ships / Debug.ship
1 ship: Debug
2
3 == Ports ===========================================================
4 data  in:   in
5
6 == Constants ========================================================
7
8 == TeX ==============================================================
9 \begin{verbatim}
10
11 TODO: have some way to log multiple separate streams; use sibling
12       ports to deliver an opcode
13
14 TODO: have a way to programmatically read back the output of the debug
15       ship?
16
17 \end{verbatim}
18
19 == Fleeterpreter ====================================================
20 public void service() {
21   if (box_in.dataReadyForShip())
22     ((Interpreter)getFleet()).debug(box_in.removeDataForShip());
23 }
24
25 == FleetSim ==============================================================
26
27 == FPGA ==============================================================
28 `include "macros.v"
29
30 module debug (clk, data_debug_data_r, data_debug_data_a, data_debug_data,
31                    data_debug_out_r, data_debug_out_a, data_debug_out );
32   input clk;
33
34   input  data_debug_data_r;
35   output data_debug_data_a;
36   input  [`DATAWIDTH:0] data_debug_data;
37
38   output  data_debug_out_r;
39   input   data_debug_out_a;
40   output  [`DATAWIDTH:0] data_debug_out;
41
42   assign  data_debug_out_r  = data_debug_data_r;
43   assign  data_debug_data_a = data_debug_out_a;
44   assign  data_debug_out    = data_debug_data;
45
46 endmodule
47
48 == Test ================================================================
49 #expect 25
50
51 #ship debug : Debug
52
53 debug.in:
54   literal 25;
55   deliver;
56
57 == Contributors =========================================================
58 Adam Megacz <megacz@cs.berkeley.edu>