self.test_data = test_data
self.div_pipe_kind = div_pipe_kind
- def write_ilang(self):
- pspec = DivPipeSpec(id_wid=2, div_pipe_kind=self.div_pipe_kind)
- alu = DivBasePipe(pspec)
- vl = rtlil.convert(alu, ports=alu.ports())
- with open(f"div_pipeline_{div_pipe_kind.name}.il", "w") as f:
- f.write(vl)
-
- def test_write_ilang(self):
- self.write_ilang(self.div_pipe_kind)
-
def execute(self, alu, instruction, pdecode2, test):
prog = test.program
isa_sim = ISA(pdecode2, test.regs, test.sprs, test.cr,
--- /dev/null
+import unittest
+from nmigen.cli import rtlil
+from soc.fu.div.pipe_data import DivPipeSpec, DivPipeKind
+from soc.fu.div.pipeline import DivBasePipe
+
+
+class TestPipeIlang(unittest.TestCase):
+ def write_ilang(self, div_pipe_kind):
+ pspec = DivPipeSpec(id_wid=2, div_pipe_kind=div_pipe_kind)
+ alu = DivBasePipe(pspec)
+ vl = rtlil.convert(alu, ports=alu.ports())
+ with open(f"div_pipeline_{div_pipe_kind.name}.il", "w") as f:
+ f.write(vl)
+
+ def test_div_pipe_core(self):
+ self.write_ilang(DivPipeKind.DivPipeCore)
+
+ def test_div_pipe_core(self):
+ self.write_ilang(DivPipeKind.FSMDivCore)
+
+ def test_div_pipe_core(self):
+ self.write_ilang(DivPipeKind.SimOnly)
+
+
+if __name__ == "__main__":
+ unittest.main()