0
\$\begingroup\$

I have read something about CLUs (Carry lookahead units) and want to build one. I have settled on design using eeproms as adders and CLU. On the picure below you can see a schematic CLu implementation. In my version i think the best would be to swap the schematic blocks by an EEPROMs. ( One EEPROM per adder and one for the CLU, there are plenty chips available for this format) But the more i looked at it it seems that we will create some sort of an oscillator.

Let me explain. Lets assume that one eeprom has 200us (just for example) delay before the data on the output becomes valid. Meanwhile the output can be "whatever" it wants. But in that time, the outputs of the CLU eeprom are sending back to individual adders their Carry in signal. so if that signal changes, the output changes and again, we have 200us delay before the data becomes valid. So that means the individual adder can change its outputs (Propagate and Generate) And that completes the circle back to the CLU and it loops again. So we have basically an oscillator.

Am i right? I yes, how can we make it otherwise than to latch it and wait for next clock cycle?
Thanks

CLU CLU picture URL

\$\endgroup\$
-1
\$\begingroup\$

No, it is not going to oscillate if you design it correctly. For example, C4 depends only A[0:3], B[0:3], and the carry input. If those inputs are stable then the value of C4 should become stable and not change, regardless of what happens to the other inputs to the CLU. Sometime later C8 will become stable, then C12 will become stable, and finally C16 will become stable.

| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ What you are talking about is a ripple carry adder with Propagate and Generate instead of Carry, basically. But for technical reasons, i (if it is possible) i want to have just one eeprom as CLU, so the theory what pin becomes stable is not possible, if just one input isn't stable - then the whole thing would not be stable \$\endgroup\$ – Kralik_011 Aug 25 '19 at 17:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.