Fluxo completo para projetos Verilog

Este roteiro apresenta a AURORA como ambiente de desenvolvimento Verilog independente do fluxo C±. Ao final, você terá um projeto com fontes RTL, Top Level, testbench, validação, simulação, formas de onda e visualização no PRISM.

Projeto ALU32 aberto na AURORA com o arquivo alu32.v no editor.

O projeto ALU32 aberto em alu32.v, com os módulos RTL e os testbenches registrados na árvore Arquivos.

1. Criar ou abrir o projeto

  1. Clique em Novo Projeto.

  2. Informe um nome para o projeto.

  3. Escolha uma pasta com permissão de escrita.

  4. Confirme a criação.

A AURORA cria a pasta do projeto e um arquivo .spf, usado para registrar os arquivos e as seleções do fluxo. Não é necessário criar um processador no Hub de Processadores para trabalhar com Verilog.

2. Adicionar os módulos RTL

Crie os arquivos no editor ou importe módulos existentes. Você também pode arrastar e soltar um ou vários arquivos sobre a árvore Arquivos. Esse recurso aceita módulos Verilog e SystemVerilog (.v, .sv e .vh) e testbenches cocotb (.py).

A AURORA classifica o conteúdo importado como fonte sintetizável ou testbench. Confirme a classificação na árvore e mantenha como fontes sintetizáveis todos os módulos que participam do circuito, inclusive os módulos instanciados pelo módulo principal.

Para um primeiro teste, você pode usar o circuito porta_and.v disponível na Galeria de projetos e testbenches.

3. Definir o Top Level

Na árvore Arquivos, localize o arquivo que contém o módulo principal. Clique nele com o botão direito do mouse e selecione Definir como Top Level.

O Top Level é a raiz usada para:

  • Validar a elaboração do projeto.

  • Gerar a visualização Hierarquia da árvore.

  • Associar o circuito aos testbenches Verilog ou Python/cocotb.

  • Gerar a visualização do PRISM.

A bandeira ao lado do arquivo e o nome exibido na barra de status confirmam a seleção. Se o módulo principal instancia outros módulos, todos eles também devem estar adicionados como fontes sintetizáveis.

4. Adicionar o testbench

Use uma das alternativas:

  • Um testbench Verilog .v, que instancia o circuito, gera estímulos e pode incluir as verificações no próprio HDL.

  • Um testbench Python .py com cocotb, que controla o Top Level pelo simulador.

Adicione o arquivo à árvore, clique nele com o botão direito do mouse e escolha Marcar como Testbench. Essa ação define o Testbench Top usado na simulação. O testbench fica separado das fontes sintetizáveis.

5. Validar o Verilog

  1. Salve os arquivos.

  2. Clique em Compilar Verilog.

  3. Leia o terminal Verilog.

  4. Corrija a primeira mensagem de erro, se houver.

A validação confirma sintaxe, módulos e conexões necessárias para elaborar o Top Level. Ela não substitui o testbench: um circuito pode ser elaborado corretamente e ainda produzir resultados funcionais incorretos.

6. Simular

Trecho da barra superior com PRISM, simuladores, análise de forma de onda, execução rápida, cancelamento e configuração de ondas.

Na barra superior, escolha o simulador e use Execução rápida ou Analisar Verilog (forma de onda) conforme o resultado desejado.

  1. Escolha Icarus Verilog ou Verilator. A Execução rápida com testbench Verilog exige Verilator; testbenches cocotb podem usar o simulador selecionado.

  2. Confirme o Top Level e o Testbench Top na barra de status.

  3. Use Execução rápida para executar o teste sem abrir formas de onda.

  4. Use Analisar Verilog (forma de onda) para executar o Testbench Top, gerar a saída temporal e abrir o viewer selecionado.

  5. Confirme no terminal se o testbench terminou e se todas as verificações passaram.

Icarus Verilog é uma boa escolha para a primeira execução e para observar sinais internos. Verilator é indicado quando a simulação exige mais desempenho e o projeto utiliza construções compatíveis.

7. Analisar formas de onda

Abra Configuração de Ondas para escolher os sinais e execute Analisar Verilog (forma de onda). O viewer selecionado abre o VCD ou FST produzido pela simulação.

Use a forma de onda para conferir clock, reset, entradas, saídas e estados internos relevantes. A passagem do testbench continua sendo o critério funcional; a forma de onda ajuda a explicar por que um caso passou ou falhou.

8. Visualizar no PRISM

Com o Top Level definido e o Verilog válido, clique em Abrir PRISM. Use a visualização para conferir a hierarquia e as conexões estruturais do circuito.

O PRISM oferece o modo Esquemático, para inspecionar a estrutura, e o modo Simular, para alterar entradas lógicas e observar saídas diretamente. Essa interação não substitui um testbench nem a análise temporal no viewer de ondas.

Resultado esperado

O fluxo Verilog está concluído quando:

  • Todos os módulos necessários estão registrados como fontes sintetizáveis.

  • O Top Level e o Testbench Top aparecem corretamente na barra de status.

  • A validação Verilog termina sem erro.

  • O testbench Verilog ou cocotb conclui suas verificações.

  • A análise de forma de onda abre os sinais esperados, quando solicitada.

  • O PRISM apresenta a raiz correta do circuito.

Para exemplos completos em .v e cocotb, consulte Galeria de projetos e testbenches. Para detalhes de classificação dos arquivos, consulte Arquivos Verilog e Testbenches.