From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
12-16-2011 01:18 PM
I'm quickly running out of DSP48s on my FPGA and I'm not sure what is using them all. My understanding is that a single multiplier can handle multiplying a 18 bit fixed point by a 25 bit fixed point. Square root and recipical also use DSP48s. Do any other basic funtions use them?
12-16-2011 05:58 PM
The nodes you mentioned are certainly the most likely uses of DSP48s. Are you overriding the outputs of any operators?
12-16-2011 07:04 PM
In some cases I am overriding outputs, but always to a lesser number of bits. Does this increase the number of DSP48s used?
12-16-2011 08:45 PM
memory will also restrict the number of multiplyers available. something like the routing logic of memory restricts the number of multipliers available. reducing memory allocation size helped some compiles of ours.
12-19-2011 11:10 AM
Hello,
This DSP48 slice supports more than 40 dynamically controlled operating modes, including multiplier, multiplier-accumulator, multiplier-adder, subtracter, three-input adder, barrel shifter, wide bus multiplexers, wide counters, and comparators. For more information on the DSP48 slices, see this link under the subheading "FPGA Multiplier Resources".
12-19-2011 11:35 AM
Thank you for the replies. The problem I'm having is that I'm running out of DSP48s. Is there a way to know where the DSP48s are being used? Is there a way to limit their use so that I can get my code to complile?
12-19-2011 11:50 AM
First, I would recommend some simple suggestions to reduce FPGA resource usage. These suggestions can be found here.
Although it may be possible for you to determine where the DSP48 resources are being used, it would require going through the compile logs which can be quite tedious. Try some of the steps listed in the link above first. Hope this helps!