diff --git a/lib/DelayLine.bsv b/lib/DelayLine.bsv index 5ec4afe..e1b1f5d 100644 --- a/lib/DelayLine.bsv +++ b/lib/DelayLine.bsv @@ -77,6 +77,11 @@ module mkDelayLine(Integer delay_cycles, DelayLine#(a) ifc) delay = cons(r, delay); end + // pump_line ingests a new value into the first register in the + // line, and shifts older values one register down. The + // registers always shift forward even when nobody's writing, in + // which case that slot in the pipeline is occupied by an empty + // Maybe. (* no_implicit_conditions, fire_when_enabled *) rule pump_line; delay[0] <= inputVal.wget();