Você está na página 1de 58

UEM – Faculdade de Engenharia

Departamento de Engenharia Electrotécnica


Curso de Engenharia Electrónica

AT07-08- Sistemas Combinatórios

Introdução;
Convesores de Código, Codificadores, Descodificadores/GPCs;
Multiplexadores/Desmuxltiplexadores;
Circuitos Aritméticos (somadores, subtractores, Comparadores,
Geradores de Transporte, ULAs, ;
Modelação, análise e Síntese.
Dispsitivos Lógicos Programáveis (combinatórios).

Doutor Eng. GJ Doho


SemII.2020/2021

Electrónica Digital I – Enga. Electrónica


Sumário

Sistemas Digitais Combinatórios:


1. Introdução aos sistemas Combinatórios. Definição, caracterização e
representação; (AT07)

2. Convesores de Código, Codificadores, Descodificadores/GPCs; (AT07)

3. Multiplexadores/Desmuxltiplexadores; (AT07)

4. Circuitos Aritméticos; (AT08)

5. Modelação, análise e síntese dum sistema sequencial. Do enunciado do


problema ao logigrama; (AT08)

2
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios
Definição e caracterização sistema Combinatório

• Em sistemas digitais, os circuitos lógicos podem ser ou


combinatórios ou sequenciais.
• Um circuito combinatório consiste de (i) variáveis de entrada
(inputs), (ii) portas lógicas que implementam funções lógicas, e
(iii) variáveis de saída (outputs), que mapeiam para as (ou
algumas das) referidas funções lógicas.

3
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios
Definição e caracterização sistema Combinatório
Sistema Combinatório (em outras palavras):
É todo aquele cuja(s) saída(s) z num dado instante t, ou seja, z(t), é(são)
determinada(s) pela, e somente pela combinação dos valores booleanos das
suas variáveis externas de entrada (representadas por x), dadas nesse
mesmo instante t. Ou seja: circuito combinatório saídas
Variáveis
externas x(t) z(t)
z(t) = F(x(t)) de entrada
F

O sistema combinatório acima é um sistema ideal, onde não existe atraso de


propagação entre a entrada e a saída. os sistemas combinatórios reais
admitem um atraso de propagação, contudo desprezível, podendo ser
suposto inexistente p/a consideração da definição acima. Interessa porém
notar que não há nenhum mecanismo de armazenamento de valores
históricos das entradas, por isso o sistema combinatório não tem capacidade
p/ enxergar o passado e ter um comportamento que seja por ele
influenciado, e por outro lado, mantém-se o carácter causal do sistema: a
saída z (o efeito) acontece como consequência das entradas (a causa).
4
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios. Definição e Caracterização
Sistema Combinatório, em resumo:

A saída é uma consequência dos valores das suas entradas externas; ou seja: é
um sistema causal.
i. A saída actual (instante t) depende só, e somente só, de varáveis externas
também actuais (instante t);
ii. Um sistema combinatório pode consistir em uma ou mais funções de saída
mas não contém um sistema sequencial (ie, não possui memória de
acontecimentos anteriores);
iii. O sistema combinatório real tem um tempo de atraso de propagação entre
as entradas e as saídas, que é considerado desprezível; outrossim, o atraso
de propagação reforça a característica causal; Ademais,
iv. O tempo de atraso de propagação determina ou influencia algumas
características eléctricas e temporais (exemplo velocidade de comutação, o
consumo em potência e outros aspectos).

Electrónica Digital I – Enga. Electrónica


5
Sistemas Combinatórios
Passos de modelação, análise e síntese de Sistemas combinatório. Visão Simplificada
O roteiro resumo, simplificado, da análise e síntese dum sistema digital
combinatório é o seguinte:

1. Determinação dos inputs/outputs a partir do enunciado e/ou do


estudo/observação do caso em consideração;
2. Estabelecimento duma TVd (ou de expressões algébricas iniciais não
necessàriamente reduzidas, aplicável p/o caso dum sistema com
número elevado de entradas. Neste caso deve-se procurar fazer uma
redução do número de variáveis, se possível e/ou ainda a divisão do
sistema em subsistemas para reduzir complexidade);
3. Obtenção das saídas simplificadas do sistema pelo método de Karnaugh,
ou se aplicável, manualmente (por maniplação algébrica, se o caso se
mostrar o bastante simples de acordo com o número de mintermos ou
de maxtremos da função), ou, se o caso se mostrar complexo, pelo
método de Quine-McCluskey, ou ainda outros métodos computacionais,
de acordo c/ o caso, ou segundo melhor conveniência;
4. Desenho do logigrama final do circuito, seguido ou acompanhado de
testes/verificação/simulação e eventual implementação.
6
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios
CODIFICADORES
Um Codificador é um circuito combinatório que possui um número determinado de entradas, das quais só
uma tem o estado lógico 1 (códiggo 1-entre-k), capaz de gerar um código em combinação binária arbitrária
de vários bits que depende de qual seja a entrada excitada. O código de saída pode ser o binário natural
mas pode ser qualquer outro que se eleja conveniente.

Um codificador constitui a operação inversa de um descodificador.


Em contrapartida, um codificador ou um descodificador doponto de vista mais generalizado são conversores de
código.

Um codificador Pode ser:


com Prioridade ou sem Prioridade

sem Prioridade:
Para cada linha de entrada escolhida, uma palavra de código com os bits A0, A1, ..., AN-1 aparece na saída.
-O código de saída de N bits depende de qual entrada está ativa.
-Somente um entrada é ativa por vez.
7
Electrónica Digital I
Sistemas Combinatórios
Codificadores
Exemplo1: Codificador Octal (1-entre-8) para Binário, com entradas
activas em nível ALTO.
Podemos derivar as funções booleanas da tabela abaixo, pela soma das
entradas não nulas.
z = D1 + D3 + D5 + D7
y = D2 + D3 + D6 + D7
x = D4 + D5 + D6 + D7

8
Electrónica Digital I - Enga. Electrónica
Sistemas Combinatórios
Codificador Sem Prioridade
Exemplo2: Codificador Octal (1-entre-8) para Binário, com entradas
activas em nível BAIXO.

•A entrada A0’ está desconectada, pois a saída é 000


quando nenhuma das entradas estiver em nível baixo.

• Caso as entradas A3’ e A5’ sejam acionadas simultaneamente, o


código de saída é 111 (errado) (o que acontece por se tratar de um
codificador s/prioridade).

9
Electrónica Digital I
Sistemas Combinatórios
Codificadores
Evolução: Do codificador sem prioridade para o c/prioridade:
No codificador s/prioridade, vimos que se duas entradas forem ativadas
simultaneamente, a saída produz uma combinação indefinida ou ilegal. Daí que surge
a ideia do codificador c/prioridade: Podemos estabelecer uma ordem de prioridade
das entradas para garantir que apenas uma das entrada (a mais prioritária) seja
codificada: geralmente se considera a mais prioritária aquela activa que estiver mais à
esquerda, mas a convenção oposta é conceitaualmente válida e também usada. Isto é
obtemos um codificador c/ prioridade.
Outra ambiguidade no codificador já visto, octal (1-entre-8) para binário: é que uma
saída com todas as bits 0's é gerada quando todas as entradas são 0's; acontece que
essa saída (todos bits 0's) é a mesma para quando D0 é igual 1.
Isso se resolve fornecendo mais uma saída p/indicar que pelo menos uma entrada é
igual a 1 (entrada válida), caso contrário (entradas nulas), então entrada é inválida.

10
Electrónica Digital I - Enga. Electrónica
Sistemas Combinatórios
Codificador c/ prioridade
Exemplo3: Codificador c/prioridade 1-entre-4 p/binário, com entradas activas em nível BAIXO.
Entradas: D0 a D3
Saídas normais (saídas do código): x, y
Saída de status ou de verificação de validade dos inputs: V

V = 0  nenhuma entrada válida


V = 1  entradas válidas
Esta variável V pode (deve) ser adiciondada a
qualquer codificador de prioridade.
Os X's nas colunas de saída são dont cases
(indiferenças) da saída em relação à combinação
de entrada.
Os X's nas colunas de entrada são
úteis para representar uma tabela de verdade em
forma condensada, no lugar de listar todos os 16
mintermos de quatro variáveis. Codificador c/ prioridade

Electrónica Digital I - Enga. Electrónica 11


Sistemas Combinatórios
Codificador com Prioridade
Exemplo4: Codificador Octal (1-entre-8) para Binário, com entradas ativas em nível BAIXO.

• Possui a lógica necessária para obter na saída um código binário relativo à entrada activa de
mais alta ordem.

• Elimina o problema de duas ou mais entradas serem acionadas simultaneamente.

Codificador de Prioridade Decimal (1-entre-10) para BCD, c/entradas e saídas INVERTIDAS

TPC1: Quais são os códigos de saída para as seguintes entradas ativas: A2’ ; A3’ e A6’ ; A7’ e
A8’ e A9’ ; A8’..
• Não existe entrada A0', visto que o decimal zero é assumido quando todas as entradas estão
em nível alto.
12
Electrónica Digital I
Sistemas Combinatórios
Decodificadores
(Ou geradores de produtos canónicos)
-Um decodificador binário é um módulo que tem n entradas e 2n saídas;
-A cada instante uma única saída é ativada;
-Recebe em sua entrada um código binário e ativa a saída que identifica o código recebido.

•Alguns decodificadores não utilizam todas as 2n possibilidades


•No caso de um decodificador BCD para decimal, existem apenas 10 saídas (0 a 9) para os 4 bits
de entrada. Entradas inválidas não activam nenhuma das saídas. As saídas cujas entradas são
inválidas geralmente colocadas como indiferenças (don't cares). Em alguns casos as saídas são
activas em nível baixo. Nesse caso, as saídas possuem inversores, o que pode perfeitamente
resultar do processo de síntese.

13
Electrónica Digital I
Sistemas Combinatórios
Decodificadores (cont.)
Exemplo: Circuito lógico que implementa o decodificador de
2 para 4 e sua tabela verdade.

A1 A0 IN OUT
A1 A0 O0 O1 O2 O3
0 0 1 0 0 0
O0 0 1 0 1 0 0
1 0 0 0 1 0
1 1 0 0 0 1

O1

As entradas são geralmente chamadas de


O2
“endereços”.

O3 Assim como um endereço seleciona uma casa, os


bits A1A0 selecionam uma saída.

A cada combinação de endereço corresponde um dado produto canónico


(mintermo). É por issso que o descodofocador é também conhecido por “gerador
de produtos canónicos” (GPC).
14
Electrónica Digital I
Sistemas Combinatórios

Decodificadores (cont.)
Entrada ENABLE (HABILITAÇÃO)
Alguns circuitos apresentam uma entrada ENABLE para controlar sua operação (habilitar ou
desabilitar) o circuito decodificador.

Pode ser ativa em nível ALTO ou BAIXO.

TPC2: Monte o circuito lógico que implementa o decodificador de 2 para 4 apresentado a seguir:

15
Electrónica Digital I
Sistemas Combinatórios

Decodificadores (cont.)

16
Electrónica Digital I
Sistemas Combinatórios
Decodificadores (cont.)
• A implementação direta de um decodificador de 3 para 8 é apresentada na seqüência.

Obs: Somente 1 de 8 saídas está


em nível alto.

17
Electrónica Digital I
Sistemas Combinatórios
Decodificadores (cont.)
• O cir cu ito lógico do decodificad or 74ALS138 é
apresentado a seguir:

Observações:

• Apesar da porta AND estar fora do bloco, ela faz parte


do circuito interno do CI;

• As saídas são ativas em


nível baixo;

•As entradas E1’, E2’ e E3 facilitam a interligação sem


lógica adicional.

TPC3: Investigue a datasheet desse CI e verifique os


dados apresentados.

18
Electrónica Digital I
Sistemas Combinatórios

Descofificadores p/mostradores de 7-segmtos


• Além das aplicações já vistas, há uma muito interessante. Decodificador e excitador
de display de 7 segmentos.
• O display de 7 segmentos é um mostrador digital, formado por 7 segmentos Leds.

19
Electrónica Digital I
Sistemas Combinatórios

Descofificadores p/mostradores de 7-segmtos (cont.)


• Nesse circuito, ABCD são as quatro entradas binárias e abcdefg são as saídas para os sete segmentos
do display. A tabela de verdade é dada abaixo. NB: Ativada em nível alto.
A informação binária contida em abcdefg,
representa apenas um padrão visual
(visual patern), pelo qual se poderá
reconhecer visualmente o dígito
correspondente. Isto é, o código de
abcdefg não contem per si um valor
numérico ponderado (posicional).
Por exemplo, para a combinação 0,
abcdefg tem o código 1111110. Esse
número binário é, na realidade, um
código para o display de sete segmentos
acender o padrão visual, reconhecível do
zero.

20
Electrónica Digital I
Sistemas Combinatórios

Descofificadores p/mostradores de 7-segmtos (cont.)

A notação Ø na tabela de verdade, é o mesmo que o habitual x; indica valor indiferente (pode
ser 0 ou 1), uma vez que não há valor a exibir acima da combinação 9, sobrando um total de 6
combinações. Estas podem ser utilizadas como don’t cares no MVK. Entretanto, nesses casos, a
fonte fornecedora das entradas deve evitar de fornecer tais combinações. Algumas vezes,
algumas delas, são usadas para sinal negativo, sinal de erro, entre outras possibilidades.

21
Electrónica Digital I
Sistemas Combinatórios
Descofificadores p/mostradores de 7-segmtos (cont.)

Para o segmento (a) Para o segmento (b)

a = A + C + BD + B’D’ b = B’ + C’D’ + CD

mVKs para dois dos 7 segmentos

TPC4: Produzir as expressões simplificadas dos restantes segmentos


22
Electrónica Digital I
Sistemas Combinatórios
Conversores de Códigos
Estes circuitos têm por objetivo converter códigos. Desta forma o circuito que realiza esta conversão é designado
de Conversor. O código de origem representa as entradas do circuito e o código de destino representa as saídas
do mesmo, representados numa tabela de verdade. Os mapas de Karnaugh são usados para obter as expressões
mínimas das somas de produtos ou produtos de somas que por sua vez são usadas para implementar o diagrama
lógico do conversor.

Como foi dito, num ponto de vista mais generalizado os codificadores e descodificadores são conceitualmente
um caso particular dos conversores uma vez que de modo grosseiros qualquer deles converte um dado código de
entrada em outro código de saída. É contudo útil manté-los calssificados em departamentos diferentes para
facilitar a compreensão e o âmbito de utilização de cada um deles.

Procedimento para realização de um CONVERSOR

Código de origem Entradas

Código de destino Saídas

Mapas de Karnaugh

Expressões mínimas

Diagrama Lógico Conversor


23
Electrónica Digital I
Sistemas Combinatórios

Conversores de Códigos (cont.)


Exemplo
Projetar um conversor de código XS-3 (Excess-3) para o código NBCD
1. Representação do Código de Origem e Destino na Tabela de Verdade
Entradas Saídas
BCD XS-3 NBCD8421
DECIMAL I3 I2 I1 I0 D C B A 2. Dos mVK’s obtêm-se as expressões:
0 0 0 1 1 0 0 0 0
1 0 1 0 0 0 0 0 1
2 0 1 0 1 0 0 1 0
A  I0
3 0 1 1 0 0 0 1 1
4 0 1 1 1 0 1 0 0 B  I0  I1
5 1 0 0 0 0 1 0 1
6 1 0 0 1 0 1 1 0 C  I0  I 2  I0  I1  I 2  I0  I1  I3
7
8
1 0 1 0
1 0 1 1
0 1 1 1
1 0 0 0
D  I0  I1  I3  I 2  I3
9 1 1 0 0 1 0 0 1

TPC: mostre os mapas de Karnaugh que produzem estas saídas

24
Electrónica Digital I
Sistemas Combinatórios

Conversores de Códigos (cont.)


I0 A

I1 B

I2

D
I3

25
Electrónica Digital I
Sistemas Combinatórios

Multiplexer (Multiplexor, Multiplexador, Mux)

A Multiplexagem consiste em transmitir um grande número (m) de entradas de informação através de um


pequeno número (p) de linhas ou canais de transmissão (m é maior que p, e geralmente m é um múltiplo
de p).
Um multiplexer digital é um circuito combinatório que seleciona a informação binária de uma das várias
linhas de entrada paralelas e direciona-as para uma única linha de saída. A seleção de uma determinada
linha é efetuada através de um conjunto de linhas de seleção ou de endereço.
Os multiplexers podem ser considerados comutadores. A seleção de uma determinada linha é efetuada
através de um conjunto de linhas de seleção ou de endereço digitais que permitem encaminhar as ligações
de várias entradas para uma única saída.
Genericamente os multiplexers dispõem de n entradas de informação, em que cada entrada pode ter b bits
cada, e uma única saída também com b bits. Para além destas, ainda existem as entradas de seleção s.
O número de entradas de seleção depende do número de entradas de informação.
A relação entre o número n e s é n=2s.
São comercializados integrados que contêm multiplexers com n=2, 4, 8, 16, ... e b=1, 2, 3, 4, ...
A entrada de enable permite ativar ou desativar todas as entradas simultâneamente, permitindo ou
impedindo que a informação chegue à saída.

26
Electrónica Digital I
Sistemas Combinatórios

DIAGRAMA FUNCIONAL DO MULTIPLEXOR

27
Electrónica Digital I
Sistemas Combinatórios

IMPLEMENTAÇÃO DE UM MULTIPLEXOR
Consideremos a implementação de um multiplexer de duas entradas. Para tal necessitamos de apenas uma
linha de Seleção que nos permite escolher, entre as duas entradas, aquela que irá ter acesso à saída.
As portas AND e os inversores num multiplexer funcionam, no seu conjunto, como um circuito descodificador
pois, na realidade, eles descodificam as entradas de seleção. Em geral, um multiplexer de 2s linhas para 1 é
implementado a partir de um descodificador de s para 2s, adicionando-lhe 2s linhas de entrada, uma por cada
porta AND. As saídas das portas AND são aplicadas a uma única porta OR para providenciar a única linha de
saída (TPC: Implemente um mux 4:1 usando um descodificador para tal).
Como foi referido para os descodificadores, também é possível ligar multiplexers em cascata de forma a
obtermos multiplexers de mais entradas para uma única saída.

D1

S Saídas Y  D1S  D 0 S
D0
0 Y = D0

1 Y = D1
S
Tabela de Verdade Selecção

28
Electrónica Digital I
Sistemas Combinatórios

Multiplexor 4 : 1

S0 S1 Z
0 0 I
0
0 1 I
1
1 0 I
2
1 1 I
3

29
Electrónica Digital I
Sistemas Combinatórios

Expansão de Multiplaxadores a partir de unidades menores

• Os multiplexadores com maior número de entradas podem ser obtidos colocando em cascata dois ou
mais multiplexadores com menos número de entradas.
• Abaixo está um projeto de 16: 1 MUX usando 4, 4: 1 MUXs: -

30
Electrónica Digital I
Sistemas Combinatórios
APLICAÇÕES DOS MULTIPLEXERS
• Os multiplexers apresentam diversas aplicações, entre as quais destacamos: geradores de funções,
conversão paralelo-série, geradores de formas de onda e o direcionamento de dados. Iremos abordar
unicamente a aplicação como gerador de funções e conversão paralelo-série.
• Geradores de funções:
• Os multiplexers podem ser usados para implementar funções lógicas diretamente da tabela de verdade
(TVd) sem recorrer a simplificações. Quando usado com esta finalidade, às entradas de seleção são
aplicadas as variáveis lógicas do circuito (s da TVd) e cada uma das entradas é ligada permanentemente
a 0 (os maxtermos) ou 1 (os ).
• NB: TPC, investigar e estudar outros métodos de implementação.
Tabela de Verdade: (liga aqui os mintermos)

(liga aqui os maxtermos)

entrada

F(a, b, c )   m(2,3,6) Y  a b c  a b c  a b c

31
Electrónica Digital I
Sistemas Combinatórios

APLICAÇÕES DOS MULTIPLEXERS


Um grande número de sistemas digitais processa a informação binária de forma paralela dado que assim a
transmissão é mais rápida. Quando se pretende que os dados sejam transmitidos a distâncias relativamente
longas, este tipo de transmissão pode não ser o mais aconselhado, dado que requer um grande número de
linhas de transmissão. Por esta razão a informação paralela é convertida na forma série antes de ser
transmitida até um receptor distante. A forma de realizar essa conversão é usar um circuito multiplexer.
MULTIPLEXER COMO CONVERSOR PARALELO-SÉRIE (exemplo)

32
Electrónica Digital I
Sistemas Combinatórios

DEMULTIPLEXOR
• O demultiplexer providência a operação inversa do multiplexer. Recebe informação de uma
entrada apenas, fazendo a distribuição por várias saídas, previamente selecionadas. As entradas
de endereço ou seleção irão determinar qual das saídas irá receber a informação proveniente da
entrada. Também conhecido como distribuidor de dados.

Diagrama funcional

33
Electrónica Digital I
Sistemas Combinatórios

Demultiplexer 1 : 2 Demultiplexer 1 : 4

S0 S1 D0 D1 D2 D
3

S0 Y0 Y 0 0 D 0 0 0
1
0 1 0 D 0 0
0 D 0
1 0 0 0 D 0
1 0 D
1 1 0 0 0 D

34
Electrónica Digital I
Sistemas Combinatórios

Expansão de desmultiplexadores: Demultiplexer em árvore


Abaixo está um projeto de MUX de 1: 8 usando 7 MUXs de , 1:2 :
F6 F7

S0

0 0
S 1 S 1 0 0
1:2 Demux 1:2 Demux S 1 S 1
1:2 Demux 1:2 Demux

S1
0 1
0 S 1
S
1:2 Demux 1:2 Demux

S2
0 S
1
1:2 Demux

ENTRADA

35
Electrónica Digital I
Sistemas Combinatórios

Implementar um demux com o decoder 74LS138


A constituição de um demultiplexer de 1:8 é basicamente igual à do descodificador de 3 para 8 linhas, tendo
apenas que se levar em linha de conta que se irá utilizar uma das entradas de enable para funcionar como
entrada de informação. De uma forma geral, os descodificadores com enable podem funcionar como
demultiplexers como acontece com o 74LS138. No exemplo do slide, a entrada G2A funciona como entrada de
informação enquanto que as outras suas duas entradas de enable são colocadas nos seus valores activos. As
entradas de selecção são A, B e C. Como se pode verificar a saída Y5 acompanha o valor da entrada G2A

TPC5: Pesquisar na Internet a datasheet do CI 74LS138 e doutros desmultiplexadores digitais e analógicos (de 2 p/4,de 4 p/ 16,
etc) e estudar a possível aplicação como MUXs ou DeMUXs.

Electrónica Digital I 36
Sistemas Combinatórios

CIRCUITOS ARITMÉTICOS
• Circuitos que realizam operações aritméticas com números binários;
• Geralmente operação de soma e subtração;
• Utilizados na ALU (Arithmetic/Logic/Unit) dos microprocessadores;

• Meio/Semi-Somador
• O Meio Somador (HA, Half Adder), soma dois números binários de 1 bit.
• Possui 2 bits de entrada e 2 bits de saída (soma + Carry).

Tabela de Verdade Funções de Saída Logigrama


A B S Co
0 0 0 0 S = A’B + AB’ = A Ꚛ B
0 1 1 0
1 0 1 0 Co = AB
1 1 0 1
37
Electrónica Digital I
Sistemas Combinatórios
Somador Total (Full Adder - FA)
• Quando ocorrer situações de soma entre números de mais do que 1 bit, o
segundo par de bits precisa de levar em conta um transporte de entrada, então
nesse caso, o meio somador deixa de ser utilizável e em seu lugar passa-se a
usar o Somador Total (Full Adder - FA), o qual tem um transporte de entrada.
• A nova tabela-verdade terá:
• 3 variáveis de entrada: A, B e o “Vem 1” (Carry in - Cin);
• 2 variáveis de saída: soma (S) e o “vai 1” (carry out - Co).

S = A Ꚛ B Ꚛ Cin

Co = AB + B.Cin + A.Cin

38
Electrónica Digital I
Sistemas Combinatórios
Somadores em Ligação Paralelo-Série
• Para obter somadores de n bits, os módulos podem ser ligados
em uma configuração série/paralela, onde os pares de bits
somados e a saída correspondente estão em paralelo com
outros pares de bits, contudo os transportes são ligados em
série entre si, onde um certo transporte de saída é ligado ao
transporte de entrada do par de bits de significância imediata.
Outras configurações são possíveis, nomeadamente c/o uso de
geradores antecipados de transporte.

39
Electrónica Digital I
Sistemas Combinatórios

SUBTRATORES

• Antes de iniciarmos, vamos relembrar o processo de subtração


binária:
(a) (b)
101101 100101
- 100111 - 11010
000110 001011

(c)
11001001
- 10111011
00001110

40
Electrónica Digital I
Sistemas Combinatórios

SUBTRATORES
• Com isto, teremos a seguinte regra:
• Regra 1: 0-0=0
• Regra 2: 0 - 1 = 1 “empresta 1”
• Regra 3: 1-0=1
• Regra 4: 1-1=0
• A partir das regras, podemos extrair uma tabela-verdade, de 2
variáveis.
• Atente-se que a saída será a diferença (Di) e o empréstimo, Bo.

41
Electrónica Digital I
Sistemas Combinatórios

MEIO/SEMI-SUBTRATOR (Half subtractor – HS)

Di

BO

XOR AND

42
Electrónica Digital I
Sistemas Combinatórios

SUBTRACTOR TOTAL (Subtractor Completo; Full Subtractor - FS).


• Nos casos em que a subtração envolve apenas um par de bits (diminuendo e
subtrativo são de 1 bit), é comum utilizar um meio subtrator (half subtractor – HS).
• Quando ocorrer situações tais como os abaixo, de subtração de números multi-bit:
32s 16s 8s 4s 2s 1s
1 0 0 1 0 1 (37)
• Este FS será composto pelas seguintes
- 1 0 1 0 (10) partes:
1 0 1 1 (27) – 3 variáveis de entrada: A
(diminuendo, minuendo ou
aditivo), B (subtrativo ou
Não dá mais para utilizar o HS. subtraendo ou diminuidor) e a
“entrada de empréstimo”
Para estes casos , usa-se (borrow in - Bin);
o Subtrator Total (Full Subtractor - FS). – 2 variáveis de saída: diferença (Di)
e a “saída do empréstimo”
(borrow out - Bo).

43
Electrónica Digital I
Sistemas Combinatórios

SUBTRACTOR TOTAL (Subtractor Completo; Full Subtractor - FS).


Diagrama lógico

Tabela de Verdade Diagrama lógico


Di = A Ꚛ B Ꚛ Bin equivalente

Bo = A’B + B.Bin + A’Bin


C/transformações booleanas equivale a:
Bo = A’B + (A Ꚛ B)’ Bin = A’B + (A' Ꚛ B) Bin

44
Electrónica Digital I
Sistemas Combinatórios
Atraso de Propagação do transporte / empréstimo
• Como os transportes ou empréstims são gerados / ligados em série o atraso de propagação
afectará os sinais de saída em tempos diferentes: os estágios mais significantes das operações
receberão o seu transporte / empréstimo muito mais tarde, tão tarde qanto a sua distância do
bit menos significante por isso é conveniente que os sinais sejam dados o tempo suficiente
para as entradas se estabilizem e daí se poder obter saídas precisas e estáveis.

• A técnica mais amplamente utilizada para mitigar o fenómeno do atraso de propagação, é a


gerão antecipada do transporte /empréstimo (look ahead carry generation) uma vez que em
realidade todos os inputs necessários para gerá-los já são conhecidos no instante zero.

• No logigrama à direita, C3 é
gerado/propagado ao mesmo tempo
que C2 e C1. Diagrama lógico de gerador de transporte antecipado
45
Electrónica Digital I - Enga. Electrónica
Sistemas Combinatórios

Somadores/Subtractores em forma de CI´s


• Na prática, os somadores totais são comprados em forma de CI´s, em vez de serem montados com
portas lógicas.
• Exemplo: CI 7483 (CI comercial, somador em paralelo de 4 bits)

16s 8s 4s 2s 1s
Uma vez que a subtração pode ser feita através da soma do diminuendo com o complemento a base (a 2 em binário) do
subtrativo, os circuitos somador/subtrator podem ser implmentados num único circuito somador (vide slide seguinte): Este
circuito terá uma entrada conhecida como “controle de modo”. Se ele estiver em 0, o circuito funcionará normalmente como
somador, porque as 4 portas XOR não terão efeito sobre os dados nas entradas B; se de contrário o controle de modo for 1, o
circuito funciona como subtrator pelo método do complemento, porque as 4 portas XOR agirão como inversoras, produzindo o
complemento a 1 que somado ao 1 do 1º Cin, produz complemento a 2.
Electrónica Digital I

46
Sistemas Combinatórios

Somador-Subtractor completo (c/uso de CI’s)


7486 7483

+ A3 A2 A1 A0
- B3 B2 B1 B0

CI´s usados:
1 x 7483 (somador) + 1 x 7486 (XOR)

47
Electrónica Digital I
Sistemas Combinatórios

COMPARADORES
Para compararmos dois bits necessitamos de um circuito que seja 1 sempre que as entradas forem iguais entre
si. Para tal basta construirmos um circuito que possua um EXOR e um inversor. Da mesma forma se obtém um
circuito comparador para dois números de 4 bits cada um. Para tal basta-nos usar quatro implementações do
circuito anterior e ligar todas as saídas a uma porta AND. Uma solução alternativa, de modo a minimizar o
número de portas a usar, consiste em aplicar as Leis de De Morgan à parte do circuito que contém os inversores
e a porta AND. Obtendo-se assim uma porta NOR.
Neste circuito verifica-se que a saída S só será 1 quando todas as entradas forem iguais duas a duas, i. é.,
quando os dígitos do mesmo peso dos dois números forem iguais (0’s ou 1’s).
Circuito Comparador de 2 números digitais de 4 bits, A = a0 a1 a2 a3 e B = b0 b1 b2 b3:
a0
b0

a1
b1
S
a2
a0 b2
S
b0
a3 (parte do) Comparador de 4-Bit
CI 74x85
Circuito Comparador de 2 bits, a0 e b0: b3

48
Electrónica Digital I
Sistemas Combinatórios

Gerador/Detector de paridade
Um erro num sistema digital consiste na corrupção do valor correcto de uma dada informação para
qualquer outro valor. É normalmente causado por uma falha física (temporária ou permanente).
Uma das formas de realizar a detecção desses erros é através do método das paridades.

Método das Paridades

Longitudinais Transversais

Na Paridade Longitudinal o acréscimo de um 1 ou um 0 é feita na horizontal para todos os bits da


mesma linha
Na Paridade Transversal o acréscimo de um 1 ou 0 é feita na vertical para todos os bits da mesma
coluna.
A Paridade pode ser Par ou Ímpar:
Na Paridade Par o bit de paridade será 1 ou 0 de forma que o número de bits 1 seja par.
Na Paridade Ímpar o bit de paridade será 1 ou 0 de forma que o número de bits 1 seja ímpar.

49
Electrónica Digital I
Sistemas Combinatórios

Gerador/Detector de paridade
§ Para se construir um detector de erros de um bit, em geral são necessários (n+1)-bit para
palavras de código de 2n-bit. Os n-bit constituem a palavra de código eqnuanto que o bit n+1
representa o bit de paridade (par ou ímpar);
§ A detecção de erros para este tipo de códigos (longitudinal OU transversal – não ambos) só é
praticável para erros de 1 bit.

EXEMPLO: Suponhamos um número decimal, Dígito Decimal


Código
Paridade Ímpar
(NBCD)
p. e. 937651234, que vai ser processado ou
9 1001 1
transmitido. Antes do processo se iniciar o
3 0011 1
sistema atribui-lhe uma paridade que vai
7 0111 0
verificar no final do processo.
6 0110 1
5 0101 1
1 0001 0
2 0010 0
3 0011 1
4 0100 0
Paridade Ímpar 0101

50
Electrónica Digital I
Sistemas Combinatórios

Gerador/Detector de paridade
Uma porta XOR (OU-exclusivo) é uma porta com duas entradas cuja saída é 1 se uma das entradas for
1, i. é, uma porta XOR produz um 1 na saída se o número de 1’s na entrada for ímpar (PARIDADE PAR).
Caso se trate de uma porta XNOR (NÃO OU-exclusivo) o resultado é o inverso, i. é, produz um 1 na
saída quando o número de 1’s na entrada for par (PARIDADE ÍMPAR).

a b S=ab S’ = a  b
0 0 0 1
S  a  b  a b  a b
0 1 1 0
1 0 1 0
S  a  b  a  b  a  b  a b  a b  a b  a b  b a  a b
1 1 0 1

a Exclusive-OR
   S
b CI 74x86

 

51
Electrónica Digital I
Sistemas Combinatórios

Circuito Gerador de Bit de Paridade (cont.)


Implementando n portas XOR em cascata, obtém-se um circuito com n+1 entradas e uma saída,
originando um circuito de paridade ímpar. Ao invertermos essa saída, resulta um circuito de paridade
par. I1
I2
I3
I4

Saída Ímpar Gerador Bit Paridade


In
Saída Par CI 74x280
Caso Prático Simplificado:
Suponhamos que transmitimos em paralelo ao longo de uma linha e que pretendemos usar um bit de
paridade para deteção de erros.
A

X Y

S
Gerador
Detector
TPC6: Pesquisar na Internet a datasheet do 74280, bem como outros CIs comerciais de geradores/detectores
de paridade.
TPC7: Pesquisar na Internet outro tipos de circuitos aritméticos: somadores BCD, Unidades Lógicas-
Aritméticas, multiplicadores, etc.
52
Electrónica Digital I
Sistemas Combinatórios
Modelação, Análise e Síntese de Sistemas Digitais Combinatórios
Passos do projecto de um sistema Combinatório:
1. Descrição do problema (no modelo textual, ou também possivelmente: verbal):
a. enunciado do problema (no início este pode ser parco, e omisso). Como parte desta alínea e
seguintes: desenhos, diagramas (ex: DdT) e outras presentações visuais, são importantes e
frequentemente indispensáveis. Deve haver preocupação em definir claramente inputs e outputs.
OBS: Exemplos simples, dispensam as alíneas seguintes. Por s/vez, sistemas complexos podem
sugerir a divisão do problema em partes, e daí, as respectivas soluções parciais, devendo-se
garantir harmonia (entre as entradas, saídas e comportamentos) das partes no sistema final.
b. Descoberta/descrição (análise) dos requisitos de funcionamento do sistema, incluindo, se aplicável:
(i) observação directa, da “geografia” e da “física” (visita ao local, ao mini-mundo) do problema;
(ii) entrevistas c/ partes interessadas e/ou afectadas (stakeholders);
(iii) recolha de dados existentes em arquivos ou bancos de dados; etc.
c. Detalhe das especificações exactas de funcionamento (no projecto físico, detalha-se também
alguns [= lista preliminar dos] artefactos ou meios necessários e suficientes p/a construção do
sistema que satisfaz os requisitos da alínea anterior e que resolve o problema em análise).
2. Representação formal do sistema combinatório sob a forma de: Tabela de Verdade (TVd),
expressões algébricas, e/ou em linguagem descritiva de hardware (LDH: VHDL, Verilog, ...).
Para exemplos simples, uma TVd, e/ou simplemente expressão(s) algébrica(s) são os
recomendáveis e suficientes. (As técnicas de design via LDH's em verdade, são transversais,
podendo englobar o essencial dos passos 2, 3 e 4, bem como partes do nr.1);
3. Síntese do sistema (obtido no pt.2) para a sua forma final simplificada, usando um método de
síntese, frequentemente: mVK (partindo neste caso da TVd): O que se obtém: expressões
algébricas que se representam também em logigrama.
4. Construção, teste, documentação (bem como: distribuição/implantação) do sistema. Aspectos
tecnológicos: escolher os componentes c/cuidado (custo/eficiência, logística, obsolência), etc.
53
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios.TPC8

1. Desenhe um diagrama em árvore listando circuitos combinatórios nas


suas diversas categorias e sub-categorias.
2. Defina o que é um codificador.
3. Distinga entre si codificadores sem e com prioridade: em que consiste
a diferença entre eles;
4. Defina o que é um descodificador/GPC, o seja, porque se diz que ele é
um gerador de produtos canónicos (GPC).
5. Liste o mais exaustivamente que puder as aplicações dum
descodificador/GPC (em que circuitos, combinatórios ou sequenciais
é usado um descodificador/GPC);
6. Defina um conversor de código e daí diga porque se pode dizer que os
codificadores, descodificadores e os habitualmente chamados de
“conversores de código”, são de facto todos eles conversores de
código?!

54
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios.TPC8
7. Defina um multiplexer e um demultiplexer digital.
8. Defina um multiplexer e um demultiplexer analógico. Dia porque se
pode dizer que um mux analógico não difere de um demux analógico e
daí porque o um mux analógico é considerado um mux demux
universal (digital ou analógico).
9. Que aplicações existem para um multiplexer e para um demultiplexer;
10. P o r q u e s e p o d e d i z e r q u e u m d e s m u l t i p l e x a d o r é u m
descodificador/GPC?
11. Quando é que um descodificador pode ser tomado ou usado como
desmultiplexador (quanto as suas entradas/saídas)?
12. Tendo descodificadores 74LS138, e portas lógicas à escolha livre,
construir um multiplexer (a) de 32 entradas e 1 saída; (b) um
desmultiplexador de 64 saídas.
13. Mostra como usa um descodificador 74139 para expandir blocos de
memória ROM de 256x4 para uma memória de 1024x8.
14. Mostra como usa 3 multiplexers para implementar um conversor de
código de Johnson de 4 bits para código Gray de 3 bits.
55
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios.TPC9
Sobre circuitos aritméticos:
1. Liste todos os tipos de circuitos combinatórios convencionais que conheces.
2. Em que diferem as entradas dum somador completo com as de um semi-somador;
3. Diga em que diferem as saídas dum somador completo com as de um semi-somador;
4. Diga em que diferem e em que é que são semelhantes as entradas e as saídas dum
somador completo com as de um subtrator completo;
5. Porque se pode dizer que um gerador de paridade é uma espécie de circuito aritmético?
6. Diga porque uma XOR precedendo uma das entradas dum somador completo, torna ao
somador num somador/subtrator e em que princípio matemático isso se baseia.
Demonstre;
7. A soma dum numero de vários bits é feita geralmente com o uso de somadores
completos os quais são ligados em paralelo quanto as bits de entrada de cada número
mas em série quanto aos transportes gerados nas somas. Diga que circuito é usado para
mitigar o atraso de propagação que acontece ao ligar em cascata os transportes de saída
com os de entrada dos estágios somadores mais significantes? Demonstre a ligação com
ou sem o tal dispositivo.
8. Será que a soma descrita na alínea g. pode ser feita usando um único somador? Explica.
9. Usando TVd, projecte um somador/subtrator completo para números B e A cada um
sendo de 2 bits; há uma variável de controle M a qual sendo nula o circuito soma e de
contrário subtrai. tome A como subtrativo quando se está em modo M=1; Por s/ vez,
para M=1, a entrada de transporte deve ser tomada como empréstimo.
10.Tendo portas XOR e (a) somadores de 1 bit, ou (b) somadores integrados de 4 bits ou (c)
ALUs de 4 bits; construa (i) um somador, (ii) um subtrator e (iii) um somador/subtrator de
1 dígito NBCD, devendo p/qualquer dos casos fazer o devido acerto do resultado.
56
Electrónica Digital I – Enga. Electrónica
Sistemas Combinatórios.TPC10
Modelação, análise e síntese de Sistemas combinatórios
É dado um portão de correr que dispõe dos seguintes inputs/outputs:
a. O remote que tem os botões Ra, e Rb;
b. os sensores de final de curso A e F, e
c. o sensor O de detecção de objectos a obstruir o percurso (caminho) do portão.
ü A=1 quando o portão estiver completamente aberto;
ü F=1 quando o portão estiver completamente fechado;
ü O=1 quando algum objecto for detectado no percurso do portão;
ü Quando o Ra é pressionado enquanto A = 0 então o motor é ligado no sentido de
Abrir (isto é, comando de saída fa = 1);
ü se Rb é pressionado enquanto F = 0 então o motor é ligado no sentido de Fechar
(isto é, comando de saída ff = 1);
ü Logo que e equanto A=1, fa = 0 ao passo que quando e enquanto F=1, ff= 0;
ü Logo que qualquer dos botões é liberado, os comandos fa ou ff tornam-se nulos.
ü Se ambos botões forem pressionados simultâneamente, RaRb = 11, ou se algum
dos botões for/estiver pressionado equanto O = 1, motor deve ficar parado, ou
seja fa e ff tornam-se nulos.
(1)A partir das definições acima: deverá seguir os passos de modelação
recomendados, usando uma abordagem (i) de mínimo custo ou (ii) de mínimo
risco, até obter o logigrama do circuito combinatório desejado.
(2) Justifique porque este sistema assim não pode ser considerado sequencial.
(3) O que faria para torná-lo mais confortável mesmo que tenha que converté-lo para
sequencial?
57
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Bibliografia/Fontes
1. Kaeslin, H.; Digital Integrated Circuit Design; Cambridge University Press, ISBN: 978-0-521-88267-7

2. A. Saha & N. Manna; Digital Principles and Logic Design; ISBN: 978-1-934015-03-2

3. Ronald J. Tocci, N. Widmer, G. Moss; Sistemas Digitais, Princípios e Aplicações, 11ed, 2011 Pearson Prentice Hall.

4. Roger L. Tokheim; Theory and Problems of Digital Principles, ISBN 0-07-065050-0.

5. Richard Sandige, Modern Digital Design

6. D.Leach, A.Malvino & G.Saha; Digital Principles and Applications; ISBN 0-07-039883-6

7. Null, L. & Lobur, J., The Essentials of Computer Organization and Architecture, 2nd Ed, John Bartlett Publishers

8. Floyd, T. L., Sistemas Digitais, Fundamentos e Aplicações, 9a.Ed, Bookman, ISBN 978-85-7780-107-7

9. Even, G and Medina, M.; Digital Logic Design, Cambridge University Press

10. Finite State Machines, pp472-545; www.cse.chalmers.se/~coquand/automata/book.pdf

11. SDM098 - Computation Structures Lecture 4, Lulea University of Technology

12. Marco Della Vedova and Tullio Facchinetti, Robotics-Finite State Machines; http://robot.unipv.it/toolleeo

13. https://en.wikipedia.org/wiki/Finite_State_Machine

14. Turner, J., Designing Digital Circuits, a modern approach

15. Shankar Balachandran, IIT Bambay, Digital Circuits and Systems

16. OSU, CS 447-Wireless Embedded Sysems, Lecture_06.pdf

58
Electrónica Digital I – Enga. Electrónica

Você também pode gostar