meec - fenix.tecnico.ulisboa.pt · contador johnson contador johnson x o contador johnson usa 2n...

14
SISTEMAS DIGITAIS (SD) MEEC Acetatos das Aulas Te´ oricas Vers˜ ao 3.0 - Portuguˆ es Aula N o 17: ıtulo: Contadores Sum´ ario: Contadores s´ ıncronos (contadores de m´ odulo 2n, projecto de contadores, frequˆ encia m´ axima de funcionamento, situa¸c˜ ao de ”lock-out”, simbologia, contador em anel, contador Johnson, linear feedback shift-register); Con- tadores ass´ ıncronos (contadores por pulsa¸c˜ ao); Contadores ass´ ıncronos vs. ıncronos. 2014/2015 [email protected]

Upload: vuque

Post on 07-Dec-2018

246 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

SISTEMAS DIGITAIS (SD)

MEEC

Acetatos das Aulas Teoricas

Versao 3.0 - Portugues

Aula No 17:

Tıtulo: Contadores

Sumario: Contadores sıncronos (contadores de modulo 2n, projecto de contadores,frequencia maxima de funcionamento, situacao de ”lock-out”, simbologia,contador em anel, contador Johnson, linear feedback shift-register); Con-tadores assıncronos (contadores por pulsacao); Contadores assıncronos vs.sıncronos.

2014/2015

[email protected]

Page 2: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Sistemas Digitais (SD)

Contadores

Aula Anterior

Na aula anterior:

Registos

Registos simples

Banco de registos

Registos de deslocamento

Registos multimodo

Prof. Nuno Roma Sistemas Digitais 2014/15 2

Page 3: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Planeamento

Sistemas Digitais 2014/15

SEMANA TEÓRICA 1 TEÓRICA 2 PROBLEMAS/LABORATÓRIO

15/Set a 20/Set Introdução Sistemas de Numeração e Códigos

22/Set a 27/Set Álgebra de Boole Elementos de Tecnologia P0

29/Set a 4/Out Funções Lógicas Minimização de Funções Booleanas (I) L0

6/Out a 11/Out Minimização de Funções Booleanas (II) Def. Circuito Combinatório; Análise Temporal P1

13/Out a 18/Out Circuitos Combinatórios (I) – Codif., MUXs, etc. Circuitos Combinatórios (II) – Som., Comp., etc. L1

20/Out a 25/Out Circuitos Combinatórios (III) - ALUsLinguagens de Descrição e Simulação de

Circuitos DigitaisP2

27/Out a 1/Nov Circuitos Sequenciais: Latches Circuitos Sequenciais: Flip-Flops L2

3/Nov a 8/Nov Caracterização Temporal Registos P3

10/Nov a 15/Nov Revisões Contadores L3

17/Nov a 22/Nov Síntese de Circuitos Sequenciais: DefiniçõesSíntese de Circuitos Sequenciais: Minimização

do número de estadosP4

24/Nov a 29/NovSíntese de Circuitos Sequenciais: Síntese com

ContadoresMemórias L4

1/Dez a 6/DezMáq. Estado Microprogramadas: Circuito de

Dados e Circuito de Controlo

Máq. Estado Microprogramadas:

MicroprogramaP5

8/Dez a 13/DezCircuitos de Controlo, Transferência e

Processamento de Dados de um ProcessadorLógica Programável L5 (1ª Parte)

15/Dez a 19/Dez P6 P6 L5 (2ª Parte)

Teste 1

Prof. Nuno Roma 3

Sumário

Tema da aula de hoje: Contadores síncronos

Contadores de módulo 2n

Projecto de contadores

Frequência máxima de funcionamento

Situação de “lock-out”

Simbologia

Contador em anel

Contador Johnson

Linear feedback shift-register

Contadores assíncronos Contadores por pulsação

Contadores assíncronos vs. síncronos

Bibliografia: M. Mano, C. Kime: Secções 7.6

G. Arroz, J. Monteiro, A. Oliveira: Secção 6.6

Prof. Nuno Roma Sistemas Digitais 2014/15 4

Page 4: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Contador Binário

Um contador binário é um registo que, por aplicação sucessiva de

impulsos de relógio, segue uma sequência de estados

correspondente à numeração binária.

CLK

Q0

Q1

Q2

Q3

0

0

0

0

1

0

0

0

0

1

0

0

1

1

0

0

0

0

1

0

1

0

1

0

0

1

1

0

1

1

1

0

0

0

0

1

0 1 2 3 4 5 6 7 8

Prof. Nuno Roma Sistemas Digitais 2014/15 5

Contador Binário

1K

1J

C1

1K

1J

C1

1K

1J

C1

1K

1J

C1

& &1

Q0

Q1

Q2

Q3

CLK

CLK

Q0

Q1

Q2

Q3

0

0

0

0

1

0

0

0

0

1

0

0

1

1

0

0

0

0

1

0

1

0

1

0

0

1

1

0

1

1

1

0

0

0

0

1

0 1 2 3 4 5 6 7 8

Contador Binário (cont.)

Exemplo:

Utilizando FFs Toggle (p.ex. JK

com J = K), o projecto do circuito

aproveita o facto de, na contagem

binária, o Q0 estar sempre a variar,

o Q1 variar quando Q0 = 1, o Q2

variar quando Q0 = Q1 = 1, etc.

Prof. Nuno Roma Sistemas Digitais 2014/15 6

Contador Binário

Page 5: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Contador Binário (cont.)

A estrutura do contador é facilmente generalizável para contadores

módulo 2N.

No entanto, esta estrutura está limitada pelo facto de o fan-in das

portas AND ir aumentando sucessivamente até à última porta, que tem

N entradas.

A frequência máxima de relógio a que este contador pode funcionar é:

1K

1J

C1

1K

1J

C1

1K

1J

C1

1K

1J

C1

& &1

Q0

Q1

Q2

Q3

CLK

1K

1J

C1

&

Q7

suFFpANDpFF tttTf

11

min

max

Prof. Nuno Roma Sistemas Digitais 2014/15 7

Contador Binário

Contador Binário (cont.)

Aproveitando os produtos parciais já realizados, é possível modificar a

estrutura do contador para usar apenas portas AND de 2 entradas,

mantendo a funcionalidade.

No entanto, o caminho crítico entre FFs aumenta substancialmente,

limitando a frequência máxima a que o contador pode funcionar.

1K

1J

C1

1K

1J

C1

1K

1J

C1

1K

1J

C1

& &1

Q0

Q1

Q2

Q3

CLK

1K

1J

C1

&

Q7

suFFpANDpFF ttntTf

)2(

11

min

max

Prof. Nuno Roma Sistemas Digitais 2014/15 8

Contador Binário

Page 6: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

1K

1J

C1

Q0

T

1D

C1

Q0

=1T

& &

CLK

1D

C1

Q0

=1 1D

C1

Q1

=1 1D

C1

Q2

=1 1D

C1

Q3

=1

1

Contador Binário com Flip-Flops tipo D

O mesmo contador pode ser realizado definindo um FF Toggle a

partir de FF D e aproveitando directamente a mesma estrutura.

Prof. Nuno Roma Sistemas Digitais 2014/15 9

Contador Binário

M1[Load]

C5/2,3,4+

1, 2D

CTR DIV 16

G4

G3

M2[Count]

5CT=0

1,5D [1]

[2]

[4]

[8]

3CT=15

[1]

CTR DIV16

CT=0

M1 [Load]

M2 [Count]

G3

C5/2,3+

3CT=15

[2]

[4]

[8]

1,5D

Contador binário bidireccional,

módulo 16, com carregamento

paralelo e clear assíncrono

Contador binário, módulo 16,

com carregamento paralelo e

clear assíncrono

Contador binário, módulo 16,

com carregamento paralelo e

clear síncrono

Exemplos de Componentes

Prof. Nuno Roma Sistemas Digitais 2014/15 10

Contador Binário

Page 7: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

15 0

1

213

12

11

3

4

5

6

10

9

8 7

14

Contador Decimal

Um contador decimal pode ser realizado directamente a partir de um contador módulo

16, forçando a reinicialização do contador após o estado 9.

O sinal DETECTA_NOVE pode ser utilizado como indicador de fim de contagem.

Prof. Nuno Roma Sistemas Digitais 2014/15 11

Contador Decimal

Contadores

Contador com 2 “saltos” na contagem

Este contador conta de 0 a 9, passa para o estado 11, conta de 11 a

13, e volta ao estado 0.

Prof. Nuno Roma Sistemas Digitais 2014/15 12

Page 8: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

M1[Load]

C5/2,3,4+

CTR DIV 16

G4

G3

M2[Count]

5CT=0

1,5D [1]

[2]

[4]

[8]

3CT=15

CLK

ENABLE_H

COUNT_H

Q0

Q1

Q2

Q3

D0

D1

D2

D3

M1[Load]

C5/2,3,4+

CTR DIV 16

G4

G3

M2[Count]

5CT=0

1,5D [1]

[2]

[4]

[8]

3CT=15

Q4

Q5

Q6

Q7

D4

D5

D6

D7

RESET_L

Ligação em Série de Contadores (1)

Um contador módulo 256 pode ser realizado ligando em série 2 contadores módulo 16.

O 2º contador só é habilitado quando o 1º chega ao fim de contagem (o sinal de fim de

contagem do 1º contador está ligado ao enable do 2º contador)

Prof. Nuno Roma Sistemas Digitais 2014/15 13

Contadores

Ligação em Série de Contadores (2)

Este contador faz uma sequência de contagem de …33 a 161

Prof. Nuno Roma Sistemas Digitais 2014/15 14

Contadores

Page 9: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

1000 0100 0010 0001

1D

C1

1D

C1

1D

C1

1D

C1CLK

suFFpFF ttTf

11

min

max

Contador em Anel

Contador em Anel – “Ring Counter”

A ligação de N flip-flops em cascata, como registo de deslocamento, pode

também ser usada como um contador simples, usando o mínimo de

hardware.

O contador evolui segundo a seguinte sequência de 4 estados e depois

repete:

O contador é muito rápido (não existem portas

lógicas no caminho entre FFs)…,

… mas é ineficiente em termos do número total de estados de contagem

disponíveis (só usa N estados, dos 2N estados disponíveis).

Prof. Nuno Roma Sistemas Digitais 2014/15 15

Contadores: “LOCK-OUT”

Estados de LOCK-OUT: no caso de não serem utilizados todos os

estados disponíveis, pode ocorrer a situação do contador se

encontrar num estado não desejado (fora da sequência de contagem)

devido a ruído no circuito ou à não imposição de estado inicial.

Nessa situação ou o contador entra na sequência de contagem

pretendida ou fica indefinidamente no exterior (Lock-Out).

Exemplo com possibilidade de Lock-Out:

0000 0101 1010

1000 0100 0010 0001

Lock-Out

Prof. Nuno Roma Sistemas Digitais 2014/15 16

Page 10: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Contadores: “LOCK-OUT”

Estados de LOCK-OUT: no caso de não serem utilizados todos os

estados disponíveis, pode ocorrer a situação do contador se

encontrar num estado não desejado (fora da sequência de contagem)

devido a ruído no circuito ou à não imposição de estado inicial.

Nessa situação ou o contador entra na sequência de contagem

pretendida ou fica indefinidamente no exterior (Lockout).

Exemplo sem possibilidade de Lock-Out: o contador acabará sempre

por entrar na sequência pretendida

Prof. Nuno Roma Sistemas Digitais 2014/15 17

Lock-Out

1D

C1

1D

C1

1D

C1

1D

C1CLK

& & &INIT

1D

C1

S

1D

C1

R

1D

C1

R

1D

C1

R

CLK

INIT

Alternativas de

Inicialização no

Estado “1000”:

Contador em Lock-Out:

Solução 1: impor a transição de qualquer estado externo para um

estado da sequência de contagem

Solução 2: considerar uma entrada extra, de inicialização, que

coloque o sistema num dos estados de contagem pretendido.

Prof. Nuno Roma Sistemas Digitais 2014/15 18

Lock-Out

Page 11: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

1D

C1

S

1D

C1

R

1D

C1

R

1D

C1

R

CLK

INIT

1000 1100 1110 1111

0000 0001 0011 0111

Contador Johnson

Contador Johnson

O contador Johnson usa 2N dos 2N estados disponíveis, mantendo a

rapidez do contador em anel.

Prof. Nuno Roma Sistemas Digitais 2014/15 19

1D

C1

S

1D

C1

R

1D

C1

R

1D

C1

R

CLK

INIT

=1

1000 0100 0010 1001

0001 0011 0111

1100 0110 1011 0101

1111 1110 1101 1010

0000

Linear Feedback Shift-Register

Linear Feedback Shift-Register (LFSR)

O LFSR usa 2N-1 dos 2N estados disponíveis, usando apenas uma

porta lógica adicional.

Prof. Nuno Roma Sistemas Digitais 2014/15 20

Page 12: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

1K

1J

C1

1K

1J

C1

1

Q0

Q1

CLK

1

1K

1J

C1

Q2

1

1K

1J

C1

Q3

1

CLK

Q0

Q1

Q2

Q3

0 1 0 1 0 1 0 1 0 1

0 0 1 1 0 0 1 1 0 0

0 0 0 0 1 1 1 1 0 0

0 0 0 0 0 0 0 0 1 1

0 1 2 3 4 5 6 7 8 9

Contador Assíncrono

Contadores Assíncronos por Pulsação – “Ripple Counters”

Os contadores por pulsação são extremamente simples de realizar.

No entanto, o facto de serem assíncronos (os FF não estão em sincronismo)

torna-os pouco fiáveis, por dependerem dos atrasos de propagação do sinal.

Prof. Nuno Roma Sistemas Digitais 2014/15 21

Contadores Assíncronos vs. Síncronos

No contador assíncrono, as mudanças de estado não ocorrem todas na

transição de relógio!

Exemplo: na transição de 7 para 8, o contador passa sucessivamente por vários

estados intermédios.

CLK

Q0

Q1

Q2

Q3

tP

tP

tP

tP

1

1

1

0

0

0

0

1

CLK

Q0

Q1

Q2

Q3

tP

tP

tP

tP

4tP

1

1

1

0

0

0

0

1

6 4 07 8Contagem

Contador AssíncronoContador Síncrono

Contador Assíncrono

Prof. Nuno Roma Sistemas Digitais 2014/15 22

Page 13: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Contadores Assíncronos vs. Síncronos

Quanto mais FFs existirem, mais o bit de maior peso demora a transitar, o

que torna os contadores por pulsação de grande dimensão muito lentos (o

que limita, neste caso, o período de relógio).

As realizações assíncronas são, portanto e genericamente, de evitar.

CLK

Q0

Q1

Q2

Q3

tP

tP

tP

tP

1

1

1

0

0

0

0

1

CLK

Q0

Q1

Q2

Q3

tP

tP

tP

tP

4tP

1

1

1

0

0

0

0

1

6 4 07 8Contagem

Contador AssíncronoContador Síncrono

Prof. Nuno Roma Sistemas Digitais 2014/15 23

Contador Assíncrono

Próxima Aula

Tema da Próxima Aula:

Definição de circuito sequencial síncrono

Máquinas de Mealy e de Moore

Especificação de circuitos sequenciais síncronos:

Diagrama de estados

Projecto de circuitos sequenciais síncronos:

Codificação dos estados

Tabela de transição de estados

Determinação das funções lógicas de saída e estado seguinte

Prof. Nuno Roma Sistemas Digitais 2014/15 24

Page 14: MEEC - fenix.tecnico.ulisboa.pt · Contador Johnson Contador Johnson X O contador Johnson usa 2N dos 2 N estados disponíveis, mantendo a rapidez do contador em anel. Prof. Nuno Roma

Agradecimentos

Algumas páginas desta apresentação resultam da compilação de várias

contribuições produzidas por:

Guilherme Arroz

Horácio Neto

Nuno Horta

Pedro Tomás

Prof. Nuno Roma Sistemas Digitais 2014/15 25