I have written some code that contains a procedure that does addition operation.I use "+" symbol and compiler does not recognize it.I know that vhdl does not support this symbol, but our professor has asked us to use it in our code.Is there any way I can use "+" without being wrong?
I used all the libraries I know without results. Here is my code :
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
use ieee.std_logic_signed.all;
use ieee.std_logic_arith.all;
package arith_operation is
constant size: integer :=8;
constant select_bits: integer :=3;
procedure add( x,y: in bit_vector(size-1 downto 0);
sum: out bit_vector(size-1 downto 0); c_out: out bit );
end arith_operation;
package body arith_operation is
procedure add
( x,y: in bit_vector(size-1 downto 0);
sum: out bit_vector(size-1 downto 0);
c_out: out bit) is
variable s: bit_vector(size downto 0);
begin
s:= ("0" & x) + ("0" & y);
sum:= s(size-1 downto 0);
c_out:= s(size);
end procedure add;
end arith_operation;
Here is the error that appears :
Error (10327): VHDL error at arith_operation.vhd(22): can't determine definition of operator ""+"" -- found 0 possible definitions