Buscar

TE351_David Clístenes_Trabalho05

Prévia do material em texto

UNIVERSIDADE FEDERAL DO PARANÁ
SETOR DE TECNOLOGIA
CURSO DE ENGENHARIA ELÉTRICA
TRABALHO 05 
 Estudo dos Circuitos Digitais: 
Relógio Digital
ALUNO:
DAVID CLÍSTENES FURONI DE LIMA 
GRR20172156
PROFESSORA
DRa. SIBILLA BATISTA DA LUZ FRANÇA
DISCIPLINA: TE351 – MICROELETRÔNICA 1
CURITIBA
2021
1. INTRODUÇÃO
O presente relatório técnico tem como objetivo demonstrar os resultados
alcançados com simulações de um projeto de um relógio digital, o qual deve resultar na
apresentação dos minutos e segundos nos displays de 7 segmentos (SSDs). 
Os estudos e análises visam a compreensão funcional e analítica de circuitos
digitais, como comportamental, utilizando-se a ferramenta ISE, na qual serão
implementados os circuitos e simulados os resultados, de acordo com as
implementações realizadas. 
Para a realização deste trabalho foi utilizado um nootebook Dell – Intel CORE i7,
possuindo um desempenho razoável de processamento, tendo instalado o software
ISE da Xilinx, conforme orientações e instruções da Orientadora da disciplina.
Foi repassado um roteiro com os passos e sequências a serem seguidas para
alcançar os objetivos e resultados finais deste projeto, para a correta utilização e
possíveis configurações da FPGA.
2- DESENVOLVIMENTO 
2.1 – Projeto – Relógio Digital
Para este projeto, de acordo com as especificações solicitadas para o circuito do
relógio digital, duas etapas/blocos são importantes: um temporizador, responsável por
realizar a contagem dos segundos e minutos, e um multiplexador para os displays de
sete segmentos do kit Nexys 2. Os displays possuem seus bits de controle conectados
entre si, assim é necessária a multiplexação para exibir dígitos diferentes em cada um
dos displays, desabilitando 3 dos displays e enviando o dígito que deve ser mostrado
no display habilitado por uma fração de segundo, passando para o próximo display e
assim sucessivamente. 
Para o projeto, devemos seguir o esquema demonstrado na figura abaixo:
Para o desenvolvimento deste circuito, foi utilizado como base o código do
circuito temporizador, visto em laboratório anterior, sendo este implementado para
Temporizador da seguinte forma:
O temporizador utiliza o componente contador e é solicitado 4 vezes, uma para
cada um dos displays. O clock do display dos segundos consiste em um processo
sensível à entrada clk e ao rst (reset assíncrono), que utilizará o clock de 50 MHz do kit
para dividir a frequência de clock por 50000000, resultando em um clock de 1 Hz para
contagem dos segundos (caso a entrada conf, responsável por determinar a velocidade
da contagem, seja igual a “00”). A cada incremento da entrada conf a frequência do
clock dividido é dobrada. O comando concorrente “WITH SELECT” é utilizado para
determinar quantos ciclos de clock serão utilizados na contagem de divisão do clock de
acordo com o valor da entrada vel. Com conf = “00”, o contador interno deverá contar
por 50000000 de ciclos de clock e comutar de estado, gerando um clock com 1 Hz de
frequência. Com conf = “01”, contará 25000000 ciclos de clock e comutará. Com conf =
“10”, 12500000. Finalmente, com conf = “11”, contará 6250000 ciclos.
As saídas do temporizador são atribuídas, sendo direcionadas aos 4 displays de
sete segmentos do kit Nexys 2. O código é a declaração dos segmentos componentes
e suas solicitações. As saídas cont tem seus valores escolhidos tendo em mente que
os LEDs dos displays são ânodo comum, sendo acionados com nível lógico baixo. Os
displays do kit são habilitados através de um transistor PNP e também necessitam de
nível lógico baixo para acenderem. 
O código VHDL do Relógio Digital encontra-se no Anexo 1.
 Para este projeto, não houve a solicitação dos esquemáticos lógicos e
tecnológicos, no entanto podem ser verificados no arquivo do projeto implementado.
Com a verificação e execução dos passos anteriores, a criação do arquivo
(test_bench) foi implementada, o código deve ser configurado para simular o circuito,
as alterações na implementação são mostradas no Anexo 2.
2.2 - OBSERVAÇÕES E RESULTADOS DA SIMULAÇÃO DO PROJETO 
Para o presente circuito implementado foi solicitado a simulação para diferentes
combinações, pode-se verificar com os resultados apresentados após a simulação que
o circuito, de acordo com a teoria estudada, apresenta comportamento esperado, ou
seja, não apresentou erros durante a simulação, pois vemos que a saída apresentou os
resultados de acordo com as variações dos valores de entrada.
Para a simulação do funcionamento do relógio, foi criado um testbench,
utilizando um processo de clock com período de 10 ns. O reset foi mantido em ‘1’ por
1ms e a velocidade foi setada em “11” (máxima).
Vale ressaltar que os períodos de contagem dos segundos foram acelerados
para acelerar as simulações, como visto a seguir na figura abaixo:
Para a simulação com reset mantido em ‘1’ por 5ms e a velocidade foi setada
em “10” .
Para a simulação com reset mantido em ‘0’ por 5ms e a velocidade foi setada em “11” .
Com a utilização do Manual Kit Nexys2, houve a implementação e codificação 
para as entradas do circuito e os LEDs para a saída, por meio dos switches:
Para este circuito é necessário também conectar a entrada de clock ao pino B8,
que possui o sinal de clock interno de 50 MHz. Estas atribuições estão demonstradas
na figura acima, que exibe a implementation constraint file e todas foram feitas com
base nos pinos disponíveis em kit Nexys 2. 
Considerando a possibilidade de se ter uma FPGA em mãos, seria possível a
programação da mesma com os circuitos implementados, por meio da utilização da
opção configure target device.
Conclusão
Com os estudos e pesquisas realizadas, foi possível implementar a lógica em
VHDL de um relógio digital. Os requisitos necessários para as configurações e divisões
do clock do temporizador, puderam ser observados com os resultados alcançados na
simulação e funcionamento do circuito. Não houve a utilização de componentes,
mesmo sendo um requisito para a implementação deste projeto, no entanto os
conceitos sobre o assunto foram estudados, e mesmo com as dificuldades encontradas
a simulação e funcionamento teve um resultado muito bom. Sendo que para os
próximos projetos ou algo mais complexos seja necessário a utilização de
componentes, tendo em vista que a utilização destes recursos e ferramentas auxilia no
compartilhamento e reutilização de código.

Continue navegando