The current behavior was introduced in
65702719, which was a wrong
fix for an issue that was actually fixed in
12e04e4e. This commit
effectively reverts
65702719 and
1782b841.
process = self._check_process(process)
def sync_process():
try:
- result = None
+ cmd = None
while True:
- self._process_loc[sync_process] = self._name_process(process)
- cmd = process.send(result)
if cmd is None:
cmd = Tick(domain)
result = yield cmd
+ self._process_loc[sync_process] = self._name_process(process)
+ cmd = process.send(result)
except StopIteration:
pass
sync_process = sync_process()
def read(self):
"""Read method for simulation."""
+ assert (yield self.readable)
yield self.re.eq(1)
yield
- assert (yield self.readable)
value = (yield self.dout)
yield self.re.eq(0)
return value
with self.assertSimulation(self.m) as sim:
sim.add_clock(1e-6, domain="sync")
def process():
- self.assertEqual((yield self.count), 4)
- self.assertEqual((yield self.sync.clk), 0)
- yield
self.assertEqual((yield self.count), 4)
self.assertEqual((yield self.sync.clk), 1)
yield