Signal Generators

cancel
Showing results for 
Search instead for 
Did you mean: 

18*18 multiplier

Hi,

  I have a question about programming the multiplier in FPGA PCI 5640R. The 5640 R seems to have several 18*18 multiplier.
  I have two I16 input, A and B. say, A=32767, B=32767. I would have A*B for which I only need the high 16(most significant) bit output: 32766. (In another point of view, I tried to multiply 1 by 1 (since 1 corresponds to 32678 in my digital representation of real numbers).
  However, as I wired them as case 2 shown in the picture below, both of the input are of type I16, the output is then automatically set by Labivew to be of type I16. Does that mean the multiplier will wrap back and give out the least significant bit? or it will give out the high 16 bit?
  How can I wire I16 input into the multiper, and get the most significant 16 bit out from the multiplier.  (including the sign bit) or how can I get all the 32bit output from the multiplier...

  Thanks in advance:)
   I do not use a saturation multiplier because it costs more hardware.

David

0 Kudos
Message 1 of 2
(6,864 Views)

Hi David,

The saturation multiplier is actually designed for exactly this use case and is the way to go here. The "saturation" part of the name is just an option, not a requirement, and is automatically disabled if you choose an output width that prevents overflow.

If you choose I16 inputs and an I32 output, it will consume 1 18x18 multiplier and nothing more.

Jim

0 Kudos
Message 2 of 2
(6,844 Views)