Start a new self-contained test suite for LDSTCompUnit
[soc.git] / src / soc / experiment / test / test_compldst_multi.py
1 """Self-contained unit test for the Load/Store CompUnit
2 """
3
4 import unittest
5 from nmigen import Module
6 from nmigen.sim import Simulator
7 from soc.experiment.compldst_multi import LDSTCompUnit
8 from soc.experiment.pimem import PortInterface
9 from soc.fu.ldst.pipe_data import LDSTPipeSpec
10
11
12 class TestLDSTCompUnit(unittest.TestCase):
13
14 def test_ldst_compunit(self):
15 m = Module()
16 pi = PortInterface(name="pi")
17 regspec = LDSTPipeSpec.regspec
18 dut = LDSTCompUnit(pi, regspec)
19 m.submodules.dut = dut
20 sim = Simulator(m)
21 sim.add_clock(1e-6)
22
23 def process():
24 yield
25
26 sim.add_sync_process(process)
27 sim_writer = sim.write_vcd("test_ldst_compunit.vcd")
28 with sim_writer:
29 sim.run()
30
31
32 if __name__ == '__main__':
33 unittest.main()