Trilha de aprendizado · Nível 8 · Tutorial 6

Memória de um bit com flip-flop D

Ao concluir, o aluno será capaz de explicar como um flip-flop D armazena um bit e prever sua saída em diagramas temporais ideais, considerando a borda ativa e o tipo de reset.

  • Nível: Intermediário
  • Duração: 18 min
  • 7 passos
Memória de um bit com flip-flop D

Passo 1 de 7

Armazenar um bit é manter um estado

Memória digital começa quando o circuito conserva um estado interno, fazendo a saída depender também do que ocorreu antes.

Da seleção ao estado

Seleção não é memória

Um multiplexador seleciona uma entrada e encaminha seu valor à saída. Se as entradas e a seleção forem iguais em dois instantes, sua saída será igual nos dois casos: ele não precisa lembrar do passado.

Para armazenar um bit, o circuito precisa conservar internamente um valor 0 ou 1. Esse valor conservado é chamado de estado.

Dois comportamentos diferentes

Comparação entre um multiplexador que encaminha uma entrada selecionada e um bloco de memória que mantém internamente um bit por realimentação conceitual.

O multiplexador depende das entradas atuais; o bloco de memória inclui um estado interno.

Memória depende do passado

O que torna um circuito sequencial

Um circuito combinacional produz sua resposta a partir das entradas atuais. Já um circuito sequencial produz sua resposta usando as entradas atuais e o estado que já estava armazenado.

De forma conceitual, uma realimentação interna permite que o valor armazenado influencie o próprio circuito e seja mantido. Não é necessário conhecer a implementação com portas para usar essa ideia: basta reconhecer que existe uma informação interna persistindo.

Exemplo

Exemplo: mesmo presente, passados diferentes

Imagine duas memórias de um bit recebendo exatamente o mesmo comando de atualização, que neste momento não altera nada:

  • Memória A já guardava 0 → sua saída permanece 0.
  • Memória B já guardava 1 → sua saída permanece 1.

As entradas atuais podem ser idênticas, mas as saídas diferem porque os estados anteriores são diferentes. Essa dependência do passado é a característica essencial de um circuito sequencial.

Dica

Limite da retenção

A retenção pressupõe alimentação válida e a ausência de um evento que atualize o estado. Desligar a alimentação não garante que o bit seja conservado; esta memória não deve ser confundida com armazenamento não volátil.

Verifique sua leitura

Classifique pelo uso do estado

Associe cada situação ao tipo de comportamento predominante.

Combinacional ou sequencial?

Faça as associações corretas.

Toque em um item e depois no par correspondente.

Passo 2 de 7

Identificar D, clock, Q e a borda ativa

Reconheça os terminais do flip-flop D e interprete, pelo símbolo e pela descrição funcional, qual transição do clock é ativa.

Terminais que definem a memória

Três terminais, três funções

Em um flip-flop D, D é a entrada de dados: o bit que poderá se tornar o novo estado. Q é a saída que mostra o bit atualmente armazenado.

O sinal clock não é um dado a ser guardado. Ele define o evento em que o flip-flop observa D. Entre esses eventos, Q representa o estado já armazenado.

Diagrama de um flip-flop D com entrada de dados, entrada de clock marcada por triângulo e saída de estado.

D fornece o dado; o clock indica quando observá-lo; Q exibe o estado armazenado.

Exemplo

A saída complementar

Alguns símbolos também têm a saída Q̅ (lê-se “Q barra”). Ela é o complemento de Q:

  • se Q = 1, então Q̅ = 0;
  • se Q = 0, então Q̅ = 1.

Portanto, Q̅ não armazena um segundo bit independente: é apenas a representação invertida do mesmo estado.

Como reconhecer a borda ativa

O evento do clock

Uma borda é uma transição do clock, não um período inteiro em nível alto ou baixo.

  • Borda de subida: clock vai de 0 para 1.
  • Borda de descida: clock vai de 1 para 0.

O símbolo informa qual delas é ativa. O pequeno triângulo no terminal de clock indica que o componente reage a uma borda. Sem bolha nesse terminal, a convenção apresentada indica borda de subida.

Comparação entre clock com triângulo sem bolha, associado à subida, e clock com triângulo e bolha, associado à descida.

Triângulo: sensibilidade à borda. Bolha no clock: borda de descida, nesta convenção.

Dica

Confirmação na documentação

Não conclua a borda ativa apenas pelo nome de um pino. Em um componente real, confirme a interpretação na descrição funcional ou na tabela funcional da folha de dados. O símbolo e essa descrição devem concordar.

Função de cada terminal

Prática: ler o símbolo

Associe cada elemento à sua função no flip-flop D.

Faça as associações corretas.

Toque em um item e depois no par correspondente.

Qual borda importa?

Prática: identificar a transição

Um símbolo de flip-flop D mostra um triângulo no clock, sem bolha. Qual transição é a borda ativa?

Passo 3 de 7

Distinguir sensibilidade a nível e a borda

Compare a janela de transparência de um latch D com a captura pontual de um flip-flop D.

A janela do latch

Latch: acompanhar durante a janela

Um latch D sensível a nível possui uma janela de transparência. Quando sua habilitação está no nível ativo — neste exemplo, nível alto —, Q acompanha D. Se D muda, Q também pode mudar enquanto essa janela permanece aberta.

Quando a habilitação sai do nível ativo, o latch fecha a janela e conserva o último valor que estava em D.

Janela de transparência do latch

Diagrama temporal em que Q do latch acompanha cada mudança de D enquanto a habilitação está alta e mantém o último valor quando ela está baixa.

No latch sensível a nível alto, o intervalo em nível alto é uma janela de transparência.

Dica

Pense na habilitação como uma janela, não como um único momento: enquanto ela está ativa, mudanças sucessivas em D podem chegar a Q.

A captura do flip-flop

Flip-flop: capturar em um instante

Um flip-flop D sensível à borda de subida não acompanha D durante todo o nível alto do clock. Ele observa D no instante em que o clock passa de 0 para 1 e armazena esse valor em Q.

Depois da borda, Q é conservado até a próxima borda de subida. Portanto, manter o clock em 1 não abre uma janela de transparência.

Captura por borda de subida

Diagrama temporal em que Q captura D na subida do clock e não muda quando D varia durante o restante do nível alto.

A borda é um instante de captura; o patamar alto seguinte não torna o flip-flop transparente.

Exemplo

Janela versus instante

Comparação direta:

  • Latch: habilitação ativa por um intervalo → Q pode acompanhar várias mudanças de D.
  • Flip-flop: borda ativa em um instante → Q recebe somente o valor de D naquele instante.

Nos dois casos, fora da condição de atualização, o valor armazenado é mantido.

Mesmo sinal, comportamentos diferentes

Compare as duas respostas

Considere D inicialmente em 0. O sinal de controle sobe e permanece em 1. Durante esse patamar alto, D muda para 1 e depois volta para 0.

Qual afirmação descreve corretamente as saídas?

Situação: habilitação do latch ativa em nível alto e flip-flop acionado na borda de subida.
ElementoQ na subidaD muda para 1 no patamar altoD volta para 0 no patamar alto
Latch DAcompanha DMuda para 1Muda para 0
Flip-flop DCaptura 0Permanece 0Permanece 0

Dica

A diferença não está no nome do sinal: ambos podem receber um sinal que fica alto. O que importa é a regra do elemento: nível ativo para o latch ou transição ativa para o flip-flop.

Verifique sua previsão

Pratique a distinção

Um latch D é transparente quando EN=1. Um flip-flop D usa a borda de subida do clock. Inicialmente, D=0 e ambas as saídas estão em 0. EN e clock sobem para 1; depois, enquanto ambos continuam em 1, D muda para 1.

Qual é o resultado ideal logo após essa mudança de D?

Passo 4 de 7

Prever Q em diagramas temporais ideais

Use bordas ativas e o estado inicial para prever Q em um flip-flop D ideal.

Ler as bordas ativas

Procedimento de leitura

Considere um flip-flop D ideal de borda de subida, sem comandos adicionais, com estado inicial conhecido.

Para traçar Q:

  1. Comece no valor inicial informado de Q.
  2. Marque apenas as subidas do clock.
  3. Em cada subida, leia o valor presente em D e faça Q assumir esse valor.
  4. Entre uma subida e outra, mantenha Q constante.

Neste modelo, D está estável ao redor da borda ativa e Q muda sem atraso visível. Uma descida do clock e uma mudança isolada em D não atualizam Q.

Leitura de um diagrama temporal

Observe o padrão: as linhas-guia passam somente pelas bordas de subida. É nelas que Q recebe o valor de D; nos demais intervalos, Q retém o último estado.

Diagrama temporal com D, clock e Q. As subidas do clock são destacadas; Q muda apenas nelas e permanece constante entre elas.

Para um flip-flop D de borda de subida, a leitura de D acontece somente nas subidas do clock.

Captura e retenção na tabela

Tabela funcional

A tabela funcional também descreve eventos, não apenas combinações de entradas. Para este flip-flop D ideal, sem reset:

A indicação ↑CLK significa uma transição de 0 para 1 no clock. O traço — significa que o valor de D não importa naquele intervalo: sem borda ativa, o estado é conservado.

Comportamento funcional de um flip-flop D de borda de subida.
Condição do clockDPróximo Q
↑CLK00
↑CLK11
Sem ↑CLK—Q atual

Dica

Atenção à transição invisível

Uma captura pode não aparecer como transição no desenho: se Q já vale 1 e D vale 1 na próxima borda ativa, Q continua em 1. Ainda houve captura; o valor novo apenas é igual ao estado armazenado.

Aplicar o procedimento

Exemplo

Exemplo guiado

Exemplo: um flip-flop de borda de subida começa com Q = 0. Nas três subidas sucessivas do clock, D vale 1, depois 0, depois 0.

A sequência de Q é: começa em 0; após a primeira subida, torna-se 1; após a segunda, torna-se 0; após a terceira, continua 0. Mudanças de D ocorridas entre essas subidas não alteram Q.

Complete a leitura

Complete a sequência do exemplo. Q começa em 0. Nas três bordas de subida, D vale 1, 0 e 0. Depois das bordas, Q vale, respectivamente: 1, {{lacuna}}, 0.

Qual é o valor da lacuna?

Verificar um diagrama

Reconheça o comportamento de Q

Qual diagrama representa um flip-flop D ideal de borda de subida que começa com Q = 0, captura D = 1 na primeira subida e D = 0 na segunda? Considere que D também muda uma vez entre as duas subidas.

Escolha o diagrama correto.

Atenção

Limite do modelo

Este é um modelo lógico ideal. Circuitos reais têm atrasos e exigem que D esteja estável em uma janela ao redor da borda. Esses requisitos serão estudados no próximo tutorial.

Passo 5 de 7

Inicializar o estado com reset síncrono

Use a tabela funcional para identificar a polaridade, a prioridade e o instante de atuação de um reset síncrono.

Um estado conhecido precisa ser estabelecido

Antes da inicialização

Ao energizar um flip-flop D genérico, não se deve presumir que Q comece em 0 ou em 1. Para a análise lógica, represente essa condição como desconhecida, indicada aqui por X.

X não é um terceiro nível lógico físico. É uma anotação: com as informações disponíveis, ainda não é possível afirmar se Q vale 0 ou 1. Um reset permite estabelecer um estado conhecido.

Diagrama de um flip-flop D com Q desconhecido antes de uma borda de subida e Q em nível baixo após uma borda em que o reset está ativo.

O reset síncrono só define Q quando ocorre a borda ativa do clock.

Reset síncrono: polaridade e prioridade

Tabela funcional do dispositivo

Neste step, use este flip-flop de borda de subida com reset síncrono RST ativo em nível alto. Portanto, RST = 1 significa que o reset está solicitado.

A tabela funcional é a referência: na borda ativa, o reset tem prioridade sobre D. Fora de uma borda de subida, Q conserva seu valor, mesmo que RST mude.

Dica

Como ler os símbolos

Convenções usadas:

  • ↑: borda de subida do clock.
  • X em D: entrada indiferente; D pode ser 0 ou 1, pois não altera o resultado naquela linha.
  • Q(n): estado antes do evento.
  • Q(n+1): estado depois do evento.
  • X em Q(n): estado desconhecido para a análise; não significa que o circuito tenha um terceiro nível lógico.

O comportamento ideal deste flip-flop D com reset síncrono ativo alto é:

Tabela funcional: reset tem prioridade somente na borda de subida.
ClockRSTDQ(n+1)
↑1X0
↑000
↑011
Sem ↑XXQ(n)

Aplicar a tabela a eventos do clock

Exemplo

Exemplo de sequência

Considere Q inicialmente desconhecido (X). RST começa em 0. Antes da primeira borda de subida, D vale 1; na primeira borda, Q captura 1.

Depois, RST passa a 1 e D vale 1. Na próxima borda de subida, a tabela manda Q para 0: o reset tem prioridade sobre D.

Se RST voltar a 0, Q não muda imediatamente. Na borda ativa seguinte, o flip-flop volta a capturar D normalmente.

Teste rápido

Em um flip-flop com reset síncrono ativo alto, RST fica em 1 durante todo o intervalo entre duas bordas de subida e volta a 0 antes da próxima borda. O que acontece com Q por causa desse pulso de reset?

Selecione a previsão correta.

Fixar a regra de prioridade

Verifique a prioridade

Na borda de subida, se RST estiver ativo, a entrada que deixa de importar é:

Na borda ativa com RST = 1, a entrada {{blank}} é indiferente para o próximo valor de Q.

Passo 6 de 7

Interpretar o reset assíncrono

Ativação, manutenção e liberação

Reset que não espera o clock

Um reset assíncrono força Q ao estado definido assim que fica ativo, sem esperar a borda ativa do clock. No exemplo deste step, o estado forçado é Q = 0.

A tabela funcional é a fonte da regra: enquanto o reset estiver ativo, D e clock não alteram Q. Quando o reset é liberado, o flip-flop volta ao funcionamento normal, mas não captura D naquele instante; a próxima captura ocorre apenas na próxima borda ativa.

Diagrama temporal de um flip-flop D com reset assíncrono ativo em nível baixo: Q vai imediatamente para zero quando CLR fica baixo e só volta a capturar D na próxima borda de subida após a liberação.

A ativação do reset altera Q fora da borda; a liberação apenas devolve o controle ao clock.

Tabela funcional do exemplo

Considere esta tabela funcional de um componente específico, com CLR ativo em nível baixo e prioridade sobre a captura de D.

CLR = 0 é o estado ativo do reset neste exemplo.
CLRClockDPróximo Q
0qualquerqualquer0
1borda de subida00
1borda de subida11
1sem borda de subidaqualquermantém Q

Comparar pelo diagrama e pela tabela

Mesmo pulso, efeitos diferentes

Compare um mesmo pulso de reset ativo entre duas bordas de subida:

  • No reset síncrono, Q só mudaria se houvesse uma borda ativa enquanto o reset estivesse ativo.
  • No reset assíncrono, Q vai para 0 no momento da ativação do reset.

Portanto, “ativo em nível baixo” descreve a polaridade, não o sincronismo. Um reset pode ser ativo baixo e síncrono, ou ativo baixo e assíncrono. Consulte sempre o símbolo e, principalmente, a tabela funcional do dispositivo.

Comparação lado a lado: um pulso de reset entre bordas não muda Q no reset síncrono, mas força Q imediatamente a zero no reset assíncrono.

A posição temporal do pulso é igual; o que muda é a regra indicada na tabela funcional.

Exemplo

Percorrendo um pulso de CLR

Exemplo ideal: Q começa em 1. CLR está em 1, D vale 1 e não há borda de subida. Quando CLR cai para 0, Q passa imediatamente a 0. Mesmo que D mude e ocorram bordas de clock, Q permanece em 0 enquanto CLR estiver em 0.

Depois que CLR retorna a 1, Q continua em 0 até a próxima borda de subida. Nessa borda, se D for 1, Q passa para 1.

Prática: efeitos de CLR

Verifique as regras do reset

Relacione cada situação à consequência no flip-flop D ideal com CLR assíncrono ativo baixo da tabela apresentada.

Faça as associações.

Toque em um item e depois no par correspondente.

Prática: depois da liberação

Complete a regra de liberação

Complete a frase considerando o reset assíncrono do exemplo: “Após CLR ser liberado, D será capturado apenas na próxima __ do clock.”

Após CLR ser liberado, D será capturado apenas na próxima __ do clock.

Atenção

Limite do modelo ideal

Nos diagramas ideais deste tutorial, a liberação do reset é mostrada afastada das bordas do clock. Em circuitos reais, a liberação exige cuidados temporais especificados pelo fabricante; esse assunto será estudado no próximo tutorial.

Passo 7 de 7

Aplicação final: validar a memória de um bit

Resolva dois casos finais de flip-flop D ideal e consolide como captura, retenção e reset definem a saída Q.

Use símbolo, tabela e tempo juntos

Roteiro de validação

Análise final: três fontes de evidência

Para prever Q em um flip-flop D ideal, combine:

  1. Símbolo: revela a borda ativa e os controles disponíveis.
  2. Tabela funcional: define a polaridade e a prioridade do reset.
  3. Diagrama temporal: mostra o valor de D e do reset nos eventos relevantes.

Aplique a tabela antes da regra normal de captura. Sem reset ativo, Q recebe D somente na borda ativa e conserva esse valor até o próximo evento que o altere. Use X quando o estado inicial é desconhecido na análise; X não é um terceiro nível lógico físico.

Do símbolo à forma de onda

Esquema que conecta o símbolo de um flip-flop D, a tabela funcional e um diagrama temporal ideal.

A tabela funcional decide o que acontece em cada evento; o diagrama temporal mostra quando ele ocorre.

Tabela funcional de referência

Use esta tabela funcional nos dois casos finais. Ela declara explicitamente as prioridades e evita supor o comportamento apenas pelo nome do pino.

Modelo ideal: a atualização de Q é representada sem atraso.
CondiçãoAção em Q
Reset síncrono ativo na borda ativaQ ← 0
Reset síncrono inativo na borda ativaQ ← D
Reset assíncrono ativoQ ← 0 imediatamente
Reset assíncrono liberado, sem borda ativaQ conserva o valor
Sem reset ativo e sem borda ativaQ conserva o valor

Caso curto: reset síncrono

Aplique a prioridade do reset

Caso 1 — reset síncrono ativo em nível alto

O flip-flop é sensível à borda de subida. Seu reset síncrono, R, é ativo em 1 e tem prioridade sobre D na borda ativa.

  • Antes da primeira borda, Q = X.
  • Na primeira borda de subida: R = 1 e D = 1.
  • Na segunda borda de subida: R = 0 e D = 1.

Como R é síncrono, ele só é avaliado nas bordas de subida. Determine a sequência de Q: antes da primeira borda, após a primeira e após a segunda.

Complete o caso síncrono

Sequência de Q: X, {{lacuna}}, {{lacuna}}

Escreva pelo menos 3 caracteres (0/3).

Caso assíncrono e fechamento

Diferencie ativação e liberação

Caso 2 — reset assíncrono ativo em nível baixo

Agora o flip-flop continua sensível à borda de subida, mas possui reset assíncrono /R: ele é ativo em 0.

Q começa em X. Entre duas bordas de subida, /R muda de 1 para 0 enquanto D = 1. Depois, /R volta para 1 ainda antes da próxima borda. Na próxima borda de subida, D = 1.

A ativação de /R força Q sem esperar o clock. Sua liberação não captura D: apenas devolve o controle à próxima borda ativa.

Leitura do caso assíncrono

Diagrama temporal ideal em que um reset assíncrono ativo em nível baixo força Q para zero entre bordas de clock.

Q muda na ativação de /R, permanece em 0 na liberação e só captura D na borda de subida seguinte.

Complete o caso assíncrono

No caso descrito, qual é a sequência de Q: estado inicial, após /R ficar em 0, após /R voltar a 1 e após a próxima borda de subida?

Escreva pelo menos 7 caracteres (0/7).

Justifique a retenção

Explique, em uma ou duas frases, por que Q permanece em 0 quando /R volta a 1, antes da próxima borda de subida.

Escreva pelo menos 30 caracteres (0/30).

Resumo

Síntese: memória de um bit

  • Um flip-flop armazena o estado Q; sem um evento que o atualize, esse estado é retido.
  • A borda ativa define o instante de captura de D no funcionamento normal.
  • A tabela funcional define polaridade, prioridade e efeito do reset.
  • Reset síncrono só atua na borda ativa; reset assíncrono atua assim que é ativado no modelo ideal.
  • Diagramas ideais descrevem a lógica do comportamento, mas não comprovam requisitos temporais de um componente real.

Tutorial concluído

Parabéns! Você concluiu: Memória de um bit com flip-flop D

Muito bem! Agora você consegue relacionar estado, borda ativa e tabela funcional para prever Q, incluindo resets síncronos e assíncronos. No próximo tutorial, você verá por que atrasos e janelas de temporização importam em circuitos reais.

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso