Buscar

Eletronica Digital

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sumário
1.	CONTADORES DIGITAIS.	2
1.1.	A diferença entre contadores assíncronos e síncronos.	2
1.2.	Assíncronos.	3
1.2.1.	Contador Assíncrono Crescente.	3
1.2.2.	Contador com módulo Assíncrono Crescente.	5
1.3.	Síncronos.	7
1.3.1.	Tipos de Contadores Síncronos.	7
1.3.2.	Controlador síncrono ascendente.	7
1.3.2.	Contador Binários.	8
1.3.3.	Contador para cima / baixo.	8
1.3.4.	Contadores carregáveis.	9
1.3.5.	Contadores BCD.	11
1.3.6.	Contadores de Anel (Ring Counter)	12
1.3.7.	Contadores Johnson	13
2.	MULTIPLEXADORES E DEMULTIPLEXADORES.	14
2.1.	Multiplexadores	14
2.2.	Demultiplexadores	15
2.3.	Aplicações dos Multiplexadores / Demultiplexadores	16
3.	SHIFT REGISTER.	18
3.1.	REGISTRADOR DE DESLOCAMENTO	19
3.2.	Aplicações dos Shift-Registers.	23
4.	FPGA PLD.	25
4.1. Aplicações do FPGA	27
5.	PLD (DISPOSITIVO LÓGICO PROGRAMAVEL)	28
5.1.	Aplicações de DPL	31
6.	BIBLIOGRÁFIA.	33
1. CONTADORES DIGITAIS.
Contadores digitais são dispositivos úteis e versáteis que são considerados como sendo um grupo de flip-flops. O número de flip-flops utilizados e a forma em que estão conectados vai determinar o módulo e a sequência específica de módulos que o contador vai percorrer. Os flip-flops têm funções ilimitadas em sistemas digitais. Podemos associá-los e utilizá-los como contadores, registradores, e muitos outros circuitos. Os contadores são classificados basicamente em dois grandes grupos: Assíncronos e Síncronos.
1.1. A diferença entre contadores assíncronos e síncronos.
Em um contador assíncrono, um evento externo é usado para SET ou CLEAR diretamente um flip-flop quando ele ocorre. Em um contador síncrono, no entanto, o evento externo é usado para produzir um pulso sincronizado com o relógio interno. Um exemplo de um contador assíncrono é um contador de ondulação. Cada flip-flop no contador de ondulação é cronometrado pela saída do flip-flop anterior. Apenas o primeiro flip-flop é cronometrado por um relógio externo. Abaixo está um exemplo de um contador de ondulação de 4 bits.
No campo da eletrônica digital, um "contra " é um circuito lógico sequencial. O circuito consiste de uma série de flip-flops: circuitos electrónicos que têm duas condições estáveis ​​, cada um correspondendo a um dos dois sinais de entrada alternativos. O ciclo pode circuitos através de uma sequência de estados. Existem dois tipos de contador: síncrona e assíncrona. Contadores síncronos contadores síncronos tipicamente consistem de um elemento de memória, que é implementado usando flip-flop, e um elemento de combinações, que é tradicionalmente implementado usando portas lógicas. As portas lógicas são circuitos lógicos com um ou mais terminais de entrada e um terminal de saída, no qual a saída é ligada entre dois níveis de tensão determinados pela combinação de sinais de entrada. O uso de portas lógicas para a lógica combinacional normalmente reduz o custo de componentes para circuitos de contador para um mínimo absoluto, por isso continua a ser uma abordagem popular. Contadores têm um relógio interno, ao passo que os contadores assíncronos não. Como resultado, todos os flip-flops em um contador síncrono são conduzidos simultaneamente por um único impulso de relógio, comum. Em um contador assíncrono, o primeiro flip-flop é acionado por um impulso de um relógio externo e cada um dos sucessivos flip-flop é acionado pela saída do flip-flop anterior na sequência. Esta é a diferença essencial entre contadores síncronos e assíncronos. 
Contadores assíncronos contadores assíncronos, também conhecidos como contadores ondinha, são o tipo mais simples , exigindo menos componentes e menos circuitos de contadores síncronos . Contadores assíncronos são mais fáceis de construir do que os seus homólogos síncronos, mas a ausência de um relógio interno também introduz várias grandes desvantagens. Os flip-flops na forma assíncrona estados mudança balcão em momentos diferentes, de modo que os atrasos na mudança de um estado para outro - conhecidos como atrasos de propagação - se somam para criar um atraso global. Quanto mais flip-flops de um contador assíncrono contém, maior o atraso geral. 
1.2. Assíncronos.
Possuem um sinal de clock que é dividido até o último FF. Estes contadores também são conhecidos como seriais ou contadores por pulsação (ripple counter). Tal nome advém do fato dos flip-flops (FF) do contador não serem disparados diretamente pelo sinal de clock. Cada FF é disparado pela saída do FF anterior. Esta característica torna estes contadores limitados em termos de velocidade, pois o tempo de ativação (tempo de resposta) é dado aproximadamente pela soma dos tempos de atraso de propagação de cada FF. Também podem ocorrer glitches (pulsos não desejados), se usado decodificadores para indicar a ocorrência de uma determinada saída (contagem).
1.2.1. Contador Assíncrono Crescente. 
Um circuito típico de um contador assíncrono crescente construído com FF do tipo JK é mostrado na Fig. 5-1. Os FF JK estão com ambas entradas J e K permanentemente em nível alto, estando configuradas portanto como FF tipo T. Cada FF é disparado pela saída Q do FF anterior.
O contador tem como conteúdo (estado interno) a contagem do número de transições negativas do clock, de forma que quando ocorre uma transição o conteúdo é incrementado de uma unidade. O conteúdo do contador é dado pelo número binário DCBA, onde A é o bit LSB (bit menos significativo) e D é o bit MSB (bit mais significativo). O modulo (MOD) de um contador é o seu número de estados distintos, portanto, o módulo de um contador com N FF pode ser no máximo o número de possíveis saídas (2N). A Fig. 5-3 mostra os estados de contagem de um contador assíncrono com 4 FF (4 bits). Podemos perceber que após 16 transições de clocks o contador reinicia a contagem. Por isso, este contador é de MOD-16, ou seja, tem 16 estados distintos (00002 até 11112). Nos contadores assíncronos, a frequência do clock é dividida por 2 em cada FF, ou seja: na saída A temos clock/2, e na saída D temos clock/16. Portanto, os contadores assíncronos são divisores de frequência e no último FF a frequência de clock é dividida pelo módulo do contador.
1.2.2. Contador com módulo Assíncrono Crescente. 
Para obter um contador com módulo menor do que 2N é necessário adicionar um circuito decodificador para reiniciar a contagem antes de chegar ao valor máximo (ou mínimo). A Fig. 5-4 mostra um contador MOD-6. Se não houvesse a porta NAND ligada nas entradas CLR dos FF o módulo do contador seria 8. A seqüência de estados do contador MOD-6 é mostrada nas Fig. 5-5 e Fig. 5-6. Note que na transição do 6º clock o estado do contador passa temporariamente pelo estado (1102), o qual faz com que a saída da porta NAND passe para o estado BAIXO, causando o CLR nos FF, e conseqüentemente levando o contador para o estado (0002).
O diagrama de transição de estados do contador de 3 bits MOD-6 é mostrado na Fig. 5-7. No diagrama de transição as linhas contínuas indicam a passagem pelos estados estáveis (0002→1012) e as linhas tracejadas indicam a passagem pelos estados temporários (1102). O estado (1112) embora possível não é atingível. 
Para a construção de um contador módulo X menor que o módulo máximo, o procedimento a ser seguido deve seguir as seguintes etapas:
 • determinar o menor número N de FF tal que 2N ≤ X. CURSO DE ELETRÔNICA DIGITAL CEFET/SC V.2004 Pág.5 Exemplo: MOD-12 → N = 16. 
• conectar a porta NAND nas entradas assíncronas CLR de todos os FF. Se 2N = X, não é necessário conectar nada a entrada CLR ;
 • conectar as saídas que estarão em ALTO na contagem X, na porta NAND. Exemplo: 12 = 11002 D = 1 e C = 1, conectar D e C a porta NAND.
1.3. Síncronos. 
Utilizam um sinal de clock comum a todos os FF. Também existe um grupo especial denominado “Contadores em Anel” que são obtidos diretamente dos registradores de deslocamento. O atraso de propagação dos FF dos contadores assíncronos limita a sua frequência máxima. Esse problema pode ser resolvido fazendo com que os FF mudem o estado de suas saídas no momento em que ocorre a transiçãode clock. 
1.3.1. Tipos de Contadores Síncronos.
O atraso de propagação dos FF dos contadores assíncronos limita a sua freqüência máxima. Esse problema pode ser resolvido fazendo com que os FF mudem o estado de suas saídas no momento em que ocorre a transição de clock. Essa configuração caracteriza os contadores chamados de síncronos, sendo mostrada na Fig. 5-8
1.3.2. Controlador síncrono ascendente. 
A análise da lógica do circuito do contador mostra que os FF do tipo JK somente estão no estado TOOGLE (J = 1 e K = 1) quando todas as saídas dos FF anteriores estão em nível ALTO. Como o sinal de clock é comum a todos os FF, o atraso de propagação do contador será o atraso de um FF somado ao atraso das portas AND atraso total ( ) ( ) PD PD = + t FF t AND . Desta forma nesse tipo de contador o atraso não depende do número de bits, mas apenas da tecnologia utilizada. Por outro lado, como o atraso de propagação é menor, o contador síncrono pode trabalhar com freqüências maiores que o contador assíncrono.
1.3.2. Contador Binários.
Contadores binários são a forma mais simples de contadores. Um contador binário de N bits conta de 0 a (2 N - 1) e volta a 0 novamente.
1.3.3. Contador para cima / baixo.
Em vez de apenas contar para cima (contador crescente), os contadores podem ser contados para baixo (contador de descida) ou ambos para cima e para baixo (contador de cima para baixo). O diagrama abaixo mostra um contador up-down. O contador conta para cima ou para baixo dependendo de qual das entradas "up" e "down" estão altas.
1.3.4. Contadores carregáveis.
E, em vez de contar a partir de 0, um contador pode ser feito para contar a partir de um determinado valor inicial. Esse tipo de contador é chamado de contador carregável.
1.3.5. Contadores BCD.
Um contador BCD conta em decimal com código binário de 0000 a 1001 e volta a 0000. Devido ao retorno a 0 após uma contagem de 9, um contador BCD não tem um padrão regular como em uma contagem binária reta. Os contadores BCD são bastante usados em circuitos onde pulsos devem ser contados e mostrados em um display. A Fig abaixo mostra um arranjo de contadores BCD que realiza a contagem de 000 a 999.
Inicialmente todos os contadores estão em 0 e o display mostra 000. A cada borda de descida do clock, o contador de unidades é incrementado e o valor do contador é mostrado no display. Quando o valor atinge 009 (10012), a próxima transição de descida do clock fará com que o contador de unidades retorne para 0. Nesse momento ocorrerá uma transição de 1 para 0 (borda de descida) da saída D desse contador, a qual está ligada a entrada de clock do contador de dezenas. Essa transição da saída D do contador de unidades faz com que o contador de dezenas seja incrementado e o display passa a mostrar o valor 010. As contagens prosseguem até atingir 999. Nesse estado com mais uma transição de descida do clock os contadores reiniciam com 000.
1.3.6. Contadores de Anel (Ring Counter)
Um contador de anel é um registrador de deslocamento circular com apenas um flip-flop sendo ajustado em qualquer momento específico; todos os outros são apagados. O bit único é deslocado de um flip-flop para o outro para produzir a sequência de sinais de temporização.
São úteis para o propósito de sequenciar. Imaginemos que em um sistema digital exista um número de operações que deva ser executado uma após a outra no tempo, isto é, em sequência. Imaginemos ainda que as operações individuais possam ser executadas habilitando um número de conjuntos de portas. Neste caso, os sinais do contador em anel seriam ideais para esta função de habilitação sequencial.
1.3.7. Contadores Johnson 
O contador Johnson, também chamado de contador de anel trançado, é uma variação do contador de toques, com a saída inversa do flip-flop mais significativo passada para a entrada do flip-flop menos significativo. A seqüência seguida começa com todos os 0s no registrador. O 0 final fará com que 1 seja deslocado para o registro a partir do lado esquerdo quando os pulsos de clock forem aplicados. Quando o primeiro 1 atingir o flip-flop mais significativo, os 0s serão inseridos no primeiro flip-flop por causa do acoplamento cruzado entre a saída e a entrada do contador.
Modificação do contador em anel que usa os flip-flops de maneira um pouco mais econômica. É necessário prover uma lógica para ler a contagem do contador – um decodificador. São necessárias tantas saídas individuais quanto forem os estados do contador.
2. MULTIPLEXADORES E DEMULTIPLEXADORES.
O mux e o demux são muito utilizados na transmissão e recepção de informações digitais (ou dados). Esta importância se verifica pelo fato de se dispor, muitas vezes, de um único canal de comunicação para a transmissão de informações de fontes diferentes, que pode ser realizada pelo mux, e recepção de várias informações em intervalos de tempo diferentes por um único canal de comunicação, que podem ser separadas por um demux para serem enviadas à sistemas digitais diferentes.
2.1. Multiplexadores
Os Multiplexadores caracterizam-se por possuir várias entradas, uma das quais através de um processo de endereçamento adequado é encaminhada para a saída.
O multiplexador ou MUX é um circuito combinacional dedicado, que tem a finalidade de selecionar, através das variáveis de seleção, uma de suas entradas, conectando-a eletronicamente à sua única saída. Como se trata de um circuito digital, o número de entradas está logicamente relacionado com o número de variáveis de seleção.
Em vista que através da chave se habilita ou não uma porta. O multiplexador ou MUX é um circuito combinacional dedicado, que tem a finalidade de selecionar, através das variáveis de seleção, uma de suas entradas, conectando-a eletronicamente à sua única saída. Como se trata de um circuito digital, o número de entradas está logicamente relacionado com o número de variáveis de seleção.
2.2. Demultiplexadores
O demultiplexador ou demux é um circuito combinacional dedicado possuindo uma entrada e duas ou mais saídas. Sua finalidade é selecionar, através de variáveis de seleção, qual de suas saídas deve receber a informação presente em sua única entrada, executando a operação inversa realizada pelo mux.
Genericamente um demux pode ser representado pelo modelo abaixo:
Da mesma forma que o mux, no demux o número de entradas está relacionado com o número de variáveis de seleção, ou seja:
                                 n = 2m
Onde:
n - número de canais de saída;
m - número de variáveis de seleção.
Então em um demux com duas variáveis de seleção (m=2) podem ser obtidas quatro combinações diferentes possibilitando a seleção de quatro canais de saída. Em um demux com três variáveis de seleção (m=3) podem ser obtidas oito combinações diferentes, possibilitando a seleção de oito canais de saída. Dentre as várias aplicações do demux podemos citar:
• seleção de circuitos que devem receber uma determinada informação digital;
• conversão de informação serial em paralela;
• recepção e demultiplexação de informações de forma compatível com o sistema de demultiplexação.
2.3. Aplicações dos Multiplexadores / Demultiplexadores
1- Roteamento de Dados em um relógio digital que mostra hora: min ou Dia:mê - precisamos compartilhar os circuitos dos decodificadores e o displays (economia de energia, conexões, componente, área na placa.Sistema mostra dois contadores BCD de mais de um digito, sendo um contador de cada vez.
2- Conversão Paralelo – Série Com um contador de 3 bitz (módulo 8) podemos gerar os bits de seleção e teremos na saída do multiplexador o dado serializado.
3- Sequenciamento de Operações combinando com outros circuitos digitais podemos controlar um processo industrial ppor meio de um sequenciamento de operações.
3. SHIFT REGISTER.
Shift registers são elementos comuns em sistemas digitais utilizados para os mais diversos fins, como por exemplo: conversão de dados serial-paralelo e vice-versa; geração de atrasos; contadores e etc.
 Um shift register nada mais édo que um array de flip-flops conectados em um mesmo clock de forma que a cada pulso de clock a entrada de um flip-flop recebe o valor da saída de seu anterior. Desta forma a cada pulso de clock o flip-flop n+1 recebe o valor de n. A figura abaixo retrata o circuito.
O funcionamento é idêntico, todos os flip-flops recebem os valores dos seus anteriores a cada pulso de clock. Neste caso os bits 3 2 1 vão receber os bits 2 1 0 e o 0 será atualizado. (Mesmo comportamento)
 Este código também pode ser utilizado como um conversor serial-paralelo, a cada 4 pulsos de clock você tem uma palavra paralela de 4 bits em um registrador. Incrivelmente simples, não?
 No caso de um contador em anel basta ligar a saída do ultimo flip-flop a entrada do primeiro e fazer com que no reset um dos flip-flops assuma o valor de '1'. Teremos a sequência infinita de {0001}, {0010}, {0100}, {1000}, {0001} ...
3.1. REGISTRADOR DE DESLOCAMENTO
Um registrador de deslocamento ou “shift-register”, como também é chamado pelo termo em inglês, consiste num conjunto de flip-flops que podem ser interligados de diversas formas, como, por exemplo, as apresentadas na figura 
 
Figura- registradores de deslocamento com flip-flops D e J-K.
Estes circuitos podem deslocar uma informação (bit) aplicada na entrada de uma posição a cada pulso de clock. Por exemplo, o bit 1 aplicado na entrada aparece na saída do primeiro flip-flop no primeiro pulso de clock, depois desloca-se, aparecendo na saída do segundo flip-flop no segundo pulso de clock e assim por diante, até aparecer na saída do final da sequência, figura 2.
Fig. - Deslocamento dos bits pelos flip-flops do registrador.
Na configuração mostrada na figura 1 (a), cada flip-flop tipo D tem sua saída conectada à entrada do flip-flop seguinte e todos eles são controlados pelo mesmo CLOCK.
Para entender como funciona este circuito, vamos partir da situação inicial em que todos eles estejam desativados ou com suas saídas Q no nível baixo.
Inicialmente vamos aplicar à entrada de dados um nível alto (1). Conforme podemos ver, esta entrada é feita pela entrada J do primeiro flip flop (FF1).
Com a chegada do pulso de clock a este flip-flop, ele muda de estado e com isso “armazena” o pulso aplicado à entrada, o qual aparece em sua saída depois de um curto intervalo de tempo. 
Veja que este sinal é armazenado com o flanco positivo do sinal de clock, quando então o nível alto deve estar presente na entrada do flip-flop. O intervalo
de tempo que decorre entre a aplicação do sinal na entrada de dados e seu aparecimento na saída do flip-flop é da ordem de alguns nanossegundos nos integrados das famílias lógicas comuns, mas é importante que em muitas aplicações mais rápidas ele seja levado em conta.
No próximo pulso de clock, ocorre algo interessante: a entrada do primeiro flip-flop já não tem mais o nível alto, e portanto FF1 não muda de estado.
No entanto, na saída de FF1, temos nível alto, e esta saída está ligada à entrada do segundo flip-flop (FF2). Isso significa que, com a chegada do segundo pulso de clock, o nível lógico da saída do primeiro se transfere para a saída do segundo, depois é claro, de um pequeno intervalo de tempo, veja a tabela I.
 Tabela 1
A sequência de bits aplicados à entrada (a) aparece na saída (b) depois de certo número de clock. Isso significa que o bit 1 aplicado na entrada se “deslocará” mais um pouco no circuito, passando para a saída do segundo flip-flop. É claro que, se nessa segunda passagem, tivermos aplicado um novo nível 1 na entrada do circuito, ao mesmo tempo que o primeiro se transfere para o segundo flip-flop, o segundo se transfere para a saída do primeiro flip-flop, veja a figura.
Fig. - Sequência de transferências dos bits conforme os pulsos de clock.
Chegando agora um terceiro pulso de clock, teremos nova transferência e o nível alto ou bit 1 se transfere para a saída do flip-flop seguinte, ou seja FF3. Em outras palavras, a cada pulso de clock, os níveis existentes nas saídas dos flip-flops, sejam eles 0 ou 1, se transferem para o flip-flop seguinte.
Assim, supondo que apliquemos, em sequência, na entrada de um shiftregister como o indicado, os níveis 0101, teremos a seguinte sequência de condições de saída para os flip flops de um shift-register que use 4 deles:
Veja então que no quinto pulso de clock, o primeiro pulso de clock, o primeiro nível lógico, aparece na saída do último flip-flop (FF4) e se lermos a saída dos flip-flops teremos registrado os níveis aplicados na entrada: 
0101.
O leitor já deve ter percebido que aplicando um dado binário num shiftregister, depois do número apropriado de pulsos de clock, ele pode armazenar este dado. Para retirar o dado em sequência, basta continuar aplicando pulsos de clock ao circuito, conforme a seguinte tabela:
A figura mostra o que ocorre em pormenores:
Fig. - Nos registradores de deslocamento a entrada e saída podem ser serial.
Veja então que para armazenar um dado de 4 bits num registrador devemos aplicar 4 pulsos de clock e para ler em sequência, mais 4 pulsos de clock. Para “apagar” os dados registrados num shif-register, como o indicado, basta aplicar um pulso na entrada CLEAR. Todos os flip-flops terão suas saídas levadas ao nível baixo ou 0.
3.2. Aplicações dos Shift-Registers. 
SHIFT-REGISTERS OU REGISTRADORES DE DESLOCAMENTO INTEGRADOS
Podemos encontrar registradores de deslocamento nas famílias TTL ou CMOs. Vamos dar alguns exemplos de circuitos integrados comuns que podem ser usados em projetos, analisando suas principais características.
 
7495 - SHIFT-REGISTER DE 4 BITS (Da esquerda para a direita - entrada e saída em paralelo) 
Este circuito integrado TTL pode operar de duas formas: Shift ou Load.
Na figura 11 temos sua pinagem. Para operar no modo shift, basta colocar a entrada Mode no nível baixo.
 
Fig. 11 - Shift-register de 4 bits (PIPO).
Uma transição do nível alto para o nível baixo na entrada de clock SRT movimenta os dados de uma etapa para a direita. Uma transição do nível alto para o baixo na entrada SLT movimenta o dado no sentido inverso. É interessante observar que este circuito usa dois clocks, um para movimentar os dados para a direita e outro para a esquerda.
No modo Load, esta entrada deve ir ao nível alto, e a informação carregada nas entradas LA, LB, LC e LD entram no circuito na transição do nível alto para o baixo da entrada de comando na entrada shift-left (SLT). A frequência máxima de operação de um 7495 standard é de 36 MHz. Velocidades maiores de operação podem ser conseguidas com os tipos LS.
 
74164 - SHIFT-REGISTER DE 8 BITS (Entrada serial, saída paralela)
Na figura 12 temos a pinagem deste shift register TTL.
 
Fig. 12 - Shift-register de 8 bits (SIPO).
Este circuito pode ser usado na configuração de serial-in/serial-out ou serial in/parallel-out ou seja, entrada e saída de dados em série, ou entrada de dados em série e saída em paralelo.Na operação normal, uma das saídas seriais é mantida no nível alto e os dados são aplicados à segunda entrada serial. A entrada Clear é mantida no nível alto e a cada pulso do nível baixo para o alto do clock, os dados movem-se de um estágio no circuito.
O conteúdo do shift pode ser zerado levando-se a entrada clear por um instante ao nível baixo.
A frequência máxima de operação deste circuito na série Standard é de 36 MHz.
 
74165 - SHIFT- REGISTER DE 8 BITS (Entrada Paralela, saída serial)
Este circuito integrado TTL contém um shift- register de 8 bits com entrada paralela e saída de dados serial.
A pinagem é mostrada na figura abaixo.
Fig. 13 - Shift-register de 8 bits (PISO).
Para operação normal EN deve ficar no nível baixo e LOAD no nível alto. Nestas condições, os dados são deslocados um estágio na transição positiva do sinal de clock.
Quando a entrada LOAD é levada ao nível baixo, o conteúdo das entradas de A até H é carregado no registrador. Fazendo EN=0 e LOAD=1 os dados são deslocados uma etapa no circuito a cada transição positiva do sinal de clock. A últimaetapa do circuito dispõe de um acesso para a saída complementar.
Damos a seguir alguns registradores de deslocamento da família CMOS.
4. FPGA PLD.
FPGA é um dispositivo lógico programável que suporta a implementação de circuitos lógicos relativamente grandes. Os FPGAs não possuem planos de portas OR ou AND, em vez disso, estes componentes consistem de um grande arranjo de células configuráveis (ou blocos lógicos) que podem ser utilizadas para a implementação de funções lógicas. A estrutura de um FPGA é ilustrada na figura 1.
 
Um FPGA possui três tipos principais de recursos: blocos lógicos, blocos de entrada e saída (I/O), e chaves de interconexão. Os blocos lógicos formam um arranjo bidimensional, e as chaves de interconexão são organizadas como canais de roteamento horizontal e vertical entre as linhas e colunas de blocos lógicos. Estes canais de roteamento possuem chaves programáveis que permitem conectar os blocos lógicos de maneira conveniente, em função das necessidades de cada projeto. Os FPGAs têm sido responsáveis pelas principais mudanças no modo em que os circuitos digitais são projetados. Os fabricantes destes dispositivos utilizam-se de diferentes tipos de blocos lógicos. O mais comumente utilizado é o look up table (LUT). Este tipo de bloco lógico contém células de armazenamento que são utilizadas para implementar pequenas funções lógicas. Cada célula é capaz de reter um único valor lógico, 0 ou 1. LUTs de vários tamanhos podem ser criados. A figura 2 mostra a estrutura de um LUT com duas entradas, x1 e x2, e uma saída f. As variáveis de entrada x1 e x2 são usadas como chaves seletoras para os três multiplexadores 2x1 que em conjunto, selecionam uma das quatro células de armazenamento como saída do LUT. Fig. 2. Circuito para um LUT com duas entradas Nos FPGAs disponíveis comercialmente, os LUTs possuem geralmente quatro ou cinco entradas, o que exige 16 e 32 células de armazenamento respectivamente. Quando um circuito lógico é implementado em um FPGA, os blocos lógicos são programados para realizar as funções necessárias, e os canais de roteamento são estruturados de forma a realizar as interconexões necessárias entre os blocos lógicos. As células de armazenamento dos LUTs de um FPGA são voláteis, o que implica na perda do conteúdo armazenado no caso de falta de alimentação elétrica. Desta forma, o FPGA deve ser programado toda vez que for energizado. Geralmente um pequeno chip de memória PROM é incluído nas placas de circuito impresso que contêm FPGAs. As células de armazenamento são automaticamente carregadas a partir das PROMs toda vez que uma tensão elétrica é aplicada a estes chips. Tecnologias de Programação Algumas propriedades dos comutadores dos FPGAs, tais como tamanho, resistência, capacitância e tecnologia de fabricação, afetam principalmente o desempenho e definem características como volatilidade e capacidade de reprogramação. Na escolha de um dispositivo reconfigurável, estes fatores devem ser avaliados. Basicamente existem três tipos de tecnologia de programação: ƒ SRAM (Static Random Acess Memory), onde o comutador é um transistor de passagem controlado pelo estado de um bit de SRAM;
 ƒ Antifuse é originalmente um circuito aberto que, quando programado, forma um caminho de baixa resistência;
ƒ Gate Flutuante, onde o comutador é um transistor com gate flutuante. Arquitetura dos Blocos Lógicos Os blocos lógicos dos FPGAs variam muito de tamanho e capacidade de implementação lógica. Os blocos lógicos dos FPGAS comerciais são baseados em um ou mais dos seguintes componentes: 
ƒ Pares de transistores; 
ƒ Portas básicas do tipo NAND ou XOR de duas entradas; 
ƒ Look-up tables (LUTs); 
ƒ Estruturas AND-OR de múltiplas entradas. Algumas categorias de FPGAs foram criadas afim de classificá-los quanto ao bloco lógico que empregam. Estas categorias foram denominadas de granulosidade fina e de granulosidade grossa, sendo a primeira a designante para blocos simples e pequenos e a segunda para os blocos mais complexos e maiores [2].
4.1. Aplicações do FPGA
Como os sistemas reconfiguráveis geralmente são implementados usando circuitos programáveis (FPGAs), a utilização destes na indústria tem um amplo horizonte: podendo-se implementar desde circuitos básicos, como um rádio relógio, até circuitos complexos como uma UCP (Unidade Central de Processamento, que é o coração dos microprocessadores e microcontroladores) de alto desempenho, sendo que entretanto, nem sempre são sistemas computacionais reconfiguráveis [5]. Entre as principais aplicações computacionais reconfiguráveis podemos destacar: casamento de DNA; sistemas digitais; compactação e compressão de dados e sinais; criptografia; gráfica computacional; multimídia; processamento de sinais, imagens e vídeos; e reconhecimento de padrões. Outras possíveis aplicações são mostradas na tabela I. 
Pode-se ainda, desenvolver circuitos onde o núcleo é um FPGA e a lógica final do funcionamento poderá ser trocada pelo próprio usuário. Um exemplo prático é trocar o processador do computador simplesmente fazendo um “download” na internet, do código a ser inserido no FPGA, ou em outras palavras: trocar um Pentium III por um Pentium IV, simplesmente alterando o software comportamental do FPGA, sem precisar alterar sequer um parafuso do hardware
5. PLD (DISPOSITIVO LÓGICO PROGRAMAVEL)
O desenvolvimento de projeto de circuitos digitais tem evoluído rapidamente nas últimas décadas. A utilização da ferramenta de software denominada EDA (Eletronic Design Automation) e o aperfeiçoamento dos PLDs (Programmable Logic Devices) têm simplificado e acelerado todo o ciclo de projeto. 
Os PLD são circuitos integrados que podem ser configurados pelo próprio usuário. Não apresentam uma função lógica definida, até que sejam configurados. Possuem, como principal característica, a capacidade de programação das funções lógicas pelo usuário, eliminando-a do processo de fabricação do circuito integrado, o que facilita, assim, as prováveis mudanças de projeto. Em comparação com outras tecnologias de circuitos integrados digitais, os dispositivos de lógica programável apresentam um ciclo de projeto menor e custos reduzidos. 
Os controladores lógicos programáveis disponíveis no mercado brasileiro utilizam na sua arquitetura microcontroladores e circuitos integrados de aplicações específicas ASICs. Esses microcontroladores, para executar seus programas de controle, necesitam realizar ciclos de busca e execução de instrução. O ciclo de busca da instrução não está diretamente relacionado com o processo no qual o controlador lógico programável está 6 Dispositivos de Lógica Programável inserido, mas é a condição determinante para o microcontrolador executar o programa que está carregado na memória. Essa necessidade de busca da instrução demanda tempo do microcomputador, que poderia estar sendo utilizado na execução de tarefas pertinentes ao processo. Os microcontroladores são componentes extremamente flexíveis devido a sua programabilidade. Essa programação permite sua aplicação em diversos tipos de controles industriais. A execução de um algoritmo de controle depende de seu software, armazenado em memória, que será executado numa arquitetura baseada em microprocessador, com ciclo de buscas e execução das instruções. Numa arquitetura baseada em dispositivo lógico programável, por exemplo, FPGA (Field Programmable Gate Array),um algoritmo de controle é implementado por hardware, sem a necessidade de ciclos de busca e execução de instruções. O problema básico a ser resolvido é a implementação de uma arquitetura eficiente, baseada em lógica programável estruturada, para execução desse algoritmo de controle, em vez de compilá-lo para sua execução em microprocessador.
5.1. Aplicações de DPL
6. BIBLIOGRÁFIA.
Brown, S.; Rose, J.; Francis, R.; Vranesic, Z.,” FIELD PROGRAMMABLE GATE ARRAYS “, Kluwer Academic Publisher, 1997.
 Dehon, A.,” RECONFIGURABLE ARCHITECTURES FOR GENERAL-PURPOSE COMPUTING ”, Massachussetts Institute of Technology,Ph.D. Thesis, October 1996.
 Dehon, A.; Wawrzynek, J.,” RECONFIGURABLE COMPUTING: WHAT, WHY, AND DESIGN AUTOMATION REQUIREMENTS ?” , in Proceedings of the 1999. Design Automation Conference, pp. 610- 615, June 1999.
 Sanchez, E. et al.,” STATIC AND DYNAMIC CONFIGURABLE SYSTEMS “, IEEE Transactions on Computers. Vol. 48, no. 6, pp. 556-564, June 1999.
 [5] Brown S. “ROUTING ALGORITHMS AND ARCHITECTURES FOR FIELD-PROGRAMMABLE GATE ARRAYS”, Department of Electrical Engineering - University of Toronto, CANADA. Doctor of Philosophi thesis, Janeiro, 1992.
 Harding, B.,” HDLS: A HIGH-POWERED WAY TO LOOK AT COMPLEX DESIGN, COMPUTER DESIGN”, p. 74-84, March 1990.
33

Outros materiais

Outros materiais