/multiplier/a: Could not convert given string value 01111111111111111111111111111111 to an appropriate value

Viewed 49
ISim> 
# isim force add {/multiplier/a} 01111111111111111111111111111111 -radix bin 
/multiplier/a: Could not convert given string value 01111111111111111111111111111111 to an appropriate value.

I am trying to make 32 bit multiplier using predefined operator (*) but there is some error occurs when I try to provide the 32 bit input to both A and B.

Note: I have attached a copy of my code here below with few screenshots ...

Code :

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use ieee.std_logic_unsigned.all;

use IEEE.NUMERIC_STD.ALL;


entity Multiplier is
    generic (N : Natural:= 32 );

    Port ( A : in STD_LOGIC_VECTOR (N-1 DOWNTO 0);
           B : in STD_LOGIC_VECTOR (N-1 DOWNTO 0);
           OUTPUT : OUT STD_LOGIC_VECTOR (2*N-1 DOWNTO 0)
         );

end Multiplier;

architecture Behavioral of Multiplier is
    signal mul : std_logic_vector (2*N-1 DOWNTO 0) ;

begin
    P1: process (A,B)
    BEGIN 
        mul <= std_logic_vector (unsigned (A)  * unsigned (B));
    end process P1;

    OUTPUT <= mul;
end Behavioral; 

Screenshot of error:

screenshot of error

0 Answers
Related