Trilha de aprendizado · Nível 8 · Tutorial 7

Verificação de atrasos e requisitos de temporização

Ao concluir, o aluno será capaz de verificar atrasos e janelas de captura em um caminho digital simples, estimar um período de clock admissível e reconhecer situações em que o resultado lógico não é garantido.

  • Nível: Intermediário
  • Duração: 25 min
  • 9 passos
Verificação de atrasos e requisitos de temporização

O que você vai percorrer

  1. Ler os atrasos de uma porta lógica Interprete atrasos de propagação de uma porta lógica, escolhendo o parâmetro e o limite garantido adequados às condições declaradas. 2 min
  2. Somar atrasos e reconhecer pulsos espúrios Compare caminhos combinacionais, estime o maior atraso de estabilização e reconheça glitches causados por diferenças de atraso. 3 min
  3. Acompanhar o dado entre dois flip-flops Localize o atraso clock–Q e acompanhe a propagação do dado da borda de lançamento até a entrada do flip-flop de destino. 2 min
  4. Verificar as janelas de setup e hold Reconheça as janelas de estabilidade de setup e hold e classifique transições de D próximas à borda ativa. 3 min
  5. Calcular um período de clock admissível Calcule o período mínimo de clock para setup com uma margem explícita e interprete corretamente o limite de frequência obtido. 3 min
  6. Verificar hold separadamente Use limites mínimos garantidos para verificar se o novo dado chega tarde o bastante após a mesma borda de clock. 3 min
  7. Conferir pulsos, bordas e liberação do reset Verifique requisitos de largura de pulso, velocidade de borda e liberação do reset que complementam as análises de setup e hold. 3 min
  8. Reconhecer riscos de entradas assíncronas Entradas sem relação temporal com o clock podem violar a janela de captura mesmo quando seus níveis elétricos são bem definidos. 2 min
  9. Aplicar uma verificação temporal completa Integre setup, hold e requisitos adicionais para concluir com precisão se uma captura digital é garantida nas condições declaradas. 4 min

O que você vai aprender

  • Estimar o atraso máximo de um caminho combinacional com dados de componentes.
  • Identificar violações de setup e hold em diagramas temporais.
  • Calcular um período mínimo de clock e verificar separadamente a condição de hold.
  • Explicar por que entradas assíncronas, pulsos estreitos e bordas inadequadas exigem cuidados além da tabela-verdade.

Antes de começar

  • Memória de um bit com flip-flop D
  • Portas lógicas e tabelas-verdade
  • Compatibilidade elétrica entre circuitos digitais
  • Entradas definidas com pull-up e pull-down

Passo 1 de 9

Ler os atrasos de uma porta lógica

Interprete atrasos de propagação de uma porta lógica, escolhendo o parâmetro e o limite garantido adequados às condições declaradas.

Medir a resposta da porta

O que o atraso mede

Uma porta lógica não altera sua saída no mesmo instante em que a entrada muda. O atraso de propagação é o intervalo entre dois pontos de referência definidos pela especificação: um ponto na transição de entrada e o ponto correspondente na transição de saída.

Por exemplo, uma especificação pode medir ambos os pontos no cruzamento de 50% da tensão de alimentação. Nesse caso, o atraso é a diferença entre os instantes em que entrada e saída cruzam essa referência. Sempre use as referências e as condições indicadas para o parâmetro.

Entrada e resposta não ocorrem juntas

Diagrama temporal com uma subida em A e uma descida posterior em Y; linhas verticais marcam os pontos médios das duas transições.

O atraso é medido entre referências especificadas, como os cruzamentos em 50% da tensão.

Dica

Não confunda dois tempos

O atraso de propagação não é a duração da borda. O primeiro mede o deslocamento temporal entre os pontos de referência da entrada e da saída. Já o tempo de subida ou de descida mede quanto a própria saída leva para atravessar uma faixa de tensão definida, frequentemente de 10% a 90%.

Assim, uma saída pode ter uma borda gradual e, ainda assim, um atraso de propagação bem definido pelos pontos de medição especificados.

Escolher t_PLH ou t_PHL

Leia o sufixo pela saída

Os sufixos indicam a direção da transição na saída:

  • t_PLH: a saída passa de baixo para alto, ou L → H.
  • t_PHL: a saída passa de alto para baixo, ou H → L.

Em uma porta inversora, entrada e saída mudam em sentidos opostos. Se A sobe, Y desce; portanto, o parâmetro aplicável é t_PHL. Se A desce, Y sobe; use t_PLH.

Subida e descida podem ter atrasos diferentes

Comparação entre uma saída que sobe e um inversor cuja saída desce após uma subida na entrada.

Escolha o parâmetro pela direção de Y, não pela direção de A.

Exemplo

Procedimento prático

Em uma porta NAND, NOR ou inversora, primeiro determine pela tabela-verdade qual transição ocorrerá em Y. Depois selecione t_PLH se Y sobe ou t_PHL se Y desce. Os dois atrasos podem ter valores diferentes.

Ler limites e condições

Tabela didática de uma porta inversora

A tabela é hipotética e autocontida: não representa uma folha de dados real. Cada linha vale para as condições escritas naquela própria linha. Antes de usar um número, confira alimentação, temperatura, carga e condição de entrada aplicáveis ao seu caso.

Atrasos sob condições declaradas

Parâmetros de atraso hipotéticos; valores em ns.

Cada limite só é válido nas condições indicadas em sua linha.
CondiçõesParâmetroMínimoTípicoMáximo
5,0 V; 25 °C; 15 pF; borda ≤ 2 nst_PLH259
5,0 V; 25 °C; 15 pF; borda ≤ 2 nst_PHL2611
4,5 a 5,5 V; −20 a 70 °C; 15 pF; borda ≤ 2 nst_PLH——12
4,5 a 5,5 V; −20 a 70 °C; 15 pF; borda ≤ 2 nst_PHL——15

Atenção

Típico não é garantia

Um valor típico descreve um comportamento representativo sob condições determinadas; ele não garante que toda peça responderá daquele modo. Para limitar a chegada mais tardia de uma transição, use o máximo garantido aplicável.

Quando fornecido, um mínimo garantido limita uma resposta mais antecipada. Alimentação, temperatura, capacitância de carga e condição da borda de entrada podem alterar os atrasos. Não use um valor fora das condições que a especificação cobre.

Pratique a leitura da tabela

Escolha o limite correto

Uma porta inversora opera com alimentação entre 4,5 e 5,5 V, temperatura entre −20 e 70 °C, carga de 15 pF e borda de entrada de até 2 ns. A entrada A faz uma transição de baixo para alto.

Selecione o parâmetro pela transição de Y, localize o conjunto de condições correspondente e escolha o limite garantido que restringe a resposta mais tardia.

Prática de leitura da tabela

Qual valor deve ser usado para limitar o instante mais tardio da transição de Y?

Passo 2 de 9

Somar atrasos e reconhecer pulsos espúrios

Compare caminhos combinacionais, estime o maior atraso de estabilização e reconheça glitches causados por diferenças de atraso.

Somar os caminhos relevantes

Caminhos e estabilização

Em um circuito combinacional, uma mudança na entrada pode alcançar a saída por mais de uma rota. Para estimar quando a saída estará garantidamente estabilizada, identifique os caminhos sensibilizados pela transição, determine a direção da saída em cada porta e some os atrasos máximos correspondentes.

Use t_PLH,max quando a saída daquela porta sobe e t_PHL,max quando ela desce. Compare os totais: o maior deles limita a estabilização da saída nas condições para as quais os parâmetros são garantidos.

Não basta contar portas. Dois caminhos com o mesmo número de estágios podem ter atrasos diferentes, e uma porta pode usar t_PLH em uma transição e t_PHL em outra.

Duas rotas que se reencontram

Esquema de uma entrada X dividida entre uma porta inversora e uma porta AND com a outra entrada em nível alto; as duas saídas entram em uma porta OR.

Para analisar caminhos, mantenha explícitos o circuito, as entradas laterais e a transição aplicada.

Comparar atrasos máximos

Dados hipotéticos do circuito

Considere o circuito hipotético da imagem:

  • N = NÃO X
  • A = X E B, com B = 1
  • Y = N OU A

Inicialmente, X = 0. Portanto, N = 1, A = 0 e Y = 1. Agora, X sobe para 1. Como B continua em 1, N desce para 0 e A sobe para 1. O valor estável de Y continua sendo 1, mas as duas mudanças chegam à OR em momentos diferentes.

Atrasos das portas

Os valores abaixo são limites hipotéticos já aplicáveis às condições analisadas.

Limites hipotéticos de propagação, em ns.
Portat_PLH mín.t_PLH máx.t_PHL mín.t_PHL máx.
NOT1312
AND2524
OR2425

Exemplo

Exemplo resolvido: compare as direções

Com X subindo:

  • Caminho superior: X faz N descer. Na OR, a queda de N, enquanto A ainda vale 0, faz Y descer. Use t_PHL da NOT e t_PHL da OR: 2 ns + 5 ns = 7 ns.
  • Caminho inferior: X faz A subir, pois B = 1. Na OR, a subida de A faz Y subir novamente. Use t_PLH da AND e t_PLH da OR: 5 ns + 4 ns = 9 ns.

Logo, Y só está garantidamente no valor final após 9 ns. O caminho inferior é o mais lento neste caso. As direções são coerentes com as funções: uma entrada que sobe em uma OR sensibilizada pode elevar a saída; uma entrada que desce pode abaixá-la.

Reconhecer o glitch

Primeira mudança medida não é estabilização

O atraso máximo até a estabilização responde: até quando Y ainda pode estar em transição? Neste exemplo, a resposta é 9 ns.

Isso é diferente do limite até uma primeira mudança medida na saída. Se limites mínimos forem explicitamente fornecidos, eles indicam quando o cruzamento da referência de medição especificada em Y pode ocorrer mais cedo. Aqui, pelo caminho superior, o cruzamento correspondente à queda de Y pode ocorrer a partir de t_PHL,min da NOT + t_PHL,min da OR = 1 ns + 2 ns = 3 ns.

Esse limite de 3 ns não informa quando a borda física começou: t_PHL,min é medido entre referências definidas, como os cruzamentos de 50% da tensão. Ele também não significa que Y já se estabilizou; o caminho inferior ainda pode provocar a subida posterior. Use mínimos apenas quando forem fornecidos como limites garantidos; não os deduza de valores típicos ou máximos.

Pulso espúrio por atrasos diferentes

Diagrama temporal no qual X sobe, o caminho superior chega primeiro e faz a saída cair brevemente; a chegada posterior do caminho inferior faz a saída voltar ao nível alto.

Neste circuito, Y começa e termina em 1, mas pode apresentar um pulso baixo temporário entre as chegadas dos dois caminhos.

O que a tabela-verdade não mostra

Esse pulso temporário é um pulso espúrio, ou glitch. A tabela-verdade continua correta: antes e depois da transição, ela prevê Y = 1. Porém, a tabela-verdade descreve estados estáveis; ela não mostra necessariamente as transições intermediárias causadas por atrasos físicos diferentes.

A existência, a polaridade e a duração de um glitch dependem das rotas sensibilizadas, dos atrasos e do instante das transições. Neste step, o objetivo é reconhecê-lo e estimar a estabilização; os efeitos dele na captura por flip-flops serão tratados depois.

Verifique sua interpretação

Prática: calcule e compare

Novo caso hipotético: P = NÃO X, Q = X E C, Z = P OU Q, com C = 1. X começa em 0 e sobe para 1. Portanto, P desce, Q sobe e Z começa e termina em 1.

Use estes máximos: NOT: t_PHL,max = 3 ns; AND: t_PLH,max = 4 ns; OR: t_PHL,max = 6 ns e t_PLH,max = 5 ns.

Calcule os dois caminhos antes de responder:

  • via P: NOT seguida da OR;
  • via Q: AND seguida da OR.

Qual é o atraso máximo conservador até Z estar estabilizada?

Escolha o limite conservador

Qual atraso máximo deve ser usado para a estabilização de Z nesse caso?

Tabela-verdade prevê o transiente?

Se um circuito combinacional tem a mesma saída estável antes e depois de uma transição de entrada, a tabela-verdade garante que não haverá pulso espúrio no intervalo.

Passo 3 de 9

Acompanhar o dado entre dois flip-flops

Localize o atraso clock–Q e acompanhe a propagação do dado da borda de lançamento até a entrada do flip-flop de destino.

O percurso físico do dado

Do lançamento ao destino

Entre dois flip-flops, o dado não percorre o caminho de forma instantânea. A borda ativa do clock faz o flip-flop de origem lançar o valor que estava em sua entrada D. Depois de um atraso clock–Q, esse valor aparece em Q, atravessa a lógica combinacional e chega à entrada D do flip-flop de destino.

Nesta etapa, acompanhe apenas esse percurso. A verificação das janelas de captura será feita depois.

Diagrama de dois flip-flops com lógica entre eles e formas de onda mostrando que Q muda depois da borda de clock e D do destino muda mais tarde.

A borda lança o dado no flip-flop de origem; a saída Q e a entrada D do destino mudam apenas após seus respectivos atrasos.

A saída Q responde com atraso

Onde termina t_CQ

O atraso clock–Q, escrito como t_CQ, é medido da borda ativa do clock até a mudança correspondente em Q do flip-flop de origem.

  • t_CQ,max: maior atraso garantido. É usado quando importa saber a chegada mais tardia do novo dado.
  • t_CQ,min: menor atraso garantido. É usado quando importa saber a mudança mais antecipada de Q.

Não confunda t_CQ com o atraso da lógica posterior: t_CQ termina em Q. A partir de Q, cada porta, conexão ou bloco combinacional acrescenta atraso até D do destino.

Exemplo

Mínimo, máximo e resposta real

Em uma mesma borda ativa, Q não é atualizado no instante exato do clock. Se a especificação informa t_CQ,min = 2 ns e t_CQ,max = 5 ns, a mudança em Q é garantida em algum instante entre 2 ns e 5 ns após a borda, nas condições especificadas.

O valor efetivo pode variar; os limites mínimo e máximo servem para verificar os casos críticos.

Dois limites para a chegada em D

Exemplo

Exemplo de linha do tempo

Considere este caminho hipotético:

  • t_CQ,min = 1 ns e t_CQ,max = 3 ns;
  • atraso da lógica até D: entre 2 ns e 6 ns.

Após uma borda de lançamento em t = 0:

  • a primeira chegada possível do novo dado a D é 1 ns + 2 ns = 3 ns;
  • a chegada mais tardia é 3 ns + 6 ns = 9 ns.

A borda seguinte do clock é a candidata a capturar esse novo dado. Por enquanto, use essa separação para localizar os eventos; ainda não vamos decidir se a captura é válida.

Dica

Leitura correta dos limites

A ordem causal não muda: primeiro ocorre a borda de lançamento; depois Q muda após t_CQ; por fim, o resultado atravessa a lógica e alcança D no destino. Os valores mínimo e máximo delimitam quando essas mudanças podem acontecer, não são dois atrasos que ocorrem em série.

Prática: siga o caminho

Sequência do dado

Organize os eventos de um novo dado no caminho entre flip-flops, começando pela borda que o lança.

Coloque os eventos na ordem correta.

  1. Q da origem muda após t_CQ
  2. O novo valor percorre a lógica combinacional
  3. Borda ativa de lançamento no flip-flop de origem
  4. O novo valor chega a D do flip-flop de destino

Passo 4 de 9

Verificar as janelas de setup e hold

Reconheça as janelas de estabilidade de setup e hold e classifique transições de D próximas à borda ativa.

A estabilidade exigida em D

Setup e hold

A janela de captura

O flip-flop não exige apenas que D tenha um nível lógico na borda ativa: esse nível precisa permanecer estável em uma região ao redor dela.

  • Setup (tempo de preparação): D deve estar estável durante um intervalo mínimo antes da borda ativa.
  • Hold (tempo de retenção): D deve continuar estável durante um intervalo mínimo depois da mesma borda.

Se a borda ativa ocorre em t = 0, a janela exigida vai de −t_setup até +t_hold. Compare cada mudança de D com esses limites.

Diagrama temporal com uma borda de subida do clock e uma faixa destacada antes e depois dela em que D permanece estável.

A região destacada reúne o intervalo de setup antes da borda e o intervalo de hold depois dela.

Ler os intervalos efetivos

Como comparar os tempos

Considere uma borda de subida em t = 0 ns, com requisitos hipotéticos:

  • t_setup = 3 ns
  • t_hold = 2 ns

Portanto, D deve ficar sem transições de −3 ns a +2 ns.

Uma mudança em D em −4 ns ocorreu cedo o bastante para setup. Uma mudança em +3 ns ocorreu tarde o bastante para hold. As duas são compatíveis com os requisitos.

Já uma mudança em −1 ns invade setup; uma em +1 ns invade hold.

Exemplo

Exemplo — transição antes da borda

A borda ativa é em 20 ns. O componente pede t_setup = 4 ns. D muda pela última vez em 15 ns e fica estável até a borda.

O intervalo disponível é 20 − 15 = 5 ns.

Como 5 ns ≥ 4 ns, o requisito de setup é atendido. Para decidir sobre hold, ainda seria necessário observar D depois de 20 ns.

Atenção

Violação não prevê o resultado

Uma transição dentro da janela não permite concluir qual valor aparecerá em Q. A captura pode ocorrer com um nível ou outro, e o comportamento temporal deixa de ser garantido pelas especificações.

Prática: setup ou hold?

Classifique as transições

Associe cada situação à classificação correta. Considere uma borda ativa em t = 0 ns, t_setup = 2 ns e t_hold = 1 ns. Em cada caso, a transição indicada é a única mudança de D próxima à borda.

Faça as associações.

Toque em um item e depois no par correspondente.

Glitch próximo à borda

Um pulso também pode invadir a janela

Um glitch é uma mudança temporária na saída de uma lógica combinacional. Mesmo que D retorne ao valor esperado, esse pulso importa se alguma de suas bordas cair dentro da janela de captura.

Considere t_setup = 2 ns e t_hold = 1 ns, com borda ativa em 10 ns. D fica em 0, sobe em 8,5 ns, desce em 9,5 ns e permanece em 0.

Complete: o pulso espúrio invade o requisito de ____.

O pulso espúrio invade o requisito de ____.

Diagrama temporal em que um pulso curto em D ocorre pouco antes da borda de subida do clock e invade a região de setup.

O valor estável final de D não elimina o risco: uma transição temporária dentro da janela já retira a garantia de captura.

Passo 5 de 9

Calcular um período de clock admissível

Calcule o período mínimo de clock para setup com uma margem explícita e interprete corretamente o limite de frequência obtido.

Montar o orçamento de setup

Orçamento de um ciclo

Entre dois flip-flops, a borda ativa atual lança um novo dado; a borda ativa seguinte deve capturá-lo. Para atender ao setup, o dado precisa percorrer todo o caminho e ficar estável durante o tempo de setup antes dessa segunda borda.

No modelo simplificado, o orçamento de um ciclo usa os limites máximos:

T_clock ≥ t_CQ,max + t_lógica,max + t_setup + margem

A margem é uma reserva explícita do projeto. Ela deve ser definida para o caso analisado; não existe um valor universal.

Da borda de lançamento à captura

Diagrama temporal de dois flip-flops: após a borda de lançamento, há o atraso clock–Q, o atraso da lógica, o intervalo de setup antes da borda seguinte e uma margem.

O período precisa acomodar todos os trechos do caminho que levam o novo dado até a janela de setup.

Dica

Critério conservador

Use valores máximos para essa conta, pois ela limita a chegada mais tardia do dado. Se os atrasos das conexões forem relevantes, inclua-os em t_lógica,max; se forem desprezíveis pela hipótese, declare isso.

Calcular período e frequência

Exemplo com valores hipotéticos

Considere um caminho com clock comum e a mesma borda ativa nos dois flip-flops. As diferenças de chegada do clock são desprezíveis nesta análise. Os atrasos das conexões já estão incluídos no atraso lógico informado.

Parâmetros do caminho

Dados do caminho usado no exemplo.

Todos os valores são limites máximos hipotéticos para as condições analisadas.
ParâmetroValorPapel no orçamento
t_CQ,max8 nsSaída mais tardia do FF de origem
t_lógica,max17 nsLógica e conexões do caminho
t_setup5 nsEstabilidade antes da captura
Margem2 nsReserva explícita

Exemplo

Cálculo e interpretação

Some os trechos: 8 ns + 17 ns + 5 ns + 2 ns = 32 ns.

Logo, o período mínimo é 32 ns. Como f = 1/T, a frequência máxima imposta por este teste de setup é:

f_max = 1 / 32 ns = 31,25 MHz.

Um clock de 25 ns (40 MHz) é rápido demais para esse caminho. Um clock de 40 ns (25 MHz) atende ao setup sob as hipóteses declaradas.

Praticar o orçamento

Calcule o período mínimo

Para outro caminho, t_CQ,max = 7 ns, t_lógica,max = 14 ns, t_setup = 4 ns e a margem é 3 ns. O período mínimo para setup é {{blank}}.

Delimitar a conclusão

Interpretar a verificação

Retome o exemplo cujo período mínimo de setup é 32 ns. Um projeto usa clock de período 36 ns. Qual conclusão é correta?

Passo 6 de 9

Verificar hold separadamente

Use limites mínimos garantidos para verificar se o novo dado chega tarde o bastante após a mesma borda de clock.

O que a condição de hold compara

A mesma borda, duas funções

A verificação de hold olha para a mesma borda ativa do clock. Nessa borda, o flip-flop de origem começa a lançar o novo dado, enquanto o de destino ainda precisa reter o dado anterior em D por pelo menos t_hold.

A pergunta é: qual é o instante mais cedo em que o novo dado pode chegar a D do destino? No modelo simplificado de clock comum, esse instante é a soma dos limites mínimos:

t_chegada,cedo = t_CQ,min + t_lógica,min

Para atender ao hold, o novo dado não pode alterar D antes do fim da retenção exigida.

Diagrama temporal mostrando uma borda de clock comum, a janela de hold após ela e a chegada mais antecipada do novo dado.

A mudança mais antecipada do novo dado deve ocorrer depois da janela de hold do flip-flop de destino.

Folga, violação ou informação insuficiente

Calcule a folga com os mínimos

A condição simplificada é:

t_CQ,min + t_lógica,min ≥ t_hold

A folga de hold torna a comparação explícita:

folga = t_CQ,min + t_lógica,min − t_hold

  • Folga positiva: requisito atendido, nas condições declaradas.
  • Folga zero: atendimento no limite especificado.
  • Folga negativa: violação de hold.

Use valores mínimos garantidos: eles limitam a primeira mudança possível. Valores típicos descrevem um comportamento esperado, e valores máximos limitam chegadas tardias; nenhum deles substitui um mínimo garantido nesta conta.

Como interpretar os dados

Cenários hipotéticos para a mesma borda de clock.

A conclusão de hold depende de limites mínimos para todos os trechos do caminho.
CasoDados disponíveisConclusão
At_CQ,min = 0,45 ns; t_lógica,min = 0,35 ns; t_hold = 0,60 nsFolga = +0,20 ns: atende
Bt_CQ,max = 1,20 ns; t_lógica,típ = 0,50 ns; t_hold = 0,60 nsDados insuficientes
Ct_CQ,min = 0,15 ns; t_lógica,min = 0,20 ns; t_hold = 0,50 nsFolga = −0,15 ns: viola

Exemplo

Exemplo: atendimento e informação insuficiente

No caso A, a primeira mudança pode chegar em 0,45 ns + 0,35 ns = 0,80 ns após a borda. Como o destino exige estabilidade por 0,60 ns, sobra 0,20 ns.

No caso B, não é válido trocar os mínimos por máximo e típico. Sem t_CQ,min e t_lógica,min, não se pode atestar que o dado anterior será mantido tempo suficiente.

Calcule uma condição de hold

Pratique o cálculo da folga

Um caminho tem t_CQ,min = 0,30 ns, t_lógica,min = 0,55 ns e t_hold = 0,70 ns.

A folga de hold é de {{blank}}.

Não confunda hold com período de clock

Frequência resolve hold?

Se uma verificação de hold falha, diminuir a frequência do clock, sem mudar mais nada, corrige essa falha.

Passo 7 de 9

Conferir pulsos, bordas e liberação do reset

Verifique requisitos de largura de pulso, velocidade de borda e liberação do reset que complementam as análises de setup e hold.

1. Conferir a forma do clock

Clock: período não é o único requisito

Além do caminho de dados, o clock e o reset assíncrono possuem requisitos próprios. Eles vêm da folha de dados do componente e devem ser verificados separadamente de setup e hold em D.

Considere a tabela hipotética desta tela. Um clock de período suficiente ainda pode falhar se seu tempo em nível alto ou baixo for curto demais. Também não basta haver transições: as bordas precisam respeitar os tempos máximos de subida e descida especificados.

Forma do pulso também importa

Comparação entre um clock com pulsos e bordas adequados e outro com pulso alto estreito e borda lenta.

Dois clocks podem ter o mesmo período, mas apenas um pode atender simultaneamente às larguras de pulso e aos limites das bordas.

Parâmetros hipotéticos do componente

Use estes valores somente neste exemplo didático; componentes reais podem especificar outros limites e condições de medição.

Requisitos para as condições declaradas neste exercício.
Sinal ou eventoRequisito hipotéticoInterpretação
Clock em nível altomínimo 4 nsPulso alto não pode ser menor.
Clock em nível baixomínimo 3 nsPulso baixo não pode ser menor.
Subida e descida do clockmáximo 2 nsBorda não pode ser lenta demais.
Reset assíncrono ativomínimo 5 nsPulso de reset deve durar o suficiente.
Liberação do reset: recoverymínimo 3 ns antes da bordaReset deve estar liberado antes dela.
Liberação do reset: removalmínimo 1 ns após a bordaNão libere reset logo após ela.

2. Avaliar reset e velocidade das bordas

Reset: acionar e liberar são verificações diferentes

Um reset assíncrono pode atuar sem esperar uma borda de clock, mas seu pulso ativo ainda precisa ter a largura mínima especificada. Para um reset ativo em nível baixo, por exemplo, o sinal precisa permanecer em 0 pelo tempo mínimo indicado.

A liberação do reset — a desativação — também exige cuidado. Ela não deve ocorrer perto da borda ativa do clock. No exemplo, o reset deve ser liberado pelo menos 3 ns antes da borda (recovery) e não pode ser liberado no intervalo de 1 ns depois dela (removal). Uma liberação dentro dessa janela deixa o comportamento do flip-flop sem garantia.

Janela de liberação do reset

Diagrama temporal de reset ativo em nível baixo, mostrando a largura do pulso e uma zona proibida ao redor da borda ativa do clock.

Recovery e removal formam uma região próxima à borda de clock na qual a liberação do reset não é garantida.

Exemplo

Exemplo

Exemplo com a tabela hipotética: um clock tem período de 10 ns, fica 4 ns em nível alto e 6 ns em nível baixo. Portanto, atende às larguras mínima alta e baixa. Porém, se sua subida durar 2,5 ns, ele viola o limite de borda de 2 ns — mesmo tendo período e larguras de pulso adequados.

Conclusão: cada requisito precisa de uma conferência própria.

3. Praticar a identificação de violações

Diagnóstico de formas de onda

Relacione cada situação ao requisito que ela viola, usando a tabela hipotética apresentada.

Faça as associações.

Toque em um item e depois no par correspondente.

Mesmo período, resultado diferente

Com período de 10 ns, qual clock atende às larguras mínimas da tabela: alto ≥ 4 ns e baixo ≥ 3 ns?

Passo 8 de 9

Reconhecer riscos de entradas assíncronas

Entradas sem relação temporal com o clock podem violar a janela de captura mesmo quando seus níveis elétricos são bem definidos.

Entrada definida não é entrada sincronizada

O que torna uma entrada assíncrona

Sem relação de tempo garantida

Uma entrada é assíncrona quando sua transição não tem uma relação temporal definida com a borda ativa do clock que a captura. Ela pode mudar muito antes, muito depois ou praticamente no mesmo instante da borda.

Por isso, mesmo um clock lento não garante captura confiável: em alguma ocorrência, a transição ainda pode cair dentro da janela de setup e hold do flip-flop.

Posição imprevisível da transição

Diagrama temporal mostrando uma transição assíncrona que pode ocorrer em posições imprevisíveis em relação às bordas do clock.

Como não há alinhamento entre os dois sinais, uma transição pode invadir a janela de captura.

Atenção

Clock lento não resolve sozinho

A frequência menor aumenta o intervalo entre bordas, mas não cria uma relação de fase entre a entrada externa e o clock. Portanto, não elimina a possibilidade de uma transição ocorrer na região crítica de uma borda.

O risco não é um erro obrigatório

Metastabilidade: resultado não garantido

Se D muda dentro da janela de setup ou hold, o flip-flop pode entrar em metastabilidade: sua saída Q pode levar mais tempo que o usual para se resolver em 0 ou 1.

Não é correto concluir que toda violação produz obrigatoriamente um 0 ou um 1 errado. O que se perde é a garantia: tanto o valor capturado quanto o instante em que Q se estabiliza deixam de obedecer ao comportamento temporal especificado.

Resolução além do tempo usual

Ilustração de um flip-flop cuja saída permanece temporariamente em uma região indefinida antes de se estabilizar.

Após uma violação temporal, Q pode não se resolver no tempo normalmente esperado.

Atenção

Atenção à garantia temporal

Se Q metastável alimentar outra lógica, essa lógica pode interpretar um nível de modo imprevisível ou receber a transição tarde demais. A análise de setup e hold de um caminho comum não transforma uma entrada sem relação com o clock em uma entrada segura.

Dois cuidados diferentes: nível e evento

Polarizar não é sincronizar

Um resistor de pull-up ou pull-down continua sendo útil: ele evita que a entrada fique flutuando quando nenhum circuito a força. Porém, ele só define a polarização elétrica; não define quando uma mudança causada por um evento externo ocorrerá em relação ao clock.

Assim, uma entrada com pull-up pode estar em nível alto bem definido e ainda fazer uma transição assíncrona para baixo em uma janela crítica.

Pulso estreito pode passar despercebido

Um evento também pode gerar um pulso mais estreito que o intervalo entre duas bordas de clock. Nesse caso, o flip-flop pode não amostrar o nível ativo em nenhuma borda, mesmo que o sinal tenha níveis elétricos válidos e nunca viole setup ou hold.

Logo, tratar uma entrada assíncrona exige considerar tanto a relação temporal com o clock quanto a duração do evento. A forma adequada depende do tipo de sinal; técnicas específicas serão estudadas adiante.

Atenção

Verifique a afirmação

Uma entrada externa tem pull-up e normalmente fica em nível alto. Um botão ou sensor externo a leva brevemente para nível baixo, sem relação com o clock. O pull-up, por si só, torna a captura confiável em qualquer borda de clock?

Pull-up resolve o risco temporal?

Um pull-up elimina o risco temporal de uma entrada assíncrona porque impede que a linha flutue.

Explique a análise

Justifique o cuidado necessário

Em poucas frases, justifique por que um sinal externo com pull-up e um clock lento ainda pode exigir cuidado temporal. Inclua: (1) o que o pull-up resolve, (2) o risco junto à borda de clock e (3) o que pode ocorrer com um pulso muito estreito.

Escreva pelo menos 180 caracteres (0/180).

Passo 9 de 9

Aplicar uma verificação temporal completa

Integre setup, hold e requisitos adicionais para concluir com precisão se uma captura digital é garantida nas condições declaradas.

1. Ler o caso completo

Cenário e hipóteses

Caso final: FF1 → lógica → FF2

Dois flip-flops D usam a mesma borda de subida de um clock comum. FF1 lança um dado, que atravessa uma porta AND e um inversor antes de chegar a D de FF2.

A análise vale somente sob estas hipóteses: diferenças de chegada do clock são desprezíveis; atrasos das conexões já estão incluídos no atraso da lógica; e todos os valores da tabela são garantidos para as condições de alimentação, temperatura, carga e bordas de entrada analisadas.

Seu objetivo é registrar uma conclusão para cada requisito, sem assumir que uma aprovação de setup aprova o circuito inteiro.

O caminho a verificar

Diagrama de FF1 ligado a FF2 por uma porta AND e um inversor, com clock comum e caminho de dados entre Q de FF1 e D de FF2.

Para setup, avalie a chegada mais tardia; para hold, a mais antecipada.

Parâmetros garantidos do caso

Use apenas estes dados hipotéticos no caso final. “Atraso mínimo” e “atraso máximo” delimitam a propagação. Já setup, hold e largura de pulso são requisitos mínimos de estabilidade ou duração.

Valores em ns, válidos somente nas condições declaradas.
ParâmetroValor garantido ou requisitoTipo de limiteUso
FF1: t_CQ,min1 nsAtraso mínimoHold
FF1: t_CQ,max4 nsAtraso máximoSetup
Lógica: t_lógica,min1,5 nsAtraso mínimoHold
Lógica: t_lógica,max8 nsAtraso máximoSetup
FF2: t_setup2 nsRequisito mínimoSetup
FF2: t_hold2 nsRequisito mínimoHold
Margem de projeto1 nsReserva explícitaSetup
Clock alto7 nsLargura mínimaPulso alto
Clock baixo5 nsLargura mínimaPulso baixo
Subida e descida2 nsDuração máximaBordas

2. Avaliar a chegada tardia e o setup

Não misture os critérios

Roteiro de verificação

  1. Confirme se as hipóteses permitem o modelo simplificado.
  2. Some os máximos para obter a chegada mais tardia em D.
  3. Some t_CQ,max, t_lógica,max, t_setup e a margem para encontrar o período mínimo.
  4. Some os mínimos e compare com t_hold.
  5. Confira requisitos próprios do clock, como larguras de pulso e tempos de borda.

Mantenha os resultados separados: setup e hold respondem a perguntas diferentes, e requisitos adicionais continuam obrigatórios.

Calcule a chegada mais tardia

Qual é o atraso máximo do caminho de FF1 até D de FF2, antes de considerar setup e margem?

Calcule o período mínimo

Qual é o período mínimo de clock exigido pelo setup, já incluindo a margem explícita?

3. Conferir hold e requisitos adicionais

Hold e formato do clock

Agora faça a conta de hold sem reutilizar os máximos do setup. A chegada mais cedo do novo dado é:

t_CQ,min + t_lógica,min

A folga de hold é essa chegada antecipada menos o requisito t_hold. Depois, compare o clock proposto no diagrama com cada requisito adicional da tabela.

Calcule a folga de hold

Qual é a folga de hold deste caminho?

Clock proposto

Diagrama de um clock de período 16 ns, alto por 6 ns, baixo por 10 ns, com subida de 1,5 ns e descida de 1,4 ns.

Compare cada medida do clock com o requisito correspondente; período adequado não basta sozinho.

Identifique a restrição adicional

Considerando a tabela e o diagrama, qual requisito adicional impede aprovar o clock proposto?

4. Registrar a conclusão completa

Emita uma conclusão justificada

Escreva uma conclusão técnica curta para o caso. Registre separadamente: o atraso máximo até D, o período mínimo de setup, a folga de hold e o requisito adicional que impede a aprovação global. Indique também que a conclusão depende das hipóteses e condições declaradas.

Escreva pelo menos 180 caracteres (0/180).

Resumo

Síntese da competência

  • Antes de calcular, declare as hipóteses: clock comum, diferenças de chegada desprezíveis e parâmetros válidos nas condições analisadas.
  • Use atrasos máximos para setup: neste caso, a chegada tardia é 12 ns e o período mínimo com margem é 15 ns.
  • Use atrasos mínimos para hold: neste caso, a folga é +0,5 ns.
  • Registre setup, hold, largura de pulso, bordas e reset como verificações separadas.
  • A conclusão correta pode ser atendido, violado ou informação insuficiente; uma aprovação parcial não garante a captura.

Tutorial concluído

Parabéns! Você concluiu: Verificação de atrasos e requisitos de temporização

Parabéns! Você sabe justificar uma captura digital com mais do que uma tabela-verdade.

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