Sistemas Digitais

Propaganda
Extraído da monografia:
Projeto de um Editor Gráfico Para Sistemas Digitais à Nível de Portas
Lógicas
de MARGRIT RENI KRUG
São Leopoldo, Novembro 1997
Sistemas Digitais - Introdução
Este capítulo tem o objetivo de, resumidamente, introduzir e identificar os principais
aspectos da eletrônica digital, os quais atingem diretamente a área de sistemas digitais.
O estudo de sistemas digitais torna-se muito importante devido ao fato de que todas as
novas tecnologias estão relacionadas à eletrônica, entre elas computadores e seus
periféricos. Este estudo torna-se muito importante, pois cada vez mais a humanidade está
dependente dos componentes eletrônicos, sejam eles analógicos ou digitais.
Um sistema eletrônico é resultado da interação entre resistores, capacitores, diodos,
transistores, os quais objetivam a execução de uma determinada tarefa. Estes
componentes serão estudados neste capítulo.
Como exemplo de um componente analógico tem-se: amplificadores de som, receptores
de rádio, microfones, entre outros. Esse tipo de componente possui um sinal analógico,
que se caracteriza por apresentar uma forma de onda que possui variação contínua ao
longo do tempo, o que pode ser observado com o osciloscópio, onde existem variações
relativamente rápidas, mas de forma contínua, ou seja sem saltos bruscos, uma variação
contínua no tempo.
O que diferencia o sinal digital do analógico é a forma com que a onda gerada varia, sua
variação se dá por saltos descontínuos. Ele também forma um determinado número de
tensão, onde trabalha apenas com dois valores, um muito próximo do 0 Volts e outro em
5 Volts; representados respectivamente por 0 e 1, ou seja, possui dois estados: ligado ou
desligado, formando com isso uma onda chamada quadrada, na qual tem-se a subida em 1
e a descida em zero. Por esta razão pode-se dizer que os circuitos digitais operam com
base no processo de tomada de decisões lógicas, onde assume-se que um dos valores é
verdadeiro e o outro falso.
Figura 2.1 - Diferença na forma da onda, de um sinal digital e de um sinal analógico
A tendência é utilizar cada vez mais circuitos digitais, também conhecidos por circuitos
lógicos, pela característica de apresentarem apenas dois valores possíveis para seu estado,
verdadeiro ou falso, pela sua simplicidade e a larga tolerância dos componentes dos
circuitos integrados, principalmente resistências e transistores necessários para as
operações lógicas, além da facilidade e versatilidade de interligação.
Um circuito integrado, também conhecido por chip, é um invólucro com vários
componentes interligados, ou seja, é um conjunto de componentes interligados em um
único elemento, os quais possuem uma dimensão reduzida. Entre os componentes que
compoem o circuito integrado tem-se: transistores, resistores, entre outros elementos
eletrônicos. Este invólucro é chamado de encapsulamento, o qual fica, geralmente, sobre
uma pastilha de cristal de silício chamada de circuito impresso.
Figura 2.2 - Exemplo de um chip
O encapsulamento refere-se a um conjunto de elementos que se encontram em um
ambiente comum, como se fosse uma embalagem com vários objetos dentro.
Figura 2.3 - Itens encapsulados
Um circuito integrado fornece a possibilidade de ter, em um único processo de
fabricação, a montagem de muitos componentes interligados. E a interligação de
componentes de uma família possibilita o projeto de circuitos digitais.
Os circuitos integrados estão divididos em duas classes: os circuitos bipolares e os MOS
[LOU 96]. A diferença entre eles está relacionada ao tipo de transistor utilizado na sua
composição. A fabricação de um circuito integrado do tipo bipolar utiliza transistores
bipolares e os MOS, transistores MOS (Metal-Oxide-Semiconductor).
Os circuitos MOS são mais simples, pois possuem maior densidade e baixa potência de
consumo, por isso são os mais utilizados na fabricação de circuitos comerciais, apesar de
resultarem em circuitos mais lentos se comparados com os bipolares. Por ser mais lento
resulta em um atraso de propagação (delay).
O circuito integrado pode ser soldado diretamente na placa de circuito impresso ou fixado
em um soquete, o qual é o mais aconselhado, pelo fato do circuito integrado poder ser
utilizado novamente e, também, por não correr o risco de ser danificado pelo calor da
solda.
Figura 2. 4 - Exemplo de um circuito integrado em um circuito impresso
As entradas e saídas nos sistemas digitais são representadas por sinais que correspondem
a grandezas físicas elétricas, principalmente tensão [MEL 93].
Tensão é um elemento que conduz a carga elétrica, através de um condutor, ele força a
passagem da corrente elétrica através do meio.
A utilização de dois níveis de tensão, 0 e 5 Volts, faz com que se trabalhe com uma
grande imunidade ao ruído, pois em um sinal digital se existir ruído em alguma entrada,
este não afetará o sinal de saída, o que não ocorre com os sinais analógicos, onde é
impossível retirar o ruído do sinal. Por ruído entende-se qualquer interferência externa
que ocasiona na alteração da corrente, ou seja, ele interfere de tal maneira que altera a
forma da saída do sinal. Além destas características, tem-se as seguintes vantagens, que
tornam a eletrônica digital cada vez mais utilizada na confecção de componentes
eletrônicos:
o
o
o
o
o
o
é mais fácil construir um sistema que trabalha apenas com dois valores, se
este for comparado a um sistema que trabalha com dez valores diferentes,
pois se o mesmo fosse utilizar algarismos de 0 a 9 teria de dispor de 10
níveis de tensão, enquanto na base 2 pode-se manipular apenas com a
presença ou a ausência de tensão;
possibilita um estabelecimento prévio de precisão;
elimina a possibilidade de erros por confusão de escalas;
são velozes;
permite a detecção e eliminação de erros de transmissão ou recepção e,
pelo fato da lógica humana ser binária, ou seja, trabalha com falso ou
verdadeiro, sim ou não, ligado ou desligado.
Por definição circuitos digitais, ou circuitos lógicos são combinações de portas lógicas
interligadas [SAR 95]. As portas lógicas, por sua vez, podem compor módulos, e estes
constituir outros módulos, sucessivamente até chegar ao circuito lógico final.
Esquematicamente, a representação de um circuito digital pode ser feita como um bloco
com entradas e saídas, onde os valores das saídas dependem de processos executados
sobre os valores das entradas, no caso de circuitos combinacionais.
Figura 2.5 - Representação esquemática de um circuito digital
Os circuitos lógicos são divididos em duas classes: combinatórios e seqüenciais [SAR
95].
Os circuitos combinatórios são aqueles cujos valores das saídas, num certo instante,
dependem apenas dos valores atuais das entradas. Enquanto os circuitos seqüenciais
dependem tanto do valor das entradas quanto de valores passados das entradas, como se o
circuito tivesse uma memória interna para guardar estes valores.
2.2 Osciloscópio
O osciloscópio é uma aparelho utilizado para observar as ondas feitas por oscilações de
um sinal de alta ou baixa freqüência . Este instrumento produz gráficos para demonstrar
as alterações elétricas em um determinado intervalo de tempo.
Os fabricantes de componentes eletrônicos fornecem manuais que detalham o
funcionamento de seus produtos e através das tabelas contidas neste material é que se
pode verificar se uma determinada placa está funcionando adequadamente, após injetar os
valores especificados pelo fabricante, nas entradas.
2.3 Resistor
A função de um resistor é diminuir a intensidade da corrente elétrica em um circuito ou
então para fazer cair a tensão a um valor mais conveniente, pois se a corrente elétrica não
for controlada pode provocar uma conversão da energia em calor, que ocasiona o curtocircuito, resultado da produção descontrolada de calor.
Os resistores fazem parte de um conjunto de componentes denominados "passivos" [LOU
96], pelo motivo de não amplificarem e nem gerarem sinais.
A quantidade de resistência que um resistor oferece à corrente elétrica é medida em
Ohms (Ω ) e pode variar de 0,1 até 22 000 000 Ohms [LOU 96].
Figura 2.6 - Representação física de um resistor
Em um circuito o resistor é representado por um R, como mostra a figura abaixo.
Figura 2.7 - Forma de representar um resistor em um circuito
2.4 Diodo
Os diodos fazem parte de um grupo de componentes denominados "ativos" [LOU 96],
nos quais se encontram os materiais semicondutores. Esses materiais possuem a
capacidade de conduzir corrente elétrica com uma certa facilidade, situam-se entre os
condutores, como os metais e os isolantes, que são aqueles que não conduzem corrente,
entre eles estão o plástico, a borracha e a madeira.
Os principais materiais semicondutores são: germânio, silício, selênio e gálio, porém os
dois primeiros são os mais utilizados.
O diodo de germânio é utilizado quando tem-se correntes muito fracas, por esta razão é
utilizado na detecção de sinais de rádio. O germânio é um elemento químico, que se
caracteriza por não se dissolver no ácido e seus sais se decomporem na água.
Os diodos de silício, conhecidos como de uso geral, são fabricados para trabalhar com
corrente baixa. São usados em circuitos lógicos, alvo deste estudo.
Figura 2.8 - Classificação dos materiais quanto a condutividade elétrica
O símbolo utilizado para representar um diodo, em um circuito é o de uma seta
apontando para o lado em que ocorre a condução da corrente, como pode ser observado
na figura 2.9.
Figura 2.9 - Símbolo utilizado para representar um diodo
Ânodo é o polo positivo de um dispositivo emissor de energia, por exemplo uma bateria.
E o cátodo é o polo negativo deste emissor.
2.5 Diodo Emissor de Luz (led)
O diodo emissor de luz, conhecido como led, é produzido com um material semicondutor
especial. Difere dos diodos de silício e de germânio, pois quando polarizados
corretamente emitem luz, por isso são utilizados na execução de testes em circuitos
eletrônicos. Quando a luz é emitida significa que o circuito está funcionando
adequadamente.
A aparência de um led se aproxima muito com a de uma lâmpada. O que os diferencia é a
forma como a corrente circula. Em uma lâmpada comum a corrente circula sobre um
filamento de metal, que se incendeia e fica encandecente enquanto nos leds a corrente
circula em qualquer sentido.
Figura 2.10 - Lâmpada comum
Como exemplo de utilização de leds, tem-se os painéis luminosos utilizados para
publicidade, onde luzes se acendem para mostrar as imagens, esses são compostos por
um número bastante elevado de leds, que se iluminam ou apagam conforme os comandos
lógicos utilizados.
2.6 Display
Os displays são utilizados para visualizar uma informação digital, também serve de apoio
aos testes de circuitos, como os leds.
Eles são construídos com cristais líquidos, formados por diodos luminescentes ou
compostos por leds. Seu aspecto pode ser visto no visor de uma calculadora eletrônica.
Cada segmento, no caso de displays compostos por leds, é um led que acende com uma
tensão mínima, normalmente de 1,6 volts, e precisa ter um resistor limitador de corrente.
Sem o resistor a corrente não tem limite e pode queimar tanto o led como o integrado,
que lhe fornece os estímulos.
Para formar o número ou letra, necessita-se de sete segmentos, como pode ser observado
na figura 2.11, estes segmentos podem ser de dois tipos: ânodo comum ou cátodo comum
[LOU 96].
Figura 2.11 - Display com 7 segmentos
2.7 Transistor
O transistor, assim como o diodo é um dispositivo semicondutor, porém mais complexo.
Tem como funções amplificar e produzir sinais, controlar diversos dispositivos como
chave eletrônica, entre outros, estes possuem uma larga utilização nos projetos
eletrônicos.
A palavra transistor vem de "transference resistor" um dispositivo idealizado por
Bardeen, Brattain e Shockely nos Estados Unidos, nos laboratórios da Bell Thelephone,
em junho de 1948.
A capacidade do transistor de amplificar sinais elétricos permitiu que em pouco tempo
este dispositivo, muito menor e consumindo muito menos energia viesse a substituir as
antigas válvulas, nas maiorias das aplicações eletrônicas.
A estrutura de um transistor é composta por três regiões, semicondutoras, chamadas:
emissor, base e coletor. Por esta razão possui as três pernas, como pode ser observado na
figura 2.12.
Figura 2.12 - Exemplo de transistores
Quando não flui corrente pela base do transistor diz-se que ele está no CORTE, porém
quando existe corrente no seu coletor, ou seja carga para que funcione, diz-se que ele está
no estado de SATURAÇÃO.
A aplicação mais comum para um transistor é de chave, a qual liga ou desliga uma carga
que está vinculada ao seu coletor.
2.8 Clock
O clock mede cuidadosamente o tempo e transmite sinais, o qual possui a função de
manter o ritmo de uma operação. Como analogia, pode-se dizer que o clock trabalha
como a marcha de um grupo de soldados, de forma sincronizada, sem sair do compasso.
Figura 2.13 - Marcha de soldados e sua correspondência com um clock
O sinal de clock, também conhecido como "onda quadrada" apresenta borda ascendente,
quando está subindo e borda descendente, quando está descendo, respectivamente com os
valores 1 e 0.
Quanto maior a freqüência do sinal, mais rápido será processada a informação digital,
como a marcha dos soldados, quanto mais rápido marcharem mais depressa chegarão ao
seu destino, mas sempre mantendo o mesmo compasso.
2.9 Capacitor
Os capacitores são componentes eletrônicos formados por um conjunto de placas de
metal e entre elas existe um material isolante. O material isolante é que dá nome ao
capacitor, por exemplo, se o material utilizado for a mica, o capacitor será chamado de
capacitor de mica.
Este elemento possui a capacidade de armazenar cargas elétricas, a qual chama-se
capacitância. Além da capacitância ele isola a tensão.
2.10 Sistema de Numeração
A palavra digital é originária do latim: dígitos, que significa dedos, já que os principais
sistemas de numeração se baseiam totalmente nos dedos das mãos humanas. Desde muito
cedo os homens utilizavam os dedos como referência para contar objetos.
Os romanos desenvolveram seu sistema de numeração, os números romanos, também
baseados nos dedos das mãos humanas, através de uma combinação de dedos e uma
simbologia própria para representar os números.
O sistema decimal é o mais utilizado para dar valores às mercadorias (preços), idades às
pessoas ou a quantidade de dias a um ano. Ele baseia-se totalmente no fato do homem
possuir dez dedos.
Figura 2.14 - Representação do sistema decimal de numeração
Os números utilizados pelo sistema decimal variam de 0 a 9. Os valores superiores a estes
são compostos por uma combinação entre eles, isto é, são atribuídos pesos aos mesmos
algarismos. Estes pesos sempre são uma potência de 10 ( 1, 1 * 10 = 10, 10 * 10 = 100).
No sistema decimal, são utilizados os número para indicar quantas "mãos cheias" e/ou
quantos "dedos" significam o valor, por exemplo quando a referência é o número 10, este
indica que se possui duas mãos cheias, já o número 0 indica que não se está utilizando
nenhum dedo para representá-lo, quando se tem o número 25 este representa a utilização
de cinco mãos cheias.
Figura 2.15 - Pesos dos algarismos decimais
O sistema binário representa a ausência ou a presença de algo, utilizando para isso os
valores 0 e 1, respectivamente. Estes caracteres recebem o nome de BIT, que corresponde
a BInary digiT (digito binário).
A representação de qualquer número pode ser feita pelo sistema de numeração binária,
simplesmente por uma decomposição em fatores múltiplos de 2.
Os circuitos digitais processam informações representadas no sistema binário, por esta
razão são mais simples, se comparados com os circuitos analógicos, pois realizam com
maior rapidez as operações lógicas e aritméticas e fornecem resultados com maior
resolução e precisão. Por precisão deve-se entender a proximidade do valor real e por
resolução a quantidade de caracteres utilizados para esta representação.
O sistema octal, usa os caracteres 0, 1, 2, 3, 4, 5, 6 e 7. E o hexadecimal utiliza os dez
dígitos do sistema decimal e mais as letras A, B, C, D, E e F, que correspondem
respectivamente, ao decimais: 10, 11, 12, 13, 14 e 15, pois este utiliza 16 valores para
representação.
2. 11 Portas Lógicas
2.11.1 Introdução
Constituem os módulos básicos dos circuitos digitais e têm como objetivo a
implementação de funções lógicas, que são operações da álgebra booleana, aplicadas a
uma ou mais variáveis lógicas [SAR 95].
As portas lógicas são resultados da aplicação de energia de 5 Volts sobre um metal que se
dilata o suficiente para fazer o contato com a outra extremidade. Esta mudança de estado
físico leva um determinado tempo, o qual é chamado de atraso de propagação, ou seja, é
o tempo que o metal leva para voltar ao seu estado natural.
As portas lógicas são realizações físicas das operações lógicas AND, OR, XOR e NOT da
álgebra booleana, implementadas por circuitos eletrônicos, ou seja, uma porta lógica é
um circuito eletrônico com a função de produzir um sinal a partir de valores da entrada.
As funções lógicas básicas existentes são: AND, OR e NOT. Porém existem as
derivações destas: NAND, NOR, XOR e XNOR.
Figura 2.16 - Símbolos para representar portas lógicas
Os símbolos acima servem para representar as portas lógicas de forma gráfica, facilitando
a vizualização e a simplificação do circuito digital, através da substituíção de um dos
símbolos por seu equivalente.
2.11.2 Porta Lógica AND (E)
O circuito que executa a função básica AND pode possuir várias entradas e os resultados
(saídas) será a resposta da operação AND entre as entradas. Observando as seguintes
regras[SHI 86]:
uma função AND assume valor 1 se, e somente se, todas as variáveis
lógicas de entrada também tiverem o valor 1 e,
o a saída será 0 para qualquer outra combinação de valores de entrada.
o
Conclui-se que a saída será verdadeira (1) somente se todas as variáveis de entrada
também forem verdadeiras.
Nesta função para se realizar um evento é necessário que todas as entradas sejam verdadeiras.
Figura 2.17 - Exemplo da função lógica AND
No exemplo anterior fica bem claro o funcionamento de uma porta lógica AND, pois a
lâmpada só ficará ligada quando as chaves A e B estiverem fechadas, fechando o circuito
necessário para acender a lâmpada.
Um exemplo prático da utilização de portas lógicas AND seria a de um acionamento de
alarme de uma casa ou automóvel, que só dispara quando está armado e quando uma
janela ou porta for aberta.
Situação 1:
Chave do alarme desligada
Porta ou janela fechada
Resultado: alarme não toca
Situação 2:
Chave do alarme desligada
Porta ou janela aberta
Resultado: alarme não toca
Situação 3:
Chave do alarme ligada
Porta ou janela fechada
Resultado: alarme não toca
Situação 4:
Chave do alarme ligada
Porta ou janela aberta
Resultado: alarme toca
A simbologia utilizada para representar uma porta lógica AND está representada na
figura 2.16, também podendo ser representada pela função lógica utilizando o símbolo da
multiplicação (.), em expressões algébricas.
Figura 2.18 - Formas de representar a porta lógica AND
2.2.3 Porta Lógica OR (OU)
O circuito que realiza a operação OR, pode ter várias entradas e o valor da saída será o
resultado da operação OR entre os valores das entradas.
A função OR assume o valor 1, em sua saída, se pelo menos uma de suas variáveis de
entrada possuir valor 1, ou seja, nesta função tem-se uma saída verdadeira se pelo menos
uma entrada for verdadeira.
Figura 2.19 - Exemplo do funcionamanto de uma porta lógica OU
Como analogia vamos utilizar o exemplo da luz interna de um automóvel que acende se
uma das portas dianteiras é aberta, pelo menos na maioria dos modelos de automóveis é
assim. Chamando de porta direira a chave A do exemplo acima e a porta esquerda de
chave B, tem-se:
Situação 1:
Porta esquerda aberta
Porta direita fechada
Resultado: luz acende
Situação 2:
Porta esquerda fechada
Porta direita aberta
Resultado: luz acende
Situação 3:
Porta esquerda aberta
Porta direita aberta
Resultado: luz acende
Situação 4:
Porta esquerda fechada
Porta direita fechada
Resultado: luz apagada.
O símbolo utilizado para representar a função lógica OR nas expressões booleanas é o
sinal + (soma) e sua representação gráfica está reperesentado na figura 2.20.
Figura 2.20 - Formas de representação da porta lógica OR
2.2.5 Porta Lógica NOT (NÃO)
Também conhecida como porta inversora, realiza a operação de negação. Executa a
função lógica de converter o valor de uma função ou variável em seu complemento, valor
inverso, ou seja, o valor da saída de uma função lógica sempre é o valor oposto ao da
entrada.
Várias notações são utilizadas para representar esta operação entre elas: acrescentando
um asterisco (*) antes da variável ou um apóstrofo (‘) a ela, ou a notação mais comum de
uma barra sobre a função ou variável.
Figura 2.21 - Formas de representação da porta lógica NOT
2.2.6 Porta Lógica NAND
A porta lógica NAND (NOT AND) é um circuito que executa o inverso da função AND,
então a saída só será 1 se pelo menos uma das variáveis de entrada assumir o valor 0.
Figura 2.22 - Formas de representar a porta lógica NAND
2.2.7 Porta Lógica NOR
O circuito NOR (NOT OR) é como o nome indica a inversão da porta OR. Onde o OR
resulta em 1 o NOR resulta em uma saída 0 e vice-versa.
Figura 2.23 - Representações da porta lógica NOR
2.2.8 Porta Lógica XOR
O circuito que realiza a operação XOR (OU-EXCLUSIVO) pode ter várias entradas e o
valor da saída é o resultado da operação XOR entre os valores das entradas. Pode-se dizer
que a saída da porta XOR será igual a 1 apenas quando houver um número ímpar de
entradas iguais a 1. Esta porta geralmente é utilizada para fazer comparações [SHI 86].
Figura 2.24 - Formas de representação da porta lógica XOR
2.3 Fan-out
O fan-out é um parâmetro que indica o número máximo de entradas que as portas lógicas
podem assumir [LOU 96], sem provocar uma mudança no nível lógico da saída, ou seja,
é a cargabilidade das entradas . É a medida em quantidade de entradas que podem ser
conectadas a uma porta lógica.
Figura 2.25 - Cargabilidade da porta lógica AND
2. 4 Famílias Lógicas
As famílias lógicas surgiram com o objetivo de aumentar a velocidade e diminuir o
consumo dos dispositivos lógicos.
As principais famílias existentes no mercado são: RTL, DTL, TTL, ECL e CMOS [SAR
95].
A família RTL, significa lógica-resistência-transistor, foi a primeira a ser produzida em
escala comercial. Tem como porta lógica básica a porta NOR.
O DTL, lógica-diodo-transistor, surgiu para suprir as falhas da família RTL. É muito
utilizada, apesar de ser uma tecnologia bastante antiga. É o resultado de uma combinação
lógica de diodos e transistores. A saída tem a característica de não variar com a carga.
Esta família apresenta como dispositivo comum a porta lógica NAND.
O lógica-transistor-transistor, TTL, é uma família que se caracteriza por exigir uma
tensão de 5 Volts. É uma das famílias lógicas mais usada pelos fabricantes de circuitos
integrados, pois possui uma divisão em "sub-famílias", as quais se diferenciam pela
velocidade e consumo de corrente elétrica. A porta lógica básica desta família é a porta
NAND, como na família DTL, por esta razão elas são totalmente compatíveis.
Os transistores empregados nos circuitos TTL são do tipo multi-emissor. Cada emissor
funciona como um diodo, o qual proporciona um isolamento da entrada.
As sub-famílias TTL são: TTL padrão, TTL de baixa potência, TTL de alta velocidade,
TTL Schottky e TTL Schottky de baixa potência. O que as diferencia é velocidade de
operação e o consumo de energia.
As entradas da família lógica TTL são chamadas LO e HI. A entrada LO varia de 0 a 0,8
Volts, correspondendo ao nível lógico 0 e HI tem seus valores entre 2,4 Volts e 5 Voltas,
sendo representado por 1.
A família ECL, lógica de emissor acoplado, caracteriza-se por apresentar uma alta
velocidade de operação, pois seus transistores nunca trabalham em estado de saturação,
por isso são utilizados em computadores de grande porte e em satélites.
Finalmente, a família lógica CMOS, lógica metal-óxido-semicondutor-complementar, foi
desenvolvido para ser uma alternativa de baixo consumo para a família TTL, porém
possui, geralmente, velocidade menor. Estes dispositivos apresentam certas restrições, ou
deve se tomar alguns cuidados no seu manuseio, principalmente em dias úmidos. Os
chips, originados desta tecnologia, também apresentam sensibilidade à cargas
eletrostáticas e ao ruído. Estes podem modificar os níveis lógicos das entradas, mas
apesar disso possuem uma imunidade ao ruído muito maior do que nos circuitos TTL.
2. 5 Portas Three-state (três
estados)
As portas three-state são circuitos que possuem uma entrada especial denominada input
enable (habilita entradas) ou input desable (desabilita entradas) [SAR 95], ou seja é uma
entrada acionadora.
É uma entrada adicional que controla a saída. Quando está ligada funciona normalmente,
mas quando desligada a saída apresentará alta impedância, como se não tivesse nada
conectado à entrada. Por esta razão é chamada de porta three-state, pois apresenta os três
estados: zero, 1 e impedância.
2.6 Álgebra Booleana
A lógica é a base da eletrônica digital e da informática. Esta surgiu na Grécia antiga com
a contribuição de três filósofos: Sócrates, Platão e Aristóteles [SAR 95] .
Sócrates não deixou nenhum de seus ensinamentos por escrito, mas Platão, seu seguidor,
escreveu vários de seus diálogos, onde desenvolveu sua filosofia abrangendo a ética, a
política e o conhecimento, tendo como princípio o método da investigação.
Aristóteles, baseado nos diálogos escritos por Platão, observou que a linguagem deve ter
uma estrutura lógica, para que leve, necessariamente, a uma verdade.
Pelo método de investigação socrática, se duas verdades são alcançadas individualmente,
ao juntá-las teremos uma única verdade.
Pelos postulados de Aristóteles, temos: se A = B e se B = C, então A = C.
Segundo Aristóteles, se as premissas A = B e B = C forem corretas a conclusão A = C
será obviamente correta. Ao desenvolvimento dessas leis, Aristóteles deu o nome de
lógica.
No século XIX, a teoria de Aristóteles foi sintetizada em forma de álgebra, ganhando o
nome de Álgebra Booleana [SAR 95].
Esta álgebra possui este nome devido ao fato de ter sido desenvolvida pelo filósofo e
matemático George Boole em 1853 "para dar expressão às leis fundamentais do
raciocínio na linguagem simbólica do cálculo".
Em 1938, Claude Shannon, do Instituto de Tecnologia de Massachusets (EUA), adaptou
a álgebra booleana para a análise e descrição de circuitos com relês, em projetos de
comutação telefônica, criando uma simbologia e um método de representação desta
matemática, facilitando seu uso. Essa adaptação passou a ser chamada de Álgebra de
Chaveamento, aceitando como valores possíveis para as variáveis 0 e 1.
A vantagem de se utilizar a álgebra como fundamento é que se pode efetuar, inicialmente
toda a análise matemática do problema lógico antes da construção do circuito digital. Ela
serve como suporte para a construção de um sistema digital.
A álgebra booleana é estruturada sobre quatro operações OU, E, INVERSÃO e OUEXCLUSIVO, as quais já foram estudadas no item portas lógicas.
Uma variável da álgebra booleana só pode assumir os valores 0 ou 1 (falso ou
verdadeiro), assim: se x <> 1 então x = 0 e se x <> 0 então x = 1.
O símbolo x´ ou ⎯ x , representa o componente da INVERSÃO ou NEGAÇÃO como
também é conhecido, a qual é classificada como unária ao invés de ser binária como as
demais, pois trabalha só com um valor:
1. Se x = 0 então ⎯ x = 1;
2. Se x = 1 então ⎯ x = 0.
As operações básicas definidas pela álgebra do chaveamento são: a multiplicação lógica
(AND) e a soma lógica (OU).
No estudo da álgebra booleana, existem algumas identidades que são muito importantes
tanto para o estudo da lógica, como para o estudo dos circuitos digitais.
Por identidade entende-se: relações genéricas abstratas que podem ser entendidas por
qualquer pessoa, em qualquer lugar. Por exemplo " x + x = x" é uma identidade e
expressa que para quaisquer que sejam os valores de x, 0 ou 1, a igualdade sempre será
verdadeira.
É importante ressaltar, que em expressões algébricas a operação AND tem precedência
sobre a operação OR e a negação sobre todas as operações, é claro tendo estas regras
alteradas com a colocação de parênteses na expressão.
2.7 Circuitos Combinatórios ou
Combinacionais
O circuito combinatório é aquele que executa uma expressão booleana através da
interligação de portas lógicas, sendo que as saídas deste circuito dependem única e
exclusivamente dos valores das entradas. E este, constitui parte de um sistema digital, ou
seja um subsistema digital [SAR 95].
Para descrever um circuito combinatório podemos utilizar expressões algébricas, tabelas
ou grafos, onde os nodos representam portas lógicas.
2.7.1 Tabela Verdade
A tabela verdade ou tabela de combinações é uma representação, onde todas
combinações dos valores possíveis das entradas de um circuito são listadas em colunas e
a saída representada em outra coluna, com o valor correspondente a cada combinação.
Este tipo de representação é adequado para circuitos com poucas entradas, devido ao fato
de ter para cada entrada 2 elevado ao número de entradas combinações. Por exemplo para
uma função com três entradas teremos oito combinações.
As etapas para a montagem de uma tabela verdade, são:
- identificação das variáveis lógicas;
- montagem do quadro com todas as situações que
as variáveis lógicas podem assumir;
- montagem de colunas para a quantidade de
membros da expressão e
- preenchimento das colunas com os resultados.
Para facilitar a montagem da tabela verdade, as linhas devem ser colocadas em ordem
crescente, tendo para cada uma delas uma saída correspondente. A montagem das linhas
e colunas segue a ordem, vista no exemplo abaixo.
Para 3 entradas 2², 2¹ e 2º variações de valores da entrada. Como a entrada só pode
assumir os valores 1 e 0, tem-se, na primeira coluna a troca de 4 em 4, na segunda de 2
em 2 e na terceira de 1 em 1 combinações, ficando livre a escolha do valor inicial (0 ou
1), resultando na tabela da figura 2.26.
A
B
C
S
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
Figura 2.26 Tabela Verdade para 3 entradas
Na tabela verdade acima pode-se observar que a sua montagem seguiu o que o parágrafo
anterior sugeriu, ou seja para três entradas a primeira coluna (A) foi preenchida com
quatro zeros consecutivos, a segunda alternando de dois em dois os números zero e um, e
na terceira coluna os valores alternados de um em um.
2.7.2 Expressão Booleana
A representação através de expressões algébricas ou booleanas é a forma mais simples de
representar um projeto de um circuito digital.
Utilizando como exemplo a tabela verdade da figura 2.26 a expressão s = ab + ⎯ cb+ ac,
pode ser uma das expressões para obter os resultados apresentados na tebela verdade.
2.7.2.1 Soma de produtos
A expressão ab + bc é um exemplo de uma "soma de produtos", isso porque a
representação da função AND é um ponto(.), que na matemática indica o produto entre
dois termos, enquanto que o símbolo + representa a função OR, indicando uma soma.
Para realizar as somas é necessario, primeiro, fazer as operações de multiplicação, isso
para cumprir as regras matemáticas.
2.7.2.2 Produto de Somas
O produto de somas ocorre quando é alterado o fluxo natural de uma expressão através
do uso de parênteses, obrigando desta forma a realização antes da soma entre os termos e
após a obtenção deste resultado fazer então, a operação de multiplicação. Por exemplo: s
= (a + b) . (a + c).
2.7.2.3 Dualidade
O termo dualidade tem o significado de contrário, inverso de alguma coisa. Qualquer
expressão apresenta uma expressão "dual" a sua, basta substituir seus valores e
operadores pelos seus "duais" e o resultado da avaliação da expressão será o mesmo, ou
seja se em uma expressão lógica o símbolo da operação OU for substituido pela operação
E e vice-versa, ou então se o dígito 0 for substituído pelo valor 1 e vice-versa, tem-se
uma expressão dual aquela de origem.
Figura 2.27 - Exemplo de dualidade em uma expressão lógica
2.7.3 Mapa de Karnaugh
É uma representação tabular de uma expressão algébrica. É uma maneira de reescrever a
tabela verdade, em formato bidimensional, utilizada para a simplificação de circuitos
digitais, o que os torna mais simples, econômicos e menos sucetíveis a erros. Esta tabela
é montada para facilitar o processo de simplificação das expressões lógicas. Estes mapas
foram desenvolvidos pelo engenheiro Edward W. Veitch em 1952 e aperfeiçoados por
Maurice Karnaugh no mesmo ano, razão pela qual o mapa recebeu este nome.
A simplificação de circuitos eletrônicos é usada para economizar componentes, tornar o
circuito mais rápido, mais simples de fabricar e de manutenir, além de diminuir seu
tamanho.
Este mapa é formado por 2N células, onde N corresponde ao número das entradas da
expressão algébrica, como na tabela verdade, possui tantas células quanto o número de
linhas da tabela.
Pode-se ter situações de don’t care , ou seja situações não definidas, onde se tem uma
incógnita na expressão.
Na construção do mapa de Karnaught, observa-se que os valores das varíaveis devem se
alternar e mudar um a um, quando o valor da variável A mudar de 0 para 1 o valor de B
deve ficar o mesmo e vice-versa, nunca os dois valores mudarão ao mesmo tempo.
Figura 2.28 - Mapa de Karnaugh para quatro variáveis
O mapa de Karnaugh para funções de até 4 entradas é simples e direto. Para 5 ou 6 até é
viável, mas exige uma decomposição em vários mapas, para mais de 6 entradas não é
aconselhável.
Para resolver uma simplificação de expressão booleana utilizando mapa de Karnaugh,
tem-se os seguintes passso:
1. representação da função no mapa;
2. formação de grupos de celas, com o máximo de celas com valor 1, que
sejam adjacentes. Observe que o mapa é circular, portanto pode-se ter nos
extremos um grupo com valor unitário.
3. substituição de cada grupo por sua função booleana correspondente;
4. exclusão de grupos, para realizar esta tarefa deve-se observar se existe
uma única cela unitária que pertença a um grupo, o qual é indispensável, e
5. obtenção da equação algébrica minimizada, ou seja, pela soma de todas as
equações montadas até o passo 4, obtem-se a equação final simplificada.
2.8 Circuitos e Dispositivos
Especiais
Devido ao uso constante e a complexidade das equações booleanas, alguns fabricantes de
componentes eletrônicos desenvolveram circuitos comerciais, conhecidos como circuitos
combinacionais dedicados. Estes circuitos desenvolvem funções específicas, como
multiplexação, demultiplexação, decodificação, somadores, subtratores, codificação e
comparação.
2.8.1 Multiplexador
O multiplexador ou MUX é um circuito combinacional dedicado, que tem a finalidade de
selecionar, através das variáveis de seleção, uma de suas entradas, conectando-a
eletronicamente à sua única saída.
Como se trata de um circuito digital, o número de entradas está lógicamente relacionado
com o número de variáveis de seleção.
Figura 2.29 - Modelo genérico de um MUX
As principais aplicações dos multiplexadores em sistemas digitais são:
- seleção de informações digitais para determinado
circuito;
- seleção de informações digitais para serem
transmitidas a um outro sinal digital;
- serialização de informações de vários bits e,
- implementação de expressões booleanas.
Um exemplo prático para a utilização de um MUX, seria a seleção de canais em um
televisor através de um controle remoto, onde existe diversos canais para selecionar e
apenas um pode ser selecionado, ou seja, tem-se diversas entradas e só se pode obter uma
saída.
Os multiplexadores podem ser associados. Essa necessidade ocorre devido ao fato dos
MUX comerciais terem um número limitado de entradas.
2.8.2 Demultiplexador
O demultiplexador também é conhecido como DEMUX é um circuito combinacional
dedicado que tem a finalidade de selecionar, através das variáveis de seleção, qual de
suas saídas deve receber a informação presente em sua única entrada. Seu funcionamento
é inverso ao MUX.
Figura 2.30 - Modelo genérico de um DEMUX
As aplicações principais de um DEMUX são:
- seleção de circuitos que devem receber uma
determinada informação digital;
- conversão de informação serial em paralela e,
- recepção e demultiplexação de informações de
forma compatível com o sistema de multiplexação.
Um DEMUX de dois canais necessita, assim como o MUX de dois canais, apenas de uma
variável de seleção.O DEMUX de quatro canais necessita de duas variáveis de seleção e
assim sucessivamente, conforme a quantidade de canais.
Figura 2.31 - DEMUX de dois canais
Como ocorre com os multiplexadores, os demultiplexadores comerciais existentes,
possuem poucos sinais de saída, necessitando com isso a associação de vários DEMUX
para atender às necessidades do usuário destes componentes.
2.8.3 Somadores e Subtratores
Os somadores e subtratores são circuitos combinatórios dedicados, que executam,
respectivamente, as operações de adição e subtração no sistema binário.
Estes circuitos fazem parte da ULA (Unidade Lógica Aritmética), a qual esta contida em
calculadoras eletrônicas e em microprocessadores.
A soma no sistema binário é bem simples e possui os seguintes componentes: duas
variáveis a serem somadas, uma variável que conterá o valor da soma e uma variável para
o carry-out, que significa o vai-um de saída.
Figura 2.32 - Exemplo de soma binária
A subtração binária possui os seguintes componentes: minuendo, subtraendo, o resultado
da subtração e um vem-um ou borrow-out.
Figura 2.33 - Subtração binária
2.8.4 Comparador
Os comparadores são utilizados para fazer comparações entre magnitudes de duas
palavras, desde que não apresentem mais de 4 bits cada uma.
Sua função é de comparar item a item, os dígitos mais significativos das palavras,
verificando se estas são iguais. Ele trabalha de forma posicional, primeira letra de ambas
as palavras são comparadas entre si, se são idênticas, então se compara as outras letras,
até que termine a palavra ou encontre alguma letra que se diferencie.
2.8.5 Decodificador
Os decodificadores apresentam N entradas e M saídas, onde não podem ultrapassar 2
elevado na N saídas. Caracterizam-se por terem múltiplas funções, ou seja, cada saída
corresponde a uma função.
Figura 2.34 - Decodificador de 7 segmentos para acionar um display
2.8.6 Codificador
Os codificadores executam funções inversas ao decodificadores, ou seja possuem N
entrada de dados e M saídas, com N muito maior que M, mas no máximo 2 elevado a N
vezes.
Uma aplicação para um codificador é a interface de um teclado com um circuitos digital,
como pode ser observado na figura 2.35, a cada tecla pressionada deve corresponder a um
único valor que a identifique.
Figura 2.35 - Decodificador para acionar teclas de um teclado
2.9 Circuitos Seqüenciais
Este tipo de circuito possui uma memória interna, chamada de estado, a saída depende
tanto dos valores de entrada como do estado. É um circuito que possui realimentação da
saída para a entrada. Neste tipo de circuito deve-se observar que existe um tempo para
que os sinais se propaguem, tempo de atraso, isso devido ao fato das portas lógicas não
terem suas saídas atualizadas no mesmo instante em que suas entradas são definidas.
Figura 2.36 - Diagrama de um circuito seqüencial
Os circuitos seqüenciais, por definição têm memória. Eles memorizam alguma coisa a
respeito da história passada nas suas entradas, o que é lembrado, é armazenado em flipflops ou latchs, os quais são os circuitos seqüenciais mais elementares.
2.9.1 Latch e Flip-Flop
A palavra latch, na gíria americana, significa trava ou fechadura.
Tanto latch como flip-flop são elementos utilizados para armazenamento em circuitos
seqüenciais.
Os flip-flops e latches são estruturas básicas muito utilizadas no projeto lógico, estes
circuitos compõem a unidade básica de armazenamento porque servem para registrar um
bit de informação.É esta capacidade de manter o estado atual é que os fazem os
elementos básicos para o armazenamento em computadores digitais.
A função básica é a de armazenar níveis lógicos temporariamente, funcionando como um
elemento de memória.
Embora os latches e os flip-flops possam ter vários tipos de configurações, todos eles
apresentam duas saídas complementares: Q e Q complementado.
Ambos são classificados quanto à forma como são controlados, seu aspecto dinâmico e
pelo tipo de entrada.
A diferença entre um latch e um flip-flop está na presença de uma entrada adicional,
chamada clock, na estrutura flip-flop. A função do clock é comandar as mudanças do
valor armazenado.
Figura 2.37 - Representação de um flip-flop
Os latches, são classificados como sensíveis à nível, enquanto os flip-flops são sensíveis à
borda.
O latch mais simples é o set-clear, o qual pode ser construído a partir de portas NAND
ou NOR.
Os flip-flops sensíveis à borda formam a base de diversos sistemas digitais síncronos ou
ativados por clock. Um dos primeiros flip-flops ativados por clock surgiu em 1958 através
de Phister [LOU 96]. Ele descreve os tipos: RS (Reset-Set) , D (Delay), T (Trigger ou
Toggle), JK e RST (Reset, Set, Trigger).
2.9.1.1 Latch Set-Clear
O latch Set-Clear é um bloco construtivo [MEL 93]; seus pontos de conexão recebem
rótulos, para diferenciar dos nomes designados pelo projetista que usa o bloco
construtivo. Os pontos de conexão de entrada são rotulados de "S" e "C". As linhas de
sinal alimentando esses pontos são nomeadas pelo projetista. O latch armazena um bit, o
qual está normalmente presente em um ponto de conexão de saída.
Normalmente este tipo de latch armazena um bit de dados, cujo valor é 1 ou 0. Quando o
latch estiver set , este valor é 1 e 0 valor será 0 quando estiver clear.
A especificação de atraso para estes latches são simplesmente o atraso de propagação de
um ponto de entrada para o de saída.
Figura 2.38 - Latch sensível à nível Set-Clear
2.9.1.2 Latch Reset/Set (RS)
Este tipo de latch surgiu para economizar transistores ou válvulas [MEL 93], em um
tempo em que a eletrônica correspondia em valores altos. O custo para desenvolver um
componente eletrônico era bastante elevado, tornando os produtos muito caros e não
muito populares. Mais especificamente na época dos computadores de primeira e segunda
gerações.
Atualmente, é mais utilizado em circuitos digitais genéricos ou como parte de estrutura
de latchs mais complexos.
A saída set coloca o latch no estado 1, ou seja a saída Q valendo 1 e Q complementado
igual a 0, enquanto que a entrada reset coloca o latch no estado 0, isto é a saída Q
valendo 0 e seu complemento igual a 1.
Este tipo de latch pode ser classificado em: assíncronos e síncronos [MEL 93]. Os
assíncronos tem duas entradas reset e set, e é assíncrono porque o tempo necessário para
utilizar as saídas Q e Q complementado, depende apenas do atraso das portas lógicas, que
compõem seu circuito. Já os síncronos apresentam, além das entradas set e reset, outra
entrada cahamada enable, denominada de instante de atualização das saídas Q e Q
complementado.
Figura 2.39 - Latch RS assíncrono
Figura 2.40 - Latch RS síncrono
2.9.1.3 Latch D
O latch RS não consegue evitar que o circuito sofra oscilações, quando ocorre uma troca
de estado, isto é quando R e S trocam de valor, o que não ocorre com os latchs do tipo D.
Neste circuito existe uma memorização do valor da saída quando a entrada enable estiver
com valor 1. Quando a entrada enable tiver com valor 0 a saída memoriza o valor da
entrada D no tempo exatamente anterior à troca da entrada, e este só será alterado quando
a entrada enable assumir nível 1, evitando desta forma as oscilações nas trocas de estado.
O ponto de controle de ativação, neste tipo de latch, é rotulado por G (Gate) dentro do
bloco .
Para o latch de dados (D), o sinal de ativação é frequentemente nomeado ENABLE .
Quando o ponto de controle estiver ativo, o latch está aberto e o valor no ponto de
conexão de entrada passa para o ponto de conexão de saída de dados. Quando o ponto de
controle estiver inativo , o latch de dados mantém seu último valor de saída.
2.9.1.4 Flip-flop Tipo D
O D vem da palavra dados, é o tipo de flip-flop mais utilizado. Possui uma arquitetura
simples com uma entrada D e um CLOCK.
Este flip-flop é resultado de dois latches D ligados de forma sequencial, onde suas
entradas enable são complementares.
No flip-flop tipo D, o que interessa é a transição negativa, e sempre que esta ocorre a
saída é atualizada.
Figura 2.41 - Flip-flop
2.9.1.5 Flip-flop JK
É uma variação do latch RS síncrono, ao qual foi incluída uma nova realimentação das
saídas Q e Q complementado, as portas lógicas de entrada. Neste caso J executa a função
set e K a de reset.
O que diferencia o flip-flop JK do latch RS é quando as entradas J e K forem iguais a 1,
após o sinal de clock a saída tem seu valor alterado.
O flip-flop JK master-slave é formado por dois latches denominados master (mestre) e
slave (escravo), que se comunicam através das portas de entrada e saída. Tem as
seguintes características:
- está livre do problema de oscilação;
- as saídas só se atualizam na decida do pulso do
clock, sendo por isso chamados de sensível à borda
de descida ou transição negativa e;
- para transformá-lo em um flip-flop sensível à
borda de subida ou transição positiva, basta
acrescentar um inversor na entrada de clock.
2.9.1.6 Flip-flop T (Toggle)
Os flip-flops do tipo T são variantes diretas dos flip-flops JK e têm a característica de: se
T = 0, então J = 0 e K = 0, com isso as saídas do flip-flop não se alteram e se T = 1, então
J = 1 e K = 1, portanto as saídas futuras serão o complemento das atuais.
2.10 Registradores
Os registradores são subsistemas seqüenciais formados basicamente por flip-flops com
um clock comum, os quais têm a função de armazenar e manipular dados, por um tempo
indeterminado. Para isso é necessário um número, no mínimo, de flip-flop igual ao
número de bits da informação a ser armazenada.
Os registradores podem ter quatro configurações, conforme os dados são tratados, ou
seja, se eles estão saíndo ou entrando e se estes estão trabalhando de forma serial ou
paralela. Na forma serial as informações são transmitidas ou recebidas bit a bit, isto é, de
forma seqüencial em uma única linha. Neste tipo de registrador os dados movimentam-se
internamente, por esta razão são chamados de registradores de deslocamento.
O funcionamento do registrador de deslocamento depende da forma como são ativadas as
entradas, através de pulso de relógio, a qual possibilita o deslocamento dos dados no
registrador. Via entrada master reset que habilita as entradas clear de todos os flip-flops,
fazendo com que todas as saídas fiquem "resetadas". A entrada paralela load habilita as
entradas paralelas, transferindo-as para as saídas e a entrada serial, por onde os dados
entram para serem armazenados no registrador.
.
Download