45 / 63 · Conceito
Hazards lógicos e limites da equivalência
Analise como dois circuitos equivalentes em regime estável podem produzir transientes diferentes devido aos atrasos.
As aulas podem ser lidas gratuitamente. Inscreva-se para salvar o progresso.
A tabela-verdade não inclui tempo
Com B=C=1, a função abaixo vale 1 tanto para A=0 quanto para A=1:
Portas físicas não respondem instantaneamente. Quando A passa de 1 para 0, AB pode cair antes de , que atravessa um inversorNegação Operação NOT que troca 0 por 1 e 1 por 0. Uma barra sobre uma expressão aplica NOT a toda a expressão coberta. Saiba mais, subir. Nesse intervalo, ambos os termos valem 0. Esse zero breve numa saída que deveria manter 1 é um hazard estático de 1 (static-1 hazard).
Compare atrasos numericamente
Suponha estes atrasos até as entradas OR. São valores didáticos, não dados de um processo concreto.
| Evento | Tempo desde a mudança de A |
|---|---|
| AB cai para 0 | 2ns |
| sobe para 1 | 4ns |
Ambas as entradas OR ficam em 0 por cerca de 2 ns. A existência e a largura do pulso real também dependem do atraso de OR e de sua resposta a pulsos curtos. Acertar as oito linhas da tabela-verdadeTabela-verdade Tabela que enumera todas as combinações possíveis de entradas e a saída de cada uma. A evolução temporal é verificada separadamente nas formas de onda. Saiba mais não verifica esse transiente.
Cada intervalo da figura é 1 ns desde a mudança de A: AB muda em 2 ns e NOT(A)C em 4 ns. As últimas linhas combinam as entradas omitindo o atraso da própria OR; não são uma medição física. Observe como BC=1 cobre a lacuna.
Ver os dados da forma de onda
| Sinal | Forma de onda | Valores do barramento |
|---|---|---|
| tempo (ns) | 234523 | 0 → 1 → 2 → 3 → 4 → 5 |
| AB | 1.0... | |
| NOT(A)C | 0...1. | |
| entradas OR | 1.0.1. | |
| com BC | 1..... |
Um termo redundante pode ter função temporal
Acrescente BC, que sustenta a saída enquanto B=C=1, independentemente de A:
O teorema do consenso da álgebra booleanaÁlgebra booleana Álgebra de 0, 1 e das operações AND, OR e NOT. O sinal de soma costuma representar OR, portanto suas regras diferem das da soma de inteiros. Saiba mais preserva a função estável. BC permanece em 1 durante a transição de A e cobre a lacuna dessa mudança de uma única entrada. Em Karnaugh, equivale a cobrir dois uns adjacentes com um grupo comum.
O argumento pressupõe uma única entrada em transição e uma implementação SOP de dois níveis. Não resolve sozinho mudanças simultâneas de várias entradas, hazards dinâmicos em lógica multinível nem ruído analógico.
Escrever o termo em RTL não garante sua preservação
A síntese pode reconhecer e eliminar BC como redundante. Acrescentá-lo ao código não demonstra uma implementação livre de hazards. Escolha uma estrutura apropriada e revise caminhos e temporização após implementar.
Num caminho síncrono, a base é cumprir 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 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 para o registradorRegistrador Circuito que armazena vários bits de estado. Os registradores síncronos deste curso capturam a entrada especificada na borda de clock. Saiba mais capturar depois que a saída se estabilizar. Usar diretamente uma saída combinacional com pulsos espúrios como clock, reset assíncrono ou disparo externo pode agravar o problema. Projete considerando o propósito e a recepção do sinal.
Experimente
Em , B=C=1 e A muda de 0 para 1. Qual termo de consenso cobre o hazard estático de 1? A tabela estável muda?
Ler a explicação
BC. preserva a função, mas BC cobre o intervalo em que ambos os caminhos poderiam ficar em 0. Pressupõe-se uma única entrada em transição e é preciso verificar se a estrutura física mantém esse termo.