You are on page 1of 17

Universidade Federal de Minas Gerais

Sistema Digital

Fabiana Nonaka Ferraz


2013073636

SISTEMA DE DESTRAVAMENTO PRESENCIAL


SEQUENCIAL

Belo Horizonte MG
Junho de 2014
Introduo

O trabalho consiste em projetar a lgica digital de um sistema que destranca a porta


de um cofre apenas quando todos os trs membros do grupo estiverem presentes na
antessala do mesmo e apertarem trs botes na ordem correta. Para isso, cada um de
ns dever estar portando um transponder especfico fornecido pelo fabricante do cofre.
Assim que cada um aperta seu boto, o respectivo transponder transmite um cdigo
criptografado, que formado por uma das letras iniciais do nome/sobrenome de seu dono
(codificado em ASCII, indiferente se maiscula ou minscula) e pelo algarismo menos
significativo do seu nmero de matrcula (codificado em BCD). Enquanto cada usurio
permanece apertando o respectivo boto na parede do cofre, o circuito de decodificao
dos sinais de RF do transponder entrega um total de (N+M) linhas digitais paralelas para
o respectivo bloco Identifica Indivduo X do sistema digital, onde N a quantidade de
linhas necessrias para representar a letra de cada usurio e M a quantidade de linhas
necessrias para representar o algarismo correspondente.
Os blocos combinacionais denominados Identifica Indivduo tm a funo de externar
o valor lgico 1 quando o usurio autorizado (componente do grupo) ou 0 caso
contrrio. A presena dos trs membros do grupo na antessala do cofre no suficiente
para abri-lo. necessrio que cada membro do grupo saiba qual o seu boto e a sua
ordem de pression-lo relativa aos colegas. Para tanto, os trs sinais lgicos de
identificao dos indivduos devem ir para o nvel lgico 1 em uma sequncia especfica,
o que requer do sistema a implementao de um circuito sequencial. Cada membro do
grupo dever pressionar seu boto e mant-lo pressionado aps a ao do colega
anterior at que o cofre se abra. Se durante o procedimento qualquer usurio soltar o
respectivo boto, o transponder para de transmitir e as linhas digitais de entrada daquele
indivduo vo a zero, o que faz a sada do bloco Identifica Indivduo correspondente
(sinal xA, xB ou xC) tambm igual a zero, invalidando todo o processo. Neste caso as trs
luzes se apagam e o processo volta ao estado inicial. Se algum usurio errar a sequncia
ou no for autorizado, o processo tambm volta ao estado inicial com as luzes apagadas.

Objetivos

Este trabalho tem como objetivo promover a familiarizao com:

1- Metodologia de projeto de circuitos combinacionais/sequenciais e de Mquinas de


Estados Finitos (FSM).

2- Edio de circuitos na forma de esquemticos (diagrama em blocos) no ambiente


Quartus II Altera.

3- Simulao em computador das entradas e sadas do circuito projetado.

Material Utilizado

1- Computador com softwares a seguir instalados:


o Altera Quartus II, Ver. 11.1, Service Pack 2 Web Edition, gratuita1, disponvel em
https://www.altera.com/download/software/quartus-ii-we/11.1sp2 (mesma verso do
laboratrio).o QSim - Quartus II Simulator Tools for Education, gratuito, compatvel com o
usado no laboratrio 2,

2- Arquivo Tutorial_quartus2_v1-3.pdf
Desenvolvimento

Projeto dos Blocos Identifica indivduo

O tamanho em bits das entradas de identificao dos indivduos (N+M) deve ser o menore
possvel, mas deve atender todo o alfabeto. Foram criados trs blocos "Identifica
Indivduo" para separar as trs pessoas necessrias para a abertura do cofre: Identifica
Indivduo 1", "Identifica Indivduo 2" e "Identifica Indivduo 3".
Foi necessrio criar uma pessoa Fictcia e por uma simples questo de convenincia
atribumos a ele a letra 'A' ou 'a' e ltimo algarismo 0. Sendo assim representamos

Identifica Indivduo Letra Maiscula Letra Minscula Ultimo Nmero


Indivduo 1 'A' - 01000001 'a' - 01100001 0 - 0000
Indivduo 2 'F' - 01000110 'f' - 01100110 6 - 0110
Indivduo 3 'H' - 01001000 'h' - 01101000 6 - 0110

'A' 01000001 at 'Z' 01011010 e de 'a' 011000001 at 'z' 01111010 dessa forma
podemos representar as letras do alfabeto usando 5 bits, j que independe se a letra
maiscula ou minscula.

0 0000 at 9 1001 so necessrios portanto 4 bits para representar os dgitos

Como no projeto independe se a letra maiscula ou minscula e o sistema deve


funcionar para ambas, dentro do projeto foi possvel representar todas as letras do
alfabeto('A' at 'Z' e de 'a' at 'z') usando apenas 5 bits(N) e os algarismos menos
significativos da matrcula(0 at 9) usando 4 bits(M).
Os blocos Identifica Indivduo recebem 9 linhas paralelas atravs do transponder, sendo 5
delas relativas aos bits da letra, e 4 aos bits do ltimo nmero da matrcula. Portanto, os
blocos Identifica Indivduos devero ler 9 bits.

Metodologia para Projetos de Circuitos combinacionais (Parte 1)

Passo 1 e passo 2- Identifique a funo e converta para equaes

Identifica Indivduo A (Xa)

Xa={[ (A1' AND A2' AND A3' AND A4' AND A5) AND (Num11' AND Num12' AND Num13'
AND Num14')] AND Botao1}
Xa=A1'.A2.'A3'.A4'.A5.Num11'.Num12'.Num13'.Num14'.Botao1

Identifica Indivduo B (Xb)

Xb={[ (F1' AND F2' AND F3 AND F4 AND F5') AND (Num21' AND Num22 AND Num23
AND Num24')] AND Botao2}
Xb=F1'.F2'.F3.F4.F5'.Num21'.Num22.Num23.Num24'.Botao2

Identifica Indivduo C (Xc)

Xc={[ (H1' AND H2 AND H3' AND H4' AND H5') AND (Num31' AND Num32 AND Num33
AND Num34')] AND Botao3}
Xc=H1'.H2.H3'.H4'.H5'.Num31'.Num32.Num33.Num34'.Botao3

Temporizador

Xt

Passo 3 Implemente as equaes na forma de circuitos com portas lgicas

Identifica Indivduo A Xa

Identifica Indivduo B Xb
Identifica Indivduo C Xc
Metodologia para Projeto de Circuitos Sequenciais -
FSM (Parte 2)
Passo 1-Capture o comportamento da FSM

Passo 2 Crie a Arquitetura


Arquitetura de Huffman_Moore fornecida na descrio do trabalho)
Passo 3 e passo 4- Codifique os Estados / Criar tabelas de transio de estados S(-) e de
sada Z(-):

TABELA VERDADE
ENTRADAS SAIDAS
Xa Xb Xc Xt S1 S0 n1 n0 Z1 Z2 Z3 D
0 0 0 X 0 0 0 0 0 0 0 0
0 0 1 X 0 0 0 0 0 0 0 0
0 1 0 X 0 0 0 0 0 0 0 0
INICIO
0 1 1 X 0 0 0 0 0 0 0 0
1 0 0 X 0 0 0 1 0 0 0 0
1 0 1 X 0 0 0 0 0 0 0 0
1 1 0 X 0 0 0 0 0 0 0 0
1 1 1 X 0 0 0 0 0 0 0 0
0 0 0 X 0 1 0 0 1 0 0 0
0 0 1 X 0 1 0 0 1 0 0 0
0 1 0 X 0 1 0 0 1 0 0 0
0 1 1 X 0 1 0 0 1 0 0 0
Ligado 1
1 0 0 X 0 1 0 1 1 0 0 0
1 0 1 X 0 1 0 0 1 0 0 0
1 1 0 X 0 1 1 0 1 0 0 0
1 1 1 X 0 1 0 0 1 0 0 0
0 0 0 X 1 0 0 0 1 1 0 0
0 0 1 X 1 0 0 0 1 1 0 0
0 1 0 X 1 0 0 0 1 1 0 0
0 1 1 X 1 0 0 0 1 1 0 0
Ligado 2 1 0 0 X 1 0 0 0 1 1 0 0
1 0 1 X 1 0 0 0 1 1 0 0
1 1 0 X 1 0 1 0 1 1 0 0
1 1 1 X 1 0 1 1 1 1 0 0
X
X X X 1 1 1 0 0 1 1 1 1
X X X 0 1 1 1 1 1 1 1 1
Ligado 3

N0 = (Xa AND Xb' AND Xc' AND S1' AND S2') OR (Xa AND Xb' AND Xc' AND S1'AND S0)
OR (Xa AND Xb AND Xc AND S1 AND S0') OR (Xt' AND S1 AND S0).

N1= (Xa AND Xb AND Xc' AND S1 AND S0) OR(Xa AND Xb AND Xc' AND S1 AND S2')
OR (Xa AND Xb AND Xc AND S1 AND S0') OR (Xt' AND S1 AND S0)

Z1 = S0

Z2 = S1

D= Z3 = Xt AND S0 AND S1 OR Xt' AND S0 AND S1


Passo 5- Implementar a lgica combinacional

Todo o circuito implementado usando portas lgicas e flip flop D esto no esquema
nomeado SistemaCofre.bdf(o diagrama esquemtico).
Documentao esquemtica do projeto lgico no Quartus II

Block Diagram/ Schematic File

Viso total

Viso parcial mais detalhada das entradas

RTL Viewer
Technology Map View

Documentao da Simulao

Infelizmente tivemos alguns contratempos em realizar a simulao usando o windows 8


(64 bits), pois no estava sendo possvel iniciar o Qsim pelo link da rea de trabalho, foi
preciso localizar o quartus_sh.exe dentro da pasta bin.

Seguindo as especificaes e o passa a passo do Tutorial do Quartus, executamos o


projeto selecionando EPM3064ALC44-10 que um chip da famlia MAX3000A
(alimentao 3,3V), tem 64 macroclulas, o encapsulamento tipo PLCC (cdigo ALC),
tem 44 pinos e o atraso de porta de 10 nanosegundos. Antes de simular o Projeto
SistemaCofre no Qsim, o projeto foi compilado e no apresentou erros, apenas 7
warnings (que no conseguimos remover).
Tentamos simular o projeto utilizando o chip MAX3000A:EPM3064ALC44-10.
E ao clicar em File > New Simulation Input File. O Qsim acusou os seguintes erros:

Foi ento escolhido outra famlia Cyclone III:EP3C25E144C7, e o projeto foi novamente
compilado no Quartus.
Dessa vez, ao clicar em File > New Simulation Input File, o Qsim compilou com sucesso.

Tentativas de Simulao
Tive bastante dificuldades em realizar simulas no Qsim pela falta de familiaridade com o
Sistema e por dificuldade em conseguir inicializa-lo usando o Windows 8.

Teste 1 Acender o LED vermelho (com Sucesso)


Por se tratar do teste mais simples, obtivemos sucesso a durante sua execuo.

Sinal das Entradas

Sinal de Sada
Teste Destravar o Cofre (Sem Sucesso)

A tentativa de destravar o cofre no obteve xito, apenas o LED vermelho acendeu na


primeira tentativa de simulao.

Sinais das Entradas


Apesar do Sucesso durante a etapa de Start Simulation

Os sinais da sada esto aparentemente errados. Devido ao fim do prazo de entraga do


trabalho, no ser possvel realizar uma simulao que destrave o cofre com sucesso.

Sinais das Sadas

Algumas outras simulaes foram realizadas, porm optamos por no document-las


para no tornar o trabalho muito extenso. O maior problema encontrado foi realizar a
simulao de forma correta. Uma vez que os valores da sada dependem do
temporizador.

Consideraes finais

Apesar de se tratar de um trabalho aparentemente simples, ele demanda um


conhecimento prvio das ferramentas computacionais do Altera. Mesmo com o Tutorial e
referencias o trabalho demandou bastante tempo e muita pesquisa em sites e outros
tutoriais na internet.
O maior problema foi realizar as simulaes no Qsim devido a falta de conhecimento e
prtica da ferramenta, alm de ser relativamente difcil encontrar documentao que nos
ajudasse, na internet. Uma parte do trabalho foi feita em rascunhos de papel, e a falta de
conhecimento prvio em UML inviabilizou document-lo da forma que gostaramos (com
as FSM).

Referncias bibliogrficas

[1]Sistemas Digitais: Projeto, Otimizao e HDLs - Frank Vahid - Bookman 2008.


[2]Arquivo Tutorial_quartus2_v1-3.pdf
[3] Introduo aos Sistemas Digitais M. Ercegovac, T. Lang e J. H. Moreno Bookman
2000
[4] http://www.pcs.usp.br/~labdig/material/QuartusII_09-2011.pdf
[5] http://legacy.afonsomiguel.com/PCT/plicploc/Aula1/aula_1_quartus_ii.htm
[6]http://www2.sorocaba.unesp.br/professor/assimoes/cdgi/vhdl_aula01b.pdf

You might also like