ID do artigo: 000090227 Tipo de conteúdo: Mensagens de erro Última revisão: 08/08/2023

Erro(13224): erro de VHDL ou HDL da Verilog em <your module="" name="">.sv(<your line="" number="">): o índice <your index=""> está fora da faixa [<your range="">] para '<your variable="">'</your></your></your></your></your>

Ambiente

    Intel® Quartus® Prime Pro Edition
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição

Devido a um problema na versão 21.4 ou anterior do software Intel® Quartus® Prime Pro Edition, você pode ver esse erro durante a etapa de Análise &síntese. Isso ocorre devido à falha das interfaces parametrizadas em substituir as variáveis de lógica localparam da interface SystemVerilog com as variáveis wrapper de nível superior.

No exemplo a seguir, as variáveis de lógica localparam da interface ADDR_W e DATA_W, com os parâmetros 4 e 1, não estão desativadas pelas variáveis wrapper de nível superior, com os parâmetros de 5 e 8 respectivamente.

Invólucro de alto nível:

módulo mem_wrapper #(ADDR_W int = 5, int DATA_W = 8)

...

nº mem_if( ADDR_W, DATA_W) mem_if (i_clk_a);

mem (mem_if);

...

endmodule: mem_wrapper

Interface:

mem_if nº da interface (int ADDR_W = 4, int DATA_W = 1 ) (clk de entrada);

Lógica localparam [DATA_W - 1:0] INIT_V [2 ** ADDR_W] = '{default: '1};

...

mem modport (lk de entrada, somador, wren, idat, saída odat );

endinterface: mem_if

Modport:

module mem (mem_if.mem mem_if );

lógica [mem_if. DATA_W - 1:0] mem [2 ** mem_if. ADDR_W];

Inicial
for (int i = 0; i < 2 ** mem_if. ADDR_W, não ADDR_W; i++)
mem[i] = mem_if. INIT_V[i];

...

endmodule : mem

Resolução

Para evitar esse erro, não use a lógica localparam na interface SystemVerilog.

Por exemplo:

Interface:

mem_if nº da interface (int ADDR_W = 4, int DATA_W = 1 ) (clk de entrada);

lógica [DATA_W - 1:0] INIT_V [2 ** ADDR_W] = '{default: '1};

...

mem modport (lk de entrada, somador, wren, idat, saída odat, INIT_V);

endinterface: mem_if

Esse problema foi corrigido a partir da Intel® Quartus® Software Prime Pro Edition versão 22.4.

Produtos relacionados

Este artigo aplica-se a 1 produtos

Dispositivos programáveis Intel®

1

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês governará e será a controle. Exibir a versão em inglês desta página.