Calling all experts: is there a way to beat the default ripple-carry adder for an unpipelined 64-bit FPGA adder (especially on Altera)? My creative attempt couldn't. @oe1cxw @jangray @elaforest @zipcpu @whitequark
-
-
Now I haven't tried it on FPGAs, but I know that for ASIC flows, there's quite a difference between using ripple-carry adders and carry-save adders in multipliers. For just an adder, I would expect carry-look-ahead adders would beat the carry chain for very large* operand sizes.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
The Behrooz Parhami book on Computer Arithmetic has a chapter on FPGA optimized arithmetic units. If memory serves if it's 8-12 bit adder then RCA is good; Carry Skip or Carry Select adders are well suited over the 8-12bit range. Carry Save is good for multi-operand adders.
-
These are the relevant references from the Parhami book: 1) C. Select: http://ww1.microchip.com/downloads/en/AppNotes/DOC0467.PDF … 2) C. Skip: https://cc-webshop.com/Circuit-Cellar-Issue-148-November-2002-PDF-FI-2002-148.htm?categoryId=-1 … 3) Carry Chains on FPGA: https://ieeexplore.ieee.org/document/831434/ … The circuit cellar issue can be found on Internet Archive but not sure about copyright.
End of conversation
New conversation -
-
-
Agree. Certain Alters devices start using lut_type cin type from adders with more than 6 bit input, forcing the carry chain between luts. If you are using quartus or another tool you must me able to disable it. See the advanced synthesis cookbook.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.