PoC.arith.muls_wide

Signed wide multiplication spanning multiple DSP or MULT blocks. Small partial products are calculated through LUTs. For detailed documentation see below.

Entity Declaration:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
entity arith_muls_wide is
  generic (
    NA : integer range 2  to 18;-- 18;
    NB : integer range 19 to 36;-- 26;
    SPLIT : positive);          -- 17 or NB-18
    
  port (
    a : in  signed(NA-1 downto 0);
    b : in  signed(NB-1 downto 0);
    p : out signed(NA+NB-1 downto 0));
    
end entity arith_muls_wide;