move add to ieee754 directory
[ieee754fpu.git] / src / ieee754 / add / fpcommon / postcalc.py
1 # IEEE Floating Point Adder (Single Precision)
2 # Copyright (C) Jonathan P Dawson 2013
3 # 2013-12-12
4
5 from nmigen import Signal
6 from fpbase import Overflow, FPNumBase
7
8 class FPAddStage1Data:
9
10 def __init__(self, width, id_wid):
11 self.z = FPNumBase(width, False)
12 self.out_do_z = Signal(reset_less=True)
13 self.oz = Signal(width, reset_less=True)
14 self.of = Overflow()
15 self.mid = Signal(id_wid, reset_less=True)
16
17 def __iter__(self):
18 yield from self.z
19 yield self.out_do_z
20 yield self.oz
21 yield from self.of
22 yield self.mid
23
24 def eq(self, i):
25 return [self.z.eq(i.z), self.out_do_z.eq(i.out_do_z), self.oz.eq(i.oz),
26 self.of.eq(i.of), self.mid.eq(i.mid)]