ID do artigo: 000077157 Tipo de conteúdo: Mensagens de erro Última revisão: 11/09/2012

Erro: Erro de instrução condicional do HDL verilog em <location>: A instrução If-Else não corresponde a nenhuma borda da lista de sensibilidade</location>

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição Este erro pode ocorrer se você estiver tentando modelar um DFF com vários sinais de controle. The Quartus®O software II só inferirá um sinal secundário a partir de um único sinal secundário em um IF Condição. Por exemplo, você pode ter escrito a seguinte estrutura de amostra para modelar um primitivo DFF que pode ser redefinido por dois sinais, rst1 ou rst2:

always @ (posedge clk or posedge rst1 or posedge rst2) 

begin  

 if (rst1 == 1'b1 || rst2 == 1'b1) 

  q <= 1'b0; 

 else   

  q <= d; 

 end

Para corrigir isso, edite o design para especificar apenas uma borda por condição. Por exemplo, se você editar o exemplo anterior para especificar apenas uma borda por condição, o software Quartus II reconhecerá com sucesso o primitivo DFF. O código de amostra aparecerá da seguinte forma:

always @ (posedge clk or posedge rst1 or posedge rst2) 

begin  

 if (rst1 == 1'b1)

  q <= 1'b0;  

 else if (rst2 == 1'b1)

  q <= 1'b0;

 else

  q <= d; 

end

Como alternativa, você pode gerar o OR rst1 e o rst2 fora do Always constructo.

Essa limitação será abordada em uma versão futura do software Quartus II.

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.