Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

question about slices

Status
Not open for further replies.

kannan2590

Member level 4
Joined
Sep 1, 2012
Messages
77
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Location
india
Activity points
2,321
The question is how to use dsp 48 slices in vhdl code.I am using virtex 4 fpga.Is dsp 48 an ip core in xilinx software
 

* is a multiply in VHDL. It should infer a DSP slice when synthesised.
 

you could instantiate a multiplier block, or directly instantiate a DSP48 block primitive.
 

you could instantiate a multiplier block, or directly instantiate a DSP48 block primitive.

How to instantiate a multiplier block or directly instantiate a DSP48 block primitive?Can you explain it to me?
 

Use the unisim library. What kind of detail are you after? can you tell use why you want to do this and not just infer a multiplier like I origionally said you could do?

If you are looking for VHDL help, I suggest you read a VHDL tutorial, specially on instantiating an entity.
 

Use the unisim library. What kind of detail are you after? can you tell use why you want to do this and not just infer a multiplier like I origionally said you could do?

If you are looking for VHDL help, I suggest you read a VHDL tutorial, specially on instantiating an entity.

i tried to use ip core for multiplier but still it is not sitting on dsp 48 slices

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_SIGNED.ALL;

-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;

-- Uncomment the following library declaration if instantiating
-- any Xilinx primitives in this code.
library UNISIM;
use UNISIM.VComponents.all;

entity mult8 is
port ( a:in std_logic_vector(17 downto 0);
b: in std_logic_vector(17 downto 0);
clk:in std_logic;
c: out std_logic_vector(35 downto 0)
);
end mult8;

architecture Behavioral of mult8 is

component multiplier1
port(clk:in std_logic;
A:in std_logic_vector(17 downto 0);
B:in std_logic_vector(17 downto 0);
P:eek:ut std_logic_vector(35 downto 0)
);
end component;

begin



insmultiplier:multiplier1 port map(
clk => clk,
A =>a,
B =>b,
P =>c
);


end Behavioral;

can you tell me the reason?
 

Without the full code for reference - no idea.
Have ytou connected all inputs? do you get any warnings during synthesis about logic begin removed? Are the inputs constant?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top