Circuitos Digitais

Post on 07-Jun-2015

1.531 views 3 download

Transcript of Circuitos Digitais

Multiplexadores• Um multiplexador é um circuito com muitas entradas e apenas uma saída.

Aplicando sinais de controle, pode-se dirigir qualquer uma das entradas para a saída.

• Um multiplexador pode ser construído usando portas lógicas NOT, AND e OR. A figura 1.1 ilustra o projeto de um multiplexador 2x1 usando essas portas e a figura 1.2 mostra a representação simplificada do multiplexador da figura 1.1:

Árvores de Multiplexadores

• Usando o conceito de árvore de multiplexadores, pode-se fazer um multiplexador 4x1 usando três multiplexadores 2x1, como está ilustrado na figura 1.3.

Aplicações dos Multiplexadores

• Como seletor de dados: um multiplexador, como já foi dito, é um circuito digital com várias entradas e apenas uma saída. Pode-se através dos bits de endereço, selecionar para a saída, dados provenientes de qualquer uma das entradas.

• Como implementador de funções lógicas: o multiplexador também é chamado de circuito lógico universal. A denominação de circuito lógico universal deve-se ao fato de que ele pode ser usado como uma solução de projeto para qualquer tabela verdade, desde que o número de variáveis seja igual ao número de entradas de seleção.

Exemplo do Multiplexador como Circuito Lógico Universal

• Por exemplo, considerando a seguinte tabela verdade:

A B Saída

0 0 0

0 1 1

1 0 1

1 1 0

• É evidente que esta é a tabela verdade de uma porta "XOR". Para implementar esta porta lógica usando um multiplexador 4x1, um pino de dado de entrada será aterrado quando a saída correspondente for baixa na tabela e um pino de dado de entrada é ligado a uma tensão alta se a saída correspondente for alta na tabela verdade.

Demultiplexadores• Um demultiplexador é um circuito lógico com uma entrada e várias saídas.

Aplicando sinais de controle pode-se encaminhar o sinal de entrada para uma das linhas de saída.

• Um demultiplexador pode ser projetado usando-se portas lógicas AND e NOT. A figura 1.5 ilustra o projeto de um demultiplexador 1x2 usando essas portas lógicas.

Árvores de Demultiplexadores

• Usando o conceito de árvore de demultiplexadores pode-se, por exemplo,

construir um demultiplexador 1x4 usando 3 DEMUX 1x2 da seguinte maneira:

Aplicações dos Demultiplexadores

• Como seletor de canais: um dado de entrada é dirigido a um canal de saída, o que é a operação inversa à do multiplexador quando ele é usado como seletor de dados.

• Como decodificador: as entradas de endereço funcionam como o dado binário codificado.

Flip-Flops

• O flip-flop é um dispositivo que possui dois estados estáveis. Para o flip-flop assumir um destes estados, é necessário que haja uma combinação das variáveis de entrada e de um pulso de clock. Após este pulso, o flip-flop permanecerá nesse estado até a chegada de um novo pulso de clock, aí então, de acordo com as variáveis de entrada, permanecerá ou mudará de estado.

• Basicamente, podemos representar o flip-flop como um bloco onde temos duas saídas: Q e Q’, entradas para as variáveis e uma entrada de clock. A saída Q será a principal do bloco.

• Os dois estados possíveis mencionados são:

• Q = 0 e Q’ = 1

• Q = 1 e Q’ = 0

Tipos de Flip-Flop

• Flip-Flop SR– Flip-Flop SR comandado por pulso de clock

• Flip-Flop tipo D

• Flip-Flop tipo T

• Flip-Flop JK– Flip-Flop JK com entradas de PRESET e CLEAR– Flip-Flop JK Mestre-Escravo

Flip-Flop SRS R Qn Qn+1

0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 1

S R Qn+1

0 0 Qn

0 1 01 0 11 1 Não permitido

Flip-Flop SR comandado por pulso de Clock

Flip-Flop tipo D

• Um flip-flop tipo D não passa de um flip-flop SR com as entradas S e R sendo ligadas através de um inversor, de acordo com a figura abaixo.

D Qn+10 01 1

Flip-Flop tipo T• Um flip-flop tipo T não passa de um flip-flop

SR com as entradas S e R curto-circuitadas, de acordo com a figura abaixo.

T Qn+10 Qn

1 Qn’

Flip-Flop JKJ K Qn+1

0 0 Qn

0 1 0

1 0 1

1 1 Qn'

Flip-Flop JK com Entradas PRESET e CLEAR

CLEAR PRESET Qn+1

0 0 Não permitido

0 1 0

1 0 1

1 1 Funcionamentonormal

Flip-Flop JK Mestre Escravo

Registradores de Deslocamento (Shift Registers)

• Registradores de deslocamento possuem entrada serial e saída paralela ou serial. São construídos com certo número de flip-flops tipo D, SR ou JK mestre-escravo, ligados de modo que as saídas de cada bloco alimentem as entradas S e R do flip-flop seguinte, sendo que o primeiro deles terá as suas entradas S e R ligadas da mesma maneira que em um flip-flop tipo D.

Conversor Série-Paralelo

Chamamos de informação em paralelo a uma informação na qual todos os bits se apresentam simultaneamente. Uma informação paralela necessita de tantos fios quantos forem os bits contidos nela.

Por outro lado, informação em série é aquela que utiliza apenas um fio, sendo que os bits de informação vêem seqüencialmente, um após o outro.

Um registrador de deslocamento pode ser utilizado para converter uma informação em série para uma informação em paralelo, ou seja, funcionar como um conversor série-paralelo. O circuito da figura 3.1 consiste na configuração básica de um conversor série-paralelo de 4 bits. Para o funcionamento adequado do registrador de deslocamento como conversor série-paralelo, basta colocar a informação serial na entrada e após alguns pulsos de clock (tantos quantos forem o número de bits do conversor – no caso da figura 3.1, 3 pulsos de clock), ler a informação na forma paralela nas saídas Q3 a Q0.

Conversor Paralelo-Série• Para entrarmos com uma informação em paralelo, necessitamos de um

registrador que utilize flip-flops com entradas Preset e Clear, pois é através destas que fazemos com que o registrador armazene a informação em paralelo. A figura 3.3 ilustra este tipo de registrador.

Registrador de Entrada e Saída Série• Podemos utilizar um registrador de deslocamento da figura abaixo, que

apresenta entrada da informação em série e simplesmente realizarmos a leitura da informação, também na forma serial, na saída Q0. Notamos que nessa aplicação, após a entrada da informação, se inibirmos a entrada de clock, esta informação permanecerá armazenada no registrador até que haja uma nova entrada. Assim sendo, é fácil perceber que o registrador funcionou como uma memória.

Registrador de Entrada e Saída Paralelo

Registrador de Deslocamento Utilizado como Multiplicador ou Divisor por 2

•Se analisarmos um número binário qualquer, por exemplo: A = 10102 = 1010

•Se o armazenarmos este número em um registrador de deslocamento e ele for deslocada uma casa para a direita, colocando 0 na entrada, teremos a seguinte situação: B=01012 = 510

•Ou seja, como podemos verificar, o número A foi dividido por 2. Em outras palavras, em números binários, um deslocamento para a direita significa uma divisão por 2. Esta operação também é conhecida como Shift Right.

•Também existem registradores que podem executar deslocamentos para a esquerda. De modo análogo, se considerarmos um número C = 00012 = 110, veremos que ao deslocarmos ele de uma casa para a esquerda colocando 0 na entrada, teremos o seguinte:D = 00102 = 210

•Ou seja, ao deslocarmos um número binário para a esquerda ele é multiplicado por 2. Esta operação também é conhecida como Shift Left.

Contadores

• Contadores são circuitos digitais que variam os seus estados, sob o comando de um clock, de acordo com um seqüência pré-determinada.

• São utilizados principalmente para contagens, geradores de palavras , divisores de freqüência e tempo, geradores de formas de onda, conversão de analógico para digital, seqüenciamento de operações de máquinas, etc.

Contadores Assíncronos e Contadores Síncronos

• Os contadores assíncronos são caracterizados por não terem entradas de clock comuns. Essa se faz apenas no primeiro flip-flop e as outras entradas de clock dos demais flip-flops serão funções das saídas dos flip-flops anteriores.

• Os contadores síncronos são contadores cujos flip-flops que o compõe compartilham o mesmo sinal de clock, ou seja todos os flip-flops recebem o mesmo pulso de clock, ao mesmo tempo.

• Para que ocorram mudanças de estado, devemos então estudar o comportamento das entradas J e K dos vários flip-flops para que se tenha nas saídas a seqüência desejada.

• Para estudar contadores síncronos, deve-se sempre escrever a tabela verdade e analisar quais devem ser os valores das entradas J e K dos vários flip-flops para que suas saídas assumam o estado seguinte dentro da seqüência.

Contador BCD 8421

• Um contador gerador da seqüência do código BCD 8421 pode ser síncrono ou assíncrono. A figura 4.1 mostra um contador BCD 8421 assíncrono, cujo projeto é bem mais simples do que no caso do contador síncrono.

Contador de Década• Um contador de década é um circuito que efetua a contagem, em números

binários, de zero a nove (10 algarismos), o que é o mesmo que seguir a seqüência do código BCD 8421 de 0000 até 1001.

• Os contadores de década podem ser síncronos ou assíncronos. Para se construir um contador de década síncrono, utiliza-se um contador de pulsos, somente com a diferença que neste caso é necessário o uso de flip-flops com entradas "Clear".

• Para que o contador execute a contagem somente de 0 a 9 (0000 a 1001), quando ocorrer nos terminais de saída o estado 10102 = 1010 deve-se colocar um pulso zero na entrada Clear e assim o contador reiniciará a contagem logo após o décimo pulso.

• Após o décimo pulso de clock o contador "tende" a assumir o estado de saída 1010, porém neste instante a entrada "Clear" vai para 0, zerando o contador, que reiniciará a contagem.

Contador de Década

Pulsos de entrada Q3 Q2 Q1 Q0 Clear

1 0 0 0 0 12 0 0 0 1 13 0 0 1 0 14 0 0 1 1 15 0 1 0 0 16 0 1 0 1 17 0 1 1 0 18 1 1 1 1 19 1 0 0 0 110 1 0 0 1 1

11 1 0 1 0 012 0 0 0 0 1: : : : : :: : : : : :

Contador em Anel• Contadores em anel são contadores cíclicos que funcionam da

seguinte forma: inicializa-se o contador introduzindo nele um bit igual a "1" e os demais iguais a "0". A medida que os pulsos de clock vão chegando ao contador, o "1" vai sendo ciclicamente deslocado.

• O projeto de um contador em anel pode ser feito usando-se um registrador de deslocamento e um circuito de inicialização. Esse circuito deve, a princípio zerar o registrador de deslocamento e em seguida introduzir o bit igual a "1". A partir daí, a cada pulso de clock recebido o "1" deve ser deslocado ciclicamente ao longo de registrador.

Contadores Crescentes e Decrescentes

• Os contadores podem ser classificados pelo tipo de contagem que executam, ou seja, se executam contagem crescente ou decrescente.

• Os contadores da figura 4.1 e 4.2 são contadores crescentes. As figuras 4.3 e 4.4 ilustram duas maneiras de se projetar contadores decrescentes.

• É importante salientar que os contadores síncronos também podem ser crescentes ou decrescentes, e podem ser projetados usando a mesma metodologia, diferindo apenas na tabela verdade.

Contadores Crescentes e Decrescentes

Memórias

• Memórias são dispositivos que armazenam informações. A partir de agora trataremos das memórias que armazenam informações codificadas, digitalmente, através de um código binário qualquer. Essas informações podem ser números, letras, caracteres quaisquer, comandos de operações, endereços ou ainda qualquer outro tipo de dado.

• As memórias encontram seu emprego no campo da informática, sendo utilizadas principalmente em computadores e periféricos. Armazenam dados para endereçamento e programação.

Classificação das Memórias• Antes de estudarmos os diversos tipos de memórias,

vamos conhecer sua classificação. Podemos classificar as memórias em vários itens diferentes. A seguir, vamos relacionar os principais:– Acesso;

• Seqüencial

• Aleatório

– Volatilidade;

– Escrita/leitura ou apenas leitura;

– Tipo de armazenamento;• Dinâmico

• Estático

Tipos de Memórias

• RAM

• ROM

• PROM

• EPROM

• EEPROM

Memória RAM

• Essas memórias, como já visto, apresentam as seguintes características principais: acesso aleatório e permitem a escrita e leitura de dados.

• O flip-flop é um bloco lógico que permite o armazenamento de uma informação de 1 bit. Nas memórias RAM, o flip-flop é utilizado como elemento básico de memória.

Memórias RAM de N Posiçõesn variáveis de endereçamento => 2n = N, posições de memória.

Logo, n = log2N.

Por exemplo: para N = 4 (4 posições de memória), temos:

n = log24 => n = 2.

Memória RAM em Diagrama de Blocos e Endereçamento Linear

Entradas de Endereços

Saída de LeituraControle de E/L

Entradas de Dados

END

x

D S

RAM

16x1

Saída de Leitura

Entradas de Endereços

Controle de E/L

Entradas de Dados

A B C D

x

D S

RAM 8x4

RAM Nxm

Memórias ROM• Essas memórias, conforme já visto, apresentam como característica principal

permitir somente a leitura dos dados nela gravados. Apresentam uma configuração semelhante às memórias RAM no que toca à parte de leitura. Na verdade, as memórias ROM são circuitos estritamente combinacionais.

• Dentre as diversas aplicações, destacamos a sua utilização para construir um circuito combinacional qualquer, formar geradores de caracteres e armazenar programas em sistemas digitais.

Memória ROM

Memória ROM de 16 Posições

Variáveis de EndereçoA B C D S0 0 0 0 I0

0 0 0 1 I1

0 0 1 0 I2

0 0 1 1 I3

0 1 0 0 I4

0 1 0 1 I5

0 1 1 0 I6

0 1 1 1 I7

1 0 0 0 I8

1 0 0 1 I9

1 0 1 0 I10

1 0 1 1 I11

1 1 0 0 I12

1 1 0 1 I13

1 1 1 0 I14

1 1 1 1 I15

Memória ROM 8x1

Variáveis deEntrada

A B CS

0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 01 1 1 1 Saída de Leitura

Entradas de Endereços

A1 A2 A3 … An

S

ROM

ROM NxmSaídas de Leitura

Entradas de Endereços

A1 A2 A3 … An

S0

ROMNxm

S1

S2

Sm

.

.

.

.

.

.

Memória ROM como Circuito CombinacionalDecodificador BCD 8421 - Gray

Código BCD 8421Entradas de Endereço

Código GraySaídas da ROM

A B C D S3 S2 S1 S0

0 0 0 0 0 0 0 00 0 0 1 0 0 0 10 0 1 0 0 0 1 10 0 1 1 0 0 1 00 1 0 0 0 1 1 00 1 0 1 0 1 1 10 1 1 0 0 1 0 10 1 1 1 0 1 0 01 0 0 0 1 1 0 01 0 0 1 1 1 0 11 0 1 0 1 1 1 11 0 1 1 1 1 1 01 1 0 0 1 0 1 01 1 0 1 1 0 1 11 1 1 0 1 0 0 11 1 1 1 1 0 0 0

Saídas de Leitura

Entradas de Endereços

A B C D

S0

ROM16x4

S1

S2

S3

Ampliação da Capacidade de uma ROM Árvore de ROM’s