Diagnóstico: sintomas e causas¶
As falhas mais comuns de cada fluxo, com a causa e a correção. Regra geral que resolve metade dos casos: leia a primeira mensagem de erro, não a última, e clique no link de linha.
Botões desabilitados¶
Botão cinza |
Falta |
|---|---|
Compilar C± |
um arquivo |
Sintetizar Verilog, Abrir PRISM |
um Top Level definido |
Analisar Verilog, Configuração de ondas |
um Testbench Top definido |
Execução rápida |
testbench definido, e Verilator selecionado ou testbench em Python |
Teste do processador sintetizado |
um processador ativo (o |
engrenagem de configuração |
idem |
Projeto¶
- O nome foi recusado
Nomes de projeto e de processador aceitam letras, números, hífen e sublinhado. Sem espaços e sem acentos.
- Aviso de arquivos ausentes na árvore
O
.spflista arquivos que sumiram do disco (movidos ou apagados por fora). O botão do aviso remove as referências, com confirmação.
Compilação C±¶
- O compilador aponta uma linha
O link abre o editor no ponto. Erros em cascata quase sempre derivam do primeiro.
Constante aproximadaA constante não cabe exata no formato de ponto flutuante escolhido. Informativo; se a precisão incomodar, aumente a mantissa (Ponto flutuante customizado).
- O total de bits foi recusado
NUBITSdeve ser igual aNBMANT + NBEXPO + 1. Vale no Hub e nas diretivas.- Arquivo em
Hardware/mas o terminal mostra erro O arquivo é de uma compilação anterior. Vale o terminal.
Validação Verilog¶
Unknown module type: XUm módulo instanciado não está em nenhum fonte do projeto. Se
Xé um processador, compile o C± dele antes; o.vgerado precisa existir.- Portas incompatíveis
A instância diverge da definição. O analisador semântico do editor aponta antes do botão.
Simulação e ondas¶
- A simulação termina antes do resultado
Poucos ciclos. Engrenagem do processador, aumente o número de clocks.
- A onda abre sem os sinais internos do processador
Comportamento esperado com o Verilator. Troque para o Icarus para ver o processador por dentro.
- Sinal selecionado não aparece
A seleção de ondas referencia um sinal que não existe mais (código mudou). Reabra a Configuração de ondas e salve de novo; a AURORA remove as referências mortas.
- O testbench não encontra os dados
input_N.txtausente ou com linha inválida. Um inteiro por linha, sem vazios.- cocotb reprova os testes mas a onda abre
Comportamento intencional: a onda é a ferramenta de investigação da falha. O veredito de cada teste está no TWAVE.
- cocotb não acha o módulo alvo
Falta a linha
# aurora-toplevel: nomeno.py, ou o nome não confere.
PRISM¶
- Recusa por tamanho no modo interativo
O diagrama estático não tem limite; a simulação interativa é para designs pequenos.
- Diagrama desatualizado
Recompile na própria janela do PRISM.
Quando nada explica¶
Ligue o modo verboso (Configurações, Terminal) e repita: os comandos completos de cada etapa aparecem no terminal.
Exporte o log (botão na área de terminais) e anexe ao relato pelo Relatar um problema da aba Sobre.