From: Luke Kenneth Casson Leighton Date: Wed, 22 Jul 2020 09:29:36 +0000 (+0100) Subject: comments on what goes into CommonPipeSpec X-Git-Tag: semi_working_ecp5~638 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=71af4fadd8a431079df13fc5812d745c133074be;p=soc.git comments on what goes into CommonPipeSpec --- diff --git a/src/soc/fu/pipe_data.py b/src/soc/fu/pipe_data.py index 13e85434..9bfb81af 100644 --- a/src/soc/fu/pipe_data.py +++ b/src/soc/fu/pipe_data.py @@ -76,8 +76,19 @@ def get_rec_width(rec): class CommonPipeSpec: def __init__(self, id_wid): + # this defines what type of pipeline base class (dynamic mixin) + # is to be used for *ALL* pipelines. replace with MaskCancellableRedir + # when the Dependency Matrices are added: mask and stop signals will + # then "magically" appear right the way through every single pipeline self.pipekls = SimpleHandshakeRedir + + # this is for the ReservationStation muxid width self.id_wid = id_wid + + # this is the "operation context" which is passed through all pipeline + # stages. it is a PowerDecoder2 subset (actually Decode2ToOperand) self.opkls = lambda _: self.opsubsetkls(name="op") self.op_wid = get_rec_width(self.opkls(None)) # hmm.. + + # gets set up by Pipeline API. self.stage = None