Escolar Documentos
Profissional Documentos
Cultura Documentos
Cap 5
Cap 5
61
CAPTULO 5 CIRCUITOS SEQUENCIAIS III: CONTADORES SNCRONOS
Continuando os estudos sobre circuitos contadores, partimos agora para circuitos os
Contadores Sncronos.
Aps esse captulo voc dever ser capaz de:
(1) Entender o funcionamento de circuitos contadores sncronos; e
(2) Projetar um contador sncrono a partir das especificaes necessrias.
62
5.1. Introduo
Contadores sncronos so circuitos sequenciais capazes de executar contagens binrias de
forma aleatria, pois possuem um circuito combinacional externo, que utiliza como entradas as
sadas Q e Q de cada flip-flop e suas sadas so conectadas s entradas dos flip-flops utilizados. A
figura 5.1 apresenta o diagrama geral de um contador sncrono utilizando flip-flops JK para
contagem.
63
5.2. Tabelas de transio dos flip-flops
As tabelas de transio dos flip-flops nada mais so que outra forma de visualizao das
tabelas verdades desses flip-flops. Para a montagem dessas tabelas, devemos analisar com foco nos
valores de transies das sadas e nos valores de entrada que se deve ter em suas entradas para
provocar essa transio, desde que um pulso de clock ocorra em suas entradas.
A sada do flip-flop em seu estado atual denominada Qn , ou simplesmente Q , e a sada
em seu estado futuro, ou seja, aps a transio, denominada Qn +1 ou Q + .
Qn
Qn +1
0
0
1
1
0
1
0
1
J
0
1
X
X
K
X
X
1
0
64
Qn
Qn +1
0
0
1
1
0
1
0
1
T
0
1
1
0
Qn
Qn +1
0
0
1
1
0
1
0
1
D
0
1
1
0
65
5.3. Projeto de contador sncrono
Antes de projetarmos um contador sncrono necessitamos entender algumas partes
integrantes deste projeto.
A indicao (1) mostra que o contador deve iniciar sua contagem pelo estado indicado por
(2). Cada circunferncia representa um estado da contagem e pode indicar um valor decimal,
binrio, hexadecimal ou um nome exemplo state1 que representa algum valor tabelado. A seta
com a indicao (3) representa que existe uma transio do estado state1 para state2, assim
como para os outros estados.
5.3.2. Tabela de Estados Futuros e de Entradas dos Flip-flops
Considere o contador sncrono representado pelo diagrama de estados da figura 5.3, a tabela
de estados futuros desse contador nada mais que uma representao tabelada dos seus estados. Ela
ser extremamente importante para que possamos gerar a tabela de entrada dos flip-flops adiante.
66
Estados Atuais
QA
0
0
0
0
1
1
1
1
QB
0
0
1
1
0
0
1
1
QC
0
1
0
1
0
1
0
1
Estados Futuros
QA+
0
0
0
1
0
0
0
0
QB+ QC+
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
A partir dessa tabela, podemos gerar a tabela de entrada dos flip-flops, que so as tabelas
que geram as equaes lgicas do circuito combinacional, mostrado na figura 5.1, necessrias para
a implementao do contador.
Curso de Lgica Sequencial Cap. 5: Circuitos Sequenciais III: Contadores Sncronos
67
Para gerar essa tabela, necessitamos das tabelas de transio do tipo de flip-flop utilizado,
descritas no item 5.2. Considerando que os flip-flops utilizados para implementao desse contador
sejam flip-flops JK, para gerar a tabela de entrada dos flip-flops, basta observarmos quais so as
transies que ocorrem dos estados Qx para o estado Qx+ de cada linha e preenchermos as entradas
Jx e Kx de cada flip-flop de acordo com a tabela de transio do flip-flop JK.
A tabela de entrada dos flip-flops do contador descrito na figura 5.3 fica da seguinte forma:
Estados Atuais
QA
0
0
0
0
1
1
1
1
QB
0
0
1
1
0
0
1
1
QC
0
1
0
1
0
1
0
1
Estados Futuros
QA
0
0
0
1
0
0
0
0
QB
0
1
1
0
0
0
0
0
QC
1
0
1
0
0
0
0
0
JA
0
0
0
1
X
X
X
X
KA
X
X
X
X
1
1
1
1
JB
0
1
X
X
0
0
X
X
KB
X
X
0
1
X
X
1
1
JC
1
X
1
X
0
X
0
X
KC
X
1
X
1
X
1
X
1
Gerada a tabela de entradas dos flip-flops, necessitamos gerar as funes lgicas do circuito
combinacional responsvel pela contagem, e para isso, como descrito no diagrama de blocos da
figura 5.1, utilizaremos QA, QB e QC como entradas do circuito combinacional e JA, KA, JB, KB, JC e
KC como sadas, ou seja, basta implementar uma funo lgica para cada um dos Js e Ks
utilizados, fazendo como entradas dessas funes as sadas Q dos flip-flops.
Como ferramenta para gerar essas funes, utilizaremos mapas de Veitch-Karnaugh,
revisados no captulo 1, e simplificando as funes lgicas descritas, obteremos as seguintes
equaes:
= .
(1)
= 1
(2)
=
.
(3)
= +
(4)
=
(5)
= 1
(6)
68
Determinadas as equaes lgicas das entradas, para finalizar o projeto, basta implementar o
circuito lgico, retirando como sadas do contador as sadas Q de cada flip-flop. O circuito do
exemplo utilizado mostrado na figura 5.4.
Figura 5.4 Circuito contador sncrono de mdulo 5 implementado com flip-flops JK.
Pergunta: Na figura 5.3 possumos um indicativo de que o contador deve iniciar sua
contagem no estado 000. O que podemos fazer nesse circuito para garantirmos que sempre que o
contador seja ligado ele inicie sua contagem em 000 se suas entradas assncronas forem ativadas
em nvel baixo?
69
5.4. Contador Sncrono Crescente / Decrescente
O projeto de um contador sncrono crescente / decrescente necessita da insero de uma
varivel de controle. No nosso caso, vamos chamar essa varivel de controle de varivel Z, que
ser inserida no circuito combinacional da figura 5.1 para executar uma etapa de controle.
Figura 5.6 Diagramas de estado para os distintos valores da varivel de controle 'Z'.
70
Figura 5.7 Diagrama de estados que contm as duas possveis sequncias do contador.
Z
0
0
0
0
1
1
1
1
QB
0
0
1
1
0
0
1
1
QA
0
1
0
1
0
1
0
1
Estados Futuros
QB
0
1
0
1
1
0
1
0
QA
1
1
0
0
0
0
1
1
JB
0
1
X
X
1
0
X
X
KB
X
X
1
0
X
X
0
1
JA
1
X
0
X
0
X
1
X
KA
X
0
X
1
X
1
X
0
=
+
=
(7)
= .
+ =
(8)
= .
+
=
(9)
=
+
=
(10)
71
Implementando as equaes (7) (10), obtemos o circuito descrito na figura 5.8.
Figura 5.8 Circuito de um contador sncrono crescente / decrescente com uma varivel Z
de controle (Z = 0 crescente).
Pergunta: Na figura 5.7 possumos um indicativo de que o contador deve iniciar sua
contagem no estado 00. O que podemos fazer nesse circuito para garantirmos que sempre que o
contador seja ligado ele inicie sua contagem em 00 se suas entradas assncronas forem ativadas
com nvel alto?
Nome
S0
S1
S2
S3
S4
S5
S6
S7
S8
Valor em
binrio
0000
0001
1000
0101
0111
1101
1100
1110
1111
72
Pergunta 1: No diagrama da figura 5.9, podemos verificar que nem todos os estados que
podem ser executados com 4 bits esto sendo utilizados. O que aconteceria se por algum distrbio
no sistema o contador apresentasse o valor 0110 em sua sada?
Pergunta 2: O que aconteceria o contador estivesse no estado S3, com Z =1, e o valor da
varivel Z fosse alterado para 0?
73
5.5. Exerccios de Fixao
1)
2)
Implemente um contador sncrono, sem reset automtico, que conte de 2 at 6, crie uma
sub-rotina de inicializao para esse contador. Utilize FF T.
3)
4)
5)
Implemente um contador sncrono de 4 bits, com reset automtico, que execute uma
contagem dos nmeros pares. Utilize FF JK.
6)
Implemente um contador sncrono de 4 bits, sem reset automtico, que execute uma
contagem dos nmeros mpares. Utilize FF JK.
7)
8)
Implemente um contador sncrono de 3 bits, com uma varivel Z de controle, que execute
as seguintes sequncias:
a. Com Z = 0: 0 1 3 2 5 4 6 7 0.
b. Com Z = 1: 3 1 2 0 6 7 4 5 3.
Utilize FF D.
74
9)