Post on 13-Dec-2018
11/23/10
1
Mário Serafim Nunes Guilherme Silva Arroz
Circuitos sequenciais síncronos
Mário Serafim Nunes Guilherme Silva Arroz
Considerações gerais Modelos de Mealy e de Moore Projecto de circuitos sequenciais síncronos
Usando lógica discreta Usando ROMs
2010/2011
Sistemas Digitais - Taguspark
2
11/23/10
2
Mário Serafim Nunes Guilherme Silva Arroz
Um contador ou um registo como os que foram estudados são circuitos sequenciais síncronos.
O estado do circuito é garantido por uma configuração de estados de flip-flops e essa configuração pode ser alterada, tendo em conta o estado presente e as entradas, no momento em que surge o flanco activo do impulso de relógio – a sincronização.
De um ponto de vista formal, um circuito sequencial síncrono é a implementação física de uma máquina de estados.
2010/2011
Sistemas Digitais - Taguspark
3
Mário Serafim Nunes Guilherme Silva Arroz
Uma máquina de estados é definida pelos seguintes seis componentes:
As possíveis combinações de entradas que controlam a máquina de estados.
As possíveis combinações de saídas que são geradas pela máquina de estados.
O conjunto de estados da máquina.
2010/2011
Sistemas Digitais - Taguspark
4
11/23/10
3
Mário Serafim Nunes Guilherme Silva Arroz
A função de transição de estados, que determina de que modo a máquina evolui entre estados, de acordo com o estado presente e a combinação presente nas entradas.
A função de saída, que determina qual a saída gerada pela máquina para um dado estado e uma dada combinação de entradas.
O estado inicial no qual a máquina de estados deve iniciar o seu funcionamento.
2010/2011
Sistemas Digitais - Taguspark
5
Mário Serafim Nunes Guilherme Silva Arroz
Considere-se a máquina de estados correspondente a um contador binário de 3 bits bidireccional com indicação de ter chegado ao fim da contagem.
A máquina tem apenas uma entrada Dir que define se o contador conta ascendentemente (Dir = 0) ou descendentemente (Dir = 1).
Do mesmo modo a máquina tem uma saída que indica, no caso Dir = 0 se a contagem é 7 e, se Dir = 1 se a contagem é 0.
2010/2011
Sistemas Digitais - Taguspark
6
11/23/10
4
Mário Serafim Nunes Guilherme Silva Arroz
A máquina tem oito estados: 0, 1, 2, 3, 4, 5, 6 e 7. A função transição de estados é a seguinte:
2010/2011
Sistemas Digitais - Taguspark
7
Definida por uma tabela de estados
Definida por um diagrama de estados
Mário Serafim Nunes Guilherme Silva Arroz
A função de saída correspondente à contagem terminal é descrita pela seguinte tabela:
O estado inicial é o estado 0
2010/2011
Sistemas Digitais - Taguspark
8
Mas existem ainda as saídas correspondentes à contagem que são três bits com a configuração binária do estado.
11/23/10
5
Mário Serafim Nunes Guilherme Silva Arroz
O circuito que implementa a máquina de estados é dado pelo seguinte diagrama de blocos:
2010/2011
Sistemas Digitais - Taguspark
9
Estado Função transição de estado e função de saída Flip-flops
Mário Serafim Nunes Guilherme Silva Arroz
Há dois modelos para uma máquina de estados e para o circuito digital correspondente que, diferindo apenas nas funções de saída, acabam por criar sistemas com comportamentos significativamente diferentes.
2010/2011
Sistemas Digitais - Taguspark
10
11/23/10
6
Mário Serafim Nunes Guilherme Silva Arroz
No modelo de Mealy a função de saída é tal que as saídas dependem do estado actual da máquina, bem como das suas entradas. Isso permite que uma máquina de estados reaja imediatamente a uma mudança nas entradas.
No caso do contador bidireccional citado, a saída de contagem terminal depende do estado em que a máquina está e também da entrada.
Se a contagem for 7 e a variável Dir = 0, a saída está activada. Se, com o mesmo estado, Dir se alterar e passar a 1, a saída, passa a 0.
2010/2011
Sistemas Digitais - Taguspark
11
Mário Serafim Nunes Guilherme Silva Arroz
No modelo de Moore a função de saída é tal que as saídas dependem apenas do estado actual da máquina, sem ter em conta as suas entradas. Isso inibe que uma máquina de estados reaja imediatamente a uma mudança nas entradas.
No caso do contador bidireccional citado, as saídas correspondentes à contagem são deste tipo.
A contagem não se altera com o valor de Dir.
2010/2011
Sistemas Digitais - Taguspark
12
11/23/10
7
Mário Serafim Nunes Guilherme Silva Arroz
A representação da arquitectura do circuito nos dois modelos é como segue:
2010/2011
Sistemas Digitais - Taguspark
13
Modelo de Mealy Modelo de Moore
Mário Serafim Nunes Guilherme Silva Arroz
Que raio andam vocês a fazer e o que pensam que é a engenharia?
2010/2011
Sistemas Digitais - Taguspark
14
11/23/10
8
Mário Serafim Nunes Guilherme Silva Arroz
O projecto de um circuito sequencial síncrono passa pelas seguintes fases: Especificação formal, usando máquinas de estados
através de, tabelas ou diagramas de estados ou fluxogramas.
Simplificação da especificação (se necessário). Codificação dos estados. Definição da arquitectura do circuito. Determinação das funções lógicas de saída e do
estado seguinte.
2010/2011
Sistemas Digitais - Taguspark
15
Mário Serafim Nunes Guilherme Silva Arroz
Vai-se exemplificar o projecto com a concepção do contador bidireccional referido.
A concepção é bastante simples porque já dispomos da tabela de estados.
Ver-se-á mais adiante, como se concebe um circuito em que a descrição comportamental não produz directamente uma tabela de estados.
2010/2011
Sistemas Digitais - Taguspark
16
11/23/10
9
Mário Serafim Nunes Guilherme Silva Arroz
Especificação formal usando, neste caso, tabelas.
Já conhecemos as tabelas de estado e de saídas.
2010/2011
Sistemas Digitais - Taguspark
17
Mário Serafim Nunes Guilherme Silva Arroz
Codificação de estados O circuito vai ser suportado
em três flip-flops porque há oito estados. Como se pretende um contador binário, o mais adequado é codificar cada estado pela sua representação em binário.
2010/2011
Sistemas Digitais - Taguspark
18
11/23/10
10
Mário Serafim Nunes Guilherme Silva Arroz
Definição da arquitectura do circuito. Escolhamos flip-flops JK edge-triggered e a
seguinte arquitectura.
2010/2011
Sistemas Digitais - Taguspark
19
Mário Serafim Nunes Guilherme Silva Arroz
Lógica de transição de estados. Comecemos por traduzir a tabela de estados do
circuito para uma tabela de configurações dos flip-flops.
2010/2011
Sistemas Digitais - Taguspark
20
11/23/10
11
Mário Serafim Nunes Guilherme Silva Arroz
A forma de conseguir que um flip-flop assuma um determinado valor, é colocar nas suas entradas (neste caso J e K) os valores adequados.
Para isso é necessário definir quais são esses valores e fazer a tabela de excitação.
Por exemplo, se um flip-flop está a 0 e deve continuar a 0, há duas hipóteses de valores para J e K: J = K = 0, o que indica “manter o estado” ou J = 0 e K = 1, o que indica “ir para 0”. Portanto basta que J = 0. K é indiferente.
2010/2011
Sistemas Digitais - Taguspark
21
Mário Serafim Nunes Guilherme Silva Arroz
Tabela de excitação do flip-flop JK.
Repare-se na quantidade apreciável de indiferenças que vai possibilitar a simplificação das funções.
2010/2011
Sistemas Digitais - Taguspark
22
11/23/10
12
Mário Serafim Nunes Guilherme Silva Arroz
Pode-se agora passar a tabela do estado seguinte para as entradas presentes necessárias para garantir as transições pretendidas.
2010/2011
Sistemas Digitais - Taguspark
23
Mário Serafim Nunes Guilherme Silva Arroz
E o resultado global é:
2010/2011
Sistemas Digitais - Taguspark
24
11/23/10
13
Mário Serafim Nunes Guilherme Silva Arroz
As variáveis Ji e Ki são agora funções combinatórias de Q2, Q1, Q0 e Dir cujas expressões se podem obter pelos mapas de Karnaugh.
No caso do flip-flop 0, é fácil obter directamente da tabela J0 = K0 = 1.
2010/2011
Sistemas Digitais - Taguspark
25
Mário Serafim Nunes Guilherme Silva Arroz 2010/2011
Sistemas Digitais - Taguspark
26
11/23/10
14
Mário Serafim Nunes Guilherme Silva Arroz
Lógica de saída.
2010/2011
Sistemas Digitais - Taguspark
27
Mário Serafim Nunes Guilherme Silva Arroz
E o circuito é, portanto, o seguinte:
Para não se complicar mais não se desenha o circuito da saída.
2010/2011
Sistemas Digitais - Taguspark
28
11/23/10
15
Mário Serafim Nunes Guilherme Silva Arroz
Uma alternativa seria construir o circuito com flip-flops D.
Só há que ter em consideração que a tabela de excitação dos flip-flops D é:
2010/2011
Sistemas Digitais - Taguspark
29
Obter-se-iam menos funções (metade) mas sem indiferenças o que iria conduzir a expressões (e circuitos) de maior complexidade.
Mário Serafim Nunes Guilherme Silva Arroz
Um método alternativo de implementar este circuito é usar uma ROM para implementar as funções combinatórias.
Com este tipo de abordagem é preferível usar flip-flops D.
O circuito pode ser representado em diagrama de blocos como se ilustra no próximo slide.
2010/2011
Sistemas Digitais - Taguspark
30
11/23/10
16
Mário Serafim Nunes Guilherme Silva Arroz 2010/2011
Sistemas Digitais - Taguspark
31
Mário Serafim Nunes Guilherme Silva Arroz
A tabela com o conteúdo da ROM resulta da reorganização das tabelas de estados e de saídas.
2010/2011
Sistemas Digitais - Taguspark
32
11/23/10
17
Mário Serafim Nunes Guilherme Silva Arroz
Livro recomendado, Capítulo 7 (esta aula e as imediatamente seguintes vão abordar este capítulo mas, por razões operacionais, não pela ordem exacta com que a matéria é lá exposta)
Existem muitos livros com capítulos sobre o assunto.
A Internet é, como de costume, uma fonte que, explorada com espírito crítico, tem muito para dar.
2010/2011
Sistemas Digitais - Taguspark
33