end
`fill_out
out_w <= 0;
+
end else if (`inCBD_full && `out_draining) begin
if (counter != inCBD_d[(`CODEBAG_SIZE_BITS-1):0]) begin
cursor <= cursor + 1;
counter <= 0;
dispatching_cbd <= 0;
end
+
end else if (!dispatching_cbd && `out_empty && `inAddrRead_full) begin
`drain_inAddrRead
`fill_out
+ out_w <= 0;
end else if (!dispatching_cbd && `out_empty && `inAddrWrite_full && `inDataWrite_full) begin
// timing note: it's okay to drain here because *_d will still