4
4
import os
5
5
6
6
# the next line can be removed after installation
7
- sys .path .insert (0 , os .path .dirname (os .path .dirname (os .path .dirname (os .path .dirname (os .path .dirname (os .path .abspath (__file__ )))))))
7
+ sys .path .insert (0 , os .path .dirname (os .path .dirname (os .path .dirname (
8
+ os .path .dirname (os .path .dirname (os .path .abspath (__file__ )))))))
8
9
9
10
from veriloggen import *
10
11
12
+
11
13
def mkLed ():
12
14
m = Module ('blinkled' )
13
15
clk = m .Input ('CLK' )
14
16
rst = m .Input ('RST' )
15
17
valid = m .OutputReg ('valid' , initval = 0 )
16
18
17
19
fsm = FSM (m , 'fsm' , clk , rst )
18
-
20
+
19
21
for i in range (2 ):
20
22
fsm .goto_next ()
21
23
@@ -26,7 +28,7 @@ def mkLed():
26
28
fsm .Delay (1 )(
27
29
valid (0 )
28
30
)
29
-
31
+
30
32
for i in range (4 ):
31
33
fsm .goto_next ()
32
34
@@ -39,11 +41,12 @@ def mkLed():
39
41
valid (0 )
40
42
)
41
43
fsm .goto_next ()
42
-
44
+
43
45
fsm .make_always ()
44
46
45
47
return m
46
48
49
+
47
50
def mkTest ():
48
51
m = Module ('test' )
49
52
clk = m .Reg ('CLK' )
@@ -53,7 +56,7 @@ def mkTest():
53
56
uut = m .Instance (mkLed (), 'uut' ,
54
57
ports = (('CLK' , clk ), ('RST' , rst ), ('valid' , valid )))
55
58
56
- simulation .setup_waveform (m , uut )
59
+ # simulation.setup_waveform(m, uut)
57
60
simulation .setup_clock (m , clk , hperiod = 5 )
58
61
init = simulation .setup_reset (m , rst , period = 100 )
59
62
@@ -63,7 +66,8 @@ def mkTest():
63
66
)
64
67
65
68
return m
66
-
69
+
70
+
67
71
if __name__ == '__main__' :
68
72
test = mkTest ()
69
73
verilog = test .to_verilog ('tmp.v' )
0 commit comments