[SOLVED] object cannot be indexed because it has natural type rather than array type

Status
Not open for further replies.

rafimiet

Member level 5
Joined
May 21, 2015
Messages
94
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
2,365
I am getting the error:
Error(13692): VHDL error at generic_multiplier.vhd(66): object cannot be indexed because it has natural type rather than array type
The code is as follows:
I get the error in the line:
Rich (BB code):
s_data_out(2*g_coeff_width((i+j)*g_bl_size+k+1)-1 downto 2*g_coeff_width((i+j)*g_bl_size+k)) <= s_data_in(i)(k) * c_dct2_b4(k)(j);
            end generate gen04;
 

Sounds plausible. I presume the error is referring to the term g_coeff_width(x) which makes no sense for a natural value. Either it's a typo or some misunderstanding.
 
Last edited:

    rafimiet

    Points: 2
    Helpful Answer Positive Rating
Hi,

The parameter g_coeff_width is a constant (generic) with a natural type. By writing g_coeff_width((i+j)*g_bl_size+k+1), you are trying to index it. That cannot be done. I believe this is the problem.
 

    rafimiet

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…