Guest
Hello all,
I'm stuck with the following. I am centralising the arithmetic in my
design as the way things are now, there is a lot of idle time and
resources spent on all of the distributed units. To be exact, a bunch
of things, which i call nodes, count instances of specific entries in
memory (each node has its own memory - call this count X), then the
log10(X!) is computed for each node and the whole bunch is added
together. The log10(X!) is done by means of a look-up. So say for 10
nodes, 10 X's are produced, one for each node, 10 look-ups are used and
then 9 adders are used in a row for the total addition. Now since the
X's for each node are (more often than not) produced at different
times, I simply want to throw them inside a single look-up then use an
accumulator for the complete result. However in the rare case that 2 or
more X's are produced at the same time I'd like to be able to do
something about it. What I'd like to implement is some sort of serving
system where each node basically raises its hand shouting Me! Me! and
according to some priority, nodes are served then dismissed to go fetch
the next X. The obvious solution is to go around node by node and check
if they want to be served but that introduces unnecessary waiting. I'd
appreciate any help if anyone knows a particular technique or
literature on what i want to do. Thank you.
I'm stuck with the following. I am centralising the arithmetic in my
design as the way things are now, there is a lot of idle time and
resources spent on all of the distributed units. To be exact, a bunch
of things, which i call nodes, count instances of specific entries in
memory (each node has its own memory - call this count X), then the
log10(X!) is computed for each node and the whole bunch is added
together. The log10(X!) is done by means of a look-up. So say for 10
nodes, 10 X's are produced, one for each node, 10 look-ups are used and
then 9 adders are used in a row for the total addition. Now since the
X's for each node are (more often than not) produced at different
times, I simply want to throw them inside a single look-up then use an
accumulator for the complete result. However in the rare case that 2 or
more X's are produced at the same time I'd like to be able to do
something about it. What I'd like to implement is some sort of serving
system where each node basically raises its hand shouting Me! Me! and
according to some priority, nodes are served then dismissed to go fetch
the next X. The obvious solution is to go around node by node and check
if they want to be served but that introduces unnecessary waiting. I'd
appreciate any help if anyone knows a particular technique or
literature on what i want to do. Thank you.