-
Notifications
You must be signed in to change notification settings - Fork 0
/
tinyfpga-soc-no-trigger.v
75 lines (61 loc) · 1.18 KB
/
tinyfpga-soc-no-trigger.v
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
67
68
69
70
71
72
73
74
75
`timescale 1ns/1ps
// Use same name for compatibility w/ gtkw save files.
module tinyfpga_soc();
reg sys_rst;
reg sys_clk;
reg rx;
wire tx;
wire mosi, miso, dummy1, dummy2;
wire cs_n, spi_clk, trigger, led0, led1, led2;
// clock
initial sys_clk = 1'b0;
always #15.625 sys_clk = ~sys_clk;
// reset
initial begin
sys_rst = 1'b1;
#20
sys_rst = 1'b0;
end
// serial
initial rx = 1'b1;
`ifdef PAR
chip dut(
.pin_A6(sys_clk),
.pin_F1(sys_rst),
.pin_D4(tx),
.pin_C5(rx)
);
`else
top dut(
.clk16(sys_clk),
.rst(sys_rst),
.serial_rx(rx),
.serial_tx(tx)
);
`endif
integer j;
initial begin
`ifdef POST_SYNTH
$dumpfile("tinyfpga-soc-no-trigger-post-synth.vcd");
// for(j = 0; j < 32; j = j + 1) begin
// $dumpvars(0, tinyfpga_soc.dut.lm32_cpu.registers[0]);
// end
`else
`ifdef PAR
$dumpfile("tinyfpga-soc-no-trigger-par.vcd");
`else
$dumpfile("tinyfpga-soc-no-trigger.vcd");
for(j = 0; j < 32; j = j + 1) begin
$dumpvars(0, tinyfpga_soc.dut.lm32_cpu.registers[j]);
end
`endif
`endif
$dumpvars(0, tinyfpga_soc);
end
always @ (posedge sys_clk)
begin
if($time > 1000000) begin
$finish;
end
end
endmodule