Anda di halaman 1dari 10

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 1/10

Circuitos sequenciais sncronos


Os circuitos sequenciais sncronos, tambm designados por mquinas sequenciais sncronas ou mquinas de estados, utilizam clulas de memria sncronas que definem, em qualquer instante, o estado do sistema.

Modelo geral
Em qualquer circuito sequencial sncrono, identificvel: - uma unidade de memria, constituda por um nmero finito de clulas de memria que implementam a funo de memria do sistema; - um descodificador de sada, constitudo por um circuito combinacional responsvel pela implementao das sadas do sistema; - um descodificador de estado seguinte, tambm designado por descodificador de entrada, constitudo por um circuito combinacional que gera as entradas da unidade de memria.

Variveis de entrada Descodificador de estado seguinte Clulas de memria sncronas Descodificador de sada

Variveis de sada

Variveis de excitao (estado seguinte)

CLK

Variveis de estado (estado presente)

Variveis do modelo geral


Variveis de entrada Variveis de excitao = sadas do descodificador de estado seguinte = entradas das clulas de memria sncronas (estado seguinte) = f(Variveis de entrada, Variveis de estado) Variveis de estado = sadas das clulas de memria sncronas (estado presente) Variveis de sada = sadas do descodificador de sada

Mquina de estados finitos


Circuito sequencial sncrono, constitudo por um nmero finito de clulas de memria que reagem mesma vertente do sinal de relgio (CLK) comum a todas as clulas.

Mquina de Mealy
Variveis de sada = sadas do descodificador de sada = f(Variveis de entrada, Variveis de estado). O facto de existirem entradas que alimentam directamente o descodificador de sada introduz um comportamento assncrono nas sadas.

Mquina de Moore
Variveis de sada = sadas do descodificador de sada = f(Variveis de estado). As variveis de sada dependem apenas das variveis de estado, pelo que a alterao de estado nas sadas encontra-se sincronizada com o sinal de relgio.

Entradas adicionais assncronas


Alguns circuitos tm uma ou mais entradas assncronas que, normalmente, efectuam a inicializao ou colocam o sistema num estado desejado.

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 2/10

Anlise de circuitos sequenciais sncronos(Mquinas de estados finitos)


A partir do diagrama lgico, pretende-se obter uma descrio funcional do circuito, traduzida num diagrama de estados e, quando possvel, numa descrio verbal.

Mtodo sistematizado de anlise


1- Considerar as entradas assncronas de forma independente do restante diagrama lgico. 2- Identificar os elementos do circuito de acordo com o modelo geral: descodificador de estado seguinte, unidade de memria, descodificador de sada, variveis de entrada, variveis de excitao, variveis de estado e variveis de sada. 3- Determinar: as expresses das funes lgicas das variveis de excitao que dependem das variveis de entrada e das variveis de estado (funes de excitao); as expresses das funes lgicas das variveis de sada que dependem das variveis de estado e das variveis de entrada(funes de sada). 4- Construir a tabela de estados, tambm designada por tabela de transio de estados. 5- Construir, a partir da tabela de estados, o diagrama de estados. 6- Determinar, quando possvel, uma descrio verbal para o comportamento funcional do circuito.

Tabela de estados (tabela de transio de estados)


Variveis de estado (Estado presente) Variveis de entrada Variveis de excitao (funes de excitao) Variveis de estado (Estado seguinte) Variveis de sada (funes de sada)

Como preencher a tabela de estados? 1. Considerar todas as combinaes possveis dos valores binrios para as variveis de estado e variveis de entrada (coluna 1 e 2 da tabela). Sendo N o nmero de variveis de estado e de entrada, N obtm-se 2 combinaes distintas destas variveis. 2. Com base nas funes lgicas (funes de excitao) das variveis de excitao, preencher a coluna 3 da tabela de estados. 3. Com base nos valores das variveis de excitao (coluna 3 = entradas dos flip-flops) e as tabelas funcionais ou as equaes caractersticas dos flip-flops, determinar o estado seguinte (coluna 4). 4. Com base nas funes lgicas (funes de sada) das variveis de sada, preencher a coluna 5 da tabela de estados. Note-se que o preenchimento o resultado da avaliao das funes para as combinaes de valores definidos na coluna 1(estado presente) e 2(variveis de entrada).

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 3/10

Diagrama de estados
O diagrama de estados uma grafo orientado, constitudos por ns, representativos dos estados, e por arcos orientados, representativos das transies entre estados. Constitui uma representao grfica dos estados e transies entre estados de um circuito sequencial sncrono. Permite uma melhor leitura/interpretao do comportamento funcional deste tipo de circuitos. A informao contida no diagrama de estados acompanhada de uma legenda, de modo a associar os elementos grficos com as variveis do circuito sequencial sncrono.

Representao grfica dos estados Cada estado representado por um n (crculo), com a informao que lhe est associada. Num circuito N N sequencial sncrono com N variveis de estado, o diagrama de estados constitudo por 2 estados distintos (2 Ns). Mquina de Moore Estado/Sadas Neste tipo de mquina, as variveis de sada encontram-se associadas ao prprio estado, dado serem funo apenas das variveis de estado. Estado = Designao ou cdigo de estado ( valores lgicos das variveis de estado) Sadas = Valores das sadas Neste tipo de mquina, as variveis de sada encontram-se associadas s transies entre estados, dado serem funo das variveis de estado e das variveis de entrada. Estado = Designao ou cdigo de estado ( valores lgicos das variveis de estado)

Mquina de Mealy Estado

Representao grfica das transies entre estados As transies entre estados so representadas por um arco orientado entre o estado presente e o estado P seguinte. De cada estado partem 2 arcos orientados, representativos das transies possveis para P variveis de entrada. Mquina de Mealy Entradas/Sadas Neste tipo de mquina, as variveis de entrada e de sada esto associadas s transies entre estados. Estado seguinte

Estado presente Mquina de Moore Entradas

Neste tipo de mquina, apenas as variveis de entrada esto associadas s transies entre estados. Estado seguinte

Estado presente

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 4/10

Exemplos de diagramas de estados


Mquina de Moore 01,10 00,11 0/0 01,10 Tabela de estados Estado A 0 0 0 0 1 1 1 1 Entradas W Y 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 Estado seguinte A 0 1 1 0 1 0 0 1 Sada Z 0 0 0 0 1 1 1 1 Descrio funcional: Verifica-se a transio entre estados quando W Y ((W=0 e Y=1) ou (W=1 e Y=0)). O estado do sistema mantm-se quando W=Y (W=Y=0 ou W=Y=1). A sada Z igual varivel de estado A. 1/1 00,11 Legenda Estado/Sada: A/Z (A=var. de estado; Z=var. de sada) Transio de estado: Entradas = W Y (W, Y = var. de entrada)

Mquina de Mealy 1/0 0/0 Legenda Estado: A B (A, B= var. de estado) Transio de estado: Entradas/Sadas = X/Y (X = var. de entrada ;Y = var. de sada)

00 0/1 0/1 0/1

01

1/0

1/0

10

1/0

11

Tabela de estados Estado presente Entrada A B X 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

Estado seguinte A B 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0

Sada Y 0 0 1 0 1 0 1 0

Descrio funcional: A partir do estado 00, o sistema activa a sada Y sempre que, em duas vertentes consecutivas do sinal de relgio, detectada a sequncia 10 na entrada X. Exemplo: Var. entrada X: 00100110001110000111110 Var. sada Y: 00010001000001000000001

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 5/10

Exemplos de anlise de circuitos sequenciais sncronos


Dado o diagrama lgico, determinar a tabela de estados, o diagrama de estados e uma possvel descrio verbal do funcionamento do circuito. Exemplo 1: Diagrama lgico Var. entrada: X Var. sada = Var. estado (sadas dos flip-flops): B, A Var. excitao (entradas dos flip-flops): DB,DA uma mquina de Moore dado que as sadas (B,A) so coincidentes com as variveis de estado.

Funes de excitao DB= B X + B A X+ B A X DA= A X Tabela de estados Estado presente B A 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 Var. entrada X 0 1 0 1 0 1 0 1 Var. excitao DB= B X + B A X+ B A X 0 0 0 1 1 1 1 0 Estado seguinte B A 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0

DA= A X 0 1 1 0 0 1 1 0

Nota: A coluna correspondente ao estado seguinte pode ser eliminada j que, tratando-se de flip-flops do tipo D, o estado seguinte corresponde aos valores das variveis de excitao. Diagrama de estados 0 00 1 01 0 Legenda: Estado: B A Transio entre estados : X

11

10

Descrio funcional: Quando X =1 o sistema segue a sequncia de estados 00, 01, 10, 11. Quando X=0 o sistema mantm-se no mesmo estado. Ao considerar as sadas BA como um nmero binrio de dois bits, est-se perante um contador binrio, crescente, de dois bits, com a entrada X para desinibir/inibir a contagem.

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 6/10

Exemplo 2: Diagrama lgico Entrada assncrona: RESET Var. entrada: Y Var. sada: Z Var. estado (sadas dos flip-flops): A,B Var. excitao (entradas dos flip-flops): JA,KA,JB,KB uma mquina de Mealy dado que a sada (Z) depende das variveis de estado (A,B) e da varivel de entrada (Y).

Funes de excitao JA= B Y KA=B + Y JB= A + Y KB=Y Tabela de estados Estado presente A B 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 Diagrama de estados XX RESET 0/0 00 1/0 01 1/0 Var. entrada Y 0 1 0 1 0 1 0 1

Funo de sada Z=A B Y

J=B Y 0 0 1 0 0 0 1 0

Var. excitao KA=B+Y JB=A+Y 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1

KB=Y 1 0 1 0 1 0 1 0

Estado seguinte A B 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 1

Sada Z=A B Y 0 0 0 0 0 0 0 1

Legenda: Estado: A B Transio entre estados : Y / Z

0/0

1/1

1/0

0/0

11

0/0

10

Descrio funcional: A sada Z colocada a 1 sempre que, em quatro vertentes consecutivas do sinal de relgio, detectada a sequncia 1001 na entrada Y. A entrada RESET, quando activa, coloca o sistema no estado 00. Exemplo: Var. entrada Y: 0001010010000101001001 Var. sada Z: 0000000010000000001001

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 7/10

Exemplo 3: Diagrama lgico Var. entrada: Y Var. sada = Var. estado (sadas dos flip-flops): B,A Var. excitao (entradas dos flip-flops): JB, KB, JA, KA uma mquina de Moore dado que as sadas (B,A) so coincidentes com as variveis de estado.

Funes de excitao JB=AY KB=1 JA=BY KA=1 Tabela de estados Estado presente B A 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 Diagrama de estados 0 00 1 01 1 10 Descrio funcional: O sistema segue a sequncia principal de estados 00, 01, 10, enquanto a entrada Y estiver a 1. Sempre que a entrada Y colocada a 0, qualquer que seja o estado presente, o sistema muda para o estado 00. O estado 11 no faz parte da sequncia principal. X(indiferente) 11 Legenda: Estado: B A Transio entre estados : Y Var. entrada Y 0 1 0 1 0 1 0 1 Var. excitao KB=1 J=BY 1 0 1 1 1 0 1 1 1 0 1 0 1 0 1 0 Estado seguinte B A 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0

JB=A Y 0 0 0 1 0 0 0 1

KA=1 1 1 1 1 1 1 1 1

0 X(indiferente)

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 8/10

Exemplo 4: Diagrama lgico Entrada assncrona: RESET Var. sada = Var. estado (sadas dos flip-flops): C,B,A Var. excitao (entradas dos flip-flops): JC, KC, JB, KB, JA, KA uma mquina de Moore dado que as sadas (C, B, A) so coincidentes com as variveis de estado.

Funes de excitao JC=A KC=A JB=C KB=C JA=B KA=B Tabela de estados Estado presente C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Diagrama de estados XXX RESET 000 100 001 101 Legenda: Estado: C B A Var. excitao JB=C KB=C 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 Estado seguinte C B A 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1

JC=A 1 0 1 0 1 0 1 0

KC=A 0 1 0 1 0 1 0 1

JA=B 0 0 1 1 0 0 1 1

KA=B 1 1 0 0 1 1 0 0

011 111

010

110

Descrio funcional: O sistema segue a sequncia principal de estados 000, 100, 110, 111, 011, 001. O sistema tem uma sequncia secundria constituda pelos estados 101 e 010. A entrada assncrona RESET permite a inicializao do sistema no estado 000.

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 9/10

Exemplo 5: Diagrama lgico

Var. entrada = X, Y Var. sada = Z1, Z2 Var. estado = Q2, Q1, Q0 Var. excitao = D2,D1,D0 Funes de excitao: D2=Q2 Q0 + Q0 X Y D1=Q2 Q0 X + Q1 X + Q2 Q1 D0=Q1 X + Q0 X + Q2 Funes de sada: Z2=Q2 Q1 + Q2 Q0 Z1=Q2 + Q1 + Q0 Trata-se de uma mquina de Moore dado que as sadas dependem apenas das variveis de estado. Tabela de estados Por forma a reduzir a dimenso da tabela e tratando-se de flip-flops do tipo D (Var. excitao = estado seguinte), a tabela de estados reorganizada conforme se exemplifica. Estado presente Q2 Q1 Q0 000 001 010 011 100 101 110 111 00 000 001 010 011 101 001 111 011 Entradas (X Y) 01 10 100 001 001 011 110 000 011 010 101 101 001 001 111 111 011 011 Estado seguinte (Q2 Q1 Q0) 11 001 011 000 010 101 001 111 011 Sadas Z2 Z1 01 01 01 00 11 01 11 11

Exemplificao da leitura desta tabela de estados: Do estado 000, o sistema mantm-se no mesmo estado se X=0 e Y=0, o sistema transita para o estado 100 se X=0 e Y=1, o sistema transita para o estado 001 se X=1 e Y=0 ou X=1 e Y=1. Do estado 001, o sistema mantmse no mesmo estado se X=0 e Y=0 ou X=0 e Y=1, etc..

ESTV-ESI-Sistemas Digitais-Circuitos Sequenciais Sncronos 10/10

Tabela de estados Identificando os estados atravs das letras de A a H, obtm-se a nova tabela de estados: Estado presente Q2 Q1 Q0 A B C D E F G H 00 A B C D F B H D Entradas (X Y) 01 10 E B B D G A D C F F B B H H D D Estado seguinte (Q2 Q1 Q0) 11 B D A C F B H D Sadas Z2 Z1 01 01 01 00 11 01 11 11

Diagrama de estados Neste diagrama de estados optou-se por associar aos arcos orientados a expresso lgica (expresso de transio), dependente das variveis de entrada, que provoca a transio entre estados. Legenda: Estado: Designao(A-H)/ Z2Z1 Transio de estado: f(X,Y)

X Y A/01 X Y E/11 X G/11 C/01 X Y X Y

X B/01 1 1 F/01 X 1 H/11 1 D/00

Anda mungkin juga menyukai