Pré-Síntese

Nesta etapa foram realizas as atividades de:

- Adequação dos arquivos HDL para desenvolvimento do CI;

- Desenvolvimento do arquivo HDL para geração de sinais de teste;

- Simulação dos arquivos HDL.

Adequação dos arquivos HDL para desenvolvimento do CI

Retirou-se as diretivas para simulação (#) e blocos seqüenciais que tinham atribuições blocadas e não blocadas (“=” e “<=” dentro do mesmo bloco seqüencial).

Após a adequação resutou-se nos arquivos:
uartproto.v
uartproto_baudgen.v
uartproto_transmitter.v

Desenvolvimento do arquivo HDL de geração de sinais de teste

Para se entender o funcionamento do CI é necessário ler o relatório sobre este (Relatório de Prototipação de Circuito Digitais – Ygo Batista, Josias Júnior e Rodolfo Pereira, 2008).

Os módulos de recepção e interrupção foram retirados para simplificar o processo de construção do CI. Logo, ficou implementado apenas os blocos de transmissão e baud generator.

Para transmitir um dado, deve-se seguir basicamente os passos:
- Configurar o baud generator (endereço 0 e 1 com DLAB = 1);
- Configurar o LCR – endereço 3;
- Armazenar o dado a ser transmitido no THR - endereço 0.

Para os testes com o módulo, foram escolhidos:

- Baud rate 1:16;

- Sem paridade;

- Stop bit = 1.


No programa de simulação da Cadence, SimVision, não é fácil gerar sinais de teste para o CI a ser desenvolvido. Foi verificado que seria mais rápido e fácil criar um arquivo em Verilog que gerasse os sinais de teste: gerador.v.

Além do arquivo gerador.v, foi necessário criar um arquivo para “linkar” o arquivo gerador de sinais para o uartproto.v, que foi o uart.v

Simulação dos arquivos HDL

Para realizar a simulação foi necessária a criação dos arquivos hdl.var e cds.lib e armazená-los na pasta do projeto, além de criar uma pasta vazia chamada mylib.

Obs.: Antes de executar as ferramentas da Cadence, é necessário habilitar as suas licenças através dos comandos:
. /opt/env_scripts/env_license.sh
. /opt/env_scripts/env_cadence.sh

Para executar o SimVision, digita-se:

irun -access +rw -gui uartproto.v uartproto_baudgen.v uartproto_transmitter.v gerador.v uart.v

Onde a opção -access +rw indica que o SimVision terá a permissão nos arquivos para ler e escrever e a opção -gui habilita a interface gráfica.

Ao selecionar os sinais de uartproto que se desejava observar, foi clicado em adicionar ao Waveform, obtendo os seguintes resultados:

Saída gerada pelo arquivo gerador.v simulando corretamente a operação de configuração dos registradores;

Registradores gravados corretamente;

Forma de onda do pino sout de acordo com o padrão RS232;

Observar a saída sout transmitindo o dado pretendido (0x6A), além de termos os registradores THR e LCR configurados corretamente (0x6A e 0x0F respectivamente), bem como o baud gerando 1:16. No início, antes da transmissão, acontece a configuração dos registradores, confirme indicado no relatório do código desenvolvido na disciplina de prototipação de circuitos digitais.

Voltar