Ccs

Published on January 2017 | Categories: Documents | Downloads: 60 | Comments: 0 | Views: 739
of 61
Download PDF   Embed   Report

Comments

Content

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

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.

5

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.

6

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 0 0 1 1 0 0 1 1

S1 0 0 0 0 1 1 1 1

“0” 0 1 -

“1” 0 1 -

“2” 0 1 -

“3” 0 1

S 0 1 0 1 0 1 0 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. 7

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.

8

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 0 F=A.B 0 1 1

B 0 1 0 1

A.B 0 0 0 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.

9

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 0 0 1 1 0 0 1 1

S1 0 0 0 0 1 1 1 1

E 0 1 0 1 0 1 0 1

“0” 0 1 0 0 0 0 0 0

“1” 0 0 0 1 0 0 0 0

“2” 0 0 0 0 0 1 0 0

“3” 0 0 0 0 0 0 0 1

10

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.

11

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:

12

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 23 = 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 (24 = 16). Neste caso a poupança ainda era maior.

13

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 0 1 0 1

A1 0 0 1 1

“0” 1 0 0 0

“1” 0 1 1 1

“2” 0 0 1 0

“3” 0 0 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.

14

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 Prioridade

3 –

2

1 +

0

15

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” 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

“1” 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

“2” 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

“3” 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

A0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 0 0

A1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0

GS 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

16

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.

17

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.

18

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 colocamlhes 0.

19

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 0 0 0 0 0 0 0 0 0 1 20 A2 0 0 0 0 1 1 1 1 0 0 A1 0 0 1 1 0 0 1 1 0 0 A0 0 1 0 1 0 1 0 1 0 1 a 0 1 0 0 1 0 0 0 0 0 b 0 0 0 0 0 1 1 0 0 0 c 0 0 1 0 0 0 0 0 0 0 d 0 1 0 0 1 0 0 0 0 0 e 0 1 0 1 1 1 0 1 0 1 f 0 1 1 1 0 0 0 1 0 0 g 1 1 0 0 0 0 0 1 0 0

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".

21

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 “activelow” que coloca o decoder em funcionamento quando está a zero (activa).

22

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.

23

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.

24

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.

25

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.

26

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 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

A0 0 0 0 0 1 1 1 1

A1 0 0 1 1 0 0 1 1

S0 0 0 1 1 0 0 1 1

S1 0 1 0 1 0 1 0 1

“0” 1 1 0 0 0 0 0 0

“1” 0 0 0 0 1 1 0 0

“2” 0 0 1 1 0 0 0 0

“3” 0 0 0 0 0 0 1 1

F 1 0 0 0 0 0 0 1

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

27

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 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

F 0 0 0 0 0 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:

28

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.

29

ELECTRÓNICA DIGITAL Circuitos Combinatórios e Circuitos Sequenciais

30

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.

31

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:

32

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 flipflop onde se representa o estado anterior por Q*.

D 0 0 0 0 1 1 1 1

E 0 0 1 1 0 0 1 1

Q* 0 1 0 1 0 1 0 1

Q 0 0 0 0 0 1 1 0

33

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 0 0 1 1 R 0 1 0 1 Q Q* 0 1 -

34

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.

35

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 edgetriggered, cujo esboço é mostrado em seguida:

FLIP-FLOP D EDGE - TRIGGERED

36

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.

37

ELECTRÓNICA DIGITAL Circuitos Combinatórios e Circuitos Sequenciais

Outra forma de se representar o funcionamento de uma máquina, neste caso do flipflop 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.

38

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.

39

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.

40

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.

41

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.

42

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

43

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. 44

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.

45

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 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

Qc 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

Qb 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

Qa 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

46

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.

47

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.

48

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.

49

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

50

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. 2. 3. 4. Activar o sinal CS. Estabelecer o valor do barramento de endereços. Estabelecer o valor dos dados a escrever. 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. 2. 3. Activar o sinal CS. Estabelecer o valor do barramento de endereços. 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.

51

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.

52

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 carregase 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.

53

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

54

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:

55

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.

56

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.

57

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.

58

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.

59

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.

60

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.

61

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close