Altifigence Academy

20 / 63 · Conceito

Flip-flop D: do nível à borda

Compare os instantes de atualização de latches e flip-flops e relacione registrador, setup e hold.

Estar em 1 e passar para 1 são condições diferentes

Um latchLatch Elemento de armazenamento que acompanha a entrada enquanto o controle está ativo e mantém o valor quando está inativo. É diferente do flip-flop, que captura apenas em uma borda. Saiba mais ativo em nível alto acompanha D durante todo CLK=1. Um flip-flopFlip-flop Elemento que captura a entrada na borda de clock especificada e a mantém até a próxima. A entrada deve cumprir setup e hold. D de borda de subidaBorda de subida Instante em que o clock passa de 0 para 1. É diferente do nível alto, que abrange todo o intervalo com CLK=1. captura D quando CLK passa de 0 para 1 e o mantém até a próxima borda de subida. Um simples condicional clk=1 não representa os dois comportamentos.

Faça esta comparação:

  1. Com CLK=0, mude D para 1. Ambas as Q continuam em 0.
  2. Suba CLK para 1. Ambas as Q passam para 1.
  3. Mantenha CLK=1 e mude D para 0. Somente Q do latch vai para 0.
  4. Baixe CLK para 0 e suba novamente para 1. Q do flip-flop captura 0.
Dois elementos de armazenamento com as mesmas D e CLK

Supõe-se que ambos os valores de q começam em 0. O latch D acompanha D enquanto CLK=1 e mantém o valor com CLK=0. O flip-flop D captura D somente em uma transição 0→1 de CLK.

Um ciclo de um circuito sequencial

Se a saída Q atravessa lógica combinacional para gerar a próxima entrada D, ocorre uma transição de estado. Chamando DkD_k a entrada antes da borda e Qk+1Q_{k+1} o estado posterior, o modelo ideal é:

Qk+1=DkQ_{k+1}=D_k

A saída física muda após o atraso clock-to-Q, não instantaneamente na borda. Como vários flip-flops capturam suas próprias entradas na mesma borda, eles calculam o próximo estado a partir dos estados anteriores dos demais. Essa é a base de contadores e registradoresRegistrador Circuito que armazena vários bits de estado. Os registradores síncronos deste curso capturam a entrada especificada na borda de clock. de deslocamento.

Do estado ao próximo estado
  1. Q atual: Estado armazenado neste ciclo
  2. Lógica combinacional: Calcule D a partir de Q e das entradas externas
  3. Próxima borda de subida: Capture D se cumprir os requisitos temporais
  4. Nova Q: O próximo estado aparece após clock-to-Q

Setup e hold são condições da captura

D deve permanecer estável durante setupSetup Tempo mínimo durante o qual a entrada deve permanecer estável antes da borda de captura. Se for violado, o valor armazenado não é garantido. Saiba mais antes da borda e holdTempo de hold Tempo mínimo durante o qual a entrada deve permanecer estável após a borda de captura. Pelo contexto, deve ser distinguido da simples manutenção de um valor. Saiba mais depois. Se mudar perto da borda, não se garante simplesmente «valor antigo ou novo»; pode haver metaestabilidade. A prática não simula esse fenômeno analógico.

Um registrador agrupa vários flip-flops. Ter oito bits de largura não garante que suas oito entradas formem um único valor coerente: são necessárias condições temporais e regras de transferência comuns.

Estado inicial e reset

Iniciar Q=0 na simulação não significa que o hardware ligue necessariamente em 0. A próxima aula acrescenta reset e enable para especificar inicialização e manutenção. Reset síncrono atua na borda; assíncrono atua independentemente dela, mas também exige atenção à sua desativação.

Experimente

Enquanto CLK=1, D muda 0→1→0 e depois se estabiliza em 1 antes da próxima borda de subida. Quando mudam as Q do latch e do flip-flop? O flip-flop se atualiza duas vezes na borda?

Ler a explicação

O latch acompanha as mudanças de D enquanto CLK=1. O flip-flop as ignora e captura uma única vez o D=1 válido na próxima borda de subida. No hardware, devem ser incluídos setup, hold e clock-to-Q.

Sua escolha vale neste navegador. Altere-a a qualquer momento no rodapé.