Hi I have made a generic component like below
entity fifo is generic( AW : integer; PROG_EMPTY_THD : std_logic_vector(AW downto 0); PROG_FULL_THD : std_logic_vector(AW downto 0) ); port ( rst : in std_logic; write_address : out std_logic_vector(AW-1 downto 0); read_address : out std_logic_vector(AW-1 downto 0); wr_clk : in std_logic; ..... );
This component fifo is instantiated in my design with different values for AW.
My design is synthesizable and it is actually working in hardware too.
But with Model-sim XE simulator it gives the following error < Object 'aw' cannot be used within the same interface as it is declared.
This error is pointed to my component declared package.
is there any work around for this problem.
any pointers will be helpful.
rgds bijoy
When model-sim compoiles the fifo module separately, it sees AW constant and it is used in std_logic_vector(AW downto 0)
so i think it is not able to determine the width of the vector ..