Buscar

CIRCUITOS SEQUENCIAIS III: CONTADORES SÍNCRONOS: cap5

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
60 
CAPÍTULO 5 – CIRCUITOS SEQUENCIAIS III: CONTADORES SÍNCRONOS 
 
Sumário 
 
5.1. Introdução ................................................................................................................................. 62 
5.2. Tabelas de transição dos flip-flops .......................................................................................... 63 
5.2.1. Tabela de transição do flip-flop JK ...................................................................................... 63 
5.2.2. Tabela de transição do flip-flop T ........................................................................................ 63 
5.2.3. Tabela de transição do flip-flop D ....................................................................................... 64 
5.3. Projeto de contador síncrono ................................................................................................... 65 
5.3.1. Diagramas de Transição ....................................................................................................... 65 
5.3.2. Tabela de Estados Futuros e de Entradas dos Flip-flops ..................................................... 65 
5.4. Contador Síncrono Crescente / Decrescente .......................................................................... 69 
5.5. Exercícios de Fixação ................................................................................................................ 73 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
61 
CAPÍTULO 5 – CIRCUITOS SEQUENCIAIS III: CONTADORES SÍNCRONOS 
 
Continuando os estudos sobre circuitos contadores, partimos agora para circuitos os 
Contadores Síncronos. 
Após esse capítulo você deverá ser capaz de: 
(1) Entender o funcionamento de circuitos contadores síncronos; e 
(2) Projetar um contador síncrono a partir das especificações necessárias. 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
62 
5.1. Introdução 
 
 Contadores síncronos são circuitos sequenciais capazes de executar contagens binárias de 
forma aleatória, pois possuem um circuito combinacional externo, que utiliza como entradas as 
saídas Q e Q’ de cada flip-flop e suas saídas são conectadas às entradas dos flip-flops utilizados. A 
figura 5.1 apresenta o diagrama geral de um contador síncrono utilizando flip-flops JK para 
contagem. 
 
 
Figura 5.1 Diagrama geral de um contador síncrono com flip-flops JK. 
 
As características principais dos contadores síncronos são: 
 
(1) Os FF POSSUEM as entradas clock em comum; 
(2) Possuem circuito combinacional externo, que utiliza as equações de transição dos flip-flops 
utilizados para ser implementado; 
(3) Possuem saída binária aleatória; e 
(4) O bit mais significativo da contagem (MSB) pode ser qualquer um dos flip-flops, pois quem 
determina essa ordem é o circuito combinacional externo. No caso da figura 5.1 o bit mais 
significativo pode ser tanto o flip-flop ‘1’ quanto o flip-flop ‘n’. 
 
Antes de estudarmos o projeto de contadores síncronos, devemos analisar as tabelas de transição 
dos flip-flops. 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
63 
5.2. Tabelas de transição dos flip-flops 
 
As tabelas de transição dos flip-flops nada mais são que outra forma de visualização das 
tabelas verdades desses flip-flops. Para a montagem dessas tabelas, devemos analisar com foco nos 
valores de transições das saídas e nos valores de entrada que se deve ter em suas entradas para 
provocar essa transição, desde que um pulso de clock ocorra em suas entradas. 
A saída do flip-flop em seu estado atual é denominada nQ , ou simplesmente Q , e a saída 
em seu estado futuro, ou seja, após a transição, é denominada 1+nQ ou +Q . 
 
 5.2.1. Tabela de transição do flip-flop JK 
 
 Para o flip-flop JK temos: 
 
� 0=nQ
 
para 01 =+nQ , utilizamos em suas entradas, J = 0 e K = 0 ou J = 0 e K = 1. 
� 0=nQ
 
para 11 =+nQ , utilizamos em suas entradas, J = 1 e K = 0 ou J = 1 e K = 1. 
� 1=nQ
 
para 01 =+nQ , utilizamos em suas entradas, J = 0 e K = 1 ou J = 1 e K = 1. 
� 1=nQ
 
para 11 =+nQ , utilizamos em suas entradas, J = 0 e K = 0 ou J = 1 e K = 0. 
 
Logo, resumindo essas proposições, temos a seguinte tabela verdade de transição: 
 
nQ 1+nQ J K 
0 0 0 X 
0 1 1 X 
1 0 X 1 
1 1 X 0 
 
 
 5.2.2. Tabela de transição do flip-flop T 
 
 Para o flip-flop T temos: 
 
� 0=nQ
 
para 01 =+nQ , utilizamos T = 0. 
� 0=nQ
 
para 11 =+nQ , utilizamos T = 1. 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
64 
� 1=nQ
 
para 01 =+nQ , utilizamos T = 1. 
� 1=nQ
 
para 11 =+nQ , utilizamos T = 0. 
 
Logo, resumindo essas proposições, temos a seguinte tabela verdade de transição: 
 
nQ 1+nQ T 
0 0 0 
0 1 1 
1 0 1 
1 1 0 
 
 
 5.2.3. Tabela de transição do flip-flop D 
 
 Para o flip-flop D temos: 
 
� 0=nQ
 
para 01 =+nQ , utilizamos D = 0. 
� 0=nQ
 
para 11 =+nQ , utilizamos D = 1. 
� 1=nQ
 
para 01 =+nQ , utilizamos D = 0. 
� 1=nQ
 
para 11 =+nQ , utilizamos D = 1. 
 
Logo, resumindo essas proposições, temos a seguinte tabela verdade de transição: 
 
nQ 1+nQ D 
0 0 0 
0 1 1 
1 0 1 
1 1 0 
 
 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
65 
5.3. Projeto de contador síncrono 
 
 Antes de projetarmos um contador síncrono necessitamos entender algumas partes 
integrantes deste projeto. 
 
5.3.1. Diagramas de Transição 
 
Para projetar um contador síncrono, deve-se primeiro entender as especificações de projeto. 
Um contador síncrono tem sua contagem especificada através de um diagrama de transição, 
apresentado na figura 5.2, que indica qual é o estado futuro a ser atingido pelo contador quando é 
aplicado um pulso de clock. 
 
 
Figura 5.2 Diagrama de estados de um contador síncrono. 
 
 
 A indicação (1) mostra que o contador deve iniciar sua contagem pelo estado indicado por 
(2). Cada circunferência representa um estado da contagem e pode indicar um valor decimal, 
binário, hexadecimal ou um nome – exemplo ‘state1’ que representa algum valor tabelado. A seta 
com a indicação (3) representa que existe uma transição 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 síncrono representado pelo diagrama de estados da figura 5.3, a tabela 
de estados futuros desse contador nada mais é que uma representação tabelada dos seus estados. Ela 
será extremamente importante para que possamos gerar a tabela de entrada dos flip-flops adiante. 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
66 
 
Figura 5.3 Diagrama de estado de um contador síncrono de módulo 5. 
 
 
 A tabela de estados futuros de um diagrama de estados é gerada colocando em uma coluna o 
estado atual que o contador se encontra e em outra coluna o seu próximo estado. No caso da figura 
5.3, sua tabela de estados futuros fica como demonstrado a seguir, considerando três flip-flops A, B 
e C, sendo A o bit mais significativo. 
 
Estados Atuais Estados Futuros 
QA QB QC QA+ QB+ QC+ 
0 0 0 0 0 1 
0 0 1 0 1 0 
0 1 0 0 1 1 
0 1 1 1 0 0 
1 0 0 0 0 0 
1 0 1 0 0 0 
1 1 0 0 0 0 
1 1 1 0 0 0 
 
 A partirdessa tabela, podemos gerar a tabela de entrada dos flip-flops, que são as tabelas 
que geram as equações lógicas do circuito combinacional, mostrado na figura 5.1, necessárias para 
a implementação do contador. 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
67 
 Para gerar essa tabela, necessitamos das tabelas de transição do tipo de flip-flop utilizado, 
descritas no item 5.2. Considerando que os flip-flops utilizados para implementação desse contador 
sejam flip-flops JK, para gerar a tabela de entrada dos flip-flops, basta observarmos quais são as 
transições 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 transição do flip-flop JK. 
 A tabela de entrada dos flip-flops do contador descrito na figura 5.3 fica da seguinte forma: 
 
Estados Atuais Estados Futuros Entradas dos Flip-Flops JK 
QA QB QC QA+ QB+ QC+ JA KA JB KB JC KC 
0 0 0 0 0 1 0 X 0 X 1 X 
0 0 1 0 1 0 0 X 1 X X 1 
0 1 0 0 1 1 0 X X 0 1 X 
0 1 1 1 0 0 1 X X 1 X 1 
1 0 0 0 0 0 X 1 0 X 0 X 
1 0 1 0 0 0 X 1 0 X X 1 
1 1 0 0 0 0 X 1 X 1 0 X 
1 1 1 0 0 0 X 1 X 1 X 1 
 
 Gerada a tabela de entradas dos flip-flops, necessitamos gerar as funções lógicas do circuito 
combinacional responsável 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 saídas, ou seja, basta implementar uma função lógica para cada um dos J’s e K’s 
utilizados, fazendo como entradas dessas funções as saídas Q dos flip-flops. 
 Como ferramenta para gerar essas funções, utilizaremos mapas de Veitch-Karnaugh, 
revisados no capítulo 1, e simplificando as funções lógicas descritas, obteremos as seguintes 
equações: 
 
�� = ��. �� 
�� = 1 
�� = ��
. �� 
�� = �� + �� 
�� = ��
 
�� = 1 
(1) 
(2) 
(3) 
(4) 
(5) 
(6) 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
68 
 Determinadas as equações lógicas das entradas, para finalizar o projeto, basta implementar o 
circuito lógico, retirando como saídas do contador as saídas Q de cada flip-flop. O circuito do 
exemplo utilizado é mostrado na figura 5.4. 
 
Figura 5.4 Circuito contador síncrono de módulo 5 implementado com flip-flops JK. 
 
 
 Pergunta: Na figura 5.3 possuímos 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 assíncronas forem ativadas 
em nível baixo? 
 
 Sugestão: Implemente o mesmo contador do exemplo anterior utilizando flip-flops tipo T e 
tipo D como elementos de memória. 
 
 
 
 Implementado o circuito lógico, finalizamos o projeto de um contador síncrono. Resumindo 
as etapas de projeto temos: 
 
(1) Determinação do diagrama de estados do contador a partir das especificações de projeto; 
(2) Montagem da tabela de estados futuros; 
(3) Montagem da tabela de entrada dos flip-flops; 
(4) Implementação das funções lógicas de entrada dos flip-flops; e 
(5) Implementação do circuito lógico. 
 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
69 
5.4. Contador Síncrono Crescente / Decrescente 
 
 O projeto de um contador síncrono crescente / decrescente necessita da inserção de uma 
variável de controle. No nosso caso, vamos chamar essa variável de controle de variável ‘Z’, que 
será inserida no circuito combinacional da figura 5.1 para executar uma etapa de controle. 
 
 
Figura 5.5 Diagrama de blocos de um contador síncrono com váriável Z de controle. 
 
 Tomando como exemplo um contador síncrono crescente / decrescente de 2 bits, devemos 
construir um diagrama de estados que contenha as duas possíveis sequências de contagem. 
Definindo como contagem crescente para Z = 0 e decrescente para Z = 1 podemos obter os dois 
diagramas da figura 5.6 ou ainda obter um único diagrama, figura 5.7, que contenha as duas 
sequências obtidas de acordo com o valor de ‘Z’. 
 
 
 
Figura 5.6 Diagramas de estado para os distintos valores da variável de controle 'Z'. 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
70 
 
Figura 5.7 Diagrama de estados que contém as duas possíveis sequências do contador. 
 
 A montagem da tabela de estados futuros e de entrada dos flip-flops, considerando flip-flops 
JK, e inserindo a variável ‘Z’, fica da seguinte forma: 
 
Estados Atuais Estados Futuros Entradas dos Flip-Flops JK 
Z QB QA QB+ QA+ JB KB JA KA 
0 0 0 0 1 0 X 1 X 
0 0 1 1 1 1 X X 0 
0 1 0 0 0 X 1 0 X 
0 1 1 1 0 X 0 X 1 
1 0 0 1 0 1 X 0 X 
1 0 1 0 0 0 X X 1 
1 1 0 1 1 X 0 1 X 
1 1 1 0 1 X 1 X 0 
 
 
 Simplificando as funções lógicas, obtemos as seguintes equações: 
 
�� = 
̅�� + 
��
 = 
 ⊕ �� 
�� = 
̅. ��
 + 
�� = 
 ⊕ ��
 
�� = 
̅. ��
 + 
�� = 
 ⊕ ��
 
�� = 
̅�� + 
��
 = 
 ⊕ �� 
(7) 
(8) 
(9) 
(10) 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
71 
 Implementando as equações (7) à (10), obtemos o circuito descrito na figura 5.8. 
 
 
Figura 5.8 Circuito de um contador síncrono crescente / decrescente com uma variável ‘Z’ 
de controle (Z = 0 – crescente). 
 
 Pergunta: Na figura 5.7 possuímos 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 assíncronas forem ativadas 
com nível alto? 
 
 Sugestão: Implemente o mesmo contador do exemplo anterior utilizando flip-flops tipo T e 
tipo D como elementos de memória. 
 
 A partir desse tipo de projeto de contador síncrono, podemos projetar contadores síncronos 
de sequências aleatórias controlados por variáveis externas. A figura 5.9 mostra um exemplo de 
diagrama de estados de um contador síncrono aleatório controlado pela variável externa ‘Z’. Faça a 
tabela de estados futuros desse contador. Os estados estão codificados da seguinte forma: 
Nome Valor em binário 
S0 0000 
S1 0001 
S2 1000 
S3 0101 
S4 0111 
S5 1101 
S6 1100 
S7 1110 
S8 1111 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
72 
 
Figura 5.9 Contador síncrono aleatório controlado por variável ‘Z’. 
 
 
Pergunta 1: No diagrama da figura 5.9, podemos verificar que nem todos os estados que 
podem ser executados com 4 bits estão sendo utilizados. O que aconteceria se por algum distúrbio 
no sistema o contador apresentasse o valor ‘0110’ em sua saída? 
 
Pergunta 2: O que aconteceria o contador estivesse no estado S3, com Z =1, e o valor da 
variável ‘Z’ fosse alterado para ‘0’? 
 
 Sugestão: Implemente o mesmo contador do exemplo anterior utilizando flip-flops tipo T. 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
73 
5.5. Exercícios de Fixação 
 
1) Implemente um contador síncrono crescente, com reset automático, de módulo 16 
utilizando FF JK. 
 
2) Implemente um contador síncrono, sem reset automático, que conte de 2 até 6, crie uma 
sub-rotina de inicialização para esse contador. Utilize FF T. 
 
3) Implemente um contador síncrono, que execute a sequência abaixo. O contador deve 
possuir resetautomático em ‘1’ e deve-se utilizar FF JK. 
 
 
 
4) Implemente um contador síncrono, com reset automático, que execute a seguinte 
sequência: 1 � 2 � 3 � 5 � 6 � 7 � 9 � 10 � 12� 1. Use FF D. 
 
5) Implemente um contador síncrono de 4 bits, com reset automático, que execute uma 
contagem dos números pares. Utilize FF JK. 
 
6) Implemente um contador síncrono de 4 bits, sem reset automático, que execute uma 
contagem dos números ímpares. Utilize FF JK. 
 
7) Implemente um contador síncrono de 3 bits, crescente / decrescente, com uma variável Z 
de controle. Utilize FF JK. 
 
8) Implemente um contador síncrono de 3 bits, com uma variável Z de controle, que execute 
as seguintes sequências: 
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. 
 
 
 
Curso de Lógica Sequencial – Cap. 5: Circuitos Sequenciais III: Contadores Síncronos | Prof. Marcelo Wendling 
74 
9) Implemente um contador síncrono que execute a sequência abaixo. Utilize FF T. 
 
10) Implemente um contador síncrono que execute a sequência abaixo. Utilize FF D. 
 
11) Implemente um contador síncrono, com variáveis Y e X de controle, que execute as 
seguintes sequências abaixo, com reset inicial em 2h. Utilize FF JK.

Continue navegando