Você está na página 1de 82

Circuitos Sequnciais

Mdulo 13

Prof. Justino Correia

Circuitos Sequnciais

Os circuitos digitais so divididos em duas famlias importantes.

Circuitos combinatrios: As sadas dependem exclusivamente das variveis de entrada. Circuitos sequnciais: As sadas dependem das variveis de entrada, bem como de seus estados anteriores. De forma geral, os circuitos sequnciais operam sob o comando de uma sequncia de pulsos denominada clock.

Circuitos Sequnciais

Circuitos Sequnciais

Os principal bloco de construo dos circuitos sequnciais so os flip-flops (Biestveis). De forma geral os flip-flops so circuitos que apresentam duas sadas Q e Q complementares, entradas de variveis e uma entrada de controle (clock).

Circuitos Sequnciais

Os flip-flops possuem dois estados de sada. Para o flip-flop assumir um destes estados necessria uma combinao das variveis e do pulso de controle(clock). Aps este pulso, o flip-flop permanecer neste estado at chegada de uma nova entrada de clock e, ento, de acordo com as variveis de entrada, poder mudar ou no de estado.

Circuitos Sequnciais

Circuitos lgicos sequenciais


Definio de circuito sequencial Latches (bsculas)


Tipo SR Tipo SR com controlo Latch D

Flip-flops
Flip-flops SR e T Edge Trigered Flip-Flop JK e D Edge Trigered

Circuitos Sequenciais

Definio um circuito diz-se sequencial quando as suas sadas dependem no s das entradas, mas tambm do estado anterior do circuito. Circuito sequencial
Circuito combinatrio Sadas Elementos de memria

Entradas

Circuitos Sequenciais

Definio um circuito diz-se sequencial quando as suas sadas dependem no s das entradas, mas tambm do estado anterior do circuito.

Circuitos Sequenciais

Os circuitos sequenciais podem ser:

Assncronos para qualquer instante de tempo as sadas dependem das entradas e do estado do circuito.

Sncronos as sadas mantm-se inalteradas em certos intervalos de tempo.

Latches e Flip-Flops

10

Latches

Latch SR

11

Latch SR

Latch SR

12

Latches

Latch SR
Esquema funcionamento Tabela de verdade
Flip-flop SR
S 0 0 1 1 R 0 1 0 1 Qt+1 Qt 0 1 ?

13

Latches

Latch SR Resumo das operaes


S=0 e R=1 Reset (Q=0; Q=1) S=1 e R=0 Set (Q=1; Q=0) S=0 e R=0 Manter o estado anterior S=1 e R=1 No utilizado, pois pode conduzir a um estado indefinido

14

Latches

15

Latches

Introduzindo uma varivel de controlo C possvel melhorar o armazenamento da informao

Este latch SR s permite operaes Set e Reset quando a varivel C est no nvel lgico 1.
16

Latches

17

Latches

18

Latches

Latch D

C 0 1 1

D X 0 1

Qt+1 Qt 0 1

Manter estado Reset Set

S h mudanas de estado quando o relgio est activo, e a sada igual ao valor da entrada de dados. Chama-se a esta caracterstica, transparente.
19

Latch D

20

Flip-Flops

21

Flip-flop D Edge-Triggered
Funcionamento: Clk 0 1 D x x 0 1 Qt+1 Qt Qt 0 1 Smbolos:
D Q

Negative edge triggered

Positive edge triggered


D Q

Um FF edge-triggered s reage quando ocorre uma transio no nvel lgico do sinal de relgio (Clock) Neste exemplo, o FF reage nos instantes em que Clock varia de 1 para 0 negative edgetriggered.

22

Flip-flops

Flip-flop D Edge-Triggered
Tabela caracterstica
C D 0 1 Qt+1 0 1
D Q

Positive edge triggered

23

Flip-flop JK Edge-Triggered
Funcionamento (positive-edge)
Clk J 0 0 1 1 K 0 1 0 1 Qt+1 Qt 0 1
Qt

Obs. Manter estado anterior Reset Set Complementar estado anterior

Smbolos:
J Q J Q

Positive-edge
K K

Negative-edge

24

Sinal de Controlo (Clock)


nvel 1 borda negativa (descida)

borda positiva (subida) nvel 0

Exerccio

Completar o diagrama de tempos (terico) abaixo com os valores de Q e Q, considerando os valores dos demais sinais e o funcionamento do flip-flop mostrado no desenho
Ck

PR J Q Ck K CLR Q

J K PR CLR Q

Tabelas de Funcionamento
Sintetizando...

Flip-flop JK
J 0 0 1 1 K 0 1 0 1 Qt+1 Qt 0 1 Qt
K J Q

Flip-flop D
D 0 1 Qt+1 0 1
D Q

Importantes para a anlise e o projecto de circuitos sequenciais.


27

Flip-flop T
Funcionamento: Clk 1 1 T 0 1 Qt+1 Smbolo:

28

Resumindo

Tabelas de excitao
Flip-flop JK
Q t Qt+1 0 0 1 1 0 1 0 1 J 0 1 X X K X X 1 0

Flip-flop SR
Q t Qt+1 0 0 1 1 0 1 0 1 S 0 1 0 X R X 0 1 0

29

Projecto com Flip-flops JK

Tabelas de excitao
Flip-flop D
Qt Qt+1 0 0 1 1 0 1 0 1 D 0 1 0 1

Flip-flop T
Qt Qt+1 0 0 1 1 0 1 0 1 T 0 1 1 0

30

Entradas assncronas

31

Mquinas de Estado Finitas

32

Mquina Estados Finitos

Estados determinado pelos valores possveis nos elementos de armazenamento de sequncias Transies mudana de estado Relgio controla quando o estado pode mudar ao controlar os elementos de armazenamento

33

Mquinas Sequenciais Finitas Simples

Os contadores so mquinas finitas simples. Diagrama de estados de um contador binrio crescente

FSM Contador de 3 bits simples

FSM Contador complexo

Contadores com auto - inicio

Estados de start-up - Quando feito o power-up, o contador por ir para um estado no utilizado ou invlido; Soluo Projetar os contadores nos quais os estados invlidos tenham transies para um estado vlido

Contadores com auto - inicio

Contadores com auto - inicio

Anlise de Circuitos Sequenciais

Ferramentas para anlise e projecto de circuitos sequenciais

Equaes de entrada dos flip-flops e das sadas do circuito Tabela de transio de estados do circuito Diagrama de estados

40

Projecto

Anlise

Anlise de Circuitos Sequenciais

Diagrama de estados
00,11 01,10 0/0 01,10 1/1 00,11

As bolas representam os estados

A cada estado esto associados os valores das sadas a cada transio esto associados valores das entradas
41

As setas representam as transies

Anlise de Circuitos Sequenciais

Tabela de transio de estados


Prximo estado X 0 1 0 1 Q1 0 1 0 1 Q0 0 0 1 1 Q0 0 0 1 1

Estado actual Q1 0 0 0 0

1
1 1 1

0
0 1 1

0
1 0 1

1
0 1 0

0
1 1 0
42

Anlise de Circuitos Sequenciais

Diagrama de estados
0 1 00/0

10/1

11/0 1 0

01/1

0
43

Projecto de Circuitos Sequenciais

44

Modelo a seguir

Entradas

Lgica Combinatria

Flip-flops

Lgica Combinatria

Sadas

Estado

Os valores das sadas dependem apenas do estado

As entradas influenciam qual ser o prximo estado

45

Exemplo de um projecto
Pretende-se obter um circuito que implemente o seguinte diagrama de transio de estados.
1 00/0 1 01/0

0 0

Uma entrada: X Uma sada: Y 4 estados 2 FFs

11/1 0

10/0

0
46

Exemplo de um projecto

Tabela de transio de estados


Estado actual Q1 0 0 0 0 1 1 1 1 Q0 0 0 1 1 0 0 1 1 X 0 1 0 1 0 1 0 1 Prximo estado Q1 1 0 1 1 1 0 1 0 Q0 1 1 1 0 1 0 1 0
47

Usar FF D ou FF JK?

Feita a tabela, escolhe-se o tipo de flip-flops a usar no circuito:

Flip-flops D

O projecto mais simples, mas o circuito resultante geralmente mais complicado (tem mais portas lgicas)

Flip-flops JK

O projecto d mais trabalho (mais equaes), mas o circuito resultante normalmente mais simples
48

Projecto com flip-flops D


Tabela de excitao do FF D Qt 0 0 1 1 Qt+1 0 1 0 1 D 0 1 0 1

A tabela mostra o que se tem colocar na entrada D, de modo a ter a transio de estados indicada; Com base na tabela, pode-se verificar que o valor a colocar entrada D o que se pretende para o prximo estado.
49

Projecto com flip-flops D

Q0X Q1 0 1

Equaes de entrada nos FFs


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

Q1 0 1

00 1 1

01 1 0

11 0 0

10 1 1

D1 Q1Q0 X

Equao da sada
Q1 0 0 1 1 Q0 0 1 0 1

D0 Q1 Q0 X
Y 0 0 0 1

Y Q1Q0
50

Projecto com flip-flops D

X
D1 Q1 D0 Q0

Circuito resultante
Y

Clock

51

Projecto com flip-flops JK


Tabela de excitao do FF JK

Qt
0 0 1 1

Qt+1
0 1 0 1

J
0 1 X X

K
X X 1 0

A tabela mostra o que se tem colocar nas entradas J e K, de modo a ter a transio de estados indicada; O X representa indiferena, i.e., tanto faz ser 1 ou 0
52

Projecto com flip-flops JK

Q1 0 0 0 0 1 1 1 1

Tabela de transio de estados


Prximo estado X 0 1 0 1 0 1 0 1 Q1 1 0 1 1 1 0 1 0 Q0 1 1 1 0 1 0 1 0 Flip-flops J1K1 1X 0X 1X 1X X0 X1 X0 X1 J0K0 1X 1X X0 X1 1X 0X X0 X1
53

Estado actual Q0 0 0 1 1 0 0 1 1

Projecto com flip-flops JK

Q0X Q1 0 1 00 1 x 01 0 x 11 1 x 10 1 x

Equaes de entrada nos FFs


Q0X Q1 00 0 1 1 1 01 1 0 11 x x 10 x x

J1 X Q0

J0 X Q1

Q0X Q1 0 1 00 x 0 01 x 1 11 x 1 10 x 0

Q0X Q1 00 0 1 x x 01 x x 11 1 1 10 0 0

K1 X

K0 X

Equao de sada
Y Q1Q0
54

Projecto com flip-flops JK

Circuito
Y
J1 Q1 J0 Q0

K1

K0

Clock

55

Exemplos

Detector de sequncias de 0s
Pretende-se projectar um circuito sequencial com uma entrada X pela qual entram bits ao mesmo ritmo do sinal de relgio.

A sada Y do circuito dever ser 1 quando apresentado o valor 0 entrada durante 2 ou mais impulsos de relgio consecutivos. Nos restantes casos, a sada dever ser 0.
56

Exemplos

1 0 A/0 1 0 B/0

Diagrama de transio de estados

Codificao dos estados:


A 00 B 01 C 10

C/1

3 estados 2 Flip-flops
57

Exemplos

Tabela de transio de estados


Prximo estado X 0 1 0 1 Q1 0 0 1 0 Q0 1 0 0 0 Q0 0 0 1 1

Estado actual Q1 0 0 0 0

1
1 1 1

0
0 1 1

0
1 0 1

1
0 x x

0
0 x x
58

Exemplos

Projecto com flip-flops JK


Prximo estado X 0 1 0 1 0 1 0 1 Q1 0 0 1 0 1 0 x x Q0 1 0 0 0 0 0 x x J1 0 0 1 0 x x x x K1 x x x x 0 1 x x J0 1 0 x x 0 0 x x K0 x x 1 1 x x x x
59

Estado actual Q1 0 0 0 0 1 1 1 1 Q0 0 0 1 1 0 0 1 1

Exemplos

Q0X Q1 0 1 00 0 x 01 0 x 11 0 x 10 1 x

Equaes de entrada nos flip-flops


Q0X Q1 00 0 1 1 0 01 0 0 11 x x 10 x x

J1 Q0 X

J0 Q1 X

Q0X Q1 0 1 00 x 0 01 x 1 11 x x 10 x x

Q0X Q1 00 0 1 x x 01 x x 11 1 x 10 1 x

K1 X

K0 1

60

Exemplos

Equao da sada
Sada Y 0 0 1 x
Q0 Q1 0 1 0 0 1 1 0 x

Estado actual Q1 0 0 1 1 Q0 0 1 0 1

Y Q1

61

Exemplos

Circuito resultante
Y

X
J1 Q1
Vcc

J0

Q0

K1

K0

Clock

62

Contadores

63

Contadores

Contador

Circuito sequencial que segue uma transio de estados pr-programada.

Contador binrio segue a sequncia dos nmeros binrios;

Quanto ao princpio de funcionamento, temos:


ripple a sada de cada flip-flop utilizada como sinal de relgio para accionar outro flip-flop sncrono o sinal de relgio aplicado directamente a todos os flip-flops

64

Contadores

Contador sncrono
Vcc

J K

Q0

J K

Q1

J K

Q2

J K

Q3

Reset Clock

Neste contador todos os flip-flops reagem ao mesmo tempo, o que evita problemas com temporizaes

CTR4
Q0 Q1 Q2 Q3

65

Contadores

Contador ripple
Vcc Vcc Vcc Vcc

Q0

J K

Q1

J K

Q2

J K

Q3

Clock
K

Reset

Por cada 2 impulsos na entrada de relgio de um FF, ocorre um impulso no relgio do FF seguinte Os FFs no reagem todos ao mesmo tempo 66 isso pode originar problemas

Contadores

Operaes que podem ser feitas


Inicializar a 0 - Clear Contar / parar a contagem Enable Carregamento paralelo Load Controlar a direco da contagem (crescente ou decrescente) Up/Down

67

Contadores

Exemplo: contador com carregamento paralelo (Load) e controlo de contagem (Count Enable)
CTR4
Load CE D0 D1 D2 D3 Q0 Q1 Q2 Q3

Load
0 0 1

CE Funo
0 1 x Mantm o estado Conta normalmente D Q (Carrega valor)

68

Divisor de Frequncia

69

Exemplos

Divisor de frequncia
Pretende-se projectar um circuito sequencial com duas entradas, designadas S1 e S0. Consoante os valores S1S0 apresentados entrada, a sada dever seguir uma das seguintes sequncias binrias:

Entradas Entradas Entradas Entradas

00 01 10 11

Sequncia 10101010 Sequncia 100100100 Sequncia 11001100 No especificado.

Na prtica, e tendo em conta as formas de onda da sada, este circuito comporta-se como um divisor da frequncia de relgio.
70

Exemplos

Diagrama de transio de estados


00,01

00/1
00,10 10

01/0

Entradas: S1 e S0 Sada: Y
01

Variveis de estado: Q1 e Q0

10 00,01

11/1
10

00,01

10/0

71

Exemplos

Tabela de transio de estados


Estado Actual Q1 Q0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 Entradas S1 S0 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 Prximo Estado Q1 Q0 0 1 0 1 1 1 X X 0 0 1 0 0 0 X X 0 0 0 0 0 1 X X 0 1 0 1 1 0 X X
72

Exemplos

S1S0 Q1Q0 00 01 11 10 00 0 0 0 0 01 0 1 0 0 11 X X X X 10 1 0 1 0

Equaes de entrada dos flip-flops


D1
S1S0 Q1Q0 00 01 11 10 00 1 0 1 0 01 1 0 1 0 11 X X X X 10 1 0 0 1

D0

D1 Q1Q0S1 Q1Q0S1 Q1Q0S0 S1 Q1 Q0 Q1Q0S0

D0 Q1Q0 Q0S1 Q1Q0 S1


73

Exemplos

Equao da sada
Sada Y 1 0 0 1
Y Q1 Q0
0 1 1 0 0 1 Q1 Y Q0 0 1

Estado actual Q1 0 0 1 1 Q0 0 1 0 1

74

Exemplos

Circuito resultante

S1

D1

Q1

D0 CP

Q0

S0

CP

Y CLK

75

Registos

76

Registos

Registo Conjunto de flip-flops e portas lgicas adicionais que permite o armazenamento e a manipulao de informao

Flip-flops guardam a informao

Um flip-flop por cada bit que se pretende guardar

Lgica adicional permite operaes sobre os dados

Exemplos:

Inicializar os valores do registo a zero CLEAR ou RESET Carregar o registo com novos dados LOAD 77 Deslocar os bits dentro do registo SHIFT

Clear

Exemplo: registo de 4 bits com CLEAR Smbolo


REG

D0

Q0 R

D1

Q1 R

D2

Q2 R

Clear D0 D1 D2 D3 Q0 Q1 Q2 Q3

D3 Clock

Q3 R

Clear

78

Carregamento paralelo
REG
Load D0 D1 D2 D3 Q0 Q1 Q2 Q3
Load D0
Mux 2-1 S I0 I1

Q0

Mux 2-1 S

Q1

D1

I0 I1

Mux 2-1 S

Q2

Load Funo 0 Manter o estado

D2

I0 I1

D Q (Carrega valor)
D3 Clock

Mux 2-1 S I0 I1

Q3

79

Deslocamento

Um registo de deslocamento permite deslocar a informao armazenada numa dada direco.

Deslocamento para a esquerda (shift left) (direco do bit mais significativo)

Exemplo: 0010 1101 => 0101 101b (b um bit que entra)

Deslocamento para a direita (shift right) (direco do bit menos significativo)

Exemplo: 0010 1101 => b001 0110

80

Deslocamento

Exemplo: registo de deslocamento srie/paralelo


REG
D Q0
SI Q0 Q1 Q2 Q3

Entrada srie (SI)

Q1

Q2

Neste registo, cada impulso do relgio causa um deslocamento para a esquerda. O objectivo distribuir os bits que entram em srie na entrada SI pelo conjunto de linhas Q0 a Q3.
81

D Clock

Q3

FIM

Você também pode gostar