87
Cidade de Lorena - SP Colégio DELTA Curso de Mecatrônica TÉCNICAS DIGITAIS 3° MÓDULO TURMA: _____ Aluno:___________________________________ N°: ____ Professor: Eduardo de Albuquerque Ligiéro E-MAIL: [email protected]

Cidade de Lorena - SP - files.ligiero.webnode.com.brfiles.ligiero.webnode.com.br/200000003-05605065aa/apostila 3a MECA... · hexadecimal (base 16), que são as bases de numeração

Embed Size (px)

Citation preview

Cidade de Lorena - SP

Colégio DELTA

Curso de Mecatrônica

TÉCNICAS DIGITAIS 3° MÓDULO

TURMA: _____

Aluno:___________________________________ N°: ____

Professor: Eduardo de Albuquerque Ligiéro

E-MAIL: [email protected]

I N T R O D U Ç Ã O

Não há como negar que com o decorrer dos anos a eletrônica digital vem automatizando e

modernizando todos os ramos de trabalho, desde a indústria até à medicina, pesquisas científicas, transportes, educação, forças armadas e principalmente na informática.

Incluindo as áreas industriais, os equipamentos digitais cada vez mais fazem parte da rotina da automação de linhas de produção, montagem, robótica, máquinas de grande porte, sistemas de expedição, controle de estoque, segurança, consultórios médicos, sistemas de comunicações, instituições de ensino, Etc.

Para um bom técnico em mecatrônica, ter noções básicas de eletrônica digital é um requisito fundamental para a manutenção e operação de equipamentos dotados desta tecnologia. Proporciona, inclusive, a adoção de soluções rápidas, práticas e eficientes na forma de projetos de circuitos digitais, para a resolução de problemas dos mais variados em qualquer área de atuação.

O material disponibilizado aqui em forma de apostila propõe a passagem destes conhecimentos básicos, previamente divididos em 2 módulos (semestres).

Neste módulo, iniciamos com conceitos de sistemas de numeração, passando por portas lógicas e álgebra booleana, e terminando com regras e princípios básicos de projetos.

No próximo semestre, veremos circuitos combinacionais básicos, passando por noções de circuitos seqüenciais, até sua conclusão com circuitos seqüenciais avançados, memórias eletrônicas e conversores de sinais.

No mais, aproveite e utilize bem este material, se dedique com afinco às aulas e exercícios, estude bastante e conte comigo para dúvidas e problemas de qualquer natureza!!

Prof. Eduardo de A. Ligiéro. E-MAIL: [email protected]

"A vitória é um presente para aquele que se esforça, acredita e persevera!"

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 1

ÍNDICE

I N T R O D U Ç Ã O................................................................................................................................................................3

I- PANORAMA GERAL DA TECNOLOGIA DIGITAL ....................................................................................................3

II- SISTEMAS DE NUMERAÇÃO ........................................................................................................................................7

1- MAIOR ALGARISMO DA BASE ....................................................................................................................................7 2- CONTAGEM EM QUALQUER BASE ............................................................................................................................8 3- ALGARISMOS MAIS E MENOS SIGNIFICATIVOS.....................................................................................................9 4- DECOMPOSIÇÃO DE NÚMEROS..................................................................................................................................9 5- CONVERSÃO ENTRE SISTEMAS DE NUMERAÇÃO...............................................................................................11

A) Conversão de decimal para qualquer base ................................................................................................................11 B) Conversão de qualquer base para decimal ................................................................................................................12 C) Conversão de binário para octal e vice versa............................................................................................................12 D) Conversão de binário para hexadecimal e vice versa ...............................................................................................14

6- CÓDIGOS........................................................................................................................................................................15 A) Códigos decimais .......................................................................................................................................................15 B) Código de Gray ..........................................................................................................................................................17 C) Código ASCII .............................................................................................................................................................18

III-OPERAÇÕES COM NÚMEROS BINÁRIOS...............................................................................................................22

1- ADIÇÃO..........................................................................................................................................................................22 2- SUBTRAÇÃO .................................................................................................................................................................23

IV-ALGEBRA BOOLEANA.................................................................................................................................................26

1- LÓGICA ..........................................................................................................................................................................26 2- FUNÇÕES BOOLEANAS BÁSICAS.............................................................................................................................27 3- TABELA-VERDADE .....................................................................................................................................................28 4- PORTAS LÓGICAS ........................................................................................................................................................29

A) Porta E ou AND .........................................................................................................................................................30 B) Porta OU ou OR.........................................................................................................................................................31 C) Porta NÃO, NOT ou INVERSORA.............................................................................................................................32 D) Porta Não-E ou NAND ..............................................................................................................................................33 E) Porta NÃO-OU ou NOR.............................................................................................................................................34 F) Porta XOR ou OU-EXCLUSIVO................................................................................................................................35 G) Porta XNOR ou NOR-EXCLUSIVO ou CKT COINCIDÊNCIA ................................................................................36

5- ANÁLISE DE CIRCUITOS DIGITAIS BÁSICOS.........................................................................................................37 6- IMPLEMENTAÇÃO DE CIRCUITOS DIGITAIS BÁSICOS .......................................................................................40

V- EXTRAÇÃO DE FUNÇÕES BOOLEANAS..................................................................................................................42

1- FORMA CONJUNTIVA .................................................................................................................................................44 2- FORMA DISJUNTIVA ...................................................................................................................................................45 3- IMPLEMENTAÇÃO DOS CIRCUITOS ........................................................................................................................46

VI- SIMPLIFICAÇÃO DE FUNÇÕES BOOLEANAS ......................................................................................................48

1- PROPRIEDADES, AXIOMAS E TEOREMAS DA ÁLGEBRA BOOLEANA .............................................................48 A) Propriedade da UNIÃO..............................................................................................................................................48 B) Propriedade da INTERSEÇÃO ..................................................................................................................................48 C) Propriedade da TAUTOLOGIA .................................................................................................................................49 D) Propriedade dos COMPLEMENTOS ........................................................................................................................49 E) Propriedade da MÚLTIPLA NEGAÇÃO....................................................................................................................49 F) Propriedade COMUTATIVA ......................................................................................................................................50 G) Propriedade ASSOCIATIVA ......................................................................................................................................50 H) Propriedade DISTRIBUTIVA ....................................................................................................................................50 I) Propriedade da ABSORÇÃO.......................................................................................................................................51 J) Teorema “DE MORGAN” ..........................................................................................................................................52 EXEMPLOS ....................................................................................................................................................................52

2- MAPA DE VEITCH KARNAUGH.................................................................................................................................54 3- FUNÇÕES INCOMPLETAS...........................................................................................................................................60 4- CASOS QUE NÃO ADMITEM SIMPLIFICAÇÃO .......................................................................................................67

A) Implementação com portas NAND .............................................................................................................................67

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 2

B) Implementação com portas XOR ou XNOR (funções comparadoras) ....................................................................... 68

VII- CIRCUITOS COMBINACIONAIS ............................................................................................................................. 74

1- IMPLEMENTAÇÃO UTILIZANDO PORTAS LÓGICAS UNIVERSAIS ................................................................... 74 A) Implementar portas NOT utilizando NAND............................................................................................................... 74 B) Implementar portas NOT utilizando NOR.................................................................................................................. 75 C) Implementar portas AND utilizando NAND .............................................................................................................. 75 D) Implementar portas OR utilizando NOR.................................................................................................................... 75 E) Implementar portas AND utilizando NOR ................................................................................................................. 76 F) Implementar portas OR utilizando NAND ................................................................................................................. 76 G) Implementar portas NOR utilizando NAND .............................................................................................................. 76 H) Implementar portas NAND utilizando NOR .............................................................................................................. 77 I) Implementar portas XOR utilizando NOR................................................................................................................... 77 J) Implementar portas XOR utilizando NAND................................................................................................................ 78 K) Implementar portas XNOR utilizando NOR............................................................................................................... 78 L) Implementar portas XNOR utilizando NAND ............................................................................................................ 78

2- TÉCNICAS DE PROJETO.............................................................................................................................................. 79 A) Circuito eleitor........................................................................................................................................................... 79 B) Detector de pares ....................................................................................................................................................... 80 C) Controle de semáforo................................................................................................................................................. 81

VIII- BIBLIOGRAFIA:......................................................................................................................................................... 83

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 3

I- PANORAMA GERAL DA TECNOLOGIA DIGITAL

Em sistemas digitais, a informação processada é normalmente apresentada na forma binária,

ou seja, através de números formados apenas pelos algarismos 0 e 1, também chamados BITs (do

inglês: Binary DigIT – Dígito binário).

As quantidades binárias podem ser representadas por qualquer dispositivo que tenha apenas

dois estados de operação ou duas condições possíveis. Por exemplo, uma chave tem apenas dois

estados: aberta ou fechada. Convenciona-se representar uma chave aberta pelo binário 0 e uma fechada

pelo binário 1.

Outros dispositivos com dois estados de operação: lâmpada (acesa ou apagada), diodo (em

condução ou em corte), relé (energizado ou não), transistor (em corte ou em saturação), fotocélula

(iluminada ou no escuro), termostato (aberto ou fechado), engate mecânico (engatado ou desengatado) e

um ponto de disco magnético (magnetizado ou desmagnetizado).

Figura 1 – Chaves de código binário para um porteiro eletrônico de garagem

Tomando como exemplo o equipamento da figura anterior, considerando a posição das

chaves em cima como binário 1 e em baixo como binário 0, as pequenas chaves (microswitch) estão

dispostas a formar o número binário 1000101010.

Para este tipo de aparelho, por exemplo, a porta será aberta apenas se um padrão adequado

de bits for ajustado no transmissor e no receptor.

Outro exemplo é mostrado na figura 2, que exemplifica a gravação binária de um CD.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 4

Figura 2 – Áudio digital em um CD (as áreas com “furos” são consideradas “0”, e as áreas refletoras, “1”)

Em sistemas eletrônicos digitais, uma informação é representada por tensões (ou correntes)

que estão presentes nas entradas e saídas dos diversos circuitos. Normalmente, os números binários 0 e

1 são representados por dois níveis de tensões nominais. Por exemplo, em circuitos digitais TTL, zero

volt (0 V) representa o binário 0, e +5 V representa o binário 1. Na realidade, devido a variações nos

circuitos, o 0 e o 1 são representados por faixas de tensão (Figura 3):

Figura 3 – Valores típicos de tensões em um sistema digital TTL

Todos os sinais de entrada e saída estarão dentro de uma dessas faixas, exceto durante as

transições de um nível para o outro.

Nos sistemas digitais, o valor exato da tensão não é importante: na figura 3, um valor de

tensão de 3,6 V terá o mesmo resultado que 4,5 V, pois estão dentro da mesma faixa de atuação.

Em sistemas analógicos, o valor exato da tensão é importante: como exemplo, se uma tensão

analógica é proporcional a uma temperatura medida por um transdutor, 3,6 V representa uma

temperatura diferente da equivalente a 4,5 V. Resumidamente, o valor da tensão representa uma

informação significativa.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 5

Estas características nos dizem que o projeto de um circuito analógico, considerando a

precisão, é mais difícil que o de um circuito digital, devido ao modo como os valores exatos de tensões

são afetados por variações nos valores dos componentes, na temperatura e no ruído (flutuações

aleatórias de tensão).

O modo como um circuito digital responde a uma entrada é denominado lógica do circuito.

Cada tipo de circuito digital obedece a um determinado conjunto de regras lógicas. Por essa razão, os

circuitos digitais são também chamados de circuitos lógicos. Mais à frente veremos o que vem a ser

lógica do circuito.

Quase todos os circuitos digitais usados nos modernos sistemas digitais são circuitos

integrados (CIs). A grande variedade de CIs lógicos tem proporcionado a implementação de sistemas

digitais complexos que são menores e mais seguros que os mesmos circuitos implementados com

componentes discretos.

Em se tratando de transmissão de dados, também temos diferenças notáveis nas técnicas

mais comuns empregadas atualmente.

Na Figura 4 (a) esta sendo usada uma porta paralela para imprimir a palavra “Hi”, onde

todos os bits de cada consoante são transmitidos de uma só vez. Na Figura 4 (b) esta sendo impressa,

através de uma porta COM, a mesma palavra usando a transmissão serial, ou seja um bit por vez. Os

dados que trafegam por uma porta USB também são transmitidos da mesma forma (um bit de cada vez

por um único fio), o que difere a COM da USB é a formatação dos dados e a velocidade que são

diferentes.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 6

Figura 4 (a) A transmissão paralela usa uma linha de conexão por bit, e todos os bits são transmitidos simultaneamente;

(b) A transmissão serial usa uma linha de sinal, na qual os bits são transmitidos serialmente (um de cada vez).

Na maioria dos equipamentos digitais, certos tipos de dispositivos e circuitos possuem

memória. Quando uma entrada é aplicada em um circuito desse tipo, a saída muda de estado e se

mantém nesse estado mesmo após a retirada do sinal de entrada, o que não ocorre com um circuito que

não possui propriedade de memória.

Um computador é um sistema de hardware que realiza operações aritméticas, manipula dados e

toma decisões, mediante um conjunto de instruções denominado programa.

A combinação das unidades lógica/aritmética e de controle constitui a CPU (unidade central de

processamento) denominada de microprocessador (CI que contêm a CPU). Existe um tipo de

microcomputador mais especializado denominado microcontrolador, especialmente projetado para

aplicações de controle dedicado.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 7

II- SISTEMAS DE NUMERAÇÃO

Nos primórdios de nossos estudos colegiais aprendemos a trabalhar com um sistema de numeração que contém DEZ dígitos ou algarismos e por este motivo este sistema denomina-se decimal ou de base 10. Este sistema de numeração utiliza os dez algarismos que já são de nosso domínio:

Sistema decimal (base 10) = {0,1,2,3,4,5,6,7,8,9}

Assim sendo, todo e qualquer número do sistema decimal utiliza obrigatoriamente apenas os

algarismos descritos anteriormente. Porém, assim como infinitos são os números naturais, infinitos são os sistemas de

numeração! Maior ênfase, no entanto, será dada aos sistemas binário (base 2), octal (base 8) e

hexadecimal (base 16), que são as bases de numeração mais utilizadas em diversos sistemas digitais. São apresentados a seguir os conjuntos de algarismos ou dígitos que compõem cada um dos

sistemas de numeração supracitados:

Sistema binário (base 2) = { 0, 1 } Sistema octal (base 8) = { 0, 1, 2, 3, 4, 5, 6, 7 }

Sistema hexadecimal (base 16) = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }

Repare que, assim como no decimal, a base de cada sistema representa o numero de algarismos que o compõe.

O sistema hexadecimal utiliza letras para representar quantidades maiores que nove unidades porque nosso conjunto de caracteres hindu-arábicos não contém símbolos que representem estas quantidades. O que utilizamos no dia-a-dia são números com dois ou mais algarismos decimais: 10, 11, 12, Etc.

No caso particular do sistema binário os algarismos 0 e 1 são chamados comumente de BITS, do inglês: “BInary digiTS”.

1- MAIOR ALGARISMO DA BASE Fica fácil, então, saber qual o maior algarismo de qualquer sistema de numeração se,

observando atentamente os conjuntos de algarismos anteriores, intuitivamente chegarmos à seguinte conclusão:

M = B - 1

Onde: M = Maior algarismo do sistema de base B;

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 8

Temos então para a fórmula anterior, como exemplo:

O maior algarismo do sistema de base 10 é o 9; O maior algarismo do sistema de base 2 é o 1; O maior algarismo do sistema de base 8 é o 7; O maior algarismo do sistema de base 16 é o F (que representa 15 unidades); O maior algarismo do sistema de base 27 é o que representa 26 unidades; O maior algarismo do sistema de base 359 é o que representa 358 unidades;

2- CONTAGEM EM QUALQUER BASE

Verifique a contagem abaixo feita no sistema decimal:

0,1,2,3,4,5,6,7,8,9,10,... Repare que a contagem sucedeu-se normalmente para cada acréscimo de uma unidade e que

tornou-se necessário o uso de um determinado “artifício” para que a contagem prosseguisse a partir de dez unidades. Isto ocorreu, como já sabemos, porque o sistema decimal não dispõe de símbolos que representem quantidades iguais ou maiores que dez unidades.

Para tanto torna-se necessário o uso do seguinte “artifício”: a contagem volta para zero e acrescenta-se uma unidade à posição imediatamente superior (à esquerda).

Verifique esta regra nas contagens seguintes:

...10,11,12,13,...,18,19,20,21,...,29,30,31,...,98,99,100,... Utiliza-se a mesma regra para a contagem em qualquer sistema de numeração. Verifique

através da tabela a seguir que retrata contagens nas quatro bases:

DECIMAL BINARIO OCTAL HEXADECIMAL 0 0 0 0 1 1 1 1 2 10 2 2 3 11 3 3 4 100 4 4 5 101 5 5 6 110 6 6 7 111 7 7 8 1000 10 8 9 1001 11 9

10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F 16 10000 20 10 17 10001 21 11 18 10010 22 12 19 10011 23 13 20 10100 24 14 21 10101 25 15 22 10110 26 16

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 9

... ... ... ... 98 1100010 142 62 99 1100011 143 63

100 1100100 144 64 101 1100101 145 65 ... ... ... ...

1099 10001001011 2113 44B 1100 10001001100 2114 44C

... ... ... ...

3- ALGARISMOS MAIS E MENOS SIGNIFICATIVOS

Outro conceito importante para o estudo de números de uma determinada base é o da ordem

de significância. Dentro de um número dizemos que um algarismo qualquer é mais significativo ou menos significativo que outro do mesmo número. Veja o exemplo a seguir:

31549 Neste número decimal notamos intuitivamente que, apesar do algarismo 1 possuir valor

isolado inferior ao dos demais (uma unidade), este possui um valor na estrutura do número muito maior que o ocupado pelo 5, 4 e pelo 9. Basta lembrarmos que o 1 representa, dentro do número em questão, um mil, enquanto os outros representam, respectivamente, cinco centenas, quatro dezenas e nove unidades. Neste caso dizemos que o 1 é mais significativo que o 5, 4 e o 9. Daí concluímos que o algarismo mais significativo do número acima é o 3, e que o 9 é o algarismo menos significativo, e que o 5 é mais significativo que o 4 e menos significativo que o 1 e assim por diante.

No estudo de circuitos digitais que se utilizam de uma estrutura numérica binária é comum o uso das siglas MSB (Most Significant Bit) para bits mais significativos e LSB (Least Significant Bit) para bits menos significativos.

4- DECOMPOSIÇÃO DE NÚMEROS Lembremo-nos de que um número decimal pode ser decomposto da seguinte forma:

4357 = 4x103 + 3x10

2 + 5x10

1 + 7x10

0

Tal representação, na verdade, consiste em multiplicar cada algarismo do número pela base

elevada à ordem de significância deste algarismo, partindo do menos significativo (0) com acréscimo de uma unidade para cada posição imediatamente superior, para finalmente serem adicionados.

Este processo é classificado como decomposição, pois basta executar a operação descrita acima que a mesma resultará no próprio número em questão.

� É importante lembrar que a base, no caso 10, elevada a um determinado expoente natural é igual à 1 seguido de tantos zeros quantas forem as unidades do expoente.

Para qualquer sistema de numeração a decomposição segue o mesmo processo como pode

ser visto com a decomposição do numero binário a seguir:

(10101)2 = 1x24 + 0x2

3 + 1x2

2 + 0x2

1 + 1x2

0

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 10

Vale dizer também para este caso que a base elevada ao expoente é igual à 1 seguido de tantos zeros quantos forem as unidades do expoente. Como pode ser visto na tabela de contagens que é mostrada anteriormente podemos facilmente comprovar que:

20= 1= (1)2

21= 2= (10)2

22= 4= (100)2

23= 8= (1000)2

Portanto, para o sistema binário, vale o que é descrito a seguir:

21= 10 2

5= 100000 2

11= 100000000000

Lembre-se de que as regras de decomposição descritas anteriormente valem para qualquer

sistema de numeração. A decomposição de um número gera o que também é conhecido em várias literaturas como

valores posicionais:

Valores posicionais de um número decimal expresso como potências de 10

MSB - bit mais significativo (most significant bit MSB)

LSB - bit menos significativo (least significant bit MSB)

Valores posicionais de um número binário expresso com potência de 2

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 11

5- CONVERSÃO ENTRE SISTEMAS DE NUMERAÇÃO Conforme visto na tabela das páginas 8 e 9, uma determinada quantidade pode ser expressa

em qualquer sistema de numeração. Por exemplo:

98 = 11000102 = 1428 = 6216

Como isto se verifica então é matematicamente possível a conversão entre os diversos sistemas de numeração.

Veremos a seguir algumas técnicas para conversão entre algumas bases e seus procedimentos.

A) Conversão de decimal para qualquer base

O método utilizado é o das divisões sucessivas que consiste em dividir o número decimal pela base para a qual se deseja convertê-lo sucessivas vezes até que o último quociente seja menor que a base divisora.

Exemplo: converter 18 em um número binário:

18 2

� 9 2

� 4 2

� 2 2

� 1

O número convertido é determinado a partir do último quociente passando por todos os restos, do último até o primeiro:

18 2

� 9 2

� 4 2

� 2 2

� 1

Com isto chegamos à seguinte conclusão:

18 = 100102

Este processo, como já foi dito anteriormente, converte um número decimal em outro de qualquer base.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 12

B) Conversão de qualquer base para decimal

O método para esta conversão, conhecido como soma de potências da base, é bastante simples,

basta, primeiramente, decompor o número que se deseja converter para decimal.

Exemplo: converter o número 100102 para decimal:

100102 = 1x24 + 0x2

3 + 0x2

2 + 1x2

1 + 0x2

0

Após a decomposição executamos esta operação, não pela base, mas em decimal, ou seja,

para este exemplo 23 não será igual à 1000 mas igual à 8:

100102 = 1x24 + 0x2

3 + 0x2

2 + 1x2

1 + 0x2

0

= 1x16 + 0x8 + 0x4 + 1x2 + 0x1 = 16 + 0 + 0 + 2 + 0

Concluindo temos:

100102 = 18 Análogo à conversão anterior, este processo converte qualquer número de qualquer

sistema em decimal.

C) Conversão de binário para octal e vice versa Vamos primeiramente analisar qual a relação existente entre as referidas bases:

8 = 2 ( ? )

Utilizando-se de um pouco de raciocínio lógico chegamos à seguinte conclusão:

8 = 23

Conclui-se que as bases em questão tem o número 3 como “fator de relacionamento” entre

elas. Isto explica porque os processos para a conversão de binário para octal e vice-versa, são

conhecidos, respectivamente, por empacotamento e desempacotamento de 3 bits. Observe o binário a seguir:

101000010 Para convertê-lo em octal executamos o empacotamento de três bits sempre a partir dos

bits menos significativos:

101 000 010

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 13

Agora convertemos cada pacote para decimal, pois todos os algarismos do sistema octal (de 0 à 7) também pertencem ao sistema decimal:

101 000 010 5 0 2

Concluímos então que:

1010000102 = 5028 Para o processo inverso (converter um octal em binário) executamos o desempacotamento:

5 0 2 Para tanto, convertemos cada algarismo octal em binário como se os mesmos fossem

decimais. É de suma importância relembrar que tal desempacotamento é de 3 bits, portanto acrescente os zeros à esquerda que forem necessários:

5 0 2

101 000 010

Daí conclui-se que:

5028 = 1010000102 Outros exemplos:

11110111002 = ? 8

001 111 011 100

1 7 3 4

11110112 = 17348

26208 = ? 2

2 6 2 0

010 110 010 000

26208 = 101100100002

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 14

D) Conversão de binário para hexadecimal e vice versa

Se utilizarmos a mesma análise das conversões anteriores, ou seja:

16 = 24

Chegaremos à conclusão de que o método para converter um número binário em

hexadecimal e vice-versa é conhecido como, respectivamente, empacotamento e desempacotamento de 4 bits.

Acompanhe os exemplos a seguir:

1011110111002 = ? 16

1011 1101 1100

11 13 12 ⇓ ⇓ ⇓ B D C

1011110111002 = BDC16

1110101001111112 = ? 16

0111 0101 0011 1111

7 5 3 15 ⇓ ⇓ ⇓ ⇓ 7 5 3 F

1110101001111112 = 753F16

8116 = ? 2

8 1

1000 0001

8116 = 100000012

3A416 = ? 2

3 A 4

0011 1010 0100

3A416 = 11101001002

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 15

6- CÓDIGOS Para muitos sistemas digitais (transmissores e receptores de dados, calculadoras, sistemas de

segurança, detetores de erros, Etc.) o uso dos números binários em sua forma pura (como visto até aqui) torna-se inconveniente, dificultoso, desnecessário ou proibitivo.

Para tanto o uso de números binários em forma codificada apresenta-se como uma solução extremamente eficiente.

Nos dias atuais existem sistemas, principalmente os computacionais, que trabalham com códigos e lógicas de detecção de erro avançadíssimas; os códigos que veremos a seguir já foram muito utilizados e a maioria tornou-se obsoleta, contudo são extremamente didáticos, de modo que o entendimento de suas arquiteturas proporcionará a compreensão da estrutura de qualquer código avançado se necessário for.

A) Códigos decimais

Os códigos a seguir são comparados aos algarismos decimais da primeira coluna, pois tais

códigos tem como objetivo a codificação destes algarismos para utilização nos mais diferentes sistemas:

Códigos BCD Biquinário Decimais

8 4 2 1 8 4 -2 -1 3 em excesso

(XS3) 2 entre 5 (2OF5) 5 0 4 3 2 1 0

0 0 0 0 0 0 0 0 0 0011 00011 0 1 0 0 0 0 1 1 0 0 0 1 0 1 1 1 0100 00101 0 1 0 0 0 1 0 2 0 0 1 0 0 1 1 0 0101 00110 0 1 0 0 1 0 0 3 0 0 1 1 0 1 0 1 0110 01001 0 1 0 1 0 0 0 4 0 1 0 0 0 1 0 0 0111 01010 0 1 1 0 0 0 0 5 0 1 0 1 1 0 1 1 1000 01100 1 0 0 0 0 0 1 6 0 1 1 0 1 0 1 0 1001 10001 1 0 0 0 0 1 0 7 0 1 1 1 1 0 0 1 1010 10010 1 0 0 0 1 0 0 8 1 0 0 0 1 0 0 0 1011 10100 1 0 0 1 0 0 0 9 1 0 0 1 1 1 1 1 1100 11000 1 0 1 0 0 0 0 Os códigos 8421 e 84-2-1 são classificados como CÓDIGOS BCD (Binary Coded

Decimal), pois foram concebidos especificamente com a finalidade de codificar os algarismos decimais. O código 8421 foi largamente empregado em máquinas decimais onde cada número que fosse operado por estas máquinas seria convertido para este código.

O código 3 em excesso, ou simplesmente XS3 (do inglês: “eXcesS 3”) foi criado para facilitar operações aritméticas, principalmente as de subtração em máquinas decimais.

Os códigos 2 entre 5 (“2 out of 5” – 2OF5) e biquinário foram largamente empregados na transmissão de dados, pois sua estrutura, com uma quantia fixa de zeros e uns em cada número, facilitava a detecção de erros de transmissão.

�Os códigos 8421, 84-2-1 e biquinário são chamados de PONDERADOS, pois a implementação de suas tabelas baseia-se na soma ponderada de valores.

Exemplos: Converter os números abaixo nos respectivos códigos.

23 = ? 8421 2 3

0010 0011

2310 = 001000118421

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 16

256 = ? XS3 2 5 6

0101 1000 1001

25610 = 010110001001XS3

47 = ? BIQ 4 7

0110000 1000100

4710 = 01100001000100BIQ Pergunta: Quantos bits são necessários para representar, em BCD 8421, o valor decimal 846569. Solução: Cada dígito é convertido no código BCD 8421. Assim um número decimal de 6 dígitos requer

24 bits, pois cada algarismo deste código possui 4 bits: 8 4 6 5 6 9 (decimal) 1000 0100 0110 0101 0110 1001 (BCD 8421)

84656910 = 1000010001100101011010018421

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 17

B) Código de Gray

Este código foi concebido de modo que cada número diferencie do próximo ou do anterior em apenas um bit.

Existem dois modos de implementar este código, o mais simples é através da tabela usando a técnica do espelhamento. Observe:

Decimais Gray

0 0 0 0 0 1 0 0 0 1 2 0 0 1 1 3 0 0 1 0 4 0 1 1 0 5 0 1 1 1 6 0 1 0 1 7 0 1 0 0 8 1 1 0 0 9 1 1 0 1

10 1 1 1 1 11 1 1 1 0 12 1 0 1 0 13 1 0 1 1 14 1 0 0 1 15 1 0 0 0

O processo supracitado consiste apenas em refletir cada um dos números através de

“espelhos” (linhas duplas) colocados na tabela logo abaixo das últimas seqüências de números; daí completa-se com bits 1 imediatamente à esquerda dos “reflexos”.

Uma das características marcantes deste código é a diferenciação que existe de qualquer número em Gray, para com o seu anterior e o consecutivo, em apenas 1 bit. Observe a tabela e tenha esta constatação.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 18

C) Código ASCII O código padrão americano para intercâmbio de informações (American Standard Code for

Information Interchange) é, atualmente, largamente utilizado nos sistemas computacionais, para a comunicação entre periféricos, softwares ou mesmo entre computadores (via rede, cabo ou linha telefônica).

A estrutura deste código é baseada na utilização de 7 bits conforme é visto logo abaixo:

8 7 6 5 4 3 2 1

Colunas Linhas Com 7 bits totalizam-se a codificação de 27 = 128 caracteres. Na verdade, o código é utilizado com 8 bits, porém o MSB não tem relevância na

codificação em si, tendo por função a detecção de erro por paridade. O código ASCII utiliza uma tabela que contém todos os caracteres (maiúsculos ou

minúsculos), símbolos, acentos, números e comandos, todos distribuídos em linhas e colunas. A estrutura deste código possibilita referenciar qualquer conteúdo da referida tabela através

destes 7 bits. Os três primeiro bits (7, 6 e 5) determinam a coluna da tabela a que pertence o que está

codificado, os quatro últimos bits restantes (4, 3, 2 e 1) determinam a linha, formando uma espécie de localização por coordenada cartesiana dentro da tabela.

Exemplo: o número 001000000ASCII fará referência ao caractere @. Verifique na tabela do código abaixo, acompanhada de outra que explana o significado de cada comando:

ASCII 0000 0001 0010 0011 0100 0101 0110 0111

0000 NUL DLE SP 0 @ P ` p

0001 SOH DC1 ! 1 A Q a q

0010 STX DC2 “ 2 B R b r

0011 ETX DC3 # 3 C S c s

0100 EOT DC4 $ 4 D T d t

0101 ENQ NAK % 5 E U e u

0110 ACK SYN & 6 F V f v

0111 BEL ETB ´ 7 G W g w

1000 BS CAN ( 8 H X h x

1001 HT EM ) 9 I Y i y

1010 LF SUB * : J Z j z

1011 VT ESC + ; K [ k {

1100 FF FS , < L \ l |

1101 CR GS - = M ] m }

1110 SO RS . > N ∩ n ~

1111 SI US / ? O __ o DEL

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 19

Legenda dos comandos:

NUL Nulo (NULL) SOH Início de cabeçalho (Start Of Heading) STX Início de texto (Start of TeXt) ETX Fim de texto (End of TeXt) EOT Fim de transmissão (End Of Transmission) ENQ Requisição (ENQuiry) ACK Ciente (ACKnowledge) BEL Campainha, sinal audível (BELL) BS Volta uma posição (BackSpace) HT Tabulação horizontal (Horizontal Tabulation) LF Mudança de linha (Line Feed) VT Tabulação vertical (Vertical Tabulation) FF Alimentação de formulário (Form Feed) CR Retorno de carro (Carriage Return) SO Desliga letras maiúsculas (Shift Out) SI Liga letras maiúsculas (Shift In) SP Espaço em branco (SPace)

DLE Escape de linha de dados (Data Link Escape) DC1 Controle de dispositivo Nº1 (Device Control 1) DC2 Controle de dispositivo Nº2 DC3 Controle de dispositivo Nº3 DC4 Controle de dispositivo Nº4 NAK Ciente negative (Negative AKnowledge) SYN Inutilização síncrona (SYNchronous ide) ETB Fim de bloco de transmissão (End of Transmission Block) CAN Cancelamento (CANcel) EM Fim de suporte (End of Medium) SUB Substituição (SUBstitute) ESC ESCape FS Separador de arquivo (File Separator) GS Separador de grupo (Group Separator) RS Separador de registro (Record Separator) US Separador de unidade (Unit Separator)

DEL Apaga (DELete)

Exemplos:

1) Sol = ( ? )ASCII

S o l

01010011 01101111 01101100

Sol = (010100110110111101101100) ASCII

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 20

2) Um operador está digitando um programa em BASIC. O computador converte cada tecla no código ASCII equivalente e armazena o código com 8 bits na memória. Determine a cadeia de caracteres binária que deve ser armazenada na memória quando o operador digita a seguinte instrução em BASIC:

if (x>3)

Solução: Localize cada caractere (inclusive o espaço – SPace) na tabela e transcreva o código ASCII de

cada um.

i 01101001

f 01100110

SP 00100000

( 00101000

x 01111000

> 00111110

3 00110011

) 00101001

Assim sendo, a cadeia de bits gerada pelo teclado e armazenada na memória será expressa do seguinte

modo:

if (x>3) = 0110100101100110001000000010100001111000001111100011001100101001 ASCII

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 21

A tabela a seguir mostra um pequeno resumo dos números decimais de 1 a 15, representados

nos sistemas binário (binário natural), hexa e nos códigos BCD8421 e Gray. Analise-a cuidadosamente

e veja se você entendeu como ela foi obtida. Observe, especialmente, que a representação BCD usa 4

bits para cada dígito decimal.

Decimal Binário Hexadecimal 8421 GRAY 0 0 0 0000 0000 1 1 1 0001 0001 2 10 2 0010 0011 3 11 3 0011 0010 4 100 4 0100 0110 5 101 5 0101 0111 6 110 6 0110 0101 7 111 7 0111 0100 8 1000 8 1000 1100 9 1001 9 1001 1101

10 1010 A 00010000 1111 11 1011 B 00010001 1110 12 1100 C 00010010 1010 13 1101 D 00010011 1011 14 1110 E 00010100 1001 15 1111 F 00010101 1000

Curiosidades:

Veja no livro Sistemas Digitais - Princípios e Aplicações (vide bibliografia) páginas 36 a

38 � Aplicações.

Exercícios Extras:

No mesmo livro os exercícios das páginas 39 a 41.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 22

III-OPERAÇÕES COM NÚMEROS BINÁRIOS

1- ADIÇÃO Vamos primeiramente recordar uma operação de adição decimal considerando toda a sua

estrutura.

���� ���� 8 5 2

+ 1 7 4 1 0 2 6

852 + 174 = 1026

Repare toda a estrutura da operação anterior: 1º) A soma é executada, inicialmente, com os dois algarismos menos significativos e prosseguindo

com os próximos em ordem de significância; 2º) Se a soma resultar em um número maior que nove (Ex.: 5+7 = 12) o menos significativo (2) compõe

o resultado e o mais significativo (1) é transportado (“vai um!”) para a soma seguinte; 3º) Assim sendo, após a soma menos significativa, as somas seguintes serão de três algarismos: o do

primeiro número, o do segundo e o transporte gerado pela soma anterior. Observação: se não houver transporte da soma anterior esta pode ser feita considerando o transporte igual a ZERO, o que não altera o resultado:

���� ���� ���� 8 5 2

+ 1 7 4 1 0 2 6

4º) Se após a última soma for gerado um transporte, este comporá o resultado como o algarismo mais

significativo.

Foi necessário explicitar procedimentos que são quase automáticos na execução de uma soma porque, para uma soma binária, o procedimento é exatamente o mesmo.

Observe as considerações seguintes que explicitam a soma de bits:

Resultado:

0 + 0 = 0 0 0 + 1 = 1 1 1 + 0 = 1 1 1 + 1 = 10 0 e vai 1

1 + 1 + 1 = 11 1 e vai 1

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 23

Seguindo o que foi explicitado anteriormente, qualquer soma binária poderá ser executada com os mesmos procedimentos:

���� ���� ���� 1 1 1 0

+ 1 1 1 1 0 1 0 1

11102 + 1112 = 101012

���� 1 0

+ 1 1 1 0 1

102 + 112 = 1012

2- SUBTRAÇÃO

Analise em detalhes a operação decimal abaixo.

6 4 - 2 8

Os números mostram uma operação possível (64-28), porém a primeira subtração (4-8) necessita

de um mecanismo para ser executada, conhecido como empréstimo. Nesse caso “pega-se emprestado” uma unidade da posição seguinte (6), sendo que uma unidade

dessa posição equivale à dez unidades (base deste sistema de numeração) da posição anterior; assim sendo, a operação 4-8 passa a ser 14-8, tornando a operação possível (14-8=6):

6 14 - 2 8 6

Tendo o algarismo mais significativo emprestado uma unidade para o algarismo anterior, a

operação 6-2 passa a ser 5-2.

5 4 - 2 8 3 6

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 24

O processo de empréstimo pode ainda ser explicitado com duas operações de subtração: a primeira subtrai a unidade emprestada (1) do primeiro algarismo (6), na outra, o segundo algarismo (2) subtrai o resultado dessa primeira operação (5).

6 4 -����

5 - 2 8 3 6

O mesmo se aplica à subtração binária em qualquer caso. Observe o exemplo abaixo.

1 1 0 - 1 0 1

Para a primeira operação (0-1), torna-se necessário o mecanismo do empréstimo. Nesse caso a

operação 0-1 passa a ser 10-1, cujo resultado será 1.

1 1 10 - 1 0 1 1

A operação seguinte explicita o empréstimo por parte do próximo algarismo:

1 1 0 -����

0 - 1 0 1 0 1

Terminamos então a operação com a apresentação do resultado.

1 1 0 - 1 0 1 0 0 1

1102 - 1012 = 12

O que foi feito com a operação empréstimo foi simplesmente transformar, em termos decimais, a operação 0-1 em 2-1, o que resultou em 1 mais a geração de um empréstimo por parte do algarismo seguinte.

Portanto, para fins de facilitar a operação de subtração binária, seguiremos os postulados a seguir:

Resultado:

0 - 0 = 0 1 - 1 = 0 1 - 0 = 1 0 - 1 = 1 ���� 1 ( 1 e empresta 1 )

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 25

Observe os exemplos a seguir:

1 1 0 1 0 � � � - 0 0 1 1 0 1 0 1 1 0 1

110102 - 11012 = 11012

1 1 0 0 0 1 � � - 0 1 1 1 0 1 1 0 0 1 0 0

1100012 - 11012 = 1001002

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 26

IV-ALGEBRA BOOLEANA

1- LÓGICA

Inspirado no processo de “investigação Socrática” e nas leis da lógica (também criada por Sócrates), George Boole (1815-1864) apresentou em 1854, através de sua obra “An Investigation of the Laws of Thought” (“Uma Investigação das leis do Pensamento”), um sistema matemático de análise lógica conhecido por Álgebra de Boole ou simplesmente Álgebra booleana.

Neste modelo matemático analisam-se as ocorrências do universo, ou de um sistema fechado, não como variáveis que podem assumir infinitos valores positivos ou negativos, mas como variáveis que podem assumir apenas dois valores.

Se pensarmos bem a respeito, praticamente qualquer ocorrência do cotidiano, do universo ou de um pequeno sistema pode ser representada assumindo apenas uma de duas posições:

� �

Sim Não Verdadeiro Falso

Alto Baixo Cheio Vazio Aceso Apagado Aberto Fechado

Saturado Cortado Ligado Desligado

84 anos mais tarde o engenheiro americano Claude Elwood Shannon utilizou-se das teorias da

álgebra booleana através de dois algarismos que representavam perfeitamente suas dualidades e são chamados de níveis lógicos:

1 0 � �

Sim Não Verdadeiro Falso

Alto Baixo Cheio Vazio Aceso Apagado Aberto Fechado

Saturado Cortado Ligado Desligado

A utilização da álgebra booleana e seus conceitos, o levou a encontrar soluções extremamente

eficazes para a telefonia através de relés, introduzindo na área tecnológica, até então dominada exclusivamente pela eletrônica linear ou analógica, os primeiros avanços no campo da eletrônica digital.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 27

2- FUNÇÕES BOOLEANAS BÁSICAS

A álgebra booleana, assim como a álgebra convencional, prevê o uso de operações matemáticas básicas donde se derivam todas as outras operações ou funções booleanas.

Estas operações ou funções básicas são três: ���� E ou AND; � OU ou OR; ���� NÃO ou NOT. A função AND, também conhecida como interseção ou conjunção, estabelece que um

determinado resultado será alcançado se todas as condições relevantes forem satisfatórias. Exemplo: O transistor amplifica sem distorção se estiver polarizado E mantiver o ponto Q estático.

A função OU ou OR, também conhecida como união ou disjunção, por sua vez estabelece que

este mesmo resultado será alcançado se pelo menos uma das condições for satisfatória. Exemplo: Em minha casa, haverá consumo de energia elétrica se uma lâmpada acender OU se a televisão for ligada OU se eu utilizar o chuveiro OU ...

Repare que na função OR se mais de uma ou todas as condições forem satisfeitas o resultado também será alcançado.

Para a função NÃO ou NOT, também conhecida como complemento ou inversão, nós temos

que o resultado será alcançado se negarmos uma determinada condição. Exemplos: Estabelecemos o ganho estático do transistor se este NÃO receber sinal de entrada;

Meu fornecimento de energia elétrica será cortado se eu NÃO pagar a conta em dia; No retificador de meia onda haverá corrente na carga se o diodo NÃO estiver cortado.

Parece simples, mas apenas estas três funções básicas são suficientes para gerar qualquer função

booleana por mais complexa que seja e, conseqüentemente, qualquer sistema eletrônico digital complexo possui estas três funções como unidades constituintes básicas.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 28

3- TABELA-VERDADE

A tabela-verdade é uma técnica que descreve como a saída de um circuito lógico depende dos níveis presentes nas entradas do mesmo.

A figura abaixo ilustra a tabela-verdade para um circuito lógico qualquer. Essa tabela relaciona todas as combinações possíveis para os níveis lógicos presentes nas entradas.

Os níveis lógicos da função de saída (X) dependem da natureza do circuito, ou seja, das particularidades do projeto.

Observe atentamente a primeira tabela, de 2 variáveis: A primeira linha da primeira tabela mostra que quando as entradas A e B forem iguais a 0, a saída X será nível 1. A segunda linha mostra que quando A=0 e B=1, a saída X torna-se 0. Da mesma maneira, a tabela mostra o que acontece com o estado lógico da saída para qualquer conjunto de todas as condições possíveis de entrada.

Exemplos de tabela-verdade para circuitos de: (a) duas entradas (b) três entradas (c) quatro entradas

As figuras (b) e (c) mostram exemplos de tabelas para circuitos lógicos de 3 e 4 variáveis de

entrada. Veja novamente que cada tabela relaciona, no lado esquerdo, todas as combinações possíveis para os níveis lógicos de entrada e, no lado direito, os níveis lógicos resultantes para a saída X. É evidente que o valor atual da saída X depende do tipo de circuito lógico projetado.

Observe que há quatro linhas para uma tabela de duas entradas, oito linhas para 3 entradas e 16 linhas para 4 entradas. O número de todas as combinações possíveis de entrada é expresso pela seguinte fórmula:

2V = L onde : V = Número de variáveis de entrada; L = Número de linhas.

Observe também que a lista de todas as combinações possíveis é uma seqüência de

contagem binária, por isso é muito fácil preencher uma tabela sem esquecer nenhuma combinação, basta contar! Questões de revisão: 1. Qual será o estado lógico da saída para o circuito de quatro entradas representado na figura (c) quando todas as entradas, exceto a B, forem nível 1? 2. Repita a questão 1 para as seguintes condições de entrada: A=1, B=0, C=1 e D=0. 3. Quantas linhas devem ter uma tabela que representa um circuito de cinco entradas?

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 29

4- PORTAS LÓGICAS

Portas lógicas, é como são conhecidos os circuitos que executam as funções booleanas básicas e suas combinações, portanto são os circuitos mais simples de qualquer sistema digital.

As portas lógicas são classificadas em três grupos: Básicas, universais e comparadoras. As portas lógicas básicas são aquelas que executam as funções booleanas básicas. As universais são combinações de portas básicas e possuem esta classificação por serem

utilizadas para implementar todo e qualquer tipo de circuito digital, inclusive portas básicas e comparadoras.

As duas portas comparadoras também são combinações das portas básicas e são assim classificadas por gerarem a função XOR (“xisór”) ou OU-EXCLUSIVO e a função XNOR (“xisnór”), também conhecida por NOR-EXCLUSIVO ou CKT COINCIDÊNCIA. São funções específicas para comparação de duas condições, declarando-as iguais ou diferentes.

Por tratarem-se de circuitos, as portas lógicas trabalham com valores específicos de tensão que variam de acordo com seu tipo de construção. As portas lógicas identificam os níveis lógicos através destes valores de tensão em suas entradas e respondem, em suas saídas, com tais valores que também são interpretados como níveis lógicos por outros circuitos.

Os circuitos digitais que são construídos utilizando lógica de transistores (família TTL), por exemplo, identificam níveis de 5V ou pouco menos como nível 1 e níveis de 0V ou um pouco mais como nível 0.

Será mostrado, no próximo módulo, as principais famílias lógicas, suas implementações e particularidades. Por enquanto veremos as características de todas as portas lógicas:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 30

A) Porta E ou AND

Símbolo: Circuito Discreto:

A B

Y+

Função:

Y = A . B

Tabela verdade: Diagrama de Venn:

A B Y

0 0 0

0 1 0

1 0 0

1 1 1

Tanto pelo circuito discreto como pela tabela verdade, que representam as variáveis de entrada com as letras A e B e a função de saída por Y, notamos a representação da função que esta porta executa, a função AND.

Quanto ao circuito discreto note que a lâmpada apenas acenderá se as chaves A E B estiverem fechadas.

Pela tabela verdade, perceba que a saída somente estará em nível 1 se a entradas A E B estiverem também em nível 1.

Ou podemos dizer de outro modo: Basta que uma das entradas seja igual à zero para que a saída seja também zero.

A função acima representada pelo operador “.” é assim lida: “Y é igual à A e B”. A interpretação do diagrama de Venn mostra que a função “E” gera a interseção dos conjuntos

A e B, pois o único resultado satisfatório para esta função está nos elementos que são dos conjuntos A E B.

A porta AND pode ter duas ou mais entradas, portanto tudo o que foi visto acima vale para qualquer porta AND, independentemente de seu número de entradas, bastando acrescentar o número de elementos correspondentes às entradas excedentes.

Semelhante à álgebra convencional, a função AND pode, também, ser escrita desta forma:

Y=AB

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 31

B) Porta OU ou OR

Símbolo: Circuito Discreto:

YB

A

+

Função:

Y = A + B

Tabela verdade: Diagrama de Venn:

A B Y

0 0 0

0 1 1

1 0 1

1 1 1

Aqui é perceptível a função OR no Ckt discreto: a lâmpada acenderá se as chaves A OU B estiverem fechadas.

Na tabela verdade, basta que A OU B sejam iguais a 1 para que a saída assuma o mesmo valor (1), ou então, basta que uma das entradas seja igual à 1 para que a saída seja também 1.

A função OR representada pelo operador “+” é lida “Y é igual à A OU B”. O diagrama de Venn ilustra esta função como a união dos conjuntos A e B, pois o resultado

satisfatório para esta função encontra-se nos elementos de A OU B OU AMBOS. Assim como a porta AND, tais representações valem para duas ou mais entradas.

Questões de revisão: 4. Qual é o único conjunto de condições de entrada que produz uma saída BAIXA para qualquer porta OR? 5. Escreva a expressão booleana para uma porta OR de seis entradas. 6. Qual é a única combinação de entrada que produz uma saída em nível ALTO em uma porta AND de cinco entradas? 7. Qual nível lógico deve ser aplicado à segunda entrada de uma porta AND de duas entradas, para que o sinal lógico na primeira entrada seja desabilitado (impossibilitado de alterar a saída)? 8. Verdadeiro ou falso: A saída de uma porta AND sempre será diferente da saída de uma porta OR para as mesmas condições de entrada.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 32

C) Porta NÃO, NOT ou INVERSORA

Símbolo: Circuito Discreto:

YA+

Função:

Y = A

Tabela verdade: Diagrama de Venn:

A Y

0 1

1 0

O circuito discreto e a tabela mostram que a saída será sempre o inverso, negação ou

complemento da entrada, ou seja, a lâmpada só acenderá se a chave NÃO fechar e, pela tabela, a saída será 1 se a entrada for 0 e vice versa.

Para o diagrama de Venn, note que a função é representada pela negação da variável, pois o resultado esperado está em todos os elementos que NÃO pertencem ao conjunto A.

A função representada por uma linha sobreposta à variável é assim lida: “Y é igual à A invertido” ou “Y é igual à A negado” ou “Y é igual à A barrado”.

Esta é a única porta lógica que possui apenas uma entrada por motivos óbvios. O símbolo aqui demonstrado representa a porta NOT em seu estado isolado, pois, na grande

maioria das vezes, ela sempre estará associada à algum circuito digital, sendo identificada por um pequeno círculo em um terminal de entrada ou de saída do mesmo. Questões de revisão: 9. A saída do inversor é conectada à entrada de um segundo inversor. Qual o nível lógico de saída se a entrada for 0? Qual o nível lógico de saída se a entrada for 1? 10. A saída da porta AND de duas entradas é conectada à entrada de um INVERSOR. Determine a tabela-verdade, mostrando a saída Y do INVERSOR para cada combinação das entradas A e B.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 33

D) Porta Não-E ou NAND

Símbolo: Circuito Discreto:

Y

B

A+

Função:

Y = B . A

Tabela verdade: Diagrama de Venn:

A B Y

0 0 1

0 1 1

1 0 1

1 1 0

Esta é a primeira das duas portas universais. Fica claro que esta porta é, na verdade, a

combinação da porta AND com a INVERSORA, ou podemos dizer: esta porta gera a função AND negada, ou ainda, o complemento da função AND.

Tanto o circuito discreto como a tabela e o diagrama de Venn evidenciam que esta porta gera uma função que é exatamente o complemento da função AND: basta que uma das entradas seja 0 para que a saída seja 1.

A função supracitada é assim lida: “Y é igual à A e B barrados” ou “Y é igual à A e B negados”. Assim como a AND esta porta pode ter mais de uma entrada.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 34

E) Porta NÃO-OU ou NOR

Símbolo: Circuito Discreto:

YBA

+

Função:

Y = B A +

Tabela verdade: Diagrama de Venn:

A B Y

0 0 1

0 1 0

1 0 0

1 1 0

A segunda porta universal é a combinação da porta OR com a INVERSORA, portanto gera a

função OU negada ou o complemento da função OU. O circuito, a tabela e o diagrama apresentam a negação da porta OR: basta que uma das

entradas seja 1 para que a saída seja 0. Lê-se assim a função: “Y é igual à A ou B barrados” ou “Y é igual à A ou B negados”. Esta porta pode ter mais de uma entrada analogamente às portas vistas anteriormente.

Questões de revisão: 11. Qual é o único conjunto de condições de entrada que produz uma saída nível ALTO em uma porta NOR de três entradas? 12. Determine o nível lógico da saída do circuito na figura abaixo para A=B=1 e C=D=0.

13. Troque a porta NOR da figura da questão anterior por uma porta NAND, e troque a porta NAND por uma porta NOR. Qual é a nova expressão para X?

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 35

F) Porta XOR ou OU-EXCLUSIVO

Símbolo: Circuito Discreto:

AB

Y+

Função:

Y = BA ⊕

Tabela verdade Diagrama de Venn

A B Y

0 0 0

0 1 1

1 0 1

1 1 0 A primeira das portas comparadoras executa a função OU-EXCLUSIVO, ou seja,

apresenta saída igual à um se uma entrada OU outra for igual à um, EXCLUSIVAMENTE (se as duas forem iguais à 1, a saída é 0).

Isto fica explícito pelo circuito discreto, tabela e diagrama de Venn. A tabela verdade ainda explicita ser esta porta uma comparadora de desigualdade, ou seja, a saída será 1 se as entradas forem diferentes ( 0 e 1 / 1 e 0 ).

Para a função temos: “Y é igual à A ou-exclusivamente B” ou “Y é igual à A XOR B”.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 36

G) Porta XNOR ou NOR-EXCLUSIVO ou CKT COINCIDÊNCIA

Símbolo: Circuito Discreto:

BA

Y+

Função:

Y = BA ⊗

Tabela verdade Diagrama de Venn

A B Y

0 0 1

0 1 0

1 0 0

1 1 1

É evidente pelas representações acima que esta porta comparadora é o complemento da

função ou-exclusivo, ou seja, apresenta saída igual à ZERO se uma entrada OU outra for igual à 1, EXCLUSIVAMENTE.

Também se pode verificar que a saída será 1 se as entradas forem iguais (0 e 0 / 1 e 1), em outras palavras, esta porta é uma comparadora de igualdade.

No caso particular das duas portas comparadoras, as mesmas têm como função comparar

dois níveis, exatamente por isso não existem portas comparadoras com mais de duas entradas. Se uma comparação entre mais de duas entradas for necessária, duas ou mais portas serão

usadas em conjunto, porém, os efeitos não serão sempre os mesmos de uma única porta, ou seja, nem sempre a função XNOR será o complemento da XOR! Isto será explicitado em momento oportuno.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 37

5- ANÁLISE DE CIRCUITOS DIGITAIS BÁSICOS

É obvia a necessidade da boa análise de um circuito digital para que a compreensão de sua função e utilidade possam ser bem assimiladas.

Uma das análises que pode ser efetuada é demonstrada nos circuitos a seguir, de onde são extraídas as expressões de saída, através da análise de cada função básica, porta-a-porta, desde as entradas.

Qualquer circuito lógico pode ser descrito usando os três operandos booleanos básicos, porque as portas OR, AND e NOT são os blocos fundamentais dos sistemas digitais. Considere a figura (a) abaixo; usando as expressões booleanas de cada porta, podemos determinar a expressão lógica de saída:

Ocasionalmente, pode haver confusão em determinar qual operação é realizada primeiro na expressão. Quando existe AND e OR como na expressão CBAX += . a operação AND é sempre realizada primeiro, a menos que existam parênteses na expressão, por exemplo: CBAX ).( += , na figura (b), veja que esta expressão sem os parênteses poderia ser interpretada incorretamente.

Sempre que um INVERSOR estiver presente em um circuito lógico, a expressão para a saída do INVERSOR será igual à expressão de entrada com uma barra sobre ela:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 38

Outros exemplos:

BCABY ⊕= HIHGFW +++= HIFX =

Outra análise que ajuda muito a entender a implementação de um circuito digital é a verificação

de seu funcionamento com níveis lógicos escolhidos aleatoriamente ou de uma linha da tabela verdade correspondente.

Esta analise porta-a-porta mostra o efeito causado por estes níveis de entrada até resultar na verificação dos níveis de saída.

Este tipo de verificação do funcionamento dos circuitos digitais é conhecida como análise bit-a-bit. Observe os exemplos seguintes:

0

1

0

=

=

=

C

B

A

1=Y

1

0

0

0

=

=

=

=

I

H

G

F

0

1

=

=

X

W

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 39

Os métodos de análise de circuitos digitais vistos aqui ajudam muito na compreensão dos circuitos que veremos nos capítulos seguintes.

Todos os circuitos que vimos anteriormente são classificados como circuitos combinacionais, ou seja, circuitos digitais cujo estado da saída depende única e exclusivamente do estado das entradas.

Parece uma afirmação extremamente óbvia, mas existem circuitos em que a classificação anterior não é verdadeira, ou seja, o estado das saídas não depende apenas dos estados de entrada; tais circuitos serão estudados no próximo módulo. Questões de revisão: 14. Defina a expressão de saída dos circuitos abaixo:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 40

15. Faça a análise bit-a-bit em todos os circuitos acima (questão 14).

6- IMPLEMENTAÇÃO DE CIRCUITOS DIGITAIS BÁSICOS

Quando a operação de um circuito é definida por uma expressão booleana, podemos desenhar o diagrama do circuito lógico a partir da expressão.

Trata-se tão somente do processo inverso às análises vistas anteriormente.

Suponha que desejemos construir um circuito cuja saída seja BCACBACY ++= .

Essa expressão booleana contém três termos ( BCACBAC , , ) sobre os quais é aplicada a

operação OR. Essa expressão nos diz que é necessária uma porta OR de três entradas que são CBAC ,

e BCA . Isto está ilustrado na figura (a) abaixo, que traz uma porta OR com as três entradas

nomeadas CBAC , e BCA .

Cada entrada da porta OR tem um termo que é um produto lógico AND, o que significa que uma porta AND, com as entradas apropriadas, pode ser usada para gerar cada um desses termos. Isso é indicado na Figura (b), que mostra o diagrama final do circuito:

Observe que o uso de INVERSORES produz os termos A e C presentes na expressão.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 41

Questões de revisão:

16. Desenhe o diagrama do circuito que implementa a expressão ))(( CBBAx ++= .

17. Desenhe o diagrama do circuito que implemente a expressão )( DACBAx += .

18. Desenhe o diagrama do circuito para a expressão ABCCBACy ++= .

19. Desenhe o diagrama do circuito para ECBADx ].).([ ++=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 42

V- EXTRAÇÃO DE FUNÇÕES BOOLEANAS

A grande maioria dos problemas do cotidiano pode ser resolvida através de “soluções digitais”, observe a situação proposta abaixo:

O problema consiste em ligar automaticamente a bomba para encher a caixa d’água com a água do poço, mas tal acionamento não pode ocorrer se o poço estiver seco ou a caixa d’água cheia.

O primeiro passo é considerar as variáveis e funções do problema: fazendo uma atenta observação fica claro que a bomba será ou não acionada em função do poço e da caixa, portanto as variáveis do problema são a caixa e o poço que determinarão o estado lógico da bomba (função do problema).

O segundo passo é definir os estados das variáveis e da função de forma binária, ou seja, considerando apenas dois estados para cada um:

NOTA: não há obrigatoriedade nem regra que defina qual dos dois estados deve ser 1 ou 0, ficando a cargo do projetista decidir sua preferência, ou para fins de facilitar a simplificação do projeto ou por

mera comodidade ou convenção pessoal.

A partir daí o terceiro passo é montar a tabela verdade das variáveis e da função de saída conforme é visto a seguir:

P C B 0 0 0 0 1 0 1 0 0 1 1 1

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 43

A tabela anterior é bem familiar não é mesmo?

Com isto chegamos à conclusão de que o circuito que executará a tarefa de chavear a bomba

d’água nas condições supramencionadas é uma porta AND, conforme a figura a seguir:

Nem sempre os projetos de circuitos digitais resolvem situações problema através de uma tabela

verdade tão simples, infelizmente. Para tanto existem técnicas para extrair funções booleanas de tabelas mais complexas.

Existem duas formas de extração: conjuntiva e disjuntiva. Observe a tabela de oito linhas* abaixo originada de um projeto qualquer:

A B C Y 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1

* NOTA: Faça uma revisão acerca de construção no capítulo sobre tabelas-verdade.

Cada forma possui um conjunto de quatro regras para a extração de uma função, comforme

será explicitado a seguir:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 44

1- FORMA CONJUNTIVA Para a forma conjuntiva temos:

1ª regra: Um termo para cada linha onde a função é igual a 0; 2ª regra: As variáveis serão ligadas pela função OR; 3ª regra: As variáveis serão negadas se forem iguais a 1; 4ª regra: Os termos serão ligados pela função AND;

Aplicação da primeira regra:

A B C Y 0 0 0 0 � 0 0 1 0 � 0 1 0 1 0 1 1 1 1 0 0 0 � 1 0 1 1 1 1 0 0 � 1 1 1 1

Aplicação da segunda regra:

A B C Y 0 0 0 0 � CBA ++ 0 0 1 0 � CBA ++ 0 1 0 1 0 1 1 1 1 0 0 0 � CBA ++ 1 0 1 1 1 1 0 0 � CBA ++ 1 1 1 1

Aplicação da terceira regra:

A B C Y 0 0 0 0 � CBA ++ 0 0 1 0 � CBA ++ 0 1 0 1 0 1 1 1 1 0 0 0 � CBA ++ 1 0 1 1 1 1 0 0 � CBA ++ 1 1 1 1

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 45

Aplicação da quarta regra:

( ) ( ) ( ) ( )CBACBACBACBAY ++•++•++•++=

ou

( ) ( )( )( )CBACBACBACBAY ++++++++=

Esta forma, por motivos aparentes, é também conhecida como produto de somas.

2- FORMA DISJUNTIVA Para a forma disjuntiva ou soma de produtos temos as seguintes regras de extração:

1ª regra: Um termo para cada linha onde a função é igual a 1; 2ª regra: As variáveis serão ligadas pela função AND; 3ª regra: As variáveis serão negadas se forem iguais a 0; 4ª regra: Os termos serão ligados pela função OR;

É notável o fato de que a forma disjuntiva é o complemento da conjuntiva se levarmos em

consideração apenas as regras apresentadas. Observe a aplicação das regras para a tabela anterior:

Aplicação da primeira regra:

A B C Y 0 0 0 0 0 0 1 0 0 1 0 1 � 0 1 1 1 � 1 0 0 0 1 0 1 1 � 1 1 0 0 1 1 1 1 �

Aplicação da segunda regra:

A B C Y 0 0 0 0 0 0 1 0 0 1 0 1 � CBA .. 0 1 1 1 � CBA .. 1 0 0 0 1 0 1 1 � CBA .. 1 1 0 0 1 1 1 1 � CBA ..

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 46

Aplicação da terceira regra:

A B C Y 0 0 0 0 0 0 1 0 0 1 0 1 � CBA .. 0 1 1 1 � CBA .. 1 0 0 0 1 0 1 1 � CBA .. 1 1 0 0 1 1 1 1 � CBA ..

Aplicação da quarta regra:

ABCCBABCACBAY +++=

3- IMPLEMENTAÇÃO DOS CIRCUITOS

Observe os circuitos que são originados das funções anteriores, extraídas de uma mesma tabela:

Circuito Conjuntivo

Circuito Disjuntivo

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 47

Perceba que são circuitos bem diferentes, mas que foram originados da mesma tabela, portanto executam a mesma função. Comprove isto efetuando uma análise bit-a-bit de ambos, escolhendo qualquer linha da tabela e colocando nas entradas dos dois circuitos os níveis correspondentes e verificando as saídas que, considerando o exposto anteriormente, terão o mesmo nível lógico.

Apesar de originarem circuitos que geram a mesma função de saída, a forma de extração mais utilizada é a disjuntiva.

Primeiro porque favorece simplificação mais facilitada para funções complexas, devido ao fato de uma função nesta forma ser semelhante às equações da álgebra convencional com a qual estamos mais familiarizados.

Segundo porque o pensamento humano tende a assumir a forma disjuntiva, ou seja, é mais cômodo mentalmente atribuirmos o nível 1 para estados “ligados” ou “acesos”, por exemplo.

O terceiro motivo é que os métodos mais avançados de simplificação de funções se aplicam apenas a funções disjuntivas.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 48

VI- SIMPLIFICAÇÃO DE FUNÇÕES BOOLEANAS Se uma determinada função booleana contiver um número muito grande de termos ou de

variáveis fica impraticável a implementação de seu respectivo circuito. A quase totalidade das funções complexas pode ser reduzida a poucas portas, um único tipo de porta ou mesmo nenhuma e ainda assim continuar a gerar a função que sua respectiva tabela propõe.

Existem diversas técnicas algébricas e gráficas para a simplificação de funções complexas, mas para o nosso estudo consideraremos apenas o método algébrico (aplicação de postulados, propriedades, axiomas e teoremas da álgebra booleana) e um método gráfico (mapa de Karnaugh).

1- PROPRIEDADES, AXIOMAS E TEOREMAS DA ÁLGEBRA BOOLEANA Alguns axiomas e propriedades da álgebra de Boole são semelhantes aos da álgebra

convencional facilitando o nosso estudo, outros são particulares à esta e merecem um pouco mais de atenção em suas definições.

O que facilita a compreensão das propriedades desta álgebra é lembrar que uma variável booleana somente pode assumir um de dois valores (0 ou 1), portanto substitua cada variável por 0 e depois por 1 e comprove os resultados em cada caso sempre que isto se fizer necessário para a compreensão das mesmas. Vejamo-los agora: A) Propriedade da UNIÃO

Como o nome sugere é aplicável à função OR. É composta por 2 axiomas que explicitam

qual dos níveis é seu elemento neutro e qual não é:

11B

A0A

=+

=+

Exemplos:

FABFDAFABFDA

CBACFAB

+=++

=+++

0

11

B) Propriedade da INTERSEÇÃO

Análoga à propriedade anterior, esta é aplicável à função AND. É também composta por 2

axiomas:

0B.0

AA.1

=

=

Exemplos:

FAADFAAD

ACABCAACAB

+=+

+=++

1

0

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 49

C) Propriedade da TAUTOLOGIA

Esta propriedade se aplica tanto para a função AND como para a OR e consiste simplesmente na “eliminação de repetições”. Eis os seus axiomas:

BBB

AA.A

=+

=

Exemplos:

WZXYWZWZWZXYYX

ABACABACAB

+=++

+=++

D) Propriedade dos COMPLEMENTOS

É aplicável tanto à função AND, como para a OR, e especifica o resultado da operação de uma variável ou termo com seu complemento:

1BB

0AA.

=+

=

Exemplos:

WYZWYZZXZ

ABACAB

=+

=++ 1

E) Propriedade da MÚLTIPLA NEGAÇÃO

Se o complemento de A é A , então temos o que se segue:

BB

AA

=

=

Podemos concluir, então, que se negarmos uma variável, termo ou função um número par de

vezes é o mesmo que não negar, e se negarmos um número impar de vezes, é o mesmo que negar uma vez só.

Existem circuitos que se utilizam de várias portas NOT num único canal sem constituir, com isto, uma falha na simplificação; isto se deve ao fato de que a porta NOT é um dispositivo eletrônico, portanto possui um tempo de resposta ou tempo de propagação. Para alguns circuitos digitais em particular o tempo gasto para que um determinado nível lógico seja transmitido de um ponto à outro deste circuito é de importância comprometedora ou até mesmo VITAL para a sua correta operacionalidade.

Portanto uma solução prática para resolver problemas causados por tempo de propagação num circuito digital é simplesmente inserir tantas inversoras quantas forem necessárias para gerar um atraso na transmissão de um determinado nível lógico num ponto do circuito em que tal atraso for necessário para seu perfeito funcionamento. NOTA: O tempo de propagação de portas NAND e NOR está em torno de 15 nanosegundos e o de uma inversora é igual ou pouco menor que 10 nanosegundos.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 50

EXEMPLO:

F) Propriedade COMUTATIVA

Semelhante a álgebra convencional. Lembra uma antiga frase matemática: “a ordem dos

fatores não altera o produto”:

BAAB

B.AA.B

+=+

=

Exemplos:

ZYXZXYYZXYXZXZYXYZ

ABACBCBCABACBCACAB

=====

++=++=++

G) Propriedade ASSOCIATIVA

Outra propriedade também pertencente à álgebra convencional:

( ) ( ) ( )

( ) ( ) ( ) CBACABCBACBA

CBACABCBACBA

++=++=++=++

=== .....

Perceba que esta propriedade nos esclarece como podemos implementar funções básicas

com mais de 2 variáveis, utilizando 2 ou mais portas do mesmo tipo. H) Propriedade DISTRIBUTIVA

Uma 3ª propriedade pertencente à álgebra convencional, que também é aplicável às funções booleanas:

( )

( ) WXYWXZYZXW

CBAACAB

+=+

+=+

Para efeito de recordação, esta propriedade também é conhecida no vulgo como fatoração

por termos comuns, onde o termo comum é colocado “em evidência”, na parte externa esquerda do conjunto entre parênteses.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 51

I) Propriedade da ABSORÇÃO Esta é outra das propriedades que são particulares à álgebra booleana e é representada por

três axiomas, aqui apresentados com suas respectivas comprovações:

1) AABA =+ ( ) AABAABA ==+=+ 1.1

2) ( ) ( ) BCACABA +=++ . ( ) ( ) ( )

BCABCA

BCBCABCABACABCABACAACABA

+=+

=+++=+++=+++=++

1.

1.

3) BABAA +=+

( ) ( ) BABAAABABAAABBABABAABAA +=+=++=++=++=+=+ 1.11.

Podemos expandir este 3° axioma em um 4°, que na verdade é o mesmo, porém visto sob um segundo ponto de vista:

4) BAABA +=+

BAAABAABABAABBAABAABA +=++=++=++=+=+ )()1(1. Questões de Revisão 20. Simplifique:

a) CABCAy +=

b) DCBADCBAy +=

c) ABDDAy +=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 52

J) Teorema “DE MORGAN”

Este teorema da álgebra booleana é largamente empregado na simplificação e projeto de

circuitos digitais e é constituído por dois axiomas:

BABA .=+ BABA +=.

Portanto temos a seguinte igualdade:

= =

Tais axiomas podem ser comprovados através de propriedades da álgebra de Boole, mas a

forma mais fácil e rápida de fazê-lo é através de tabelas verdade:

A B A B BA + BA. AB BA + 0 0 1 1 1 1 1 1 0 1 1 0 0 0 1 1 1 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0

EXEMPLOS Observe agora alguns exemplos de redução de funções complexas utilizando algumas das

propriedades que acabamos de conhecer:

LGEGLELGEEGLY +++=

( ) ( ) ( ) ( )

GEELy

GEELLLGEGGEL

+=

+=+++= 11

DCBADCBADCBADCBADCBA

DCBADCBADCBADCBADCBADCBADCBAV

...............

.....................

++++

+++++++=

( ) ( ) ( ) ( ) ( ) ( )( ) ( ) ( )

( )BAV

BAABABBABABABA

CCBACCBACCBACBACBACBACBACBACBA

DDCBADDCBADDCBADDCBADDCBADDCBA

+=

+=++=++=

+++++=+++++=

+++++++++++=

......

..................

..................

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 53

JHFHJFFHJJFHW +++= ( ) ( ) ( )

HW

FFHHFFHJJHFJJFH

=

+=+=+++=

Na última simplificação logo acima nota-se algo muito interessante: chegou-se à conclusão que a função W pode ser implementada simplificadamente, não com algumas portas lógicas, mas apenas com um fio que transmita a variável H à função. Outra conclusão interessante alcançada com a simplificação é que as variáveis F e J não exercem influência importante na função (são inúteis).

Tais ocorrências são mais comuns do que se imagina. Em quase todos os projetos, apenas com a simplificação, o projetista conclui que uma ou outra variável considerada em sua idealização, na verdade não tem importância vital na boa operacionalidade do circuito. Questões de revisão: 21. Aplique DeMorgan nas expressões abaixo de modo que apresentem inversões apenas em variáveis simples:

a) CBAz ).( +=

b) QTSRy +=

22. Implemente um circuito que tem como expressão de saída CBAz ..= usando apenas uma porta NOR e um INVERSOR.

23. Use os teoremas de DeMorgan para converter DCBAy ++= em uma expressão que contenha inversões apenas em variáveis simples.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 54

2- MAPA DE VEITCH KARNAUGH

O mapa de Veitch Karnaugh, ou simplesmente mapa de Karnaugh, é o método gráfico mais simples e mais utilizado na análise, projeto e simplificação de circuitos digitais.

É constituído por um plano bidimensional dividido em partes chamadas células; o número de células de um mapa de Karnaugh tem estreita relação com o número de variáveis da função. Observe o mapa de duas variáveis a seguir:

A A

B

B

O padrão de construção deste método gráfico está explicitado no mapa de Karnaugh de duas

variáveis acima: perceba que as variáveis e seus complementos identificam duas células cada do plano dividido em quatro células.

A ordem de colocação das variáveis e complementos não importa, o que é de fato muito importante para o bom desempenho do mapa é que as variáveis devem estar diretamente em oposição aos seus complementos, ou seja, se o mapa for desenhado com a variável A numa das colunas seu

complemento A deve estar na coluna oposta, assim como a variável B deve estar na linha (ou na coluna) oposta à B . Observe os exemplos a seguir:

A A B B B B

B A A

B A A

Deste modo cada célula do mapa é identificada por duas variáveis, assim sendo cada célula

constitui um termo possível em uma função de duas variáveis:

B B

A BA AB

A BA BA

A seguir, é mostrado o mapa de três variáveis:

A A

B

B

C C C

Visto que já existem no mapa anterior 2 colunas e 2 linhas, para a construção de um mapa de

3 variáveis é necessário “encaixar” uma terceira variável dividindo-se as colunas.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 55

O que foi dito anteriormente a respeito da colocação das variáveis para a identificação de cada linha e coluna é válida também para o mapa de três variáveis, aliás, tal regra é válida para qualquer mapa de Karnaugh.

Assim temos neste mapa cada variável identificando quatro células. Deste modo cada célula

representa um termo possível em funções de três variáveis:

A A

B ABC CAB CBA BCA

B CBA CBA CBA CBA

C C C

NOTA: perceba que o número de células de um mapa de Karnaugh é o mesmo número de linhas de

uma tabela verdade de mesmo número de variáveis, assim sendo sua construção obedece à mesma fórmula:

onde: V = Número de variáveis;

C = Número de células. O mapa de Karnaugh de três variáveis é, na verdade, a planificação de um objeto

tridimensional de maneira semelhante ao já conhecido mapa mundi que todos sabem tratar-se de uma representação bidimensional de um globo.

Considerando-se este fato fica fácil entender, como exemplos, que a célula ABC é

adjacente à BCA , pelo mesmo motivo a célula CBA é adjacente à CBA . Fenômeno semelhante ocorre com o mapa de quatro variáveis, apresentado a seguir com

suas células previamente identificadas:

A A

DCAB DCAB DCBA DCBA B C

DCBA DCBA DCBA DCBA

DCBA CDBA CDBA DCBA B

C DABC ABCD BCDA DBCA B

D D D

Agora, para “encaixarmos” uma quarta variável, foi necessária a divisão das linhas. Neste mapa em particular não somente as laterais são adjacentes por efeito de sua

tridimensionalidade, mas também a borda superior é adjacente à inferior; como exemplo, temos que no

mapa acima a célula DCBA é adjacente à DCBA , BCDA é adjacente à DCBA , e a célula DCAB

é, ao mesmo tempo, adjacente à DCBA e DABC .

2V = C

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 56

Observe agora como utilizar o mapa de Karnaugh para simplificar uma função:

BAABY +=

Primeiramente identificamos cada termo da função em suas respectivas células:

B B

A 1

A 1

NOTA: qualquer símbolo pode ser utilizado para “marcar” a célula que corresponde a um termo da função, porém o mais utilizado é o bit 1, talvez para lembrar ao projetista que tal termo foi originado de uma linha da tabela onde a função é igual a 1. Em conseqüência as outras células não marcadas possuem valor 0.

Depois formamos malhas com todas as células adjacentes:

B B

A 1

A 1

Neste caso temos um par (malha de duas células). Depois identificamos a malha com referência a TODAS as variáveis e seus complementos

da seguinte forma:

� A malha está em A? R: sim; � A malha está em A ? R: sim; � Conclusão: A malha não é A, nem é A .

NOTA: esta conclusão se deve à eliminação através da propriedade dos complementos da álgebra booleana:

( ) ( ) XXAAX ==+ 1

� A malha está em B? R: sim; � A malha está em B ? R: não; � Conclusão: A malha é B.

Portanto, temos a simplificação da função:

BY =

Observe os outros exemplos a seguir:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 57

HJFFHJJHFW ++=

F F

H 1 1

H 1

J J J

Você percebeu que não foi formada uma malha de três células, mas duas malhas de duas

células cada? A regra é a seguinte: uma malha do mapa de Karnaugh só poderá conter um número de

células que seja potência de 2. Portanto, até o mapa de quatro variáveis, as malhas somente conterão 2, 4, 8 ou 16 células. Identificamos, então, a primeira malha:

F F

H 1 1

H 1

J J J

� A malha está em F? R: sim; � A malha está em F ? R: não; � Conclusão: A malha é F. � A malha está em H? R: sim; � A malha está em H ? R: sim; � Conclusão: A malha não é H, nem é H .

� A malha está em J? R: sim; � A malha está em J ? R: não; � Conclusão: A malha é J.

Neste caso, se a malha é F e J, isto significa que a identificação da malha é: FJ ou F.J . Prosseguimos com a identificação da Segunda malha:

F F

H 1 1

H 1

J J J

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 58

Através do processo visto anteriormente identificamos a malha como: HJ ou H.J . Podemos gerar a função W com as malhas FJ ou HJ, portanto a função simplificada é a

seguinte:

HJFJW += Utilizando álgebra o projetista pode ainda optar por reduzir a função simplificada acima:

( )HFJW += Outro exemplo:

LGEGLELGEEGLY +++=

E

G 1 1

1 1

L

Você se lembra de que o mapa de três variáveis possui as laterais adjacentes, como um mapa

mundi? Observe:

E

G 1 1

1 1

L

Neste caso temos uma quadra (malha de quatro células):

LY =

NOTA: foi formada uma quadra no lugar de dois pares porque quanto maior for a malha maior será a simplificação. Isto ocorre em qualquer caso.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 59

DCBADCBADCBADCBADCBA

DCBADCBADCBADCBADCBADCBADCBAV

...............

.....................

++++

+++++++=

Agora temos duas oitavas (malhas de oito células); basta lembrar que o mapa de quatro

variáveis possui, além das laterais, as bordas superior e inferior adjacentes:

A A

1 1 1 1 B C

1 1

1 1 B C

1 1 1 1 B

D D D

BAV +=

CDBACDBABCDAABCDDCBADCBADCBADCABZ +++++++=

A A

1 1 D B

1 1

1 1 D

B 1 1 D

C C C

Duas quadras:

CDDCZ +=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 60

DCBACDBACDBADCBADBCADABCX +++++=

A A

1 1 D B

1 1 1 1 D

B D

C C C

Agora é um par e uma quadra:

DBDBCX +=

3- FUNÇÕES INCOMPLETAS

Existem funções booleanas incompletas, que são aquelas em que certos termos não possuem alguma (s) variável (is). Observe alguns exemplos abaixo:. Funções incompletas de três variáveis:

CBACABCAY ++=

CBABAW +=

ACCABBAZ ++= Funções incompletas de quatro variáveis:

DCBABCDBCDCBDCABV ++++=

DABDCBDBCAX ++=

BCDBCADBCABCU +++=

Para simplificar funções incompletas de três variáveis através do mapa de Karnaugh, basta lembrarmos de alguns detalhes a respeito do mapa de três variáveis:

Termos de 3 variáveis identificam células; Termos de 2 variáveis identificam pares; Termos de 1 variável identificam quadras.

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 61

Então simplificamos a função Y da seguinte forma: Por ser uma função de três variáveis, colocamos o primeiro termo no mapa correspondente:

B

1

A

C

Agora o segundo termo que na verdade trata-se de um par:

B

1 1 1

A

C

Em seguida o terceiro termo:

B

1 1 1 1 A

C

Por fim, a simplificação:

B

1 1 1 1

A

C

AY =

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 62

Acompanhe agora os mesmos procedimentos para a função W: Primeiro termo:

A

C 1

1

B

E o segundo termo:

A

C 1

1

B

Neste caso a célula do segundo termo coincidiu com uma das células do primeiro, o que não

causa problema algum no processo. Por fim, a simplificação:

A

C 1

1

B

BAW =

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 63

Para a função Z temos dois pares e uma célula:

C

1 1

B 1 1

A

AZ =

Para as funções incompletas de 4 variáveis o processo é o mesmo com as seguintes

considerações:

Termos de 4 variáveis identificam células; Termos de 3 variáveis identificam pares; Termos de 2 variáveis identificam quadras; Termos de 1 variável identificam oitavas.

Acompanhe a função V, com a inserção do primeiro termo:

A

1 B

D

C

Segundo termo, que é um par:

A

1 B

1 1

D

C

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 64

Terceiro termo, uma quadra:

A

1 1 1 B

1 1 1 1

D

C

Quarto termo, que coincide com duas células da quadra anterior, ou seja, sem problemas:

A

1 1 1 B

1 1 1 1

D

C

Último termo:

A

1 1 1 1 B

1 1 1 1

D

C

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 65

Por fim, a simplificação:

A

1 1 1 1 B

1 1 1 1

D

C

BV =

Para a função X o processo é o mesmo, acompanhe:

B

1 1

1 1 D

C

A

DBX =

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 66

Analise agora o processo para a função U:

D

A

1 1

1 1 C

B

BCU =

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 67

4- CASOS QUE NÃO ADMITEM SIMPLIFICAÇÃO

Existem funções booleanas que não admitem simplificação, nem mesmo pelo mapa de Karnaugh. Observe alguns exemplos a seguir:

BAABY += BABAZ +=

CBAABCW +=

CBABCACBACABU +++=

DCBABCDADCABX ++=

DCBADCBADCBABCDACDBADABCDCBADCABV +++++++=

Há duas formas de se contornar este problema: A primeira delas é utilizar apenas um tipo de porta lógica para implementar tais funções;

uma bastante utilizada por motivos de custo e facilidade de implementação é a porta NAND. Também é possível a implementação de funções comparadoras utilizando portas XOR ou XNOR.

Implementando a função com um tipo de porta lógica utilizaremos apenas um único tipo de CI, o que torna o circuito fisicamente menor apesar da função não ter sido simplificada de forma convencional.

O segundo método bastante utilizado para implementar funções que não admitem simplificação é a utilização de multiplexadores. Tais circuitos funcionam como chaves seletoras digitais e possibilitam a implementação de qualquer tipo de circuito digital básico. Este circuito e sua utilidade serão mostrados em detalhes no próximo módulo.

A) Implementação com portas NAND Isto é conseguido aplicando-se o teorema de De Morgan e a propriedade da múltipla

negação:

BA . ABY

BAABBAABY

=

+=+=

NOTA: mais à frente veremos como fazer com que uma porta lógica execute uma função diferente da que ela gera. Deste modo as inversoras do CKT acima seriam substituídas por portas NAND que executem a função NOT, tornando o referido CKT ainda menor fisicamente.

CBA . ABCW

CBAABCCBAABCW

=

+=+=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 68

DCBA . BCDA . DCABX

DCBABCDADCABDCBABCDADCABX

=

++=++=

B) Implementação com portas XOR ou XNOR (funções comparadoras) Existem funções específicas que podem ser implementadas apenas com portas XOR ou

XNOR. A fim de facilitar a identificação das mesmas, começaremos a análise pelos casos mais

simples, ou seja, extraindo as funções das portas XOR e XNOR:

XOR XNOR

BABA + ABBA +

A A A A

B 1 B 1

B 1 B 1

Estas funções apresentam uma característica bem particular: o mapa de Karnaugh apresenta

suas células marcadas distribuídas como num tabuleiro de xadrez. Portanto temos a seguir algumas das funções comparadoras, ou seja, podem ser

implementadas apenas com portas XOR ou XNOR; observe seus mapas de Karnaugh:

BAABY += A A

B 1

B 1

BABAZ += A A

B 1

B 1

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 69

CBABCACBACABU +++=

C

1 1

B 1 1

A

DCBADCBADCBABCDACDBADABCDCBADCABV +++++++=

A

1 1 B

1 1

1 1 D

1 1

C

No caso das portas comparadoras (XOR e XNOR), como já visto em capítulos anteriores,

sabemos que ambas as funções são complementares (inversas entre si), portanto as seguintes igualdades são válidas:

BABA ⊗=⊕ ou BABA ⊗=⊕

Para três variáveis, isto não é verdadeiro! Vamos começar a análise lembrando que as portas comparadoras possuem apenas duas

entradas, portanto as funções XOR e XNOR de 3 variáveis devem ser implementadas, cada uma, de um dos 3 modos seguintes:

( ) ( ) ( )CABCBACBACBAXOR ⊕⊕=⊕⊕=⊕⊕=⊕⊕→

( ) ( ) ( )CABCBACBACBAXNOR ⊗⊗=⊗⊗=⊗⊗=⊗⊗→

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 70

Analise agora cada um destes casos através da tabela verdade:

A B C ( )CBA ⊕⊕ ( ) CBA ⊕⊕ ( )CAB ⊕⊕ 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1

A B C ( )CBA ⊗⊗ ( ) CBA ⊗⊗ ( )CAB ⊗⊗ 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1

Perceba que todas as funções de ambas as tabelas são exatamente iguais. Concluímos então, que com três variáveis ocorre o fenômeno da igualdade entre as funções

XOR e XNOR:

CBACBA ⊗⊗=⊕⊕ ou CBACBA ⊗⊗=⊕⊕ Se semelhante análise for feita com quatro e cinco variáveis teremos a seguinte constatação:

DCBADCBA ⊗⊗⊗=⊕⊕⊕ EDCBAEDCBA ⊗⊗⊗⊗=⊕⊕⊕⊕

Com isto chegamos às seguintes conclusões:

���� Para um número PAR de variáveis as funções XOR e XNOR são COMPLEMENTARES; ���� Para um número ÍMPAR de variáveis estas mesmas funções são EQUIVALENTES.

Para que se possa identificar corretamente qual das portas (XOR ou XNOR)

verdadeiramente corresponde à tabela de uma determinada função que se deseja implementar, devemos seguir alguns procedimentos:

Primeiramente verificamos se a expressão a ser simplificada se trata de uma função comparadora, ou seja, se é possível implementá-la utilizando apenas portas XOR ou XNOR. Para isto, analisamos o mapa de Karnaugh e observamos se o mesmo tem o aspecto de tabuleiro de xadrez.

Em caso afirmativo, comparamos as quatro primeiras linhas da tabela verdade com a porta XOR, apenas, visto que, como foi observado acima, pode haver complementação ou semelhança com a função XNOR, gerando possível confusão. Daí utilizarmos apenas a função XOR como referência de comparação.

Observe o exemplo a seguir, que mostra a tabela-verdade da função U seguida de sua implementação:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 71

A B C U 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0

Ao se tentar extrair a expressão e simplificá-la, obtém-se o que se segue:

CBABCACBACABU +++=

C

1 1

B 1 1

A

Nota-se que, além da função não apresentar simplificação possível, ela possui o aspecto de

tabuleiro de xadrez, ou seja, é uma função comparadora, portanto é possível a sua implementação utilizando apenas portas comparadoras.

Para efetuar esta simplificação, observemos as 4 primeiras linhas de sua tabela:

A B C U 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0

Perceba que as quatro primeiras linhas correspondem à tabela da porta XOR negada ( XOR ). Vamos resumir o que concluímos até aqui para a função U: � É uma função comparadora (Karnaugh como tabuleiro de xadrez); � As 4 primeiras linhas indicam a função XOR ; ���� É uma função de 3 variáveis (número ímpar), então XNORXOR = . Considerando-se então os aspectos acima, a função U pode ser implementada, de modo

reduzido, com uma das soluções abaixo:

( ) ( ) CBACBAU ou CBACBAU ⊗⊗=⊗⊗=⊕⊕=⊕⊕=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 72

OU

Para entender ainda melhor a implementação dos circuitos acima, atente para os seguintes detalhamentos:

Para o 1° circuito:

BABA ⊗=⊕

=

Para o 2° circuito:

BABA ⊕=⊗

= Outro exemplo:

A B C D V 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0

Com a extração e simplificação temos o que se segue:

DCBADCBADCBABCDACDBADABCDCBADCABV +++++++=

A

1 1 B

1 1

1 1 D

1 1

C

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 73

Analisando esta situação, chegamos às seguintes constatações: � É uma função comparadora (Karnaugh como tabuleiro de xadrez); � As 4 primeiras linhas indicam a função XOR; ���� É uma função de 4 variáveis (número par), então XNORXOR = . Com estas conclusões, poderemos implementar a função V de um dos 2 modos a seguir:

( ) ( ) ( ) ( )DCBADCBAV ou DCBADCBAV ⊗⊗⊗=⊗⊗⊗=⊕⊕⊕=⊕⊕⊕=

OU

Podemos então resumir o que foi visto até aqui com a tabela abaixo, lembrando que estas

regras só se aplicam se estivermos trabalhando com uma função comparadora:

4 primeiras linhas da tabela Nº de variáveis

XOR XOR

PAR ....

ou ....

⊗⊗⊗⊗

⊕⊕⊕⊕

DCBA

DCBA

....

ou ....

⊗⊗⊗⊗

⊕⊕⊕⊕

DCBA

DCBA

IMPAR ....

ou ....

⊗⊗⊗

⊕⊕⊕

CBA

CBA ....

ou ....

⊗⊗⊗

⊕⊕⊕

CBA

CBA

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 74

VII- CIRCUITOS COMBINACIONAIS

Como já foi definido em capítulos anteriores, todos os circuitos que vimos anteriormente são classificados como circuitos combinacionais, ou seja, circuitos digitais cujo estado da saída depende única e exclusivamente do estado das entradas.

No projeto de circuitos combinacionais, é essencial a utilização de técnicas que venham a facilitar a sua concretização, além de eliminar uma série de erros advindos de falhas de interpretação do problema proposto. Veremos adiante a correta seqüencia e aplicação destes métodos.

Mas antes, veremos técnicas que possibilitam uma maior simplificação física com a reutilização de circuitos integrados de portas universais já presentes em uma etapa inicial de um projeto qualquer.

Como bem sabemos, as portas NAND e NOR são classificadas como UNIVERSAIS, o que significa que qualquer tipo de circuito pode ser implementado com o uso destas portas, inclusive outras portas lógicas.

Perceba a grande utilidade deste fato se considerarmos, como exemplo, a necessidade da inserção de uma porta OR em determinada parte do circuito, e implementarmos esta mesma porta utilizando 3 portas NAND disponíveis em CI’s já utilizados na implementação do projeto.

Veremos a seguir como isto é possível:

1- IMPLEMENTAÇÃO UTILIZANDO PORTAS LÓGICAS UNIVERSAIS

Aqui veremos como implementar qualquer tipo de porta lógica utilizando portas universais. Isso pode ser necessário em diversas situações, um exemplo é a urgência em se utilizar uma determinada função lógica que não está disponível na bancada do projetista ou do mantenedor. Outro exemplo é a simplificação do circuito projetando-o com um único tipo de porta lógica ou utilizando as que estão “sobrando” num CI já utilizado no circuito.

Analise agora todos os casos acompanhados de suas respectivas técnicas: A) Implementar portas NOT utilizando NAND

Analise atentamente a tabela de uma porta NAND. Para facilitar a análise, divide-se a tabela

em duas metades:

A B Y 0 0 1 0 1 1 1 0 1 1 1 0

Perceba uma particularidade na metade inferior:

A B Y 0 0 1 0 1 1 1 0 1 1 1 0

Chegamos à seguinte conclusão: se uma das entradas estiver fixa em nível 1, a saída será

o inverso da outra entrada. Assim sendo, podemos implementar uma inversora utilizando uma porta NAND do seguinte modo:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 75

Analisando agora a primeira e a última linha da mesma tabela, nota-se outra particularidade:

A B Y 0 0 1 0 1 1 1 0 1 1 1 0

Com isto, chegamos à outra conclusão: se as entradas forem iguais, a saída será o inverso

destas entradas:

B) Implementar portas NOT utilizando NOR

Basta fazer a mesma análise do caso anterior. Assim, chegamos a conclusões semelhantes, confira:

A B Y

0 0 1 � 0 1 0

1 0 0 1 1 0 �

C) Implementar portas AND utilizando NAND

Utilizando a propriedade da múltipla negação, sabemos que negar duas vezes é o mesmo que não negar, portanto para obter a função AND a partir da NAND basta negar a saída desta, com uma NOT obviamente:

ABABY ==

D) Implementar portas OR utilizando NOR

Assim como no caso anterior, utiliza-se a propriedade da dupla negação:

BABAY +=+=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 76

E) Implementar portas AND utilizando NOR

Utilizando o teorema de De Morgan, observe que:

BABA . =+ Para que a função AND “apareça” na função NOR, as negações de entrada devem

“desaparecer”. Se bastante atenção for dada nos procedimentos anteriores, resolveremos este problema

facilmente utilizando-se da propriedade da múltipla negação:

BABA . =+

ABB . A B . A ====→→→→ Assim Sendo, para que uma porta NOR execute a função AND, basta negar as

entradas, com portas NOT é claro:

ABBABAY ==+= .

F) Implementar portas OR utilizando NAND

Utilizando a mesma análise anterior, partindo da porta NAND, chega-se à seguinte conclusão:

B AA.B +=

BAB A B A +=+→+

BABABAY +=+== .

G) Implementar portas NOR utilizando NAND

Basta aplicar uma porta NOT (em branco) na saída de uma OR (em destaque):

BABABAY +=+== .

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 77

H) Implementar portas NAND utilizando NOR

Basta aplicar uma porta NOT (em branco) na saída de uma AND (em destaque):

ABBABAY ==+= .

I) Implementar portas XOR utilizando NOR

Primeiramente extraímos a função XOR de sua tabela:

A B Y 0 0 0 0 1 1 � 1 0 1 � 1 1 0

BABAY +=

Agora basta implementar a função extraída com o que foi visto até aqui: 2 inversoras (1), 2

portas AND (2) e uma porta OR (3):

BAY ⊕=

Aplicando a propriedade da dupla negação nas portas em destaque, 4 portas ainda podem ser

eliminadas tornando o circuito ainda mais simples:

BAY ⊕=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 78

J) Implementar portas XOR utilizando NAND

Assim como no caso anterior, basta aplicar o que foi visto até aqui, implementando a expressão da porta XOR com 2 inversoras (1), 2 portas AND (2) e uma porta OR (3):

BAY ⊕=

Aplicando dupla negação nas portas em destaque temos:

BAY ⊕=

K) Implementar portas XNOR utilizando NOR

Para este caso, utiliza-se o mesmo processo visto anteriormente, ou seja, basta extrair a expressão da porta XNOR e implementá-la utilizando 2 inversoras, 2 portas NAND e uma porta OR, além de eliminar 4 portas utilizando a propriedade da múltipla negação:

BAY ⊗=

L) Implementar portas XNOR utilizando NAND

Idem:

BAY ⊗=

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 79

2- TÉCNICAS DE PROJETO É muito importante conhecer as técnicas básicas de projeto de circuitos combinacionais para

a implementação de soluções eficientes em forma de circuitos digitais. Basicamente o que veremos neste capítulo é um pouco mais de detalhamento sobre

processos já explanados em capítulos anteriores. Essencialmente um projeto constitui-se basicamente de análise do problema e aplicação das

técnicas básicas, com bastante rascunho e análise do circuito no papel; a montagem propriamente dita e verificação do funcionamento a nível de bancada são as últimas etapas do processo.

Vamos agora relembrar estas técnicas básicas projetando circuitos combinacionais que resolvem problemas relativamente simples.

Exatamente como vimos alguns capítulos atrás, vamos primeiramente analisar as propostas a seguir de forma binária, para após, montarmos a tabela-verdade, efetuarmos a extração da função, simplificá-la e implementar o circuito:

A) Circuito eleitor

� Projetar um circuito eleitor que determine a decisão da maioria dentre 3 participantes (se são a favor ou contra um determinado assunto). O circuito deverá mostrar a decisão correspondente em sua saída.

Sugere-se as seguintes proposições:

A favor = 1 Maioria a favor = 1 Participantes (A, B e C)

Contra = 0

Decisão (Y)

Maioria contra = 0

A seguir, montamos a tabela verdade, extraímos a função e simplificamos:

A B C Y 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1

ABCCABCBABCAY +++=

ABACBCY ++=

Por fim, montamos o circuito:

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 80

Observe agora o próximo exemplo:

B) Detector de pares

� Projetar um circuito que detecte um número par de chaves fechadas de um total de três chaves.

Para isto seguimos todos os passos vistos anteriormente:

Fechada = 1 Par = 0 chaves (C1, C2 e C3) Aberta = 0

Chaves fechadas

(S) Impar = 1

C1 C2 C3 S 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1

3.2.13.2.13.2.13.2.1 CCCCCCCCCCCCS +++=

321

ou 321

CCCS

CCCS

⊗⊗=

⊕⊕=

Ou

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 81

C) Controle de semáforo

� Projetar um sistema de comutação que controle dois semáforos de um cruzamento por meio de sensores localizados no asfalto, de modo que se houver um carro na rua A, por exemplo, o semáforo A “abre” e o outro semáforo “fecha”; funcionamento semelhante para o semáforo B se houver um carro na rua B. Havendo um carro em cada rua, a preferencial é a rua A.

Com carro = 1 Aberto = 1 Sensores (CA, e CB) Sem carro = 0

Semáforos (SA e SB) Fechado = 0

CA CB SA SB 0 0 X X 0 1 0 1 1 0 1 0 1 1 1 0

O “X” no lugar de um nível lógico indica a situação de irrelevância, ou seja, a definição de

um nível lógico neste ponto é irrelevante; neste caso o X pode ser substituído por 0 ou por 1 que tal substituição não trará efeitos decisivos para o circuito.

No exemplo acima, temos que na primeira linha não haverá nenhum carro em nenhuma das ruas, portanto não faz diferença qual dos semáforos deve abrir e qual deve fechar; nesta situação podem até mesmo estarem ambos fechados ou abertos.

As situações irrelevantes ocorrem em boa parte dos projetos digitais, e o que se faz é aproveitá-las, substituindo-as pelos níveis lógicos que forem mais convenientes no momento da simplificação. Desta forma, teremos circuitos mais simplificados do que no caso de considerar as situações irrelevantes com níveis fixos.

Acompanhe a simplificação para a função SA:

CA

1

CB 1 X

Perceba que para a função SA ficou mais conveniente substituir a situação irrelevante X pelo

nível 0. Portanto a função SA fica assim simplificada:

CASA =

Acompanhe agora a simplificação da função SB:

CA

1

CB X

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 82

Agora a simplificação ficará maior se o estado irrelevante for substituído por 1, logo a função SB fica descrita assim:

CASB =

Com a simplificação das funções SA e SB chegamos à conclusão de que o sensor CB é desnecessário no sistema e pode ser retirado do projeto.

Após estas considerações, resta a implementação do circuito que comutará os dois semáforos:

Tais técnicas básicas são importantes para a implementação de qualquer circuito combinacional e para o entendimento dos circuitos que veremos no próximo módulo.

Boa sorte e bons estudos

Técnicas Digitais - 3ª Mecatrônica – Colégio Delta 83

VIII- BIBLIOGRAFIA:

ELEMENTOS DE ELETRÔNICA DIGITAL - IDOETA, Ivan V; CAPUANO, Francisco G. – 40ªed. – Editora Érica Ltda. – São Paulo – 2007; OS NÚMEROS: A HISTÓRIA DE UMA GRANDE INVENÇÃO - IFRAH, Georges – 3ªed. – Editora Globo. – 1985; CIRCUITOS DIGITAIS - LOURENÇO, Antônio C. de; CRUZ, Eduardo C. Alves; FERREIRA, Sabrina Rodero; CHOUERI Júnior, Salomão; – 4ªed. - Editora Érica Ltda. – São Paulo – 1996. CIRCUITOS DIGITAIS E MICROPROCESSADORES – TAUB, Herbert – Editora McGraw Hill do Brasil Ltda – São Paulo – 1984. APOSTILA DA DISCIPLINA DE ELETRÔNICA DIGITAL, Módulo Único – LIGIÉRO, Eduardo de Albuquerque; PAULO VITOR Brito Mendes - Comando da Aeronáutica, Escola de Especialistas de Aeronáutica – Guaratinguetá, SP - 2008. SISTEMAS DIGITAIS, PRINCÍPIOS E APLICAÇÕES - TOCCI, R. j; WIDMER, N. S; MOSS, G. L - 10ªed. - Editora Pearson - 2007.