Contador Assíncrono Crescente - Roteiro para implementação e simulação com QUARTUS II, QSIM e kit DE2-115
Revisão de 09h10min de 12 de novembro de 2013 por Kamila.r (discussão | contribs) (→Questão 1 - Qual o nível de simplicidade ou dificuldade quanto a leitura do diagrama esquemático?)
Objetivos
- Inserir diagrama esquemático de um circuito lógico com o Quartus II
- Fazer a simulação funcional de um circuito com o QSIM
- Gerar formas de onda para entrada de simulação
- Fazer a simulação temporal de um circuito com o QSIM
- Preparar o circuito lógico para gravação no kit DE2-115
- Verificar os resultados obtidos.
Diagrama Esquemático
Abra o Quartus II (versão 12.1) e insira o diagrama esquemático de um contador assíncrono crescente com 4 bits, conforme a figura abaixo.
Após salvar o arquivo como cont_up.bdf em uma pasta vazia com nome EX_1, e crie um projeto cont_up.qpf utilizando a família family=Cyclone IV com o dispositivo device=EP4CE115F29C7. Após isso compile o projeto.
Simulação funcional com o QSIM
- Abra o QSIM e abra o arquivo de projeto cont_up.qpf (File > Open Project...).
- Em seguida gere o arquivo de nós do projeto (Processing > Generate Node Finder Files).
- Crie as formas de onda para entrada da simulação (File > New Simulation Input File).
- Defina o tempo de simulação (Edit > Set End Time ...) = 400 ns.
- Importe todos os nós de lista do projeto (Edit > Insert > Insert Node or Bus) > [Node Finder] > [List] > [>>] > [OK] > [OK].
- Desenhe a forma de onda dos sinais de entrada conforme mostrado na figura abaixo, e salve com o nome entrada.vwf.
- Indique como a simulação será feita (Assign > Simulation Settings ...). Escolha o arquivo de forma de onda de entrada que você criou (entrada.vwf) e selecione a tipo de simulação [x] Functional.
- Faça a simulação do circuito lógico usando o sinal criado (Processing > Start Simulation)
- Abra o arquivo resultado da simulação (File > Open Simulation Output File). E verifique se o resultado obtido corresponde a um Contador assíncrono Crescente. Salve o sinal de saída como resultadoF1.vwf.
Simulação temporal com o QSIM
- Indique como a simulação será feita (Assign > Simulation Settings ...). Escolha o arquivo de forma de onda de entrada que você criou (entrada.vwf) e selecione a tipo de simulação [x] Timing.
- Faça a simulação do circuito lógico. Abra o arquivo resultado da simulação. Verifique as mudanças que ocorreram nos sinais de saída Q1, Q2, Q3 e Q4. Salve o sinal de saída como resultadoT1.vwf.
Preparando para gravar o circuito lógico no FPGA
Para gravar o circuito lógico no FPGA, é necessário escolher um FPGA para a aplicação. Neste caso utilizaremos o kit DE0-Nano.
- Mude a família e dispositivo a ser usado (Assignments > Devices), [Family = Cyclone IV E] e selecione EP4CE115F29C7
- Atribua os pinos conforme a pinagem do kit DE2-115, utilizando como entradas a chave KEY[0] como CLK, DIPswitch[0] como D, DIPswitch[1] como RESET e DIPswitch[2] como SET. Como saída utilizaremos os leds verdes e Q1 a Q4 como LED[0] a LED[3].
- Defina como alta impedância o estado dos pinos não utilizados no projeto. (Assignments > Devices), [Device and Pin Options...], escolha a (Category=Unused Pins), e selecione Reserve all unused pins: As input tri-stated. [OK].
- Compile o projeto. Note que agora a numeração dos pinos aparece no diagrama esquemático.
Questões sobre a abordagem
- Questão 1
- Qual o nível de simplicidade ou dificuldade quanto a leitura do diagrama esquemático?
. . . . . . . .
Questão 2 - -> Qual o nível de simplicidade ou dificuldade quanto a seleção dos componentes e a implementação do diagrama esquemático no QUARTUS II?
.
.
</syntaxhighlight>
Questão 3 - -> Qual o nível de simplicidade ou dificuldade quanto a conferência das ligações e a compilação do projeto?
.
.
</syntaxhighlight>
Questão 4 - -> Quanto a simulação e o teste funcional e temporal no QSIM e sobre a detecção de erros (transições entre as contagens) houve uma simplificação ou não pelo uso do QUARTUS II ?
.
.
</syntaxhighlight>
Questão 5 - -> Quanto a programação do FPGA, quais os benefícios ou malefícios apresentados no teste?
.
.
</syntaxhighlight>