Você está na página 1de 90

UEM – Faculdade de Engenharia

Departamento de Engenharia Electrotécnica


Curso de Engenharia Electrónica

AT09-12 - Sistemas Sequenciais

Sist.Sequenciais: Introdução. Flip-flops. Modelação e Síntese. Registos. Contadores

Doutor Eng. GJ Doho


SemII.2021

Electrónica Digital I – Enga. Electrónica


Sumário

Sistemas Digitais Sequenciais:


1. Introdução aos sistemas sequenciais. Definição, caracterização e
representação; (AT09)

2. Flip-flops; (AT10)

3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do


problema ao logigrama; (AT11)

4. Registos; (AT12)

5. Contadores. (AT12)

2
Electrónica Digital I – Enga. Electrónica
Sumário AT09
Sistemas Digitais Sequenciais:
1. Introdução aos Sistemas Sequenciais.
Definição caracterização e representação:
i. Definição e caracterização.
ii. Sistema combinatório vs sistema sequencial.
iii. Sistema sequencial síncrono vs assíncrono.
iv. Sistema sequencial como uma máquina de estados finita (MEF):
Modelos generalizados de: Mealy vs Moore vs Medvedev e seus
híbridos;
v. MEF: Representação básica em grafo: diagrama de estados (DdE). Simbologia e
terminologia; Causalidade e determinismo vs aplicações e limitações.
vi. Formas de representação duma MEF: Diagrama de Estados (DdE), Tabela de estados
(TdE), ASM chart (ASMc), Diagrama temporal (DdT), Linguagem descritiva de
hardware (LDH), Expressões Algébricas, Logigrama. Equivalência e minimização do
número de estados.
2. Flip-flops;
3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;
4. Registos;
5. Contadores.
3
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Definição e caracterização sistema sequencial (SS)
Sistema Combinatório (que é parte integrante dum SS):
É todo aquele cuja(s) saída(s) z num dado instante t, ou seja, z(t), é(são)
determinada(s) pela, e somente pela combinação dos valores booleanos das
suas variáveis externas de entrada (representadas por x), dadas nesse
mesmo instante t. Ou seja: circuito combinatório saídas
Variáveis
externas x(t) z(t)
z(t) = F(x(t)) de entrada
F
fig.1
O sistema combinatório acima é um sistema ideal, onde não existe atraso de
propagação entre a entrada e a saída. os sistemas combinatórios reais
admitem um atraso de propagação, contudo desprezível, podendo ser
suposto inexistente p/a consideração da definição acima. Interessa porém
notar que não há nenhum mecanismo de armazenamento de valores
históricos das entradas, por isso o sistema combinatório não tem capacidade
p/ enxergar o passado e ter um comportamento que seja por ele
influenciado, e por outro lado, mantém-se o carácter causal do sistema: a
saída z (o efeito) acontece como consequência das entradas (a causa).
4
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Definição e caracterização de sistema sequencial:
Sistema Sequencial, é todo aquele cuja saída z num dado instante t, ou
seja z(t), é determinada pelos valores das suas variáveis externas de entrada,
representadas por x, dadas nesse mesmo instante t, em combinação os
valores de variáveis internas de estado (representadas colectivamente por y),
as quais constituem memória sobre acontecimentos históricos do sistema
memorizadas no instante t-1. Ou seja:
sistema sequencial
circuito combinatório
z(t) = F(x(t), y(t)) Variáveis
externas
(forma generalizada)

Como visto, no sistema x saídas


(t) F z
combinatório ideal não existe (t)
y(t+1)
atraso de p ro p a ga çã o e nt re a Variáveis
entrada e a saída, ao passo que o internas E
Variáveis internas
(estado (próximo estado)
sistema combinatório real admite actual) y(t)
memória (do
um atraso de propagação considerado estado do sistema)
fig.2
desprezível. Outrossim, o atraso de propagação entre a saída da variável de
estado y(t+1) e a sua realimentação na entrada do circuito combinatório, y(t),
é uma das formas de produzir tal memória do sistema.
Denominações alternativas, de sistema sequencial:
Máquina de estados finita (MEF; Finite state machine, FSM), Autómata finito. 5
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Definição formal do sistema sequencial:
OBS: Embora procurando não perder a generalidade, focar-nos-emos às máquinas de
estado finitas e determinísticas e à sua aplicação na interpretação e projecto de
sistemas digitais sequencias, p/onde as definições, exemplos e comentários se centrarão.
Formalmente, o Sistema Sequencial: é uma máquina de estados finita (MEF),
um modelo matemático de computação, um dos casos particulares duma
máquina de Turing, descrevendo sistemas discretos, reactivos, c/automatismo
intrínseco, sendo baseado no tuplo MEF = (Q, , , δ, q0, F), onde:
ü Q é um conjunto finito de estados onde a cada momento k (discreto) do
tempo t a máquina logicamente reside. De acordo c/o número de estados
haverá um número de variáveis de estado, as suficientes p/dar um código
único a cada estado (embora possa haver códigos daí sobressalentes).
ü  é o conjunto de símbolos (alfabeto) de entrada, aos quais a máquina
reage mudando dum estado a outro (por vezes o próximo estado é o actual);
Pode acontecer haver alguns símbolos ou combinações de input p/os quais o
comportamento da máquina não está definido na sua sequência regular.
ü  é o conjunto de símbolos (alfabeto) de saída;
ü δ é a função que determina as transições de estado: δ : Q ×  → Q × 
ü q0 é o estado inicial, ou estado de restabelecimento (Reset); e,
ü F, é o (conjunto de) estado(s) final(is) (ie, um ou múltiplos estados: quando
p/ex: a máquina detecta/classifica mais que uma sequências da s/ entrada).
Para mais subsídios sobre as máquinas de estados, que são um capítulo da
teoria dos autómatas [vide literatura em geral, e/ou em particular sl.90].
Electrónica Digital I – Enga. Electrónica
6
Sistemas sequenciais. Definição e Caracterização
Sistemas sequencial vs combinatório, em resumo:

Sistema combinatório:
i. A saída é uma consequência dos valores das suas entradas externas; ou
seja: é um sistema causal.
ii. A saída actual (instante t) depende só, e somente só, de varáveis externas
também actuais (instante t);
iii. Um sistema combinatório pode consistir em uma ou mais funções de saída
mas não contém um sistema sequencial (ie, não possui memória de
acontecimentos anteriores);
iv. O sistema combinatório real tem um tempo de atraso de propagação entre
as entradas e as saídas, que é considerado desprezível; outrossim, o atraso
de propagação reforça a característica causal; Ademais,
v. O tempo de atraso de propagação determina ou influencia algumas
características eléctricas e temporais (exemplo velocidade de comutação, o
consumo em potência e outros aspectos).

Electrónica Digital I – Enga. Electrónica


7
Sistemas sequenciais. Definição e Caracterização
Sistemas sequencial vs combinatório, em resumo (cont.):
Sistema Sequencial:
i. A saída é uma consequência dos valores das suas entradas externas e
internas; ou seja: depende de variáveis actuais e históricas (= do passado),
mas nunca de futuras ou inexistentes, ie: é um sistema causal;
ii. A saída actual (instante t) depende não só de variáveis externas actuais
(instante t) como também de variáveis internas do estado actual do
sistema, as quais são memória de ocorrências anteriores (ie, memorizadas
no instante t-1, t-2, etc.); o estado actual é uma consequência de todo o
histórico de ocorrências externas e estados anteriores; O estado actual da
máquina é uma espécie de “resumo ou memória” do s/passado.
O sistema sequencial - ou máquina de estados finita (finite state machine,
FSM), ou autómata finito - é uma sequência de combinações das suas
variáveis de estado, cada combinação em que a máquina reside em um
dado instante t, é um estado (p/a respectiva ilustração, vide o diagrama de
estados, diapositivas 16, 26 e seguintes).

Electrónica Digital I – Enga. Electrónica


8
Sistemas sequenciais. Definição e Caracterização
Sistemas sequencial vs combinatório, em resumo (concl.):
Sistema Sequencial:
iii. O sistema sequencial contém um circuito combinatório (seja: F) gerador
das variáveis de estado e outro circuito combinatório (seja: G, H) que
gera as saídas p/o exterior. G pode não existir se as saídas externas
forem iguais a variáveis de estado (para um dos modelos). Ou seja, o
sistema sequencial contém sempre um sistema combinatório como parte
essencial da s/constituição e funcionamento. Mas, como visto, ao lado do
sistema combinatório, está uma memória que guarda as s/variáveis de
estado.
iv. O sistema sequencial real, tem um tempo de atraso de propagação, que é
considerado desprezível relativamente ao seu comportamento
combinatório. Outrossim, os atrasos de propagação podem, no
comportamento sequencial, fazer parte do processo de criação da
memória dos acontecimentos anteriores do sistema, por feedback.
v. De outro modo, e similarmente ao caso dos meros sistemas combinatórios,
o tempo de atraso de propagação determina algumas características
temporais e eléctricas de funcionamento, tais como, a frequência máxima
de comutação (entre outras). 9
Electrónica Digital I – Enga. Electrónica
Sistemas Sequenciais. Síncrono vs Assíncrono
Sistema assíncrono (dirigido Sistema síncrono (dirigido por
p/eventos): As mudanças de estado não relógio): As mudanças de estado, ie,
são sincronizadas por um relógio(clock): a s m u d a n ça s d o s va l o re s d a s
Ele não existe. São também ditos variáveis de estado, são
assíncronos os sistemas que tendo sincronizadas por um relógio (clock),
relógio, as variáveis de estado, não o qual p/isso, deverá estar
mudam o s/valor de forma sincronizada. conectado às variáveis de registo
Variáveis
de estado da forma conveniente.
externas circuito combinatório Variáveis
/entradas de saídas
x(t) x(t) z(t)
z(t)
F F
y(t+1) y(t+1)
Variáveis
Variáveis internas
internas
(estado E (próximo V E
y(t) estado) y(t)
actual)
sistema sequencial
memória (do estado
fig.3a (forma generalizada) fig.3b
do sistema) Clk (relógio)
Sistema sequencial assíncrono (dirigido Sistema sequencial síncrono
por eventos) (clock existe e, efectivamente,
(clock não existe, ou, efectivamente, não sincroniza as mudanças de estado)
sincroniza as mudanças de estado) 10
Electrónica Digital I – Enga. Electrónica
Sistema sequencial. Representação / Modelos
Principais Modelos: de Mealy vs de Moore vs de Medvedev
F, e G: circuitos combinatórios; E: Memória
Modelo de Mealy Modelo de Moore
gerador (de variáveis) gerador de variáveis
do próximo estado de saída
Variáveis
de entrada ML
xt zt xt wt

}
F E G F E H
yt+1 V yt+1 V
Variáveis yt yt Clk
yt
internas Clk
(estado yt yt
actual) próx.
estado estado actual Variáveis
fig.4a de saída fig.4b
Registo (das variáveis internas) de estado
Saídas zt : Saídas de Mealy; Saídas {wt , yt }: Saídas de Moore; Saídas yt : Variáveis de estado = Saídas de Medvedev
Há 2 modelos principais de MEFs/FSMs:de Mealy e de Moore, que diferem
somente na maneira como as entradas externas influenciam as saídas ao mundo
exterior: no de Mealy as entradas afectam directamente o gerador das saídas
(percurso ML na figura), enquanto no modelo de Moore há apenas uma afectação
indirecta através das variáveis de estado: assim, no Moore, a geração de saídas ao
mundo exterior, depende só das varáveis de estado. Daí, há uma diferença na
rapidez c/que as entradas influenciam as saídas, havendo vantagem p/o modelo de
Mealy. Contudo, de modo generalizado, em termos do comportamento resultante,
os dois sistemas são (devem ser) equivalentes. Equivalência de 2 MEFs A e B implica:
P/a mesma sequência de inputs A e B produzem os mesmos outputs [vide sl.32].
Electrónica Digital I – Enga. Electrónica
11
Sistema sequencial. Representação / Modelos
Principais Modelos: Mealy vs Moore vs Medvedev (cont.)
Modelo de Medvedev (caso particular do de Moore)
A diferença com os outros 2 modelos está em que os outputs do Medvedev
são exactamente e somente as variáveis de estado, y(t). Ao assim dizer, as
figuras 4a, 4b, e 5; contêm o modelo Medvedev, o qual dispensa as saídas z(t)
e w(t) produzidas respectivamente pelos circuitos combinatórios G e H,
contidos nessas figuras. A máquina de Medvedev é caso particular da Moore.
No modelo de Medvedev: as Gerador (de variáveis)
do próximo estado
F: circuito combinatório; E: Memória
variáveis de estado são
Variáveis
simultaneamente as suas de entrada Variáveis
xt de saída
variáveis de saída, daí F E
yt+1 V
yt
dispensando as funções Variáveis yt
internas Clk
combinatórias de geração das (estado
saídas ao exterior, o que é uma actual) yt
próx. estado estado actual
vantagem (redução do circuito), fig.5
Registo (das variáveis internas) de estado
tendo contudo as suas
desvantagens (Vide [sl. 14]; [1,2, Modelo de Medvedev
9-16]).
12
Electrónica Digital I – Enga. Electrónica
Sistema sequencial. Representação / Modelos
Principais Modelos: Mealy vs Moore vs Medvedev (cont.)
Modelos híbridos: Mealy-Moore e Mealy-Moore-Medvedev
É pelo reconhecimento dessas vantagens divididas que existem modelos
híbridos, que combinam dois ou os três tipos de modelos, com o propósito
de colher o melhor da associação. A praticabilidade é discutível sendo
aplicadas de acordo c/as vantagens comparativas observadas pelo projectista.
Sobre uma discussão mais circunstanciada das vantagens e defeitos dos
modelos ou dos seus híbridos, vide diapositiva seguinte e sobretudo a
literatura recomendada, particularmente [1,2, 9-16] (vide última diapositiva).
Saídas de cada modelo: zt: Mealy; wt: Moore; yt: Medvedev
ML ML
G zt xt G zt
xt
F E F E
yt+1 V wt yt+1 V wt
yt Clk H yt Clk H
yt
fig.6a yt fig.6b yt

Modelo Mealy-Moore Modelo Mealy-Moore-Medvedev


13
Electrónica Digital I – Enga. Electrónica
Sistema sequencial. Representação / Modelos
Principais Modelos: Mealy vs Moore vs Medvedev (cont.)
Vantagens/Qualidades Desvantagens/Defeitos
Inputs influenciam as saídas muito O facto de permitir entradas directamente ao
ra p i d a m e nte , o q u e é i m p o r ta nte gerador de saídas, é uma vantagem, mas pode
p/sistemas de missão crítica que devem permitir acções espúrias devido a ruído de algum
Mealy

reagir prontamente a impulsos externos. tipo nas entradas, a menos que alguma medida
Produz um DdE geralmente mais seja tomada p/mitigação, que p/seu turno pode
simplificado vs a máquina de Moore. aumentar a complexidade dos circuitos de entrada.
As saídas são muito estáveis pois são Permite um tempo de atraso de pelo menos um
registadas (baseadas apenas período de relógio para que o input possa merecer
diretamente das variáveis de estado) e a reação esperada por parte do sistema. Daí que
sendo por outro lado síncronas, estritamente falando, para sistemas de missão
Moore

diminuirá o efeito de inputs espúrios crítica no tempo, as máquinas de Mealy são


devido a ruído. consideradas não equivalentes às de Moore.
As saídas dependem da codificação de estados o
As saídas não precisam de um circuito
que é inconveniente pois, se o processo de
combinatório gerador de saídas. Para
atribuição/codoficação de estado não for manual,
Medvedev

c i rc u i to s i n te g ra d o s c o m p l exo s a
o projectista não pode prever que codificação o
poupança de espaço e componentes
software de modelação e design vai efectuar, a
re s u l ta e m p o d e r a co m o d a r m a i s
menos que o software permita a pré-fixação da
funções e/ou na redução do consumo
codificação pelo projectista, o que a ser feito
de energia e/ou na optimização de
co a r ta a p o s s i b i l i d a d e d e u m a co d i f i ca çã o
outras funções relacionadas.
optimizada. 14
Electrónica Digital I – Enga. Electrónica
Sumário AT09
Sistemas Digitais Sequenciais:
1. Introdução aos Sistemas Sequenciais. Definição
caracterização e representação:
i. Definição e caracterização.
ii. Sistema combinatório vs Sistema sequencial.
iii. Sistema sequencial síncrono vs assíncrono.
iv. Sistema sequencial como uma máquina de estados finita (MEF): Modelos
generalizados de: Mealy vs Moore vs Medvedev e seus híbridos;
v. MEF: Representação básica em grafo: diagrama de estados (DdE).
Simbologia e terminologia; Causalidade e determinismo vs aplicações
e limitações.
vi. Formas de representação duma MEF: Diagrama de Estados (DdE), Tabela de estados
(TdE), ASM chart (ASMc), Diagrama temporal (DdT), Linguagem descritiva de
hardware (LDH), Expressões Algébricas, Logigrama. Equivalência e minimização do
número de estados.
2. Flip-flops;
3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;
4. Registos;
5. Contadores.
15
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais.
MEF Básica em Grafo: Diagrama de Estados (DdE). Simbologia e Terminologia
Estado fictício: desligado ou transiente: (a tracejado Variável de variável Auto-transição ou transição em laço (loop): a
ou traço-ponto **): é lògicamente inexistente; é entrada (ou de saída. respectiva variável de input pode ser omitida.
comum omitir estes (qndo ligados ao estado inicial). guarda). Contudo nesse caso, a transição consome todas as
combinações omissas das entradas, ie, não
A seta de transição que presentes na lista das transições saintes do estado.
parte do estado desligado, 1/0
o u d o va z i o, entra no nome do estado: M
(assinala o) estado inicial. Reset

Estado inicial L 0/0 M


Transição de estado regular: do M
ao N (no caso dado: transição em
Transição parasita: é aquela que reconhecimento do símbolo 1).
sai do, ou entra num estado i=1/o=1
parasita, é uma transição que, tal Estado final (linha dupla). Nem sempre
como o estado parasita, é existe em todas as MEFs; ou existe contudo
imprevista, é não planeada pelo não sendo assim representado.
projectista. É parasita também
P N
uma transição ditada p/uma Auto-transição parasita: indica a possibilidade de laço
combinação de entrada parasita x/1 (loop) infinito (lockdown); uma situação não prevista, não
ie, parte do alfabeto, mas não planeada; daí que para sistemas de missão crítica e não só,
previ sta p el o p ro jecti sta n o seja recomendável incluir na MEF os estados sobressalentes
comportamento regular da MEF. Reset: é opcional a s/colocação na codificação/atribuição de estados [sl.28,59].

Estado parasita (linha contínua c/fundo escuro[2]; ou linha tracejada**): é aquele que, fazendo parte da lista de estados, não foi
incluído na definição do comportamento regular da MEF. Estado parasita surge quando há estados sobressalentes, ou seja,
combinações sobressalentes das variáveis de estado, no processo da codificação/atribuição de estados [sl. 28,59]. Estado parasita
pode ser omitido no DdE (abordagem de mínimo custo) c/riscos de comportamento imprevisível. Deve-se nesse caso, minimizar o
ruído, e evitar a alimentação à MEF de entradas (símbolos) parasitas (que não constam dessa MEF regular), para que não possam de
alguma forma, espuriamente, levar o sistema a transitar p/um estado parasita. Outrossim, é conveniente transitar todos os
estados parasitas p/dentro do DdE regular (abordagem de mínimo risco), incluindo transformá-los em estados fictícios transientes.
fig.7 MEF em Diagrama de estados - Simbologia e Terminologia ** preferencialm/., para conveniência de representação
16
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais.
MEF em DdE. Tópicos adicionais sobre Caracterização e Terminologia
ü Estado fictício: estado de desligado(hardware), ou estado transiente: Estado
fictício é lògicamente inexistente, não participa na linguagem da máquina,
contudo pode ser usado p/influenciar onde a MEF começa ou recomeça a sua
existência lógica.
ü Estado transiente (transitório), outrossim chamado de fracamente-transiente: é
um estado fictício, que tem duração (idealmente, ou aproximadamente) nula,
realizado tecnicamente através da detecção e eliminação (frequentemente
assíncrona) de estados indesejáveis. Por ex: (i) eliminação de estados parasitas
(sobressalentes, não fazendo parte da MEF regular); (ii) encurtamento do módulo
dum contador [vide sl.77, 78]; ou (iii) Reset/Preset do sistema p/o estado inicial
conveniente da sequência, ao se ligar energia ao sistema (power ON) ou ao
pressionar um botão de Reset/Preset [sl.64,68]. Nota: Há semânticas alternativas
ou estendidas, para o termo “estado transiente ”noutros tipos de autómatas.
ü Estado inicial (Estado de restabelecimento, Reset State): aquele que inicia o
percurso lógico da máquina p/que exiba o comportamento esperado (planeado).
P/assegurar a primazia deste estado em hardware, um circuito de power-on-
(p)reset (POR), é ligado aos registos de estado (flip-flops) [sl.64,68]. A seta de
transição que parte do estado fictício/desligado, ou do vazio, entra no estado
inicial. Este é único em MEFDs. Contudo, em MEFNDs pode haver múltiplos
estados iniciais. Também, estados transientes podem ser colocados a entrar
(=sistema é reinicializado) aonde melhor convier ao projectista.
Electrónica Digital I – Enga. Electrónica
17
Sistemas sequenciais.
MEF em DdE. Tópicos adicionais sobre Caracterização e Terminologia (cont.)
ü Inputs parasitas: são aqueles símbolos do alfabeto de entrada (=
combinações das variáveis de entrada) não previstos (não supostos de
acontecer, ou em geral não explicitamente planeados pelo projectista) no
comportamento regular do sistema e do meio exterior gerador dos eventos.
ü Estado parasita: é aquele que não sendo mandatório p/definir o
comportamento lógico regular da MEF, e fazendo parte da lista de estados,
não foi explicitamente incluído no projecto do sistema, mas vai depois, mais
tarde (res)surgir. Estado parasita existe quando o número de estados
regulares da MEF não esgota a lista de estados, onde num ponto de vista de
codificação binária, a lista de estados possíveis é formada pelas 2 n
combinações das n variáveis de estado [vide sl.28,59]. Estado parasita pode
ser omitido no DdE, desde que em termos de realização lógica e eléctrica se
evitem os cenários que possam espuriamente, levar o sistema a transitar p/o
estado parasita: ruído (eléctrico, etc.); alimentação de input parasita;
ü MEF: Causalidade e determinismo vs projectos de Sistemas Digitais(SDs):
A aplicação das MEFs em controladores de sistemas digitais:= tempo real,
nível de hardware, etc., exige que as MEFs sejam causais e determinísticas,
concretamente: Electrónica Digital I – Enga. Electrónica
18
Sistemas sequenciais.
MEF: Causalidade e determinismo vs s/utilidade no projecto de Sistemas Digitais(SDs)
ü Causalidade e reactividade: o controlador reage (efeito) em resposta, e só em resposta a
inputs presentes e estados anteriores (feedback) (causa), sendo uma característica central
p/um comportamento previsível e controlável, visando particularm/ aplicabilidade em SDs;
ü Determinismo: A controlabilidade usando MEFs implica que estas sejam determinísticas:
§ MEFs determinísticas = MEFDs (DFSMs=Deterministic Finite State Machines ou
DFAs=Deterministic Finite State Automata); versus
§ MEFs não determinísticas MEFNDs (NDFSMs=Non-DFSMs ou NFAs=Non-DFAs);
ü MEF determinística+controlabilidade: Determinística é toda a máquina de estados, para a
qual é perfeitamente previsível (está pré-determinado) o comportamento p/qualquer valor
da entrada (ou seja, qualquer combinação das suas variáveis de entrada), onde, tendo a
MEFD (por definição) um número finito de: estados, de entradas, e das transições:
(i) p/cada estado todas as transições possíveis decorrentes das combinações das variáveis de
entrada estão determinadas e tais transições são funções desses inputs, ie: não pode
haver 2 ou mais transições de estado p/a mesma (combinação das) entrada(s); ie, deve
haver uma e apenas uma transição de estado p/cada combinação de input;
(ii) Toda a MEF, por definição, reside em apenas um estado. Para determinismo, previsibilidade
e controlabilidade: (a) para a mesma sequência de inputs, a MEF deve sempre produzir a
mesma sequência de estados e outputs, explicitamente pré-determinados; (b) a MEF deve
ser reactiva e receptiva (deve reagir e transitar no lugar de ficar bloqueada); Em particular
no âmbito do projecto de SDs, eventuais estados parasitas (ie, estados não presentes na
MEF regular, mas fazendo parte da lista de estados), devem ser eliminados, ie,convertidos
p/transientes, ou colocados na MEF e s/comportamento ficar previsto e pré-determinado).
ü MEF não-determinística/não-predeterminada (ie MEF de comportamento não totalmente
previsto pelo projectista): é toda a MEF não previsível, ie, que viola algum dos preceitos
acima listados dum comportamento determinístico e completamente pré-estabelecido.
Electrónica Digital I – Enga. Electrónica
19
Sistema sequencial. Representação / Modelos
Classificação das das máquinas de estado finitas (MEFs/FSMs)
As MEFs são classificadas de acordo com o tipo
ü Aceitadoras (ou também: detectoras, reconhecedoras) de
sequências/strings de símbolos: servem para detectar reconhecer e
aceitar, ou de contrário rejeitar uma sequência de símbolos alimentada
da(s) sua(s) variável(is) de input [vide exemplo no sl.26];
ü Transductoras (ou tradutoras ): são máquinas que recebem uma
sequência na entrada e a traduzem-na para uma outra (podendo ser a
mesma) sequência de saída; a máquina de Mealy é dita uma transdutora;
ü Classificadoras: são similares às aceitadoras contudo, detectam mais do
que uma sequência, resultando por isso, em múltiplos estados finais
(estados de aceitação). a máquina de Moore é dita uma classificadora;
ü Sequenciadoras (ou geradoras de sequência): na base de uma variável de
controle gera uma sequências similares às de uma aceitadora ou às de
uma classificadora.

Vide “teoria dos autómatas (automata theory)” p/ mais subsídios.

20
Sistemas Sequenciais. Aplicações e Limitações
Aplicações das máquinas de estado finitas (MEFs/FSMs)
Representação, interpretação e transformação de modelos matemáticos de
computação: físicos, biológicos, filosóficos, teoria de jogos, linguística,
inteligência artificial, etc.; Para a área de engenharia de sistemas digitais
interessa realçar os seguintes campos de aplicação, fundamentalmente:
i. software: muitos programas de computador, ou seus módulos, são
autómatas em software, tais como: módulos de busca de strings em textos,
módulos de motores de busca na web, busca/comparação de strings, etc.
ii. Sistemas digitais dedicados (SDDs) = apenas hardware, não há programa:
uma vez construído o hardware, não é alterável. A FSM per si é parte física
desse hardware).
iii. computadores: sistemas controlados p/programa, sendo este extrínseco ao
hardware do sistema per si: programa é parte separada, é fornecido do
exterior, e é alterável; sem implicar a alteração do hardware.
Os sistemas sequenciais são a base teórica de projecto e funcionamento do
automatismo dos sistemas digitais, desde simples autómatas, até
supercomputadores de propósitos gerais, ou sistemas baseados em
computador, p/ex: drones, robôs, smartdust, etc. Estes sistemas complexos
são compostos p/vários sub-sistemas diferentes, e, em cada um deles há um
ou vários autómatas de índoles diversas, alguns deles sendo hardware.
21
Electrónica Digital I – Enga. Electrónica
Sistemas Sequenciais. Aplicações e Limitações
Limitações das máquinas de estado finitas (MEFs/FSMs). Alternativas
As MEFs, abordadas ao longo do texto, têm ampla aplicabilidade, como visto, na
diapositiva anterior. Têm contudo importantes limitações, no concernente ao seu poder
de representação e transformação de modelos de sistemas, como por ex:
1. Os grafos, tabelas, fluxogramas, etc. que os representam, não devem ultrapassar
certa complexidade, a qual é determinada pelo(a):
i. número de estados e daí o das variáveis de estado;
ii. número de variáveis de entrada (símbolos) e daí e sobretudo, o número e
complexidade das transições (diferentes) de estado;
iii. número de (funções das) saídas; etc.;
2. As MEFs não suportam, entre outros, a concorrência (esta sugere, p/um mesmo
instante t, múltiplos inputs, múltiplos estados actuais ou um “super-estado”,
múltiplas acções e reações, bem como outros tipos de complexidades);
3. Por seu turno os meios de análise e síntese (TVd's e mVK's, etc.) podem tornar-se
incomportavelmente grandes ou tediosos (quando feitos manualmente), e serem
pouco eficientes; Para cima, está o problema geral da explosão combinatória
(explosão de estados);
Alternativas: Uso de outros modelos c/maior poder computacional: MEFs estendidas,
híbridas ou compostas; modelos c/hierarquia de estados (há níveis de sub-estado e de
super-estado) e/ou c/concorrência (=paralelismo). Exemplos: autómatas de Harel, UML
statechart, Matlab statechart, redes de Petri, Grafcet/SFC, etc.

Como referido, limitar-nos-emos a MEFs simples, determinísticas (MEFDs); propícias ao


projecto de controladores digitais.
22
Electrónica Digital I – Enga. Electrónica
Sumário
AT09
Sistemas Digitais Sequenciais:
1. Introdução aos Sistemas Sequenciais. Definição
caracterização e representação:
i. Definição e caracterização.
ii.Sistema combinatório vs Sistema sequencial.
iii.
Sistema sequencial síncrono vs assíncrono.
iv.Sistema sequencial como uma máquina de estados finita (MEF): Modelos
generalizados de: Mealy vs Moore vs Medvedev e seus híbridos;
v. MEF: Representação básica em grafo: diagrama de estados (DdE). Simbologia e
terminologia; Causalidade e determinismo vs aplicações e limitações.
vi. Formas de representação duma MEF: Diagrama de Estados (DdE),
Tabela de estados (TdE), ASM chart (ASMc), Diagrama temporal (DdT),
Linguagem descritiva de hardware (LDH), Expressões Algébricas,
Logigrama. Equivalência e minimização do número de estados.
2. Flip-flops;
3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;
4. Registos;
5. Contadores.
23
Electrónica Digital I – Enga. Electrónica
Sistema sequencial
Formas de Representação/Descrição do Comportamento:
Formas diversas de representação:
1. Não formal: forma descritiva textual ou verbal livre. P/ex: (entre outras):
enunciado do problema: um enunciado é geralmente ambíguo,
inexacto; mas deve-se procurar clarificá-lo o melhor possível, sobretudo
eliminar omissões na s/descrição do comportamento da SS/MEFD;
2 . F o r m a l : d e s c r i ç ã o exa c ta ( c o m p a c ta o u m o d u l a r i za d a ) d o
comportamento do SS/MEFD, sendo, fundamentalmente por:
a. Diagrama de estados (DdE);
b. Tabela de estados (TdE);
c. Diagrama de Máquina de Estados Algorítmica (MEA) (Algorithmic State
Machine chart, ASMc);
d. Linguagens descritivas de hardware (LDHs = HDLs): VHDL, AHDL, Verilog,
SystemVerilog, etc.;
e. Expressão(s) algébrica(s);
f. Logigrama (diagrama esquemático lógico);
g. Diagrama temporal (DdT) (ou diagrama de sinais).
Electrónica Digital I – Enga. Electrónica
24
Sistema sequencial
Formas de Representação/Descrição do Comportamento:
Apresentação dum SS na forma de enunciado, Exemplos 1:
Ex1a: “Representar por Diagrama de estados (DdE), uma máquina de estados finita e
determinística (MEFD) (DFA,DFSM) que detecta 1 vez a sequência 101, devendo assinalar
com 0 na saída para sequência ainda não encontrada ou c/ 1 quando e depois de
encontrada”;
Ex1b: “ Representar por DdE, TdE ou ASMc, uma MEFD que detecta repetidamente a sequência
0101, devendo assinalar c/saída Z=1, que a sequência mais recente não é aceite ou com 0
de contrário.”;
Ex1c: “Representar por Diagrama de estados (DdE), uma máquina de estados finita que quando a
sequência mais recente de bits recebidos da sua entrada a for:
001: assinala com ZY = 00;
101: assinala com ZY = 11;
011: assinala com ZY = 01;
010: assinala com ZY = 10.”;
Ademais, para sequência ainda não detectada assinala c/V=0 não importando ZY, e
quando e sequência é detectada foi encontrada, a par de ZY então V = 1.
Ex1d: “Descrever por DdE um autómata finito determinístico com entrada y e saída Z para a qual
Z=1 sse o último bit ou o penúltimo bit recebido da sua entrada y não for nulo”
Ex1e: “Desenhe os DdEs ou TdEs ou ASMcs, de MEFs que detectam: só (5.a) repetidamente; (5.b)
uma só vez; as seguintes sequências:
a=101; a=100110; a=0101001; a=1110; ba=11-00-10-11-01”.
Para qualquer dos casos suponha que: (i) As saídas são de Medvedev; ou (ii) Tem uma saída Z
que só é 1 quando a dada sequência foi detectada.
Vide mais enunciados nas diapositivas seguintes.
Electrónica Digital I – Enga. Electrónica
25
Sistemas sequenciais.Caracterização, Simbologia, Terminologia
MEFD/DFSM na forma de Diagrama de Estados (DdE), modelo de Mealy: (Exemplo 2a)
Enunciado do problema: 1/0 0/0
Representar por DdE, TdE ou ASMc, uma MEF/FSM que detecta 1 vez a 0/0 c=1/z=0
sequência 0110, devendo assinalar na saída com o valor 0 para sequência ainda
não encontrada ou c/ 1 quando e depois de encontrada. P Q R
Codificação de estados: pode ser feita nos códigos: (1) binário puro ou arbitrário [tab.A], 0/0
(2) de Gray, (3) de Jonhson, (4) one-hot (1-entre-k), etc. (exemplos: [15]); cada uma 1/0
destas codificações tem méritos diferentes, dependente do contexto, na obtenção dum Reset 1/0
melhor circuito final quanto ao tamanho/custo e quanto à fiabilidade em relação ao S
ruído e a fenómenos de sincronização/meta-estabilidade[1,8,13,15]. No binário x/1
arbitrário, a atribuição de estados p/o DdE da figura, admite qualquer dos arranjos dos T 0/1
2n códigos de CBA (n=3), tomados de 5 a 5, as quais, vide tab.B, sofrem de uma explosão
combinatória (= crescim/ factorial c/o núm. de variáveis). Não obstante, existe sempre tab.A - codificação de estados
uma atribuição óptima, cuja determinação é, geralmente, um problema intratável (da Estado CBA (bin.natural)
categoria NP-hard), apenas abordável c/métodos de inteligência computacional: P 000
heurísticos/neurais/evolucionários/etc.(tais como p/ex: aprendizagem de máquina, Q 001
algoritmos genéticos, optimização por enxame de partículas, entre outros). C/isso dito, é R 010
aceitável qualquer atribuição; contudo há heurísticas de uma atribuição que ajuda a S 011
chegar eventualmente a uma melhor simplificação e estabilidade do circuito final: T 100
(i) Em geral, minimizar o número de bits de estado que mudam em cada transição. Em U 101
particular e c/a mesma ordem de prioridade, atribuir códigos adjacentes: } V 110
(ii) a estados c/o mesmo sucessor (= próximo estado); W 111
(iii) a sucessores diferentes do mesmo estado; ne nv num.de Atribuições
(iv) a estados que assumem o mesmo output em função do mesmo input. 3 2 24
5 3 6720
Códigos não usados na codificação dos estados P, Q, R, S e T, vão formar estados parasitas, que
6 3 20160
no diagrama de estados acima, estão omitidos. Os tais códigos não usados, vão constituir
8 3 40320
indiferenças (don't cares) no mVK do processo de síntese [vide sl.59 a 64], podendo assim
10 4 29059430400
conferir uma maior simplificação ao logigrama final. Porém, a omissão de códigos/ou a
12 4 871,782,912,000
existência de estados parasitas numa MEF, tem riscos: mormente, comportamento imprevisto, 16 4 20,922,789,888,000
não planeado (ou mal planeado) e portanto indesejado, do sistema final. tab.B (p/binário arbitrário)
fig.8 MEF/FSM detector de sequência (= 0110) Electrónica Digital I – Enga. Electrónica
26
Sistemas sequenciais.Caracterização, Simbologia, Terminologia
MEFD/DFSM na forma de Diagrama de Estados (DdE), modelo de Mealy: (Exemplo 2b)
Enunciado do problema (s/alteração, o mesmo da diapos. anterior):
codificação dos
Representar por DdE, TdE ou ASMc, uma MEFD/DFSM que detecta 1 vez a sequência estados
0110, devendo assinalar na saída com o valor 0 para sequência ainda não
encontrada ou c/ 1 quando e depois de encontrada. variáveis de
estado: CBA
1/0 0/0
0/0
1/0

}
P Q R
Estado CBA
1/0 P 000
1/0 0/0 Q 001
c=1/z=0 R 010
1/0 0/0 1/0 S 011
W 0/0 0/0 x/1 T 100
V U S
0/1 } U
V
101
110
T W 111

Neste novo caso onde todos os 8 estados são usados: a codificação de estados admite qualquer de 40320
permutações dos 23 códigos (de CBA=> n=3) [vide tab.B, sl.26]. Nesta codificação todos os estados estão previstos
(não há estados parasitas ou c/ comportamento parasita, não-predeterminado), o que significa que nos mVKs do
processo de síntese, não haverá indiferenças a dever-se a estados sobressalentes da lista de estados. Estes 3 últimos
códigos da tabela são sobressalentes à codificação dos estados regulares P, Q, R,S e T [tab.A, sl.26]. Sua inclusão
nesta versão da MEF, torna o sistema resultante mais robusto, pois mesmo havendo ruído, que pudesse levar o
sistema a um dos referidos 3 estados, há garantia de que a MEF transitará p/a sequência regular. Neste sentido, os
parasitas foram colocados de tal forma a satisfazer o mais rápido o comportamento lógico definido pelo enunciado.
Daí que o processo de minimização do número de estados [sl.32 ], seja por vezes um pouco desviado do de obter a
MEF óptima que confira um comportamento de menor risco ao sistema pretendido.
fig.9 MEFD/DFSM detectora da sequência 0110 s/códigos , Modelo de Mealy 27
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais.Caracterização, Simbologia, Terminologia
MEFD/DFSM na forma de Diagrama de Estados (DdE), modelo de Moore: (Exemplo 2c)
Enunciado do problema (s/alteração, o mesmo da diapos. anterior): codificação dos
Representar por DdE, TdE ou ASMc, uma MEFD/DFSM que detecta 1 vez a estados
sequência 0110, devendo assinalar na saída com o valor 0 para sequência ainda
variáveis de
não encontrada ou c/ 1 quando e depois de encontrada. estado: CBA

}
Estado CBA
1 0 P 000
0 Q 001
P Q 1 R 010
0 R
0 0
S 011
T 100
1 1 0 c=1 U 101
V 110
W 1 0 1 W 111
0 0 0 x
V U S
0 0 Z=0
T 0
1

fig.10 MEF/FSM determinística da diapositiva anterior, no s/Modelo de Moore

Electrónica Digital I – Enga. Electrónica


28
Sistema sequencial. Exemplos 1.
MEF/FSM na forma de Tabela de Estados (TdE), Mealy e Moore: (Exemplos 2bt e 2ct)
Enunciado do problema (s/alteração, o mesmo da diapositiva anterior):
Representar por DdE, TdE ou ASMc, uma MEFD que detecta 1 vez a sequência 0110, devendo
assinalar na saída com o valor 0 para sequência ainda não encontrada ou c/ 1 quando e depois
de encontrada.
Estado Próximo Estado Saída
Estado Presente Próximo Estado / Presente (No Estado.
(Vars. de estado) Saída (z) (Vars. de Presente)
estado)
c=0 c= 1 c=0 c= 1 z
P (000) Q/0 P/0 P (000) Q P 0
Q (001) Q/0 R/0 Q (001) Q R 0
R (010) Q/0 S/0 R (010) Q S 0
S (011) T/1 P/0 S (011) T P 0
T (100) T/1 T/1 T (100) T T 1
U (101) P/0 P/0 U (101) P P 0
V (110) P/0 P/0 V (110) P P 0
W (111) P/0 P/0 W (111) P P 0
(Exemplo 2bt) p/ Tabela de estados (modelo Mealy) (Exemplo 2ct) p/ Tabela de estados (modelo Moore)
A representação da MEF p/ TdE é mais exigente e daí mais recomendável vs o DdE quanto à explicitação do
comportamento determinístico. Contudo também permite a existência de estados parasitas, c/os seus males.
fig.11 MEF/FSM detector de sequência dos 2 sls. anteriores, nos s/modelo de Mealy e de Moore
VtC (Verifique teu conhecimento): O modelo de Medvedev está também presente nas duas tabelas: aonde?
29
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais.Caracterização, Simbologia, Terminologia
MEF/FSM na forma de Diagrama de Estados (DdE), no modelo de Moore: (Exemplo 2d)
Enunciado do problema (o mesmo da diapos. anterior):
Representar por DdE, TdE ou ASMc, uma MEFD que detecta 1 vez a sequência 0110, devendo
assinalar com 0 na saída para sequência ainda não encontrada ou c/ 1 quando e depois de
encontrada.

MEFD/DFSM detectora da c=1 0


sequência 0110: 0
P Q 1
Z=0 R
Forma alternativa 0 0
aceitável do Exemplo 2c, W x
mas menos perfeita, para x
c o n s u m i r o s
0 x 1 0 1
estados/códigos parasitas. V U x
0 S
0 0
VtC: Discuta: Porque é 0
menos perfeita? T
fig.12 (Exemplo 2d) 1
TPC1:
1. Represente por DdE, TdE ou ASMc os Exemplos1 [sl.25].
2a. Represente por TdE e/ou ASMc os DdE: (i) do Exemplo 2a [sl.26] e (ii) do Exemplo 2d, acima ilustrado.
2b Representar por DdE, TdE ou ASMc, uma MEFD que detecta repetidamente a sequência 0110, devendo
assinalar c/saída Z=0, que a sequência mais recente não é aceite ou com 1 de contrário.
2c. Representar por DdE, TdE ou ASMc, uma MEFD que detecta repetidamente a sequência 0110, devendo
assinalar na saída ZY=X0: o bit mais recente está fora da sequência; ZY=01: o bit mais recente está dentro da
sequência contudo incompleta; ou ZY=11 para assinalar que a sequência mais recente foi aceite.
Electrónica Digital I – Enga. Electrónica
30
Sistemas sequenciais.
Formas de Representação/Descrição do Comportamento:
Exemplos 3, de Diagrama de Estados (DdE) nos Modelos: Mealy VS Moore
Enunciado do problema:
Representar por DdE, TdE ou ASMc, uma MEFD que detecta repetidamente a sequência 011,
devendo assinalar com saída= 0, que a sequência mais recente não está completa (não é
aceite) ou c/ 1 para indicar que a sequência mais recente está completa e aceite.

Variáveis
de estado
Modelo de Moore
(VtC: porquê de Moore?)
Exemplo 3a variável
Variável
de saída
externa de
entrada

Modelo de Mealy
Exemplo 3b (VtC: porquê de Mealy?)
Variáveis de estado
fig.13

TPC2: Represente por TdE e/ou ASMc os DdE dos Exemplos 3 acima ilustrados.

Electrónica Digital I – Enga. Electrónica


31
Sistemas sequenciais.
Equivalência e Minimização de estados 1
Equivalência: dois estados P e Q são equivalentes se: M P N
1 0 0
1. Têm os mesmos outputs, e ao receberem iguais inputs:
2. transitam com o mesmo output, p/o mesmo estado R, ou 0 0 0
1 1
3. transitam com os mesmos outputs, para os estados S e T, tendo F 0 Q
z=0
estes sido provados equivalentes (por exemplo pelos pontos 1 e 2 1
1
somente ou 1, 2 e 3, o presente ponto, recursivamente); 1 1 c=0 1
4. P e Q Tê m o s m e s m o s o u t p u t s , e a o r e c e b e r e m i g u a i s 0 S
inputs ,transitam c/os mesmos outputs, p/estado igual e/ou p/si T
0
0
0
mesmos reciprocamente. fig.14 (a)
Minimização de estados:
Se os estados P e Q são equivalentes, então P pode substituir Q e vice-versa e assim reduzir
em 1 o número de estados. Aplicando recursivamente o procedimento obter-se-á uma MEF
na qual não há estados equivalentes: a MEF mínima. NB: a minimização pode outrossim
criar estados parasitas, indesejáveis numa abordagem de síntese de menor risco [sl.83], por
isso fala-se de optimização de estados que pode eventualmente divergir da minimização. N
Na MEF da fig.(a) verifica-se: (i) S ≡ T p/q transitam p/os mesmos M 0
estados c/iguais inputs/outputs, S e T formam o novo estado S = {S,T}; (ii) 0 1 0 x
P ≡ Q e formam Q = {P,Q}, p/q transitam de igual forma p/os os estados 1
Q
F
Q e T = {S,T}; (iii) os estados M e P são díspares p/q transitam p/os 1 z=0
mesmos estados contudo violam o ponto 1; (iv) F e M têm a mesma c=0
saída de estado, mas são díspares nas transições/outputs. Daí não são e 1 1 1
nem têm equivalentes, o mesmo se aplicando para {P,Q} e {S,T}; (v) N 0 T fig.14 (b)
não tem equivalente. Assim, a MEF mínima é a presente na fig.(b). 0 0

Estudo individual (EI): Investigue os métodos de minimização de estados de: Moore, Hopcroft, Myhill-Nerode, entre outros.
Electrónica Digital I – Enga. Electrónica
32
Sistema sequencial. Exemplos 4.
Ilustração de 6 das Principais Formas de Representação/Descrição do Comportamento
Estado Próximo Saída
Presente Estado (No Estado
Reset
(Vars. de Presente)
Reset estado)
E=0 E= 1 ZY
M (00) N P 00
N (01) M P 01
P (10) P P 11
p/ Diagrama de
estados (modelo p/ Diagrama de
estados (modelo p/ Tabela de estados (modelo Moore)
de Mealy)
de Moore)

(d) p/ Logigrama (modelo de Moore). (VtC: porquê de Moore?)

JB = E; KB = 0; Z = B;
JA = EB; KA = 1; Y = B+A;
(c) p/ ASM chart (modelo de Mealy) (e) p/ Expressões algébricas

fig.15 Acima está um mesmo sist.sequencial descrito em 6 formas diferentes (vide sl. 59 a 64, a respectiva síntese/mvK's)
Electrónica Digital I – Enga. Electrónica
33
Sistema sequencial. Exemplos 5.
Ilustração de 8 das Formas de Representação e Descrição do Comportamento: Flip-Flop JK M/E:
JK=01,11 / Q=0
Estado Próximo Estado /
≡ JK=x1 / Q=0
Presente Saída (logo) na transição

JK
00 01 10 11

1x / 1 0x / 0 U U/1 Z/0 U/1 Z/0


x0 / 1 p/ Diagrama de sinais
Z Z/0 Z/0 U/1 U/1
FF JK por Diagrama de estados (Mealy) FF JK por Tabela de estados (modelo Mealy) /**************************************
* Module: JKmsFF
JK=01,11 * Date:2021-03-18
≡ JK= x1 Estado Próximo Estado Saída * (C) Author: G.J.Doho
Presente (No estado * Using SVE(SystemVerilog Editor) on EclipseIDE
* Description: JK master/slave FF
JK Presente) ***************************************/
module latchRS (S, R, Q, Qbarra);
Q =1 0 Qt 00 01 10 11 Qt+1 input wire S, R;
output wire Q, Qbarra;
U U Z U Z 1 assign Q = ~(S & Qbarra); //bitwise NOT
x0 1x 0x
Z Z Z U U 0 assign Qbar = !(R & Q); //logical NOT
FF JK por Diagrama de estados (Moore) endmodule
FF JK p/ Tabela de estados (modelo Moore) module JKmsff (J, K, CK, Q, Qbarra);
input wire J, K, CK;
J K Qt Qt+1 output wire Q, Qbarra;
reg CKbar, ck_Sm, ck_Rm, ck_Ss, ck_Rs;
0 0 0 0 output QM, QMbarra;
always @(posedge CK)
0 0 1 1 begin
0 1 0 0 ck_Sm <= ~(CK & J & Qbarra);
ck_Rm <= ~(CK & K & Q);
0 1 1 0 CKbarra <= ~CK;
1 0 0 1 ck_Ss <= ~(CKbarra & QM);
ck_Rs <= ~(CKbarra & QMbarra);
1 0 1 1 end
1 1 0 1 latchRS RSmaster (ck_Sm,ck_Rm,QM,QMbarra);
latchRS RSslave (ck_Ss, ck_Rs, Q, Qbarra);
1 1 1 0 endmodule
FF JK por logigrama FF JK: Tabela Característica Linguagem descritiva de hardware (LDH): Verilog
fig.16 FF JK M/S LDHs, no caso acima SystemVerilog, são , hoje em dia, a forma de eleição p/o projecto de circuitos integrados!
34
Electrónica Digital I – Enga. Electrónica
Sumário AT10

Sistemas Digitais Sequenciais:


1. Introdução aos Sistemas Sequenciais. Definição, caracterização e representação;

2. Flip-flops:
i. Flip-flops(FFs, F/Fs). Definição. Caracterização: Tabela característica (TVd),
Diagrama de Estados, Equações Características, Tabela de excitação/transições;
logigramas; diagramas temporais.
ii. Apresentação evolutiva dos flip-flops: SR, RST, D, JK, T. Qualidades e defeitos. Flip-
flops Síncronos vs assíncronos. Flip-flops activados por níveis vs activados pelos
flancos. Universalidade do FF JK;
iii. Entradas síncronas (CK, RS,JK, D, T) vs entradas assíncronas (ou directas: Pr e Clr ).
Importância destas. Precauções;
iv. Aplicações dos flip-flops. Exemplos de Flip-flops comerciais: SR: 74x279, D:4013,
74x74, 74x175; JK:4027, 4095/6 (MS), 74x111 (MS), 74x76, 74x107.

3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;


4. Registos;
5. Contadores.
35
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops. Definição e caracterização
Flip-flops (FFs ou F/Fs), são memórias básicas de 1 bit. Basicamente eles são
(multivibradores) biestáveis (c/as características do biestável básico
desprovido de inputs[sl.37]), sendo que os flip-flops têm inputs que permitem
deterministicamente controlar para que estado o FF vai: 0 ou 1. Daí, um FF
tem a capacidade de armazenar de forma estável 1 bit (0 ou 1). Um FF é per si
uma MEF de 2 estados 0 e 1. Não obstante qualquer desses bi-estáveis ser
considerado flip-flop na generalidade, há categorias de flip flops, relativo à
forma como as mudanças de estado podem ocorrer:
ü FFs assíncronos (as mudanças de estado podem ocorrer a qualquer altura);
ü FFs síncronos:
a. FFs (pseudo) síncronos, activados pelos níveis (baixo ou alto);
b. FFs (propriamente) síncronos, activados nos flancos (ascendente ou
descendente, o que corresponde a flanco positivo ou negativo);
Os FFs assíncronos ou os activados por níveis são frequentemente chamados
de trincos (latches) enquanto os activados nos flancos são chamados como os
propriamente: bi-estáveis ou flip-flops.
A caracterização desses FFs é aqui feita gradativa e evolutivamente, a saber:
36
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops (FFs): Caracterização do circuito bi-estável básico
O circuito sequencial mais simples consiste em um par de
inversores formando um loop de feedback mútuo. Uma
análise digital mostra que ele possui dois estados estáveis:
ALTO nível (HIGH, Q=1) e BAIXO nível (LOW, Q=0).

Com efeito: Suponhamos inicialmente que Q está ALTA, Fig.17a: Biestável conceitual
então ela força o inversor inferior a uma saída BAIXA, o que
por seu turno força o inversor superior a produzir uma saída
ALTA (como assumido inicialmente).Esta observação se
mantém mesmo no caso de supormos que inicialmente Q
está com saída BAIXA.
O único inconveniente do circuito é que não tendo Fig.17b

entradas, não é controlável. Quando lhe é aplicada


energia, ele, aleatoriamente (ou segundo a assimetria
elétrica entre as NOTs), assume um dos estados e
permanece lá p/sempre, até ser desligado. Dessa forma,
não pode ser usado como célula de memória p/aceitar e
armazenar variáveis de estado duma MEF ou de outra Fig.17b e 17c: Biestável :
índole. Mas ele é o ponto de partida p/entender a meta-estabilidade
génese dos FFs: vide o SR básico que vai a seguir [sl.38]. 37
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops SR (Set - Reset) (também chamado de RS) Básico
Qualidades: É bi-estável (tem os estados 0 e 1) e usando os inputs S e R,
conforme a TVd abaixo, exceptuando SR=11, permite mudar de um estado a
outro de forma previsível e determinística. É o primeiro FF, a raiz da árvore.

fig.18a Trinco (latch) RS à base de NORs fig.18b Trinco (latch) RS à base de NANDs fig.18c Símbolo de SR básico

Flip-Flops SR [sl.38 a 45] - DdE e Tabelas: Característica (TVd) e de Excitação


(TVd) Tabela característica Diagrama de estados Equações características Tabela de excitação

OBS1

fig.18d
OBS1: Transição parasita: Reservada para representar os estados parasitas (excitações indiferentes ou don't cares) no mVK
NB: A combinação SR = 11, é proibida[vide sl.39]. No caso geral, acima, é suposto que nunca será alimentada à MEF (vide o DdE);
daí, na TVd, p/ SR=11, a saída Qnext = x (don't care). Contudo, caso SR==11 for alimentada, forçará as saídas de ambas portas
de qualquer dos FFs acima ao valor 1, o que viola a complementaridade das saídas Q e Q'. Vide outros aspectos no sl.39.
38
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais fig.19a
Flip-Flops SR. Defeitos
São defeitos do FF SR básico:
O O facto de ser assíncrono e isso permitir a mudança de
estados a qualquer altura, pode propiciar uma exposição
persistente ao ruído que afecte as entradas. A trepidação
não intencionada na altura de mudar os valores das
entradas, é outra possível desvantagem, dependendo da
forma como os dispositivos de input estão conectados às
entradas S e R. fig.19b
O A combinação de entrada SR=11:
Mresulta numa saída ilegal das variáveis de estado em
que Q = Q' (vide as TVd's ao lado): Q e Q' devem ser
complementares, o que é violado. Ademais:
MQuando o estado actual é esse ilegal, e a entrada
seguinte for SR=00, o “estado ilegal” não se mantém, e
pior: o comportamento seguinte é não-determinístico:
não se pode saber ao certo qual é o próximo estado, se
NB: A combinação SR = 11, é
0 ou 1. É daí que é proibido o uso do SR=11. proibida, porquanto se
SR=11 é alimentado, cria
Face a estas limitações, existem formas (i) de mitigação [vide uma saída (estado) ilegal
sl.40] e (ii) novos FFs foram criados, sendo o imediato, onde Q e Q' ficam iguais!!
cronologicamente, o RST (RS c/habilitação) [vide sl.41]. 39
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops SR. Defeitos e sua mitigação:
i. Abaixo está FF SR básico (à base de NANDs, onde
as entradas SR estão negadas, pode-se mudar o
circuito para a polaridade contrária). O circuito fig.20b
não permite a alimentação simultânea do valor 0
a a m b a s a s e n t ra d a s S ' e R ' . I s s o exc l u i a
combinação de entrada ilegal e dessa forma, a
saída de estado ilegal.
ii. Outras alternativas de mitigação: incluir lógica
fig.20c
adicional que converta a entrada SR=11 numa das
outras 3 combinações legais de S e R.

fig.20d

NB: Entradas negadas: A combinação S'R' = 00,


fig.20a
é proibida , p o rq u a nto s e S ' R ' = 0 0 é
alimentado, cria uma saída (estado) ilegal
onde Q e Q' ficam iguais!!
VtC: proponha as 3 lógicas alternativas. Electrónica Digital I – Enga. Electrónica
40
Sistemas sequenciais
Flip-Flop RST Básico

+C =

fig.21b Trinco (pseudo) síncrono RST =


fig.21a SR básico fig.21c Símbolo do RST
= habilitado por relógio (clocked SR latch)

Qualidades do FF RST:
ü A habilitação pelo C (clock, relógio de habilitação), é uma evolução em
relação ao RS básico pois enquanto o C está inactivo as saídas deste FF
permanecem estáveis;
ü Ademais, isso diminui a janela temporal de exposição a eventual ruído nas
entradas do FF. Elimina-se também alguma possível trepidação na troca dos
valores de input, bastando activar o C apenas depois de um tempo de
estabelecimento dos novos valores das entradas;
ü Se o período activo do C for muito curto o comportamento deste RST se
aproxima ao de um FF activado no flanco [vide FF a seguir].
41
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops RST Básico. Defeitos
O O FF RST não é propriamente síncrono, uma vez que quando o C (clock) fica
activo, o FF se comporta igual ao RS básico assíncrono, sendo que o RST
será tão próximo do SR básico quanto mais longo o período activo do C; É
por esse motivo que o RST é activado pelo nível (do sinal) alto, ou baixo, e é
colocado na categoria dos trincos (latches), apesar de ter esta entrada C.
O Em particular, persiste o defeito hereditário do RS básico quando a
combinação SR = 11 (ou S'R'=00). Essa combinação continua portanto a ser
proibida. A alimentação dessa combinação às entradas do RST quando o C
está activo produz os mesmos problemas caracterizados no SR básico.
Face às limitações acima, entre as alternativas tecnológicas se destacam:
ü Mitigação: (i) recorre-se a circuitos de entrada propostos no sl.40, pelos
quais se minimiza ou completamente se elimina a possibilidade de
alimentar a combinação ilegal; (ii) encurtamento do tempo activo do C
visando comportamento similar a activação p/flancos (ex: o SR M/E):
ü Surgimento de novos FFs sendo imediatamente: o FF RS mestre-escravo
(M/E ou M/S) e paralelamente os FFs D, casos particulares do SR, baseados
nas três versões deste (SR Básico assíncrono, RST e SR M/E).
42
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops RST Básico c/ entradas assíncronas Preset(Pr) e Clear(Cl)
Definição/Caracterização:
As entradas assíncronas Preset(Pr) e Clear(Cl,
Clr) são respectivamente as entradas Set (S) e
Reset (R) do FF SR básico. Elas só existem e =
fazem sentido num FF síncrono ou habilitado
por um relógio. Importante!: Quaisquer Pr ou Cl
de qualquer FF (RST, D, JK, T) são equivalente
fig.22a
aos S e R do FF SR básico neles embutidos.
Utilidades do Preset e Clear:
Servem para rapidamente inicializar o FF (ex:
quando se liga energia ao circuito e assim
assegurar que a MEF começa no seu estado
inicial; para forçar o FF, ou associação de FFs a
um dado estado, etc.).
=
Precauções:
Ter em conta que dependendo da forma como
fig.22b
usar o Pr e Cl os defeitos do SR básico podem re-
emergir; ou outros problemas de corrida crítica.
Electrónica Digital I – Enga. Electrónica
43
Sistemas sequenciais
Flip-Flops SR Mestre-Escravo (M/E) (Master - Slave: M/S)
Flip-Flop SR Mestre-Escravo, um FF activado no flanco negativo

Mestre Escravo = M/S

fig.23a O estado é gravado no FF activado no flanco (simbolizado pela seta


escravo no flanco negativo (triângulo) por detrás do Ck); flanco negativo fig.23b Símbolo do SR M/S

V
do Ck. (simbolizado pela bolha na entrada Ck)

Qualidades do FF SR M/S:
ü Encurta ao mínimo a janela temporal de exposição do estágio escravo (que
é aquele que grava o estado do FF) aos eventos externos, sendo que as
suas entradas são as saídas do mestre; por isso se a saída (estado) do
mestre é legal (ou mesmo não) quando ocorre o flanco negativo do Ck,
então essa saída (do mestre) é gravada, precisamente nesse flanco.
ü Todas as vicissitudes nas varáveis de input, incluindo a ilegal SR=11, são
ignorados pelo FF a menos que aconteçam dentro do período de
antecipação + gravação no escravo, no flanco descendente do Ck. 44
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops SR Mestre-Escravo.Defeitos: Mestre Escravo

Defeitos do FF SR M/S:
O Durante o semi-período positivo do Ck, quando este está activo a nível do
FF SR mestre, pode haver lugar à alimentação da combinação proibida
SR=11, a qual pode propagar-se para a saída do mestre e produzir a saída
ilegal Q=Q'=1, a ponto de por eventualidade estar presente na entrada do
escravo durante o flanco descendente do clock; ou seja, como Q=Q'=1,
nessa altura na entrada do escravo estar-se-á a alimentar a combinação
ilegal. Portanto o problema do SR=11→Q=Q' ainda não desaparece
completamente com o SR M/E.

Formas de mitigação e outros caminhos tecnológicos de escape:


ü Mitigação: (i)Usar circuitos de entrada que visam evitar o SR=11 [sl.40];
e/ou: (ii) permitir um tempo adequado de estabelecimento (estabilização)
dos inputs legais desejados, antes da chegada do flanco negativo do Ck.
ü Uma série de FFs mais avançados surgiu, que resolve o arqui-problema do
SR=11→Q=Q': são os FFs JK (básico, e JKs activados nos flancos) [sl. 50-53].
45
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Flip-Flop D Básico
R=S'
D=S =
fig.24a fig.24b Constituição interna do fig.24c Símbolo do trinco
SR básico
trinco (latch) D básico D básico
Qualidades do FF D básico:
ü Elimina a nível do SR nele embutido a combinação de entrada proibida
SR=11, uma vez que R é complemento do S.
ü É um gravador de dados por excelência uma vez que ele grava o bit que lhe
é presente na entrada.
Flip-Flops D [sl.46 a 49] - DdE e Tabelas: Característica (TVd) e de Excitação
(TVd) Tabela característica Diagrama de estados / Equação característica Tabela de excitação

OBS1

fig.24d OBS1: Transição parasita: Reservada para representar os estados parasitas (excitações don't cares) no mVK
46
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Flip-Flop D Básico

Q = 1 ou Q = 0 ou Q = meta-estável

fig.25 Diagrama de sinais do FF D mostrando, tempos de atraso de propagação tp e tempo de abertura: tsetup+thold

Defeitos do FF D básico:
O A transformação SR p/ D não é perfeita, porquanto perde-se SR=00, que
permitia a manutenção do estado anterior, dessa forma:
O O trinco D básico comporta-se como se de um circuito simplesmente
combinatório se tratasse, pelo facto de ser completamente transparente
ao input D e sua saída de estado nunca ser determinada pelo seu estado;
O É muito susceptível à eventual trepidação eléctrica ou electromecânica,
etc., dos circuitos de input no tempo de estabelecimento durante as
mudanças, dependendo isso de como o D está ligado à fonte do input.
Electrónica Digital I – Enga. Electrónica
47
Sistemas sequenciais. Flip-Flop D Básico c/Habilitação
R=S'
D=S =
fig.26a SR básico Constituição interna do trinco Símbolo do trinco D
fig.26b fig.26c
(latch) D básico c/habilitação básico c/habilitação
Qualidades do FF D c/entrada de Habilitação:
ü Elimina a nível do SR nele embutido a combinação de entrada proibida
SR=11, uma vez que S é complemento do R (o mesmo que o D básico).
ü É um gravador de dados por excelência uma vez que ele grava o bit que lhe
é presente na entrada.
ü Tem melhorias em relação ao D básico simples pois já pode guardar os
dados de forma persistente, enquanto a entrada C estiver inactiva.
Defeitos do FF D básico c/habilitação:
O Tal como no caso do RST nele embutido, quando C estiver activo (tanto
pior quanto mais longo for o tempo que permanecer activo): o D básico
habilitado, passa a comportar-se como o D básico assíncrono sem entrada
de habilitação, com todas os s/ defeitos.
48
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops D Mestre-Escravo (derivado do SR M/E)
Flip-Flop SR Mestre-Escravo, um FF activado no flanco negativo

R=S' M/S

D=S
=

fig.27a FF SR M/E Constituição interna do FF D


fig.27b fig.27c S í m b o l o
Mestre/Escravo do D M/S

Qualidades do FF D M/S:
ü Encurta ao mínimo a janela temporal de exposição do estágio escravo (que
é aquele que grava o estado do FF) aos eventos externos, sendo que as
suas entradas são as saídas do mestre. Se a saída (estado) do mestre
estiver estável respeitando o tempo de abertura (t setup +t hold ) quando
ocorre o flanco negativo do Ck, então essa saída (do mestre) é gravada,
precisamente no flanco descendente.
ü Todas as vicissitudes nas varáveis de input, tais como trepidação ou ruído,
são ignorados neste FF a menos que aconteçam dentro do tempo de
abertura requerido p/a gravação no escravo, no flanco negativo do Ck. 49
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops JK Básico
O flip-flop JK (de Jack Kilby, seu criador) é uma evolução do SR que resolve o
s/arqui-problema SR=11→Q=Q'. Considere para simplicidade que S e R são
respectivamente iguais a J e K. O comportamento (TVd) do JK é similar ao do
SR, excepto quando SR=JK=11: Neste caso o JK inverte o s/estado. Quanto às
outras combinações de entrada (SR=JK=00, 01, 10) a TVd do JK é igual à do SR.
feedback
+ cruzado; =
J=S; K=R
fig.28a fig.28b Constituição do trinco JK básico fig.28c
SR básico Símbolo do JK básico

Flip-Flops JK [sl.50 a 53] - DdE e Tabelas: Característica (TVd) e de Excitação


(TVd) Tabela característica Diagrama de estados / Equação característica Tabela de excitação

OBS1

fig.28d
OBS1: Transição parasita: Reservada para representar os estados parasitas (excitações don't cares) no mVK 50
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops JK Básico. Qualidades e defeitos
Qualidades do JK
ü é uma evolução do SR que resolve o s/arqui-problema SR=11→Q=Q', uma
vez que como visto na diapositiva anterior, quando as entradas são iguais a
1, o FF JK muda de estado;
ü O FF JK é universal: Uma vez que o FF JK é um FF SR (a menos do SR=11)
então o FF JK pode se transformar no FF D usando o mesmo procedimento
visto para obter o FF D partindo do FF SR. Ademais o novo comportamento
de inverter (to toggle) de estado quando JK=11, cria um novo tipo de FF, o
T (toggle) um caso particular do FF JK para este caso de J=K [vide o T sl.54].
Isto significa que o FF JK é universal porquanto ele transporta em si os
quatro tipos de FFs: SR, D, JK e T (pode se ver na sua TVd / tabela
característica no sl.50).
NB: Não obstante o facto de o JK ser um resumo do comportamento dos
outros FFs e poder facilmente se transformar neles, é preciso notar que
qualquer dos outros FFs pode ser transformado para quaisquer outros, via o
processo de síntese a partir do DdE do FF de partida[sl.58-64], ou s/recorrer à
síntese: p/interligação simples, que requer a ajuda de apenas 1 ou mesmo
nenhuma porta lógica adicional. EI: investigue (vide sl.90, [2], etc.).
51
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops JK Básico. Qualidades e defeitos
Defeitos do trinco (latch) JK básico da diapositiva anterior:
O Quando a entrada C (clock) ficar activa por um tempo suficientemente
longo (múltiplo do seu tempo de comutação), e as sua entradas presentes
foram JK=11, então o trinco JK básico se comportará como um
multivibrador astável, pois vai mudar de estado tantas vezes quantas as
permitidas pela duração do C activo;
O A menos do caso acima visto, em que a entrada JK = 11, o trinco JK básico
transporta os riscos ou defeitos já discutidos, dos trincos temporizados que
ele contém: RST e D temporizado [vide sls. 42, 47, 48].

Mitigação dos defeitos:


ü O período activo do C deve ser curto para minimizar possível oscilação,
bem como outros defeitos de comportamento induzidos por um tempo
longo do C. Paralelamente,
ü Permitir um tempo de abertura (= setup + hold times) adequado**, ie, que
os inputs estejam estáveis o tempo suficiente à volta do tempo gravação
pelo C, p/ minimizar eventuais problemas de meta-estabilidade[1,8,14,16]
e corrida crítica: (** a falha em respeitá-lo recai na meta-estabilidade).
A meta-estabilidade é um problema geral de todos os bi-estáveis, não somente do JK, ou dos FFs.
52
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops JK Mestre-Escravo
feedback
+ + cruzado;
J=S; K=R
=
fig.29a fig.29b fig.29c Símbolo do JK M/S
SR básico x 2 Construção do FF JK M/E

Qualidades do FF JK M/S:
ü Elimina a possibilidade de oscilação que se observava no JK básico pois o JK M/S
(ie, seu estágio escravo) é activado no flanco negativo, sendo que a sua
realimentação não se pode de novo propagar porque quando o escravo está
activo, o mestre está inactivo e daí, incapaz de propagar o feedback cruzado e
invertido do estágio escravo;
ü É o melhor FF pois é universal e é activado no flanco, que são ascendentes sobre
os activados por níveis ou absolutamente assíncronos; e sendo sabendo também
que o JK comporta todos os flip-flops c/a uma simples transformação, que no
máximo precisa de uma porta NOT (o caso do FF D).
Defeitos do JK M/E: Dois estágios significam maior complexidade em relação ao JK
básico c/ as seguintes consequências: maior tempo de propagação, maior espaço
num CI, maior consumo em potência (Na engenharia também: não há vantagens absolutas!).
53
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Flip-Flops T (Toggle)
O flip-flop T (Toggle) é, como já referido um caso particular do FF JK, para o
caso em que J=K, sendo que quando T=J=K=0, o FF conserva o seu estado. Ao
passo que quando T=J=K=1, o FF muda para o estado complementar. Tudo o
que se disse e se possa dizer sobre o FF JK, para J=K, é válido para o FF T. Por
isso dispensamos a análise de qualidades/defeitos, porquanto já visto no FF JK.

R=S'
D=S =
Para obter o T, pode-se usar
JK básico, M/E, ou qualquer fig.30b Construção do FF T fig.30c
fig.30a FF JK básico Símbolo do FF T
outro género de JK.

Flip-Flop T - DdE e Tabelas: Característica (TVd) e de Excitação


(TVd) Tabela característica Diagrama de estados / Equação característica Tabela de excitação

OBS1
fig.30d
OBS1: Transição parasita: Reservada para representar os estados parasitas (excitações don't cares) no mVK 54
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Aplicações dos Flip-Flops. Exemplos de Flip-Flops em CIs
Os flip-flops são aplicados como:
i. registos das variáveis de estados para máquinas de estados;
ii. células unitárias de memória associadas para construir registos
paralelos, de deslocamento e doutros tipos.
iii. c é l u l a s u n i t á r i a s d e m e m ó r i a a s s o c i a d a s p a r a c o n s t r u i r
contadores/geradores de sequência de diversos tipos.
iv. células unitárias de memória associadas para construir bancos de
memória de diversas formas de acesso: aleatório, FIFO, LIFO (pilha), etc.

Exemplos de Flip-flops comerciais em CIs:


ü SR: 74x279,
ü D:4013, 4175, 74x74, 74AC11074;
ü JK:4027, 4095/6 (M/S), 74x111 (M/S), 74x73/76/78,
74x107/109/112/113/114, 74AC11109/112.
fig.31 FF D: 74x74
EI: Encontre na literatura os datasheet das referências listadas acima.
55
Electrónica Digital I – Enga. Electrónica
Sumário
AT11
Sistemas Digitais Sequenciais:
1. Introdução aos sistemas sequenciais: Definição, caracterização e representação;
2. Flip-flops;

3. M o d e l a çã o, a n á l i s e e s í nte s e d u m s i ste m a
s e q u e n c i a l . D o e n u n c i a d o d o p ro b l e m a a o
logigrama:
i. Descrição do problema;
ii. Representação formal do sistema sequencial sob a forma de: DdE, TdE, ASM chart,
e/ou em linguagem descritiva de hardware (LDH: AHDL, VHDL, Verilog, ...).
iii. Síntese do sistema;
iv. Construção e teste (e eventualmente: distribuição/implantação/manutenção) do
sistema (L).

4. Registos;
5. Contadores.

56
Electrónica Digital I – Enga. Electrónica
Sistemas Sequenciais
Modelação, Análise e Síntese de Sistemas Digitais Sequenciais
Passos do projecto de um sistema sequencial:
1. Descrição do problema (no modelo textual, ou também possivelmente: verbal):
a. enunciado do problema (no início este pode ser parco, e omisso). Como parte desta alínea e seguintes:
desenhos, diagramas (ex: DdT) e outras presentações visuais, são importantes e frequentemente
indispensáveis. Deve haver preocupação em definir claramente inputs e outputs.
OBS: Exemplos simples, dispensam as alíneas seguintes. Por s/vez, sistemas complexos podem sugerir a
divisão do problema em partes, e daí, as respectivas soluções parciais, devendo-se garantir harmonia
(entre as entradas, saídas e comportamentos) das partes no sistema final.
b. Descoberta/descrição (análise) dos requisitos de funcionamento do sistema, incluindo, se aplicável:
(i) observação directa, da “geografia” e da “física” (visita ao local, ao mini-mundo) do problema;
(ii) entrevistas c/ partes interessadas e/ou afectadas (stakeholders);
(iii) recolha de dados existentes em arquivos ou bancos de dados; etc.
Neste exercício determine os requisitos de funcionamento (ou outros aspectos) eventualmente omissos ou
ambiguos, segundo princípios de risco mínimo vs custo mínimo, ou de funcionalidade, utilidade,
conforto/ergoomia, conveniência ambiental, etc.; aliando tal análise com aspectos do ponto 4.
c. Detalhe das especificações exactas de funcionamento (no projecto físico, detalha-se também alguns [= lista
preliminar dos] artefactos ou meios necessários e suficientes p/a construção do sistema que satisfaz os
requisitos da alínea anterior e que resolve o problema em análise).
2. Representação formal do sistema sequencial sob a forma de: DdE, TdE, ASM chart, e/ou em linguagem
descritiva de hardware (LDH: VHDL, Verilog, ...). Para exemplos simples, um DdE ou TdE são os recomendáveis
e suficientes. (As técnicas de design via LDH's em verdade, são transversais, podendo englobar o essencial dos
passos 2, 3 e 4, bem como partes do nr.1);
3. Síntese do sistema (obtido no pt.2) para a sua forma final simplificada, usando um método de síntese,
frequentemente: mVK (partindo neste caso dum DdE, TdE, ASMc): O que se obtém: expressões algébricas que
se representam também em logigrama [ sl.58 a 64, 82 e 83].
4. Construção, teste, documentação (bem como: distribuição/implantação) do sistema. Aspectos tecnológicos:
escolher os componentes c/cuidado (custo/eficiência, logística, obsolência), etc.
57
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Síntese dum S.S: Do Diagrama de estados (ou TdE, ASMc) ao logigrama
Na diapositiva anterior está o roteiro resumo do projecto e implementação
dum sistema digital sequencial. Para simplicidade da n/abordagem, o foco vai
abaixo p/o processo de síntese, sobretudo os procedimentos considerados
essenciais, sendo que alguns dos aspectos, nomeadamente as MEFs e sua
minimização já foram introduzidos.
A análise e síntese de um sistema, são realizados nos seguintes passos:
1. Determinação do DdE e/ou TdE partindo do enunciado (c/os inputs e
outputs claramente definidos);
2. Minimização/optimização de estados;
3. Atribuição de códigos aos (codificação dos) estados;
4. Passagem do DdE ou TdE aos mVK's de transições;
5. Escolha dos FFs (podes sempre escolher qualquer dos flip-flops);
6. Passagem dos mapas de VK de transições aos mapas de excitação do FF
escolhido;
7. Obtenção das expressões algébricas de excitação do FF escolhido;
8. Elaboração dos mapas de VK das saídas;
9. Obtenção das expressões algébricas das saídas;
10. Desenho do logigrama final do circuito.
OBS: Os passos 4, 5 e 6 podem ser encurtados de formas diversas, o que será visto.
58
Electrónica Digital I – Enga. Electrónica
Sistemas Sequenciais
Síntese dum S.S: Do Diagrama de estados (ou TdE, ASMc) ao logigrama (cont.)
Enunciado: Obter o logigrama de um SS com entrada E e saídas ZY as quais enquanto
a entrada E continuar nula, exibirão os valores 00 ou 01 de forma alternada a cada
momento k do clock, sabendo ainda que ao se ligar energia, a saída assumida é 00.
Logo que E se tornar 1, as saídas exibirão 11 daí e para sempre.
ü DdE: Os respectivos DdE e TdE (mod.de Moore) estão
ilustrados ao lado (vide o s/modelo de Mealy no sl.33).
ü Minimização de estados: a MEFD dada é mínima [vide sl.32,
a respeito de minimização de estados]; (a)
fig.32
ü (Tabela de) Codificação de estados (TCdE) (vide abaixo):
O número de estados (3) sugere 2 variáveis de estado: Estado
Presente
Próximo Estado Saída
(No Estado.
Presente)
nv = log2 ne; ie, nv = log2 3 = 2; onde, E=0 E= 1 ZY
M N P 00
nv é o num.de variáveis de estado e ne o num. de estados. N M P 01
Na 2a. tabela está presente a codificação dos estados proposta, P P P 11
(b)
que é apenas uma das possíveis: Há vários arranjos de 3 a 3 Estado BA
(p/ MNP) das 4 combinações de 2 variáveis de estado. M 00

Por outro lado o código sobressalente, 11, tornar-se-á uma N 01

indiferença no mVK das transições, pois decidiu-se tomar a P


x
10
11 (c)
abordagem de menor custo: ignorar estados parasitas (neste Tabela de Codificação
caso 11), ie, os sobressalentes à codificação, o que acontece de estados (TCdE)

quando ne não é dual perfeito como no caso vertente.


59
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Síntese dum S.S: Do Diagrama de estados (ou TdE, ASMc) ao logigrama (cont.)
Passagem do DdE ou TdE aos mapas de Veitch- Estado BA
Karnaugh (mVK's) de transições: M 00
É conveniente usar mapas de transições p/ ter a N 01
liberdade de no passo seguinte escolher qualquer FF. P 10
Mas estes mapas podem ser omitidos, passando x 11
directamente do DdE ou TdE p/ o mVK de excitações. Tabela de Codificação
de estados (TCdE) DdE (modelo de Moore)
TdE (s/as saídas)
Estado Próximo Estado sobressalente, ie, parasita:
Presente Estado Como se vê abaixo, ele produz don't Caminho D-Tr-Ex (do DdE), parte1
E=0 E= 1 B
M N P cares nas tabelas e mVKs de transições:
Esta é a abordagem de menor custo, BA
N M P
P P P versus uma abordagem de menor risco. E 00 01 11 10
x x x

Estado Próximo Estado Próximo


0 0 0 x 1
Presente Estado Presente Estado
E=0 E= 1 E=0 E= 1
Estado BA BA BA BA BA BA BA 1 α α x 1
M 00 M 00 01 10 M 00 0α α0
N 01 N 01 00 10 N 01 0β αβ A
P 10 P 10 10 10 P 10 10 10
BA
x 11 x 11 xx xx x 11 xx xx
E 00 01 11 10
Tab. de Codif. TdE codificada (é tb. uma Tabela de Transições
de Estados tab. de transições implícitas) (c/transiç. explícitas) 0 α β x 0
Caminho T-Tr-Ex (da TdE), parte1
1 0 β x 0
Opções de procedimento: Os caminhos T1 e T2, parte 1,
conduzem aos mVK's de transições. Na diapositiva seguinte, mVK's de Transições
vai-se destes mVKs de transições aos de excitações respectivos. fig.33
60
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais JBt
E
BA
00 01 11 10 É
Síntese dum S.S: Do DdE/TdE/ASMc ao logigrama comum
omitir o
0 0 0 x x índice t
Escolha dos FFs, passagem dos mVK's de transições p/os de
excitação e obtenção das expressões algébricas e logigrama:
1 1 1 x x JB = E
B fig.34
BA
KB t
BA
00 01 11 10 00 01 11 10
E E
0 0 0 x 1 0 x x x 0
KB = 0
1 α α x 1 1 x x x 0
NB: Agrupamento vazio p/o K
Tabela de Excitação JK
J At
BA
E 00 01 11 10
A
BA 0 1 x x 0 JA = E B
E 00 01 11 10

0
1 0 x x 0
α β x 0
K At
1 0 β x 0 BA
E 00 01 11 10

Caminhos (T ou D)-Tr-Ex, parte 2 Tabela de Excitação JK 0 x 1 x x


KA = 1
Os caminhos T1 e T2, parte2: Escolher um FF, e dos mVKs de
1 x 1 x x
transições obtidos na diapositiva anterior, conjugados a tab.de
excitação do FF escolhido, vai-se aos mVK's de excitações e daí, mVK's de excitação
mVK's dedoTransições
FF escolhido: JK
às expressões algébricas de excitação dos FFs escolhidos. Electrónica Digital I – Enga. Electrónica
61
Sistemas sequenciais JBt

E
BA
00 01 11 10
Síntese dum S.S: Do DdE/TdE/ASMc ao logigrama
Passagem dos mVK's de transições p/excitação e (cont.) 0 0 0 x x
obtenção das expressões de excitação dos FFs:
1 1 1 x x JB = E
KB t
Caminho D-Ex: BA
E 00 01 11 10

0 x x x 0 KB = 0
1 x x x 0
Estado Próximo
Presente Estado J At NB: Agrupamento vazio p/o K
E=0 E= 1
Estado BA BA
M 00
M N P
N 01 E 00 01 11 10
N M P P 10
P P P x 11 0 1 x x 0 JA = E B
x x x
Tabela de
TdE (s/saídas) Codificação Tabela de Excitação JK 1 0 x x 0
de Estados
Caminho T-Ex: K At
fig.35 BA
E 00 01 11 10
Caminhos D-Ex e T-Ex: Escolha do FF, p/ex.: o Vide diapositiva
JK, e partindo do DdE ou do TdE, conjugado seguinte o 0 x 1 x x
c/as tabela de codificação de estados e c/a caminhos T-Tr ou KA = 1
de excitação do FF escolhido, passa-se D-Tr: que omitem 1 x 1 x x
directamente p/os mVKs de excitação do FF o uso dos mVK's
de excitação. mVK's de excitação do FF escolhido: JK
escolhido e daí, às s/expr. de excitação.
Electrónica Digital I – Enga. Electrónica
62
Sistemas sequenciais
Síntese dum S.S: Do DdE/TdE/ASMc ao logigrama (cont.)
Estado Próximo
Caminhos T-Tr ou D-Tr Escolha do FF, seja
Passagem dos mVK's de Presente Estado
E=0 E= 1 p/ex.: o JK, seguido-se a passagem do mapa
transições directamente para M N P de transições directamente às expressões
N M P
expressões de excitação dos FFs: lógicas de excitação do FF escolhido:
P P P
x x x
do TdE (ou do DdE) fig.36
Regras de agrupamento de B
transições (vide tabelas de excit. JK): Estado BA BA
M 00 E 00 01 11 10
N 01
Para obter J: P 10 0 0 0 x 1 JB = E
O É proibido agrupar 0's; x 11 TCdE

ü É obrigatório agrupar α's; 1 α α x 1


Trans. Exicit. KB = 0
§ É opcional agrupar 1's, β's e x's. Nome Q Qt+1 J K
0 0 0 0 x NB: Agrupamento vazio p/o K
Para obter K: α
β
0
1
1
0
1 x
x 1 A
O É proibido agrupar 1's; 1 1 1 x 0
BA
x x x x x
ü É obrigatório agrupar β's; E 00 01 11 10
Tabelas de Excitação do
§ É opcional agrupar 0's, α's e x's. flip-flop JK 0 α β x 0 JA = E B
Nota: As regras são para cada FF, sendo Aa colocar
tabela de excitação
aqui, é a do
ditadas pela respectiva tabela de FF escolhido (e daí 1 0 β x 0 KA = 1
transições/excitação. também, as respect.
expressões algébricas). mVK's de Transições e
Vantagens desta opção (Caminho E3):
Dum mVK de transições do sistema, é possível extrair as expressões de excitação de qualquer flip-flop!
TPC3: P/os FFs SR,D, e T: tente reconstruir as regras de agrupamento p/transições, a partir das TVd's de excitação desses FFs.
Electrónica Digital I – Enga. Electrónica
63
Sistemas sequenciais
Síntese dum S.S: Do DdE/TdE/ASMc ao logigrama
Mapas das saídas e obtenção das (conclusão)
expressões lógicas e logigrama:
fig.37
Importante:
Usando modelo de Mealy, as entradas POR (Power-On Reset): ao se ligar Logigrama do Sistema
(neste caso E), devem fazer parte do energia, o transitório RC no Clear Zt
mapa das saídas (VtC: Porquê?): dos FFs, zera-os, garantindo A
0 1
assim a efectividade do estado B
U s a n d o m o d e l o d e M o o r e , a s inicial (BA=00) da MEF. Um botão
entradas (neste caso E), não devem m a n u a l Re s e t n o r m a l m e n t e 0 0 0
fazer parte do mapa das saídas (VtC: aberto, seria colocado entre
aquele ponto e o terra. 1 1 x
Porquê?), que é o caso presente:
Estado Próximo Estado Saída
Z=B
Presente (No Estado B A Z Y Yt
Presente) Estado BA
0 0 0 0 A
E=0 E= 1 ZY M 00 0 1
N 01 B
M N P 00
0 1 0 1
P 10
x 11 1 0 1 1 0 0 1
N M P 01
1 1 x x
Tabela de
P P P 11
Tabela das
1 1 x
Codificação de
Tabela de Estados estados Saídas
Y = B+A
NB: A TVd das saídas deste caso é muito simples: Dispensaria levá-lo aos mVK's. O exercício feito acima,
incluindo os mVK's, visa ser completo e didáctico quanto ao procedimentos generalizados de síntese. mVK's das saídas.

EI: Há outros formatos/caminhos p/realizar a síntese de SSs [ex: vide sl.82, 83]. Investigue outros.
TPCs: Usando a metodologia de síntese das diapos.58 a 64, resolva os TPC 8 e 9. 64
Electrónica Digital I – Enga. Electrónica
Sumário
AT12

Sistemas Digitais Sequenciais:


1. Introdução aos sistemas sequenciais: Definição, caracterização e representação;
2. Flip-flops;
3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;

4. Registos:
i. Paralelos (carregamento e leitura de dados em paralelo): PIPO;
ii. De deslocamento (RdDs): SISO, PISO, SIPO, RDUs (=USRs).

5. Contadores.

65
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos
O que é um Registo:
Um registo ou registador é uma associação de 2 ou mais flip-flops, com a
função de armazenar igual número de bits de informação. Os registos
caracterizam-se por ter diversos modos de acesso, o mais universal dos quais
é o acesso livre paralelo tanto para a escrita dos dados quanto para a sua
posterior leitura.
É precisamente no conjunto de modos de acesso onde assenta a classificação
dos diversos tipos de registos (PIPO, SIPO, PISO, SISO, RDU), a saber:
Registo Paralelo (PIPO = Parallel-in Parallel-Out):
O carregamento e leitura (dos bits) de dados são feitos em paralelo:

Registo 74HC164 (PIPO 6 bits c/Master Reset)

fig.38 Registo PIPO

66
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento (RdDs)

(Serial-In, Parallel-Out):
O carregamento dos (bits de) dados é feito de forma serial e a leitura em paralelo:

(a)

74HC164

(b) Registo de Deslocamento (= Shift Register) 74HC164 / 74ALS164; 8 bits, Clear (MR)', etc.

fig.39 Registo de deslocamento (= Shift Register) SIPO


67
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento (RdDs)
Registo SIPO (Serial-In, Parallel-Out). Algumas aplicações:
Contador em Anel, Johnson de 3 bits.

fig.40 Registo de deslocamento - conntador em anel

EI: Encontre na literatura os (datasheet dos) CIs 74HC4017 e 74HC4022 e verifique


as suas capacidades e funcionalidades.
68
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento
Registo PISO(/SISO) (Parallel-In, Serial-Out):
O carregamento dos (bits de) dados é feito de forma paralela, e a leitura, de forma serial; no
modo serial, o zero é alimentado no LSB (bit menos significante). Um mux controla os modos:

fig.41 Registo PISO PISO/SISO: 74ALS166/74HC166, 8 bits; Modo: 0-Parallel-in; 1-Shift


69
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento

Registo SISO (Serial-In, Serial-Out):


Tanto o carregamento quanto a leitura dos (bits de) dados é feito de forma serial, bit-a-bit, o
primeiro a entrar é o primeiro a sair (= 1 bit FIFO, First-In First-Out):

fig.42 Registo SISO

70
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento
Registo de Deslocamento Universal - RDU (USR - Universal Shift Register):
Comporta todos o modelos de entrada e leitura de dados dos tipos de registos anteriormente
descritos: PIPO, SIPO, PISO e SISO. Para isso, é provido de um multiplexador controlado p/duas
variáveis, permitindo a escolha de um dos 4 modos, segundo a tabela mostrada abaixo.

(a)

(b)
(c)
fig.43 Registo RDU

71
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Registos de Deslocamento
Registo de Deslocamento Universal - RDU (USR - Universal Shift Register):

Abaixo está, em CI, 74xxx194 o RDU (USR) com as capacidades e funcionalidades descritas
na diapositiva anterior.

USR, 74XXX194, seja p/ex: o 74LS194, c/as


seguintes características:
4 bits, master CLR activo em baixo nível, 4
modos de funcionamento controladas por
2 variáveis de selecção S1S0.
fig.44 Registo RDU

EI: Encontre na literatura o (datasheet do) 74XXX299 (exemplo: o 74ALS299) e


descreva as suas capacidades e funcionalidades.
72
Electrónica Digital I – Enga. Electrónica
Sumário
AT12
Sistemas Digitais Sequenciais:
1. Introdução aos sistemas sequenciais: Definição, caracterização e representação;
2. Flip-flops;
3. Modelação, análise e síntese dum sistema sequencial. Do enunciado do problema ao logigrama;
4. Registos;

5. Contadores:
i. Definição. Sequência de contagem, direcção de contagem, módulo, síncrono vs assíncrono.
ii. Tipos de contadores: binários (natural); de década; Outros contadores; ex: contador de
Johnson usando RdDs.
iii. Construção de um contador pela simples interligação de FFs (normalmente T ou
equivalente). Interligação síncrona vs assíncrona. Encurtamento do módulo dos contadores
usando entradas Pr e Cl.
iv. Expansão do módulo interligando contadores. Módulo resultante = produto dos módulos.
v. Construção de contadores síncronos de qualquer módulo e de qualquer sequência por
análise / síntese (p/mapas de VK) partindo da sua sequência de contagem (s/DdE).

73
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Contadores
Definição de contador: um contador é um gerador de uma sequência, de
combinações de n bits; n é o número de FFs interligados, reagindo aos pulsos
do clock e eventualmente, a uma ou mais (ou nenhuma) entradas de controle
adicional(is). Cada combinação binária dessa sequência, é um estado;
Sequência: A sequência de contagem pode ser em binário natural (caso mais
simples), percorrendo todas combinações possíveis dos n bits (sendo caso
simples, de interligação em série (vide diapositivas seguintes). Contudo, em
geral a sequência de contagem pode ser arbitrária. Quando é dada uma
sequência arbitrária, pode-se chegar ao logigrama do contador (ou às
expressões de excitação dos s/FFs), pela síntese por mVK's (ou p/outras vias).
Módulo (MOD) de um contador: é o
número de estados (combinações
binárias) da sequência percorrida.
No caso natural, o módulo é 2 n .
Contudo este pode ser menor por (i)
(a) (b)
corte da sequência normal usando
as entradas Preset e/ou Clear, dos fig.45 DdE de contadores binários cíclicos de 3 bits:
estado inicial arbitrário (b). Entretanto, querendo garantir algum
FFs, ou por (ii) síntese do contador estado inicial (b), basta usar os exemplos nos logigramas dos sl.64 e 68,
p/mVK's a partir do seu DdE ou TdE. devendo desta feita combinar convenientemente Cl e Pr dos FFs para
“presetar” para o estado arbitrário desejado. Vide tb: sl 77 e 78)
74
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Contadores
Classificação do contador segundo o sincronismo da mudança de estados: O
contador se diz síncrono ou assíncrono. É síncrono quando o clock é alimentado a
todos os FFs, em paralelo e c/apenas fios, ie, sem nada de permeio; de contrário é
assíncrono. Diz-se também que é assíncrono quando o clock é alimentado ao FF
correspondente ao bit menos significativo (ou simplesmente bit de entrada), e os
clocks dos restantes FFs são ligados de alguma forma em série, ex: um à saída (Q ou
Q') do FF de significância imediatamente inferior (vide diapos. 80). A saída escolhida,
Q ou Q', tem a ver com a direcção (sentido) de contagem.
Classificação do contador segundo a sequência e o módulo (MOD): Binário natural
(MOD 2n), de década (MOD 10), octal (MOD 8), hexadecimal (MOD 16), contador
binário Gray (MOD 2n), etc. Onde n é o número de FFs.
Direcção (ou sentido) de contagem: Quando se trate de uma sequência ordenada,
como no caso do binário natural, a direcção de contagem pode ser: crescente ou
decrescente (terminologia equivalente: progressivo ou regressivo; ou ainda:
ascendente ou descendente). quando a sequência dos códigos não é ordenada,
somente se pode falar de sentido A (ou qualquer outra designação conveniente) vs
o sentido contrário ao A, ou ainda sentido directo vs o retrógrado. Quando o
contador suporta ambas direcções de contagem, então se diz bidireccional.
Contador cíclico vs d/paragem automática: Se a sequência se repete, ligando a
última à primeira combinação da sequência, então se diz que o contador é cíclico.
De contrário se diz que contador é de sequência aberta, ou linear; neste caso
também se trata de um contador de paragem automática (pára no s/último estado).
75
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Contadores
Construção de um contador pela simples interligação de FFs
Os FFs normalmente usados são FFs T ou equivalentes (originalmente SR, JK ou D,
transformados p/ T. Há casos q/requerem portas lógicas adicionais. VtC: Quais casos).
Contador síncrono cíclico progressivo binário de 4 bits (0000 a 1111)

fig.46

Importante: Este mesmo contador, é decrescente se tomar como saídas, os Q.

VtC: Qual é o módulo actual?

Electrónica Digital I – Enga. Electrónica


76
Sistemas sequenciais. Contadores
Encurtamento do módulo de um contador usando entradas assíncronas
(Eliminação de estados indesejáveis - parasitas - numa MEF)
Qual é o módulo natural e actual?: Como são 3 FFs então o seu módulo natural é 23 = 8; Já
que foi encurtado para terminar no estado 101, então o seu módulo actual é 6.
Que entradas adicionais precisou e como se fez p/que o contador conte de 000 a 101?
Precisámos de entradas assíncronas ou directas: Preset (Pr) e Clear(Clr): para encurtar a
contagem natural de 000 a 111 para 000 a 101, foi preciso: detectar a contagem imediata à
101 (ie 110) e causar (p)reset do contador à contagem inicial. Usou-se para isso uma porta
NAND. Como há saídas Q e seus complementos, uma NAND é suficiente tanto para detectar
quanto para causar a limpeza dos FFs.

111

(a) (b)

Na figura da direita, detectar o próximo estado (110) e (p)resetar o contador para o estado inicial (000) (ou qualquer estado outro
pretendido) é o procedimento geral. Contudo observando a sequência de contagem, verifica-se que a condição CB=11 só acontece
nas combinações excluídas da nova sequência (o 110 e 111). Por isso o procedimento mais correcto e eficiente para um
comportamento seguro é detectar apenas CB=11 no lugar de CBA=110 (vide diapositiva seguinte). A interrogação no DdE é para
indicar que quando se ligar energia e eventualmente o contador parar em 111, não se sabe ao certo para onde transitará. É o que
pode acontecer em geral quando se toma a abordagem de menor custo. O que é mostrado na diapositiva seguinte corresponde
ao resultado de uma análise que se enquadra na abordagem de menor risco, produzindo um contador (MEF) determinístico.
fig.47 Electrónica Digital I – Enga. Electrónica
77
Sistemas sequenciais. Contadores
Encurtamento do módulo de um contador usando entradas assíncronas (cont.)
(Eliminação de estados indesejáveis - parasitas - numa MEF)

(b)

Detectando CB = 11, equivale a detectar 110 e 111,


eliminando qualquer deles (são transformados em
estados transientes ) . O 1 1 1 po d e s er ati ng i do
eventualmente ao se ligar energia [Por alternativa, isso
poderia ser evitado ligando um transitório RC de
limpeza (power-on reset) como exemplificado nos sl. 64
e 68]. Assim, o contador é determinístico e seguro; uma
análise que visa o menor risco.
Esta técnica pode ser usada para eliminar códigos
parasitas em qualquer MEF, tornando-a mais segura. (c)

fig.48 Contador síncrono cíclico progressivo de 0 a 5 (000 a 101)


TPC4: P/o contador da diapositiva 76: Faça as modificações/adições necessárias para que conte de 0000 a 1001.
Electrónica Digital I – Enga. Electrónica
78
Contadores:
Contador síncrono decrescente (regressivo) binário de 4 bits (1111 a 0000)

fig.49

Importante: Este mesmo contador, é crescente se se tomar como saídas os Q.

VtC: Qual é o módulo actual? Que entradas adicionais precisa e como faria p/que o
contador conte de 1101 a 0010? (vide sl.77 e 78, bem como logigramas dos sl.64 e 68).

Electrónica Digital I – Enga. Electrónica


79
Sistemas sequenciais. Contadores
Construção de um contador pela simples interligação de FFs
Os FFs normalmente usados são FFs T ou equivalentes (originalmente SR, JK ou D,
transformados p/ T. Há casos q/requerem portas lógicas adicionais. VtC: Quais casos).
Contador assíncrono cíclico progressivo binário de 4 bits (0000 a 1111)

fig.50

Importante: Este mesmo contador, é decrescente se se tomar como saídas, os Q.


VtC: Qual é o módulo actual? Que entradas adicionais dos FFs precisa e como faria p/que o
contador conte de 0001 a 1100 (contador horário)? (vide sl.77 e 78, bem como logigramas dos sl.64 e 68).
EI: Encontre na web e caracterize os contadores:, 4020, 4029, 74x90, 74x92, 74x93,
74x390, ...
Electrónica Digital I – Enga. Electrónica
80
Sistemas sequenciais. Contadores
Expansão do módulo de contadores de sequencia natural por interligação série
A expansão do módulo de contadores binários se faz pela interligação em série de
contadores binários naturais, onde o contador que se pretende o mais significativo,
ex:o contador H, deve ser ligado à saída do bit mais significante (MSB) do
contador antecessor, seja: o contador G). Dessa forma, o contador H passa a ser
divisor de frequência do G). Para facilitar este procedimento é necessário que a
sequência dos contadores G e H seja natural. Em ligação síncrona, uma porta AND
deve detectar a sequência mais alta de G, e a saída desta AND comanda a entrada
T do H. Em ligação assíncrona, o MSB do G comanda o Ck do H. Há outras formas[2].
Módulo resultante = produto dos módulos (no caso abaixo: 16x4=64).
Se o módulo resultante é maior contador G contador H
que o desejado, então poderá usar
a técnica do encurtamento do
módulo abordado nas diapos. 77 e
78, bem como aliar técnicas de (a) Ligação síncrona (VtC: porquê?) Divisor de freq p/4

inicialização automática, ao se contador G contador H

ligar energia, para o estado inicial


desejado, ligando um transitório
RC para efectuar o (p)reset do
(b) Ligação de assíncrona (VtC: porquê?) Divisor de freq p/4
contador, conforme exemplos nas
fig.51 contadores de módulo 16 x 4 = 64, contagem de 0 a 63
diapositivas 64 e 68.
TPC5: Faça as modificações/adições necessárias p/que conte de 0 a 59, visando: a) menor custo; b) menor risco ou ambas.
81
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Contadores
Construção de contadores síncronos de qualquer módulo e de qualquer sequência por
análise / síntese (ex: p/mapas de VK) partindo da s/ sequência de contagem (= s/ DdE).
Enunciado: Projecte um contador síncrono crescente cíclico de sequência natural de 0 a 5 (binário
000 a 101) por via de análise/síntese p/ mVK's de transições/excitação, numa abordagem:(i) de
menor custo; (ii) de menor risco. Solução usando uma abordagem de menor custo:
fig.52 Contador cíclico progressivo natural 000 a 101; numa abordagem de menor custo
Tabela de (Transições de) Estados Transi- Excitação
Presente → Próximo ções
Q[CBA]t → Q[CBA]t+1 D[CBA]t T[CBA]t S[CBA]t R[CBA]t J[CBA]t K[CBA]t
000 001 00α 001 001
001 010 0αβ 010 011
010 011 01α 011 001
Tab.A 011 100 αββ 100 111
Trans. Exicitação 100 101 10α 101 001
NomeQt → Qt+1 S R J K D T 101 000 β0β 000 101
110 xxx xxx xxx xxx
0 0 0 0 x 0 x 0 0
α 0 1 1 0 1 x 1 1 Tab.B 111 xxx xxx xxx xxx
β 1 0 0 1 x 1 0 1
1 1 1 x 0 x 0 1 0
x x x x x x x x x DBt D At Tabela de excitação do contador

BA BA
DCt BA 00 01 11 10 C 00 01 11 10
C 00 01 11 10
C
0 0 1 0 1 0 1 0 0 1
0 0 0 1 0

1 1 0 x x 1 0 0 x x 1 1 0 x x

DC = BA + CA DB = BA + C B A DA = A
TPC6: 1. (a) Completa a excitação p/os FFs SR e JK na tabela de excitação do contador. (b) Usando mVK's similares ao caso acima, encontre
as expressões de excitação dos FFs T,SR e JK; (c) desenhe os logigramas de todos os casos, incluindo o caso acima.
2. Use a coluna das transições da Tab.B p/obter todas as expressões algébricas, directamente, s/uso dos mVKs de excitação. 82
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais. Contadores
Construção de contadores síncronos de qualquer módulo e de qualquer sequência por
análise / síntese (ex: p/mapas de VK) partindo da s/sequência de contagem (= s/ DdE) (cont.).
Enunciado: (o mesmo da diapositiva anterior).
Solução usando uma abordagem de menor risco:
Os códigos/estados parasitas são transitados p/o
estado inicial (poderiam ser outros dos 6 estados)
fig.53 Contador cíclico progressivo natural 000 a 101; numa abordagem de menor risco
Tabela de (transições de) Estados Transi- Excitação
Presente → Próximo ções
(Simbó- D[CBA]
Q[CBA]t → Q[CBA]t+1 licas)
t T[CBA]t S[CBA]t R[CBA]t J[CBA]t K[CBA]t
Tab.A 000 001 00α 001 xx0 001 xxx
Trans. Exicitação 001 010 0αβ 010 x01 01x xx1
NomeQt → Qt+1 S R J K D T 010 011 01α 0x1 x00 0x1 x0x
0 0 0 0 x 0 x 0 0 011 100 αββ 100 011 1xx x11
α 0 1 1 0 1 x 1 1 100 101 10α x01 0x0 x01 0xx
β 1 0 0 1 x 1 0 1 101 000 β0β 000 1x1 x0x 1x1
1 1 1 x 0 x 0 1 0 110 000 ββ0 000 11x xx0 11x
x x x x x x x x x
111 000 βββ 000 111 xxx 111
Regras de agrupamento de Tab.B
transições para obter excitação do Tabela de excitação do contador
FF T (partindo da tab.de
TB TA
trans./excitação respectiva acima): TC BA 00 01 11 10 BA BA
00 01 11 10 C 00 01 11 10
C C
O É proibido agrupar 0's e 1's; 0 0 0 α 0 0 0 α β 1 0 α β β α
ü É obrigatório agrupar α's e β's;
§ É opcional agrupar x's.
1 1 β β β 1 0 0 β β 1 α β β 0
VtC: Contudo não há x's nesses
mapas: explica porquê? VtC: explica este
TC = BA + CA + CB TB = CA + CB TA = C+B+A agrupamento
TPC7: 1. (a) Completa a excitação p/os FFs D e T na (sub)tabela de excitação do contador. (b) Usando mVK's similares ao caso acima,
encontre as expressões de excitação dos FFs D, SR e JK; e, (c) desenhe os logigramas de todos os casos, incluindo o caso acima.
2. Use a tabela de excitação do contador na Tab.B p/obter todas as expressões algébricas de excitação, incluindo o caso acima. 83
Electrónica Digital I – Enga. Electrónica
Sistema sequencial - definição/caracterização, tipos. TPC8
Responda à seguintes perguntas em matéria sobre sistema sequencial:
1. Defina e represente um sistema sequencial;
2. O que é uma máquina de estados finita (MEF, FSM). Caracterize-a;
3. Quando é que uma máquina de estados não é finita e qual é daí a principal implicação?;
4. Quais diferenças e/ou semelhanças ou que relacionamento existe entre sistema sequencial e
sistema combinatório;
5. Quais os diversos modelos de sistema sequencial que conhece?
6. O que são sistemas síncronos vs assíncronos?;
7. Diga o que são e em que é que diferem as máquinas de Mealy vs de Moore vs Medvedev.
a. Que vantagens têm os híbridos Mealy-Moore, Mealy-Moore-Medvedev;
8. Liste todos os métodos ou formas de representação e descrição de sistemas
sequenciais que conhece. Dê exemplos partindo de diferentes enunciados de problemas.
9. “Os modelos de Mealy e Moore resultam em máquinas de estado finitas de diferentes
comportamentos”. Comente esta proposição.
10. “Os modelos de Mealy e Moore não são úteis para obter um logigrama prático. São apenas
úteis conceitualmente”. Comente esta proposição.
11. “Um sistema assíncrono como um todo, deve ser construido sempre à base de unidade
assíncronas mais simples, e vice-versa”. Comente esta proposição.
12. Desenhe o DdE ou TdE ou ASMc, de MEFs detectoras das seguintes sequências:
a=101; a=100110; a=0101001; a=1110; ba=11-00-10-11-01;
9. Realize a análise/síntese completa de ao menos 2 das MEFs da alínea 12.
Electrónica Digital I – Enga. Electrónica
84
Sistema sequencial - definição/caracterização, tipos. TPC9
Identifique o modelo de cada máquina representada nas figuras abaixo, bem como o s/ (não)
determinismo.

(b) (c)

(a) (a)

(e) (f)
(d) mem

(g) (h) (i)


fig.54 85
Electrónica Digital I – Enga. Electrónica
Flip-Flops (multi-vibradores bi-estáveis). TPC10
Responda às seguintes perguntas em matérias sobre Flip-Flops:
1. O que é um flip-flop (FF; F/F)?
2. Liste e diferencie (cite diferenças e semelhanças dos) FFs que conhece.
3. Diferencie FFs síncronos vs assíncronos. Neste sentido, caracterize os tipos de entradas e a
importância de cada tipo.
4. Para cada um dos Flip-flops do número 1, apresente: Tabela de Verdade (TV) /tabela
característica, tabela de transições/excitação; logigrama e diagrama temporal.
5. Porque é conveniente na maior parte dos casos usar somente JK e seus derivados?
6. Apresente uma visão evolutiva dos FFs. Que defeitos são resolvidos (e quais persistem)
partindo do RS-básico ao JK-MS (a par com outros FFs activados nos flancos, ascendente ou
descendente).
7. Que semelhanças e que diferenças têm entre si os FFs SR e JK?
8. Porque se diz que o FF-JK é universal?
9. Construa (trace o logigrama de) qualquer FF do núm.1 partindo de simples portas lógicas;
10. Construa (trace o logigrama d)os FFs JK, D e T partindo do RS; Obtenha os FFs D e T partindo
do JK; Obtenha qualquer FFs partindo de outro qualquer FF tendo as gates que necessitar;
11. Liste alguns FFs comerciais que conheces e comente sobre a sua família bem como algumas
características eléctricas e temporais.
12. Mostre exemplos em logigrama de FFs activados no flanco que não são mestre-escravo (MS).
Que diferenças (vantagens) dos primeiros sobre os MS ?.
86
Electrónica Digital I – Enga. Electrónica
Sistemas Sequenciais. Flip-Flops. TPC11
1. Sem consultar as figuras das diapositivas anteriores: (a) Identifique os nomes dos
FFs; (b) identifique os nomes das entradas; (c) enumere os FFs em ordem evolutiva.

(a) (b) (c)

(e) (f)
(d)

fig.55 (g (h) (i)


Electrónica Digital I – Enga. Electrónica
87
Sistema sequencial - Modelação, Análise e Síntese. TPC12
1. Descrever por diagrama de estados uma máquina sequencial com entrada y e saída Z para a qual
Z=1 sse os últimos 3 bits recebidos da sua entrada y tiverem sido iguais a 010.
2. Descrever por diagrama de estados uma máquina sequencial com entrada y e saída Z para a qual
Z=1 sse pelo menos 2 dos últimos 3 bits recebidos da sua entrada y não forem nulos.
3. Descrever por diagrama de estados uma máquina sequencial com entrada y e saída Z para a qual
Z=1 sse o último bit ou o penúltimo bit recebido da sua entrada y não for nulo.
4. Tendo gates diversas e flip-flops síncronos JK, activados nos flancos positivos (positive edge
triggered); (use apenas o material que for necessário!), construir um contador binário de Gray
síncrono progressivo de módulo 6 (000, 001, 011, 010, 110, 111) através do método de análise e
síntese com mapas de VK de transições, etc..
5. a)Usando o logigrama do contador obtido acima obtenha um contador de módulo 4 com a
seguinte parte da sequência: 001, 011, 010, 110.
6. Descreva por diagrama de estados, tabela de estados ou ASM chart uma máquina sequencial que
detecta a sequência dos 4 primeiros (os mais significantes) dígitos do seu Nº de Cartão de
Estudante, BI ou Passaporte. Note que as sequências, válidas ou não, chegam à máquina em
grupos fixos de 4 dígitos decimais isto é começam sempre no (4*k +1)-ésimo dígito (k é inteiro
não negativo). Existe uma variável de saída a qual será igual a 1 para indicar que a sequência de
interesse já foi detectada.
7. Um rei bantu ficava a saber que o vizinho lhe ia atacar quando de um espião recebesse casais de
pombos correios da seguinte maneira:
na 1ª vez: um casal; na 2ª vez: apenas o pombo (o macho do casal); na 3ª e última vez:
apenas a pomba (a fêmea do casal). [É claro que na actualidade os reis bantus: ou não são
belicistas ou não usariam pombos:-))].
Entretanto, descreva por diagrama (ou tabela) de estados uma máquina sequencial com saída Z a
qual se torna 1 quando e só quando o rei vizinho está para atacar.
a) Feito o diagrama ou tabela de estados, executar todos os passos de análise/síntese até obter
as equações de excitação dos flip-flops e a equação da saída Z.
Electrónica Digital I – Enga. Electrónica
88
Sistema sequencial - Modelação, Análise e Síntese. TPC13
1. Três vias automobilísticas (uma via central ampla e duas laterais menores) convergem todas numa estrada
de único sentido (reporte-se ao semáforo a título de exemplo ao entroncamento junto á estátua de
Mondlane no início da avenida do mesmo nome na Cidade de Maputo). Quando o tráfego está intenso (AT),
só a uma via de cada vez será permitida a passagem; de contrário (BT), terá prioridade a via central.
Aplicando as técnicas de projecto de sistemas sequenciais projecte um controlador dedicado para o
semáforo que funcionará do seguinte modo: nos primeiros 60s será aberta apenas a via central, nos 30s
subsequentes será aberta apenas a lateral esquerda e noutros 30s seguintes será finalmente aberta a
lateral direita. Daqui volta a repetir-se o ciclo indefinidamente, a menos que um comutador de duas
posições (AT e BT) seja trocado da posição AT para BT. Na posição BT todas as luzes verdes devem estar
acesas continuamente, as amarelas das vias laterais devem piscar, a amarela da via central estará apagada
e todas as vermelhas deverão estar apagadas.
Ademais (importante), durante o tempo em que uma via está aberta, nos 1os 2/3s do tempo apenas o
verde estará aceso e no último terço, estarão acesos o verde e o amarelo; em contrapartida durante o
tempo em que uma via está fechada apenas o vermelho estará aceso.
Obter as expressões lógicas de excitação dos flip-flops do controlador e das funções de saída.
2. Projecte o sistema de alarme dum automóvel de 4 portas. O alarme deverá funcionar assim:
Tocando um botão Off (de prioridade máxima), ou quando se liga energia, o sistema fica ao
estado de desactivado e o LED vermelho estará apagado; Tocando um botão On o sistema fica
activado e um LED vermelho piscará. Se o sistema estiver activado e qualquer das portas for
accionada, ou algum vidro for quebrado, ou a ignição for accionada: uma sereia deverá tocar e
as luzes externas deverão piscar. Esta situação de alarme deve permanecer, mesmo que a
causa desapareça; Se se aproximar um intruso e só enquanto o tal estiver próximo, apenas as
luzes externas deverão piscar; Enquanto o sistema estiver desactivado o sistema não reagirá a
nenhum acontecimento, excepto ao botão On para activá-lo. Construir o logigrama.
3. Projecte um cronómetro digital com display de HH:MM:SS:CC e display contínuo de 7 segmentos; botões
Contar/Pausa e Reset.
4. Projecte um relógio digital com HH:MM:SS, 2 botões: de Modo e de Acerto; 4 modos de
funcionamento: Normal, Acerto de Horas, Acerto de Minutos e Reset de Segundos para 0; em
modo de acerto a quantidade em acerto deve piscar a 0.5Hz; a quantidade em acerto deve
incrementar a uma frequência de 2Hz. Postule livremente os aspectos eventualmente omissos. 89
Electrónica Digital I – Enga. Electrónica
Sistemas sequenciais
Bibliografia/Fontes
1. Kaeslin, H.; Digital Integrated Circuit Design; Cambridge University Press, ISBN: 978-0-521-88267-7

2. A. Saha & N. Manna; Digital Principles and Logic Design; ISBN: 978-1-934015-03-2

3. Ronald J. Tocci, N. Widmer, G. Moss; Sistemas Digitais, Princípios e Aplicações, 11ed, 2011 Pearson Prentice Hall.

4. Roger L. Tokheim; Theory and Problems of Digital Principles, ISBN 0-07-065050-0.

5. Richard Sandige, Modern Digital Design

6. D.Leach, A.Malvino & G.Saha; Digital Principles and Applications; ISBN 0-07-039883-6

7. Null, L. & Lobur, J., The Essentials of Computer Organization and Architecture, 2nd Ed, John Bartlett Publishers

8. Floyd, T. L., Sistemas Digitais, Fundamentos e Aplicações, 9a.Ed, Bookman, ISBN 978-85-7780-107-7

9. Even, G and Medina, M.; Digital Logic Design, Cambridge University Press

10. Finite State Machines, pp472-545; www.cse.chalmers.se/~coquand/automata/book.pdf

11. SDM098 - Computation Structures Lecture 4, Lulea University of Technology

12. Marco Della Vedova and Tullio Facchinetti, Robotics-Finite State Machines; http://robot.unipv.it/toolleeo

13. https://en.wikipedia.org/wiki/Finite_State_Machine

14. Turner, J., Designing Digital Circuits, a modern approach

15. Shankar Balachandran, IIT Bambay, Digital Circuits and Systems

16. OSU, CS 447-Wireless Embedded Sysems, Lecture_06.pdf

90
Electrónica Digital I – Enga. Electrónica

Você também pode gostar