Sleep Mode wrote: : Hi all,
: I am trying to design a 16-bit integer multiplier in VHDL and I want to use : a Carry-Save-Adder (CSA) tree for generating the interim subproducts : and -then- with an additional CPA (or other) adder to add them to the final : 32-bit product; i.e. I want to build a full-tree multiplier.
: My question is whether there is some automatic (core) generator for the : CSA-tree interconnections since it is rather complicated to do it by hand... : If not, is there any fast method of drawing it manually (pen-and-paper) so : that I can translate it to VHDL later on?
For example, XST infers a quite fast multiplier for the verilog statement
assign ab = a*b;
when no hardware multipliers are available or LUT style is choosen. So you don't need to care for the inner workings.
Regarding Peter's proposal about using parts with hardware multipliers: They either give headaches for the Test boards, as the parts only come as fine pitch BGAs (VirtexII) or they will give you headache with getting them, as they are not yet released (Spartan III). And both Virtex II and Spatan III are no longer 5 Volt tolerant, often giving additional headache with interfacing other parts.
Bye