| Register | FAQ | Calendar | Search | Today's Posts | Mark Forums Read |
|
#1
| |||
| |||
| Hi all, I need to build an ASIC synthesizable fixed point 32x32 multiplier and fixed point 32/32 divider with very less hardware resource for my design.Speed is not at all a matter for me. I can space 100s of cycles for my computaions. Can anybody help me with the code (preferably in VHDL) or suitable references? Thanks, Pratap |
|
#2
| |||
| |||
| Pratap wrote: > Hi all, > I need to build an ASIC synthesizable fixed point 32x32 multiplier and > fixed point 32/32 divider with very less hardware resource for my > design.Speed is not at all a matter for me. > I can space 100s of cycles for my computaions. > Can anybody help me with the code (preferably in VHDL) or suitable > references? > Thanks, > Pratap The first multi-cycle multiply/divide circuit was designed long ago, look at this report from 1946 : http://www.cs.unc.edu/~adyilie/comp265/vonNeumann.html You only need enough bits storage for the operands, 32+32 FF, as they are progressively replaced by computation results in 32+32 cycles. It's a tricky but clever technique. However, today, people use these techniques : http://www.andraka.com/multipli.htm Oh, and Wikipedia has some hints too : http://en.wikipedia.org/wiki/Multiplication_ALU yg |
|
#3
| |||
| |||
| Pratap wrote: > Hi all, > I need to build an ASIC synthesizable fixed point 32x32 multiplier and > fixed point 32/32 divider with very less hardware resource for my > design.Speed is not at all a matter for me. > I can space 100s of cycles for my computaions. > Can anybody help me with the code (preferably in VHDL) or suitable > references? > Thanks, > Pratap > If speed isn't an issue, you could put in a small 8- or 16-bit microprocessor and small instruction ROM and let the C compiler take care of the floating point operations. -Kevin |
|
#4
| |||
| |||
| Kevin Neilson wrote: > Pratap wrote: >> Hi all, >> I need to build an ASIC synthesizable fixed point 32x32 multiplier and >> fixed point 32/32 divider with very less hardware resource for my >> design.Speed is not at all a matter for me. >> I can space 100s of cycles for my computaions. >> Can anybody help me with the code (preferably in VHDL) or suitable >> references? >> Thanks, >> Pratap >> > If speed isn't an issue, you could put in a small 8- or 16-bit > microprocessor and small instruction ROM and let the C compiler take > care of the floating point operations. > -Kevin Sorry; I just noticed you said "fixed point" and not "floating point". If you've got lots of time, you can make a multiplier from a single adder and a divider from a single subtractor. Or if you wanted to be smaller, you could go down to a single two-bit full adder, or use bit-serial techniques. I would think, though, that in an ASIC, you have plenty of gates, and simple "*" will be nicely synthesized into a small core from the ASIC library. -Kevin |
![]() |
| Thread Tools | |
| Display Modes | |
In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.