Você está na página 1de 9

UNIVERSIDADE FEDERAL DO ABC

Relatrio Aula Prtica 4


Lgica Programvel

Prof. Dr. Rodrigo Reina Muoz

Fbio Augusto Barcelos Teixeira

RA11079312

Paulo Csar Menegon de Castro

RA11004911

Pedro Pennachi

RA 21038414
00112233

Santo Andr

2016
1. Introduo
O VHDL (Very High Speed ASIC Description Language) uma linguagem de
descrio de hardware, ou seja, uma forma estruturada para a descrio de circuitos
digitais. Esse tipo de linguagem permite que o circuito eletrnico seja descrito com
sentenas, tais como em uma linguagem de programao, com a grande vantagem
de poder ser simulado antes de ser salvo no FPGA.
O uso da linguagem VHDL vem crescendo com o passar dos anos pois
permite projetar circuitos digitais de forma muito mais rpida, e tambm permite uma
portabilidade maior para os projetos, garantindo assim longevidade.
2. Objetivo
O objetivo da aula prtica foi o de implementar uma maquina de com auxlio
do KIT DE2-115 da Altera e fazer a simulao do funcionamento desse circuito
mediante uso do programa Quartus II.
O circuito composto basicamente por um relgio, que gera os pulsos de
entrada, e uma estrutura IF ELSE. A maquina de estados projetada possui cinco
estados: idle, one, two, three e four. O diagrama de transio referente a esta
estrutura est ilustrada na figura 1. Esta estrutura sequencial, iniciando em um
estado ocioso (idle) que a partir de uma entrada trigger (start) o circuito muda de
estado a cada pulso do relgio. No quarto estado a sada um pulso em nvel lgico
alto.

.
Figura 1 Diagrama de transio de estados

Para caracterizar os estados no cdigo, uma varivel de tipo enumerado


(estado_contagem). Para armazenar 5 estados, so necessrios 3 bits. Isto totaliza
8 estados possveis, mas apenas 5 sero utilizados, sendo os outros 3 declarados
por convenincia mas no sendo utilizados.
3. Resultados
3.1 - Cdigo VHDL
O seguinte cdigo VHDL implementado foi o seguinte:
LIBRARY ieee;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
USE ieee.std_logic_1164.all;

ENTITY atraso IS
PORT ( clock: IN BIT;
start: IN BIT;
pulso: OUT BIT);
END atraso;

ARCHITECTURE simulacao OF atraso IS


BEGIN
PROCESS(clock)
TYPE estado_contagem IS (idle, one, two, three, four, extra1, extra2, extra3);
--novo tipo definido
VARIABLE mach: estado_contagem;
BEGIN
IF start = '0' THEN --estado inicial (idle)
mach := idle;

ELSIF(clock ='1' AND clock'EVENT) THEN --ciclo de estados


iniciados pelo start
CASE mach IS
WHEN idle =>
IF (start = '1') THEN
mach := one;
END IF;
WHEN one =>
mach := two;
WHEN two =>
mach := three;
WHEN three =>
mach := four;
WHEN four =>
mach := idle;
WHEN OTHERS =>
mach := idle;
END CASE;
END IF;
IF (mach = four) THEN -- no quarto estado, pulso = 1
pulso <= '1';
ELSE
pulso <= '0';
END IF;
END PROCESS;
END simulacao;

3.2 - Simulao no Quartus II


Dentro do ambiente de simulao do Quartus II, foi realizada a simulao.

Figura 2 Resultado da simulao

possvel verificar que com o Start em nvel lgico alto, os pulsos de relgio
desencadeiam a sequencia da maquina de estados. Aps 4 pulsos do relgio, a
sada vai a nvel lgico alto, e retorna a 0 no prximo pulso, e assim o processo se
repete.

3.3 - Implantao na placa DE2 - 115 da Altera


A implantao no hardware consistiu em associar os dispositivos fsicos s
entradas do chip. Esta associao foi realizada da seguinte forma:
Nome
do
Sinal

Nome
PORT

Tipo
de
Sinal

Sada

Pulso

Sada

Relgio

Clock

Start

Start

Entrad
a
Entrad
a

Nome Nmer
do
o do
Sinal
Pino
FPGA FPGA
LEDG[ PIN_E2
0]
1
PIN_M2
KEY0
3
PIN_M2
KEY1
1

Tabela 1 - Descrio de sinais e pinos do circuito e da placa DE2-115

Fotos do circuito em funcionamento


Executando o programa em hardware, obtivemos as leituras atravs de sinais
luminosos. Ilustrando esta etapa, temos um push-button emulando a o sinal de
relgio, e um LED exibindo o estado da sada.

Figura 3 Circuito em estado Idle

Figura 4 Circuito aps 4 pulsos, no estado Four

4. Concluso
Com esta prtica foi possvel verificar a implementao de cdigo VHDL, sua
simulao e implantao em hardware. Atravs destas ferramentas foi possvel implementar
uma maquina de estados, com cinco estados. Atravs das simulaes, os resultados
obtidos foram comparados com os resultados esperados e foram compatveis. O design foi
implantado em hardware. Utilizando chaves, push-buttons e indicadores luminosos, foram
simuladas as entradas e sadas. A cada pulso do relgio foi possvel verificar o
comportamento do circuito em cada estado, verificando atravs de sinais luminosos, o
comportamento da sada. Estes resultados verificados na pratica, tambm corresponderam
aos resultados.

Referncias Bibliogrficas
DAMORE, Roberto; "Descrio e Sntese de Circuitos Digitais", LTC-Livros
Tcnicos

Cientficos

Editora

S.A.,

2005.

PERRY, Douglas L.; VHDL, Programming by Example, Fourth Edition, McGrawHill,

2002.

SALSIC, Zoran; SMAILAGIC, A.; "Digital systems design and prototyping using field
programmable logic and hardware description languages", Kluwer Academic
Publishers, 2000.
TOCCI, Ronald J.; WIDMER, Neal S.; MOSS, Gregory L.; Sistemas digitais princpios e aplicaes; 11 Edio, Pearson, 2015
MUOZ, R. R. Quarta Aula Prtica. In: Lgica Programavel. CECS - Universidade Federal
do ABC, 2016.