class CRInputData(IntegerData):
regspec = [('INT', 'a', '0:63'), # 64 bit range
+ ('INT', 'b', '0:63'), # 6B bit range
('CR', 'full_cr', '0:31'), # 32 bit range
('CR', 'cr_a', '0:3'), # 4 bit range
('CR', 'cr_b', '0:3'), # 4 bit range
def __init__(self, pspec):
super().__init__(pspec)
self.a = Signal(64, reset_less=True) # RA
+ self.b = Signal(64, reset_less=True) # RB
self.full_cr = Signal(32, reset_less=True) # full CR in
self.cr_a = Signal(4, reset_less=True)
self.cr_b = Signal(4, reset_less=True)
def __iter__(self):
yield from super().__iter__()
yield self.a
+ yield self.b
yield self.full_cr
yield self.cr_a
yield self.cr_b
def eq(self, i):
lst = super().eq(i)
return lst + [self.a.eq(i.a),
+ self.b.eq(i.b),
self.full_cr.eq(i.full_cr),
self.cr_a.eq(i.cr_a),
self.cr_b.eq(i.cr_b),