Você está na página 1de 62

ELECTRÓNICA DIGITAL

CIRCUITOS COMBINATÓRIOS
CIRCUITOS SEQUENCIAIS
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Ficha Técnica
Título: Electrónica Digital - Circuitos Combinatórios e Circuitos Sequenciais

Autor: Carlos Sousa

Coordenador de Edição: Luís Bomfim Barreiros

Editor: Edições Gustave Eiffel

Capa, Composição Gráfica e Acabamentos: Luís Bomfim Barreiros

Setembro de 2003 - 1ª Edição.

II
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

ÍNDICE
1. - CIRCUITOS COMBINATÓRIOS....................................................................................................... 5
1.1 - Introdução................................................................................................................................. 5
1.2 - O Multiplexer............................................................................................................................. 6
1.3 - O Demultiplexer....................................................................................................................... 10
1.4 - O Decoder............................................................................................................................... 14
1.5 - O Encoder............................................................................................................................... 15
1.6 - O Comparador......................................................................................................................... 17
1.7 - O Descodificador BCD-7 Segmentos......................................................................................19
1.8 - Notas Finais............................................................................................................................ 21
1.9 - Exemplos de Circuitos existentes no Mercado........................................................................22
1.10 - Exercícios Resolvidos........................................................................................................... 24
1.11 - Exercícios Propostos............................................................................................................. 29
2. - CIRCUITOS SEQUENCIAIS.......................................................................................................... 31
2.1 - Introdução............................................................................................................................... 31
2.2 - Os Circuitos FLIP-FLOP.......................................................................................................... 32
2.2.1 - O FLIP-FLOP D LATCH.................................................................................................. 32
2.2.2 - O FLIP-FLOP SET - RESET........................................................................................... 34
2.2.3 - O FLIP-FLOP D EDGE - TRIGGERED...........................................................................36
2.2.4 - O FLIP-FLOP TIPO "T"................................................................................................... 39
2.2.5 - O FLIP-FLOP "J-K"......................................................................................................... 41
2.2.8 - Algumas notas sobre FLIP-FLOPS.................................................................................42
2.3 - Registos.................................................................................................................................. 43
2.4 - Circuitos Contadores............................................................................................................... 45
2.5 - Circuitos SHIFT - REGISTER.................................................................................................. 49
2.6 - Circuitos RAM......................................................................................................................... 50
2.7 - Um pouco de Electrónica........................................................................................................ 53
2.8 - Alguns Circuitos Sequenciais do Mercado..............................................................................54
2.9 - Exercícios Resolvidos............................................................................................................. 55
2.10 - Exercícios Propostos............................................................................................................. 60

III
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

5
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1. - CIRCUITOS COMBINATÓRIOS

1.1 - Introdução

Os circuitos combinatórios, por definição, são circuitos cujo valor lógico das suas
saídas depende exclusivamente do valor lógico das suas entradas. Com o
aumento da complexidade exigida por alguns projectos, houve necessidade de
integrar em circuitos únicos, alguns circuitos combinatórios cujas funções por eles
realizadas são muito proveitosas na simplificação desses projectos. Esses
circuitos implementara funções usuais em projecto de sistemas digitais e vamos
abordar neste capítulo do nosso estudo os que considero mais didácticos e mais
importantes. São eles o multiplexer, o demultiplexer, o decoder, o enconder, o
comparador e o descodificador BCD-7 segmentos. Todos estes circuitos são
implementados segundo as técnicas abordadas no capitulo da Álgebra de Boole
pelo que não vou aqui referir como se projectaram estes circuitos, mas sim estudar
o funcionamento de cada um deles e descrever situações onde eles se podem
aplicar.

6
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.2 - O Multiplexer

Um circuito multiplexer, é um circuito combinatório que coloca como valor lógico da


sua saída o valor lógico que está presente na entrada seleccionada pelos seus
bit's de selecção. Este circuito terá então só uma saída, e várias entradas. Para
seleccionar qual das entradas colocará o seu valor lógico na saída, existem bits
que consoante o valor que tomam, fazem essa escolha. São designados como
bit's de selecção. A figura seguinte apresenta um multiplexer de 4 entradas, como
tal, este circuito necessitado dois bits de selecção (S0 e S1).

Note-se que existem circuitos multiplexer com mais entradas, aumentando


também nesses circuitos o número de bits de selecção. É obvio que trabalhando
com valores binários o número de bits de selecção é tal que o número de entradas
é igual a dois elevado ao número de bits de selecção.

7
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Em relação à figura anterior, tomemos o seguinte exemplo: se na entrada "0",


estiver o valor lógico “1” será necessário colocar em S0 e S1 os valores lógicos 0 e
0 para que a saída tome o valor lógico da entrada "0” que será 1. Se em S0 e S1
estiver outra combinação que não a anterior, a saída do multiplexer tomará o valor
lógico da entrada correspondente à combinação formada por S0 e S1. Vejamos a
seguinte tabela de verdades que exemplifica o funcionamento deste circuito
multiplexer:

S0 S1 “0” “1” “2” “3” S

0 0 0 - - - 0

0 0 1 - - - 1

1 0 - 0 - - 0

1 0 - 1 - - 1

0 1 - - 0 - 0

0 1 - - 1 - 1

1 1 - - - 0 0

1 1 - - - 1 1

Como se pode verificar pela tabela:

Quando S0 = 0 e S1 = 0, independentemente dos valores das outras entradas, a


saída S tomará o valor lógico da entrada “0”.

Quando S0 = 1 e S1 = 0
Independentemente das outras entradas, a saída S toma o valor da entrada “1”.

Quando S0 = 0 e S1 = 1
Independentemente das outras entradas, a saída S toma o valor da entrada “2”.

Quando S0 = 1 e S1 = 1
Independentemente das outras entradas, a saída S toma o valor da entrada “3”.

Dois assuntos importantes a estudar sobre este circuito:

 Como concatenar vários multiplexers para obter um multiplexer com mais entradas
 Como implementar funções lógicas a partir de um multiplexer.

8
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

A figura seguinte mostra como se pode construir um multiplexer de 4 entradas


usando três multiplexers de duas entradas. Esta concatenação é feita de uma
forma lógica e simples.

O S0 do multiplexer #0 e o S0 do multiplexer #1 estão ligados efectuando o S0 do


conjunto, ficando o S0 do multiplexer #2 disponível para fazer o S1 do conjunto. O
S0 do conjunto actua nos multiplexer #0 e #1 escolhendo em cada um deles a
entrada a colocar nas suas saídas, e o S1 do conjunto (S0 do #2) escolhe qual dos
multiplexers anteriores coloca na saída do conjunto o valor lógico. Assim ficamos
no final com um multiplexer de 4 entradas, usando a concatenação de três
multiplexers de duas entradas.

9
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Pense nas configurações possíveis dos bits S1 e S0 numa tabela de verdades. As


primeiras duas têm S1 = 0, portanto o multiplexer #1 está fora de serviço, pois S1
está igual a 0. Assim o multiplexer #0 coloca na sua saída a entrada "0" ou "1" do
conjunto, passando esta para a saída do conjunto, pois o multiplexer #2 coloca a
saída do multiplexer #0 na sua saída. Quando o bit S1 está a 1, o multiplexer #0
está fora de serviço, passando para a saída do conjunto a entrada "2" ou "3" do
conjunto, consoante o S0 esteja a 0 ou a 1.

A figura seguinte mostra como se pode implementar uma função lógica através de
um multiplexer, neste caso, um "AND".

A B A.B

0 0 0

F=A.B 0 1 0

1 0 0

1 1 1

Se a função a implementar foi o "AND" de A e B, deve-se escolher um multiplexer


de dois bits de selecção (um para cada variável da função), dando assim um
multiplexer de 4 entradas, (uma para cada caso). A saída da função é sempre a
saída do multiplexer. Em S0 ligamos a variável de menor peso (B) e em S1 a de
maior peso (A), para que a cada entrada do multiplexer corresponda, e pela
mesma ordem, um caso da tabela de verdades da função. Assim basta colocar
nas entradas do multiplexer o valor lógico da função em cada caso, pois ao serem
seleccionadas uma a uma as entradas do multiplexer, a saída do mesmo (e da
função) toma o valor lógico correspondente ao que está na tabela de verdades.
Neste caso deve-se ligar as entradas "0", "1" e "2" à massa e a entrada "3" ao Vcc.

10
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.3 - O Demultiplexer

Este circuito faz a operação inversa do multiplexer. Coloca na saída seleccionada


pelos bits de selecção o valor lógico da entrada. Tem, portanto, várias saídas, os
bits de selecção e uma só entrada. A figura abaixo representa um demultiplexer de
4 saídas. Para se escolher em qual das saídas se coloca o valor da entrada
necessita de dois bits de selecção (S0 e S1) tal como seria de esperar. As saídas
são designadas por “0”, “1”, “2” e “3” e a cada combinação de S0 e S1
corresponde a colocação do valor lógico da entrada nessa saída.

Se por exemplo, na entrada do demultiplexer estiver o valor lógico 1, se em S0 e


S1 estiverem os valores 0 e 1 respectivamente, na saída 2 aparecerá o valor
lógico 1, pois é esta a saída seleccionada. O estado das outras saídas
permanecerá a 0.
Analise a seguinte tabela de verdades que explica o funcionamento de um circuito
demultiplexer:

S0 S1 E “0” “1” “2” “3”

0 0 0 0 0 0 0

0 0 1 1 0 0 0

1 0 0 0 0 0 0

1 0 1 0 1 0 0

0 1 0 0 0 0 0

0 1 1 0 0 1 0

1 1 0 0 0 0 0

1 1 1 0 0 0 1

11
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Quando S0 = 0 e S1 = 0 a saída "0" é que toma o valor da entrada, e as restantes


ficam a 0.Quando S0 = 1 e S1 = 0 a saída "1" é que toma o valor da entrada, e as
restantes ficam a 0.Quando S0 = 0 e S1 = 1 a saída "2" é que toma o valor da
entrada, e as restantes ficam a 0.Quando S0 = 1 e S1 = 1 a saída "3" é que toma o
valor da entrada, e as restantes ficam a 0.
Tal como o multiplexer, este circuito também se pode concatenar, com mais alguns
do mesmo tipo construindo assim, um conjunto demultiplexer com mais saídas.

Na figura acima, mostra-se a concatenação de três demultiplexers de 2 saídas,


fazendo um conjunto demultiplexer de 4 saídas. O demultiplexer #1, faz a
“demultiplexagem” para o #2 ou para o #3, através do seu S0, que será o S1 do
conjunto final. Depois em cada um dos outros, #2 e #3, existe uma
“demultiplexagem” através dos seus S0 que estão ligados ao S0 do conjunto. Será
fácil entender o funcionamento deste circuito, pois as combinações de S0 e S1 do
conjunto, fazem com que o valor da entrada do mesmo seja colocada na entrada
de #2 ou #3 consoante o S1. e depois esse valor é passado à saída 0 ou 1 de #2
ou #1 consoante o valor de S0. As 4 combinações possíveis de S0 e S1, fazem
com que a saída escolhida para colocar o valor da entrada seja a 0, 1, 2 ou 3 do
conjunto.

12
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Uma aplicação

O uso do multiplexer e do demultiplexer em conjunto pode facilitar e simplificar a


comunicação entre dois pontos, senão vejamos:
Imagine que pretende efectuar uma comunicação entre dois pontos com 8 bits de
dados. Esses dois pontos distam 1000 metros um do outro. Como teríamos de
usar 8 fios (um para cada bit), teríamos 8000 metros de fio para a comunicação.

Podemos reduzir o comprimento de fio gasto e em consequência os custos


usando um circuito multiplexer e outro demultiplexer como se mostra abaixo:

13
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Este circuito usa só 4 fios para a comunicação o que reduz para metade os custos
desta comunicação.
Gerando ciclicamente os valores de 0 a 7 em binário em S0, S1 e S2, o multiplexer
passará para a sua saída os valores de A0 ... A7 e o demultiplexer colocará os
valores recebidos na sua entrada em B0..B7 na mesma ordem pois S0, S1 e S2
são comuns aos dois circuitos. A este tipo de comunicação chama-se
comunicação série porque enviam-se os bits um de cada vez pela mesma linha de
dados.
Os circuitos multiplexer e demultiplexer têm três variáveis de selecção (S0, S1 e
S2) porque têm 8 entradas e 8 saídas respectivamente. Como 2 3 = 8, logo temos
de ter 3 bits de selecção em cada um deles.
Se usarmos uma comunicação de 16 bits (16 Km de fio) em modo paralelo,
podemos usar apenas 5 fios (5 Km) na mesma comunicação em modo série pois
usamos multiplexer e demultiplexer de 4 bits de selecção (2 4 = 16). Neste caso a
poupança ainda era maior.

14
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.4 - O Decoder

Um decoder é um circuito combinatório, que activa a saída correspondente à


palavra de entrada, observar que este circuito tem duas entradas, A0 e A1, que
fazem uma palavra de dois bits. Ora com estes dois bits. pode-se escrever valores
de 0 a 3 (em binário de 00 a 11), pelo que o circuito terá de ter quatro saídas.
Colocando nas entradas a palavra que se deseja, o decoder activa a saída
correspondente deixando obviamente as restantes não activas. Note que no
mercado existem decoders de vários tamanhos de palavra de entrada.

A seguinte tabela de verdades ilustra o funcionamento deste circuito:

A0 A1 “0” “1” “2” “3”

0 0 1 0 0 0

1 0 0 1 0 0

0 1 0 1 1 0

1 1 0 1 0 1

Quando A0 = 0 e A1 = 0 activa-se a saída “0” ficando as restantes desactivas.


Quando A0 = 1 e A1 = 0 activa-se a saída “1” ficando as restantes desactivas.
Quando A0 = 0 e A1 = 1 activa-se a saída “2” ficando as restantes desactivas.
Quando A0 = 1 e A1 = 1 activa-se a saída “3” ficando as restantes desactivas.

15
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.5 - O Encoder

Este circuito faz a operação inversa do decoder. Por isso, coloca nas suas saídas
a palavra em binário correspondente à entrada activa. No caso da figura seguinte,
existem quatro entradas e, logicamente, a palavra de saída terá dois bits, A0 e A1.

Duas questões tiveram de ser resolvidas aquando de implementação deste


circuito.
A primeira tem a ver com o facto de se activar duas ou mais entradas. Esta é
resolvida com urna codificação com prioridades, ou seja, estabelecendo um
critério de prioridades na codificação das entradas (por isso estes circuitos são
mais designados por Priority Encoders, ou PENC como abreviatura). Um dos
critérios que se podem estabelecer, é o de se dar prioridade às entradas de menor
peso. Assim se a entrada de peso 0 é a mais prioritária, e por isso sempre que ela
esteja activa, o valor na saída é 00, independentemente se mais alguma das
outras entradas estiver activa. A entrada seguinte em termos de prioridade é a 1, e
assim, se ela estiver activa, juntamente com a 2 ou 2 3, o valor da saída é 01, e
assim sucessivamente. É este o critério usado normalmente por este circuito.

Entradas 3 2 1 0

Prioridade – +

16
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

A outra questão, prende-se com a circunstância de não haver nenhuma entrada


activa no circuito. Qual o valor escolhido para a saída, quando não há nenhuma
entrada activa no circuito? Será bom escolher o 00? Sc sim, corno distinguir entre
não haver entrada activa e estar activa a entrada 0? E por isso que existe a saída
GS {group select) que se activa quando pelo menos uma das entradas está activa.
Assim, se não se activar nenhuma entrada, A0 = 0 e A1 = 0, e GS = 0. Se se
activar qualquer entrada, A0 e Al têm a codificação dessa entrada e GS = 1. Se se
activar a entrada 0 A0 = 0, A1 = 0 e GS = 1. O GS serve para se fazer a distinção
entre a activação da entrada 0 e a não activação de qualquer entrada.

A seguinte tabela de verdades descreve o funcionamento de um decoder:

“0” “1” “2” “3” A0 A1 GS

0 0 0 0 0 0 0

0 0 0 1 1 1 1

0 0 1 0 0 1 1

0 0 1 1 0 1 1

0 1 0 0 1 0 1

0 1 0 1 1 0 1

0 1 1 0 1 0 1

0 1 1 1 1 0 1

1 0 0 0 0 0 1

1 0 0 1 0 0 1

1 0 1 0 0 0 1

1 0 1 1 0 0 1

1 1 0 0 0 0 1

1 1 0 1 0 0 1

1 1 1 0 0 0 1

1 1 1 1 0 0 1

17
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.6 - O Comparador

Este circuito, tal como o nome indica, faz a comparação entre dois valores
binários. A versão que vamos analisar, compara dois valores de quatro bits cada
um, como se mostra na figura seguinte:

Como se pode observar, este circuito tem as entradas A0 ... A3 e B0 ... B3, que
são os valores binários a comparar. Coloca três saídas disponíveis, A < B, A = B e
A > B, activando urna e uma só destas saídas consoante o valor colocado em A
seja menor, igual ou maior que o valor colocado em B.
As entradas A < B, A = B e A > B, servem para efectuar a concatenação de
circuitos destes, para se realizar módulos comparadores de valores com mais bits.
Se se pretender usar um único circuito destes (caso de se comparar dois números
de 4 bits cada), deve-se colocar as entradas A < B, A = B. A > B com 0, 1 e 0
respectivamente, pois o circuito comparador tem estas entradas para ser
informado do resultado da comparação de um módulo anterior, que neste caso
não existiria, e por isso, deve-se colocar nestas entradas estes valores para
indicarmos ao circuito que o resultado da comparação anterior (inexistente) foi
A=B, pois só assim ele fará a comparação.

18
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Para se entender o atrás referido, tem que se perceber que se comparar dois
valores, de 8 bits, por exemplo, compara-se a parte mais alta desses valores, e se
a comparação der diferente, é esse resultado A < B ou A > B, que é o resultado
final. A comparação das panes baixas, só se efectua se o resultado da
comparação das partes altas for A = B. O comparador foi desenhado para poder
ser concatenado, e por isso tem essas entradas. Se não se ligar com mais
nenhum, deve-se colocar nas entradas os valores referidos anteriormente, pois só
assim ele fará a comparação, senão dará o resultado colocado nas entradas. A
figura seguinte mostra a ligação de dois comparadores de 4 bits para se obter um
módulo de comparação de 8 bits.

O resultado da comparação da parte alta informa o comparador da parte baixa se


deve ou não comparar essa parte, pois só se a comparação anterior der igual é
que a parte baixa deve ser comparada para se obter dos valores de 8 bits.

19
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.7 - O Descodificador BCD-7 Segmentos

Este tipo de circuitos actuam num display de 7 segmentos. Um valor binário a


quatro bits é colocado nas suas entradas e os segmentos (leds) do display
acendem formando o dígito em decimal correspondente. Sendo assim, um
descodificador deste tipo “ataca” um só display, sendo portanto necessários
quantos circuitos destes quantos os displays ou dígitos se queiram controlar. As
entradas deste circuito são a 4 bits mas só os valores de 0 a 9 se podem introduzir
nas entradas binárias caso contrário o descodificador não responde bem.
Na figura seguinte, está um esboço de um display de 7 segmentos, onde há um
pino para cada segmento incluindo também um pino para o ponto e outro para o
comum aos leds.

As saídas do descodificador devem actuar as pinos correspondentes do display. O


descodificador é construído através de uma tabela de verdades com as quatro
entradas (A0....A3) e as 7 saídas (a..g). Consoante o valor de entrada, consoante
as saídas se devem activar ou não de modo a desenharem no display o número
correspondente ao valor colocado nas entradas. Assim se tiram as expressões de
cada saída (segmento) e integram-se esses circuitos ficando assim o circuito final
do descodificador BCD-7 segmentos.
Os displays, existem em duas fornias no mercado, cátodo comum e ânodo
comum. Se o display for de ânodo comum, para se activar um segmento deve-se
colocar no pino correspondente um 0. Se for de cátodo comum, deve-se colocar
um 1 para se activar o segmento correspondente. Assim existem descodificadores
com a activação das suas saídas a 1 e outros que ao activarem as suas saídas
colocam-lhes 0.

20
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Na figura seguinte, está representado um descodificador ânodo comum, pois as


suas saídas estão negadas, ou seja entradas para se escrever o valor a
representar, existem outras que permitem as seguintes operações:

LT - Lamp Test: quando activo promove a activação de todos os segmentos do


display.

RBI - Ripple Blancking Input: quando activo, se o valor da entrada for 0 promove a
desactivação de todos os segmentos.

Tabela de activação dos segmentos:


Não esquecer que as saídas se activam a 0.

A3 A2 A1 A0 a b c d e f g

0 0 0 0 0 0 0 0 0 0 1

0 0 0 1 1 0 0 1 1 1 1

0 0 1 0 0 0 1 0 0 1 0

0 0 1 1 0 0 0 0 1 1 0

0 1 0 0 1 0 0 1 1 0 0

0 1 0 1 0 1 0 0 1 0 0

0 1 1 0 0 1 0 0 0 0 0

0 1 1 1 0 0 0 0 1 1 1

0 0 0 0 0 0 0 0 0 0 0

1 0 0 1 0 0 0 0 1 0 0

21
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.8 - Notas Finais

Os circuitos foram aqui apresentados de uma forma teórica. No final deste


capítulo, encontram-se alguns circuitos existentes no mercado. Todos apresentam
mais entradas do que aquelas a que me referi, será necessário referir-me agora a
elas.
As entradas de "enable", ou "gate", abreviadas por "E", ou "G" são entradas que
quando activas, deixam o circuito funcionar normalmente, e quando não activas
inibem o funcionamento do circuito.
Também será necessário referir-me à natureza dos sinais tanto de entrada como
de saída. Os sinais que têm uma negação são sinais que quando activos têm
presente o valor lógico 0, e os sinais que não têm essa negação, são sinais que
quando activos têm o valor lógico 1, tanto nas entradas como na saída. Os
primeiros designam-se por sinais de natureza "active-low", e os segundos
designam-se por sinais de natureza "active-high".

22
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.9 - Exemplos de Circuitos existentes no Mercado

Apresentam-se de seguida alguns circuitos combinatórios existentes no mercado.

Um multiplexer de 8 entradas, o 74151, apresenta


os três bits de selecção A, B e C, correspondendo
a S0, S1, e S2, respectivamente. A entrada G, é
uma entrada "gate", "active-low", que quando
activa (a zero) Apresenta finalmente, a saída Y e
a negação dessa saída W.

Um descodificador BCD-7 Segmentos 7447 que é


apresentado com as saídas (A..G) “active-low”,
ou seja activam-se quando têm zero. Este circuito
interliga-se a displays de ânodo comum.

Um decoder de dois bits de entrada, 74139,


apresenta-se com as suas entradas A e B que
correspondem a A0 e A1 respectivamente. As
suas saídas também aparecem “active-low” e
possui uma entrada “gate”, “G”, também “active-
low” que coloca o decoder em funcionamento
quando está a zero (activa).

23
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Temos um comparador de dois números de 4 bit's


cada, 7485, que apresenta as entradas do
primeiro número (A0..A3) e do segundo (B0..B3).
Tem as entradas normais e as de concatenação
(A<B, A=B, A>B) e as saídas (A<B, A=B, A>B).

Temos, por último um Priority Encoder com 8


entradas, 74148. que coloca nas saídas A0, A1 e
A2 a codificação da entrada activa. Note que
tanto as entradas como as saídas são "active-
low", pelo que tudo ficará negado em relação aos
valores normais. Tem uma entrada EI, que inibe
ou não o funcionamento do circuito.

24
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.10 - Exercícios Resolvidos

1. Desenhe, a partir de circuitos decoders de 2 bits um circuito decoder de 3 bits.

Resolução:

Os bits A0 e A1 do conjunto atacam os dois decoders da forma normal que se


estudou. O bit A3 do conjunto, faz a comutação entre os dois decoders, de forma
que, quando a 0, coloque em funcionamento o primeiro decoder e iniba o
funcionamento do segundo, pois, quando A2 a 0, as palavras a descodificar estão
no intervalo 0..3, logo o primeiro decoder tem de as descodificar. Quando A2 está
a 1, o primeiro decoder fica inibido e o segundo fica a funcionar normalmente, e
assim as palavras a descodificar estão no intervalo 4..7.

25
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2. Um termómetro digital fornece a 4 bits temperaturas entre 0 e 15 graus.


Projecte um circuito que active um led para cada valor de temperatura e active
um alarme sempre que a temperatura seja maior que 10 graus.

Resolução:

Se o termómetro dá a temperança em 4 bits. podemos aplicar um decoder de 4


bits que activa a saída correspondente ao valor da entrada em binário e aplicar
uma barra de leds, cada um ligado a uma saída do decoder, ficando assim com
uma barra que indica quantos graus leu o termómetro. Depois, aplicamos B do
comparador, ligamos o valor 10 (1010) e quando a saída A>B se activar, é porque
a temperatura do termómetro ultrapassou os 10 graus, e assim activa-se o alarme.
De notar, por último, que as entradas do comparador devem ser ligadas como no
esquema, para que o comparador faça a comparação.

26
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

3. Projecte um sistema de controle para um parque de estacionamento de 8


lugares.
Este sistema deve colocar à entrada do parque um display, informando o
número do lugar vago mais próximo da entrada.

Este circuito recebe a informação dos sensores que estão colocados nos
respectivos lugares de estacionamento no parque. Assim se um lugar estiver vago,
activa-se o respectivo sensor. Basta usar um PENC com 8 entradas, codificá-las e
aplicar a palavra em binário a um descodificador BCD-7 segmentos, que atacará
um display. Note que na entrada do descodificador BCD-7 segmentos, o bit A3
está colocado a 0, pois se só temos uma palavra de três bits, o quarto bit deve
ficar a 0 para não haver problemas.

27
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

4. Extraia a expressão da saída F

Resolução:
Para resolver este tipo de problemas, devemos usar uma tabela de verdades:

A B C A0 A1 S0 S1 “0” “1” “2” “3” F

0 0 0 0 0 0 0 1 0 0 0 1

0 0 1 0 0 0 1 1 0 0 0 0

0 1 0 0 1 1 0 0 0 1 0 0

0 1 1 0 1 1 1 0 0 1 0 0

1 0 0 1 0 0 0 0 1 0 0 0

1 0 1 1 0 0 1 0 1 0 0 0

1 1 0 1 1 1 0 0 0 0 1 0

1 1 1 1 1 1 1 0 0 0 1 1

Assim a função F éABC + ABC.

28
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

5. Implemente a seguinte função usando um multiplexer: F = AB + AC

Resolução:
Este tipo de problemas resolve-se usando uma tabela de verdades da função:

A B C F

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

Agora, basta pensar que se a função depende de três variáveis, deve-se usar um
multiplexer de 3 bits de selecção para termos as oito combinações possíveis.
Devemos colocar como S0 a variável C pois esta é a de menor peso. A resolução
fica então na forma da figura seguinte:

29
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

1.11 - Exercícios Propostos

1. Explique o que é um circuito multiplexer e implemente à custa de um


multiplexer a função: F = A . B + A . C + B . C.

2. Explique o funcionamento de um demultiplexer e implemente através de


demultiplexers de 4 saídas um demultiplexer de 8 saídas.

3. Qual a utilidade de um descodificado! BCD-7 segmentos?

4. Construa, usando portas lógicas um circuito encoder de 2 entradas, que


dê prioridade às entradas de maior peso.

5. Desenhe um módulo comparador de dois números de 16 bits cada.

30
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

31
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2. - CIRCUITOS SEQUENCIAIS

2.1 - Introdução

Os circuitos analisados até aqui, eram circuitos cujas saídas dependiam das
entradas de uma forma linear e momentânea. Todas as variações nas entradas
provocavam instantaneamente variações nas saídas, não podendo as saídas
ficarem invariáveis às alterações das entradas. Uma saída para se tornar
independente das entradas, tem de ser definida de forma a manter o seu valor,
mesmo quando as variáveis de entrada se alterem. Deste tipo de circuitos,
podemos concluir que poderão memorizar o seu valor até ordens em contrário.
Deste pressuposto nascem os circuitos de memória mais simples (Flip - Flops) até
aos mais complicados (RAM. etc.).
Vou, neste capítulo, abordar os mais importantes circuitos sequenciais que de uma
forma ou de outra podem manter os seus valores de saída memorizados.
Para se poder manter um valor de saída memorizado, os circuitos são
implementados com realimentacão, ou seja, os valores das saídas de um circuito
sequencial não dependem só dependem só do valor das entradas, mas também
do valor das próprias saídas.

32
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.2 - Os Circuitos FLIP-FLOP

Este circuitos são as células de memória mais elementares. Têm capacidade de


armazenar um bit e por isso, diz-se que possuem dois estados: o estado 0 e o
estado 1.

2.2.1 - O FLIP-FLOP D LATCH

Um flip-flop D latch, está representado na figura abaixo. Tem duas entradas e duas
saídas (uma saída é negação da outra) e o seu princípio de funcionamento é o
seguinte:

Quando a entrada enable (E) está não activa, o flip-flop mantém o estado anterior,
ou seja a sua saída (Q) toma o valor 0 ou l, consoante ele estava no estado 0 ou
no estado 1.
Quando se activa a entrada enable, os valores que estão presentes na entrada D,
são colocados na saída Q.
Quando se desactiva o enable, o valor que está em D fica memorizado, até nova
activação de enable.

FLIP-FLOP D LATCH

Podemos construir um circuito deste género usando um multiplexer de duas


entradas como sugere a figura seguinte:

33
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Imagine que a entrada enable está a 1. O multiplexer coloca na sua saída o valor
da entrada de peso 1. Assim, enquanto enable = 1, o flip-flop estará transparente à
entrada D. Se D tomar o valor 1, Q tomará o valor 1 e se D tomar o valor 0, Q
ficará com o valor 0 pois o multiplexer selecciona a entrada de peso 1 para colocar
na saída.

Quando o enable ficar a 0 o valor que estava em Q fica guardado no flip-flop, pois
o valor de Q está ligado à entrada de peso 0 do multiplexer, e este coloca o valor
da sua entrada de peso 0 na saída Q. Assim dá-se o fenómeno de realimentacão
no flip-flop. Enquanto o enable for 0, o circuito assume e mantém o estado de D,
imediatamente antes do enable ficar a 0.

Vejamos agora uma tabela de verdades, que representa o funcionamento deste


flip-flop onde se representa o estado anterior por Q*.

D E Q* Q

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 0

34
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.2.2 - O FLIP-FLOP SET - RESET

Este tipo de flip-flop, é implementado segundo o esquema da figura seguinte:

O seu princípio de funcionamento é o seguinte:

Dispõe de duas entradas Set (S) e Reset (R) e as saídas Q e a negação de Q.

Se S = 1 e R = 0, o flip-flop toma o estado 1 (Set).


Se S = 0 e R = 1, o flip-flop toma o estado 0 (Reset) .
Se S = 0 e R = 0, o flip-flop fica a manter o estado anterior.
Se S = 1 e R = 1, o flip-flop fica num estado indefinido, pelo que se deve garantir
que nunca existe esta configuração nas entradas.

A seguinte tabela de verdades ilustra o funcionamento deste circuito:

S R Q

0 0 Q*

0 1 0

1 0 1

1 1 -

35
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Analisando o esquema da figura acima (implementação do flip-flop Set – Reset)


podemos confirmar o funcionamento deste circuito:

Se S = 1 e R = 0, a porta nand #2 ficará a 1, independentemente da sua outra


entrada. Assim, com S = 1, no nand #1, ambas as entradas estão a 1 e logo Q
ficará com 0, o que faz com que o flip-flop fique no estado 0.
Se S = 0 e R = 1, temos o nand #1 com uma entrada a 0, o que leva o flip-flop ao
estado 1, pois Q = 1. Uma das entradas do nand #2 fica a 1 também, e como a
outra entrada R = 1, o nand #2. ficará com 0 na sua saída.
Se S = 0 e R = 0, temos que analisar o estado anterior. Qualquer que seja o
estado anterior, ele será mantido, pois nas entradas dos nands temos o valor 0,
pelo que não vão alterar o estado do flip-flop.
Se S = 1 e R = 1, o estado do flip-flop será indefinido, depende do valor do estado
anterior.

Existe além deste flip-flop Set - Reset, outra versão que possui um bit para enable,
ou seja o flip-flop Set - Reset com Enable, representado na figura seguinte:

SET - RESET COM ENABLE

Este circuito funciona de uma forma igual ao anterior quando enable estiver activo,
e quando não estiver, pode-se ver que o circuito manterá o seu estado anterior,
pois temos as entradas S e R do flip-flop ambas a 0.

36
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.2.3 - O FLIP-FLOP D EDGE - TRIGGERED

O flip-flop D latch é uma máquina de dois estados assíncrona, pois não tem
nenhum sinal de sincronismo, e é sensível ao nível de tensão das suas entradas.
Existem, porém, máquinas de dois estados síncronas, que para além das
condições normais de mudança de estado, necessitam também para tal, de um
sinal de sincronismo. A figura seguinte mostra um exemplo de um sinal de
sincronismo:

Estes sinais são rectangulares ou quadrados e variam a sua amplitude ao longo


do tempo. Os valores de amplitude que podem tomar são 0 e 5 volt, sendo por
isso sinais digitais. Existem, então nestes sinais, dois tipos de transições abruptas:
as ascendentes, em que o sinal evolui em termos de tensão de 0 para 5 volt. e as
descendentes, em que o sinal varia de 5 para 0 volt.
É com base nas transições que se dá o sincronismo. Uma máquina síncrona, para
mudar de estado, necessita, para além das condições normais, de uma transição
ascendente (por exemplo), de um sinal de sincronismo.
Uma das máquinas deste tipo mais simples de analisar é o flip-flop D edge-
triggered, cujo esboço é mostrado em seguida:

FLIP-FLOP D EDGE - TRIGGERED

37
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Este flip-flop tem o seguinte princípio de funcionamento:


A entrada, de clock, (clk) é uma entrada onde se deve aplicar um sinal de
sincronismo, e, nas suas transições ascendentes o flip-flop fica transparente ao
valor da entrada D, e toma o estado 0 ou 1 consoante o valor da entrada D, 0 ou 1
respectivamente.
O flip-flop, tendo a entrada clk a 0 ou a 1 mantém o estado anteriormente gravado
aquando da transição ascendente da entrada clk.

Uma forma de representar o funcionamento de máquinas sequenciais é através do


diagrama de estados que é fácil de construir.
Para vermos como se pode construir um diagrama de estados, podemos desenhar
o diagrama de estados do flip-flop D edge - triggered. A figura seguinte mostra o
diagrama de estados do flip-flop D edge triggered, e necessita de uma explicação
prévia:
Os rectângulos, são os símbolos dos estados do flip-flop. Nestes são marcadas as
variáveis activas no respectivo estado.
Os losangos representam os testes às condições que lhes estão incluídas.
Deste modo, se o flip-flop está no estado 0, tem a saída Q desactiva, ou seja a
saída que é a negação de Q, estará activa. Este flip-flop, no estado 0 testa a
variável D, e só passa para o estado 1 se D for igual a 1. Enquanto isso não
acontece, o flip-flop manterá o estado 0. Quando D ficar a 1, o flip-flop passará
para o estado l, e aqui, faz um teste à variável D. Enquanto D for 1, ele manterá o
seu estado, e quando D for 0, ele passará ao estado 0. Note, por último, que
nestas mudanças de estado, a transição ascendente de clk, está implícita, quero
dizer, que este funcionamento ocorre só quando houver uma transição ascendente
de clk, e em caso contrário o flip-flop manterá sempre o estado anterior.

38
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Outra forma de se representar o funcionamento de uma máquina, neste caso do


flip-flop D edge- triggered, é desenhando o seu diagrama temporal, ou diagrama
de formas de onda, que representa, ao longo do tempo, as variações das saídas
em função das variações das entradas. Na figura 9. encontra-se o diagrama de
formas de onda deste flip-flop.

Quando há uma transição ascendente de clk. a saída Q assume o valor de D.


Enquanto isso não acontece, a entrada D pode variar o seu valor que a saída Q
não se altera.

39
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.2.4 - O FLIP-FLOP TIPO "T"

Este flip-flop é também uma máquina síncrona. Dispõe de uma entrada "T", da
saída Q e da sua negação.

FLIP-FLOP T

O princípio de funcionamento deste flip-flop é o seguinte:

Na transição ascendente de clk, ele analisa o valor da entrada T e toma o seguinte


comportamento:

Se T = 1 o flip-flop inverterá o seu estado anterior, se T = 0, ele manterá o seu


estado.

Na figura abaixo está representado o seu diagrama de estados.

40
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

O seu funcionamento também se pode verificar, analisando o seu diagrama de


formas de onda, como nos mostra a figura seguinte:

É possível construir um flip-flop tipo T, a partir de um flip-flop D edge - triggered.


Para se realizar esta operação, basta analisar os diagramas de estado de ambos e
concluir que:

Se os flip-flops estão no estado 0, a entrada D será igual à entrada T, pois ambas


têm o mesmo comportamento.
Se os flip-flops estiverem no estado 1. a entrada D é a negação da entrada T.

Assim, a entrada D é igual aTQ + T.Q ou seja T XOR Q.

41
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.2.5 - O FLIP-FLOP "J-K"

Este flip-flop, é também uma máquina síncrona, que dispões de duas entradas, J e
K, normais

FLIP-FLOP J-K

O seu princípio de funcionamento é o seguinte:

Na transição ascendente de clk, o flip-flop toma em consideração os valores de. J e K:

Se J = 0 e K = 0, ele manterá o seu estado anterior.


Se J = 1 e K = 0, o flip-flop irá para o estado 0.
Se J = 0 e K = 1, o flip-flop irá para o estado 1.
Se J = 1 e K = 1 o flip-flop inverterá o seu estado.

Vejamos agora a figura seguinte que mostra o diagrama de estados do flip-flop J-K.

42
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Também é vantajoso analisar o diagrama de formas de onda deste circuito, o qual


é apresentado na figura seguinte:

A construção de um flip-flop J-K a partir de um flip-flop D Edge Triggered também


é fácil de fazer. Coloquemos então lado a lado os diagramas de estado de ambos
e podemos concluir que se estiverem no estado 0 a entrada D é igual à entrada J
do J-K e se estiverem no estado 1 a entrada D é a entrada K do J-K.

Assim, D = J .Q + K . Q como se mostra em seguida:

1 - Porta lógica OR.


2 e 3 - Porta lógica AND.

2.2.8 - Algumas notas sobre FLIP-FLOPS

Os circuitos flip-flop existentes no mercado, além das entradas e saídas que aqui
se descreveram têm também duas entradas especiais que dão muito jeito nas
montagens com estes circuitos. Essas entradas são a de preset e clear.
A entrada de clear, quando activa, leva o flip-flop ao estado 0 e a entrada preset
leva o flip-flop ao estado 1 independentemente dos valores das outras entradas.

43
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.3 - Registos

Um registo é um circuito que consegue armazenar vários bits de memória. O caso


mais comum são registos que armazenam 8 bits em simultâneo ou seja têm
capacidade de armazenar (memorizar) um byte.

Existem dois tipos de registos: os que são construídos com flip-flops D latch e os
que são construídos com flip-flops D Edge - Triggered.

Em relação aos dois tipos de registo, a única diferença entre eles tem a ver com
as suas sensibilidades no registo dos dados. Para se registar um byte num registo
latch, deve-se colocar nos seus bits de entrada D0..D7 o byte a registar e activar o
seu enable que faz com que todos os flip-flops registem cada um o seu bit. Note
que enquanto o enable estiver activo, o registo guardará os valores colocados nas
suas entradas.
No registo edge - triggered o byte é armazenado só nas transições ascendentes
do sinal clk, pois assim cada flip-flop guardará o bit correspondente.

REGISTO LATCH

44
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

REGISTO EDGE TRIGGERED

Por razões de segurança e de um possíveis concatenações de vários registos,


usam-se portas tri-state na concepção destes registos.
Uma porta tri-state tem, tal como o nome indica, três estados. Se OC se activar,
(neste caso com 0), a porta funciona como identidade, ou seja, é um fio condutor
que coloca na sua saída o valor que tem na entrada seja ele 0 ou 1. Se OC estiver
desactivo (neste caso a 1), a porta assume um terceiro estado de alta-impedância.
Este estado evita eventuais curtos-circuitos nas saídas dos registos possibilitando
assim a interligação de vários para aumentar capacidades de memória.

Posto isto, o registo guarda os dados como foi explicado atrás,


mas ao guardá-los não os coloca disponíveis nas suas saídas.
Até que se active o OC do registo que activará todos os OC as
saídas das portas permanecerão em alta- impedância. Quando
se activar OC, então sim, os dados memorizados serão
disponibilizados para consulta. Num circuito com vários registos
ligados em paralelo, só se deve activar o OC de um registo de
cada vez sob o risco de provocar curtos-circuitos nas linhas de dados.

Alguns circuitos registos existentes no mercado são apresentados em anexo no


fim deste capítulo.

45
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.4 - Circuitos Contadores

Um circuito contador é um circuito capaz de gerar as combinações binárias desde


0 até ao maior valor binário que se pode representar com o número de bits de
saída que possui.
Um contador gera essas combinações em modo sequencial e de um modo
crescente ou decrescente. Como exemplo, um contador de 4 bits, gera os
números binários (0,1,2,..,15 - 0,1,15) em modo crescente e os valores binários
(15,14,13,...0 - 15,14,..,0) em modo decrescente. Para se poder controlar o ritmo
de contagem, o contador tem uma ou duas entradas de natureza edge - triggered
e fazem o contador evoluir de estado, ou seja, por cada transição ascendente de
uma dessas entradas, o contador coloca nas suas saídas o valor binário seguinte
ao anterior.
Para se entender o funcionamento e a constituição de um circuito contador,
analisemos a versão mais simples, ou seja o caso da figura seguinte:

Contadores de 4 Bits

Este simples contador funciona baseado em flip - flops tipo T ligados da forma
apresentada abaixo e gera as combinações de 0 a 15, pois tem 4 bits.

46
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

A tabela seguinte mostra os 16 primeiros números binários que serão gerados pelo
contador:

Qd Qc Qb Qa

0 0 0 0

0 0 0 1

0 0 1 0

0 0 1 1

0 1 0 0

0 1 0 1

0 1 1 0

0 1 1 1

1 0 0 0

1 0 0 1

1 0 1 0

1 0 1 1

1 1 0 0

1 1 0 1

1 1 1 0

1 1 1 1

47
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

As combinações binárias seguem uma fórmula quando se pensa em passar uma a


uma em sequência, senão vejamos:

O bit de menor peso (QA) inverte de estado de combinação em combinação.


O bit de peso 1 (QB) inverte o seu estado, sempre que há uma transição
descendente no bit de peso inferior (QA).
O bit de peso 2 (QC) inverte o seu estado quando o bit de peso anterior (QB)
produz uma transição descendente, e assim sucessivamente.
Com a ajuda de flip-flops tipo T, podemos construir o circuito da figura acima que é
um contador de 4 bits.
Existe, neste circuito, um sinal de clear que coloca todos os flip-flops a 0, ou seja,
faz com que o contador fique no estado 0.
À medida que as transições ascendentes de clkup ocorrem, o 1° flip-flop inverte o
seu estado, pois tem a sua entrada ligada a 1, T = 1. Tendo todos os flip-flops a
sua entrada T = 1, eles inverterão o seu estado quando lhes ocorrer uma transição
ascendente de clk. Isso acontece quando o estado do flip-flop anterior vier de 1
para 0, ou seja quando a saída negada do flip-flop anterior for de 0 para 1, dando
ordem, assim, ao flip-flop em causa para inverter o seu estado. Penso que agora
será fácil concluir que assim o conjunto dos quatro flip-flops efectuam a operação
de contagem desejada.

Das versões que existem no mercado, apresenta-se no final do capítulo em anexo,


um contador 74193, que possui mais entradas e saídas que passarei agora a
descrever:

As saídas QA, QB, QC e QD, são os 4 bits de saída. As entradas UP e DN, são as
entradas onde se devem aplicar os sinais de natureza edge - triggered para o
contador fazer a contagem em modo crescente (UP) ou decrescente (DM). Note
que não se devem aplicar sinais deste tipo nas duas entradas simultaneamente.
A entrada CLR (clear). quando activa coloca o contador no estado 0.
Pode-se, neste circuito começar a contagem em qualquer valor, usando para isso
as entradas A, B, C e D e a entrada Load. Assim, se quisermos que o contador
fique num determinado estado, colocamos nestas entradas o valor do estado que
queremos, e activamos o sinal Load que colocará o contador nesse estado.
Desactivando o Load e começando a dar pulsos em UP ou DN, o contador
começará a sua contagem partindo do estado em que o colocámos.
As saídas Bo e Co, são saídas usadas na concatenação destes circuitos
contadores, para se poderem construir módulos de contagem maiores. A saída Co
em modo crescente dará um pulso quando o contador passa do estado 15 para o
estado 0, e a saída Bo, em modo decrescente dará um pulso quando o contador
passar do estado 15 para o estado 0.

48
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

A figura seguinte dá um exemplo da concatenação de dois contadores de 4 bits,


realizando um módulo de contagem a 8 bits.

Colocando ambos os contadores no estado 0, em modo crescente, quando o


contador #1 passar o seu estado 15 para o seu estado 0, o contador #2 passará
do seu estado 0 para o seu estado 1, para que o conjunto fique no estado 16. Em
modo decrescente, passa-se o mesmo, mas agora o sinal Bo do contador #1
pulsará quando este passar do estado 15 para o estado 0 dando um impulso para
que o contador #2 seja decrementado.

49
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.5 - Circuitos SHIFT - REGISTER

Um circuito Shif - Register é um circuito que tem normalmente uma entrada por
onde entram bits. Na entrada colocamos bits que à medida que o sinal de
sincronismo pulsa, estes vão delizando nos flip-flops internos do shift - register até
chegarem ao flip-flop de maior peso, ou seja a saída final do shift - register.

Se se considerar que o circuito está no estado 0, ou seja. todos os flip-flops estão


no estado 0, analisemos a sequência de acontecimentos se colocarmos o valor 1
em “serial in” ao longo das sucessivas transições ascendentes de “clk”.

Na primeira transição, o primeiro flip-flop fica no estado l, pois a sua entrada D


tinha o valor 1 na transição, e os outros flip-flops, manterão o estado 0. Na
segunda transição, primeiro flip-flop fica no estado 1 (e assim ficará sempre, pois a
sua entrada tem o valor 1), e o segundo também, pois QA tinha o valor l, ficando
os restantes ainda no estado 0. Na terceira transição, o terceiro flip-flop fica
também no estado l, pois QB estava no estado 1, e o último flip-flop fica ainda no
estado 0. Por último, na quarta transição, o último flip-flop fica também no estado l,
o primeiro bit a 1 que tinha entrado em seriai in chegou a “serial out”.
A ligeira diferença em tempo, entre a transição de clk e a mudança eventual de
estado de um flip-flop (tempo de trânsito da ordem de grandeza de ns), garante
que qualquer flip-flop tomará, aquando da transição ascendente de clk, o estado
anterior do flip-flop que se encontra à sua esquerda. De notar também que se se
usassem flip-flops latch, no momento em que ocorresse a primeira transição em
clk, todas as células passariam ao estado 1.

50
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.6 - Circuitos RAM

Antes de descrever o funcionamento e constituição de um circuito RAM, convém


descrever o conceito de barramento:
Um barramento, é um conjunto de bits todos com o mesmo objectivo. Existem três
tipos de barramentos essenciais nos sistemas digitais: o barramento de dados, o
barramento de endereços e o barramento de controle.
O barramento de dados, é um conjunto de n bits que tem como objectivo ter
sempre presente os valores de dados para que as entidades de um sistema lhes
possam aceder.
O barramento de endereços, é também um conjunto de n bits, que tem presente
os valores da palavra de endereços para que os componentes de um sistema lhe
tenha acesso.
Por último, um barramento de controle é o conjunto de sinais de controle para que
os componentes de um sistema possam ser controlados a partir desse
barramento.
Uma RAM tem, como componente de um sistema digital, esses três barramentos.
O barramento de dados, bidireccional, tem como objectivo, fixar os valores de
dados a escrever na RAM, ou a poder colher (ler) os valores guardados em RAM.
O barramento de endereços de uma RAM, tem como objectivo que outros
componentes (CPU, DMA) possam fixar em qual endereço de RAM é que
pretendem aceder, tanto para escrita de dados, tanto para leitura. Este barramento
é uni - direccional, e a RAM é o seu destino. Por último, a RAM dispõe de entradas
de controle, sinais de Read, Write e Chip - Select, que servem para controlar os
acessos a ela, sendo por isso a RAM o destino destes sinais.
A RAM é um conjunto de registos onde se guardam (escrevem) ou de onde se
lêem valores. Para se poder escolher em qual dos registos é que se faz a
operação de escrita ou leitura, a RAM terá um
barramento de endereços. Os bytes escritos ou
lidos, fluem pelo barramento de dados. Sendo
assim, sobre uma RAM, podem-se escrever
valores ou ler valores. Nunca se poderá efectuar
estas duas acções simultaneamente, e a leitura
ou escrita terá de ser efectuada em um só registo
(endereço) de cada vez. A figura seguinte
apresenta um esboço de um circuito RAM.
As designação para uma RAM tem a ver com o
número de registos que contém e quantos bits
tem cada registo. Assim uma RAM de 16*8 é
uma RAM de 16 registos de oito bits cada, ou
seja é uma RAM de 16 bytes.
Y+1
RAM 2 X N

51
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Como se pode verificar, na figura anterior, o barramento de dados tem duas


direcções, pois tanto na escrita de valores na RAM, como na leitura de valores da
RAM, esses dados fluem no mesmo barramento D0..N. Particularizando para o
caso de RAMs de registos de 8 bits, o seu barramento de dados terá D0..D7. O
número de registos da RAM é dado pela quantidade dos bits de endereço. Se a
RAM tiver 16y registos, ela terá um barramento de endereços de 4 bits, A0..A3.
O sinal Chip - Select (CS), coloca a RAM em funcionamento se estiver activo, e
coloca-lhe o barramento de dados em alta-impedância se não estiver activo (tira-a
de serviço).

Para se efectuar uma operação de escrita numa RAM, devem-se seguir as


seguintes operações e pela mesma ordem:

1. Activar o sinal CS.


2. Estabelecer o valor do barramento de endereços.
3. Estabelecer o valor dos dados a escrever.
4. Activar só o sinal de Write (WR) e durante o tempo necessário que
segundo o fabricante e preciso para que a RAM grave o valor de dados no
registo correspondente ao valor do endereço.

Para se efectuar uma operação de leitura numa RAM devem-se seguir e pela
mesma ordem as seguintes operações:

1. Activar o sinal CS.


2. Estabelecer o valor do barramento de endereços.
3. Activar só o sinal de Read (RD) e esperar o tempo necessário que
segundo o fabricante é precise para que a RAM exponha o valor guardado
no registo indicado pelo valor do barramento de endereços.
4. Usar o valor lido.

52
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Em seguida apresenta-se o esboço da estrutura interna de uma RAM:

Como se pode verificar na figura, ao se aplicar um endereço nas entradas do


decoder, ele activará a saída correspondente e desactivará todas as outras,
deixando por isso os registos não seleccionados fora de serviço. O registo que
ficará em serviço, poderá ser então usado para nele escrever dados, ou para dele
se recolherem dados, activando o sinal de WR ou de RD, respectivamente.
Note-se que o sinal CS inibe ou não o funcionamento do decoder, colocando
assim, por isso, a RAM em funcionamento ou não.
Note-se, por último, que se se tentar activar o sinal de RD e WR simultaneamente,
temos no barramento de dados um valor a escrever, e o registo seleccionado
colocará no barramento o valor que tem gravado, gerando assim conflitos no
barramento, que poderão provocar curto-circuito s e danificar a RAM.

53
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.7 - Um pouco de Electrónica

Quando, em montagens práticas, ligamos a alimentação a um circuito com


máquinas sequenciais, em qual dos seus estados é que essas máquinas ficam? A
resposta não se pode achar com facilidade, e na prática, não se pode prever. Há
então necessidade de garantir que os circuitos fiquem no seu estado inicial após
ligarmos a alimentação a um circuito. No caso de um flip-flop, se quisermos que
ele "acorde" no estado 0 ou l, constrói - se uma malha RC e ligamo-la ao seu clear
ou preset respectivamente. Há que ter em consideração se essas entradas são de
natureza active-high ou active-low. Em seguida apresenta-se uma malha RC para
cada caso.

No caso da entrada active-low, quando


se alimenta o circuito, o condensador
está descarregado, e portanto, é um
circuito fechado, fazendo activar a
entrada, pois ela activa-se com 0.
Após algum tempo o condensador
carrega-se e fica em aberto fazendo
com que na entrada fique 5 Volt
através da resistência colocando o
valor lógico 1 na entrada deixando de
fazer com que o circuito se mantenha
no estado desejado.

No caso da entrada active-high, o


condensador descarregado impõe a
tensão Vcc, valor lógico 1 na entrada
activando-a e depois de estar
carregado, é a resistência que coloca
na entrada o valor 0, podendo agora o
circuito funcionar normalmente.

54
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.8 - Alguns Circuitos Sequenciais do Mercado

Apresentam-se agora esboços de alguns circuitos sequenciais existentes no


mercado:

Contador Binário 74193

Registo Latch 74373

Registo Edge - Triggered 74374

Registo Shift - Register 74195

Flip-flop D Edge - Triggered 7474

55
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.9 - Exercícios Resolvidos

1. Projecte, usando um flip-flop J-K, um circuito flip-flop que responda aos


seguintes requisitos:

 Tem duas entradas, Z e W.


 Estando no estado 0, só Z.W o levará ao estado 1.
 Estando no estado 1, só Z + W o levará ao estado 0.

Resolução:

Desenhe os diagramas de estado do flip-flop J-K e deste novo flip-flop, e


conclua o seguinte:

J = Z . W e K = Z + W.

Então podemos desenhar o seguinte circuito:

56
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2. Projecte, usando um flip-flop Set - Reset. um circuito que fique no estado 0


após ser alimentado. Depois, ele deve ficar no estado 1 quando a sua
entrada A ficar o estado l, e, não deve sair desse estado até que a sua
entrada B seja activada.

Resolução:

O esquema que se encontra a seguir . demonstra bem que estando o Reset


do flip-flop sempre a zero, este, só pode tomar o valor 1 caso o Set venha a
1, ou só pode manter o estado anterior, caso o Set fique a 0. Assim se o Set
for a variável A, quando esta vier a 1, coloca o flip-flop no estado 1, e,
mesmo que venha a 0, o circuito manterá o estado anterior que era 1. Só
com a activação de B (Clear), é que o flip-flop voltará ao estado 0.

57
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

3. Usando registos de 8 bits, projecte uma RAM de 2*8

Resolução:

Uma RAM de 2 * 8 terá 2 registos de 8 bits. Temos um barramento de dados


de 8 bits, um barramento de endereços de 1 bit (A0) e um barramento de
controle com Read, Write e Chip - Select.
O barramento de endereços tem 1 bit porque com 1 bit podemos escolher
entre os dois registos para as operações de escrita ou leitura.

58
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

4. Usando um contador 74193, projecte um circuito sequenciador de 8 leds.

Resolução:

O contador tem um impulso no CLK UP para ir contando de 0 a 15. É óbvio


que aproveitando os 3 bits de menor peso (Qa, Qb e Qc), temos contagens
de 0 a 7.
Aplicando estes valores ao decoder 74138, este activa a saída
correspondente à palavra de entrada colocada pelo contador, ou seja, activa
em sequência as saídas de Y1 a Y7.

Considerações:

A resistência que liga a G1 do decoder coloca um 1 lógico nesta entrada para o


decoder funcionar. As entradas G2A e G2B de natureza active- low têm-se de ligar
a 0 para que o decoder funcione.
No contador 74193, temos de ligar o CLR à massa para colocar esta entrada a 0
senão o contador não conta. A entrada CLK UP liga o gerador de impulsos para se
dar a contagem. O sinal de Load serve para carregar o valor das entradas para as
saídas do contador. Como não se pretende fazer isso, colocamos um 1 através da
resistência para não activar esta entrada. Por último devemos colocar a entrada
CLK DN a 1 para que esta não faça contagens decrescentes no 74193.

59
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

5. Diga qual a diferença entre uma entrada de sensibilidade latch e outra


com sensibilidade edge - triggered.

Resolução:

Uma entrada latch é sensível ao nível de tensão colocado nessa entrada, ou


seja ao nível lógico 1 ou 0.
Uma entrada edge - triggered é uma entrada sensível a transições
ascendentes ou descendentes no nível de tensão ou lógico.

6. Para que servem as entradas de Preset ou Clear dos circuitos


sequenciais?

Resolução:

Servem para levar os circuitos ao estado 0 ou 1 consoante se active Clear


ou Preset respectivamente.

60
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

2.10 - Exercícios Propostos

1. Desenhe, usando um 74193, um circuito que gere as seguintes contagens


ao ritmo de um sinal externo CLK:

0,1,2,3,4,5,6,7,...,15,14,13,12,11,...,0

2. Desenhe uma RAM de 8*8.

3. Desenhe, a partir de um flip-flop tipo “T”, um flip-flop D edge - triggered.

4. Construa um circuito shift - register de 8 bits usando um registo 74374.

61
ELECTRÓNICA DIGITAL
Circuitos Combinatórios e Circuitos Sequenciais

Bibliografia:

SEIA, Mário Araújo; RODRIGUES, Victor Pimenta, “123 Projecto de Sistemas Digitais”, Editora
Presença.

62

Você também pode gostar