Baixe o app para aproveitar ainda mais
Prévia do material em texto
0 UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA CURSO DE ENGENHARIA ELÉTRICA DISCIPLINA DE CIRCUITOS DIGITAIS II CALCULADORA DIGITAL 1° Trabalho (Projeto) Caroline Obregon Pilz Laura Ferreira Prof. Giovani Baratto Santa Maria, Rio Grande do Sul Maio/2015 I SUMÁRIO RESUMO ................................................................................................................................ III 1 INTRODUÇÃO COMPREENSIVA ................................................................................... 1 2 OBJETIVOS .......................................................................................................................... 2 1.2.1 Objetivo geral ................................................................................................................... 2 1.2.2 Objetivos específicos ........................................................................................................ 2 3 REVISÃO DA LITERATURA ............................................................................................ 3 4 METODOLOGIA .................................................................................................................. 4 4.1 FERRAMENTAS UTILIZADAS ........................................................................................ 4 4.2 DESENVOLVIMENTO ....................................................................................................... 4 4.3.1 CONCEITOS UTILIZADOS ............................................................................................ 4 4.3.2 SOMADOR DE 5 BITS .................................................................................................... 7 4.3.2 SUBTRATOR DE 5 BITS ................................................................................................ 9 4.3.3 SELEÇÃO DE DÍGITOS DE ENTRADA ..................................................................... 11 4.3.4 BLOCO SELETOR/OPERADOR (SELETOR DE DÍGITOS UNIDO AO SOMADOR/SUBTRATOR) .................................................................................................... 12 4.3.5 MOSTRADORES DE SETE SEGMENTOS (DISPLAYS) ........................................... 13 4.3.6 BLOCO FINAL (BLOCO SELETOR/OPERADOR UNIDO AOS DISPLAYS) ......... 22 4.3.7 MONTAGEM FINAL ..................................................................................................... 23 5 RESULTADOS .................................................................................................................... 24 6 DISCUSSÃO ........................................................................................................................ 25 7 CONCLUSÕES .................................................................................................................... 26 REFERÊNCIAS ..................................................................................................................... 27 ANEXOS ................................................................................................................................. 28 III RESUMO Este relatório trata do desenvolvimento de uma calculadora digital que realiza as operações de soma e subtração entre números de um dígito. Para tal foram construídos circuitos lógicos que realizam as aritméticas, circuitos contadores para a seleção de dados de entrada e circuitos que disponibilizam os resultados em mostradores de 7 segmentos (displays). 1 1 INTRODUÇÃO COMPREENSIVA O projeto a ser desenvolvido trata do desenvolvimento de uma calculadora que execute as operações de soma e subtração de números inteiros de um dígito. Primeiramente, para a criação de um somador completo de 2 bits, se faz necessário o conhecimento sobre a aritmética de números binários. Através da tabela verdade, é possível conhecer suas equações correspondentes e então montar o circuito. A ideia inicial para o circuito lógico trabalharia com a soma/subtração de 4 bits, porém, ao somar o valor máximo de cada dígito, se faz necessário o uso de 5 bits para a representação do resultado, portanto os bits de entrada também serão expandidos para 5. Após a criação dos blocos somadores, o circuito será modificado e então ter-se-á um subtrator de 5 bits. Subtrator esse que será feito munindo-se de um carry in e portas XOR, caracterizando, portanto, o Complemento de 2. Com o bloco somador/subtrator pronto, utilizar-se-á um contador síncrono de flip- flops “T” a fim de executar a seleção dos dígitos de entrada. Unindo o bloco somador/subtrator com o seletor, é possível gerar um primeiro circuito compactado (em caixa). Por fim, desejar-se-á mostrar o resultado em dois displays de 7 segmentos. Dessa maneira, serão construídas tabelas verdade com cinco entradas e sete saídas para os segmentos dos displays. Ainda, para fins de organização e didática, serão inseridos displays para mostrar os dígitos selecionados como entrada ao passo em que são escolhidos. 2 2 OBJETIVOS Tem-se como objetivo planejar, desenvolver e implementar o(s) circuito(s) necessário(s) para o funcionamento de uma calculadora digital que execute a soma e a subtração de números de um dígito, podendo gerar resultados de dois dígitos. 1.2.1 Objetivo geral Em âmbito geral, visa-se a otimização do desenvolvimento e, consequentemente, do resultado final do projeto. Bem como, adquirir conhecimentos e habilidades importantes para o entendimento de lógica digital através da construção dos circuitos e do planejamento/execução do projeto. Para que o circuito funcione da melhor maneira possível, necessita-se alcançar metas para aperfeiçoar cada etapa da elaboração do trabalho. Desde o princípio, deve-se observar cada detalhe e executar cada passo com bastante atenção e cuidado. 1.2.2 Objetivos específicos Busca-se aprimorar, planejar e executar corretamente as seguintes etapas: Conhecimentos de circuitos lógicos; Conceitos de aritmética binária; Construção de tabelas verdade; Extração de equações; Circuito Somador/Subtrator; Seletores e contadores; Displays de 7 segmentos; Compactação de circuitos; Simulação em software; 3 3 REVISÃO DA LITERATURA De acordo com os autores Francisco Gabriel Capuano e Ivan V Idoeta, no livro Elementos de Eletrônica Digital, um dos capítulos importantes da Eletrônica Digital é o que trata dos circuitos combinacionais. É através do estudo destes que poderemos compreender o funcionamento de circuitos, tais como: somadores, subtratores, circuitos que executam prioridades, codificadores, decodificadores e outros muito utilizados na construção de computadores e em vários outros sistemas digitais. O circuito combinacional é aquele em que a saída depende única e exclusivamente das combinações entre as variáveis de entrada. Para construirmos estes circuitos, necessitamos de suas expressões características que são obtidas através das tabelas verdades. 4 4 METODOLOGIA 4.1 Ferramentas utilizadas Utilizou-se o software Logisim, que é um simulador de lógica que permite a construção de circuitos e os simula usando uma interface gráfica do usuário. Lançado sob a Licença Pública GNU, Logisim é um software livre projetado para ser executado sob o MicrosoftWindows, OS X, e plataformas GNU / Linux. Seu código é inteiramente em Java usando a biblioteca de interface de usuário gráfica [1]. Nos anexos deste relatório, segue o link para acesso e/ou download do programa. 4.2 Desenvolvimento 4.3.1 Conceitos Utilizados Adição Binária Adição Binária é a operação mais simples de Circuitos Aritméticos. É executada da mesma forma que a decimal, inclusive no "Vai-Um" (Carry Out, de saída, e Carry In, de entrada) como pode ser entendida no exemplo dado abaixo. Quando somam-se dois números binários começa-se pela coluna menos significativa. Exemplo: 0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 0 e "vai" 1 5 Meio Somador O circuito combinacional que executa 2 bits é denominado de “Meio Somador”. O circuito Meio Somador consiste em 2 entradas e 2 saídas. Podemos designar as 2 entradas pelos 2 bits a serem de entrada que serão somados e as 2 saídas que são a Soma. Abaixo tem-se a tabela verdade de um Circuito Meio Somador: Tabela 1 - Tabela Verdade de um Meio Somador A B S C0 (Carry Out) 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 O circuito Meio Somador tem este nome porque ele não leva em consideração os resultados de somas menos significativas. Para casos em que a entrada menos significativa, denominada carry seja considerada, usa-se a denominação de circuitos de “Somador Completo”. Somador Completo Esses circuitos executam a soma dos 2 bits levando em consideração as entradas menos significativas de bit de carry. Este somador tem as mesmas saídas do Meio Somador, são elas a Soma e o Carry Out. O Somador Completo como citado acima possui Carry In. Ele é utilizado para somar números de pelo menos 2 casas. Isso é possível cascateando um Meio- Somador com Somadores Completos. 6 Tabela 2 - Tabela Verdade de um Circuito Somador Completo A B C (VEM/CARRY IN) S VAI (CARRY OUT) 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Para a construção deste projeto, obviamente o mais viável será o uso de um somador completo. Através da tabela verdade, fez-se então a construção das equações correspondentes. Optou-se por soma de produtos e utilizou-se o auxílio do mapa de Karnaugh. As equações obtidas são: S = ̅ ̅ ̅ ̅ ̅ ̅ VAI = BC+AC+AB E o circuito correspondente: 7 Figura 1 - Circuito Lógico de um Somador Completo de 2 Bits 4.3.2 Somador de 5 bits Como o projeto trata de uma calculadora de dois dígitos, conclui-se que o valor máximo possível em cada dígito é 9 (decimal) ou 1001 (binário), então pressupõe-se que o circuito deve trabalhar com 4 bits. Porém, o valor máximo possível resultante da operação entre os dígitos é 18 (decimal) ou 10010 (binário), que é obtido somando-se os máximos 8 possíveis para cada dígito (9+9), logo se deve trabalhar com 5 bits e não 4. Para a construção do somador de 5 bits, utilizou-se o somador completo de 1 bit. Primeiramente encapsulou-se o atual circuito em uma caixa (bloco). Figura 2 - Representação da caixa que contém o circuito somador completo Criaram-se mais 4 caixas, totalizando 5, que serão as responsáveis pelas operações dos 5 bits. As saídas “S” foram conectadas a pontas de prova. A primeira entrada “C”, também chamada de entrada “VEM” ou “CARRY IN”, foi aterrada, transmitindo dessa forma, sinal 0, o que significa que não há um primeiro carry in, ou “vem um”, o que é de se esperar em uma operação de soma. As quatro primeiras entradas “A” e “B” foram conectadas a pinos e as últimas aterradas, relembrando que os dígitos de entrada possuem apenas 4 bits, a operação entre eles é que poderá resultar em 5 bits. A primeira saída “VAI” foi conectada à segunda entrada “C” ou “VEM”. Esta lógica foi mantida para os outros somadores, resultando desconectada apenas a última saída VAI. 9 Figura 3 - Circuito Somador de 4 bits 4.3.2 Subtrator de 5 bits Para realizar uma operação de subtração, pode-se utilizar o complemento de 2 no segundo dígito e então realizar uma soma normalmente. Sabe-se que o complemento de 2 é o equivalente a inverter todos os bits do termo (complemento de 1) e então somar 1 a esse valor. Exemplo: 3 – 1 => 3 + (-1) = 210 Complementando o número 0001: Complemento de 1: 1110 Complemento de 2: 1110 + 1 1111 00011 – 00001 => 0011 + 1111 = 1000102 Como o último “vai” não está conectado a nenhuma ponta de prova, resta: 000102 = 210 10 Para construir o complemento de dois no circuito, adicionou-se um pino “m” na entrada “C” ou “VEM” do primeiro somador, que antes estava aterrado. Dessa forma, quando setado para “0”, nada muda, permanece a soma, quando setado para “1” tem-se um primeiro “carry in”, o que caracteriza uma das condições para um complemento de 2. A última condição a ser satisfeita é a inversão de todos os bits, para isso, usam-se portas XOR. Figura 4 - Representação da Porta Lógica XOR Tabela 3 - Tabela Verdade da Porta XOR A B S 0 0 0 0 1 1 1 0 1 1 1 0 Uma característica importante da porta lógica XOR é o fato de ela ter como saída a entrada “B” invertida, toda vez que o primeiro dos bits de entrada (no caso entrada “A”) for “1” e permanecer intacta quando esta for “0”. Dessa forma, pode-se usar o pino “m” que foi adicionado à entrada “C” ou “VEM” como seletor de operação, basta colocá-lo no papel de entrada “A”, pois quando estiver em “0”, nada se altera, realiza-se a soma normalmente, quando estiver em “1”, além de somar o carry in também permitirá que as portas XOR realizem a inversão dos bits, satisfazendo as duas condições para complemento de 2 e portanto, permitindo a subtração. 11 Figura 5- Circuito Somador/Subtrator 4.3.3 Seleção de dígitos de entrada Na escolha dos dígitos a serem operados optou-se por utilizar um contador, construiu- se, portanto, um contador síncrono de flip-flops “T” que conta apenas até 9 . Para limitar a contagem fez-se a detecção de bits “1” nas posições Q1 e Q3 ou Q2 e Q3 (através de portas lógicas and), pois o máximo desejado é 10012 (910), para tal utilizaram- se as entradas clear. 12 Figura 6 - Contador Síncrono Limitado até 9 4.3.4 Bloco Seletor/Operador (Seletor de dígitos unido ao Somador/Subtrator) Na posse dos circuitos básicos para a construção da calculadora, pode-se montar um primeiro circuito que compacte todos os obtidos até então. 13 Figura 7 - Circuito compactado: Seletor unido ao Somador/Subtrator 4.3.5 Mostradores de Sete Segmentos (Displays) O resultado das operações será mostrado em dois displays de 7 segmentos, pois o valor máximo possível exige duas casas (1810), assim como um valor negativo também necessita do sinal (-5, por exemplo). Decidiu-se por mostrar também os dígitos ao passo em que são escolhidos. Tratando primeiramente apenas do segundo display, montou-se a tabela verdade, considerando a construção dos possíveis números a serem mostrados e quais segmentos deveriam estar setados para “1” ou para “0”. 14 Exemplo: Para formar o número 810, todos os segmentos “a”, “b”, “c”, “d”, “e”, “f” e “g” devem estar ativos, isto é, com sinal alto, ou “1”. Já para formar o número zero, excetuando-se o segmento “g”, todos os outros devem estar ativos. Figura 8 - Display 7 Segmentos5 A tabela verdade resultante do mapeamento de todas as representaçõesdos números é a seguinte: 15 Representação Decimal Representação Binária Segmentos S4 ( S3 S2 S1 S0 a b c d e f g 0 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 2 0 0 0 1 0 1 1 0 1 1 0 1 3 0 0 0 1 1 1 1 1 1 0 0 1 4 0 0 1 0 0 0 1 1 0 0 1 1 5 0 0 1 0 1 1 0 1 1 0 1 1 6 0 0 1 1 0 1 0 1 1 1 1 1 7 0 0 1 1 1 1 1 1 0 0 0 0 8 0 1 0 0 0 1 1 1 1 1 1 1 9 0 1 0 0 1 1 1 1 0 1 1 1 10 0 1 0 1 0 1 1 1 1 1 1 0 11 0 1 0 1 1 0 1 1 0 0 0 0 12 0 1 1 0 0 1 1 0 1 1 0 1 13 0 1 1 0 1 1 1 1 1 0 0 1 14 0 1 1 1 0 0 1 1 0 0 1 1 15 0 1 1 1 1 1 0 1 1 0 1 1 16 1 0 0 0 0 1 0 1 1 1 1 1 17 1 0 0 0 1’ 1 1 1 0 0 0 0 18 1 0 0 1 0 1 1 1 1 1 1 1 19 ao 22 Não importa 23 (-9) 1 0 1 1 1 1 1 1 0 1 1 1 24 (-8) 1 1 0 0 0 1 1 1 1 1 1 1 25 (-7) 1 1 0 0 1 1 1 1 0 0 0 0 26 (-6) 1 1 0 1 0 1 0 1 1 1 1 1 27 (-5) 1 1 0 1 1 1 0 1 1 0 1 1 28 (-4) 1 1 1 0 0 0 1 1 0 0 1 1 29 (-3) 1 1 1 0 1 1 1 1 1 0 0 1 30 (-2) 1 1 1 1 0 1 1 0 1 1 0 1 31 (-1) 1 1 1 1 1 0 1 1 0 0 0 0 16 Pode-se observar que dos números 1910 ao 2210 a representação não importa, visto que o número máximo possível de ser obtido é 18 (9+9). A tabela, porém, continua a partir do 2310 pois a representação deste número em binário é 101112, onde considerando-se o sinal, tem-se -9, que é o valor mínimo possível de ser obtido (0-9). Extraindo as equações e construindo o circuito percebe-se que o mesmo deverá ser extenso, portanto será mostrado em partes através das figuras. Figura 9 - Circuito Lógico que representa os segmentos "a" e "b" 17 Figura 10 - Circuito Lógico que representa os segmentos "c" e "d" 18 Figura 11 - Circuito Lógico que representa os segmentos "e" e "f" 19 Figura 12 - Circuito Lógico que representa o segmento "g" A união de todos estes circuitos apresentados representa o circuito único responsável pela atuação do segundo display. O primeiro display será responsável por mostrar os valores “0”, “’1” ou o símbolo “-“. Mostrará “0” quando o segundo display estiver entre 0 e 9, “1” quando o segundo estiver entre 10 e 18 e “-“ quando tratar-se de um valor negativo. Dessa forma, a tabela verdade é: 20 Representação Decimal Representação Binária Segmentos S4 S3 S2 S1 S0 a b c d e f G 0 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 0 1 1 1 1 1 1 1 0 2 0 0 0 1 0 1 1 1 1 1 1 0 3 0 0 0 1 1 1 1 1 1 1 1 0 4 0 0 1 0 0 1 1 1 1 1 1 0 5 0 0 1 0 1 1 1 1 1 1 1 0 6 0 0 1 1 0 1 1 1 1 1 1 0 7 0 0 1 1 1 1 1 1 1 1 1 0 8 0 1 0 0 0 1 1 1 1 1 1 0 9 0 1 0 0 1 1 1 1 1 1 1 0 10 0 1 0 1 0 0 1 1 0 0 0 0 11 0 1 0 1 1 0 1 1 0 0 0 0 12 0 1 1 0 0 0 1 1 0 0 0 0 13 0 1 1 0 1 0 1 1 0 0 0 0 14 0 1 1 1 0 0 1 1 0 0 0 0 15 0 1 1 1 1 0 1 1 0 0 0 0 16 1 0 0 0 0 0 1 1 0 0 0 0 17 1 0 0 0 1’ 0 1 1 0 0 0 0 18 1 0 0 1 0 0 1 1 0 0 0 0 19 ao 22 Não importa 23 (-9) 1 0 1 1 1 0 0 0 0 0 0 1 24 (-8) 1 1 0 0 0 0 0 0 0 0 0 1 25 (-7) 1 1 0 0 1 0 0 0 0 0 0 1 26 (-6) 1 1 0 1 0 0 0 0 0 0 0 1 27 (-5) 1 1 0 1 1 0 0 0 0 0 0 1 28 (-4) 1 1 1 0 0 0 0 0 0 0 0 1 29 (-3) 1 1 1 0 1 0 0 0 0 0 0 1 30 (-2) 1 1 1 1 0 0 0 0 0 0 0 1 31 (-1) 1 1 1 1 1 0 0 0 0 0 0 1 21 Extraindo as equações, temos então o circuto: Figura 13 - Circuito Lógico do Primeiro Display 22 4.3.6 Bloco Final (Bloco Seletor/Operador Unido aos Displays) Para a construção do boco final (circuito com todos os outros encapsulados em si), utilizou-se o Bloco Seletor/Operador e nas saídas resultantes das operações deste (situadas no centro), acoplaram-se os blocos de displays (primeiro e segundo). Os Blocos Segundo Display situados na extrema direita e extrema esquerda são responsáveis por mostrar os dígitos A e B de entrada enquanto são escolhidos. Figura 14 - Circuito Lógico do Bloco Final 23 4.3.7 Montagem Final Com o circuito Bloco Final podem-se fazer as últimas conexões para que a calculadora atue. Como entradas A e B, foram acoplados botões, que darão um pulso toda vez que apertados, fazendo com que então o contador trabalhe e o display mostre o que está sendo selecionado. O pino “m” atua como seletor de operação, quando em “0” a operação escolhida é de soma, quando em “1” subtração. O resultado é mostrado concomitantemente. Figura 15 - Representação Final da Calculadora Digital 24 5 RESULTADOS Como resultado principal e sólido tem-se a calculadora pronta para uso. Como resultados indiretos restam as habilidades adquiridas, o conhecimento agregado e o estudo aplicado no desenvolvimento do projeto. Faz-se visível uma evolução nas competências que dizem respeito a circuitos digitais por parte de ambas as alunas. 25 6 DISCUSSÃO Durante todo o processo de desenvolvimento foram necessários vários ajustes, consertos de pequenas falhas e por vezes a reconstrução, o que permitiu que se entendesse o funcionamento da calculadora de modo aprofundado. Por exemplo, qualquer erro nas tabelas verdades desencadeava uma sequência de erros, desde a montagem do circuito até os mostradores de resultados (displays). Assim, a cada etapa são observados e discutidos os detalhes do projeto para que não sejam cometidos erros. Enfim, foi possível notar a aplicação dos conceitos estudados e comprovar sua veracidade através da implementação. 26 7 CONCLUSÕES Estudou-se diversas maneiras de realizar projeto foi desenvolvido e executado com pleno sucesso, os objetivos iniciais foram todos alcançados no tempo proposto. Aliando os conhecimentos obtidos em aula juntamente com uma sequência de práticas e simulações no software Logisim foi possível montar cada etapa necessária para o funcionamento da calculadora. Após descobrir a lógica do trabalho proposto, bastou usar artifícios de aritmética digital para aperfeiçoar o circuito e obter resultados que superaram expectativas. 27 REFERÊNCIAS [1] Logisim - Wikipedia, the free encyclopedia. Disponível em <http://en.wikipedia.org/wiki/Logisim> Acesso em: 26 de maio de 2015. [2] CAPUANO, F. G.; IDOETA, I. V.; Elementos de Eletrônica Digital. São Paulo: Érica. 28 ANEXOS Link para acesso e/ou download do software Logisim http://www.cburch.com/logisim/pt/download.html
Compartilhar