From d5a2f852088b3d4fe137acc42fd65e228ee1c45c Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Fri, 5 Jul 2019 17:16:05 +0100 Subject: [PATCH] allow pspec to specify the class of FPPipeContext.op --- src/ieee754/fpcommon/getop.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/ieee754/fpcommon/getop.py b/src/ieee754/fpcommon/getop.py index fbdee3e8..8f580c1f 100644 --- a/src/ieee754/fpcommon/getop.py +++ b/src/ieee754/fpcommon/getop.py @@ -85,11 +85,20 @@ class FPNumBase2Ops: class FPPipeContext: def __init__(self, pspec): - print (pspec) + """ creates a pipeline context. currently: operator (op) and muxid + + opkls (within pspec) - the class to create that will be the + "operator". instance must have an "eq" + function. + """ self.id_wid = pspec['id_wid'] self.op_wid = pspec.get('op_wid', 0) self.muxid = Signal(self.id_wid, reset_less=True) # RS multiplex ID - self.op = Signal(self.op_wid, reset_less=True) + opkls = pspec.get('opkls', None) + if opkls is None: + self.op = Signal(self.op_wid, reset_less=True) + else: + self.op = opkls(pspec) def eq(self, i): ret = [self.muxid.eq(i.muxid)] -- 2.30.2