Forum: FPGA, VHDL & Verilog Basic memory unit help

von Omar Rashad (Guest)

Rate this post
0 useful
not useful
I get the following error when comiling:

The symbol to_int does not have a visible declaration.
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity Mem is
generic (N: integer; -- N bits wide (# of columns)
         K: integer); -- K bits long (# of rows)
port (Din: IN std_logic_vector (N-1 downto 0);
      clk,rw_en: IN std_logic;
      add_in: IN std_logic_vector (K-1 downto 0);
      Dout: OUT std_logic_vector (N-1 downto 0));
end Mem;

architecture behavior of Mem is
type mem_array is array (2**K-1 downto 0) of std_logic_vector (N-1 downto 0);
signal our_array: mem_array := (others =>(others => '0'));


process (clk, Din, rw_en, add_in)
--variable address: integer;
  if (clk = '1' and clk'event) then
    if (rw_en = '1') then
      our_array (to_int(unsigned(add_in))) <= Din;
      Dout <= our_array (to_int(unsigned(add_in)));
    end if;
  end if;
end process;
end behavior;

von Lothar M. (lkmiller) (Moderator)

Rate this post
0 useful
not useful
The function is called "to_integer()"...

Try this with Google translator, its German: 

: Edited by Moderator
von Omar Rashad (Guest)

Rate this post
0 useful
not useful
Thank you. My bad....


Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [vhdl]VHDL code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.