X-Git-Url: https://git.libre-soc.org/?p=ieee754fpu.git;a=blobdiff_plain;f=src%2Fnmutil%2Fconcurrentunit.py;h=5f02d7cd9ade7e11364c75aab2079bedd1fac57c;hp=82b81ff5d315e5bdb586a560f4eaa61420aa923f;hb=e6ba0ac37e5db58318ba272659d78cb599b27a34;hpb=e7a11f8b7eb3693289646d2f2091a45137f7c20f diff --git a/src/nmutil/concurrentunit.py b/src/nmutil/concurrentunit.py index 82b81ff5..5f02d7cd 100644 --- a/src/nmutil/concurrentunit.py +++ b/src/nmutil/concurrentunit.py @@ -1,6 +1,12 @@ -# IEEE Floating Point Adder (Single Precision) -# Copyright (C) Jonathan P Dawson 2013 -# 2013-12-12 +""" concurrent unit from mitch alsup augmentations to 6600 scoreboard + + * data fans in + * data goes through a pipeline + * results fan back out. + + the output data format has to have a member "mid", which is used + as the array index on fan-out +""" from math import log from nmigen import Module @@ -14,6 +20,7 @@ from nmutil.multipipe import PriorityCombMuxInPipe def num_bits(n): return int(log(n) / log(2)) + class FPADDInMuxPipe(PriorityCombMuxInPipe): def __init__(self, num_rows, iospecfn): self.num_rows = num_rows