contadores - sistemas digitais 2

15
EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL Contadores e Registradores (2005) 1 APÊNDICE A Resumo Teórico E.T.M. e R.C.S./2005 (revisão) 1. CONTADORES E REGISTRADORES Contadores são circuitos seqüenciais que têm por principal objetivo armazenar o número de eventos que ocorrem na sua entrada, sendo também utilizados para gerar códigos seqüenciais específicos, ou sinais de controle e de temporização em sistemas digitais. É possível identificar uma característica que classifica os contadores, de forma ampla, em duas categorias: síncronos e assíncronos Há, entretanto, vários outros aspectos a serem considerados. Assim sendo, dentro de cada uma das duas categorias, é ainda possível classificar os contadores em função do: número de estados (módulo) número de saídas (bits) tipo de seqüência gerada: binária, decimal, código de Gray, etc. tipo de operação: fixa ou selecionável Para facilitar a exposição, esses aspectos serão inicialmente considerados nos contadores síncronos. O projeto de circuitos digitais requer conhecimentos teóricos, critério e bom senso em sua aplicação, além de experiência prática. Muitos fenômenos constatados (muitas vezes não previstos no projeto) podem comprometer o funcionamento dos circuitos. Em outras situações, o desconhecimento de determinados artifícios (“truques de projeto”) pode levar a soluções que, embora funcionem corretamente, requerem um número grande de componentes. A segunda parte desta experiência possibilita a constatação de alguns fenômenos nem sempre previsíveis por um projetista iniciante, e que serão explorados. 1.1. Contadores Síncronos Um circuito seqüencial síncrono genérico pode ser representado pelo diagrama em blocos mostrado na figura 1.1. Figura 1.1 - Diagrama em Blocos de um Circuito Seqüencial Síncrono (Modelo MEALY). De forma simplificada, pode-se dizer que um contador síncrono é um circuito seqüencial síncrono onde: não há entradas externas x k ; há M estados: S 0 , S 1 ,...., S M-1 ; a transição de um estado para outro é devida, exclusivamente, à ocorrência da borda de atuação do sinal de relógio; cada estado armazena o número de bordas de atuação do relógio, ocorridas desde o estado inicial até o presente instante; há uma saída z que assume o valor 1 somente enquanto o contador está no estado S M-1 . A figura 1.2 mostra o diagrama de estados de um contador síncrono módulo M. Bloco combinatório do próximo estado Flip-flops sensívei à borda Relógio Variávei de estado s i Variávei de excitação p y Bloco combinatório de saída m z X k

Upload: filipe-ribeiro

Post on 07-Jun-2015

1.689 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 1

APÊNDICE A Resumo Teórico

E.T.M. e R.C.S./2005 (revisão)

1. CONTADORES E REGISTRADORES Contadores são circuitos seqüenciais que têm por principal objetivo armazenar o número de eventos que ocorrem na sua entrada, sendo também utilizados para gerar códigos seqüenciais específicos, ou sinais de controle e de temporização em sistemas digitais.

É possível identificar uma característica que classifica os contadores, de forma ampla, em duas categorias: síncronos e assíncronos

Há, entretanto, vários outros aspectos a serem considerados. Assim sendo, dentro de cada uma das duas categorias, é ainda possível classificar os contadores em função do:

• número de estados (módulo)

• número de saídas (bits)

• tipo de seqüência gerada: binária, decimal, código de Gray, etc.

• tipo de operação: fixa ou selecionável

Para facilitar a exposição, esses aspectos serão inicialmente considerados nos contadores síncronos.

O projeto de circuitos digitais requer conhecimentos teóricos, critério e bom senso em sua aplicação, além de experiência prática. Muitos fenômenos constatados (muitas vezes não previstos no projeto) podem comprometer o funcionamento dos circuitos. Em outras situações, o desconhecimento de determinados artifícios (“truques de projeto”) pode levar a soluções que, embora funcionem corretamente, requerem um número grande de componentes.

A segunda parte desta experiência possibilita a constatação de alguns fenômenos nem sempre previsíveis por um projetista iniciante, e que serão explorados.

1.1. Contadores Síncronos Um circuito seqüencial síncrono genérico pode ser representado pelo diagrama em blocos mostrado na figura 1.1.

Figura 1.1 - Diagrama em Blocos de um Circuito Seqüencial Síncrono (Modelo MEALY).

De forma simplificada, pode-se dizer que um contador síncrono é um circuito seqüencial síncrono onde:

• não há entradas externas xk; • há M estados: S0, S1,...., SM-1; • a transição de um estado para outro é devida, exclusivamente, à ocorrência da borda de

atuação do sinal de relógio; • cada estado armazena o número de bordas de atuação do relógio, ocorridas desde o estado

inicial até o presente instante; • há uma saída z que assume o valor 1 somente enquanto o contador está no estado SM-1.

A figura 1.2 mostra o diagrama de estados de um contador síncrono módulo M.

Bloco combinatório do próximo

estado Flip-flopssensíveià borda

Relógio

Variáveide

estadosi

Variáveide

excitação

p y Bloco

combinatóriode saída

m z

X k

Page 2: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 2

Relógio

Estado M-1S S S SS

M-1S

0 1 2S

0

Saida

S0/0 S1/0 S2/0 SM-1/0

Figura 1.2. Diagrama de Estados de um Contador Síncrono Módulo M.

Partindo do estado inicial S0, após a ocorrência de M bordas de atuação do relógio, o contador volta ao estado inicial. O parâmetro M é definido como sendo o Módulo do Contador.

Em quase todas as aplicações de contadores, as variáveis de estado são também consideradas como saídas, além da saída z. Num contador módulo M, a relação entre o número de variáveis de estado N e o número de estados M é dado pela expressão: M ≤≤≤≤ 2N

. Por exemplo, num contador binário, vale a expressão M = 2N, enquanto num contador decimal, vale M < 2N. Geralmente as variáveis de estado N são denominadas bits do contador.

O número de bordas de atuação, que é armazenado nos bits do contador, pode ser codificado de várias formas: binária, BCD, Gray, etc. (vide Tabela I). Esse código e o módulo do contador determinam como serão os blocos combinatórios do próximo estado e da saída, bem como o número de flip-flops a ser utilizado.

Tabela I - Vários Códigos para os Bits de um Contador.

CÓDIGOS ( bits do contador)

ESTADO Binário Gray (*) BCD

Y3 Y2 Y1 Y0 Y3 Y2 Y1 Y0 Y3 Y2 Y1 Y0

0 0 0 0 0 0 0 0 0 0 0 0 0

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

2 0 0 1 0 0 0 1 1 0 0 1 0

3 0 0 1 1 0 0 1 0 0 0 1 1

4 0 1 0 0 0 1 1 0 0 1 0 0

5 0 1 0 1 0 1 1 1 0 1 0 1

6 0 1 1 0 0 1 0 1 0 1 1 0

7 0 1 1 1 0 1 0 0 0 1 1 1

8 1 0 0 0 1 1 0 0 1 0 0 0

9 1 0 0 1 1 1 0 1 1 0 0 1

10 1 0 1 0 1 1 1 1

11 1 0 1 1 1 1 1 0

12 1 1 0 0 1 0 1 0 NÃO

13 1 1 0 1 1 0 1 1 EXISTEM

14 1 1 1 0 1 0 0 1

15 1 1 1 1 1 0 0 0 (*) entre duas palavras sucessivas de código, apenas 1 bit se altera.

Apresenta-se, a seguir, o projeto de dois contadores módulo 8: um deles binário e o outro gerando as variáveis de estado segundo o código de Gray.

Page 3: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 3

1.1.1. Contador Síncrono - Módulo 8 - Binário - 3 Bits

Seu comportamento é descrito pelas tabelas e diagrama de estados apresentados na figura 1.3.

Transição de estados Designação de Estados

s (t) s ( t+1 ) z ( t ) Código Binário

Y2 Y1 Y0

A B 0 A 0 0 0

B C 0 B 0 0 1

C D 0 C 0 1 0

D E 0 D 0 1 1

E F 0 E 1 0 0

F G 0 F 1 0 1

G H 0 G 1 1 0

H A 1 H 1 1 1

000/0 001/0 110/0101/0

111/1

Figura 1.3 - Estados do Contador Síncrono Binário - Módulo 8.

Aplicando-se as técnicas de síntese de circuitos seqüenciais, supondo que os flip-flops são do tipo D sensíveis à borda, tem-se:

D Y0 0=

D Y Y1 0 1= ⊕

D Y Y Y2 0 1 2= ⊕( . )

Z Y Y Y= 0 1 2. .

O circuito que implementa esse contador é mostrado na figura 1.4, e a forma de onda dos bits e da saída z são mostradas na figura 1.5.

Relógio

Y0

Y0

1Y

1Y

CC

C

Z

Y2

2YD0

D1

D2

Q

Q

0

0

Q

Q

1

1

Q

Q

2

2

Figura 1.4 - Circuito do Contador Síncrono Binário - Módulo 8, com Flip-Flop D Sensível à Borda.

Page 4: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 4

(1) (2) (3) (4) (5) (6) (7) (8)

Estado 111 000 001 001010 011 100 101 110 111 000

Y

Y

Y

Z

0

1

2

Figura 1.5 - Sinais do Contador Síncrono Binário - Módulo 8.

Quando se utilizam flip-flops J-K sensíveis à borda, a metodologia de projeto é a mesma, cuidando-se apenas de estabelecer a tabela de excitação para flip-flops J-K sensíveis à borda. No caso do contador binário módulo 8, sua implementação com flip-flops J-K é até mais simples do que com tipo D, como mostra a figura 1.6.

C

0 J

0 K

C

J

K

1

1

Relógio

Y 0

Y 0 1 Y

1 Y

C

J

K

2

2

Z

Y 2

2 Y

Q

Q

Q

Q

Q

Q

0

0

1

1

2

2

1 lógico

Figura 1.6 - Contador Síncrono Binário - Módulo 8, com J-K.

1.1.2. Contador Síncrono - Módulo 8 - Código Gray - 3 Bits Seu comportamento é descrito pela mesma tabela da figura 1.3. Entretanto, a designação de estados deve ser compatível com o código que se pretende gerar, ou seja:

ESTADO ATUAL SEGUINTE Z (ATUAL)

Y2 Y1 Y0 D2 D1 D0

A 0 0 0 0 0 1 0

B 0 0 1 0 1 1 0

C 0 1 1 0 1 0 0

D 0 1 0 1 1 0 0

E 1 1 0 1 1 1 0

F 1 1 1 1 0 1 0

G 1 0 1 1 0 0 0

H 1 0 0 0 0 0 1

Aplicando-se novamente as técnicas de projeto de circuitos seqüenciais síncronos e adotando-se flip-flops tipo D sensíveis à borda de subida, tem-se:

D Y Y0 1 2= ⊕( ) D Y Y Y Y1 0 2 0 1= +

D Y Y Y Y2 0 1 0 2= +( . ) ( . ) Z Y Y Y= 0 1 2. .

O circuito que implementa o contador Gray síncrono, módulo 8, é mostrado na figura 1.7.

Page 5: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 5

C

D11Y

1Y

Q

Q

Y

Y0C

D

Relógio

Q

Q

0

C

D2

Y2

2Y

Q

Q

Z

0

00 1

1

2

2

Figura 1.7 - Contador Gray - Módulo 8.

A técnica de projeto mostrada nesse item pode ser adotada para a obtenção de qualquer contador síncrono Módulo M, com M = 2N; o particular código que os bits do contador devem assumir, seqüencialmente, determina a designação de estados.

1.2. Contadores Síncronos de Módulo M ≠≠≠≠ 2N

1.2.1. Projeto Convencional Quando o módulo do contador não é uma potência de 2, pode-se empregar a mesma técnica mostrada em 1.1.2. lembrando, apenas, que haverá estados não especificados.

Seja, por exemplo, um contador decimal síncrono (Módulo10), com código BCD. Esse contador possui dez estados especificados e seis não especificados mas, de qualquer forma, são necessários 4 flip-flops.

Adotando-se a técnica usual de projetos de circuitos seqüenciais, temos a Tabela II:

Tabela II - Tabela de Estados do Contador Decimal.

s ( t ) s ( t + 1 ) z ( t )

A - 0000 B - 0001 0

B - 0001 C - 0010 0

C - 0010 D - 0011 0

D - 0011 E - 0100 0

E - 0100 F - 0101 0

F - 0101 G - 0110 0

G - 0110 H - 0111 0

H - 0111 I - 1000 0

I - 1000 J - 1001 0

J - 1001 A - 0000 1

K - 1010

L - 1011

M - 1100 NÃO NÃO

N - 1101 ESPECIFICADO ESPECIFICADO

O - 1110

P - 1111

Os estados não especificados (K até P) podem ser considerados como tendo por estado seguinte o estado inicial, assim como a saída (z) a eles correspondente pode ser considerada igual a zero. Essa solução, apesar de geralmente não corresponder ao circuito mínimo, tem a vantagem de sempre levar o contador ao estado inicial se, por alguma causa externa não prevista, o circuito cair num dos estados não especificados.

Page 6: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 6

Quando se pretende minimizar os blocos combinatórios, adota-se, para estados seguintes aos não especificados, aqueles mais convenientes sob o aspecto minimização. É necessário cuidado, entretanto, para que o contador possa voltar, após alguns pulsos de relógio, aos estados úteis, na eventualidade de o circuito vir a assumir um estado entre K e P.

Uma vez designados todos os estados, os blocos combinatórios que determinam o próximo estado e a saída são projetados como exposto nos itens 1.1.1 e 1.1.2.

Outros contadores de Módulo M ≠ 2N, independentemente da seqüência gerada nos seus bits, também podem ser projetados como acima delineado, cuidando-se para fazer uma designação de estados compatível. Essa técnica de projeto foi muito adotada, no passado, quando o projetista só dispunha de portas lógicas e de flip-flops; foi e continua sendo a técnica na qual se baseia o projeto de circuitos integrados com a função de contadores específicos e voltou a ser utilizada mais recentemente, pelos usuários finais, após o aparecimento de PALs (Programmable Array Logic).

No item a seguir mostra-se uma alternativa de projeto de contadores de módulo M ≠ 2N, (que contam na seqüência natural) utilizando contadores integrados disponíveis comercialmente.

1.2.2. Projeto com Contadores Integrados Quando foram especificados os contadores que seriam fabricados sob a forma de circuitos integrados, os fabricantes desses componentes preocuparam-se não apenas em selecionar os tipos mais usados, mas também em dotar os contadores de entradas adicionais, de forma a permitir flexibilidade na aplicação.

Um exemplo são os contadores que, além da função básica de contagem, permitem:

• carga paralela;

• reset síncrono;

• reset assíncrono;

• inibição de contagem.

Para ilustrar o princípio no qual se baseia o projeto de contadores com essas características, vide a figura 1.8, onde se detalha o circuito de um bit de um contador desse tipo.

CP

RS

PC

CR

demaisbitsBloco

combinatóriodo próximo

estado

D

RC

Yj

Yj

Q

Q

Yj

BITS

Z

Reset Síncrono*

Ej

Reset Assíncrono*

PermiteContagem

Carga Paralela*

Relógio

* Sinais ativos em nível

SINAL

OPERAÇÃO

Reset Assíncrono

R

Reset Síncrono

RS

RELÓGIO

C

Permite Contagem

PC

Carga Paralela

CP

Entrada Paralela

Ej

Bits Yj

(=Yi) Z

RESET ASSÍNCR.

0 1 X X X X 0 0

RESET SÍNCR. 1 0 ↑ X X X 0 0

CARGA 1 1 ↑ X 0 Ei Ei Z

CONTAGEM 1 1 ↑ 1 1 X contagem Z

INIBIÇÃO 1 1 X 0 1 X mantém Z

Figura 1.8 - Recursos Adicionais de um Contador Síncrono.

Page 7: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 7

Quando se dispõe de um contador binário módulo 16, com as características acima, pode-se projetar facilmente vários outros contadores.

a) Contador Módulo M < 16

Um contador módulo 13, que conta de 0 até 12, pode ser implementado facilmente se, ao ser atingido o estado correspondente ao número 12 (1100), for imposto 0 (0000) como próximo estado. A figura 1.9 mostra duas possíveis soluções utilizando-se contadores síncronos.

1

1

1Z

R

CP

RSPC

C E0 E E E1 2 3

Q Q QQ0 1 2 3

1

1Z

R

CP

RSPC

C E0 E E E1 2 3

Q Q QQ0 1 2 3

1

= bit mais significativo do contadorQ3

0 0 0 0 X X X X

Figura 1.9 - Contadores Módulo 13, usando Contadores de Módulo 16.

b) Contador desde (a) até (b) (a ≥≥≥≥ 0, b <<<< M)

Por exemplo, um contador que conta desde 2 até 13, pode ser implementado como mostra a figura 1.10.

1

1

1Z

R

CP

RSPC

C E0 E E E1 2 3

Q Q QQ0 1 2 3

0 0 01

Carga de "2"

Detectorde "13"

Figura 1.10 - Contador de 2 até 13.

c) Contadores de Módulo M > 16

Podem ser obtidos conectando-se em cascata vários contadores Módulo-16. Por exemplo, um contador Módulo 256 (8 bits) é mostrado na figura 1.11.

Page 8: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 8

1

1

1

R

CP

RSPC

C E0 E E E1 2 3

Q Q QQ0 1 2 3

1

Z

R

CP

RSPC

C E0 E E E1 2 3

Q Q QQ0 1 2 3

1

X X X XX X X X

1

Z 1

bit mais significativobit menos significativo

Figura 1.11 - Contador Binário - Módulo 256 (8 bits).

1.3. Contadores Síncronos de Operação Selecionável Nos exemplos mostrados nos itens anteriores, obtiveram-se contadores síncronos de vários módulos, com o acréscimo de uma lógica adicional externa. O contador utilizado, entretanto, sempre opera de forma fixa.

Existem contadores onde é possível selecionar se a contagem é crescente ou decrescente. Há várias maneiras de implementar esta característica adicional. Apenas para ilustrar o princípio que pode ser adotado no projeto, vide a figura 1.12.

(crescente) M

U

X

M

U

X C

UP/DOWN

BITS

(decrescente)

FLIP-FLOPS

Figura 1.12 - Diagrama de um Contador UP/DOWN.

Existem contadores integrados que agregam, além da característica de contagem crescente e decrescente, outras mencionadas no item 1.2.2.

Quando o contador a ser utilizado possui seqüência de contagem arbitrária, é mais conveniente projetá-lo "sob medida", usando os métodos convencionais de síntese de circuitos seqüênciais. O uso de contadores integrados, nesse caso, requer lógica adicional maior, o que pode resultar em um custo elevado para o circuito.

1.4. Contadores em Anel Existe uma outra categoria de contadores que são implementados com registradores de deslocamento: são os contadores em anel e em anel torcido. Eles não serão detalhados ou analisados nesta experiência, mas podem ser facilmente encontrados nas referências bibliográficas.

Page 9: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 9

1.5. Contadores Assíncronos - "Ripple-Counters"

1.5.1. Contadores Assíncronos de Módulo M = 2N Nesta configuração, a saída do flip-flop de mais baixa ordem gera o sinal de relógio do flip-flop seguinte, e assim por diante; a lógica deste tipo de contador é a mais simples mas, em contrapartida, a sua velocidade de operação é prejudicada pela propagação do sinal de relógio. Um contador binário, módulo 16, na configuração de "Ripple-Counter" é mostrado na figura 1.13, com a seqüência de pulsos de entrada e de saída.

Os flip-flops JK da figura 1.13 são sensíveis à borda de descida do sinal de relógio. Assim sendo, a cada descida desse sinal, como J = K= "1", os flip-flops mudam de estado; na figura as setas indicam a causa e o efeito de cada borda de descida.

No diagrama de tempos da figura 1.13 não foram detalhados os efeitos dos tempos de atraso dos flip-flops. Esses tempos estão evidenciados no diagrama da figura 1.14, onde é mostrada claramente a propagação dos atrasos dos flip-flops.

Dependendo de onde se utiliza o contador, esses atrasos podem criar problemas, como quando alimentam decodificadores para geração de sinais de controle !

Como os relógios de todos os flip-flops não são comandados pelo mesmo sinal, os "Ripple-Counters" são considerados contadores assíncronos.

Q

C

J1

1K

C

J

K

2

2

Q 10

VccVcc

C

J

K

QVcc

3

3

J

2 Q 3

C

0J

0K

Vcc

1 2 3 4 5 6 7 98 10 11

Entrada

Q 1

Q 2

Q 3

0Q

Entrada

Q

Q

Q

Q

Q

Q

Q

Q

0

0

1

1

3

3

2

2

Figura 1.13 - Contadores Assíncronos de 4 bits.

Q 1

Q 2

Q 3

0Q

Entrada

1

0

2

3

Figura 1.14 - Propagação dos Atrasos em Contadores Assíncronos.

Page 10: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 10

1.5.2. Contadores Assíncronos de Módulo M ≠≠≠≠ 2N Contadores assíncronos, que contam na seqüência natural, desde 0 até M-1 (M < 2N), podem ser implementados detectando-se o estado M e fazendo com que esse sinal "reset", assincronamente, todos os flip-flops.

Um contador assíncrono, crescente, de 0 até 5, é mostrado na figura 1.15.

C

0J

0K

C

J1

1

Y0

Y0 1Y

1Y

RK

R

VccVcc

C

J

K

2

22Y

Y2

Vcc

R

000 001 010 011 100 101

Detectorde "6"

Q

Q

Q

Q

Q

Q

0

0

1

1

2

2

Figura 1.15 - Contador Assíncrono - Módulo 6.

1.6. Máxima Freqüência de Operação Nos contadores síncronos, independentemente do módulo, como todos os flip-flops mudam de estado simultaneamente, a máxima freqüência de operação é limitada pelos parâmetros de um flip-flop (fmax, tatraso, tset-up, thold) e pelo atraso do bloco combinatório do próximo estado (considera-se o bloco com maior atraso). O importante, ao se estimar essa freqüência, é que a entrada dos flip-flops (D ou J-K) já esteja estável pelo menos tset-up unidades de tempo antes da ocorrência da borda de atuação do relógio, e deve permanecer estável por pelo menos thold após a ocorrência da borda.

Nos contadores assíncronos, a máxima freqüência de operação depende não só dos parâmetros dos flip-flops, mas também do número de bits, uma vez que o sinal que atua no flip-flop correspondente ao n-ésimo bit somente ocorrerá (n-1).tatraso FF unidades de tempo após o acionamento do bit menos significativo.

Portanto, os contadores síncronos apresentam freqüência máxima de operação maior do que os assíncronos, diferença essa que se acentua à medida que o módulo do contador cresce.

1.7. Contadores Integrados Existem vários tipos de contadores integrados, assíncronos e síncronos. As Tabelas III e IV apresentam alguns contadores da família TTL.

Tabela III - Contadores Assíncronos.

Descrição Carga Paralela Reset Assíncrono Tipo

Decimal

Assíncrona

Fixa Assíncrona

Assincrona

Sim

Sim

Sim

74196

7490

74176

Módulo 16

Assíncrona

Não

Assíncrona

Sim

Sim

Sim

74197

7493

74177

Módulo 12 Não Sim 7492

Page 11: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 11

Tabela IV - Contadores Síncronos.

DESCRIÇÃO Carga Paralela Reset Tipo

Decimal Síncrona

Síncrona

Síncrono

Assíncrono

74162

74160

Decimal

UP / DOWN

Síncrona

Assíncrona

Assíncrona

Não

Assíncrono

Não

74LS168

74192

74190

Módulo 16 Síncrona

Síncrona

Síncrono

Assíncrono

74163

74161

Módulo 16

UP/DOWN

Síncrona

Assíncrona

Assíncrona

Não

Não

Assíncrono

74LS169

74191

74193

1.8. Divisores de Freqüência Uma aplicação muito comum de contadores é a divisão de freqüência de um sinal de relógio qualquer, para obter relógios de freqüência menor.

Um caso particular, mas de grande importância, é aquele em que o sinal resultante tenha onda quadrada, independente ou não da forma de onda do sinal original que deve ser dividido.

Como já analisado em experiências anteriores, o biestável tipo D pode ser utilizado para tal finalidade, como mostra a figura 1.16.

CK

Q

Q

Y Y10

CK

Q

Q

D D

Y0

Y1

f/2

f/4

f

Figura 1.16 - Divisor de Freqüências com o Biestável Tipo D.

Pode-se facilmente constatar e generalizar que os contadores binários, síncronos ou assíncronos, podem ser utilizados para dividir uma freqüência por 2n, onde n é o número de bits do contador. Mesmo que o sinal de relógio não apresente uma forma de onda quadrada, o resultado da divisão será uma forma de onda quadrada, uma vez que a transição dos biestáveis é determinada por uma das bordas do sinal.

Naturalmente, as formas de divisão apresentadas permitem apenas a divisão da freqüência por uma potência de 2. Uma maneira alternativa de dividir uma freqüência por um fator k inteiro e par é apresentada na figura 1.17, utilizando-se a carga paralela síncrona do contador.

Page 12: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 12

Q Q QQ0 1 2 3

CEP TC7474

74163

QD

CK Q

Y1

Y0

CET

CP

0 2 3P1P P PPE

SR

0

Valores da Carga

Figura 1.17 - Divisão da Freqüência de um Sinal por K.

Nesse circuito, pode-se dividir a freqüência do sinal por um fator proporcional ao fator de carga do contador, conforme apresentado na Tabela V.

Tabela V - Relação de Divisão do Circuito da Figura 1.17

Valores da Carga Freqüência P3 P2 P1 P0 Y0 Y1

0 0 0 0 f/16 f/32

0 0 0 1 f/15 f/30

0 0 1 0 f/14 f/28

f: freqüência do sinal de relógio.

0 0 1 1 f/13 f/26

0 1 0 0 f/12 f/24

0 1 0 1 f/11 f/22

0 1 1 0 f/10 f/20

Y0: forma de onda não quadrada.

0 1 1 1 f/9 f/18

1 0 0 0 f/8 f/16

1 0 0 1 f/7 f/14

Y1: forma de onda quadrada.

1 0 1 0 f/6 f/12

1 0 1 1 f/5 f/10

1 1 0 0 f/4 f/8

1 1 0 1 f/3 f/6

1 1 1 0 f/2 f/4

1 1 1 1 - -

Com o mesmo contador utilizado no circuito da figura 1.17, pode-se gerar formas de onda quadradas cuja feqüência corresponde à freqüência do sinal de relógio dividido por 2, 4, 6, 8, 10, 12 e 14, sem o uso do biestável. Para tal, configura-se o contador de forma a gerar o sinal desejado em uma das saídas Q1, não importando a contagem fornecida pelo conjunto. A figura 1.18 apresenta o contador configurado para dividir o sinal de relógio por 6, sendo esse sinal gerado na sua saída Q3.

Page 13: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 13

Q Q QQ0 1 2 3

CEP TC74163

CET

Relógio CP

0 2 3PE P1P P P

f

Yf/6

SR

Figura 1.18 - Divisor por 6.

Pode-se observar na Tabela VI a seqüência de contagem do circuito da figura 1.18.

Tabela VI - Seqüência de Contagem do Contador da Figura 1.18

Q0 Q1 Q2 Q3

0 0 0 0 Carga

0 1 1 0

1 1 1 0

0 0 0 1 Carga

0 1 1 1

1 1 1 1

0 0 0 0 Carga

0 1 1 0

1 1 1 0

0 0 0 1 Carga

0 1 1 1

1 1 1 1

0 0 0 0 Carga

Da Tabela VI pode-se deduzir que a divisão por 6 foi originada por meio da eliminação de alguns estados pelos quais passaria a divisão por 16 (eliminados 10 estados). Além disso os estados eliminados foram tais que Q3 apresentou forma de onda quadrada.

Divisões de freqüência por números inteiros ímpares também podem ser obtidas. A maior parte dos circuitos utilizados com essa finalidade não fornece uma forma de onda quadrada, o que normalmente exigiria circuitos complexos.

1.9. Registradores de Deslocamento O registrador de deslocamento (shift-register) é um dos componentes mais utilizados em sistemas digitais. Tal fato pode ser constatado em muitas calculadoras portáteis, onde cada dígito de um número é deslocado para a esquerda, à medida que outro é inserido. Além da característica de deslocamento, tais componentes apresentam a característica de memorização, da mesma maneira que os biestáveis.

Eles são classificados como circuitos lógicos seqüenciais, uma vez que são construídos a partir de biestáveis. A figura 1.19 apresenta um registrador de 4 bits, contruído a partir de biestáveis tipo D.

Obs: alguns fabricantes usam outros nomes para os pinos no datasheet:

PE = LOAD

CET= EnableT

CEP= EnableP

CP= Clock

TC=Carry

SR= Clear

P0,P1,P2,P3 =A,B,C,D

Q0,Q1,Q2,Q3=Qa,Qb,Qc,Qd

Page 14: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 14

CLR

CK

Q DADO

Relógio

Limpa

CLR

CK

Q

CLR

CK

Q

CK

Q Y 3 Y 2 1 Y Y 0

CLR

D D D D

Figura 1.19 - Registrador de Deslocamento de 4 bits, com Deslocamento para a Direita e Carga em Série.

As formas de onda dos principais sinais são apresentadas na figura 1.20. Como se pode observar, a cada pulso de relógio, o dado é deslocado para a direita. Este tipo de registrador de deslocamento é conhecido como registrador de deslocamento à direita, com carga em série.

Estes tipos de registradores apresentam a desvantagem de consumir muitos pulsos de relógio para se recarregar um estado inicial qualquer.

DADO

1 32 4 5 6 7 8 9 10 11 12 1413

LIMPA

Y0

Y1

Y2

Y3

Figura 1.20 - Diagrama de Tempos do Circuito da Figura 1.19.

Pode-se construir, no entanto, registradores de deslocamento com carga em paralelo, como mostra a figura 1.21. Os sinais de PRESET dos biestáveis são utilizados para a carga dos dados, sempre após o sinal "Limpa" ter sido gerado.

CLR

C K

Relógio

Limpa

CLR

C K

Q0YPR

QPR

1Y

CLR

C K

QPR

CLR

C K

QPRY2 Y3

DDD D

DADOSPARARELOS

Figura 1.21 - Registrador de Deslocamento de 4 bits, com Deslocamento para a Direita e Carga Paralela.

Da mesma forma como ocorre com os contadores, pode-se encontrar registradores de deslocamento integrados, como por exemplo, o 74194, 9300, 7494, 74178, etc.

Page 15: Contadores - Sistemas Digitais 2

EPUSP - PCS 2305/2355 - LABORATÓRIO DIGITAL

Contadores e Registradores (2005) 15

1.10. Pulsos Espúrios em Circuitos Digitais Existem determinadas condições indesejáveis de funcionamento de projetos de sistemas digitais. O equacionamento lógico obtido para a implementação de um projeto é uma ferramenta suficiente para a validação lógica do circuito, mas não leva em conta características físicas dos dispositivos, que podem alterar os resultados teóricos esperados. Alguns parâmetros dos dispositivos são:

• "Delay time" (td - intervalo de tempo decorrido entre uma variação de sinal na entrada e a correspondente variação na saída; toma-se como referência o ponto de 50% do valor de tensão, conforme mostrado na figura 1.22.

Entrada

50%

50%

td

Figura 1.22- Tempo de Atraso.

• "Rise time" (tr) - intervalo de tempo necessário para que um sinal vá de 10% do seu valor em tensão até 90% do seu valor em tensão (figura 1.23).

10%

90%

tr

Figura 1.23 - Tempo de Subida.

• "Fall time" (tf) - intervalo de tempo necessário para que um sinal vá de 90% de seu valor em tensão até 10% do seu valor em tensão (figura 1.24).

t f

10%

90%

Figura 1.24 - Tempo de Descida.

Além dos parâmetros aqui definidos, também devem ser considerados o tempo de preparação (set-up time) e o tempo de manutenção (hold time) já apresentado na Experiência “Circuitos Biestáveis”.

As características acima citadas, aliadas a fatores tais como, o não sincronismo de eventos, podem levar à geração de sinais indesejáveis em projetos aparentemente corretos. Para que se possa contornar essa situação deve-se conhecer profundamente todas as características dos componentes que serão utilizados.