Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal de Campina Grande - UFCG Centro de Engenharia Elétrica e Informática - CEEI Departamento de Engenharia Elétrica - DEE Nome: Ricardo Ferreira dos Santos Silva Email: ricardo.silva@ee.ufcg.edu.br Disciplina: Laboratório de Circuitos Lógicos Professora: Fernanda Cecília Correia Lima Loureiro Experimento 6 – Flip-Flops, Registradores e Contadores Objetivo 01 Especificação e implementação de um Flip-Flop JK, com entrada clear assíncrona, com o projeto realizado utilizando Logisim. Especificação e implementação de um Flip-Flop JK, com entrada clear assíncrona, com o projeto realizado utilizando Logisim. Expressão Lógica 01 Tabela Verdade Flip-Flop JK Com Clear Clear CLK J K Q Qbar Estado 0 X X X 0 1 - 1 0 X X Q Qbar Memorização 1 0→1 0 0 Q Qbar Memorização 1 0→1 1 0 1 0 Set 1 0→1 0 1 0 1 Reset 1 0→1 1 1 Qbar Q Inversão Circuito 01 Figura 01 – Flip FLop JK Com Preset e Clear. Fonte: Logisim Objetivo 02 Especificação e implementação de um Registrador de deslocamento para a direita, com entrada paralela e saída serial, de 4 bits. Expressão Lógica 02 Entramos com uma sequência com 4 bits e “retiramos” bit a bit com pulsos de clock. Para isto utilizamos as funções Preset e Clear dos flip-flops JK mestre-escravo Para inserirmos a palavra paralela: - Primeiro damos um pulso em zero no Clear e todas as saídas vão para estado zero (Enable = 0 => Preset = 1). - Enquanto o enable estiver em zero, a entrada Preset estará em ‘1’, e as saídas permanecerão em zero. - Quando a entrada ENABLE for para ‘1’, as saídas assumirão os valores presentes nas entradas PRESET. - Então aplica-se pulsos ao clock para passar as informações em Serial. Tabela Verdade Registrador de Deslocamento Paralelo-Serial Entrada Clock Saída Serial Q0 Q1 Q2 Q3 0 1 1 0 0→1 0 0 1 1 0 0→1 1 0 1 1 0 0→1 1 0 1 1 0 0→1 0 Circuito 02 Figura 02 – Registrador de Deslocamento Paralelo-Serial. Fonte: Logisim Objetivo 03 Especificação e implementação de um Contador Assíncrono Binário, Módulo 10, Crescente. Expressão Lógica 03 CLOCK Número Q3 Q2 Q1 Q0 Clear 0→1 0 0 0 0 0 0 0→1 1 0 0 0 1 0 0→1 2 0 0 1 0 0 0→1 3 0 0 1 1 0 0→1 4 0 1 0 0 0 0→1 5 0 1 0 1 0 0→1 6 0 1 1 0 0 0→1 7 0 1 1 1 0 0→1 8 1 0 0 0 0 0→1 9 1 0 0 1 0 0→1 10 1 0 1 0 1 Para Clear = 1, temos 1010 Então, Clear = Q3.Q1 Circuito 03 Figura 03 – Contador Assíncrono Binário, Módulo 10. Fonte: Logisim Objetivo 04 Especificação e implementação de um Contador Binário Síncrono Módulo 10, com o projeto realizado utilizando o Logisim. -Fazemos a montagem da tabela de estados futuros; -Montagem da tabela de entrada dos flip-flops; -Implementação das funções lógicas de entrada dos flip-flops; -Implementação do circuito lógico. Expressão Lógica 04 𝑸𝒏 = 0 para 𝑸𝒏+𝟏 = 0, utilizamos em suas entradas, J = 0 e K = 0 ou J = 0 e K = 1. 𝑸𝒏 = 0 para 𝑸𝒏+𝟏 = 1, utilizamos em suas entradas, J = 1 e K = 0 ou J = 1 e K = 1. 𝑸𝒏 = 1 para 𝑸𝒏+𝟏 = 0, utilizamos em suas entradas, J = 0 e K = 1 ou J = 1 e K = 1. 𝑸𝒏 = 1 para 𝑸𝒏+𝟏 = 1, utilizamos em suas entradas, J = 0 e K = 0 ou J = 1 e K = 0. Tabela de Transição do Flip-Flop 𝑸𝒏 𝑸𝒏+𝟏 J K 0 0 0 X 0 1 1 X 1 0 X 1 1 1 X 0 Tabela de entrada dos flip-flops do contador Estados Atuais Estados Futuros Entradas dos Flip-Flops JK A F Qd Qc Qb Qa Qd Qc Qb Qa Jd Kd Jc Kc Jb Kb Ja Ka 0 1 0 0 0 0 0 0 0 1 0 X 0 X 0 X 1 X 1 2 0 0 0 1 0 0 1 0 0 X 0 X 1 X X 1 2 3 0 0 1 0 0 0 1 1 0 X 0 X X 0 1 X 3 4 0 0 1 1 0 1 0 0 0 X 1 X X 1 X 1 4 5 0 1 0 0 0 1 0 1 0 X X 0 0 X 1 X 5 6 0 1 0 1 0 1 1 0 0 X X 0 X 1 X 1 6 7 0 1 1 0 0 1 1 1 0 X X 0 X 0 1 X 7 8 0 1 1 1 1 0 0 0 1 X X 1 X 1 X 1 8 9 1 0 0 0 1 0 0 1 X 0 0 X 0 X 1 X 9 0 1 0 0 1 0 0 0 0 X 1 0 X 0 X X 1 Jd QbQa QdQc 00 01 11 10 00 0 0 0 0 01 0 0 1 0 11 X X X X 10 X X X X Obtemos as seguintes expressões: Jd = Qc.Qb.Qa Kd = Qa Jc = Qb.Qa Kc = Qb.Qa Jb = 𝑄𝑑̅̅ ̅̅ .Qa Kb = Qa Ja → 1 Ka → 1 Circuito 04 Figura 04 – Contador Binário Síncrono Módulo 10 Crescente. Kd QbQa QdQc 00 01 11 10 00 X X X X 01 X X X X 11 X X X X 10 0 1 X X Jc QbQa QdQc 00 01 11 10 00 0 0 1 0 01 X X X 0 11 X X X X 10 0 0 X X Kc QbQa QdQc 00 01 11 10 00 X X X X 01 0 0 1 0 11 X X X X 10 X X X X Jb QbQa QdQc 00 01 11 10 00 0 1 X X 01 0 X X X 11 0 0 X X 10 0 0 X X Kb QbQa QdQc 00 01 11 10 00 X X 1 0 01 X 1 1 0 11 X X X X 10 X X X X Fonte: Logisim Questionamentos 1. Para fazer um contador decrescente podemos considerar as saídas invertidas de um contador crescente. Para isso utilizamos as saídas Qbar dos flip-flop’s, já que elas retornaram o valor contrário de uma sequência em um contador crescente. 2. Primeiramente fazemos um diagrama de estados (fig. 05), com as possíveis duas sequencias (no caso, para um contador de 2 bits), utilizando uma variável auxiliar “Z” e definindo contagem crescente para Z = 0 e contagem decrescente para Z = 1. Figura 05 – Diagrama de estados. Fonte: Internet Tabela verdade de estados futuros e de entrada dos flip-flops, com a entrada auxiliar Z. 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 QbQa z 00 01 11 10 0 0 1 X X 1 1 0 X X QbQa z 00 01 11 10 0 X X 0 1 1 X X 1 0 QbQa z 00 01 11 10 0 1 X X 0 1 0 X X 1 QbQa z 00 01 11 10 0 X 0 1 X 1 X 1 0 X A partir daí, obtemos as expressões: Jb = �̅�.Qa + Z.𝑄𝑎̅̅ ̅̅ = Z ⊕ Qa Kb = 𝑍. 𝑄𝑎̅̅ ̅̅ ̅̅ ̅ + Z.Qa = 𝑍 ⊕ 𝑄𝑎̅̅ ̅̅ ̅̅ ̅̅ ̅̅ Ja = 𝑍. 𝑄𝑏̅̅ ̅̅ ̅̅ ̅ + Z.Qb = 𝑍 ⊕𝑄𝑏̅̅ ̅̅ ̅̅ ̅̅ ̅̅ Ka = �̅�.Qb + Z.𝑄𝑏̅̅̅̅ = Z ⊕ Qb Então podemos implementar as equações no circuito com os flip-flops e teremos um circuito contador síncrono crescente/decrescente.
Compartilhar