ID do artigo: 000079913 Tipo de conteúdo: Solução de problemas Última revisão: 11/09/2012

Por que eu tenho que usar a opção -EXPLICIT em Modelsim ao compilar o arquivo 220model.vhd?

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição Se você não usar a opção -EXPLICIT, você receberá os seguintes erros ao compilar o 220model.vhd arquivo em Modelsim:

  • ERRO: <path>/220model.vhd(741): o subprograma ">" é ambíguo. As definições adequadas existem no pacote "std_logic_1164" e "std_logic_signed".
  • ERRO: <path>/220model.vhd(741): (Use a opção '-explicit' para desabilitar a verificação de erro anterior)
  • ERRO: <path>/220model.vhd(748): Subprograma "=" é ambíguo. As definições adequadas existem no pacote "std_logic_1164" e "std_logic_signed".
  • ERRO: <path>/220model.vhd(748): (Use a opção "explícita" para desabilitar a verificação de erro anterior)
  • ERRO: <path>/220model.vhd(793): Compilador VHDL saindo

Componentes como LPM_COMPARE (assinados e não assinados) usam >, < e = operadores e também incluem std_logic_1164 os e std_logic_unsigned ou pacotes std_logic_signed . Esses operadores estão sobrecarregados; Ou seja, as definições para esses operadores estão disponíveis em ambos os pacotes, implícita std_logic_1164 e explicitamente em std_logic_unsigned e signed.

Ao incluir o std_logic_unsigned ou pacote signed junto std_logic_1164com, o designer pretende usar a definição explícita no pacote em vez da definição implícita.

O arquivo 220model.vhd contém muitos desses operadores e inclui pacotes assinados e não assinados para diferentes componentes. Ao compilar este arquivo em Modelsim, uma opção explícita deve ser especificada para forçar o simulador a inferir a definição explícita.

ModelSim > vcom 220model.vhd -explicit

Editar o arquivo ModelSim.ini e definir a variável EXPLICIT = 1 define esta opção como a opção padrão para todas as compilações.

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.