Knowledge Base Article

How do I use a library of parameterized modules (LPM) function in Synopsys FPGA Express? (Synopsys FPGA Express)

Description
You can use Synopsys FPGA Express to instantiate the LPM function directly into your hardware description language (HDL) code. Below is an example of an LPM_MULT instantiation in VHDL:
LIBRARY ieee;
USE ieee.std_logic_1164.all;
LIBRARY lpm;
USE lpm.lpm_components.all;

ENTITY mult_supported IS
  PORT(
    a, b : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
    my_out  : OUT STD_LOGIC_VECTOR(15 DOWNTO 0)
    );
END mult_supported;

ARCHITECTURE lpm OF mult_supported IS

BEGIN  
 
  u1 : lpm_mult
    GENERIC MAP(
      lpm_widtha => 8,
      lpm_widthb => 8,
      lpm_widthp => 16,
      lpm_widths => 8,
      lpm_representation => unsigned
      )
    PORT MAP(
      dataa => a,
      datab => b,
      result => my_out
      );
END lpm;

This example illustrates both the instantiation of the LPM function and the passing of its parameters.

Check the FPGA Express on-line help to ensure that the LPM function you want to use is currently supported by the software.

Updated 2 months ago
Version 2.0
No CommentsBe the first to comment