Вы находитесь на странице: 1из 101

Vitor M. P.

Vargas / IST

Sistemas Digitais (Part I)

Page 1 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 2 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Apresentao

Page 3 of 101

/ 1 Projecto

Esta Apresentao diz respeito a uma disciplina, de seu nome Sistemas Digitais, leccionada no Instituto
Superior Tcnico, em Lisboa. Esta uma escola de Engenharia, isto : subentende-se que a audincia est ali
para aprender a lidar com Projectos (de uma ndole particular) em benefcio da sociedade humana. Pelo que ser
algo natural desenrolar a Apresentao precisamente em torno de um Projecto concreto seguindo uma
abordagem que faa sobressair o que cabe na designao Sistemas Digitais, as competncias que os estudantes
devero adquirir ao longo do semestre, os meios facultados para os apoiar e os mtodos de avaliao.
O Projecto vem a ser o seguinte: concretizar um circuito que viabilize o acender/apagar de uma lmpada a
partir de um ou mais locais, cada um provido do seu interruptor.
I. Na primeira situao, a mais simples, existe um interruptor apenas: quem no ter j deparado com uma sala
em cujo tecto se encontra uma lmpada comandada por um interruptor junto da porta nica de acesso sala?
Intuem-se os dispositivos subjacentes a tal configurao e o pertinente circuito, i.e., a maneira de os interligar
para conseguir o funcionamento pretendido, vid fig I: uma fonte de energia elctrica (sem perda de generalidade:
o quadro elctrico fornecendo uma tenso de 220 Volt) e um par de fios entre essa fonte e a lmpada em que
algures se interpe um interruptor (I) de 2-contactos On/Off: Uma das posies do interruptor fecha o circuito e
a lmpada acende; invertendo a posio do interruptor, o circuito fica aberto, e a lmpada apaga-se...
II. Dir o leitor: isto at eu sei, no h aqui nada de novo... Considere-se ento uma situao no to simples:
uma escada coberta por uma lmpada a comandar por dois interruptores, B e T: um no sop, e outro no topo...
Obviamente, estender a soluo precedente pelo artifcio de, entre a fonte de energia elctrica e a lmpada,
interpor em srie dois interruptores de 2-contactos no garante o funcionamento pretendido. Seja, por ex., o caso
de algum estar a subir a escada (de B para T) com a lmpada acesa o que se logra posicionando os
interruptores como se indica na fig II.A. Ao chegar ao topo, inverte a posio do interruptor a existente (para que
a lmpada se apague: poupana de energia oblige)... Se logo aps chegar algum mais ao sop da escada para
tambm a subir, de nada lhe servir inverter a posio do interruptor a mo: a lmpada continuar apagada!
A soluo, dir-lhe- o seu fornecedor de material elctrico, estar em usar, agora, uns assim designados
comutadores de escada na prtica, interruptores de 3-contactos e, entre eles, dispor dois fios, vid fig II.B...
Para o confirmar, reveja-se o caso de algum estar a subir a escada com a lmpada acesa o que se pode lograr
com a posio dos interruptores esquematizada na figura. Ao chegar ao topo, inverte a posio do interruptor a
existente com o que a lmpada se apagar... Se logo aps chegar algum mais ao sop da escada para tambm a
subir, bastar-lhe- inverter a posio do interruptor a existente: a lmpada voltar a acender!
III. Aborde-se agora uma situao ainda menos simples: uma sala com trs portas; sala coberta por uma nica
lmpada mas que se pretende que seja comandada por trs interruptores, um em cada uma daquelas portas.
A soluo, dir-lhe-o na loja de material elctrico, ser usar, alm de dois comutadores de escada (sejam W e
E), um designado inversor duplo C, e interlig-los por dois fios, como mostra a fig III... Um inversor duplo
um interruptor de 4-contactos; nomeando-os de NW, NE, SE e SW, esse inversor garante que, a cada momento,
todos eles se encontram ligados entre si, dois a dois: ou {NW a SE e NE a SW} ou {NW a NE e SW a SE}.
Constata-se que, estando os interruptores posicionados como se indica na fig III, a lmpada acende... Se se
inverter algum deles, ela apaga-se; se depois se inverter qualquer um deles, a lmpada volta a acender...
IV. No custa imaginar outros cenrios mais complexos: nomeadamente, substituir os interruptores por botes
de presso que, quando premidos, levam a lmpada a acender por trs minutos, etc., etc.: Mas por ora chega...
Est na hora de comparar as vrias verses do Projecto entre mos... Salta vista que algo permanece de uma
para a outra: um subsistema de iluminao envolvendo a fonte de energia, fios e uma lmpada. Algo vai
mudando, todavia: o subsistema que o controla que envolve os interruptores e os fios que os interligam. Porm, e
este o ponto que importa agora salientar, no h como separar um do outro: percorrendo as vrias solues
esquematizadas, notrio que, em todas elas, o controlo est integrado no prprio subsistema a controlar.
Precisamente, a soluo de Sistemas Digitais/Lgicos outra. o que se ir ver a seguir.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 4 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Apresentao

Page 5 of 101

/ Pensar Lgico

A figura esquematiza a arquitectura duma soluo Lgica/Digital para a verso 2-interruptores do Projecto
enunciado. Como expectvel, l est o subsistema a controlar i.e., a fonte de energia elctrica, a lmpada e o par
de fios que os interliga... Mas no horizonte h algo de novo: um Circuito de Deciso... De que se trata?
Como o nome o indica, trata-se de um circuito com a finalidade de decidir se a lmpada deve acender ou
apagar e sinalizar essa sua deciso numa sada, L;
Essa deciso no toa: determinada pelos sinais que o circuito recebe nas suas entradas, {B, T} que, no
caso, devem traduzir pari passu a posio dos interruptores.
Agora, ntida a separao entre o subsistema a controlar e o subsistema que o controla: de comum, apenas um
assim designado Interruptor electrnico cuja funo habilitar o acender/apagar da lmpada seguindo as
indicaes que recebe do Circuito de Deciso.
Precisamente, o foco da disciplina a que esta Apresentao diz respeito o desenho de Circuitos de Deciso;
fica relegada para outras disciplinas a familiarizao com o supracitado Interruptor electrnico, e bem assim com
os demais dispositivos em jogo: fonte de energia elctrica, lmpada...
Em termos gerais, o desenho de Circuitos de Deciso envolve duas etapas: antes de mais, uma especificao de
como ele deve operar e que na prtica se resume ao preenchimento de uma assim designada Tabela de Verdade; e
depois a materializao dessa especificao mediante os tijolos (mais formalmente: circuitos integrados ou,
mais brevemente: ICs ou chips) que o mercado disponibiliza para o efeito. Sem mais delongas, ir-se- abordar a
especificao para o Projecto concreto entre mos deixando para as pginas seguintes a sua materializao fsica
A deciso que o Circuito de Deciso oferece na sua sada L s pode ser uma entre duas possveis: acender
ou apagar. Ela baseia-se nos valores recebidos nas entradas {B, T} que devem seguir pari passu o estado dos
interruptores; cada um s pode assumir duas posies sem perda de generalidade: para cima ou para baixo.
Como se relaciona essa deciso com os estados dos interruptores: quais as situaes que conduzem ao acender
da lmpada e, outrossim, quais as que conduzem ao seu apagar?
seja o caso em que ambos os interruptores se encontram para o mesmo lado, por ex., para-cima; sem
perda de generalidade, ser pacfico aceitar que a lmpada se encontrar apagada...
admita-se que, nessa situao, um fulano comea a descer tendo o cuidado prvio de inverter a posio
do interruptor no topo da escada; a lmpada ir acender...
descida a escada, hora de o fulano inverter a posio do interruptor no sop da escada; com isso, ficam
ambos os interruptores para-baixo: a lmpada ir apagar...
Convm coligir estas observaes numa tabela: esquerda, listam-se as possveis combinaes dos estados
(p/cima e p/baixo) dos interruptores; direita, inscreve-se a correspondente deciso (apagar ou acender) a tomar...
Tal como se apresenta, essa tabela tem o seu qu de aborrecido: a escrita repetida das palavras para-cima e
para-baixo, apagar e acender leva o seu tempo... Pelo que ser compreensvel a sua compactao pelo artifcio
dito de codificao: substituir tais palavras por smbolos, a saber: 0 e 1.
para baixo e acender so substitudos/codificados por 1;
para cima e apagar so substitudos/codificados por 0
Tambm por mor de compactao, as designaes das colunas so substitudas por Literais: {B, T} e {L}...
O resultado global dessa substituio a assim designada Tabela de Verdade do Circuito de Deciso em causa.
(Formalmente, define uma funo L(B, T), cujo Domnio {00, 01, 10 e 11}, e cujo Contradomnio {0,1};
lida de cima para baixo, a coluna L vem a ser '0110, que alguma literatura designa de nmero designativo de L)
Nela, e com os pressupostos acima: quando ocorrer B=1, subentende-se: o interruptor B est para baixo; e
quando B=0, subentende-se: o interruptor B est para cima (Idem para as notaes T=1 e T=0). E, ao ocorrer
L=1, subentende-se: a lmpada L deve acender; e, quando L=0, subentende-se: a lmpada L deve apagar-se.
a partir da Tabela que se chega a um circuito fsico que concretiza o funcionamento requerido. Mas, antes de
abordar como se faz, hora de o leitor avaliar os seus progressos: o circuito acima responde a dois interruptores,
{B, T}... Considere-se porm uma lmpada comandada por trs interruptores; a Tabela de Verdade ir comportar,
esquerda, 3 colunas, {W, C, E}: qual o nmero designativo de L? (se respondeu 01101001, est de parabns)

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 6 of 101

Vitor M. P. Vargas / IST


Apresentao

Sistemas Digitais (Part I)

Page 7 of 101

/ 1 Soluo: com tijolos bsicos: AND, OR, NOT

Especificado um Circuito de Deciso atravs de uma Tabela de Verdade, a questo que se pe a seguir : como
materializ-la fisicamente? Adiantando desde j que a soluo no nica, intui-se: h que fazer um levantamento
dos chips que o mercado oferece, h que optar por alguns deles, e enfim h que os interligar.
(Durante a discusso da materializao, poder-se- experimentar algum sentimento de confuso e perplexidade
que, numa sesso de apresentao, ser quase inevitvel: o objectivo no ficar-se convencido que j s falta
um ferro de soldar que ficam na sombra muitos detalhes, por isso mesmo vai haver sesses dedicadas a cada
soluo e s ento se ficar capacitado para a concretizar. O importante : que se compreenda que a disciplina
interessante, enquanto se debrua sobre projectos prticos; que a sua abordagem lgica que est ao alcance de
qualquer um, no nada transcendente; que h uma multiplicidade de solues e que h que as dominar a todas
(nem que seja para no se perder face concorrncia)
Abaixo, aborda-se a materializao daquela Tabela de Verdade usando as gates elementares AND, OR e NOT.
Enunciado-SOP: Atente-se coluna L da Tabela... Ela assume o valor 1 em duas linhas s: quando {B=0 e
T=1}, e quando {B=1 e T=0}; nas restantes linhas, volve-se em 0. Com as conjunes (e e ou), pode verter-se
esta observao no seguinte enunciado:
L=1 se e s se: [(B=0) e (T=1)] ou [(B=1) e (T=0)]
O se e s se (abreviadamente, sse), acentua que se procede a um elenco exaustivo das combinaes de {B, T}
em que L=1: rejeitam-se aquelas em que L=0, e no fica de fora nenhuma das combinaes para as quais L=1.
(Atente-se conciso da linguagem: diz-se L=1, ou L igual a 1, para significar na sada L, o valor
lgico 1; e dir-se- B=0 ou B igual a 1 para significar que na entrada B, o valor lgico 0)
O enunciado acima explicita a dependncia de L relativamente s entradas {B, T}; nele, ocorrem apenas trs
tipos de operadores a saber: e, ou e no (subentende-se que inquirir se igual a 0 equivale a inquirir se
no igual a 1). Acontece que j desde o sculo passado vem o mercado disponibilizando chips que os
concretizam, chips esses que, no surpreender o leitor, se designam de ANDs, ORs e NOTs.
o AND um dispositivo com uma sada que 1 sse todas as suas entradas forem 1;
o OR um dispositivo com uma sada que 1 sse alguma das suas entradas for 1;
o NOT um dispositivo com uma sada que 1 sse a sua nica entrada for 0.
O mercado faculta chips assim, sob a designao de, respectivamente, SN7408, SN7432 e SN7404.
A estes chips esto associados smbolos grficos especficos; os mais antigos esto esquematizados ao lado.
Interligando-os seguindo pari passu o enunciado-SOP supracitado , chega-se ao logigrama embaixo, esquerda:
L=1 se e s se: [...] ou [...] traduz-se em: L a sada de um OR de 2-entradas;
[(...) e (...)] ou [(...) e (...)] traduz-se em: qualquer uma das entradas do OR um AND de 2-entradas;
[(B=0) e (T=1)], que caracteriza um desses ANDs, traduz-se em: uma das suas entradas fica directamente
ligada a T, mas a outra fica ligada a B atravs de um NOT (diz-se que a entrada B negada antes do AND);
[(B=1) e (T=0)], que caracteriza o outro AND, traduz-se em: uma das suas entradas fica directamente
ligada a B, mas a outra fica ligada a T atravs de um NOT.
Com isto, se, por ex., {B=0, T=1}, as entradas dos ANDs advm, respectivamente, {1,1} e {0,0} com o que
as respectivas sadas sero 1 e 0 pelo que a sada, L, do circuito, ser 1 como se pretende.
Adiantando que os chips SN7404 e SN7408 comportam, respectivamente, 2-NOTs e 2-ANDs, deduz-se que,
com trs chips (e, bem entendido, uma fonte de alimentao e fios), se conseguir concretizar o circuito!
Enunciado-POS: Atente-se ao enunciado-SOP a que se chegou acima:
A forma dele a de um ou de vrios es. E natural a interrogao: ser possvel chegar a um enunciado em
que suceda o contrrio, isto : um enunciado com a forma de um e de vrios ous? A resposta, diga-se j,
sim mas algo abstrusa; pelo que apresentada de imediato, protelando para outro momento o mtodo
genrico de o leitor a ela chegar:
L=1 se e s se: [(B=0) ou (T=0)] e [(B=1) ou (T=1)].
Para aceitar que o enunciado veraz, repare-se que a condio [(B=0) ou (T=0)] verificada nas trs primeiras
linhas da Tabela de L: a nica linha em que nem B nem T so 0 a ltima. J a condio [(B=1) ou (T=1)]
verificada nas trs ltimas linhas: a nica em que nem B nem T so 1 a primeira... Qual, ento, o conjunto de
linhas que satisfazem ambas as condies? Ora, entre {1, 2, 3} e {2, 3, 4}, o que comum {2, 3}: as linhas
que conduzem a L=1 so, exactamente, a segunda e a terceira: o enunciado-POS acima est, de facto, correcto!
Desse enunciado, e pressuposto que se entendeu a construo do logigrama embaixo esquerda, ser agora
pacfico chegar ao logigrama sua direita. Um logigrama cuja concretizao se bastar com, de novo, 3 chips s!

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 8 of 101

Vitor M. P. Vargas / IST


Apresentao

Sistemas Digitais (Part I)

Page 9 of 101

/ 2 Soluo: com NAND, NOR, XOR, XNOR

Elaborada a Tabela de Verdade, e concretizada numa interligao adequada dos chips AND, OR e NOT, eis uma
interrogao que ir pairar em todo o semestre: poder-se- conceber um outro circuito conforme mesmssima
Tabela? E, perguntar o leitor legitimamente, haver alguma vantagem nisso? altura de abordar essas questes.
Ademais das gates supracitadas, o mercado disponibiliza outras. Ao lado, assinalam-se quatro delas...
o NAND um dispositivo com uma sada que 0 sse todas as suas entradas forem 1;
o NOR um dispositivo com uma sada que 0 sse alguma das suas entradas for 1.
O mercado faculta chips assim, sob a designao de, respectivamente, SN7400 e SN7402.
Compare-se este funcionamento com o de um AND e o de um OR: constata-se que o NAND se comporta como
um AND seguido dum NOT (e um NOR se comporta como um OR seguido dum NOT). Isso sugere outra famlia de
Enunciados: conceba-se mentalmente uma outra Tabela, seja NOT-L obtida de L por substituio de 0 por 1
e vice-versa; o enunciado-SOP de NOT-L conduzir a um logigrama em que NOT-L a sada dum OR.
Justapondo-lhe um NOT i.e., substituindo tal OR por um NOR, a concluso pacfica: o resultado final ser L!
Ou seja: o foco agora vem a ser as linhas em que L se volve 0; enunciando L como um ou de es (um e
por cada uma dessas linhas), e, no correspondente logigrama, substituindo o OR por um NOR chega-se a L;
idem, se se enunciar L como um e de ous, e, no correspondente logigrama, substituir o AND por um NAND.
Enunciado-NOR: L assume o valor 0 em duas linhas somente: naquela em que (B=0) e (T=0), e naquela em
que (B=1) e (T=1). Pode verter-se esta observao no seguinte enunciado:
L=0 se e s se: [(B=0) e (T=0)] ou [(B=1) e (T=1)].
Entretanto, a condio [(B=0) e (T=0)] equivale a dizer que a linha que a satisfaz a nica em que no sucede
[(B=1) ou (T=1)]; e [(B=1) e (T=1)] equivale a dizer que a linha que a satisfaz a nica em que no sucede
[(B=0) ou (T=0)]. Com estes considerandos, o Enunciado acima pode ser reescrito em:
L=0 se e s se: {no-[(B=1) ou (T=1)]} ou {no-[(B=0) ou (T=0)]}.
Desse enunciado, e pois que justapondo um NOT a um OR se obtm um NOR, ser agora pacfico chegar ao
logigrama embaixo, direita. Um logigrama cuja concretizao se bastar com 2 chips apenas todos eles NORs!
Enunciado-NAND: Eis um enunciado alternativo para cobrir as duas linhas em que L=0:
L=0 se e s se: [(B=0) ou (T=1)] e [(B=1) ou (T=0)].
Ele pode reescrever-se em
L=0 se e s se: {no-[(B=1) e (T=0)]} e {no-[(B=0) e (T=1)]}.
Desse enunciado, e pois que justapondo um NOT a um AND se obtm um NAND, chega-se ao logigrama
embaixo, esquerda cuja concretizao se bastar com 2 chips apenas todos eles NANDs!
Logigrama-s-com XOR (Exclusive-OR):
o XOR um dispositivo com uma sada que 1 sse as suas duas entradas forem diferentes.
Um breve relance Tabela faz ressaltar que as linhas em que L=1 so precisamente aquelas em que B e T
so diferentes! Bastar um chip SN7486A ligando-lhe directamente as entradas B e T para gerar L
Logigrama-s-com XNOR (NOT-Exclusive-OR):
o XNOR um dispositivo com uma sada que 1 sse as suas duas entradas forem iguais.
Observe-se de novo que as linhas da Tabela em que L=1 so precisamente aquelas em que B e T so
diferentes: Para produzir L, bastar um chip SN74266 e proceder s ligaes representadas em baixo direita
Qui um exemplo possa ajudar a perceb-lo: admita-se que, em dado momento, acontece [(B=0) e (T=1)]...
Porquanto B e T estaro sendo diferentes, a sada W estar sendo 0; as entradas do XNOR-E estaro ento
sendo, ambas, 0, i.e., iguais e por conseguinte a sada, L, do circuito, ser 1 como se pretende.
Reveja-se o caminho percorrido: para uma dada Tabela, j se lograram 6 logigramas distintos: dois envolvendo
o trio OR-AND-NOT, um com dois NANDs, um com dois NORs, um com um XOR e um ultimo com um XNOR...
Quer dizer: solues com chips distintos, e, mais do que isso, requerendo diferentes quantidades de chips. Ora
est na altura de sublinhar: os chips no custam todos o mesmo, h uns mais caros que outros... Ademais, ter que
contemplar mais chips implica mais fios, uma superfcie maior, maior consumo de energia... Ao menos por estas
razes, adivinha-se uma preocupao no semestre: investigar vrias estratgias de materializao dos Circuitos.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 10 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Apresentao

Page 11 of 101

/ 3 Soluo: com decoder

A disciplina no tem um carcter meramente acadmico, antes se vai mesmo at concretizao real, fsica, dos
logigramas; nisso, uma preocupao maior dos estudantes ser a eficincia: os chips a usar no devem ser mais que
os estritamente necessrios, sob pena de requererem uma superfcie maior, de haver que ligar mais fios, etc, etc...
Nesse sentido, no ser surpresa a praxis dos fabricantes de disponibilizarem no mercado chips, que, se bem
que mais complexos do que os j abordados at aqui, habilitam a uma maior compactao do circuito fsico.
Um exemplo disso o assim denominado descodificador (decoder, no jargo anglo-saxnico a que, j o leitor
ter concludo, convm ir-se habituando...); este, ao invs dos dispositivos at agora considerados, exibe vrias
sadas. Ao lado, esquematiza-se o chip Texas-SN74139, de 4-sadas e 2-entradas de seleco (a seu tempo se
passaro em revista outras entradas dos decoders e a sua funcionalidade) .
Uma analogia que qui ajude a entender o seu funcionamento ser um vulgar semforo, com trs lmpadas
vermelha, amarela e verde: em cada momento somente uma delas dever estar activa/acesa, as demais mantendo-se
ento apagadas. Salvo em caso de mau-funcionamento, nunca se encontram duas delas acesas...
Precisamente, o decoder esquematizado um dispositivo em que a cada momento uma s das suas (quatro)
sadas dever estar activa, i.e., a 1 (as restantes ficando inactivas, i.e., a 0). Por mor de oferecer a possibilidade
de escolher qual ser ela, segue-se a seguinte praxis:
para as identificar, as sadas so etiquetadas com rtulos nicos a saber: 00, 01, 10 e 11;
para seleccionar a sada a ser activada, so disponibilizadas duas entradas, {S1S0}.
Doravante, se se quiser que seja activada a sada de rtulo 00 (e apenas ela), bastar aplicar 00 nas entradas
{S1S0}, isto , forar S1=0 e S0=0; e se se quiser que seja activada a sada de rtulo 01 (e apenas ela), bastar
aplicar 01 nas entradas {S1S0}; no custa adivinhar como proceder para activar as demais sadas...
Como usar tal decoder para materializar a Tabela de Verdade que tem vindo a ser considerada? No ser difcil
ao leitor descortin-lo: a Tabela estabelece que a sada, L, ser 1 se e s se as combinaes das entradas {B, T}
do circuito forem 01 ou 10...
Experimente-se ento aplicar {B, T} s entradas de seleco {S1S0} do decoder e perceber o resultado disso:
se {B=0, T=1}, fica activa a sada de rtulo 01 e apenas ela;
e, se {B=1, T=0}, fica activa a sada de rtulo 10 e apenas ela.
No fim de contas, a ligao de {B, T} a {S1S0} permite afirmar: o enunciado L=1 se e s se as combinaes
das entradas {B, T} do circuito forem 01 ou 10 equivale a dizer que L=1 se e s se estiver activa a sada 01
ou a sada 10. Ento, para lograr a sada L, bastar interligar essas duas sadas do decoder a um OR: a sua sada
s advir 1 quando {B=0, T=1} ou {B=1, T=0} e isso que se pretende.
Mas, interrogar-se- o leitor, que ir acontecer no caso de alguma outra combinao nas entradas, como seja
{B=0, T=0}? No custa descobri-lo: em tal caso, {S1S0} advm 00 com o que ser activada a sada 00: as
restantes sadas permanecem em 0; isso acontecer, em particular, com aquelas que so aproveitadas no OR (e
que so aquelas rotuladas 01 e 10) e portanto a sada do circuito L, que a sada desse OR, permanecer 0
e isso que se pretende.
Globalmente, portanto, para produzir L, bastaro dois chips e proceder s ligaes representadas.
Nota: conquanto frente se regresse a este ponto, no ser uma intil perda de tempo confrontar este logigrama
com aquele correspondente ao Enunciado-SOP: em ambos os casos, a sada L do circuito gerada por um OR de
2-entradas... mas os NOT e AND que fazem parte do logigrama-SOP desapareceram, para dar lugar agora a um
decoder... Que ter acontecido? Isto, to simplesmente: a compreenso de que todos os Circuitos de Deciso de 2entradas que se podem conceber podem reduzir-se a uma mesma estrutura genrica: um OR de um ou mais ANDs!
Os fabricantes limitaram-se ento a facultar um dispositivo (oportunamente se discutir porque se chama decoder)
que, na prtica, oferece um plano de ANDs das vrias entradas de seleco (negadas ou no), um por cada sada
do decoder; trata-se de um dispositivo general-purpose, i.e., caso a caso, o desenhador de um Circuito limitar-se-
a escolher quais desses ANDs ou, o que o mesmo, quais das sadas do decoder so relevantes, e lig-las a um
OR: menos chips e menos fios!
Mas, a vem a inevitvel pergunta: haver uma soluo ainda mais fcil? o que se vai ver a seguir...

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 12 of 101

Vitor M. P. Vargas / IST


Apresentao

Sistemas Digitais (Part I)

Page 13 of 101

/ 4 Soluo: com multiplexer

Um outro exemplo de chips general-purpose facultados pelos fabricantes o assim denominado multiplexer.
Ao lado, esquematiza-se o chip Texas-SN74153, com 1-sada, 2-entradas de seleco e 4-entradas de dados (a seu
tempo se passaro em revista outras entradas dos multiplexers e a sua funcionalidade).
Uma analogia que qui ajude a entender o seu funcionamento ser um semforo, com uma s lmpada mas
com trs filtros: vermelho, amarelo e verde: em cada momento somente um deles dever cobrir a lmpada. Salvo
em caso de mau-funcionamento, nunca se abaixam dois filtros sobre a lmpada...
Precisamente, o multiplexer esquematizado um dispositivo em que a cada momento uma s das suas (quatro)
entradas de dados dever ser reproduzida na sua (nica) sada. Por mor de oferecer a possibilidade de escolher
qual ser ela, segue-se a seguinte praxis:
para as identificar, as entradas de dados so etiquetadas com rtulos a saber: 00, 01, 10 e 11;
para seleccionar a entrada a reproduzir na sada, so disponibilizadas duas entradas de seleco, {S1S0}.
Doravante, se se quiser que sada aparea o valor que est na entrada de dados de rtulo 00, bastar aplicar
00 nas entradas {S1S0}; e se se quiser que sada aparea o valor na entrada de dados de rtulo 01, bastar
aplicar 001 nas entradas {S1S0}; no custa adivinhar como proceder para que na sada aparea o valor que estiver
numa das outras entradas de dados.
Como usar tal multiplexer para materializar a Tabela de Verdade que tem vindo a ser considerada? No ser
difcil ao leitor descortin-lo: a Tabela estabelece que a sada, L, ser 1 se e s se as combinaes das entradas
{B, T} do circuito forem 01 ou 10...
Experimente-se ento aplicar {B, T} s entradas de seleco {S1S0} do multiplexer e perceber o resultado
disso:
se {B=0, T=1}, a sada deve reproduzir o valor na entrada de dados de rtulo 01;
e, se {B=1, T=0}, a sada deve reproduzir o valor na entrada de dados de rtulo 10.
Ora, o que se pretende que em ambos os casos a sada L advenha 1; bastar, para o efeito, forar o valor
1 em ambas as entradas de dados de rtulos 01 e 10: quando {B, T} for 01 ou 10, ir ser reproduzido na
sada do multiplexer o que estiver nessas duas entradas de dados, isto , esse 1...
Mas, interrogar-se- o leitor, que ir acontecer no caso de alguma outra combinao nas entradas, como seja
{B=0, T=0}? No custa descobri-lo: em tal caso, {S1S0} advm 00 com o que ser reproduzido na sada o que
se encontrar na entrada de dados de rtulo 00; porquanto a Tabela de Verdade determina que, em tal situao,
L=0, dever-se-, ento, forar 0 nessa entrada de dados!
Generalizando esta concluso: que fazer para que a sada do multiplexer funcione como se pretende que
funcione a sada do Circuito de Deciso? Isto, to-somente: impor, nas entradas de dados do multiplexer,
exactamente os valores 0/1 constantes na coluna L da Tabela de Verdade pela ordem em que l se
encontram!
Globalmente, portanto, para produzir L, bastar um chip e proceder s ligaes representadas.
O leitor vivamente instado a reparar no sublinhado pela ordem em que l se encontram; um ponto deveras
importante! Os rtulos das entradas de seleco e de dados (e outrossim os das sadas de um decoder) seguem uma
ordem imposta pelos fabricantes de chips. Se a ordem pela qual se preencherem as colunas {B, T} esquerda na
Tabela de Verdade for outra, no est de modo nenhum garantido que as coisas venham de facto a funcionar como
se pretende! Pelo que no haver que estranhar que, ao longo do semestre, volte baila este ponto de ordem.
Nota: tal como a propsito do decoder, altura de confrontar o logigrama acima com o do Enunciado-SOP e
atestar que o multiplexer um dispositivo general-purpose; intui-se o seu interior: um plano de ANDs das vrias
entradas do multiplexer; interligados a um OR: de posse de um multiplexer, basta ao desenhador dum Circuito
forar nas suas entradas de dados a respectiva Tabela de Verdade!
Chegou a altura da inevitvel pergunta: haver uma soluo mais fcil? Mas por ora basta: h que deixar algo
por aprender para as prximas sesses, no se pode meter o Rossio na rua da Betesga (se tem dvidas, TPC: v at
l ver que no se pode mesmo)... De qualquer modo, espera o autor que tenha sido suficiente para se possa agora
fazer sobressair o que cabe na designao Sistemas Digitais, as competncias que os estudantes devero adquirir
ao longo do semestre, os meios facultados para os apoiar e os mtodos de avaliao. isso que se ir ver a seguir...

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 14 of 101

Vitor M. P. Vargas / IST


Apresentao

Sistemas Digitais (Part I)

Page 15 of 101

/ Objectivos da Disciplina: aprender a Pensar Lgico

Uma outra designao para Sistemas Digitais a de Sistemas Lgicos que acentua o facto de o desenho de
tais sistemas ser, como se tem vindo a testemunhar, puramente Lgico. Em particular, no requere conhecimentos
matemticos por a alm... Com a experincia tida em leccionar a disciplina, o autor destas linhas atreve-se mesmo
a asseverar: o maior embarao matemtico com que (alguns, poucos) estudantes deparam e porquanto em
testes e exames lhes est vedada a utilizao de calculadoras , horror dos horrores, a diviso por 16! De outra
parte, e numa primeira abordagem, tambm no se requerem conhecimentos por a alm de electricidade e
electrnica: para combinar ANDs, ORs, etc., no preciso conhecer o seu esqueleto interno e como interoperam
os seus componentes (condensadores, transstores, etc.), ou mesmo como so eles fabricados...
O grande objectivo da disciplina , de facto, que os estudantes aprendam a pensar lgico:
compreender os conceitos e modelos subjacentes aos sistemas digitais (de que alis se abordaram j, entre
outros, as Tabelas de Verdade e os Enunciados-SOP)
como so os sinais com que lidam (na prtica, confinados a 0s e 1s...)
como representar neles vrias espcies de informao
Esta uma caracterstica fantstica do Digital: tudo (i.e., nmeros, valores discretos como sejam
sinais de controlo On/Off e letras, som, vdeo...) se pode representar por sucesses de 0s e 1s! E por
conseguinte: qualquer tipo de informao susceptvel de ser processada pelos sistemas digitais!
quais as operaes bsicas aplicveis (alis j entrevistas: ANDs, ORs, NOTs, NANDs, NORs...)
quais as expresses algbricas que as traduzem (i.e., uma notao mais concisa para ANDs, etc.)
quais, e como funcionam, os dispositivos general-purpose digitais (os j abordados multiplexers e
decoders, e outros mais: coders, somadores, flip-flops, registos e contadores, RAMs e ROMs, FPGAs...)
A esta compreenso no se pretende chegar contemplando de fora como funciona um computador;
antes, todas as sesses de exposio comeam por um projecto concreto: o subsequente desenrolar da sesso
procura abord-lo e generalizar / abstrair, i.e.: captar o essencial para que o estudante o aplique noutros
casos concretos.
Nisto, distingue-se da praxis que comea por abstrair e depois apresentar exemplos de aplicao. Um
exemplo: comum a literatura apresentar primeiro os sistemas de numerao e a lgebra de Boole, e s
depois apresentar os chips, como stio onde se corporiza tal lgebra. Preferiu-se aqui uma outra estratgia:
primeiro, apresentam-se os chips SN74xx como meio de resolver problemas de engenharia e s depois, a
pretexto da optimizao dos circuitos assim concebidos, se aborda a lgebra de Boole; e, porquanto nessa
fase os sistemas de numerao so de todo irrelevantes, somente mais tarde vm eles a ser abordados.
saber analisar sistemas digitais, i.e.: face a um Circuito feito pelo prprio (ou por outros) e como que
fazendo de espio , descobrir a sua funcionalidade (o que ele faz), e o tempo que demora a faz-lo...
saber sintetizar sistemas digitais de pequena complexidade:
Dado um enunciado, chegar ao correspondente logigrama mais simples:
saber recorrer a vrios mtodos de sntese
(gates bsicas, blocos combinatrios ou sequenciais, lgica programvel...)
saber usar algoritmos para minimizar o circuito: no mais complexo que o estritamente necessrio...
saber materializ-lo: ao longo do semestre, no laboratrio, os estudantes tero oportunidade de meter
as mos na massa; i.e., montar chips numa base de montagem e lig-las por fios, de modo a concretizarem
projectos concretos; sero projectos de pequena dimenso, certo (cada um dever bastar-se em at cinco
chips), mas suficiente para se familiarizarem tu-c-tu-l com o hardware digital;
saber manusear software CAD (xilinx), para evitar o risco de, ao fim de uma hora de trabalho no
laboratrio, o circuito montado no funcionar como seria desejvel: os estudantes constataro que uma
prtica saudvel, e antes da aula para montar o hardware, editar graficamente o circuito concebido e simullo! Ademais, aprendero a carreg-lo (download) num dispositivo lgico programvel (FPGA);
saber comunicar de modo claro e conciso a soluo que concebeu
recorrer a terminologia e esquemticos (IEC) precisos;
saber discutir alternativas e defender a que escolheu
desenvolver aptides para trabalhar em equipa

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 16 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Apresentao

Page 17 of 101

/ Apoio aos Estudantes

Para apoiar os estudantes na sua aprendizagem, decorrem, semanalmente:


duas sesses de exposio de 1:30 m (vulgo: aulas Tericas);
uma outra sesso, de 1:30, dedicada alternadamente ao Laboratrio e resoluo de Problemas.
um horrio de dvidas.
Sugere-se esta praxis: Se um estudante vier a ter alguma dvida sobre a matria, procure um colega e tente resolv-la com ele...
Se os dois no conseguirem esclarec-la, procurem um outro colega e tentem resolv-la com ele... Se os trs o no conseguirem,
usem o e-mail ou o horrio de dvidas...
Talvez a maneira mais eficaz de apreender a matria diz-la a outros at a compreenderem bem. Qui o maior sinal de que
se sabe bem a matria saber explic-la de um modo claro a quem nela sente dificuldades (vid essa obra-prima que A evoluo
da Fsica, de Infeld & Einstein)... Pelo que: se o leitor vier a ter alguma dvida sobre a matria, e procurar um colega para lha pr,
estar provavelmente a ajud-lo a clarificar-se melhor nessa matria.

A pgina-web da disciplina encontra-se por ora em http://web.ist.utl.pt/~ist10898/public/sd/ Ela oferece:


um link para o Calendrio /Planeamento das aulas (dos Cursos ME-Aer e ME-FT de 2011/2012); nele,
esto calendarizadas as vrias aulas: Tericas, de Lab e de Problemas;
esto afixados: os enunciados das (6) aulas de Lab {L1-L6} e os (6) de Problemas {P1-P6};
so disponibilizados:
acetatos/slides das aulas Tericas, em dois formatos: .ppt e .pdf (formato este, salta aos olhos, se reveste de
uma forma comentada: cada slide acompanhado, direita, por um texto a propsito);
dicas sobre o que concerne as aulas de Lab: montagem de Hardware e uso do xilinx;
um link para uma Srie de Problemas;
um link para enunciados de Testes e Exames de anos anteriores.
Os slides tm uma estrutura compactada: evitam desdobrar um assunto por um nmero excessivo deles. Como que
reproduzem o caderno dum estudante h alguns anos: passaria um tempo significativo a requerer ao prof. para aguardar e se
afastar para o lado, para ele mesmo copiar para o caderno os desenhos feitos no quadro e tomar algumas notas adicionais.
Hoje em dia, e pressuposto que os pdfs dos slides foram j disponibilizados aos estudantes, estes no mais tm que copiar
desenhos mas convm que os levem para as aulas, e neles inscrevam as suas prprias notas pessoais.
Relativamente s aulas de Laboratrio:
Todas as aulas de Lab versam um projecto, a ser feito por grupos de at dois estudantes. Elas sucedem-se em sintonia
com o que se aborda na aula Terica: os estudantes iro discernindo a importncia da aula Terica que sem ela ser-lhes-
bem mais difcil abordar o projecto para o Lab seguinte; e a importncia da aula de Lab para ultrapassar o aspecto
passivo da aula Terica. fazendo, e no apenas vendo e ouvindo, que se aprende.
repare-se que a primeira aula de Lab precede a primeira de Problemas! Por mor de, to depressa quanto possvel,
engajar os estudantes em meter as mos na massa, convm que ela decorra logo aps a sesso Gates;
conquanto o site referido no o assinale, subentende-se, no final da primeira semana de aulas de Lab, uma aula carrovassoura para quem no teve sucesso na sua (primeira) montagem: nenhum estudante pode escapar ao sucesso no hardware
o mnimo, para poder ter alguma veleidade em acompanhar o que se segue...
no final da ltima semana de aulas, tambm se subentende uma outra aula carro-vassoura, desta feita para quem no
teve sucesso em alguma montagem ao longo do semestre; eventualmente, algum poder no ter ido a uma aula de Lab, por
doena ou outra razo; alis, a razo do insucesso at poder ter sido o hardware ou o xilinx estar em dia-no... No seja por
isso que no lhe seja dada a oportunidade de mostrar o seu projecto a funcionar bem
Relativamente s aulas de Problemas:
Os enunciados esto publicados e para os resolver so de facto suficientes as aulas Tericas... Atesta-o a experincia, em
2011/12, do autor destas linhas: desde a primeira aula, os estudantes foram chamados a resolver os problemas no quadro e foi
comum v-los aproximar-se e copiarem do caderno a resoluo feita, antes, em casa
No sentido de aceder a uma ampla diversidade de questes no mbito do Digital, podem tambm os estudantes aproveitar o
link supracitado, Srie de Problemas: grande parte dos enunciados acompanhado de uma resoluo pormenorizada,
chamando a ateno para aspectos em que os estudantes mais metem gua mas tambm h um largo leque de enunciados
de que s se do as solues finais, para que, se for o caso de os resolverem, possam conferir se chegaram soluo correcta.
Relativamente Bibliografia:
A sequncia dos assuntos tratados nas aulas nem sempre coincide com a da Bibliografia indicada que alis tambm no
necessariamente nica. Com esta ressalva, a opinio ditada pela experincia do autor : adquirir um livro s quando estiver
seguro de que lhe convm faz-lo. A participao nas aulas e o site, em particular este documento, devero ser suficientes...

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 18 of 101

Vitor M. P. Vargas / IST


Apresentao

Sistemas Digitais (Part I)

Page 19 of 101

/ Mtodo de Avaliao (usado em 2012/2013)

Na nota final do estudante entram duas componentes, a saber:


a nota da Componente Laboratorial, NLab
a nota da Componente no-Laboratorial; esta pode obter-se de duas maneiras alternativas: por avaliao
contnua (NContnua) e por avaliao singular (NExame).
Quanto Componente Laboratorial: ao longo do semestre, sucedem-se 6 (seis) Trabalhos de Laboratrio;
o primeiro envolve a montagem de chips numa base hardware adequada;
o segundo envolve a edio e simulao de um circuito usando o software xilinx;
os trs seguintes envolvem ambas as vertentes: montagem de hardware e uso de xilinx.
o ltimo envolve o uso de xilinx, e o de um hardware especial, um FPGA.
Para cada Trabalho de Lab, cada grupo dever entregar ao professor um pr-relatrio e um relatrio
o pr-relatrio deve ser entregue antes da aula de Laboratrio a que o Trabalho diz respeito;
o relatrio deve ser entregue at s 24:00 do dia seguinte a essa aula.
Cada grupo (de 2 estudantes) entrega um nico pr-relatrio e um nico relatrio.
O meio de entrega sempre por via-electrnica combinado com o professor (por ex., fnix);
Os ficheiros a entregar devero ser .pdf, com um nome respeitando o seguinte formato:
Para o pr-relatrio: SD_YYLNA_GG.pdf, como seja SD_12L3A_04.pdf
Para o relatrio: SD_YYLNB_GG..pdf, como seja SD_12L5B_37.pdf
(YY o ano, ex.: 12, N pode ser 1,..., ou 6; e GG o n do grupo, exs.: 04 ou 37)
Ficheiros com nomes incorrectos podero ser rejeitados;
e entregas fora-de-prazo sero penalizadas, em 25% da nota que teriam sem essa penalizao
O enunciado de cada trabalho acompanhado da grelha de classificao de cada item. A nota da
Componente Laboratorial, NLab, a mdia das notas dos trabalhos; a aprovao na disciplina exige NLab no
inferior a 9,5.
Quanto Componente no-Laboratorial:
ao longo do Semestre, sucederam-se 3 (trs) Testes, cobrindo sucessivamente as Partes I, II e III em que a
Matria se encontra organizada. Elas no so independentes, isto : a Parte II elabora-se sobre a Parte I (como seja
Tabelas de Verdade, Simplificao de Circuitos...) e a Parte III elabora-se sobre a Parte II (como seja: decoders,
flip-flops...). Com o que: se um estudante no obtiver uma nota satisfatria numa das Partes, convm entend-lo
como um srio aviso de que j parte coxo para a Parte seguinte, ser-lhe- mais difcil acompanh-la, a no ser
que rapidamente se ponha em dia com aquela Parte insatisfatria!
A nota da Componente Testes, NTest, obtm-se pela mdia ponderada das notas dos vrios Testes, usando-se os
pesos 27%, 33% e 40%. Para obter aprovao na disciplina, um estudante dever ter NTest no inferior a 9,5.
ao longo do Semestre, sucedem-se os assim denominados ClassWork: no site da disciplina, encontra-se
publicado um conjunto de enunciados genricos (resolvidos, na sua maioria); os ltimos 15 minutos de cada aula
de Problemas (excepto a primeira) so reservados para a resoluo, pelos estudantes interessados, de alguns desses
enunciados (com, bem entendido, parmetros distintos; um ex.: o site contm o enunciado Converta 28(10) para a
base 8; na aula de Problemas, o ClassWork poder ser Converta 53(10) para a base 16).
Bem entendido, o ClassWork destina-se a incentivar os estudantes a acompanhar, de uma forma continuada, a
Matria. Pelo que ele tem uma nota, NCW, obtida pela mdia das notas dos 5 (cinco) ClassWork; nota essa que
poder aumentar a nota da Componente Contnua: NContnua ser a maior entre NTest e 80% NTest + 20% NCW.
para quem no se submeteu Avaliao Contnua, ou nela reprovou, ou queira melhorar a nota nela
obtida, existe um Exame, em 2 poca. Para um estudante obter aprovao na disciplina, a nota que ele obteve no
exame, NExame, dever ser no inferior a 9,5.
A nota final ser a soma ponderada das notas obtidas nas duas componentes: a Componente Laboratorial
tem o peso 25%, e a Componente no Laboratorial tem o peso 75%.
Se um estudante, j com nota obtida com a Avaliao Contnua, for a Exame, para a melhorar, mas o no
conseguir, mantm-se a nota obtida naquela.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 20 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Gates bsicas

Page 21 of 101

/ 2 Projecto

Esta sesso versa os tijolos (mais formalmente: ICs ou chips) que o mercado disponibiliza para concretizar
Circuitos Digitais/Lgicos. Como nas outras sesses, ir-se- desenrolar a partir dum Projecto concreto.
Imagine-se um edifcio... Um corredor dispe de duas lmpadas: uma de Iluminao e uma outra (mais fraca)
de Presena; e de dois interruptores locais (Left e Right). Ao longo do dia, se e s se apenas um deles estiver On, a
lmpada de Iluminao acende... Mas, para prevenir o ficar ela acesa durante a noite (pois o ltimo a abandonar o
corredor no a apagou), o fulano da recepo dispe de um boto Enable: de manh, ele premido, com o que a
lmpada de Presena se apaga e se torna possvel acender a de Iluminao; noite, a posio daquele boto
invertida: a lmpada de Presena acende-se, e a de Iluminao advm apagada...
O Projecto vem a ser o seguinte: concretizar um Circuito que decida o acender/apagar das lmpadas {P, I}, a
partir dos sinais recebidos dos dois interruptores {L e R} e do boto Enable E.
A primeira etapa no desenho do Circuito de Deciso (ou, mais brevemente, circuito) traduzir o enunciado
num elenco de entradas/predicados e sadas/decises e na sua codificao:
Predicado uma sentena relevante (a deciso do circuito depende dela) que s pode assumir dois valores:
sim e no. Cada uma das entradas do circuito h-de ficar associada a um predicado preciso. Eis uma possibilidade:
entrada E predicado: o boto E est premido;
entrada L predicado: o interruptor L est On.
entrada R predicado: o interruptor R est On.
Qualquer dos predicados pode volver-se sim ou no; correspondentemente, em qualquer das entradas {E, L, R}
s podero ocorrer dois valores respectivamente, e de um modo codificado: 1 (Sim) ou 0 (No).
Com estes pressupostos, quando doravante ocorrer L=1, subentende-se: o interruptor L est On; e quando
ocorrer L=0, subentende-se: o interruptor L no est On. Idem para as notaes R=1 e R=0, e E=1 e E=0.
H tambm que associar cada sada a uma deciso. Eis uma possibilidade:
sada P deciso: a lmpada P deve acender.
sada I deciso: a lmpada I deve acender.
Uma deciso pode volver-se sim ou no; correspondentemente, em qualquer das sadas {P, I} s podero
ocorrer dois valores respectivamente, e de um modo codificado: 1 ou 0.
Doravante, quando ocorrer I=1, subentende-se: a lmpada I deve acender; e quando ocorrer I=0,
subentende-se: a lmpada I no deve acender. Idem para as notaes P=1 e P=0
A segunda etapa construir uma Tabela de Verdade (de facto, duas Tabelas, uma para P e outra para I):
esquerda, dispem-se trs colunas, uma por cada uma das entradas do circuito, {E, L, R};
direita, dispem-se duas colunas, correspondente s sadas do circuito, {P, I};
inscrevem-se nas colunas {E, L, R} todos os trios possveis de 0 e 1
Por conveno (que a seu tempo se justificar), eles devem ficar ordenados, assim: da direita para a
esquerda, cada coluna a repetio de ciclos contendo, cada um, alguns 0s seguidos do mesmo nmero de 1s:
na coluna mais direita, R, inscreve-se 0 e, por baixo, 1: o ciclo 01; nele, o 0 ocorre (1) vez s;
na coluna que lhe fica esquerda, L, o ciclo 0011; nele, o 0 ocorre (2) vezes;
na coluna que lhe fica esquerda E, o ciclo 00001111; nele, o 0 ocorre (4) vezes...
Esta Tabela pressupe 3 entradas mas, para a generalizar a mais entradas, basta ver: no por acaso, o nmero
de 0s no ciclo da coluna L, 2, exactamente o comprimento do ciclo usado na coluna que lhe fica direita,
R; e o nmero de 0s no ciclo da coluna E, 4, o do ciclo usado na coluna que lhe fica direita, L...
enfim, inscrevem-se nas colunas {P, I }, linha a linha i.e., para a combinao de valores que essa linha
representa , qual a deciso que o circuito deve correspondentemente tomar.
Em particular, a primeira linha, 000, codifica E no est premido e nem L nem R esto On; a
deciso deve ser P deve acender e I no deve acender pelo que nas colunas {P, I} se deve inscrever 10.
Adivinha-se o que se segue: traduzir os nmeros designativos de P e I em, por exemplo, Enunciados-SOP
e, deles, deduzir logigramas envolvendo ORs, ANDs e NOTs; ao lado, encontra-se um deles, mas fica protelada a
sua justificao para mais adiante que, antes, convir repensar o caminho percorrido, e no s

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 22 of 101

Vitor M. P. Vargas / IST


Gates bsicas

Sistemas Digitais (Part I)

Page 23 of 101

/ Recapitulando... Dados Binrios

Os (dois) Projectos at agora considerados concretizam-se em circuitos onde notria a seguinte caracterstica:
entradas e sadas podem assumir dois e no mais que dois valores. Nomeadamente, pressupuseram que:
uma Lmpada pode estar apagada ou acesa; mesmo quando ela pode assumir vrios nveis de intensidade
luminosa, o relevante : est acesa? Sim ou no?
um Interruptor pode estar para-cima (ou On) ou para-baixo (ou Off); ainda que rode maneira dos ponteiros
de um relgio, para proporcionar vrios nveis de intensidade luminosa, o relevante : est On? Sim ou no?
idem para um boto; o relevante : est premido? Sim ou no?
Por mor de compactao, eles so codificados em smbolos especiais: No codificado em 0, e Sim
codificado em 1. S h 0s e 1s: tal a caracterstica distintiva do mundo Digital! Nas entradas e sadas dos
circuitos (e nas dos dispositivos que lhes perfazem o miolo), ocorrem dois, e no mais que dois, valores: 0 e 1.
Sublinhe-se: no so algarismos maneira dos 0s e 1s apreendidos na instruo primria (ou mesmo antes
disso): o 0 e o 1 so, nica e simplesmente, smbolos (mesmo que, alis, tambm se venham a ler zero e um).
A este respeito, qui o leitor tenha j deparado com a lgica das proposies. A, as proposies podem ser F
(False) ou V (Verdadeiro) / T (True); ao longo da discusso adiante, ir-se- constatando a grande semelhana do
manejo dos 0s e 1s com o manejo de Fs e Ts nessa lgica das proposies (Idem para a lgica dos
subconjuntos de um Conjunto: o leitor poder constatar a semelhana do manejo dos 0s e 1s com o manejo dos
subconjuntos Vazio e Universo nesta outra lgica).
Smbolos que so, 0 e 1 tambm no so valores de tenso, como seria 1 Volt... Mas, tratando-se de circuitos
electrnicos, expectvel que, nas entradas e sadas dos dispositivos, se experimentem tenses elctricas. Ento,
como que ? Isto, simplesmente: os fabricantes obrigam-se a disponibilizar chips cujas entradas e sadas
reconhecem apenas dois valores de tenso que denominam de L (Low) e H (High) (Isto, numa primeira
abordagem que mais adiante ser altura de escalpelizar esta assero)
Em particular, os estudantes tero ocasio de, no laboratrio, lidar com chips TTL cujas tenses Low e High
so, respectivamente 0 Volt e 5 Volt , a aplicando a seguinte correspondncia, dita de Lgica Positiva: 0 Volt
representa um 0 lgico e 5 Volt representa o 1 lgico.
Infere-se que, se se traar o grfico da evoluo da tenso elctrica num ponto dum circuito, o resultado ser
um sinal caracterstico: uma forma de onda que oscila entre dois nveis elctricos, Low e High, a transio entre
eles sendo quasi instantnea. Nos momentos em que esse sinal for Low, e pressuposta a Lgica Positiva, isso quer
dizer: nesse ponto do circuito, ento, o valor 0 e quando ele for High, isso significa: ento, o valor 1.
Abra-se um parntesis sobre o calo digital: no mundo industrial, comum a expresso o sensor tal est
activo como seja por exemplo o sensor de porta aberta de uma casa com vigilncia electrnica est activo.
Porquanto esta abordagem tem uma conotao fortemente prtica, adivinha-se que essa terminologia
activo/inactivo a ir acompanhar, ao menos a partir de algum momento. Voltar-se- ento a essa terminologia, mas
adiante-se desde j que, quando for o caso, activo (ou A) representar est a 1 e, em consequncia, inactivo
(ou I) representar est a 0.
Ao lado, listam-se outras situaes binrias: ligado/desligado, em-cima/em-baixo, par/mpar, plo-Norte/ploSul, aprovado/reprovado, etc. Muitas outras poder o leitor observar neste nosso mundo... E pelo que acima fica
dito, ser pacfico aduzir que os Sistemas Digitais so directamente vocacionados para situaes binrias...
Mas, a interrogao inevitvel: e se a situao no for binria? Eis exemplos: uma lmpada com vrios nveis
de luminosidade; um interruptor com mais que duas posies: em-cima e em-baixo, e tambm no-meio; uma
classificao em que se distingue entre aprovado e no aprovado, mas tambm aprovado com 12 ou 18; uma
medida de velocidade que tem que discernir se vai a mover-se a 15, 30 ou a 60 km/hora...
H que ir passo-a-passo. A Parte-I versa to s situaes binrias; deixa-se para a Parte-II situaes M-rias...
Convicto de que quem acompanhe a Parte-I, mais preparado ficar para acompanhar as Partes seguintes.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 24 of 101

Vitor M. P. Vargas / IST


Gates bsicas

Sistemas Digitais (Part I)

Page 25 of 101

/ Recapitulando... Circuitos Lgicos

Relativamente aos Projectos at agora considerados, o objectivo foi chegar a Circuitos Lgicos concretizados
em logigramas com ORs ou NORs, ANDs ou NANDs, NOTs, XORs ou XNORs, decoders, Multiplexers...
Como caractersticas comuns, os Circuitos Lgicos apresentam:
um conjunto de entradas; o 2 Projecto tem trs entradas {E, L, R}, mas ao longo do semestre encontrarse-o Projectos que se resolvem em uma s entrada ou em mltiplas entradas, bem mais que aquele irrisrio 3...
um conjunto de sadas; o 2 Projecto tem duas sadas {P, I}, mas ao longo deste itinerrio encontrar-se-o
Projectos que se resolvem em uma ou mais sadas...
Tanto as entradas como as sadas so binrias, isto : nelas, s podem reconhecer-se 0s e 1s...
Um Circuito Lgico fica descrito/especificado sem ambiguidade por uma assim denominada Tabela de Verdade.
esquerda, ela comporta tantas colunas quantas as entradas do Circuito. Nelas, listam-se ordenadamente
todas as combinaes de valores {0 e 1} admissveis nas entradas. Para bom entendedor: se houver N entradas,
ento o total de combinaes e por conseguinte o total de linhas da tabela ser de 2N.
direita, ela comporta tantas colunas quantas as sadas do Circuito. Em cada coluna, e linha a linha,
especifica-se qual o valor {0 ou 1} a obter na sada que corresponde a essa coluna, para a combinao de
valores entrada que essa linha representa.
A partir dessa Tabela, desenha-se um logigrama/Diagrama Lgico. Eis as suas caractersticas:
uma sada deve estar ligada a uma ou mais entradas:
directamente ou
por gates/Portas lgicas e/ou
por dispositivos general-purpose (decoders, multiplexers, etc.)
no se podem soldar, ao mesmo fio, duas entradas do logigrama e/ou duas sadas de chips (Por um motivo
claro: so imprevisveis as entradas do circuito, bem como o so as sadas dos chips. A cada momento, qualquer
uma poder estar a 0 ou 1 ou, em termos electrnicos, a L ou H... Suponha-se ento que duas delas se
soldam a um mesmo ponto... Poder em algum momento vir uma das entradas a forar nesse ponto uma tenso
Low e simultaneamente a outra entrada estar a forar uma tenso High: no se admire de um pivete a queimado...)
O desenho de um logigrama no toa: deve ser fcil de desenhar e deve ficar fcil de compreender Tendo
em ateno as recomendaes internacionais relevantes, e a lei do menor esforo, nesta abordagem observa-se a
seguinte praxis ( revelia da seguida por muitos outros autores, na bibliografia, Internet includa):
as entradas dum logigrama ficam esquerda, e as sadas ficam direita; sempre!
o fluxo de 0s e 1s faz-se da esquerda para a direita e de cima para baixo precisamente como norma ler
desde a instruo primria Isto, como regra geral: em alguns casos, poder convir orientar o fluxo de 0s e 1s
da direita para a esquerda ou de baixo para cima. Quando isso suceder, dever-se- inscrever uma seta sobre a
linha em que o fluxo infringe a regra geral. Em tempo oportuno, em particular em circuitos com memria
(feedback), observar-se-o exemplos de tal opo, e dever ser pacfica ao leitor a razo que a ela leva.
as entradas do logigrama correspondem pari passu s colunas esquerda da Tabela A esse respeito, a
preferncia do autor destas linhas : a coluna mais esquerda na Tabela corresponde entrada mais abaixo no
logigrama, e a coluna mais direita corresponde entrada mais acima.
Esta prtica est ilustrada ao lado: as colunas esquerda da Tabela esto pela ordem {E, L, R}, e, lidas de
baixo para cima, as entradas do logigrama encontram-se pela mesmssima ordem {E, L, R}.
Em termos genricos: s colunas so atribudos pesos (que, no por acaso, so potncias-de-2; no exemplo ao
lado, so: 4, 2, 1). A de menor peso a que fica mais direita, e a de maior peso a que fica mais esquerda. Esta
ordem preservada na escrita da funo e seus argumentos: I(E, L, R); e preservada na implantao das entradas
do logigrama, quando so lidas de baixo para cima (Esta ordem acaba por estar conforme ao quotidiano do leitor:
na escrita de um valor numrico, seja 2536, o dgito mais significativo de maior peso est esquerda e numa
pauta das classificaes dos estudantes, o maior nmero de identificao est embaixo)
ltima observao: para um dado enunciado, a Tabela de Verdade nica mas a sesso anterior mostrou que
ela se pode mapear em vrios logigramas distintos: no h uma soluo nica! Da a pergunta: haver uma
ptima? Para responder, impe-se investigar: quais os dispositivos de que se dispe para elaborar um logigrama?

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 26 of 101

Vitor M. P. Vargas / IST


Gates bsicas

Sistemas Digitais (Part I)

Page 27 of 101

/ Portas / Gates Elementares

Para a concretizao de circuitos lgicos, o mercado disponibiliza trs Portas (ou Gates) elementares: ORs,
ANDs e NOTs. Como verdadeiros circuitos lgicos que so, esto-lhes associadas Tabelas de Verdade especficas.
O NOT uma gate com uma s entrada, seja X, e uma s sada, seja Z; esta advm 1 sse a entrada for
0 - do que se segue: se a entrada for 1, a sada ser 0. Diz-que que Z a negao, ou o complemento, de X.
Aquela gate pode tambm designar-se de inversor;
O AND uma gate com (pelo menos) duas entradas, seja {X, Y}, e uma s sada, seja Z; esta advm 1 sse
todas as entradas forem 1 do que se segue: se alguma delas for 0, a sada ser 0. Diz-que que Z o
produto, ou conjuno, das entradas;
O OR uma gate com (pelo menos) duas entradas, seja {X, Y}, e uma s sada, seja Z; esta advm 0 sse
todas as entradas forem 0 do que se segue: se alguma delas for 1, a sada ser 1. Diz-que que Z a soma,
ou disjuno, das entradas.
Atente-se bem nos dois ltimos enunciados, gritante a chamada dualidade das operaes AND e OR:
substituindo, no enunciado acerca do AND, todos os 0s por 1s e vice-versa, surge o enunciado relativo ao OR.
Parntesis: se o leitor j teve o ensejo de contactar a lgica das proposies, ter certamente notado a analogia
das operaes negao, e e ou dessa lgica com as operaes lgicas acima (pressuposta a equivalncia de 0
e 1 com F e V): a negao duma proposio V F, e a negao duma proposio F V, e assim por diante
E se j contactou a lgica dos subconjuntos dum conjunto, ser-lhe- pacfica a analogia das operaes
complemento, interseco e unio dessa lgica com as operaes lgicas acima (pressuposta a equivalncia de
0 e 1 com os subconjuntos Vazio/ e Universo/): o complemento de , e o complemento de , e
assim por diante
Como concretizar fisicamente tais operadores {NOT, AND e OR}? Uma soluo simples remete para uma
adequada ligao de comutadores, vid esquemas ao lado:
o AND de comutadores logra-se pela sua disposio em srie: para que a lmpada acenda, necessrio que
ambos os comutadores estejam On (recorde-se: a sada dum AND 1 sse todas as suas entradas forem 1);
o OR de comutadores logra-se pela sua disposio em paralelo: para que a lmpada acenda, basta que um dos
comutadores esteja On (recorde-se: a sada dum OR 1 sse pelo menos uma das entradas for 1);
o NOT de um comutador logra-se pela sua disposio em curto-circuito com a lmpada: para que ela acenda,
necessrio que o comutador esteja Off (recorde-se: a sada dum NOT 1 sse a sua entrada for 0)
Os NOT, AND e OR facultados no laboratrio so, porm, dispositivos electrnicos mais precisamente, sob a
forma de Circuitos Integrados, com as designaes SN7404, SN7408 e SN7432 (Isto no caso de ANDs e ORs com
s duas entradas; quando elas so em maior nmero, usam-se outras designaes como sejam: SN7411 e SN7421).
Para efeitos de desenhar no papel logigramas, ou de os compreender, a tais portas/gates esto associados
smbolos grficos especficos. De facto, para cada uma delas est associado um par de smbolos: um mais antigo, e
um outro mais recente com a forma geral de um rectngulo etiquetado seguindo as convenes da IEC. Ambos
so vlidos; os primeiros so usados sobretudo na Parte-I, ficando os segundos confinados s partes II e III.
Como sucede com qualquer Circuito Lgico, poder-se- deduzir, para cada uma daquelas portas/gates, um
diagrama temporal que represente a variao dos nveis elctricos das entradas e sadas seguindo pari passu os
valores da Tabela de Verdade, vid ao lado.
A importncia destas gates deve ser clara: basta recordar a primeira soluo do Projecto da Sesso anterior. Foi
suficiente um ento designado Enunciado-SOP com es, ous e nos a partir de que se desenhou um
logigrama com apenas ANDs, ORs e NOTs. E nada impede generalizar essa metodologia a qualquer Projecto Ou
seja: todos os Circuitos Digitais se podem concretizar com, apenas, ANDs, ORs e NOTs!
Pois que envolvem a escrita de ANDs, ORs e NOTs, claro que Enunciados-SOP acabam por ser extensos
pelo que, a lei do menor esforo a isso leva, a praxis corrente usar, em vez desses nomes, smbolos algbricos,
concretamente: , + e ~. Voltar-se- a isso mais tarde.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 28 of 101

Vitor M. P. Vargas / IST


Gates bsicas

Sistemas Digitais (Part I)

Page 29 of 101

/ Estudos de Casos com Portas Elementares

Todos os Circuitos Digitais se podem concretizar com, apenas, ANDs, ORs e NOTs! Nem que seja para o
ilustrar, enunciam-se ao lado trs Projectos simples para que o prprio leitor preencha as respectivas Tabelas de
Verdade e deduza as gates mais adequadas para os materializar:
1. Entre os medicamentos que uma farmcia vende, h dois, sejam A e B, que, se tomados em conjunto, tm
efeitos catastrficos sobre o paciente Para minimizar a probabilidade de isso acontecer, sada da farmcia h
dois sensores: um sensvel passagem de A e o outro sensvel passagem de B. Pretende-se um Circuito que
accione um alarme se e s se for o caso de estar saindo um paciente com ambos os medicamentos
Recorde o que j se disse: a primeira etapa no desenho de um Circuito traduzir o enunciado num elenco de
entradas/predicados e sadas/decises e na sua codificao. Pelo que:
quais os predicados a associar s entradas?
Ex.:
entrada A predicado: o sensor A detectou a passagem do medicamento A;
entrada B predicado:
qual a deciso a associar sada?
Ex.:
sada Alarme deciso: o alarme assinalou a passagem dos dois medicamentos, A e B;
A segunda etapa construir uma Tabela de Verdade:
esquerda, dispem-se duas colunas, uma por cada uma das entradas do Circuito, {A, B};
direita, dispe-se um coluna, correspondente sada do Circuito, Alarme;
inscrevem-se ordenadamente nas colunas {A, B} todos os duos possveis de 0 e 1
enfim, inscreve-se na coluna Alarme, linha a linha i.e., para a combinao de valores que essa linha
representa , qual a deciso que o Circuito deve correspondentemente tomar.
Neste preenchimento, h que usar permanentemente a seguinte codificao:
No codificado em 0, e Sim codificado em 1.
O leitor poder por si prprio preencher a Tabela de Verdade da sada do Circuito; e, depois, confront-la com
as Tabelas das portas/gates AND, OR e NOT (recordadas ao lado em baixo) para ver se alguma delas ser
suficiente por si prpria para concretizar essa Tabela. No lhe ser difcil deduzir que o Circuito se poder
concretizar com, apenas um AND
2. Uma instalao fabril dispe de uma caldeira em que, sob pena de exploso, nem a Temperatura nem a
Presso devem exceder determinados limiares. De forma a alertar para o risco de a caldeira voar, ela dispe de dois
sensores T e P, sensveis respectivamente ao excesso de Temperatura e ao excesso de Presso. Pretende-se um
Circuito que accione um Alarme se e s se algum daqueles limiares for violado
quais os predicados a associar s entradas {T, P}? qual a deciso a associar sada Alarme?
qual a Tabela de Verdade da sada do Circuito?
existe alguma porta/gate capaz de por si prpria concretizar essa Tabela? Qual?
3. Uma certa superfcie agrcola irrigada por um sistema de rega automtica. Ele deve ser accionado se,
claro, a precipitao de chuva no tiver sido suficiente. Para o efeito, existe um sensor de chuva, C; ele ficar
activo (i. e., dar um sinal apropriado) quando a precipitao ultrapassar um certo volume mnimo. Pretende-se um
Circuito que, se tal acontecer, faa o disable (desligamento) do sistema de rega.
quais os predicados a associar s entradas C? Qual a deciso a associar sada Enable?
qual a Tabela de Verdade da sada do Circuito?
existe alguma porta/gate capaz de por si prpria concretizar essa Tabela? Qual?

Repare-se na diversidade de contextos em que os Projectos acima tm cabimento: os Circuitos Digitais esto
por todo o lado Obviamente, e no quadro dum primeiro contacto com o Digital, eles foram escolhidos em
virtude da sua simplicidade extrema. Adivinha-se o que a vem: considerar Projectos algo mais complexos. Mas,
antes de o fazer, convm olhar o mercado, a ver que portas/gates mais tem ele para oferecer

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 30 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Gates bsicas

Page 31 of 101

/ Portas/Gates Derivadas

Para a concretizao de Circuitos Lgicos, o mercado disponibiliza, alm das Portas Elementares, Portas com
as designaes NOR, NAND, XOR e XNOR.
O NAND uma gate com (pelo menos) duas entradas e uma s sada; esta advm 0 sse todas as entradas
forem 1 do que se segue: se alguma delas for 0, a sada ser 1;
O NOR uma gate com (pelo menos) duas entradas e uma s sada; esta advm 1 sse todas as entradas
forem 0 do que se segue: se alguma delas for 1, a sada ser 0;
O XOR (mnemnica de eXclusive-OR) uma gate com duas entradas e uma s sada; esta advm 1 sse as
entradas forem diferentes uma da outra do que se segue: quando s entradas se apresenta o mesmo valor, a sada
ser 0;
O XNOR uma gate com duas entradas e uma s sada; esta advm 1 sse as entradas forem exactamente
iguais do que se segue: quando s entradas se apresentam valores diferentes, a sada ser 0.
O laboratrio faculta estas gates sob a forma de Circuitos Integrados, com as designaes SN7400, SN7410,
SN7420 e SN7430; e SN7402 e SN7427; e SN7486A e SN74286 (vid ao lado).
Para cada uma destas gates, est associado um par de smbolos: um mais antigo, e um outro mais recente
seguindo as convenes da IEC, vid ao lado.
Estas quatro portas/gates podem considerar-se derivadas das portas/gates elementares, no sentido de que se
podem conceber graficamente como sbia interligao de ANDs, ORs e NOTs:
O NAND equivale a um AND das entradas seguido de um NOT (e da o nome: NAND NOT de AND);
O NOR equivale a um OR das entradas seguido de um NOT (e da o nome: NOR NOT de OR);
O XOR equivale a um OR de dois ANDs das entradas (com a geografia ao lado) como poder o leitor
conferir, por aplicao sistemtica nas entradas de todas as combinaes possveis de 0s e 1s;
O XNOR equivale a um XOR das entradas seguido de um NOT (e da o nome: XNOR NOT de XOR).
Um olhar de relance aos logigramas ao lado faz adivinhar que o NOT ser algo abundante pelo que habitual
a seguinte praxis: em vez do smbolo grfico do NOT, usar borbulhas nas entradas das gates em cujas linhas se
encontram NOTs. A figura ao lado testemunha alguns exemplos:
o smbolo grfico do NAND que equivale a um AND seguido dum NOT acaba por ser o de um AND em
cuja sada se aps uma borbulha; idem para o NOR: o seu smbolo o dum OR com uma borbulha na sada;
e, nos logigramas que interligam ANDs a um ORs para lograr um XOR, as borbulhas nas entradas dos ANDs
devem ser entendidas como: representam um NOT na linha que termina nessa entrada.
(Note-se que, na conveno IEC, se usa uma praxis semelhante, mas ela aceita que se use, em vez de uma
borbulha, um pequeno tringulo rectngulo, vid ao lado)
H que realar que, num Circuito, o importante o que se passa nas entradas e sadas isto , nos extremos
Nomeadamente, considerem-se dois pontos dum circuito, seja {W e E}, interligados por um inversor: pretende-se
que em E se obtenha o inverso/complemento de W. irrelevante o stio onde se interpe o necessrio NOT: ele
pode ser encostado a W ou a E, sob a forma de borbulhas, ou pode ser algures a meio caminho entre ambos,
sob a forma do smbolo grfico do NOT.
A terminar: a importncia das gates NANDS e NORs deve ser clara: basta recordar a segunda soluo do
Projecto da Sesso anterior. De um ento designado Enunciado-NAND com no[e]s, chegou-se a um logigrama
s com NANDs. E nada impede generalizar essa metodologia a qualquer Projecto Ou seja: todos os Circuitos
Digitais se podem concretizar com, apenas, NANDs ou NORs! Nisto, no se distinguem de Circuitos com ANDs,
ORs e NOTs. Mas de facto, ver-se- mais adiante que Circuitos com NANDs ou NORs so mais baratos! Mais
ainda: em algumas tecnologias, um NAND mais simples de fabricar que um AND: num Circuito Integrado real,
um AND pode resolver-se no seu cerne por um NAND das entradas em srie com um outro NAND (de entradas
curto-circuitadas): neste aspecto, a gate elementar o NAND, e a gate derivada o AND!
Relativamente a XORs e XNORs, h que reconhecer: no so suficientes para concretizar tudo Mas a
complexidade do seu logigrama faz intuir que sero bons ingredientes em alguns casos E assim , de facto, como
se ver adiante quando se abordarem Circuitos Aritmticos: Somadores, Comparadores, Detectores de Paridade

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 32 of 101

Vitor M. P. Vargas / IST


Gates bsicas

Sistemas Digitais (Part I)

Page 33 of 101

/ Interligao de Portas/Gates

Teve o leitor a ocasio de preencher Tabelas de Verdade para trs controladores: o dum Alarme numa farmcia,
o dum Alarme para uma caldeira, e o dum sistema de rega Os subsequentes logigramas resumiram-se a uma
nica gate altura de progredir, para Projectos mais complexos, para os quais uma gate se revela insuficiente
O ponto de partida ser pacfico: um Circuito fica especificado sem ambiguidade por uma Tabela de Verdade.
A partir dela, deduz-se um Enunciado-SOP; ele faz o levantamento das combinaes de valores {0 e 1} que
as entradas devero assumir para que a sada do Circuito seja 1. Eis um exemplo:
I = 1 sse [(E=1) e (L=0) e (R=1)] ou [(E=1) e (L=1) e (R=0)]
Este Enunciado explicita a dependncia de I relativamente s entradas {E, L, R}; a sada I vem a ser 1 em
duas e apenas duas combinaes das entradas: quando elas forem respectivamente {1,0,1} ou {1,1,0}.
notvel que, no enunciado, ocorrem apenas trs tipos de operadores a saber: e, ou e no (subentendese que inquirir se igual a 0 equivale a inquirir se no igual a 1).
Do Enunciado-SOP, pode de imediato depreender-se um logigrama:
I=1 sse: [...] ou [...] traduz-se em: I a sada de um OR de 2-entradas;
[(...) e (...) e (...)] ou [(...) e (...) e (...)] traduz-se em: qualquer entrada do OR um AND de 3-entradas;
[(E=1) e (L=0) e (R=1)], que caracteriza um desses ANDs, traduz-se em: duas entradas ficam directamente
ligadas a E e R, a outra fica ligada a I atravs de um NOT (diz-se que a entrada L negada antes do AND);
[(E=1) e (L=1) e (R=0)], que caracteriza o outro AND, traduz-se em: duas entradas ficam directamente
ligada a E e L, a outra fica ligada a I atravs de um NOT (diz-se que a entrada R negada antes do AND).
A etapa seguinte concretizar esse logigrama mediante circuitos integrados que o mercado disponibiliza
Aps o que se deve verificar o Circuito: forar, nas entradas {E, L, R}, todas as combinaes admissveis dos
nveis elctricos {L e H}, e registar o correspondente valor sada I. Em, seguida, at se pode traar um
diagrama temporal, isto : um grfico da evoluo da sada quando se aplicam nas entradas combinaes possveis
daqueles nveis. Aplicando a correspondncia {L 0 e H 1}, esse diagrama temporal dever espelhar
exactamente a Tabela supracitada: se o no estiver, quer dizer que algum erro se cometeu
Um exemplo: no caso em apreo, a Tabela explicita que, para a combinao [(E=0) e (L=1) e (R=1)], a sada
deve ser 0. O que h a verificar : qual , no Diagrama Temporal, o nvel de sada para a combinao [(E=L) e
(L=H) e (R=H)]? Se ele no for L, ento cometeu-se algum erro no processo de desenho do Circuito.
Para que esta verificao seja o mais rpida possvel, convm conferir ao Diagrama Temporal uma certa
ordenao A praxis aqui seguida : a ordem dos grficos das entradas deve ser a mesma que aquela seguida nas
entradas do logigrama: a entrada a que respeita o grfico mais abaixo no Diagrama Temporal corresponde
entrada mais abaixo do logigrama que a que corresponde coluna mais esquerda na Tabela de Verdade!
Para bom entendedor, esta praxis mesmo para ser seguida pelos estudantes: em particular, na concretizao de
Circuitos nas placas de montagem do laboratrio, e na edio e simulao de Circuitos Digitais no xilinx.
Ainda que o Diagrama Temporal esteja conforme Tabela de partida, a eficincia/economia impe uma
pergunta: ser possvel construir um outro Circuito que tambm esteja conforme a essa Tabela?
A esta pergunta, a Sesso anterior responde afirmativamente: um Enunciado-SOP tem a forma de um e de
ous; mas tambm se poderia elaborar um Enunciado-POS (que um e de ous) Ainda uma outra
possibilidade: note-se que para I advir 1 necessrio que E=1, e que alm disso L e R tenham valores
distintos. Essa observao plasma-se no seguinte Enunciado-MultiLevel (nem SOP nem POS):
I = 1 sse (E=1) e [(L=0) e (R=1)] ou [(L=1) e (R=0)]
Adiante, abordar-se-o outos tipos de Enunciados Por uma razo bvia: chegar ao Circuito mais simples.
Qual aquele que precisa de uma menor quantidade de ORs, ANDs e NOTs? Ser este o cerne da discusso,
doravante
Para o efeito, e reconhecendo a extenso de cada Enunciado acima, a primeira coisa a fazer encurt-lo, pelo
artifcio de substituir e por , ou por +, (X=1) por X e (X=0) por X . Por cada um, obtm-se uma assim
designada Expresso algbrica, nitidamente mais compacta; e que o fica ainda mais:
pela eliminao dos subentendendo-se que X Y significa X Y (isto , X e Y);
pela conveno de ter precedncia sobre + que habilita eliminao de parntesis suprfluos

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 34 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Gates bsicas

Page 35 of 101

/ O Mundo Real

A terminar esta iniciao s gates, a curiosidade no dispensa algum tempo com o seu fabrico, ao menos nos
seus traos mais gerais Para chegar a um circuito integrado, a primeira etapa proceder obteno de silcio a
partir da areia da praia, mas preferencialmente a partir de jazidas de silcio bem mais puro O resultado vem a ser
cilindros de silcio, de dimetro cerca de 20 cm, que so cortados em bolachas finas. Cada uma delas ir ser o
substrato de mltiplos chips: antes de mais, procede-se implantao adequada de impurezas nas bolachas, e
depois ao seu corte de modo a obter chips. So eles que contm os transistores, condensadores, etc., que realizam
as operaes AND, OR, NOT e outras bem mais complexas Em seguida, e considerando o caso das Dual inLine
Package, so implantados dentro de blocos rectangulares de plstico (preto) com pinos metlicos de um lado e de
outro, vid figura. Enfim, procede-se interligao das entradas e sadas dos chips a esses pinos
Ao longo do tempo, a tecnologia de produo dos circuitos integrados tem vindo a desenvolver-se, no sentido
de uma maior integrao, isto : no sentido de dotar cada chip de cada vez mais transistores De uma densidade
SSI (Small Scale Integration), de at 10 transistores por chip, evolui-se para MSI e sucessivamente, vid quadro ao
lado, para ULSI e enfim SOC, System On Chip com para cima de 100 milhes de transstores em cada chip.
Ao longo do tempo, tem tambm havido uma procura por, nomeadamente, um menor dispndio de energia. Isso
levou existncia actualmente de vrias Famlias Lgicas. As mais comuns so:
TTL, Transistor-Transistor Logic, de que exemplo a srie SN7400;
CMOS, Complementary Metal Oxide-Silicon, de que exemplo a srie SN74HC.
Entre as duas, a famlia CMOS aquela que hoje mais usada , mas no laboratrio prefere-se usar a famlia
TTL (pelo simples motivo de que mais robusta contra o eventual mau manuseio por parte dos estudantes; por
mor de durabilidade dos chips, isso, claro, no dispensa os estudantes de consultarem as Dicas de Montagem).
Os chips TTL reconhecem dois nveis elctricos, a saber: Low=0 Volt e High=5 Volt. Na prtica, e em virtude
de haver que considerar o rudo elctrico, definem-se algumas gamas de tolerncia:
os fabricantes obrigam-se a fornecer nas sadas dos chips valores de tenso assim:
se for o caso de deverem assinalar High, a tenso estar entre 2,4 e 5 Volt;
se for o caso de deverem assinalar Low, a tenso estar entre 0 e 0,4 Volt;
existe por conseguinte uma margem de indeterminao: entre 0,4 e 2,4 Volt.
j quanto s entradas, os fabricantes obrigam-se ao seguinte:
se for o caso de estarem recebendo um valor de tenso entre 2 e 5 Volt, devero aceit-lo como High;
se for o caso de estarem recebendo um valor de tenso entre 0 e 0,8 Volt, devero aceit-lo como Low;
existe por conseguinte uma margem de rudo: entre 0,4 e 0,8 Volt e entre 2 e 2,4 Volt.
(Para bom entendedor: suponha que uma sada de um chip, W, se encontra ligada a uma entrada de um outro
chip, E; suponha ainda que em dado momento, essa sada de W deve ser High para o efeito aparecendo nela a
tenso de 2,4 Volt; esta propaga-se para aquela entrada de E; com o rudo elctrico ambiente, poder suceder
que no chegue l exactamente o valor de 2,4 Volt, mas algo menos ou mais Pois bem: desde que chegue l com
um valor acima de 2 Volt, ainda deve ser aceite como High)
Os chips CMOS da srie SN74HC tambm reconhecem dois nveis elctricos, mas eles dependem da tenso de
alimentao usada (que pode variar entre 2 e 6 V); em particular, se ela for de 6 V, os nveis elctricos so:
Low=entre 0 e 1,8 Volt e High=entre 4,2 e 6 Volt.
Uma caracterstica muito importante dos chips tem a ver com atrasos:
nas sadas, a transio entre os dois nveis Low a High e vice-versa no instantnea, leva o seu
tempo: designam-se respectivamente de risetime e de falltime os intervalos de tempo necessrios para o nvel na
sada subir de Low a High ou baixar de High a Low;
se a alterao em uma entrada do chip levar a que o nvel na sada mude, essa mudana no instantnea,
demora um assim designado tempo-de-propagao: designam-se respectivamente de tpLH e de tpHL os intervalos de
tempo que decorrem entre a alterao na entrada e a mudana da sada de Low a High ou de High a Low.
Uma outra caracterstica dos chips a ter em conta so os assim designados fan-in e fan-out. com ela que se
dar por terminada esta iniciao s gates.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 36 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Gates bsicas

Page 37 of 101

/ Buffers

Designa-se de fan-in o nmero mximo de entradas que uma gate poder aceitar. Para exemplificar, o mercado
disponibiliza NANDs com 2, 3 e mesmo 8 entradas
Abra-se um parntesis para assinalar que precisamente uma das questes que oportunamente ter de ser tratada
a seguinte: admita o leitor que desafiado a um Projecto e, aceitando-o, o traduz por um Enunciado-SOP em
que ocorrem ANDs de, seja 6 entradas A questo : como concretiz-lo fisicamente, se o mercado apenas lhe
oferece ANDs de, quando muito, 4 entradas?
Fan-out de uma gate , por seu turno, o nmero mximo de dispositivos a que ela se poder ligar.
Esta limitao pode ocasionalmente complicar a concretizao fsica dos logigramas: seja, como exemplo, o
caso de um logigrama ter que disponibilizar 4 sadas sadas essas a produzir por 4 gates: um AND, um OR, um
NAND e um XOR, vid figura ao lado; e admita-se que todas estas gates recebem, numa das suas entradas, o
resultado de um NOR entre, seja, S1 e S0 Se o fan-out desse NOR for inferior a 4, ento no ser suficiente
ligar a sua sada quelas 4 gates Isso supera-se aplicando, sada do NOR um assim denominado buffer, que
reproduz na sua sada o que estiver sua entrada mas cujo fan-out j suficiente para alimentar aquelas 4 gates.
Repare-se que um buffer, nesta acepo, no se destina a armazenar informao: antes inserido a modos de
amplificador, para que os nveis elctricos nas entradas das gates venham a estar nas gamas toleradas.
Existem outras circunstncias em que poder convir usar buffers, a saber:
para isolar as gates umas das outras;
quando o dispositivo a que se deve ligar a sada de um chip necessita de mais corrente do que aquela que o
chip fornece (como o caso de LEDs);

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 38 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


lgebra de Boole

Page 39 of 101

/ 3 Projecto

Esta sesso versa a lgebra de Boole, ela oferece uma notao e regras comumente usadas para minimizar
circuito Lgicos. Como todas as outras sesses, ir-se- desenrolar a partir de um Projecto concreto...
Considere um carro com alarme automtico, com dois sensores de abertura de porta, implantados nas portas
L (Left) e R (Right). Ele dever soar se e s se um boto Enable estiver activado e ao menos um dos sensores
for activado. Pretende-se o circuito que controla o Alarme.
O leitor j no dever precisar que lhe recordem as perguntas sacramentais
quais os predicados a associar s entradas {E, L, R}? qual a deciso a associar sada A?
qual a Tabela de Verdade da sada do Circuito?
A Tabela encontra-se ao lado; como expectvel, A volve-se 0 (i.e., o Alarme no activado):
nas primeiras quatro linhas, isto : quando E=0 (que significa: o boto Enable no est activado);
e na quinta linha, precisamente quando L=R=0 (que significa: nenhum dos sensores est activado)
Por outras palavras: A volve-se 1 apenas nas trs linhas mais abaixo. Essa observao pode verter-se num
Enunciado-SOP: A=1 sse: [(E=1) e (L=0) e (R=1)] ou [(E=1) e (L=1) e (R=0)] ou [(E=1) e (L=1) e (R=1)];
Como j se avanou na ltima Sesso, e como se far doravante, prefervel vert-lo numa Expresso-SOP
suportada por, respectivamente, +, e ~, vid ao lado (em que se omitiram os )
Atente-se forma da Expresso-SOP: uma soma (+) de trs termos, cada um dos quais um produto ()
de trs literais (Abra-se um parntesis: SOP so precisamente as iniciais de Sum Of Products).
Esclarea-se, porm: + e no remetem para as operaes aritmticas soma e produto supostamente
apreendidas na instruo primria; remetem, isso sim, para as operaes lgicas ou/OR e e/AND.
A Expresso-SOP foi obtida a partir da Tabela de Verdade de A; mas pode caminhar-se em sentido contrrio,
da Expresso-SOP para a Tabela, para tal bastando recordar as Tabelas de Verdade dessas duas operaes:
a Expresso-SOP a soma (+) de trs termos; a Tabela de Verdade do OR afirma: ela advir 1 sse ao
menos um desses termos de soma for 1;
cada deles um produto () de trs literais (na forma normal, como seja L; ou na forma complementada,
como seja L ); a Tabela de Verdade do AND afirma: cada um desses termos ser 1 sse todos os membros forem
1. Em particular, E L R ser 1 apenas quando for { E =1 e L =1 (ou: L=0) e R =1}; semelhantemente, E L R
ser 1 apenas quando for { E =1 e L=1 e R=0}; e E L R ser 1 apenas quando for {E=1 e L=1 e R=1}.
Conjugando a soma com esses produtos: a Expresso-SOP volve-se 1 apenas para as seguintes combinaes
das entradas: 101, 110 ou 111; essa a caracterstica da Tabela de Verdade (e precisamente assim que se
pretende que funcione a sada A do Circuito: da o sinal = em: A = Expresso-SOP).
Alternativamente Expresso-SOP, pode traduzir-se a Tabela de Verdade numa assim designada ExpressoPOS, que tem a forma de um produto de somas (POS so precisamente as iniciais de Product Of Sums), vid ao
lado. Deixando para outro momento um mtodo sistemtico de a ela chegar, adiante-se que, para este caso
particular, basta reescrever mentalmente o enunciado do Projecto sob a forma dum Enunciado-POS, e de ous: o
Alarme deve soar se e s se o boto Enable estiver activo e se, alm disso, ao menos um dos sensores, L ou R,
estiver activo.
Resumindo: a partir da Tabela de Verdade, podem escrever-se uma Expresso-SOP e uma Expresso-POS. Cada
uma delas concretiza-se num logigrama especfico s com ORs, AND e NOTs que, e este o ponto a realar, so
diferentes: o primeiro envolve 3 chips (e 14 entradas) e o segundo envolve apenas 2 chips (e 4 entradas). Quer
dizer: por raciocnio puramente lgico, chegou-se a dois logigramas que so funcionalmente equivalentes, no
sentido de que concretizam a mesmssima Tabela mas que so diferentes, um mesmo mais simples que o outro
(e, adiante-se: mais adiante, sero explorados mtodos de chegar a logigramas ainda mais simples).
ento natural a seguinte questo: haver alguma maneira de partir de um logigrama (ou da Expresso que lhe
subjaz) e chegar a um mais simples? este assunto, de minimizao de circuitos, que guiar as prximas pginas.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 40 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 41 of 101

/ Regras de Simplificao / 1 Literal apenas

Convm, claro, comear pelos cenrios mais simples, e depois ir complicando O cenrio mais simples : h
apenas um literal, seja X, a considerar
Considere-se um AND de duas entradas e aplique-se esse valor genrico, X, a uma delas E aplique-se
algum valor outra entrada Escapando por ora a fazer entrar no jogo um outro valor genrico, seja Y, restam
os seguintes quatro cenrios: aplicar, a essa outra entrada, 1, ou 0, ou X, ou o complemento de X.
A questo : qual o valor sada do AND, para cada um desses cenrios?
Para lhe responder, aplica-se adiante o mtodo dito de Induo completa que se resume ao seguinte:
determinar a Tabela de Verdade de cada cenrio (ou seja: varrer todas as combinaes possveis das
entradas/literais em jogo neste caso, apenas X , e registar os resultados sada) e formular uma regra de
minimizao a partir dela
A primeira coisa a fazer colocar esquerda uma coluna, X, listando todos os valores possveis que X pode
assumir: 0 e 1; logo sua direita, coloca-se uma coluna, X , para, linha a linha, conter o complemento de X
e preenche-se de cima para baixo com, naturalmente, 1 e 0.
direita, dispem-se quatro colunas, uma por cada um dos cenrios mencionados: {X 1}, {X 0}, {X X} e
{X X }; trata-se agora de preencher essas quatro colunas e formular uma regra pertinente
Veja-se a primeira coluna, {X 1} que significa aplicar X a uma entrada e 1 outra Qual o valor
sada do AND? A Tabela de Verdade do AND, ao lado, indica a soluo: ela envolve duas colunas esquerda, X e
Y; mas, dada a restrio de se forar X numa entrada e 1 na outra, da coluna Y s tm relevncia as linhas
em que ela 1, isto , as linhas 01 e 11. E, nessas linhas, o valor que se encontra na coluna Z exactamente
igual ao valor que se encontra na coluna X. Isso permite preencher a coluna X 1
Com o mesmo tipo de raciocnio se podero preencher as demais colunas; nomeadamente:
Para o caso {X 0}, apenas tm relevncia as linhas da Tabela em que Y=0, isto : as linha 00 e 10.
Para o caso {X X}, apenas tm relevncia as linhas da Tabela em que Y=X, isto : as linha 00 e 11.
Para o caso {X X }, apenas tm relevncia as linhas da Tabela em que Y= X , isto : as linhas 01 e 10.
Com estes reparos, preenchem-se as colunas que representam os quatro cenrios em vista. Resta olhar para elas:
A coluna correspondente ao caso {X 1} exactamente igual coluna esquerda, X, ou seja: X 1 =X
Esta regra diz: a operao tem um elemento neutro, 1;
A coluna correspondente ao caso {X 0} toda ela preenchida com 0s, ou seja: X 0 = 0
Esta regra diz: a operao tem um elemento absorvente, 0;
A coluna correspondente ao caso {X X} exactamente igual coluna esquerda, X, ou seja: X X =X
Esta regra, dita de Idempotncia, diz: no h quadrados nem cubos, X X continua a ser igual a X;
A coluna correspondente ao caso {X X } toda ela preenchida com 0s, ou seja: X X = 0
Esta regra designada de Complementariedade.
Repare-se que o caminho acima se fez em torno de um AND de duas entradas, mas nada impede refaz-lo
desta feita em torno de um OR de duas entradas Chegar-se-ia a concluses anlogas, alis sumarizadas ao lado.
Por mor da lei do menor esforo, prefere-se ter em conta a dualidade das operaes AND e OR, j assinalada:
substituindo, na Tabela de Verdade do AND, todos os 0s por 1s e vice-versa, surge a Tabela relativa ao OR.
Se isso assim , ento pode afirmar-se o seguinte: se se dispuser de uma regra vlida envolvendo s, obtm-se
uma outra regra vlida se se substituir os s por +s e se substituir 0s por 1s e vice-versa. Aplicando esta
substituio coluna da esquerda das regras de Simplificao ao lado, de imediato surge a coluna da direita
Ainda com s um Literal, assinala-se ao lado outra regra, dita de Involuo: se se complementar duplamente o
valor X, obtm-se esse mesmo valor X. Tal como as outras regras, prova-se por Induo Completa.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 42 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 43 of 101

/ Regras de Simplificao / 2 Literais apenas

Explorados cenrios com apenas um literal, altura de abordar cenrios com dois literais, seja X e Y Ao
lado, esto listadas as Regras de Simplificao que envolvem dois literais denominadas respectivamente de
Comutatividade, Absoro, Redundncia, Adjacncia e Leis de De Morgan.
Que so regras vlidas, o leitor instado a demonstr-lo de modo anlogo ao que foi feito a propsito das
Regras de Simplificao envolvendo um literal apenas: por Induo Completa Recorde-se o que se fez ento:
preencher a Tabela de Verdade de cada cenrio e logo depois olhar para ela e deduzir uma Regra. Mas,
porquanto agora cada uma das Regras se exprime como equivalncia entre duas Expresses, prefervel seguir
outra estratgia: determinar as Tabelas de Verdade dessas Expresses, e, depois, verificar que so exactamente
iguais Nesta estratgia, est implcito: se se obtm os mesmos valores quaisquer que sejam X e Y, pode
concluir-se que essas Expresses so equivalentes, e portanto que a Regra vlida.
Para demonstrar a validez das Regras ao lado, possvel tambm usar um mtodo grfico concretamente, com
recurso aos assim designados Diagramas de Venn. Adiante, testemunha-se a sua aplicao s leis de De Morgan,
deixando ao leitor a sua aplicao s outras Regras de Simplificao:
A base do mtodo olhar as Regras de uma outra perspectiva: pensar X e Y' como subconjuntos (do
Universo) e os smbolos s e +s como operaes Interseco e Unio sobre subconjuntos. Com isso, a
equivalncia entre Expresses volve-se na equivalncia entre subconjuntos; bastar ento discernir os
subconjuntos representados nos dois membros da igualdade de cada Regra, e verificar que so iguais
Em termos prticos: a primeira etapa traar uma superfcie rectangular, e, no seio dela, delimitar duas reas
circulares que se sobreponham em parte. Subentende-se: a superfcie rectangular representa o Universo, e os
crculos etiquetados com os literais, X e Y, em jogo representam subconjuntos desse Universo.
A segunda etapa determinar a rea que representa o subconjunto esquerda do sinal =, X Y . Para o
efeito, determina-se primeiro a rea representada por X Y e que vem a ser a Interseco das reas X e Y,
isto , o que comum a ambas; e depois, determina-se o complemento dessa rea que vem a ser tudo o que est
dentro do Universo mas fora dela, vid ao lado.
A terceira etapa determinar a rea que representa o subconjunto direita do sinal =, X Y . Para o efeito,
determina-se primeiro a rea representada por X (o complemento de X) e que vem a ser tudo o que est
dentro do Universo mas fora de X; determina-se depois a rea representada por Y ; enfim, determina-se a Unio
das reas X e Y e que vem a ser o que pertence a uma ou outra.
A ltima etapa , naturalmente, comparar as reas que representam os dois subconjuntos esquerda e direita
do sinal =. Constata-se que elas coincidem pelo que as leis de De Morgan so mesmo vlidas.
Em rigor, as leis de De Morgan so duas, e a que acima se aborda a que ocupa a coluna da esquerda do
quadro ao lado. E, perguntar o leitor, como demonstrar a lei que ocupa a coluna da direita? A esse respeito (e alis
a respeito de todas as Regras da coluna da direita), claro que se poder tambm usar o mtodo de Induo
Completa, ou os Diagramas de Venn; mais cmodo ainda, pode-se aplicar o j por mais que uma vez assinalado
princpio da Dualidade: por cada Regra vlida (da coluna esquerda), obtm-se uma outra Regra vlida se se
substituir os s por +s (e vice-versa) e se substituir 0s por 1s (e vice-versa).
A terminar: h que apreender bem as leis de De Morgan. Em portugus corriqueiro, afirmam que o
complemento dum produto no o produto dos complementos, , isso sim, a soma dos complementos; e que o
complemento duma soma no a soma dos complementos, , isso sim, o produto dos complementos!
Como Corolrio: complementar a sada de um AND equivale a troc-lo por um OR e a complementar ambas as
entradas; e complementar a sada de um OR equivale a troc-lo por um AND e a complementar ambas as entradas!
H uma forte razo para conferir uma especial nfase a estas leis; como o leitor ter ocasio de o apreciar mais
tarde, elas podem conduzir a uma grande simplificao dos circuitos! Adiante-se que uma praxis habitual ser
traduzir um Circuito em uma Expresso (SOP ou POS), e depois aplicar as leis de De Morgan

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 44 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 45 of 101

/ Regras de Simplificao / 3 Literais apenas

Explorados cenrios com um ou dois literais, altura de abordar cenrios com trs literais, seja X,Y e Z
Ao lado, esto listadas as Regras de Simplificao que envolvem trs literais denominadas respectivamente de
Comutatividade, Distributividade e Consenso.
Que so regras vlidas, o leitor instado a demonstr-lo de modo anlogo ao que foi feito a propsito das
Regras de Simplificao j abordadas: por Induo Completa, ou por Diagramas de Venn
E de novo, aps demonstrar a validez das Regras da coluna esquerda do quadro ao lado, bastar-lhe- recorrer
ao princpio da Dualidade para demonstrar a validez das Regras da coluna direita
Recapitulando o caminho recentemente percorrido: dispe-se de um catlogo de 132 Regras de Simplificao
com vista obteno de Circuitos funcionalmente equivalentes, todavia mais simples.
Qui a sua aplicao a um exemplo concreto possa ajudar a topar-lhe o alcance O exemplo vai ser
precisamente a Expresso-SOP que traduz o Projecto entre mos nesta Sesso, vid ao lado:
a Expresso-SOP envolve trs termos de produto - E L R , E L R e E L R que tm algo em comum: o
literal E; isso sugere aplicar a Distributividade; na prtica, pe-se E em evidncia
o termo entre parntesis uma soma subentendendo-se que primeiro se soma L R com L R e, s depois
se lhe adiciona L R ; mas, a percepo de que os dois ltimos termos tm algo em comum (o literal L), sugere
aplicar a Associatividade: comear primeiro por somar os dois ltimos termos e somente depois acrescentar o
primeiro
os termos L R e L R tm algo em comum, a saber: o literal L; isso sugere aplicar a Distributividade; na
prtica, pe-se L em evidncia
L fica multiplicando um termo que precisamente um literal mais o seu complemento; isso sugere aplicar a
Complementariedade
com isso, L fica multiplicando 1; hora de recordar que 1 o elemento neutro do produto
a expresso entre parntesis fica agora sendo L R L ; aplicando a Comutatividade, isto , transformando-a
em L L R , torna-se agora sugestivo aplicara a Redundncia, obtendo-se o resultado final, E R L
uma alternativa, mais demorada , aps aplicar a Comutatividade (obtendo L L R ), aplicar a
Distributividade
o parntesis da esquerda um literal mais o seu complemento; isso sugere aplicar a Complementariedade
aps o que, por aplicao da Comutatividade, e recordando que 1 o elemento neutro do produto, se chega
ao mesmo resultado final, E R L .
Concluindo: partindo de uma Expresso-SOP envolvendo 3 chips (e 14 entradas) , atingiu-se uma Expresso
mais simples envolvendo apenas 2 chips (e 4 entradas): valeram a pena estas manipulaes algbricas

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 46 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 47 of 101

/ Resumo/lgebra de Boole

Ao lado, apresenta-se o catlogo das Regras de Simplificao. De facto, o ttulo lgebra de Boole, e isso
pede uma explicao
Em 1930, no MIT, foi construdo um potentssimo computador analgico electromecnico o analisador
diferencial de Bush. Na altura era o computador mais potente do mundo com o seno de estar limitado
resoluo de uma classe de problemas apenas: equaes diferenciais
A mquina foi construda um tanto empiricamente; o funcionamento exigia a configurao de um conjunto de
relays/interruptores e o professor Bush encarregou um seu assistente, o engenheiro Claude Shannon, de
empreender um estudo matemtico desse funcionamento
Shannon um dos intervenientes-chave para que o leitor possa dispor de computadores, de portteis, de
cmaras de vdeo digital, etc. etc.. Duas das suas contribuies maiores para o efeito foi a fundao da Teoria da
Informao (que ser mencionada em tempo oportuno) e, antes, uma Tese de Mestrado em 1938, onde sustenta:
que os computadores ficariam bem mais baratos se, na sua construo, se abandonasse o sistema de
numerao decimal em favor do sistema binrio (nesse sentido, ele pode ser considerado o pai do bit);
que circuitos baseados na interligao de relays que tm apenas dois estados (On e Off) ficam cabalmente
descritos por uma estrutura matemtica inventada um sculo antes, dita de lgebra de Boole (de 2 valores).
A lgebra de Boole uma estrutura matemtica inventada por um professor ingls, George Boole, em 1854
mostrando que a lgica poderia ser representada por expresses algbricas.
A lgebra de Boole envolve a definio dos valores 0 e 1 (ou V e F), e dos operadores +, e ~
gozando do conjunto de Regras de Simplificao no quadro ao lado. Com eles, e literais, se podem escrever
Expresses Booleanas com o mesmssimo formato que o leitor ter encontrado no Ensino Secundrio quando
tomou contacto com expresses algbricas
Justamente, Shannon sustenta que todos os Circuitos (constitudos por Relays) se podem concretizar como uma
interligao de Relays em srie e em paralelo ou, usando a notao da lgebra de Boole, como uma Expresso
Booleana. Quando, por conseguinte, se traduz uma Tabela de Verdade numa Expresso-SOP ou numa ExpressoPOS, o que se est fazendo encontrar uma Expresso Booleana que traduz o circuito O ponto importante
que, aplicando a lgebra de Boole, se poder chegar a circuitos mais simples

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 48 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 49 of 101

/ Desafio a quem gosta de Desafios

Um desenvolvimento da lgebra de Boole consistiu na eleio, por Huntington, de um ncleo de Axiomas (que
o quadro ao lado assinala) de que podem deduzir-se todas as Regras de Simplificao (que no sejam Axiomas),
ou, na gria da lgebra de Boole, Teoremas.
Recorde-se, todavia, que as Regras de Simplificao foram, ao longo desta sesso, demonstradas pelo recurso
s Tabelas de Verdade das Operaes +, e ~. Ou seja: se se conseguir, a partir dos Axiomas, deduzir essas
Tabelas de Verdade, a demonstrao dos Teoremas encontrar-se- ipso facto cumprida.
Obviamente, deixa-se ao leitor o levar por diante a deduo das Tabelas de Verdade a partir dos Axiomas
sem, claro, ceder tentao de ir procur-la na Internet
(Por outras palavras:
o axioma relativo ao elemento neutro, X1=X e X+0=X, conduz a que o resultado seja igual a X:
nas linhas da Tabela de Verdade da Operao em que Y=1 isto : nas linhas 01 e 11;
nas linhas da Tabela de Verdade da Operao + em que Y=0 isto : nas linhas 00 e 10.
deixa-se ao leitor acabar de preencher as Tabelas, com os valores que os Axiomas impem)

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 50 of 101

Vitor M. P. Vargas / IST


lgebra de Boole

Sistemas Digitais (Part I)

Page 51 of 101

/ Aplicando a lgebra de Boole

Diminuir o nmero de chips para concretizar um Projecto um objectivo crucial no seu desenho: menos
dispositivos a adquirir, a requerer uma superfcie menor, menor gasto em energia, menos hardware susceptvel de
avariar... Pelo que convir gastar algum tempo em exemplificar a aplicao da lgebra de Boole na simplificao
de Expresses Booleanas. Ao lado, apresenta-se uma expresso e sucessivas etapas de simplificao
a Expresso dada uma soma de vrios termos de produto; todos eles envolvem o literal C, pelo que, e no sentido de o
pr em evidncia, se aplica a Comutatividade para que, em todos eles, C fique esquerda
hora de aplicar a Distributividade na prtica, pr C em evidncia

A partir da expresso assim obtida, oferecem-se vrias trajectrias distintas:


1 Trajectria:
a soma entre parntesis envolve trs termos; pode aplicar-se a Associatividade no sentido de comear por somar os
dois ltimos membros e somente depois adicionar o primeiro
recorde-se agora uma das leis de De Morgan: o complemento da soma o produto dos complementos Ento, pode
substituir-se o primeiro membro do parntesis, que um produto de complementos, pelo complemento de uma soma
C fica multiplicando uma soma mais o seu complemento; isso sugere aplicar a Complementariedade
com isso, C fica multiplicando 1; hora de recordar que 1 o elemento neutro do produto

2 Trajectria:
no sentido de aplicar a Distributividade, aplica-se a Comutatividade aos dois primeiros termos da soma
aplica-se agora a Distributividade: a soma dos primeiros termos entre parntesis convertida num produto de somas
a primeira dessa somas precisamente um literal mais o seu complemento; isso sugere aplicar a Complementariedade
com isso, a segunda dessa somas fica multiplicando 1; hora de recordar que 1 o elemento neutro do produto
a soma entre parntesis envolve trs termos; pode aplicar-se a Associatividade no sentido de comear por somar os
dois ltimos membros e somente depois adicionar o primeiro;
a ltima soma precisamente um literal mais o seu complemento; isso sugere aplicar a Complementariedade
com isso, primeira soma fica sendo adicionado 1; hora de recordar que + tem um elemento absorvente, 1
com isso, C fica multiplicando 1; hora de recordar que 1 o elemento neutro do produto

3 Trajectria:
a Expresso dada uma soma de vrios termos de produto; o primeiro envolve A e B, mas o segundo resume-se a A
e o terceiro resume-se a B De forma a convert-los em termos que contenham, todos eles, os dois literais, A e B,
recorde-se que 1 o elemento neutro do produto
a seguir, aplica-se a Complementariedade: substitui-se 1 por um literal mais o seu complemento
a seguir, Distributividade: desembaraa-se a expresso de parntesis
aplica-se a Comutatividade para que, em todos os membros da soma, B fique esquerda Alm disso, e tambm
aplicando a Comutatividade, troca-se a ordem do segundo e terceiro termos
hora de aplicar a Associatividade associando os dois primeiros termos, e associando os trs ltimos E, logo depois,
aplicar a Distributividade pondo B e B em evidncia, respectivamente na primeira e segunda associao
hora de aplicar a Idempotncia: a soma de A com A volve-se em A
logo aps, aplica-se a Complementariedade: a soma de um literal com o seu complemento volve-se 1
com isso, B e B ficam multiplicando 1; hora de recordar que 1 o elemento neutro do produto
logo aps, aplica-se a Complementariedade: a soma de um literal com o seu complemento volve-se 1
com isso, C fica multiplicando 1; hora de recordar que 1 o elemento neutro do produto

espectacular a simplificao lograda: de um Circuito remetendo para 1 OR de 3-entradas, 1 AND de 3entradas, e 2 AND de 2-entradas, e 2 NOT, chegou-se a um Circuito onde nem sequer so precisos chips: sob pena
de desperdcio e ineficincia, mesmo decisivo saber manusear a lgebra de Boole!
Saliente-se que, neste exemplo, as trs trajectrias conduziram ao mesmo resultado, C; mas isso nem sempre
est garantido: dada uma Expresso Booleana, uma deciso na aplicao da lgebra de Boole pode volver-se numa
trajectria que resulte numa Expresso final mais ou menos simples! E a 3 trajectria ilustra um artifcio comum:
por vezes, vantajoso complicar temporariamente a Expresso, para que a seguir se obtenha algo mais simples.
Isto um srio aviso ao leitor: no basta compreender a lgebra de Boole, para fazer isto bem, h que
praticar!

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 52 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Funes Booleanas

Page 53 of 101

/ 4 Projecto

Esta sesso versa Funes Booleanas mais prosaicamente, estratgias diferentes de desenho/especificao de
circuitos. Como todas as outras sesses, ir-se- desenrolar a partir de um Projecto concreto...
Considere um jri constitudo por trs membros; cada um deles tem sua disposio um boto com que
aprovam ou reprovam os candidatos que se apresentam Se e s se a maioria estiver a favor da aprovao, uma
lmpada verde acende. Pretende-se um circuito para controlar o acender / apagar da lmpada
A Tabela de Verdade encontra-se ao lado; como seria expectvel,
esquerda, dispem-se trs colunas, representando os trs membros do jri, {B2, B1, B0}; conforme praxis
recomendada, as colunas dispem-se de modo a que a de maior ndice, B2, fique esquerda
V volve-se 1 (i.e., a lmpada verde acende) apenas nas quatro linhas em que ocorrem dois ou mais 1s
Para um leitor familiarizado com funes algbricas, ser pacfico que esta Tabela de Verdade mais no faz que
especificar uma Funo, V (B2, B1, B0); f-lo pelo processo de, para todos os valores que as variveis {B2, B1, B0}
podem assumir, declarar qual o valor que resulta para a funo.
(Abra-se um parntesis para recordar a caracterstica fundamental de uma funo: ela uma varivel
dependente que, para uma dada combinao de valores das variveis independentes, se volve sempre em algum
valor. No depende de nada mais. E precisamente esse o funcionamento da Tabela de Verdade: a coluna V
depende somente de {B2, B1, B0} e em cada linha, V assume um valor nico apenas!)
A Tabela de Verdade pode ento ser entrevista:
como a especificao de um Circuito cujas entradas so {B2, B1, B0} e cuja sada V
como a especificao de uma Funo Booleana! cujas variveis independentes (ou, mais simplesmente,
variveis) so {B2, B1, B0} e cuja varivel dependente (ou, mais simplesmente, valor da funo) V.
Do que se depreende que equivalente falar de variveis ou de entradas, de sada ou do valor da funo, de
funo ou de circuito. No fundo, isso que subjaz a praxis seguida na sesso anterior:
traduzir a Tabela de Verdade numa Funo Booleana: Sada = Expresso (SOP ou POS);
concretiz-la em logigramas: as variveis da funo (os literais da Expresso) so mapeadas em entradas, o
valor da expresso mapeado na sada, e a Expresso mapeada numa interligao de ANDs, ORs e NOTs
Entretanto, chegou a hora de adiantar que sob o termo circuito cabem duas classes:
Circuitos ditos Combinatrios, caracterizados por: a cada instante, a sada depende somente dos valores que
ento esto sendo aplicados s entradas. Esta abordagem dos Sistemas Digitais dedica-lhe toda a Parte-I e quase
toda a Parte-II;
Circuitos ditos Sequenciais, caracterizados por: para determinar a sada, no basta conhecer as entradas num
dado instante: tambm preciso saber o que aconteceu antes, preciso saber todo o historial das entradas at
ento. Uma variante especial desses Circuito denomina-se de Circuitos Sequenciais Sncronos e ser o prato
forte do final da Parte-II e da Parte-III.
Do que se aduziu acima, uns e outros ficam cabalmente especificados por Funes Booleanas (a nica
diferena sendo que a influir na sada dos Circuitos Sequenciais Sncronos, no chega ter em conta variveis
externas do Circuito: tambm h que ter em conta variveis internas, a cargo do registo daquele historial
supracitado).
este carcter central das Funes Booleanas no desenho de circuitos que justifica dedicar-lhe esta sesso:
trata-se de explorar e avaliar as vrias formas de as representar, e de como se pode passar de uma para outra. Isso
ser feito, claro, em torno do exemplo concreto que constitui a Tabela de Verdade ao lado

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 54 of 101

Vitor M. P. Vargas / IST


Funes Booleanas

Sistemas Digitais (Part I)

Page 55 of 101

/ 1 Forma / SOP cannica

Ao lado, apresenta-se a Tabela de Verdade para o 4 Projecto. Por mor de facilitar a exposio adiante, convm
enumerar as suas linhas, comeando em 0 e terminando em 7. A combinao de valores das variveis associada
a cada linha fica sendo genericamente designada de bi; por exemplo, b3=011, b5=101 e assim por diante
Atente-se na coluna V. Tem quatro 1s (e quatro 0s). Recordando o significado da operao +, pacfico
considerar essa coluna como o OR/+ de 4 colunas, cada uma contendo apenas um 1, vid ao lado. O mesmo
dizer que a Funo V se pode entender como o OR/+ de 4 funes das entradas, denominadas de Mintermos:
m3 1 apenas na linha 3, isto : apenas para a combinao de valores {B2=0, B1=1, B0=1}; isto, claro,
remete para um AND: m3 (B2, B1, B0) = B 2 B1 B0 (recorde: a sada de um AND advm 1 sse todas as suas
entradas forem 1);
m5 1 apenas na linha 5, isto : s quando {B2=1, B1=0, B0=1}; ou seja: m5 (B2, B1, B0) = B 2 B1 B0 ;
m6 1 apenas na linha 6, isto : s quando {B2=1, B1=1, B0=0}; ou seja: m6 (B2, B1, B0) = B 2 B1 B0 ;
m7 1 apenas na linha 7, isto : s quando {B2=1, B1=1, B0=1}; ou seja: m7 (B2, B1, B0) = B 2 B1 B0 .
Convm sublinhar a forma de cada Mintermo: a Tabela de Verdade de um mi genrico 1 apenas na linha
i; mi ser um produto de todas as variveis; nesse produto, cada varivel aparece uma s vez, na forma normal
ou complementar, consoante respectivamente essa varivel for 1 ou 0 em bi.
Na prtica, ento:
varre-se a coluna V, de cima para baixo procura dos 1s... No caso, o primeiro 1 ocorre na linha 3
olha-se esquerda, a ver qual o bi que lhe corresponde; no caso, ser b3=011;
forma-se depois um produto de todas as variveis (nesta abordagem, preferindo-se comear por escrever
aquela mais a esquerda); a forma em que a varivel ficar normal ou complementar depende de bi: se em bi
a varivel for 1, usa-se a forma normal; caso contrrio, usa-se a forma complementar. No caso, em que b3=011, a
primeira varivel 0, e as outras duas so 1; em consequncia, a primeira, B2, ficar na forma complementar,
e as outras duas, B1 e B0, ficaro na formal normal: m3 = B 2 B1 B0 .
continua-se a varrer a coluna, detendo-se em cada 1 para aplicar um procedimento similar
no final, ter-se-o determinado, e escrito, todos os mintermos de V;
para lograr uma expresso booleana de V, bastar, enfim, somar todos esses mintermos.
A esta Expresso de V d-se o nome de SOP cannica, ou 1 Forma Cannica (ou, ainda, Forma Disjuntiva).
Posto que vivel aplicar o procedimento acima a todas as Tabelas de Verdade, conclui-se que todas as funes
Booleanas se podem escrever nesta forma.
No caso, V = m3 + m5 + m6 + m7; ou, numa forma mais sinttica, V = m (3, 5, 6, 7) ou, por extenso:
V B 2 B1 B0 B 2 B1 B0 B 2 B1 B0 B 2 B1 B0

A partir daqui, se deduz o logigrama do Circuito, vid ao lado que requere 1 OR de 4-entradas, 3 NOTs e 4
ANDs de 3-entradas.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 56 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Funes Booleanas

Page 57 of 101

/ 2 Forma / POS cannica

Ao lado, apresenta-se a Tabela de Verdade para o 4 Projecto


Atente-se na coluna V. Tem quatro 0s (e quatro 1s). Recordando o significado da operao , pacfico
considerar essa coluna como o AND/ de 4 colunas, cada uma contendo apenas um 0, vid ao lado. O mesmo
dizer que a Funo V se pode entender como o AND/ de 4 funes das entradas, ditas de Maxtermos:
M0 0 apenas na linha 0, isto : apenas para a combinao de valores {B2=0, B1=0, B0=0}; isto, claro,
remete para um OR: M0 (B2, B1, B0) = B 2 B1 B0 (recorde: a sada de um OR advm 0 sse todas as suas
entradas forem 0);
M1 0 s na linha 1, isto : s quando {B2=0, B1=0, B0=1}; ou seja: M1 (B2, B1, B0) = B 2 B1 B0 ;
M2 0 s na linha 2, isto : s quando {B2=0, B1=1, B0=0}; ou seja: M2 (B2, B1, B0) = B 2 B1 B0 ;
M4 0 s na linha 4, isto : s quando {B2=1, B1=0, B0=0}; ou seja: M4 (B2, B1, B0) = B 2 B1 B0 .
Convm sublinhar a forma de cada Maxtermo: a Tabela de Verdade de um Mi genrico 0 apenas na linha
i; Mi ser uma soma de todas as variveis; nessa soma, cada varivel aparece uma s vez, na forma normal ou
complementar, consoante respectivamente essa varivel for 0 ou 1 em bi.
Na prtica, ento:
varre-se a coluna V, de cima para baixo procura dos 0s... No caso, o primeiro 0 ocorre na linha 0
olha-se esquerda, a ver qual o bi que lhe corresponde; no caso, ser b0=000;
forma-se depois uma soma de todas as variveis (nesta abordagem, preferindo-se comear por escrever aquela
mais a esquerda); a forma em que a varivel ficar normal ou complementar depende de bi: se em bi a
varivel for 0, usa-se a forma normal; caso contrrio, usa-se a forma complementar. No caso, em que b0=000,
todas as variveis so 0; em consequncia, ficaro todas na formal normal: M0 = B 2 B1 B0 .
continua-se a varrer a coluna, detendo-se em cada 0 para aplicar um procedimento similar
no final, ter-se-o determinado, e escrito, todos os maxtermos de V;
para lograr uma expresso booleana de V, bastar, enfim, fazer o produto de todos esses maxtermos.
A esta Expresso de V d-se o nome de POS cannica, ou 2 Forma Cannica (ou, ainda, Forma Conjuntiva).
Posto que vivel aplicar o procedimento acima a todas as Tabelas de Verdade, conclui-se que todas as funes
Booleanas se podem escrever nesta forma.
No caso, V = M0 + M1 + M2 + M4; ou, numa forma mais sinttica, V = M (0, 1, 2, 4) ou, por extenso:

V B 2 B1 B0 B 2 B1 B0 B 2 B1 B0 B 2 B1 B0

A partir daqui, se deduz o logigrama do Circuito, vid ao lado que requere 1 AND de 4-entradas, 3 NOTs e 4
ORs de 3-entradas.

Revejam-se as expresses obtidas para ambas as formas cannicas:


V = m (3, 5, 6, 7) e V = M (0, 1, 2, 4).
Convm reparar nas duas propriedades de que gozam os conjuntos de ndices nelas utilizados:
por um lado, esgotam a totalidade dos nmeros que identificam as linhas da Tabela de Verdade;
por outro lado, so disjuntos: nenhum dos ndices aparece em ambas as formas, e .
Isso no fruto do acaso: em , coleccionam-se os nmeros de todas as linhas em que a funo toma o valor
1, e s essas e em coleccionam-se os nmeros de todas as linhas em que a funo toma o valor 0, e s
essas

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 58 of 101

Vitor M. P. Vargas / IST


Funes Booleanas

Sistemas Digitais (Part I)

Page 59 of 101

/ Formas SOP e POS No-cannicas

Neste ponto do desenvolvimento, dispe-se de duas expresses, ambas Formas Cannicas, para representar a
Tabela de Verdade para o 4 Projecto naturalmente conduzindo a distintos logigramas Lembrando entretanto a
lgebra de Boole e a sua promessa de lograr expresses mais simples , hora de a aplicar
Da prtica j tida, mormente no exemplo que fechou a sesso anterior, ter ficado claro que o segredo da
simplificao procurar e associar dois termos Adjacentes, isto : dois termos que difiram em apenas uma
varivel; num dos termos, ela aparece na forma Normal, e, no outro termo, aparece na Forma Complementar:
X Y X Y X e
X YX YX
Ou se aplica num golpe s a Adjacncia; ou se aplica a Distributividade (neste caso, pondo X em
evidncia), e logo a seguir a Complementariedade e, enfim, a propriedade de + e terem elementos neutros

Partindo da 1 Forma Cannica, vid ao lado,


claro que o primeiro e o segundo termos da soma no so adjacentes, pois diferem em duas variveis (B2 e
B1) Idem para o primeiro e o terceiro, mas j o primeiro e o quarto diferem apenas na varivel B2: so
adjacentes , pois, sugestivo, associ-los, e aplicar a propriedade da Adjacncia
Mas uma assero similar vale para o segundo e quarto termos: so adjacentes; idem para o terceiro e quarto
termos: tambm so adjacentes.
Resumindo: o quarto termo adjacente aos trs primeiros e natural a questo: com qual deles ser
prefervel associar esse quarto termo? A melhor resposta ser: associ-lo a todos os trs! Para o efeito, um primeiro
passo aplicar a Idempotncia replicando o quarto termo, dele obtendo portanto um total de trs cpias
Numa segunda etapa, aplica-se a Comutatividade: reposiciona-se uma cpia do quarto termo a seguir ao
primeiro termo e outra a seguir ao segundo termo
Numa terceira etapa, aplica-se a Comutatividade, no seio de cada termo de produto: nos dois primeiros
termos da soma, a varivel que difere neles (B2) reposicionada direita; idem para os dois termos seguintes e
para os dois ltimos termos
Continua-se aplicando a Associatividade e a Distributividade: no primeiro par de termos, pe-se B1B0 em
evidncia; no segundo par, pe-se B2B0 em evidncia; no terceiro par, pe-se B2B1 em evidncia;
Continua-se aplicando a Complementariedade
Enfim, e recordando que 1 o elemento neutro do produto, descartam-se os 1s entre parntesis
A expresso que se obteve uma SOP uma soma de produtos mas no cannica: pois que ao menos um
desses termos de produto (de facto, todos deles) no envolve todas as variveis!
Essa SOP no-cannica resulta num logigrama suportado em apenas dois chips: um com ORs e o outro
disponibilizando os trs ANDs de 2-entradas. Um logigrama mais simples que o da 1 Forma Cannica!
Partindo agora da 2 Forma Cannica, vid ao lado,
O primeiro termo adjacente aos trs seguintes e natural aplicar a Idempotncia replicando o primeiro
termo, dele obtendo portanto um total de trs cpias
Numa segunda etapa, aplica-se a Comutatividade: reposiciona-se uma cpia do primeiro termo antes do
terceiro termo e outra antes do quarto termo
Numa terceira etapa, aplica-se a Comutatividade, no seio de cada termo de soma: em cada par de termos de
produto, a varivel que difere neles reposicionada direita
Continua-se aplicando a Associatividade e a Distributividade: no primeiro par de termos, pe-se B2+B1 em
evidncia; no segundo par, pe-se B2+B0 em evidncia; no terceiro par, pe-se B1+B0 em evidncia;
Continua-se aplicando a Complementariedade
Enfim, e recordando que 0 o elemento neutro da soma, descartam-se os 0s entre parntesis
A expresso que se obteve uma POS um produto de somas mas no cannica: pois que ao menos um
desses termos de soma (de facto, todos deles) no envolve todas as variveis!
Essa POS no-cannica resulta num logigrama suportado em apenas dois chips: um com ANDs e o outro
disponibilizando os trs ORs de 2-entradas. Um logigrama mais simples que o da 2 Forma Cannica!
Moral da histria: manda a eficincia no desenho de circuitos o saber simplificar Expresses Booleanas e
faz-lo bem s se consegue com muita prtica

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 60 of 101

Vitor M. P. Vargas / IST


Funes Booleanas

Sistemas Digitais (Part I)

Page 61 of 101

/ Formas s com NANDs ou NORs

SOPs e POSs, as formas j exploradas para representar Funes Booleanas, fazem apelo a trs tipos de chips:
ORs, ANDs e NOTs. Mas h formas que se bastam em um nico tipo de chip, a saber: NAND ou NOR. o que se
vai abordar de imediato. No final, ser clara a maior eficincia a que tendencialmente conduz tal representao.
Ambas as formas se fundamentam em duas das Regras de Simplificao: a Involuo e as leis de De Morgan.
O ponto de partida sero as formas SOP e POS no cannicas j obtidas:
Partindo da SOP no-Cannica, vid ao lado,
A Involuo assegura que complementando V duplamente, se obtm a mesmssima funo V;
Com isso, j se no tem uma SOP (soma de produtos) mas sim o complemento do complemento de uma soma
(de produtos). Aplicando a pertinente lei de De Morgan o complemento duma soma o produto dos
complementos , chega-se a uma Expresso que o complemento de um produto de trs termos; cada um destes ,
por sua vez, o complemento do produto de dois termos, vid ao lado.
Ou seja: ORs, ANDs e NOTs sumiram-se; o nico operador que fica o complemento dum produto: um NAND.
Esta forma-NAND resulta num logigrama suportado em apenas dois chips: um com NANDs de 3-entradas e o
outro disponibilizando os trs NANDs de 2-entradas.
Existe uma outra maneira grfica de chegar a esse mesmo logigrama: partindo do logigrama da SOP noCannica, vid ao lado:
a primeira etapa aplicar um Corolrio bvio das leis de De Morgan: obtm-se um circuito equivalente se se
trocar um OR por um AND e se se complementarem tanto as entradas como a sada ( X Y X Y X Y );
com isso, o NOR advm substitudo por um NAND cujas entradas esto complementadas; a segunda etapa
deslizar o complemento dessas entradas para a sada dos ANDs que alimentam essas entradas, vid ao lado
com isso, os ANDs advm substitudos por NANDs
Partindo agora da POS no-Cannica, vid ao lado,
A Involuo assegura que complementando V duplamente, se obtm a mesmssima funo V;
Com isso, j se no tem uma POS (produto de somas) mas sim o complemento do complemento de um
produto (de somas). Aplicando a pertinente lei de De Morgan o complemento dum produto a soma dos
complementos , chega-se a uma Expresso que o complemento de uma soma de trs termos; cada um destes ,
por sua vez, o complemento da soma de dois termos, vid ao lado.
Ou seja: ORs, ANDs e NOTs sumiram-se; o nico operador que fica o complemento duma soma: um NOR.
Esta forma-NOR resulta num logigrama suportado em apenas dois chips: um com NORs de 3-entradas e o outro
disponibilizando os trs NORs de 2-entradas.
H um outro modo grfico de chegar ao mesmo logigrama: partindo do logigrama da POS no-Cannica:
a primeira etapa aplicar um Corolrio bvio das leis de De Morgan: obtm-se um circuito equivalente se se
trocar um AND por um OR e se se complementarem tanto as entradas como a sada ( X Y X Y X Y );
com isso, o AND advm substitudo por um NOR cujas entradas esto complementadas; a segunda etapa
deslizar o complemento dessas entradas para a sada dos ORs que alimentam essas entradas, vid ao lado
com isso, os ORs advm substitudos por NORs
Revendo o caminho percorrido, ser pacfica esta concluso: todos os Circuitos se podem construir com, s,
NANDs ou NORs. Comeando por exprimi-los numa forma cannica, prosseguindo com a sua simplificao e
depois aplicando a Involuo e as leis de De Morgan, logram-se circuitos s com NANDs ou s com NORs.
Poder o leitor objectar com razo! que o exemplo enviesado: aquelas Formas no-Cannicas no contm
variveis complementadas. Isso nem sempre assim como alis sucede com as Formas Cannicas: ambas
podem conter variveis complementadas, com o que os respectivos logigramas envolvero NOTs! Pois bem:
bastar substituir cada NOT por um NAND/NOR com as entradas curto-circuitadas, para aceitar a universalidade
da concluso acima.
Circuitos assim tendem a ser mais compactos do que circuitos correspondentes s formas SOP e POS. De facto,
em algmas tecnologias de fabrico, os AND reais obtm-se serializando dois NANDs (a sada de um deles
aplicada a ambas as entradas do outro) o mesmo dizer: mais barato um NAND que um AND.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 62 of 101

Vitor M. P. Vargas / IST


Funes Booleanas

Sistemas Digitais (Part I)

Page 63 of 101

/ Formas Multinvel (nem SOP nem POS)

As Formas j consideradas manifestam uma arquitectura de dois planos AND-OR: uma SOP envolve um plano
(vertical) de ANDs cujas sadas so as entradas dum OR, uma POS envolve um plano (vertical) de ORs cujas
sadas so as entradas dum AND Mas h casos em que ela no realizvel ou, sendo-o, no a mais eficiente:
O mercado poder no oferecer ORs/ANDs com o nmero de entradas requerido nas formas SOP ou POS.
(A modos de exemplo, repare-se que a SOP no-cannica do 4 Projecto envolve como seria expectvel
3
C 2 termos. Mas, se o jri tivera cinco membros, j ela envolveria C 53 = 10 termos; isso significaria um plano de 10
ANDs e um OR com um fan-in de ao menos 10 entradas que coisa que de momento no existe no mercado)
Que fazer ento? Um artifcio pacfico ser recorrer a manipulaes algbricas triviais que convertam a
Expresso entre mos numa forma que se possa concretizar com os chips que o mercado disponibiliza
Ao lado, exemplifica-se esse artifcio que se poderia justificar se o fan-in de ORs no mercado no excedesse
2: aplicando a Associatividade e a Distributividade (pondo B2 em evidncia), chega-se a uma Forma que se
sustenta em ORs de 2-entradas Agora, no mais h dois planos apenas, trata-se duma arquitectura multinvel
Pode ser mais econmico usar portas livres de chips j existentes, em vez de acrescentar um novo
OR/AND
Para clarificar, suponha-se uma SOP que remete para vrios tipos de ANDs: um de 2-entradas, outro de 3entradas e um outro de 4-entradas que o mercado disponibiliza sob as designaes SN7408, SN7411 e SN7421.
Ora o integrado SN7408 disponibiliza de facto um total de 4 ANDs! Com o que, se o leitor usar o SN7408
para concretizar um produto, ainda ficaro livres, nesse integrado, trs AND de 2-entradas. Isso viabiliza um
artifcio no sentido da maior eficincia: em vez de adquirir um integrado SN7421 para concretizar o AND de 4entradas, interligar adequadamente esses trs ANDs livres para obter a funcionalidade requerida, vid ao lado;
Do mesmo modo, o integrado SN7411 disponibiliza de facto um total de 3 ANDs! Com o que, se o leitor usar
o SN7411 para concretizar um produto, ainda ficaro livres, nesse integrado, dois AND de 3-entradas que,
interligados adequadamente, vid ao lado, dispensaro a aquisio do integrado SN7421.
Em algumas situaes, alguns artifcios podem levar a um menor nmero de chips
Um exemplo ser a concretizao do XOR:
pacfico traduzir a Tabela de Verdade do XOR numa Expresso SOP, vid ao lado que remete para um
logigrama com um OR, dois ANDs e dois NOTs, a requerer 3 chips
Aplicando o mtodo grfico para, a partir do logigrama da SOP, chegar a um logigrama s com NANDS, e
no esquecendo que um NAND com as entradas curto-circuitadas equivale a um NOT, chega-se a um logigrama
com cinco NANDs de 2-entradas, a requerer 2 chips
Mas existe uma concretizao fsica a exigir ainda menos chips: pegando na Expresso-SOP do XOR, aplicase uma dupla complementao (que no altera o seu valor) e continua-se com manipulaes algbricas triviais;
logra-se uma Expresso que se concretiza num logigrama com, s, 4 NANDs de 2-entradas, a requerer um chip s
Estes artifcios podem revelar-se cruciais, mormente numa abordagem prtica em que os estudantes so
confrontados com sucessivos Trabalhos de Laboratrio ao longo do semestre: por cada integrado a mais que um
estudante inclua na soluo, h mais dois fios a juntar montagem (respeitantes aos pinos VCC e GND), e h mais
um dispositivo vulnervel a avarias Por mor de, no tempo disponibilizado, completar com sucesso a montagem
(e apresent-la ao professor), mister chegar a uma soluo que se baste no menor nmero de integrados
Em qualquer caso, esses artifcios significam abandonar uma arquitectura de dois planos em favor de uma
arquitectura multinvel. Os circuitos assim logrados so equivalentes funcionalmente, mas j o no so do ponto de
vista do tempo: so mais lentos a reagir! Considere-se, de facto, que acontece uma alterao numa das entradas
que leve mudana na sada; uma questo cuja resposta poder ser relevante em alguns casos a seguinte: quanto
tempo, no mximo, poder decorrer entre a mudana numa entrada e a subsequente mudana na sada?
numa arquitectura SOP/POS, existe s uma rota entre uma entrada qualquer e a sada (como exemplo, vid o
logigrama SOP do XOR); tipicamente, ela envolver um AND e um OR (e, eventualmente, um NOT) pelo que o
tempo mximo ser a soma dos tempos de propagao no AND e no OR (e no NOT, se o houver);
numa arquitectura multinvel, podero existir vrias rotas entre uma entrada qualquer e a sada (vid o
logigrama multinvel do XOR); o tempo mximo o da rota mais lenta/demorada entre uma entrada e a sada.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 64 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Funes Booleanas

Page 65 of 101

/ Diagrama Temporal

A fechar esta sucesso de formas de representar uma Funo Booleana, abordam-se agora os assim designados
Diagramas Temporais (e esta est em itlico para realar o facto de haver outras formas de representao,
nomeadamente Linguagens de Descrio de Hardware exs: VHDL e Verilog que aqui no so abordadas).
Um Diagrama Temporal consiste em vrios grficos; a varivel independente (eixo das abcissas) o tempo; e
nos eixos das ordenadas traa-se a evoluo temporal do nvel elctrico {L e H} das entradas e da sada do
Circuito que concretiza a Funo Booleana.
Para concretizar, apresenta-se ao lado um Diagrama Temporal para o 4 Projecto (acentue-se um Diagrama, no
sentido de que podem conceber-se outros: no caso, ele segue ao longo do tempo as sucessivas linhas da Tabela de
Verdade, mas, conquanto essa estratgia possa ser recomendvel, nada obriga a cumpri-la).
O ponto de partida a respectiva a Tabela de Verdade Para uma dada Funo V, ela estabelece, para cada
combinao de valores lgicos {0 e 1} das variveis {B2, B1, B0}, qual o correspondente valor lgico que ela
assume. Quanto ao Diagrama Temporal, ele estabelece, para cada combinao de nveis elctricos {L e H} das
entradas {B2, B1, B0} do Circuito que concretiza essa Funo , qual o nvel elctrico que a sada assume.
Antes de mais, h, ento, que estabelecer uma correspondncia entre valores lgicos {0 e 1} e nveis elctricos
{L e H}. Deixando para mais tarde outras possibilidades, adiante-se desde j que aquela que hegemoniza a praxis
actual em Sistemas Digitais a assim designada Lgica Positiva, caracterizada por:
O valor lgico 0 feito corresponder ao nvel elctrico L, e o valor lgico 1 feito corresponder ao nvel
elctrico H.
Isso viabiliza ao leitor conferir se um circuito que projectou cumpre a funcionalidade pretendida. Como
exemplo, a Tabela de Verdade ao lado manifesta que a combinao de variveis {B2=0, B1=1, B0=1} conduz ao
valor lgico V=1; o que haver a fazer impor, s entradas daquele circuito, a combinao de nveis elctricos
{B2=L, B1=H, B0=H} e conferir se sada se obtm o nvel elctrico V=L. Se isso acontecer (e se repetir, com
sucesso, esta conferncia para todas as combinaes de variveis), ento o leitor poder estar tranquilo

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 66 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Funes Booleanas

Page 67 of 101

/ Recapitulando

Ao lado, esto compiladas as vrias formas de representao que foram consideradas a propsito da funo
Booleana a que conduz o Projecto com que se iniciou a presente sesso.
O ponto de partida a Tabela de Verdade da Funo, que no caso presente V (B2, B1, B0); a partir dela podem
deduzir-se as demais formas de representao.
Nomeadamente, assinalam-se a 1 e 2 Formas Cannicas que, recorde-se, so, respectivamente, a Soma de
todos os mintermos e o Produto de todos os maxtermos da Funo. A 1 Forma Cannica envolve um mintermo
por cada 1 na Tabela de Verdade; e a 2 Forma Cannica envolve um maxtermo por cada 0 nessa Tabela.
Essas Formas Cannicas podero ser simplificadas por aplicao da lgebra de Boole; resultam expresses
algbricas que mantm o caracter de Somas de Termos de Produto ou Produtos de Termos de Somas mas no
necessariamente Cannicas (pois ao menos um termo poder no ser, respectivamente, mintermo ou maxtermo).
Por dupla complementao de tais expresses (Cannicas ou no), e subsequente aplicao das leis de De
Morgan, derivam-se expresses com, somente, NANDs ou NORs.
Realce-se: as Formas Cannicas so nicas no sentido de que, para cada Funo, s existe uma maneira de
escrever a 1 Forma Cannica e uma s maneira de escrever a 2 Forma Cannica (bem entendido, no entrando em
linha de conta com a Comutatividade, isto : a possibilidade de trocar a ordem dos mintermos/maxtermos, e a
ordem por que neles surgem as diversas variveis). Mas as restantes expresses no so nicas no sentido de que
a simplificao das Formas Cannicas poder dar origem a mais do que uma expresso mais simples.
De tais expresses podem desenhar-se logigramas de dois nveis: um plano de ORs seguido de um plano de
ANDs, ou vice-versa: um plano de ANDs seguido de um plano de ORs. Uma outra possibilidade ser a de ambos
os planos se suportarem em, apenas, NANDs ou NORs.
Em alternativa, podero tambm lograr-se logigramas multinvel mediante manipulaes algbricas triviais,
que convertam alguma das expresses precedentes em uma outra que se volva em mais que dois planos.
Sublinhe-se: a obteno das expresses e logigramas supracitados pressupe o conhecimento da Tabela de
Verdade. Eventualmente, esta pode ser desconhecida mas conhecer-se algum logigrama ou expresso algbrica
Como fazer para, da, lograr qualquer uma das demais formas de representao da funo? A resposta : usar o que
se conhece para preencher a Tabela de Verdade e a partir dela gerar a forma de representao pretendida.
Eis um exemplo: como, a partir de um logigrama multinvel, chegar a uma expresso (o mais simples possvel)
somente com NANDs? Eis a resposta:
1. antes de mais, e por aplicao nas entradas de todas as combinaes de 0s e 1s, deduz-se o correspondente
valor na sada (0 ou 1) e preenche-se a Tabela de Verdade
2. dessa Tabela de Verdade se pode subsequentemente chegar 1 Forma Cannica
3. a seguir, por manipulaes algbricas, deduz-se a SOP mais simples (que poder no ser nica)
(Nota importante: numa sesso adiante dedicada ao mtodo de Karnaugh , se abordar a deduo da SOP
mais simples directamente a partir da Tabela de Verdade, sem ter primeiro que produzir a 1 Forma Cannica)
4. enfim, e por dupla complementao, e aplicao das leis de De Morgan, ser hora de escrever uma expresso
somente com NANDs
(Na gria de Sistemas Digitais, o passo 1 uma espcie de espionagem, que olha para um logigrama
concebido por outrem e deduz o seu comportamento em termos de Tabela de Verdade designa-se de anlise; os
passos subsequentes designam-se de sntese)
A ltima forma de representao considerada o Diagrama Temporal. Parte-se da Tabela de Verdade, lgica,
para obter mentalmente uma Tabela fsica pelo artifcio de (pressuposto que se usa a Lgica Positiva) substituir
cada 0 lgico pelo nvel elctrico L, e cada 1 lgico pelo nvel H. Com isso em mente, desenha-se um
diagrama: ao longo do tempo, os nveis elctricos nas entradas do Circuito vo assumindo as combinaes de L e
H respeitantes s sucessivas linhas da Tabela fsica, e o nvel na sada o determinado por essa mesma Tabela.
Uma praxis incontornvel no Laboratrio ser: a partir dum enunciado, sintetizar um circuito (i.e., gerar uma
Tabela de Verdade e, dela, proceder ao desenho de um logigrama e mont-lo sobre chips concretos); e, depois,
analis-lo (i.e., aplicar nas entradas do circuito as sucessivas combinaes dos nveis elctricos L e H, e
conferir se a sada corresponde quela que a Tabela de Verdade determina).

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 68 of 101

Vitor M. P. Vargas / IST


Funes Booleanas

Sistemas Digitais (Part I)

Page 69 of 101

/ Lista de Funes de 1 e 2 Variveis

Ao lado, esto compiladas as vrias Funes Booleanas que podem conceber-se para uma e duas varveis.
Com uma varivel, X, podem conceber-se 4 Funes Booleanas distintas:
uma Funo, g0, que se volve em 0 sempre, i.e., independentemente do valor de X: g0=0;
uma Funo, g1, que em cada momento assume o valor que X tem ento: g1=X;
uma Funo, g2, que em cada momento assume o valor inverso ao que X tem ento: g1= X ;
uma Funo, g3, que se volve em 1 sempre, i.e., independentemente do valor de X: g0=1.

Com duas variveis, X e Y, podem conceber-se 16 Funes Booleanas distintas:


uma Funo, f0, que se volve em 0 sempre, i.e., independentemente dos valores de X e Y: f0=0;
uma Funo, f1, que se volve em 1 sse X e Y forem ambos 1: f1= X Y ;
uma Funo, f2, que se volve em 1 sse X=1 e Y=0: f2= X Y ;
uma Funo, f3, que em cada momento assume o valor que X tem ento: f3=X;
uma Funo, f4, que se volve em 1 sse X=0 e Y=1: f4= X Y ;
uma Funo, f5, que em cada momento assume o valor que Y tem ento: f5=Y;
uma Funo, f6, que se volve em 1 sse X Y : f6= X Y ;
uma Funo, f7, que se volve em 1 sse X ou Y forem 1: f7= X Y ;
uma Funo, f8, que se volve em 1 sse X e Y forem ambos 0: f8= X Y = X Y = f7 ;
uma Funo, f9, que se volve em 1 sse X Y : f9= X Y = f6 ;
uma Funo, f10, que em cada momento assume o valor inverso ao que Y tem ento: f10= Y = f5 ;
uma Funo, f11, que se volve em 1 sse X=1 ou Y=0: f11= X Y = f4 ;
uma Funo, f12, que em cada momento assume o valor inverso ao que X tem ento: f12= X = f 3 ;
uma Funo, f13, que se volve em 1 sse X=0 ou Y=1: f13= X Y = f 2 ;
uma Funo, f14, que se volve em 1 sse X ou Y forem 0: f14= X Y = f1 ;
uma Funo, f15, que se volve em 1 sempre, i.e., independentemente dos valores de X e Y: f15=1= f0 ;
Constata-se que algumas destas funes remetem para as gates bsicas e derivadas apresentadas logo na
primeira Sesso:
f1 o velho conhecido AND;
f7 o velho conhecido OR;
g2 o velho conhecido NOT;
f14 o velho conhecido NAND;
f8 o velho conhecido NOR;
f6 o velho conhecido XOR;
f9 o velho conhecido XNOR.
Duas das funes, a saber f0 e f15 (e tambm g0 e g3), so Constantes.
Duas outras funes, a saber f3 e f5 (e tambm g1), so funes Identidade.
Duas outras funes, a saber f10 e f12 (e tambm g2), remetem para a gate NOT.
Restam 4 funes, de que, apenas por curiosidade, se revelam os nomes:
As funes f11 e f13 remetem para a operao Implicao, respectivamente Y X e X Y; e f4 e f2
remetem para o seu inverso.
Deixa-se ao leitor preencher a tabela das funes de 3 variveis, e escrever as respectivas expresses
algbricas

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 70 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Sistemas de Numerao

Page 71 of 101

/ 5 Projecto

A generalidade dos livros e cursos universitrios versando Sistemas Lgicos/Digitais prefere comear por
abordar Sistemas de Numerao, s depois rodando a ateno para a lgebra de Boole, Gates, etc
O itinerrio at agora percorrido de certo modo inverso: primeiro, introduziram-se os chips SN74xx, como
meio de resolver problemas de engenharia; e s depois, a pretexto da optimizao dos circuitos assim concebidos,
se abordou a lgebra de Boole sem uma palavra sequer acerca de Sistemas de Numerao: foram de todo
irrelevantes...
Esta opo tem uma justificao: proporcionar aos estudantes, para quem este documento foi elaborado, o seu
envolvimento activo isto , o meter a mo na massa (leia-se: no laboratrio) to cedo quanto possvel, por
conseguinte sem o compasso de espera em que se traduziria estudar em primeiro lugar Sistemas de Numerao.
Como o prprio leitor ir constatar daqui por diante, no convm todavia protelar por mais tempo a sua
abordagem; o que se far nesta sesso comeando, como todas as outras Sesses, por enunciar um Projecto
concreto...
Considere que os candidatos a uma Universidade tm exame de aptido a quatro disciplinas: Matemtica,
Portugus, Histria e Arte. Um candidato aceite se for aprovado em Matemtica e ao menos noutra disciplina, ou
for aprovado em pelo menos trs disciplinas.
Esse Projecto envolve 4 variveis: a ideia ir progredindo do mais simples para o mais complicado Mas a
estratgia de resoluo mantm-se: comear por elaborar a Tabela de Verdade Ela encontra-se ao lado:
esquerda, dispem-se quatro colunas, representando as quatro disciplinas {M, P, H, A}; conforme praxis
recomendada, as colunas dispem-se de modo a que a de maior peso, M, fique esquerda
R, a Resposta do Circuito, volve-se 1 (i.e., o candidato aceite) apenas em cada uma das oito linhas em
que M=1 e h ao menos outro 1, ou ocorrem trs ou mais 1s
Exprimindo a sada como um somatrio () de mintermos, vem
R = m (7, 9, 10, 11, 12, 13, 14, 15);
e exprimindo-a como um produtrio () de maxtermos, vem
R = M (0, 1, 2, 3, 4, 5, 6, 8).
(Abra-se um parntesis: no se dever deixar de reparar que os ndices presentes no so distintos daqueles
listados no . Isso no acontece por acaso, claro: no , referem-se as linhas onde R=1, e, no , referem-se
as linhas onde R=0)
A questo que mister aprofundar agora a seguinte: como se concluiu que, por exemplo, o identificador 13
faz parte do ? Dir o leitor, e com razo: as sucessivas combinaes de 0s e 1s nas colunas esquerda
encontram-se ordenadas conforme a conveno enunciada aquando do 2 Projecto. Numerando consecutivamente,
de cima para baixo, essas combinaes {vid, esquerda da Tabela, entre parntesis: 0, 1, 2, at 15},
confere-se qual o valor que R assume para a combinao etiquetada por 13 e, porque se constata que, a, R=1,
ento pacfico que, o dever comportar o nmero 13
H, entretanto, que acentuar que o circuito tem apenas 4 variveis Isso viabiliza o escrever toda a Tabela de
Verdade numa nica folha de papel Mas inevitvel a pergunta: e se a sada do circuito depender de mais
entradas? Adiante-se desde j que, na continuao destas sesses, se ir considerar um circuito com 11 variveis
o que remete para uma Tabela com 211=2048 linhas E no se antecipa agradvel a tarefa de a escrever toda para
discernir qual a combinao de 0s e 1s a que corresponde, seja, m27 ou M27
Trata-se, pois, de inquirir: qual a combinao de 0s e 1s e, por conseguinte, qual a expresso algbrica
correspondente a algum mintermo mi ou maxtermo Mj genrico ou, vice-versa, qual o ndice em mi ou Mj
correspondente expresso algbrica de um dado mintermo ou maxtermo? E responder a isso sem ter que escrever
a Tabela toda!
isso que se ir ver a seguir.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 72 of 101

Vitor M. P. Vargas / IST


Sistemas de Numerao

Sistemas Digitais (Part I)

Page 73 of 101

/ Converso mi/Mj Expresses Algbricas

Aquando do estabelecimento da conveno relativa ao preenchimento das colunas que representam as entradas
do circuito, vid 2 Projecto, acentuou-se: cada coluna a repetio por-a-abaixo de ciclos contendo, cada um,
alguns 0s logo seguidos do mesmo nmero de 1s...
O ciclo da coluna mais direita, A, e que 01, contm 1 0 (e 1 1); o da coluna que lhe fica esquerda,
H, e que 0011, contm 2 0s; o da coluna esquerda desta ltima, P, e que 00001111, contm 4 0s; e o
da coluna esquerda desta ltima, M, e que 0000000011111111, contm 8 0s.
Por comodidade, escreveram-se ao lado esses valores {8, 4, 2, 1}, entre parntesis, mesmo abaixo de cada
coluna Esses valores no so quaisquer: so potncias-de-2 consecutivas (23, 22, 21, 20); visto de outra maneira,
se se enumerar as sucessivas colunas por {k = 3, 2, 1, 0}, o valor sob cada coluna , precisamente, 2k.
Convencionando que cada coluna tem um peso que o valor abaixo dela , constata-se o seguinte: o nmero
de ordem de cada linha (0, 1, 2, at 15) a soma dos pesos das colunas em que se encontram os 1s. Na
prtica, e porquanto tais pesos so potncias-de-2, aquele nmero de ordem vem a ser uma soma de algumas
potncias-de-2 (concretamente, as correspondentes s colunas em que a linha assume o valor 1).
Eis alguns exemplos:
seja a linha onde a combinao das entradas {M, P, H, A} 0001; somente a coluna A exibe um 1; posto
que ela tem peso 1, o resultado de acordo com o algoritmo acima : 1=20=1;
seja a linha onde aquela combinao 0010; somente a coluna H exibe um 1; posto que ela tem peso 2, o
resultado do algoritmo acima : 2=21=2;
seja a linha onde aquela combinao 0100; somente a coluna P exibe um 1; posto que ela tem peso 4, o
resultado do algoritmo acima : 4=22=4;
seja a linha onde aquela combinao 1000; somente a coluna M exibe um 1; posto que ela tem peso 8,
o resultado do algoritmo acima : 8=23=8;
seja a linha onde aquela combinao 1100; existem duas colunas {M e P} com 1; tendo elas pesos 8 e 4,
respectivamente, o resultado do algoritmo acima : 8+4=23+22=12;
seja enfim a linha onde aquela combinao 1011; existem trs colunas {M, H e A} com 1; tendo elas
pesos 8, 2 e 1, respectivamente, o resultado do algoritmo acima : 8+2+1=23+21+20=11.
(Abra-se um parntesis: ao longo da disciplina Sistemas Digitais, assaz frequente ter que se determinar a
correspondncia entre qualquer uma das dezasseis combinaes das entradas da Tabela ao lado e o respectivo
nmero de ordem (ou vice-versa) pelo que convm que o leitor a saiba fazer mentalmente, num pice!).
Compreendido o algoritmo para traduzir uma combinao de 0s e 1s no correspondente nmero de ordem,
pacfico como fazer o contrrio: dado um nmero de ordem, determinar a correspondente combinao de 0s e
1s. O ponto de partida o seguinte: um nmero de ordem (de uma linha) uma soma de algumas potncias-de-2
pelo que tudo se resume a determinar quais as potncias-de-2 cuja adio resulta naquele nmero de ordem.
Seja, como exemplo, a determinao da combinao de 0s e 1s correspondente a 25. Ento,
a maior potncia-de-2 no superior a 25 16=24; 25 excede 16 em 25-16=9;
a maior potncia-de-2 no superior a 9 8=23; 9 excede 8 em 9-8=1;
a maior potncia-de-2 no superior a 1 1=20; 1 excede 1 em 1-1=0.
Ou seja: 25 = 16 + 8 + 1 (= 24 + 23 + 20). De que se deduz: a combinao pretendida ter 1 nas colunas cujos
pesos so {16, 8 e 1} ou, o que o mesmo, nas colunas numeradas {4, 3 e 0} (que so os expoentes das
potncias-de-2 cuja soma perfaze 25) e ter 0 nas restantes: 11001. Dela, trivial escrever a expresso
algbrica do mintermo m25, vid ao lado.
Seja agora, como exemplo, a determinao da combinao de 0s e 1s correspondente a 45. Procedendo como
no exemplo precedente, deduz-se 45 = 32 + 8 + 4 + 1 = 25 + 23 + 22 + 20. De que se deduz: a combinao
pretendida ter 1 nas colunas de pesos {32, 8, 4 e 1} ou, o que o mesmo, nas colunas numeradas 5, 3, 2 e 0
(que so os expoentes das potncias-de-2 cuja soma perfaz 45) e ter 0 nas restantes: 101101. Dela, trivial
escrever a expresso algbrica do maxtermo M45
O algoritmo usado trivial: pouco mais h a fazer que memorizar potncias-de-2 e fazer subtraces Mas
no l muito cativante, mormente se o nmero de ordem for muito grande H que investigar outro mtodo

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 74 of 101

Vitor M. P. Vargas / IST


Sistemas de Numerao

Sistemas Digitais (Part I)

Page 75 of 101

/ Intermezzo: Como contar?

Recapitulando: algum precisa de registar uma quantidade, seja quarenta e cinco; esta expresso espraia-se
por dezasseis (!) caracteres, pelo que ningum se admirar do esforo da humanidade no sentido de a traduzir
numa forma compacta O leitor t-la- apreendido no banco da primria: simplesmente 45, que j s envolve
dois dgitos. Ela est conforme ao assim denominado Sistema de Numerao Decimal que consiste numa hbil
escolha entre 10 dgitos, a saber 0, 1, , 9. O desafio agora : como escrever aquela mesma quantidade sob a
forma de uma escolha de entre, apenas, 2 dgitos: 0 e 1?
Por mor de curiosidade que o saber no ocupa lugar , a resposta ir emergir no seguimento de uma curta
incurso a alguns dos sistemas de numerao euro-asiticos:
Sistema Unrio:
Poder o leitor imaginar o Fred Flintstone dirigir-se ao pedreiro local para lhe encomendar uma dzia de
pedras lascadas Como far o pedreiro para a registar? Uma praxis verosmil ser dispor, ao lado uns dos outros,
uma srie de doze palitos (iguais)
Este sistema dito de unrio pois recorre a, somente, um smbolo (o palito) e aditivo: quantidades maiores
volvem-se em adicionar mais palitos Qui ainda restem hoje vestgios deste sistema: aquando do jogo (de
cartas) da sueca, comum, no incio, um dos jogadores traar, num papel, quatro riscos verticais para simbolizar a
menor pontuao que uma equipa necessita acumular para ganhar Mas, quando as quantidades em causa so
algo maiores, claro que o sistema unrio se revela ineficiente
Sistemas M-rios:
A maneira bvia de compactar a representao de quantidades substituir conjuntos de palitos por algum outro
smbolo especfico: o Sistema passa a suportar-se em vrios smbolos. Adiante, revm-se alguns sistemas assim:
Sistema sumrio: so definidos 60 smbolos cuneiformes para representar as quantidades 1, , 60 (vid
ao lado os que representam 1 e 10). Para representar quantidades maiores, justapem-se alguns deles
Sistema egpcio (cerca de 1600 aC): so definidos 7 hierglifos para representar as quantidades 1, 10,
100, , 1000000 (vid ao lado). Para representar outras quantidades, justapem-se alguns desses smbolos, a
ordem sendo arbitrria (vid ao lado uma das possveis representaes de 218)
Sistema tico (Grcia, sculo III AC): so definidos 6 smbolos para representar as quantidades 1, 5,
10, 100, 1000 , 10000 (vid ao lado). Para representar outras quantidades, justapem-se alguns desses
smbolos, a ordem sendo arbitrria (vid ao lado duas possveis representaes de 210)
Sistema romano: so definidos 7 smbolos para representar as quantidades 1, 5, 10, 50, 100 ,
500, 1000 (vid ao lado). Para representar outras quantidades, justapem-se alguns desses smbolos, a ordem
no sendo arbitrria (o leitor pode constat-lo nas representaes de 9 e 11 em relgios cujas horas so
etiquetadas com smbolos romanos: a justaposio de I direita de X significa 10+1=11, mas a justaposio de
I esquerda de X significa 10-1=9)
Sistema indo-rabe (sculo VI DC, tendo chegado Europa no sculo X): so definidos 10 dgitos para
representar 1, 2, 3, 4, 5 , 6, 7, 8, 9 , e novidade, que nenhum dos sistemas precedentes representa a
quantidade zero! 0. Para representar outras quantidades, justapem-se alguns dgitos em um nmero; o Sistema
aditivo mas a quantidade que um dgito representa depende da sua posio no seio do nmero.
Como exemplos, vejam-se os casos de 253 e 532. Constata-se que 253=200+50+3 e 532=500+30+2, ou seja:
em 253, o 5 representa 50; mas em 532 o 5 representa 500!
em 253, o 3 representa mesmo 3; mas em 532 o 3 representa 30!
em 253, o 2 representa 200; mas em 532 o 2 representa mesmo 2!
Estes exemplos ilustram que cada uma das posies dum nmero tem um peso especfico. E desenvolvendo
253=2100+510+31=2102+5101+3100 e 532=5100+310+21=5102+3101+2100, ficam claros os
pesos em causa: a posio mais direita tem peso 1, a que lhe est logo esquerda tem peso 10, e continuando
para a esquerda, as posies tm pesos que so as sucessivas potncias-de-10: 1, 10, 100, 1000
(Para mais detalhes, sugere-se a consulta da Tese de Mestrado de Fernando Almeida, FCUP/2007)

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 76 of 101

Vitor M. P. Vargas / IST


Sistemas de Numerao

Sistemas Digitais (Part I)

Page 77 of 101

/ Sistemas de Numerao Posicional

Recapitulando: no Sistema indo-rabe, o valor representado por um nmero a soma dos dgitos desse nmero
ponderados pelas sucessivas potncias-de-10. Para um nmero com n dgitos, isso traduz-se na frmula
Valor d n-1 10n-1 d n-2 10n-2 ... d 2 102 d1 101 d0 100

Ao facto de os pesos serem potncias-de-10 no ser alheio o estar o sistema indo-rabe suportado num
alfabeto de 10 dgitos {0, 1, , 9}. O que naturalmente leva a uma pergunta: e se, em vez de o alfabeto
conter, no 10, mas um outro nmero, seja b, de dgitos?
Precisamente, designa-se de Sistema de Numerao posicional de base b um sistema suportado num alfabeto
de b smbolos com a seguinte propriedade: o valor representado por um nmero a soma dos dgitos desse nmero
ponderados pelos pesos das posies que esses dgitos ocupam no nmero pesos esses que so as sucessivas
potncias-de-b:
Valor d n-1 bn-1 d n-2 bn-2 ... d 2 b 2 d1 b1 d0 b0

Ao lado, listam-se as representaes dos primeiros 19 inteiros (no-negativos) para quatro sistemas de
numerao posicionais, ditos de decimal, binrio, octal e hexadecimal.
Para cada um deles, indica-se a respectiva base (respectivamente: 10, 2, 8 e 16), o nome genrico dos seus
smbolos, o respectivo alfabeto, e alguns pesos (potncias-de-b). Por extenso,
o alfabeto do sistema binrio comporta dois smbolos: {0 e 1};
o alfabeto do sistema octal comporta oito smbolos: {0, 1, 2, 3, 4, 5, 6, 7};
o alfabeto do sistema hexadecimal comporta dezasseis smbolos: {0, , 9, A, B, C, D, E, F}, o
que significa: para representar o algarismo dez, usa-se o hexadecimal A, para representar onze, usa-se B, etc
O leitor poder conferir que a lista de nmeros na bem conhecida base-10 segue o seguinte algoritmo:
na coluna mais direita, inscreve-se, de cima abaixo, os sucessivos dgitos do alfabeto: 0, 1, , 9;
esse ciclo de comprimento 10 depois repetido por baixo, e novamente repetido;
na coluna que lhe fica esquerda, o ciclo tem comprimento 100: nele, ocorrem 10 0 (omitidos),
seguem-se-lhe 10 1, etc.;
na coluna que lhe fica esquerda, o ciclo tem comprimento 1000: nele, ocorrem 100 0 (omitidos),
seguem-se-lhe 100 1, etc
As listas de nmeros nas demais bases seguem o mesmo algoritmo:
na coluna mais direita, inscreve-se, de cima abaixo, os sucessivos smbolos do alfabeto (de b smbolos);
esse ciclo de comprimento b depois repetido por baixo, e novamente repetido ad infinitum;
na coluna que lhe fica esquerda, o ciclo tem comprimento b2: nele, ocorrem b 0s (omitidos), seguemse-lhe b 1s, etc.;
na coluna que lhe fica esquerda, o ciclo tem comprimento b3: nele, ocorrem b2 0s (omitidos), seguemse-lhe b2 1s, etc
Assim procedendo, constata-se que uma dada quantidade de objectos seja dezoito se representa, naquelas
bases, por, respectivamente, 18(10), 10010(2), 22(8) e 12(16). Note-se que, para no haver ambiguidade acerca da base
de numerao em que se encontra um nmero, ele acompanhado duma referncia que vem a ser essa base entre
parntesis (Ou seja: sem essa referncia, desconhece-se a base em que esto escritos aqueles nmeros: 18 poderia
estar na base 9, 10010 poderia estar na base 10, 22 poderia estar na base 3 e 12 poderia estar na base )
Aqueles nmeros ilustram claramente a frmula geral acima (fazendo, claro, as contas na conhecida base 10):
18(10) 1101+8100 = 10+8 = 18(10);
10010(2) 124+121 = 16+2 = 18(10);
22(8) 281+280 = 16+2 = 18(10);
12(16) 1161+2160 = 16+2= 18(10).
A terminar: a base 10 aquela com que o leitor ter aprendido a lidar na primria J a base 2 a que suporta
os Sistemas Digitais (inclusive os modernos computadores) que, se tem visto, s reconhecem dois smbolos. Ela,
todavia, pois que eventualmente vem a traduzir-se em longas sucesses de 0s e 1s, por demais incmoda para
os seres humanos pelo que a praxis comum compact-la nas bases 8 e 16. o que se ver a seguir

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 78 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Sistemas de Numerao

Page 79 of 101

/ Converso entre Bases

Os Sistemas de Numerao mais usados no contexto de Sistemas Digitais so os de base 10, 2, 8 e 16. E natural
que se ponha a seguinte pergunta: dado um nmero que representa alguma quantidade numa dessas bases, como
obter o nmero equivalente (isto : que representa essa mesma quantidade) em alguma outra dessas bases?
A este respeito, trivial passar/converter da base 2 para as bases 8 ou 16, e vice-versa: nmeros nestas duas
bases podem entender-se como representaes comprimidas da representao na base 2. Vejam-se exemplos:
Compresso de Binrio em Octal ou Hexadecimal:
seja um nmero escrito na base 2: 1011100(2); para o converter para a base 8, procede-se mentalmente
repartio dos seus dgitos em grupos-de-3 (recorde: 8=23), da direita para a esquerda (e, se preciso, antepondo
0s esquerda); conclui-se substituindo cada trio de bits pelo seu equivalente na base 8 (vid ao lado);
seja um outro nmero na base 2: 10110100110(2); para o converter para a base 16, procede-se mentalmente
repartio dos seus dgitos em grupos-de-4 (recorde: 16=24), da direita para a esquerda (e, se preciso, antepondo
0s esquerda); conclui-se substituindo cada quarteto de bits pelo seu equivalente na base 16 (vid ao lado):
Expanso de Octal ou Hexadecimal em Binrio:
seja um nmero escrito na base 8: 162(8); para o converter para a base 2, substitui-se cada dgito pelo trio
de bits que o representa na base 2 (e removem-se eventuais 0s que venham a ocorrer esquerda, vid ao lado):
seja um nmero escrito na base 16: C03F(16); para o converter para a base 2, substitui-se cada smbolo pelo
quarteto de bits que o representa na base 2 (e removem-se eventuais 0s que venham a ocorrer esquerda):
Converso de Octal em Hexadecimal ou vice-versa:
como corolrio: para converter um nmero escrito na base 8 para a base 16 (ou vice-versa), procede-se
primeiramente sua expanso, para a base 2, e logo depois sua compresso, para a outra base.
A passagem/converso de qualquer base b para a base 10 logra-se como j se ilustrou: somam-se os dgitos
ponderados pelos pesos (potncias-da-base b) das posies que ocupam no nmero Isto vlido mesmo quando
o nmero tem parte decimal, vid ao lado a converso do nmero 351,3(7). A frmula a aplicar , como se intui:
Valor d n-1 bn-1 d n-2 bn-2 ... d 2 b 2 d1 b1 d 0 b0 d -1 b- 1 d -2 b-2 ...

A passagem/converso inversa da base 10 para qualquer outra , e no caso geral de o nmero dado ter partes
inteira e decimal, envolve dois algoritmos (cuja justificao trivial); seja dado o nmero 2012,9765625(10)
para a parte inteira, 2012(10), recorre-se a divises sucessivas pela nova base. Como exemplo, seja o caso
de se pretender convert-lo para a base 8; faz-se o seguinte (vid ao lado):
divide-se 2012 por 8 resultando o quociente 251 e o resto 4;
divide-se esse quociente, 251, por 8 resultando o quociente 31 e o resto 3;
divide-se esse quociente, 31, por 8 resultando o quociente 3 e o resto 7.
O valor representado por 2012(10) representa-se, na base 8, pelo ltimo quociente seguido dos sucessivos restos
(pela ordem inversa em que foram sendo logrados): 3734(8).
se se quiser converter 2012(10) para a base 16, recorre-se a divises sucessivas por 16! (vid ao lado);
se se quiser converter 2012(10) para a base 2, tambm se recorre a divises sucessivas por 2! ou, mais
rpido, expande-se uma das representaes a que se chegou (nas bases 8 ou 16) , chegando-se a 11111011100(2);
para a parte decimal, 0,9765625(10), recorre-se a multiplicaes sucessivas pela nova base. Como exemplo,
seja o caso de se pretender convert-lo para base 8; faz-se o seguinte (vid ao lado):
multiplica-se 0,9765625 por 8 resultando uma parte inteira 7 e uma parte decimal 0,8125;
multiplica-se essa parte decimal 0,8125 por 8 resultando uma parte inteira 6 e uma parte decimal 0,5;
multiplica-se essa parte decimal 0,5 por 8 resultando uma parte inteira 4 e uma parte decimal 0.
O valor representado por 0,9765625(10) representa-se, na base 8, por um nmero cuja parte inteira 0 e cuja
parte decimal vem a ser as sucessivas partes inteiras (pela ordem em que foram sendo logradas): 0,764(8)
(Neste exemplo, uma multiplicao volveu-se numa parte decimal nula. Nem sempre isso sucede. Suponha-se que
0,9765625(10) o valor exacto da intensidade de uma corrente mas o ampermetro indica 0,97: h um erro que advm de a
sua preciso ser 0,01=10-2. As sucessivas multiplicaes volvem-se num nmero interminvel, 0,97(10)0,76050(8)! Donde a
pergunta: quando se deve parar? A preciso implcita no valor encontrado, 0,76050(8), 8-5 0,00003; isto , a mudana de
base melhorou a preciso o que no pode ser: tem que se parar antes que a preciso advenha inferior a 0,01! Ora 8-1=0,125,
8-2=0,015 e 8-3=0,0019 Ou seja: deve parar-se de multiplicar j quando se tiverem duas casas decimais: 0,76(8))
Deixa-se, claro, ao leitor a justificao dos algoritmos acima que ela trivial a partir da frmula acima

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 80 of 101

Vitor M. P. Vargas / IST


Sistemas de Numerao

Sistemas Digitais (Part I)

Page 81 of 101

/ J estamos prontos a resolver o problema

Recorde-se a questo enunciada na abertura desta sesso: qual a combinao de 0s e 1s e, por conseguinte,
qual a expresso algbrica correspondente a algum mintermo mi ou maxtermo Mj genrico? Ou, vice-versa,
qual o ndice em mi ou Mj correspondente expresso algbrica de um dado mintermo ou maxtermo? E
responder a isso sem ter que escrevinhar a Tabela de Verdade toda!
Neste momento, j se coleccionaram os conhecimentos necessrios para uma resposta justificada. Com efeito,
ao leitor no ter certamente escapado a similaridade dos resultados logrados:
pela conveno com que se preenchem as colunas esquerda de uma Tabela de Verdade (vid ao lado);
pela frmula a que obedece a Lista dos primeiros nmeros inteiros (no-negativos) no sistema binrio.
Em ambos na Tabela e na Lista: a coluna mais direita a repetio do ciclo 01; a coluna sua esquerda a
repetio do ciclo 0011; a coluna sua esquerda a repetio do ciclo 00001111; e a coluna sua esquerda a
repetio do ciclo 0000000011111111.
H que no olvidar, porm, o seguinte: no sistema binrio, os 0s e 1s so dgitos numricos, mas na Tabela
so bits, isto , smbolos booleanos que em vez de 0 e 1 bem poderiam ser F e V ou I e A
Mas fica ntida a vantagem de, em vez de se recorrer a tais F e V, se preferir usar 0s e 1s: se se
interpretarem os 0s e 1s das colunas esquerda da Tabela como dgitos numricos, ento as sucessivas linhas
(combinaes das variveis) vm a ser as representaes, em base 2, do respectivo nmero de ordem: 0, 1, 2...
(vid ao lado). E, pelo exposto atrs, esse nmero de ordem acaba por ser a soma dos seus 1s ponderados pelas
sucessivas potncias-de-2 que, da direita para a esquerda, so 1, 2, 4, 8,
Seguem-se exemplos da questo acima, ambos pressupondo uma funo de 6 variveis {A, B, C, D, E, F}:
1. O primeiro versa M45: qual a sua expresso algbrica (sem escrever a Tabela de Verdade toda)?
O primeiro passo converter 45(10) para a base 2 o que advm clere pela sua converso prvia para a base 8
(mediante divises sucessivas por 8), e expandindo depois (para a base 2) o resultado obtido (vid ao lado);
Com isso, logra-se 101101(2). Daqui, trivial deduzir a correspondente expresso algbrica: porquanto M
denota um maxtermo, ser uma soma de todas as variveis; nela, recorde-se, cada varivel aparece na forma
normal ou complementar, consoante respectivamente essa varivel for 0 ou 1 naquele nmero 101101 O
resultado de tais considerandos ser A B C D E F .
2. O segundo exemplo versa a questo contrria: qual a representao compacta de ABCDEF ?
O primeiro passo escrever a combinao de variveis que corresponde quela expresso. Porquanto ela
um produto de todas as variveis, trata-se um mintermo; neste, recorde-se, cada varivel aparece na forma normal
ou complementar, consoante respectivamente essa varivel for 1 ou 0 A combinao de variveis ser ento
110101.
Interpretando-a como um nmero na base 2, 110101(2), h agora que convert-lo para a base 10. O mais clere
ser, por compactao, convert-lo previamente para a base 8 e, logo depois, aplicando a costumeira frmula
(soma de potncias-de-8), lograr o correspondente nmero na base 10; o resultado 53. De que se conclui que a
expresso dada o mintermo m53.
(Poder parecer algo forada a questo que motivou esta sesso sobre Sistemas de Numerao mas no o :
nas sesses adiante, ir-se- proceder (e justificar-se- porqu) violao deliberada da conveno que desde o
incio presidiu elaborao as Tabelas de Verdade: o preenchimento das colunas que representam as entradas do
circuito so a repetio por-a-abaixo de ciclos contendo, cada um, alguns 0s logo seguidos do mesmo nmero
de 1s... Ao cometer-se essa violao, o resultado virem a ser outras as posies relativas das linhas da Tabela
e natural perguntar: aonde vai parar a linha tal? precisamente essa pergunta que motivou este intermezzo)

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 82 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Mtodo de Karnaugh I

Page 83 of 101

/ 6a Projecto

Esta sesso (e a prxima) versa o Mtodo de Karnaugh para simplificao de Funes Booleanas/Circuitos.
Como todas as outras sesses, ir-se- desenrolar a partir de um Projecto concreto...
Considere um circuito com duas entradas, A e B, em que se pode aplicar 0 ou 1. A sada do Circuito, R,
ser 1 se e s se o valor em A for igual ou maior que o valor em B (ou seja: se A for 1 ou B for 0).
A Tabela de Verdade encontra-se ao lado. A partir dela, trivial deduzir a 1 Forma Cannica (desdobrada por
trs mintermos) e o subsequente logigrama, vid ao lado. No sentido de chegar a um Circuito mais simples,
convm aplicar a lgebra de Boole
O segredo da simplificao, recorde-se, procurar e associar dois termos algebricamente adjacentes, isto :
dois termos que difiram numa s varivel; num deles, ela aparece na forma Normal, e, no outro, aparece na Forma
Complementar; a sua aglutinao origina uma expresso que precisamente a parte comum desses termos
Analisando a expresso da 1 Forma Cannica entre mos, procura de pares de termos adjacentes, oferecemse duas alternativas: associar os dois primeiros mintermos, ou associar os dois ltimos.
aglutinando os dois primeiros termos, e pondo B em evidncia, e continuando a aplicar a lgebra de Boole,
como se indica ao lado, chega-se a B A ;
aglutinando os dois ltimos termos, e pondo A em evidncia, e continuando a aplicar a lgebra de Boole,
como se indica ao lado, chega-se tambm a B A .
(Duas notas:
no desenvolvimento apresentado, usa-se a Distributividade, a Complementariedade e, a propriedade de + e
terem elementos neutros mas o leitor convidado a chegar soluo final em apenas dois saltos: usando a
Adjacncia e a Redundncia
ao invs de se ter corrido a escrever a 1 Forma Cannica, poder-se-ia ter reparado que a Tabela de Verdade
de R envolve um s 0: a 2 Forma Cannica promete ser bem mais simples de escrever! De facto, ela volve-se
em B A , precisamente a expresso obtida por simplificao da 1 Forma Cannica)
Comparando o logigrama inicial, desenhado a partir da 1 Forma Cannica, com aquele para que remete a sua
simplificao, so patentes os ganhos logrados: requerem-se muito menos gates (menos 1 OR, menos 2 ANDs e
menos 1 NOT), e o prprio OR do logigrama simplificado comporta menos entradas que o OR do logigrama inicial
e consequentemente so menores a superfcie necessria para os implantar e a potncia requerida para os
alimentar. Tudo apreciado, o custo menor e (neste caso) tambm menor o atraso de propagao. Ser ento
compreensvel dedicar algum tempo mais simplificao de funes booleanas
At ao momento, a simplificao desenrolou-se tendo como suporte expresses algbricas Mas, qui no
seja desperdcio de tempo suport-la sobre os assim designados Diagramas de Venn, vid ao lado.
Em termos prticos: a primeira etapa traar um Universo rectangular, e, no seio dele, delimitar dois
subconjuntos/reas que se sobreponham em parte, A e B.
A segunda etapa determinar os subconjuntos/reas que representam os mintermos que perfazem a 1 Forma
Cannica. Por exemplo, a rea que representa A B volve-se no que est no Universo mas fora de A e de B
A terceira etapa procurar e associar dois termos/subconjuntos adjacentes, isto : duas reas que tenham uma
fronteira comum. No caso, verifica-se que a rea A B adjacente a A B ( perfeitamente visvel a linha em
que se encostam uma outra) e tambm o a A B
a aglutinao de A B e A B resulta na rea B que, atente-se figura, tem uma fronteira comum com a
rea A B ; ento, podem aglutinar-se as duas reas, o resultado vindo a ser a rea B A ;
a aglutinao de A B e A B resulta na rea A que, atente-se figura, tem uma fronteira comum com
rea A B ; ento, podem aglutinar-se as duas reas, numa nica rea, B A
Em apenas dois saltos grficos, por conseguinte, se atinge a mesmssima soluo a que se chegou por
manipulaes algbricas

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 84 of 101

Vitor M. P. Vargas / IST


Mtodo de Karnaugh I

Sistemas Digitais (Part I)

Page 85 of 101

/ Mapas: Tabelas a Duas Dimenses

Da Tabela de Verdade de R, foi ento possvel chegar expresso algbrica mais simples atravs de dois
mtodos: por aplicao da lgebra de Boole e por Diagramas de Venn. hora de os confrontar; mas previamente,
e por mor de simplificao das asseres adiante, convm numerar as linhas da Tabela de 0-1-2-3, vid ao lado.
O Diagrama de Venn patenteia que as reas que foram sendo sucessivamente aglutinadas so adjacentes
fisicamente entre si, isto : detm uma fronteira comum! Concretamente, A B fisicamente adjacente a A B ,
e o resultado da sua aglutinao (numa rea maior,A) adjacente fisicamente a A B .
E natural a pergunta: acontecer o mesmo na Tabela de R? A resposta : nem sempre! De facto, tambm
A B vem a ser fisicamente adjacente a A B (remetem para as linhas 2 e 3, sem nenhuma linha entre ambas)
mas o resultado da sua aglutinao j no fisicamente adjacente a A B : entre as linhas 0 e 2 h uma linha!
Concluindo: mintermos, que nos Diagramas so fisicamente adjacentes entre si, talvez no o sejam na Tabela!

Como ultrapassar tal limitao? Comece-se por notar: a Tabela uma representao a uma dimenso ( uma
coluna vertical); mas j os Diagramas so uma representao a duas dimenses (horizontal e vertical) lcito
suspeitar que aquela limitao desapareceria se se convertesse a Tabela num Mapa a duas dimenses
Para tal, e em vez de associar, a A e B, duas colunas, uma ao lado da outra, far-se- o seguinte: continuar a
associar-se a A uma coluna esquerda, mas a B passar a associar-se uma linha horizontal, no topo.
Assim procedendo, logra-se um Mapa (a duas dimenses), que acaba por ser um reticulado com 4 clulas, cada
uma remetendo para uma combinao particular das duas variveis, A e B. De facto, e por mor de maior
clareza nas asseres adiante etiquetando tais clulas pelos nmeros {0, 1, 2 e 3}:
a clula 0 corresponde combinao {A=0, B=0} (ou, mais compactamente, 00): situa-se na interseco
da linha em que A=0 com a coluna em que B=0; a Tabela de Verdade indica que, para essa combinao, R=1;
a clula 1 corresponde combinao {A=0, B=1} (ou 01) para a qual, vid a Tabela de Verdade, R=0;
a clula 2 corresponde combinao {A=1, B=0} (ou 10) para a qual R=1;
a clula 3 corresponde combinao {A=1, B=1} (ou 11) para a qual R=1.
Completa-se o Mapa inscrevendo em cada clula o valor que R assume para a combinao de variveis a que
ela corresponde Os valores que ele ir conter so ento precisamente os que constam na Tabela de Verdade
com a diferena de que o Mapa se estende em duas dimenses, que no apenas a vertical
(Por mor de comodidade, e concebendo R como funo de duas variveis, R (A, B), convm associar a coluna
esquerda a A (a de maior peso) e associar a linha de topo a B (a de menor peso). Assim fazendo, advm
simples a transposio da Tabela para o Mapa: varre-se a Tabela, de cima abaixo e os sucessivos valores so
inscritos no Mapa comeando no canto superior esquerdo e indo da esquerda para a direita e de cima para baixo)
E, tal como a cada 1 na Tabela corresponde um mintermo de R, assim a cada 1 no Mapa corresponde um
mintermo de R! Com uma ntida vantagem: mintermos algebricamente adjacentes nomeadamente os pares
{ A B e A B } e { A B e A B } correspondem no Mapa a pares de 1s fisicamente adjacentes!
Para representar a aglutinao de mintermos, desenha-se uma oval que os cubra. Concretamente: para
representar a aglutinao das clulas {0, 2} (que correspondem aos mintermos A B e A B ), traa-se uma oval
que ficar representando B ; e para representar a aglutinao das clulas {2, 3} (que correspondem aos
mintermos A B e A B ), traa-se uma oval que ficar representando A.
Em termos prticos, por conseguinte, e construdo o Mapa da funo R (A, B),
procura-se visualmente 1s adjacentes (como so os das clulas {0 e 2}), e traa-se uma oval sobre eles;
com isso, fica de fora o 1 da clula 3; reparando que ele adjacente ao 1 da clula 2, traa-se uma
oval sobre eles;
concluso: os trs 1s no Mapa ficam cobertos por duas ovais. R pode ento escrever-se como uma SOP no
caso, um OR de dois termos de produto, correspondentes a essas duas ovais: B A .
(Em vez de se centrar a ateno sobre os 1s, poder antes olhar-se para os 0s. Ora, existe um s 0 na
clula 1; para o cobrir, basta uma oval, vid ao lado. R poder ento escrever-se como uma POS: B A ).
Atente-se: para chegar soluo, no foi preciso escrever nenhuma Forma Cannica e muito menos usar as
regras de simplificao da lgebra de Boole! Bastou desenhar ovais e escrever de imediato a soluo!

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 86 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Mtodo de Karnaugh I

Page 87 of 101

/ 6b Projecto

O 6a Projecto envolve somente duas variveis e natural a dvida: ser que a adjacncia grfica ainda se
verifica para um maior nmero de variveis? A resposta ser investigada em torno de um outro Projecto, 6b:
Considere um Circuito com trs interruptores manipulados por outros tantos fulanos sejam A, B e C. A
sada, Z, ser 1 sse B e C escolherem o mesmo que A, ou B e C escolherem ambos o contrrio de A.
Ao lado, est patente a Tabela de Verdade (cujas linhas, por mor de simplificao das asseres adiante, so
numeradas 0-1--7). A partir dela, deduz-se a 1 Forma Cannica com quatro mintermos; podem associar-se
dois a dois: { A B C e A B C } e { A B C e A B C }.
Da Tabela, pode traar-se o correspondente Diagrama de Venn, vid ao lado onde pacfico que cada um
desses pares de mintermos corresponde a pares de reas adjacentes fisicamente.
A interrogao que se coloca : correspondero tais pares de mintermos a pares de linhas adjacentes na Tabela?
A resposta clara: de maneira nenhuma! O par { A B C e A B C } remete para as linhas 0 e 4 que no
so adjacentes; e o par { A B C e A B C } remete para as linhas 3 e 7 que tambm no so adjacentes.
hora de aplicar o procedimento j ensaiado no 6a Projecto: transformar a Tabela de Verdade num Mapa a
duas dimenses Em boa verdade, oferecem-se duas alternativas:
1a: continuar a associar, a A e B, duas colunas esquerda, uma ao lado da outra; mas associar a C uma
linha horizontal, no topo. A transposio da Tabela para um tal Mapa, vid ao lado, no acarreta qualquer
benefcio: pares de mintermos algebricamente adjacentes no remetem para pares de clulas adjacentes no Mapa.
2a: continuar a associar, a A, uma coluna esquerda; mas associar, a B e C, duas linhas horizontais, no
topo, uma abaixo da outra. A transposio da Tabela para um tal Mapa, vid ao lado, leva a que pares de mintermos
algebricamente adjacentes so agora mapeados em pares de clulas adjacentes: { A B C e A B C } so
mapeados nas duas clulas esquerda, e { A B C e A B C } so mapeados nas duas clulas direita.
(Por mor de comodidade leia-se: para ser simples a transposio da Tabela para o Mapa , e para o caso geral
de uma funo depender de mltiplas variveis, convm proceder assim: associar a coluna mais esquerda
varivel de maior peso, e associar a linha de topo mais abaixo varivel de menor peso)
Para representar a aglutinao das clulas adjacentes que mapeiam A B C e A B C , traa-se uma oval
que ficar representando B C ; e para representar a aglutinao das clulas adjacentes que mapeiam A B C e
A B C , traa-se uma oval que ficar representando B C . A SOP mais simples que representa Z , por
conseguinte: B C B C .
(Em alternativa aglutinao de mintermos, isto , em vez de traar ovais cobrindo os 1s adjacentes do Mapa,
poder-se-ia antes ter aglutinado os maxtermos, isto , traar ovais cobrindo os 0s adjacentes do Mapa Isso teria
conduzido POS mais simples que representa Z, vid ao lado)
Parntesis sobre terminologia:
produtos de variveis que se volvem em 1 apenas para combinaes das variveis em que Z 1 dizem-se
implicantes de Z; exemplos so-no: A B C , A B C e B C ;
(Se eles exibirem todas as variveis, dizem-se mintermos de Z)
somas de variveis que se volvem em 0 apenas para combinaes das variveis em que Z 0 dizem-se
implicados de Z; exemplos so-no: A B C , A B C e B C ;
(Se eles exibirem todas as variveis, dizem-se maxtermos de Z)
O percurso acima envolveu a explorao de duas alternativas na construo de um Mapa Prevendo funes
de mais variveis, de temer que a explorao das mltiplas alternativas passveis de conceber ir consumir muito
tempo Donde a pergunta: qual a maneira de organizar o Mapa de modo que termos que so algebricamente
adjacentes se mapeiem em clulas fisicamente adjacentes?
o que se ir abordar a seguir

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 88 of 101

Vitor M. P. Vargas / IST


Mtodo de Karnaugh I

Sistemas Digitais (Part I)

Page 89 of 101

/ Mapas de Karnaugh, a 3, 4 e 5 Variveis

Qual a maneira de organizar o Mapa de modo que termos que so algebricamente adjacentes se mapeiem em
clulas fisicamente adjacentes? A resposta adiante segue a soluo inventada por Karnaugh em 1953.
Na prtica: associa-se, a at, seja, metade das variveis, outras tantas colunas esquerda; e associam-se, s
restantes, outras tantas linhas horizontais, no topo. Ao lado, exemplifica-se para 3, 4 e 5 variveis; em particular,
no caso de 5 variveis {A, B, C, D e E}, associam-se, a A e B, duas colunas; e, a C, D e E, trs linhas.
(No tem que ser assim: nomeadamente, no caso de 5 variveis, poder-se-ia associar, a A, B, e C, trs
colunas; e associar, a D e E, duas linhas. Mas neste itinerrio prefere-se usar a praxis acima)
Colunas e linhas devem ficar etiquetadas com a designao das variveis, seja A, B, C Convm fazlo com mtodo. Para o concretizar, seja uma funo Z (A, B, C, D e E). s variveis atribuem-se pesos (potnciasde-2; no caso: 16, 8, 4, 2, 1). A lista de variveis preserva uma ordem: A a de maior peso e as restantes tm
pesos sucessivamente decrescentes, at chegar a E, a de menor peso. Convm proceder do seguinte modo:
associar a varivel de maior peso (no caso: A) coluna mais esquerda; eventuais colunas sua direita
devem ficar (da esquerda para a direita) associadas a variveis de pesos sucessivamente decrescentes;
associar a varivel de menor peso (no caso: E) linha no topo mais abaixo; eventuais linhas por cima
devem ficar (de cima para baixo) associadas a variveis de pesos sucessivamente decrescentes.
Decidido que foi usar duas colunas e trs linhas, etiquetadas {A, B} e {C, D e E}, o passo seguinte preenchlas obviamente, com 0s e 1s O objectivo explicitar todas as combinaes que aquelas variveis podem
assumir Nisso, segue-se o assim denominado cdigo de Gray ou cdigo binrio reflectido:
na coluna e linha mais prximas do centro do Mapa (no caso, B e E), escrevem-se um 0 e um 1; e, logo
aps, reescreve-se esse par, mas invertido: um 1 e um 0. Por outras palavras: escreve-se o ciclo 01, justape-se
um espelho, e logo depois a imagem reflectida desse ciclo, 10. Se a coluna ou linha no advir toda ela preenchida
(como sucede com a linha E), justape-se um novo espelho e a imagem reflectida do que j se escreveu
na coluna e linha que lhe ficam imediatamente adjacentes (no caso, A e D), escrevem-se tantos 0s quanto
o tamanho do ciclo antes usado, que 2; e, logo depois, outros tantos 1s. Por outras palavras: escreve-se o ciclo
0011 (e, na linha D, justape-se um espelho, e logo depois a imagem reflectida desse ciclo: 00111100);
e assim sucessivamente, at no ficar nenhuma coluna e linha por preencher
Com o que as colunas {A, B} e linhas {C, D e E} ficam explicitando todas as combinaes de 0s e 1s que
podem assumir as correspondentes variveis e dispostas de tal maneira que duas combinaes que sejam vizinhas
entre si diferem em apenas um bit! Como exemplo, vejam-se as colunas {A, B}: 00011110.
A construo de Mapas de Karnaugh para menos (ou mais) variveis anloga, vid ao lado Entretanto, est
na hora de o leitor comparar o Mapa ao lado para 3 variveis, com o Mapa concebido para a 2 alternativa no
6bProjecto: clara a diferena das ordens por que se apresentam todas as (oito) combinaes de A, B e C!
Pelo que se adivinha algo mais complexa a transposio da Tabela de Verdade para um Mapa de Karnaugh
Concretamente: em que clula do Mapa de Karnaugh mapeada a linha 0 da Tabela? E a linha 1? etc
Aborda-se adiante, com detalhe, como proceder para uma funo de 3 variveis sendo implcito que para
funes de mais variveis se trata simplesmente de generalizar esse procedimento.
o ponto de partida anexar (mentalmente), a cada varivel, o respectivo peso: A(4), B(2), C(1);
para o que se segue, convm agora reparar que a rea Central do Mapa um reticulado de 2 linhas por 4
colunas; a etapa seguinte , precisamente, atribuir um peso a cada uma dessas colunas e linhas.
seja, como exemplo, a quarta coluna; para todas as suas clulas, sucede {B=1 e C=0}; o peso da coluna ser
a soma desses valores, ponderados pelos respectivos pesos (entretanto anexados s variveis); concretamente, ser
12+01=2 e inscreve-se (mentalmente) este resultado na primeira clula da coluna; repetindo esse algoritmo
para todas as colunas, fica preenchida a primeira linha da rea Central do Mapa
considere-se, agora, a segunda linha; para todas as suas clulas, sucede {A=1}; o peso da linha ser esse
valor ponderado pelo seu peso; no caso, ser 14=4 e inscreve-se este resultado na primeira clula da linha;
procedendo analogamente para todas as linhas, fica preenchida a primeira coluna da rea Central do Mapa
a etapa final preencher as demais clulas: para cada uma, inscreve-se nela a soma dos pesos da linha e
coluna a que pertence; nomeadamente, na clula que fica na interseco da coluna de peso 1 com a linha de peso 4
inscreve-se o resultado de 1+4=5

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 90 of 101

O resultado alcanado indica precisamente onde ficam mapeadas as sucessivas linhas da Tabela de Verdade.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Mtodo de Karnaugh I

Page 91 of 101

/ Algoritmo de Karnaugh

hora de usar os Mapas de Karnaugh para simplificar funes como sejam as solues dos Projectos 3 e 4. O
ponto de partida so as respectivas Tabelas de Verdade, vid ao lado.
1. A primeira etapa construir o Mapa de Karnaugh para 3 variveis seguindo o mtodo j descrito.
2. Segue-se o preenchimento do Mapa de Karnaugh de A com os valores que A assume para as combinaes
das variveis. Para tal, repara-se na sua Tabela: tem 1s nas linhas {5, 6 e 7}; explicitadas (mentalmente) no Mapa
de Karnaugh as clulas onde se ho-de mapear as linhas da Tabela, basta ento inscrever 1 apenas nas clulas {5,
6 e 7} O preenchimento do Mapa de V anlogo: reparando que a sua Tabela tem 0s nas linhas {0, 1, 2 e 4},
bastar inscrever 0 apenas nas clulas {0, 1, 2 e 4}
3. hora de proceder ao levantamento mental das associaes de termos algebricamente adjacentes. Antes, porm,
abra-se um parntesis, para compreender os cuidados tidos na construo dos Mapas de Karnaugh, a saber: clulas
algebricamente adjacentes (isto , representando termos que diferem numa s varivel: num deles, ela est na
forma complementada, e no outro est na forma normal) ficam fisicamente adjacentes! Pelo que determinar termos
algebricamente adjacentes volve-se doravante em procurar visualmente clulas fisicamente adjacentes!
Considerem-se, por exemplo, as clulas 5 e 7 de A fisicamente adjacentes e ambas contendo 1. O que
elas dizem que a 1 Forma Cannica de A inclui os mintermos ELR e ELR ; ora, estes so algebricamente
adjacentes: diferem apenas no tocante varivel L; ento, podem ser aglutinados, resultando ER .
Idem para as clulas 7 e 6 de A tambm fisicamente adjacentes e contendo 1. O que elas dizem que
A inclui ELR e EL R que so algebricamente adjacentes; ento, podem ser aglutinados, resultando EL .
Isto : a clula 7 algebricamente adjacente s clulas 5 e 6. De facto, ela tambm algebricamente
adjacente clula 3: 7 e 3 correspondem a ELR e ELR que so algebricamente adjacentes. Todavia, elas
no podem ser aglutinadas por uma simples razo: A no inclui o mintermo ELR .
Concluindo: a clula 7 algebricamente adjacente a trs clulas: {3, 5 e 6} precisamente as clulas que lhe
so fisicamente adjacentes! Isto vale para todas as clulas de um Mapa de Karnaugh de 3 variveis: qualquer uma
algebricamente adjacente a outras trs precisamente as que lhe so fisicamente adjacentes!
(E asseres anlogas valem para Mapas com mais variveis: num Mapa de quatro variveis, qualquer clula
adjacente a outras quatro; e num Mapa de cinco variveis, qualquer clula adjacente a outras cinco)
Poder o leitor contestar: reconhece que a clula 1, por exemplo, adjacente s trs clulas {0, 3 e 5}; mas j
a clula 2 parece que adjacente a, apenas, duas clulas, {3 e 6}: qual a terceira clula adjacente a 2? A este
respeito, h que alargar o conceito de clulas fisicamente adjacentes. Recorde-se a meno a espelhos feita a
propsito do cdigo binrio reflectido. Clulas simtricas a um espelho sero doravante consideradas adjacentes.
Imaginando a construo do Mapa de Karnaugh de trs variveis, h um espelho que vem a ser inserido,
concretamente aquando do preenchimento da linha correspondente varivel de menor peso. Ora, em relao a
esse espelho, a clula 0 simtrica de 2 pelo que doravante tambm essas duas clulas se diro adjacentes.
Isto dito, os pares de clulas de A (com 1s) que so fisicamente adjacentes vm a ser: {5 e 7} e {7 e 6}; e os
pares de clulas de V (com 0s) que so fisicamente adjacentes vm a ser: {0 e 4}, {0 e 1} e {0 e 2}.
4. Tendo discernido visualmente os pares de clulas fisicamente adjacentes, h que seleccionar, entre eles, quais os
necessrios (e suficientes) para cobrir todos os 1 de A (ou todos os 0s de V) e, sempre que seleccionar um
deles, desenhar uma oval que os cubra. O Mapa de A ir exibir duas ovais (e o de V trs ovais), vid ao lado.
5. A etapa final a escrita das correspondentes expresses algbricas.
Para o efeito, usa-se um mtodo anlogo ao usado para escrever Formas Cannicas; a diferena reside em que,
agora, h que saber escrever as expresses correspondentes, no a mintermos ou maxtermos, mas a ovais que
representam aglutinaes de mintermos ou maxtermos algebricamente adjacentes.
Seja o caso da oval cobrindo as clulas {5 e 7} de A; posto que contm 1, elas remetem para mintermos, isto
: para produtos. Para ambas, E=1 e R=1; mas L=0 na clula 5 e L=1 na clula 7. Aquela oval ir ento remeter
para um produto de todas as variveis excepto aquela cujo valor se no mantm sempre o mesmo (que L): ir
remeter para ER . Dito isto, ser pacfico ao leitor escrever as expresses simplificadas de A e de V
Na prxima sesso, ir-se-o refinar as ltimas trs etapas, em particular a penltima, deveras crtica.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 92 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Mtodo de Karnaugh II

Page 93 of 101

/ 7a Projecto

At agora, Projecto a Projecto, e decidida a codificao das entradas e sadas, o que se fez depois foi escrever a
Tabela de Verdade Na sesso anterior, a etapa seguinte foi transp-la para um Mapa de Karnaugh Mas, para
bom entendedor, na resoluo de um Projecto genrico no obrigatrio comear por escrever a Tabela de
Verdade para depois a transpor para um Mapa de Karnaugh; tal como para as outras sesses, ir partir-se de um
Projecto concreto para exemplificar essa praxis (ficando o leitor desde j convidado a, partindo dos enunciados
dos Projectos 3 e 4, preencher directamente os respectivos Mapas, sem antes escrever as correspondentes Tabelas).
Considere um jri com quatro membros {B3, B2, B1, B0}; cada um tem sua disposio um boto com que
aprova ou reprova o candidato Se e s se a maioria estiver a favor da aprovao, uma lmpada verde acende.
Em caso de empate, o presidente, B3, tem voto de qualidade. Pretende-se um circuito para controlar a lmpada
O Mapa de Karnaugh para 4 variveis {B3, B2, B1, B0} encontra-se ao lado; como seria expectvel,
esquerda, dispem-se duas colunas, representando os dois membros do jri de maior ndice, {B3, B2}
(ficando esquerda o de maior ndice, B3}; no topo, dispem-se duas linhas, representando os dois membros do
jri de menor ndice, {B1, B0} (ficando em baixo o de menor ndice, B0};
clula a clula, confere-se quais os valores que a tomam as variveis; V volve-se 1 (i.e., a lmpada
verde acende) apenas em oito clulas: quando trs ou mais das variveis, ou B3 e alguma outra, forem 1
(Repare o leitor: assim procedendo, irrelevante conhecer a numerao das clulas no seio do Mapa)
Conhecido o Mapa de Karnaugh, faz-se o levantamento mental das associaes de termos adjacentes:
associando verticalmente 1s que se encontrem na mesma coluna, logram-se quatro ovais, vid ao lado:
{7, 15} B 2B1B0 ; {9, 13} B 3 B1B0 ; {11, 15} B 3B1B0 ; {10, 14} B 3B1 B0 ;
associando horizontalmente 1s que se encontrem na mesma linha, logra-se cinco ovais, vid ao lado:
{12, 13} B 3B 2 B1 ; {13, 15} B 3B 2B0 ;{ 14, 15} B 3B 2B1 ; {9, 11} B 3 B 2B0 ; {10, 11} B 3 B 2B1
Estas nove ovais cobrem apenas 1s; por outro lado, todos os 1s acabam por ficar dentro de alguma oval.
Pelo que se pode inferir que a funo pode exprimir-se como um OR dos termos acima (no necessariamente
todos) Ao faz-lo, porm, advm uma expresso em que alguns deles se podero aglutinar:
ovais verticais: B 3 B1B0 + B 3B1B0 B 3B 0 ; B 3B1B0 + B 3B1 B0 B 3B1 ;
ovais horizontais: B 3B 2 B1 + B 3B 2B1 B 3B 2 ; B 3B 2B0 + B 3 B 2B0 B 3B 0 ; B 3 B 2B1 + B 3B 2B1 B 3B1 .
Repare-se: B 3B 0 corresponde aglutinao de duas ovais adjacentes! Idem para B 3B1 e B 3B 2 . Pretendendose a expresso mais simples para a funo, h ento que refinar a praxis seguida at agora: aps levantar
mentalmente as ovais correspondentes a pares de clulas adjacentes, h que investigar se algumas h que sejam
adjacentes entre si; encontradas duas ovais, traa-se uma oval que as cubra (e muito importante! doravante
ignoram-se as ovais que lhe deram origem)!
No caso entre mos, as ovais cobrindo clulas adjacentes ficam ento reduzidas a:
B 3B 0 {9, 11, 13, 15}; B 3B1 {10, 11, 14, 15}; B 3B 2 {12, 13, 14, 15}; B 2B1B0 {7, 15};
Resumindo:
a funo assume 1 em 8 clulas o que significa 8 mintermos (que so produtos das 4 variveis);
todas elas se podem aglutinar em pares adjacentes resultando 9 termos de produto com 3 variveis;
destes, alguns podem aglutinar-se resultando 3 termos de produto com 2 variveis.
Todos eles so produtos que assumem o valor 1 apenas para combinaes de variveis para as quais a
funo tambm se volve em 1 (Diz-se que a funo cobre esses produtos). De acordo com a terminologia j
introduzida na precedente sesso, conclui-se ento: a funo tem um total de 20 (=8+9+3) implicantes.
As clulas podem aglutinar-se num total de quatro ovais que j se no podem aglutinar mais. Aos
correspondentes 4 implicantes d-se nome de implicantes primos.
A soluo final vem a ser uma seleco desses quatro implicantes primos: determinam-se, entre as
correspondentes (4) ovais, quais as necessrias e suficientes para cobrir todos os 1s da funo, vid ao lado.
Adiante, aborda-se como, no sentido de chegar soluo mais simples, fazer adequadamente essa seleco.

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 94 of 101

Vitor M. P. Vargas / IST


Mtodo de Karnaugh II

Sistemas Digitais (Part I)

Page 95 of 101

/ Estudo de caso SOP: 3 Variveis

Para lograr a expresso mais simplificada para uma funo, h que operar uma seleco apropriada, entre os
seus implicantes primos. A abordagem do mtodo de Karnaugh para tal ir desenrolar-se em torno de casos
concretos. O primeiro caso uma funo de 3 variveis, ZB 2 , B1 , B0 , cujo Mapa de Karnaugh se indica ao lado.
Pressuposto que se quer a expresso algbrica da funo sob a forma de uma SOP, a primeira etapa proceder
ao levantamento mental dos seus implicantes primos. Percorre-se o Mapa, linha a linha e coluna a coluna,
comeando pelo canto superior esquerdo at terminar no canto oposto; e, para cada clula com um 1, discernemse os implicantes primos que a cobrem e, mentalmente, para cada um, desenha-se a pertinente oval. No caso,
seja a clula 0; posto que existem 3 variveis, ela ter certamente 3 clulas adjacentes, a saber: {1, 2 e 4};
posto que as clulas {2 e 4} contm 0, s existe uma oval possvel (cobrindo a clula 0): {0, 1}, vid ao lado;
considere-se agora a clula 1; as clulas que lhe so adjacentes so: {0, 3 e 5}; mas s as clulas {0 e 5}
que contm 1 pelo que s existem duas ovais possveis (cobrindo a clula 1): {0, 1} e {1, 5};
considere-se agora a clula 5; as clulas que lhe so adjacentes so: {1, 4 e 7}; mas s as clulas {1 e 7}
que contm 1 pelo que s existem duas ovais possveis (cobrindo a clula 5): {1, 5} e {5, 7};
considere-se enfim a clula 7; as clulas que lhe so adjacentes so: {3, 5 e 6}; mas s a clula 5 que
contm 1 pelo que s existe uma oval possvel (cobrindo a clula 7): {5, 7}.
A cada oval corresponde uma expresso algbrica que se constri de maneira parecida com a dos mintermos:
forma-se um produto de variveis. Para cada varivel: se ela for 1 para todas as clulas dessa oval, ficar na
forma normal; se for 0 para todas as clulas dessa oval, ficar na forma complementar; se no tiver sempre o
mesmo valor em todas as clulas dessa oval, ela ser excluda desse produto.
Como exemplo de aplicao, veja-se a oval {1, 5}: a expresso algbrica ser B1B 0 , pois {B2=0 na clula 1,
mas B2=1 na clula 5exclui-se B2; B1=0usa-se forma complementar; B0=1usa-se forma normal}.
No total, por conseguinte, h a considerar trs ovais/implicantes primos:
{0, 1} B 2 B1 ; {1, 5} B1B 0 ; {5, 7} B 2B 0
Sero necessrios todos estes implicantes primos? Em caso contrrio, quais a ignorar? A resposta ir basear-se
no seguinte: a soluo tem que cobrir todos os 1s, no pode nenhum ficar de fora!
A este respeito, existe uma diferena notvel entre as clulas {1 e 5} e {0 e 7}: concretamente,
veja-se o caso da clula 1: existem duas ovais / implicantes primos ( B 2 B1 e B1B 0 ) cobrindo-a! E, para a
clula 5, o mesmo se verifica: existem duas ovais / implicantes primos ( B1B 0 e B 2B 0 ) cobrindo-a!
Isso significa uma certa liberdade na escrita da soluo. Para cobrir a clula 1, pode escolher-se entre
B 2 B1 e B1B 0 ; e, para cobrir a clula 5, pode escolher-se entre B1B 0 e B 2B 0 ;

veja-se agora o caso da clula 0: s existe uma oval / implicante primo ( B 2 B1 ) cobrindo-a! E, para a
clula 7, o mesmo se verifica: s existe uma oval / implicante primo ( B 2B 0 ) cobrindo-a!
Isso significa que, no tocante s clulas {0, 7}, no h liberdade na escrita da soluo. Para cobrir a clula
0, no h outra escolha possvel: tem que se escolher B 2 B1 . Idem para a clula 7: tem que se escolher B 2B 0 .
A um implicante primo que tem obrigatoriamente que fazer parte da soluo pois para alguma das clulas
que ele cobre no h outra maneira de a cobrir! , d-se o nome de implicante primo essencial.
(Acentue-se: o que se desenvolveu acima um exerccio puramente mental; porm, por mor de o leitor o
acompanhar, apresenta-se ao lado uma carta dos implicantes primos e das clulas que eles cobrem)
H ento dois implicantes primos essenciais. Pode ento comear-se j a escrever: V = B 2 B1 + B 2B 0 +
Os com que V finda significam que qui tenha que se adicionar algo mais o que se ir ver a seguir.
Em termos prticos, todavia, o que h a fazer to s isto: quando e apenas quando se discernir um
implicante primo essencial, h que, de imediato, traar a correspondente oval no Mapa de Karnaugh. No caso,
tendo analisado a clula 0 e descoberto que s h uma oval que a cobre traa-se a oval {0, 1}!
e tendo analisado a clula 7 e percebido que s h uma oval que a cobre traa-se a oval {5, 7}!
Ao faz-lo, porm, vm a ficar cobertos todos os 1s da funo! E, porquanto se procura a expresso mais
simplificada para V, deve ignorar-se a oval {1, 5}

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 96 of 101

Vitor M. P. Vargas / IST


Mtodo de Karnaugh II

Sistemas Digitais (Part I)

Page 97 of 101

/ Estudo de caso SOP: 4 Variveis

Na continuao do estudo do mtodo de Karnaugh para conseguir a expresso mais simplificada para uma
funo, aborda-se agora o caso de uma de 4 variveis, ZA, B, C, D , vid Mapa de Karnaugh ao lado.
Pressuposto que se quer a expresso algbrica da funo sob a forma de uma SOP, a primeira etapa percorrer
o Mapa; e, para cada clula com 1, discernir os implicantes primos sob a forma de ovais que a cobrem
no tocante clula 0, ela coberta por duas ovais: {0, 1, 3, 2} e {0, 2, 4, 6};
no tocante clula 1, coberta por outras duas ovais: {0, 1, 3, 2} e {1, 9};
no tocante s clulas 3 e 2, so cobertas por outras duas ovais: {0, 1, 3, 2} e {3, 2, 7, 6};
e assim por diante
(No esquecer: as asseres acima significam que doravante se ignoram as ovais {0, 1}, {3, 2}, {0, 2} e {1, 3},
pois esto cobertas por {0, 1, 3, 2}; idem para as ovais {4, 6}, {0, 4} e {2, 6}, pois esto cobertas por {0, 2, 4, 6};
e idem para as ovais {7, 6} e {3, 7}, pois esto cobertas por {3, 2, 7, 6})
Prosseguindo o varrimento das clulas com 1, as concluses podem ser listadas mentalmente numa carta dos
implicantes primos e das clulas que eles cobrem, vid ao lado. Ora, patente que nenhum dos implicantes primos
essencial: qualquer uma das onze clulas com 1 pode ser coberta por ao menos duas ovais!
Nenhum implicante primo ser essencial significa que no h nenhum implicante primo que tenha mesmo que
fazer parte da soluo! A soluo volver-se-, ento, numa sbia escolha: h que seleccionar, entre os implicantes
primos, o conjunto mais simples que cobre todas as clulas com 1 do Mapa!
as clulas com 1 a cobrir so as seguintes: {0, 1, 2, 3, 4, 6, 7, 9, 12, 13, 15};
pretendendo-se a expresso mais simples para a funo, ser natural comear por concentrar a ateno numa
clula que seja coberta por uma das ovais maiores (no caso, as que cobrem 4 clulas). Seja, nomeadamente, o caso
da clula 0; ela coberta pelas ovais {0, 1, 3, 2} e {0, 2, 4, 6}; escolhendo a primeira delas, far-se- o seguinte:
traa-se de imediato, no Mapa, uma oval cobrindo as clulas {0, 1, 3, 2}; e escreve-se Z AB ... ;
com o que, doravante, s falta cobrir as clulas {4, 6, 7, 9, 12, 13, 15}; de novo, ser natural centrar a ateno
numa clula coberta por uma das ovais maiores o que sucede com as clulas {4 e 6}. Ora, a clula 4 coberta
por {0, 2, 4, 6} e a clula 6 coberta por {0, 2, 4, 6} e {3, 2, 7, 6}; qualquer destas ovais cobre duas clulas do
conjunto que falta cobrir pelo que qui seja indiferente escolher uma ou outra Optando por {0, 2, 4, 6}
traa-se de imediato, no Mapa, uma oval cobrindo as clulas {0, 2, 4, 6}; e escreve-se Z AB AD ;
com o que, doravante, s falta cobrir as clulas {7, 9, 12, 13, 15\}; para as cobrir, oferecem-se as seguintes
ovais: {3, 2, 7, 6}, {1, 9}, {4, 12}, {7, 15}, {12, 13}, {13, 9} e {13, 15}; o desafio seleccionar, entre elas, o
conjunto mais simples que cobre aquelas cinco clulas que falta cobrir! Ora, relativamente a elas,
{3, 2, 7, 6} cobre apenas a clula {7};
{1, 9} cobre apenas a clula {9};
{4, 12} cobre apenas a clula {12};
{7, 15} cobre as clulas {7 e 15};
{12, 13} cobre as clulas {12 e 13};
{13, 9} cobre as clulas {9 e 13};
{13, 15} cobre as clulas {13 e 15};
Uma escolha possvel ser {9 e 13}, {7, 15} e {4, 12} ou seja: Z AB AD ACD BCD BCD
H vrias outras solues possveis. Ao lado, listam-se trs, e o leitor poder deduzir outras
hora de confrontar o caso presente com os Mapas de Karnaugh j discutidos:
no Mapa do 7a Projecto, h 4 implicantes primos, todos essenciais pelo que todos faro parte da soluo;
no Mapa do Estudo de caso SOP: 3 Variveis, h 3 implicantes primos, dos quais dois so essenciais e o
restante no essencial e que acabou por ser ignorado na escrita da expresso algbrica da funo;
no Mapa do Estudo de caso SOP: 4 Variveis, no essencial nenhum dos nove implicantes primos
acabando a soluo por suportar-se em apenas cinco deles, e portanto ficando ignorados os restantes quatro.
Resta, ento, o caso de um Mapa com implicantes primos essenciais e alguns no-essenciais, dos quais nem
todos sejam ignorados quando houver que escrever a expresso simplificada da funo o que se vai abordar a
seguir

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 98 of 101

Vitor M. P. Vargas / IST


Mtodo de Karnaugh II

Sistemas Digitais (Part I)

Page 99 of 101

/ Estudo de caso SOP: 5 Variveis

Considere-se a funo de 5 variveis ZA, B, C, D, E cujo Mapa de Karnaugh dado ao lado.


A primeira etapa percorrer o Mapa, comeando pelo canto superior esquerdo at terminar no canto oposto
No tocante clula 0, e havendo 5 variveis, ela (como tambm qualquer uma outra) ter 5 clulas adjacentes;
so elas, claro, as clulas {1 e 8}, mas tambm as clulas {2, 4 e 16} porquanto cada uma, relativamente a
algum dos espelhos a considerar no Mapa (alis ao lado assinalados), simtrica da clula 0.
Porm e pressuposto que se deseja a expresso algbrica da funo sob a forma de uma SOP h que ter em
conta que nem todas elas comportam 1: s h a considerar, como candidatas a aglutinar clula 0, o conjunto
{1, 2, 4 e 16}. A primeira deduo : com a clula 0 podem formar-se as ovais {0, 1}, {0, 2}, {0, 4} e {0, 16}.
(Abra-se um parntesis Posto que, na construo de uma SOP, so relevantes somente as clulas com 1,
comum operar uma simplificao no Mapa: deixam-se em branco as clulas com 0, vid ao lado)
Uma pergunta se pe agora: estar alguma daquelas quatro ovais coberta por uma oval mais gorda?
Veja-se a oval {0, 1}. A resposta quela pergunta volve-se em encontrar alguma oval que lhe seja adjacente e
o prprio leitor conseguir descobrir por si que lhe so adjacentes as duas ovais {3, 2} e {16, 17}: com efeito, cada
uma destas, relativamente a algum dos espelhos, simtrica de {0, 1}; pelo que se deve ignorar doravante a oval
{0, 1} e s reter as ovais {0, 1, 3, 2} e {0, 1, 16, 17}. E a pergunta regressa: estar alguma destas coberta por
uma oval mais gorda? A resposta : no ou seja: {0, 1, 3, 2} e {0, 1, 16, 17} denotam implicantes primos!
Ser algum essencial? Eis como o discernir: para cada um, verifica-se se alguma das suas clulas s pode ser
coberta por ele. Quanto a {0, 1, 3, 2}, constata-se: as clulas {0 e 1} so tambm cobertas por {0, 1, 16, 17}; 3
tambm coberta por {3, 11}; e 2 tambm coberta por {3, 2, 19, 18}; ou seja: {0, 1, 3, 2} no essencial..
Quanto a {0, 1, 16, 17}, constata-se: as clulas {0 e 1} so tambm cobertas por {0, 1, 3, 2}; 16 tambm coberta
por {16, 18}; e 17 tambm coberta por {17, 21}; ou seja: {0, 1, 16, 17} tambm no essencial.
Veja-se agora a oval {0, 2}. H duas ovais concretamente, {6, 4} e {16, 18} que lhe so adjacentes: cada
uma, relativamente a algum espelho, simtrica de {0, 2}; pelo que se deve ignorar doravante {0, 2} e s reter as
ovais {0, 2, 6, 4} e {0, 2, 16, 18}. E de novo h que perguntar: estar alguma destas ovais coberta por uma mais
gorda? A resposta : sim! {16, 18, 22, 20} adjacente a {0, 2, 6, 4}, e {6, 4, 22, 20} adjacente a {0, 2, 16, 18}
pelo que se deve ignorar doravante {0, 2, 6, 4} e {0, 2, 16, 18} e s reter a oval {0, 2, 6, 4, 16, 18, 22, 20}. E, de
novo: estar ela coberta por uma mais gorda? A resposta : no ou seja: ela representa um implicante primo!
Qual a sua expresso algbrica? BE pois {B=0 e E=0 (nas 8 clulas da oval)usa-se forma complementar;
mas A, C e D no assumem sempre o mesmo valor naquelas 8 clulas excluem-se A, C e D }.
Parntesis: Revendo os casos estudados, observa-se que ovais de 2, 4 ou 8 clulas representam implicantes onde
faltam, respectivamente 1, 2 ou 3 das variveis da funo; vice-versa, e generalizando: para lograr um implicante
onde faltam n variveis da funo, necessrio aglutinar 2n clulas, em que cada uma adjacente a outras n.
Entretanto, convm inquirir: ser ele essencial? Para o discernir, repete-se a praxis acima: verifica-se se ao
menos uma das suas clulas s pode ser coberta por ele. Constata-se: a clula 0 tambm coberta por {0, 1}; a
clula 2 tambm coberta por {2, 3}; a clula 6 tambm coberta por {6, 14}; mas quanto clula 4, no h
outra maneira de a cobrir do que se infere: o implicante primo em causa mesmo essencial! O que significa que
a expresso da funo ser Z BE ... e, ipso facto, j no h lugar interrogao como cobrir as clulas {0,
2, 6, 4, 16, 18, 22, 20}?. Para o salientar visualmente, traa-se de imediato sobre o Mapa a oval que as cobre
ficando claro que, doravante, s h que discernir como cobrir as clulas {1, 3, 11, 14, 15, 27, 30, 31, 29, 17, 21}.
Deixa-se ao leitor a tarefa de as ir percorrendo e concluir da existncia dum implicante primo essencial mais:
{11, 15, 27, 31} pois no h outro modo de cobrir a clula 27. Pelo que ser Z BE BDE ... e, ipso
facto, j no h que inquirir como cobrir as clulas {11, 15, 27, 31}?. Para o salientar visualmente, traa-se a
oval que as cobre clarificando que, doravante, s h que saber como cobrir as clulas {1, 3, 14, 30, 29, 17, 21}
com alguns dos (8) implicantes primos restantes. Quanto a estes, poder o leitor mesmo deduzir que nenhum
essencial, pelo que lhe resta operar uma seleco entre eles, vid ao lado duas alternativas.
Seja permitido findar este estudo de caso com uma verdade de La Palisse: o desenvolvimento acima dever ser
bastante para certificar o leitor que, para saber aplicar bem o algoritmo de Karnaugh, h que praticar bastante

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)

Page 100 of 101

Vitor M. P. Vargas / IST

Sistemas Digitais (Part I)


Mtodo de Karnaugh II

Page 101 of 101

/ 7b Projecto

Em todos os Projectos at agora abordados, e tendo decidido quais as entradas a ter em conta num circuito,
nunca houve dvidas sobre qual deveria ser a sua sada para qualquer que fosse a combinao dos valores
assumidos por aquelas entradas. Isso nem sempre acontece: h circuitos para os quais se verifica o que em
Sistemas Lgicos/Digitais se designa comummente de Indiferenas (Dont care, no jargo anglo-saxnico).
Qui ajude perceber essa eventualidade concretiz-la atravs de um Projecto apropriado, vid enunciado ao
lado.
pacfico o preenchimento da Tabela de Verdade, vid ao lado onde patente que ficaram trs casos por
especificar; de facto, e pressuposta a codificao ao lado, qual a sada que o Circuito dever produzir
para as combinaes {S=0, G=1} que devem ser entendidas como um Homem Grvido?
e para as combinaes {I=0, G=1} que devem ser entendidas como Grvido com menos de 10 anos?
Essas combinaes das entradas so, em termos prticos, inexpectveis; ento, no h que especificar a sada
do circuito para essas combinaes: para qu faz-lo, se correspondem a situaes que na vida real se espera que
nunca iro ocorrer? Circuitos assim designam-se mquinas incompletamente especificadas; o mesmo se dir de
circuitos em que, ao menos para uma combinao das entradas passvel de ocorrer, a respectiva sada irrelevante.
Para uma combinao de entradas assim em que a sada do circuito irrelevante , a Tabela de Verdade
preenchida com um X. A especificao da funo volve-se ento em dois s: um listando os mintermos (isto ,
as combinaes de entradas para as quais a funo assume o valor 1), e um outro listando as combinaes para as
quais o valor da funo irrelevante. No caso,
A m0,4,7 d1,3,5
O preenchimento do Mapa de Karnaugh feito como habitualmente a diferena sendo que, nas clulas
correspondentes a combinaes para as quais o valor da funo irrelevante, se inscreve um X, vid ao lado.
Uma questo bvia se pe agora: como aplicar o algoritmo de Karnaugh, quando o Mapa comporta Xs? A
resposta : aplica-se exactamente como foi explicado com o cuidado de tratar cada X como um joker: se, por
mor de obter uma expresso mais simples para a funo, convier trat-lo como 1, ento ele tratado como um 1
(e se convier trat-lo como 0, ento ele tratado como um 0).
No caso, e visando lograr a SOP mais simples,
bvia a oval {0, 4}; mas h que perguntar: estar ela coberta por uma mais gorda? A resposta depende do
valor que se atribuir aos Xs nas clulas {1, 5}: se eles forem tratados como 1s, ento claro que existe uma
oval mais gorda e por conseguinte remetendo para um implicante mais simples , concretamente {0, 1, 4, 5}.
Quanto a esta, no h nenhuma oval mais gorda que a cubra de que se conclui que representa um implicante
primo; pode alis verificar-se que ele essencial Ento, para o salientar visualmente, traa-se de imediato sobre
o Mapa a oval que as cobre.
similarmente, que valor atribuir aos Xs para cobrir a clula 7 com uma oval o mais gorda possvel? A
resposta bvia: se todos os Xs forem tratados como 1s, chega-se oval {1, 3, 5, 7} que obviamente
representa um implicante primo essencial.
A SOP mais simples ser ento: A I G .
Se, em alternativa, se pretender a POS mais simples, bvia a oval {2, 6}; mas h que perguntar: ser possvel
cobri-la com uma mais gorda? O leitor poder por si deduzir que no: as ovais que lhe so adjacentes so {0, 4}
que est preenchida com 1s , e {3, 7} que comporta um 1. Independentemente do valor a atribuir aos Xs,
no pois possvel aglutinar {2, 6} com {0, 4} ou {3, 7}: a POS mais simples ser ento: A I G .
Materializada esta expresso num Circuito, nada impede que algum lhe force nas entradas as combinaes
impossveis ({S=0, G=1} e {I=0, G=1}). Qual ser ento a sada do circuito? No custa discerni-lo: ser 1
Um parntesis final: neste Projecto, os Xs vieram todos a ser considerados como 1s mas essa no a regra
geral: Projectos haver onde dar mais jeito considerar alguns Xs como 1s (e os restantes como 0s).