summaryrefslogtreecommitdiff
path: root/hdl_lab/hdl/template.py
diff options
context:
space:
mode:
Diffstat (limited to 'hdl_lab/hdl/template.py')
-rw-r--r--hdl_lab/hdl/template.py67
1 files changed, 0 insertions, 67 deletions
diff --git a/hdl_lab/hdl/template.py b/hdl_lab/hdl/template.py
deleted file mode 100644
index 09a6f7f..0000000
--- a/hdl_lab/hdl/template.py
+++ /dev/null
@@ -1,67 +0,0 @@
-from typing import Callable
-from myhdl import *
-from myhdl_wrap import Myhdl_Wrapper
-
-import random
-from random import randint
-
-random.seed(63)
-
-class Template(Myhdl_Wrapper):
- def __init__(self):
- super().__init__()
-
- # Main code, this is the actual logic
- @staticmethod
- @block
- def Template(args): # this must be the same name as the class name
-
- @instance
- def logic():
- ...
-
- return logic
-
-
- @block
- def tb(self, func: Callable):
- reset = Signal(False)
- clk = Signal(bool(0))
- ...
-
- dut = func(..., clk=clk, reset=reset)
-
- @always(delay(...))
- def clock_gen():
- clk.next = not clk
-
- @instance
- def monitor():
- ...
-
- @instance
- def stimulus():
- ...
-
- raise StopSimulation
-
-
- return dut, clock_gen, monitor, stimulus
-
- def export(self):
- reset = Signal(False)
- clk = Signal(bool(0))
- ...
-
- # assigning signals, kargs only
- self._export(..., clk=clk, reset=reset)
-
-
-def test_template_sim():
- hdl = Template()
- hdl.sim()
-
-def test_template_cosim():
- hdl = Template()
- hdl.export()
- hdl.cosim()