Buscar

calculadora eletronica

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

UNIVERSIDADE ESTADUAL DE FEIRA DE SANTANA
LOURIVAL OLIVEIRA DA SILVA
Projeto da Cálculadora Eletrônica
Feira de Santana, 10 de Junho de 2004
UNIVERSIDADE ESTADUAL DE FEIRA DE SANTANA
LOURIVAL OLIVEIRA DA SILVA
Projeto da Calculadora digital
Relatório do Problema da Calculadora
Digital apresentado para avaliação da
Disciplina de Arquitetura e
Organização de Computadores do 2º.
semestre, do Curso de Engenharia de
Computação, da Universidade
Estadual de Feira de Santana sob
orientação do Prof. Márcio.
Feira de Santana, 10 de Junho de 2004
Sumário
Introdução................................................................................................................................4
O Projeto................................................................................................................................. 5
Componentes Empregados................................................................................................. 6
Comparações Numéricas.................................................................................................... 6
Comparações entre dois números qualquer................................................................... 6
Verificando se um número é zero.................................................................................. 6
Teclado............................................................................................................................... 7
Display................................................................................................................................7
A Unidade Aritmética Lógica.............................................................................................7
Detecção de Overflow/Underflow................................................................................. 7
Soma e Subtração...........................................................................................................8
Multiplicação................................................................................................................. 8
Divisão...........................................................................................................................8
Conclusão................................................................................................................................9
Referências Bibliográficas.................................................................................................... 10
Anexo I..................................................................................................................................11
Introdução
As calculadoras digitais são uma constante no cotidiano do homem moderno, porém
mesmo se propondo a atingir objetivos tão modestos e triviais uma calculadora digital
emprega uma complexa gama de dispositivos e conexões quando observada a nivél de
projeto de circuito digital. O presente trabalho visa explanar sobre o projeto de
desenvolvimento de um dispositivo capaz de realizar as quatro operações matemáticas
básicas, a partir de componentes eletrônicos simples. Algumas simplificações foram feitas
para tornar o projeto menos complexo, como o não tratamento de números negativos, e a
manipulações de números inteiros somente. A primeira parte do projeto procura dar uma
visão ampla do projeto, passando depois a explicar de forma mais detalhada os
componentes de cada módulo da calculadora e as considerações que foram feitas para se
implementar cada um destes módulos, e suas conexões. 
O Projeto
Neste projeto de calculadora digital evidêncio-se três módulos principais, dois
destes fazem a interface com o usuário, que são o teclado e o display digital, o terceiro e
mais complexo é o responsavél pela execução das funções da calculadora. Como
evidênciado no diagrama abaixo que destaca os principais módulos e seus sub-
componentes.
O ciclo de operação da calculadora para este projeto foi definido como segue abaixo
sem nenhuma variação:
Estas instruções são digitadas no teclado do equipamento que é composto por dez
teclas que representam cada digito no sistema decimal, acrescido de mais quatro botões que
acionam as operações básicas implementadas neste projeto (Soma, Subtração,
Multiplicação e Divisão), e por fim um botão “Igual” que indica ao sistema que a entrada de
dados foi finalizada, para que este execute a operação informada e que imprima o resultado
no Display de dois digitos presente no aparelho.
Componentes Empregados
3-State – É um componente elétrônico assume o valor lógico da entrada quando a
porta inferior está com sinal 1, caso contrário a sua saída não corresponde a
nenhum estado lógico válido, ficando assim no “Terceiro estado”
XOR – É uma porta lógica que só assume o valor verdade quando um e somente
uma das suas entradas é verdadeira, retornando falso em todas as outras
possibilidades, ou seja quando os valores de suas entradas são iguais.
 NOR – Este tipo de porta lógica faz uma negação a uma porta OR normal. 
Registradores – Armazena os valores das entradas somente num transição
de clock, mantendo este valor na saída até que outra transição de clock
ocorra.
Comparações Numéricas
Para realizar certas operações fez-se nescessários em algumas operações a
comparação entre dois números, para determinar se este é zero ou se tem os mesmos
valores, os processos para realizar tais comparações são explicados abaixo: 
Comparações entre dois números qualquer - As comparação entre dois números
binários foram feitas se utilizando de 4 portas
XOR de duas entradas e uma NOR de duas
entradas, em cada porta XOR se introduzio os
bits correspondentes em cada par de número a
ser comparado e as saídas dessas XOR foram
ligadas á entrada de uma NOR que indicava
quando todos os valores se correspondiam, ou
sejam quando o valor de todas as XOR davam
Falso. 
74LS199
J
K
CP
CE
D7
D6
D5
D4
D3
D2
D1
D0
PE
MR
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
U49
U23C
U79B
igual 
B2 
B3 
B0 
B1 
A2 
A3 
A1 
A0 
U2A
U1D
U1C
U1B
U1A
Verificando se um número é zero – Certificar-se de que um determinado valor
binário é zero é uma operação simples, basta ligar todas os bits deste número às entradas de
uma porta NOR, assim a saída indicará se todas as entradas estão em “zero”.
Teclado
As entradas do usuários são feitas através de um teclado numérico de 0 a 9 que é
implementado utillizando-se um conjunto de portas OR ligadas a uma matriz que determina
os valores binários de cada número pressionado, este valor é então armazenado num
conjunto de Flip-Flops antes de serem copiados para os Registradores A ou B de acordo
com o número que está sendo digitado.
Display
O display da calculadora proposta configura certo grau de complexidade devido ao
fato que este deve represntar valores inteiros no intervalo de 0 a 91 (inclusive), para
simplificação do projeto valores negativos não foram considerados.
O valor a ser exibido no display da calculadora sempre corresponde ao valor do
registrador de resuldo da calculadora, assim para se exibir os valores temporários das
entradas A e B desativa-se a entrada B e soma o valor de A assim se obtém a na saida,
repete-se a mesma operação com a entrada B, desativando a A. Quando o valor do
registrador de resultado da calculadora e modificado então inicia-se uma contagem
sequêncial em que a cada operação o valor do contador é comparado ao valor do registrador
V18
0V
V17
0V
V16
0VV15
0V
V14
5V
DIV
MULT
SUB
SOMA
U20B
U42AU41AU25B
U40 U39U35BU38
U35A
U34
U33A
U32
S1
S2
S3
S4
S5S6
S7
S8
S9
S0 U24C
ON
igual
S
J
CP
K
R
Q
_Q
U27A
S
J
CP
K
R
Q
_Q
U27B
S
J
CP
K
R
Q
_Q
U31A
S
J
CP
K
R
Q
_Q
U31B
de resultado, quando os valores se igualarem a contagem cessa, neste ponto dois outros
contadores de década possui separados o valor das dezenas e o valor das unidades, esta
separação se dá paralelamente à contagem do contador principal que a cada iteração aciona
o contador de decadas que a cada dezena se reinicia acionando o contador de dezenas.
Assim ao final do processo basta converter os valores do contador de decadas e do contador
de unidades para um displays de 7-segmentos que representarão corretamente as dezenas e
as unidades.
A Unidade Aritmética Lógica
A unidade aritmética Lógica (UAL) é o circuito responsavél por efetuar as
operações matemáticas definidas para a calculadora, neste projeto as funções definidas
foram a soma, subtração, multiplicação e divisão. As duas primeiras são mais fáceis de
implementar, pois se utilizam de algoritimo relativamente fácil e direto, enquanto as duas
últimas nescessitam de um algoritimo mais elaborado, e portanto de maior complexidade.
BCD-99
BCD-99
A0
A1A2
A3A4
A5
A6
Da
DbDc
Dd
De
Df
Dg
Ua
Ub
Uc
Ud
Ue
Uf
Ug
ENCLK
U1C
U1B
U10B
CP1
CP2
Q1
Q2
V7
J
CP
K
R
Q
_Q
U13A
J
CP
K
R
Q
_Q
U12B
J
CP
K
R
Q
_Q
U12A
J
CP
K
R
Q
_Q
U9B
74LS247
A3
A2
A1
A0
LT
RBI
g
f
e
d
c
b
a
RBO
U74
U11A
U10A
74LS247
A3
A2
A1
A0
LT
RBI
g
f
e
d
c
b
a
RBO
U72
J
CP
K
R
Q
_Q
U9A
J
CP
K
R
Q
_Q
U8B
J
CP
K
R
Q
_Q
U8A
J
CP
K
R
Q
_Q
U5B
U69
U7CU7BU7AU6DU6CU6BU6A
J
CP
K
R
Q
_Q
U5A
J
CP
K
R
Q
_Q
U4B
J
CP
K
R
Q
_Q
U4A
J
CP
K
R
Q
_Q
U3B
+V
V3
5V
J
CP
K
R
Q
_Q
U3A
J
CP
K
R
Q
_Q
U2B
J
CP
K
R
Q
_Q
U2A
+V
V4
10V
U1A
74LS199
J
K
CP
CE
D7
D6
D5
D4
D3
D2
D1
D0
PE
MR
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
U49
Todas as funções acima se baseiam na utilização de um conjunto se
somadores completos, como demonstrador no Anexo I. Além do resultado
da operação este Somador/Subtrator completo pode detectar a ocorrência do
Overflow e Underflow, possuindo também circuitos lógicos para desabilitar
cada porta individualmente, estas carácteristicas adicionais são utilizadas na
implementação das operações de Multiplicação e da Divisão.
Detecção de Overflow/Underflow
Quando um número é tão grande que não pode
ser representado no hardware envolvido diz-se
que houve um Overflow, de forma análoga diz-se
que houve um Underflow quando um número é
tão pequeno que não pode ser representado no
hadware envolvido. Neste problema somente o
segundo evento é pertinente, pois ele ocorre
quando subtraimos um número qualquer por
outro maior que ele, assim utiliza-se este evento
para determinar o fim das subtrações sucessivas
que compoem a divisão. O hardware de detecção
de overflow é exibido ao lado é adicionado ao
Carry Out do somador completo mais
significativo, e o valor de sua saída indica a
presença de Overflow/Underflow na operaçõa corrente.
Soma e Subtração
As operações de adição e feita utilizando-se quantro somadores completos, que
utilizam como entradas os valores dos registradores “A” e “B”. As operações de subtração
utilizam o mesmo circuito porém invertendo todas as entradas de “B” e acionando o Carrie-
In do primeiro somador, para gerar o chamado complemento de dois do número “B”, que é
o valor do número negativo correspondente a “B”, obténdo-se assim a função de subtração
“A” e “B”, substituindo esta operação pela soma de a por menos B, o que é
matemáticamente equivalente. O modelo de implementação deste somador pode ser
observado no Anexo I.
Multiplicação
A multiplicação é a soma sucessiva de um número, sendo assim projetou-se a
calculadora para aproveitar o hardware utilizado para soma nesta operação também. Ela se
utiliza do registrador A e anula o B fazendo a soma sucessiva de A pelo resultado da soma
anterior, até que B se torne igual ao valor do contador de iterações, obtendo-se assim a
multiplicação de A por B. Há duas operações que devem ser especialmente tratadas, a
primeira é a multiplicação por zero, que deve sempre resultar em zero, como a condição de
parada se satisfaz com a igualdade entre B e o valor do contador de passos, deve-se evitar a
ULA7Bits
B6
B5
B4
B3B2
B1
B0
A0
A1A2
A3
A4
A5A6
S6
S5
S4
S3
S2
S1S0
EA
EB
FU
NC
CO
UT
U1
ocorrência da soma pois, mesmo com os valores iguais haverá ainda uma operação, para tal
há um conjunto de portas lógicas que desativam as entradas A e B do somador quando o
valor do contador for zero, assim a multiplicação quando B for zero sempre resultará em
zero. Isto apaga qualquer valor previamente contido no registrador de resultado.
Divisão
A divisão é feita apartir de um contador de contador de 4 bits e um segundo
contador de 2 bits que registra o estado da divisão. Esta operação é implementada a partir
do seguinte algoritimo:
1. RESULTADO = A + ZERO;
2. C = ZERO;
3. ENQUANTO (RESULTADO – A > ZERO) FAÇA:
RESULTADO = RESULTADO – A;
C = C + 1;
4. RESULTADO = C;
5. EXIBIR RESULTADO;
Estas operações são executadas no sistema através dos blocos de contadores logo
abaixo do Somador e do Mux na saida do Somador utilizado para alternar entre o valor do
Somador e o valor do contador da divisão. 
J
CP
K
R
Q
_QJCP
K
R
Q
_QJCP
K
R
Q
_QJCP
K
R
Q
_Q
+V
5V
Contador de Iterações
Comparação dos números
Verifica 
se é zero
V19
0V
U66A
U54D
U65B
U65A
U55F
U63D
U63C
U55E
U61C
U55D
U62A
U55C
U61B
U61A
U60A
U57D
U55B
U57C
U28C
S
D
CP
R
Q
_Q
U58A
U57B
U23C
U57A
U53D
L5L4L3L2
U55A
U23B
U54AU53A
CP1
CP2
Q1
Q2
V9
J
CP
K
R
Q
_Q
U47A
J
CP
K
R
Q
_Q
U43A
+V
V11
5V
+V
V8
5V
J
CP
K
R
Q
_Q
U52B
J
CP
K
R
Q
_Q
U52A
J
CP
K
R
Q
_Q
U48B
J
CP
K
R
Q
_Q
U48A
MarcaMarca
o Estado o Estado 
AtualAtual
Conta o número de Conta o número de 
Subtrações feitasSubtrações feitas
Define o Define o 
Inicio/Fim Inicio/Fim 
da da 
DivisãoDivisão
Conclusão
Apesar deste projeto ser demasiadamento simplificado quando comparado ao de
uma calculadora convencional, sua implementação se mostrou massante e penosa,
especialmente no que diz respeito às implementação das operações de multiplicação e
divisão, sua implementação também mostrou como os mais simples circuitos eletrônicos
quando devidamente agrupados conseguem executar operações diversas.
Este projeto peca por ter poucas otimizações, muitas das lógicas combinacionais são
redundantes ou poderiam ser efetuadas de forma mais concisa. Talvez se pudesse reduzir de
forma significativa o número de componentes empregados.
Referências Bibliográficas
PATTERSON, David A. e HENNESSY, John L., Organização e projeto de computadores
a interface hardware/software , Segunda edição. Rio de Janeiro, LTC, 2000.
GAJSKI, Daniel D., Principles Of Digital Design, Prentice-Hall Inc., 1997
IDOETA, Ivan V., CAPUANO, Francisco F., Elementos de Eletrônica Digital. 6ª Edição.
São Paulo: Érica, 1984.
TOCCI, R. J. Sistemas Digitais: Princípios e Aplicações, LTC, 2000, 7° edição
Anexo I
Somador e Subtrator completo de 5 bits:
V3
5V
Overflow
U47D
U47C
B4 
U44D
U48A
U18A
A4 
U16A
U46D
U46C
U15A
U44C
S4 
U47B
U47A
B3 
U44B
U45D
U45CA3 
U45B
U46B
U46A
U45A
U44A
S3 
U14A
U19F
B2 
U13A
U12A
U43D
A2 
U43C
U11A
U10A
U43B
U42D
S2 
S1 
U42C
U43A
U9A
U8A
U7A
A1 
U5A
U24D
U42B
B1 
U19E
U19D
U6E
U6D
U6A
B0 
U1D
U4C
U4D
A0 
Fu
nc
 
 
S0 
U2B
U3B
U3A
U2A
U1A

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes