from soc.decoder.power_decoder2 import PowerDecode2
from soc.decoder.isa.all import ISA
from soc.decoder.power_enums import Function, XER_bits
-
+from soc.config.test.test_loadstore import TestMemPspec
from soc.simple.core import NonProductionCore
from soc.experiment.compalu_multi import find_ok # hack
so = yield xregs.regs[xregs.SO].reg
ov = yield xregs.regs[xregs.OV].reg
ca = yield xregs.regs[xregs.CA].reg
- oe = yield pdecode2.e.oe.oe
- oe_ok = yield pdecode2.e.oe.oe_ok
+ oe = yield pdecode2.e.do.oe.oe
+ oe_ok = yield pdecode2.e.do.oe.oe_ok
print ("before: so/ov-32/ca-32", so, bin(ov), bin(ca))
print ("oe:", oe, oe_ok)
def wait_for_busy_hi(cu):
while True:
busy_o = yield cu.busy_o
- if busy_o:
+ terminated_o = yield cu.core_terminated_o
+ if busy_o or terminated_o:
+ print("busy/terminated:", busy_o, terminated_o)
break
print("!busy",)
yield
instruction = Signal(32)
ivalid_i = Signal()
- m.submodules.core = core = NonProductionCore()
+ pspec = TestMemPspec(ldst_ifacetype='testpi',
+ imem_ifacetype='',
+ addr_wid=48,
+ mask_wid=8,
+ reg_wid=64)
+
+ m.submodules.core = core = NonProductionCore(pspec)
pdecode2 = core.pdecode2
l0 = core.l0