# previous valid and ready
with self.m.If(p_i_valid_p_o_ready):
- self.m.d.sync += [self.n.o_valid.eq(1), # output valid
+ self.m.d.sync += [self.n.o_valid.eq(1), # output valid
eq(self.n.o_data, result), # update output
]
# previous invalid or not ready, however next is accepting
# Test 13
######################################################################
-class ExampleUnBufDelayedPipe(BufferedPipeline):
+class ExampleUnBufDelayedPipe(BufferedPipeline2):
def __init__(self):
- stage = ExampleStageDelayCls()
- BufferedPipeline.__init__(self, stage, stage_ctl=True)
+ stage = ExampleStageDelayCls(valid_trigger=1)
+ BufferedPipeline2.__init__(self, stage, stage_ctl=True)
def elaborate(self, platform):
- m = BufferedPipeline.elaborate(self, platform)
+ m = BufferedPipeline2.elaborate(self, platform)
m.submodules.stage = self.stage
return m