45 / 63 · Concetto
Hazard logici e limiti delle formule equivalenti
Analizzare come circuiti equivalenti a regime producano transitori diversi per i ritardi.
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
La tabella di verità non contiene il tempo
Con B=C=1, questa formula produce F=1 per entrambi i valori di A:
Le uscite reali cambiano però in ritardo. Quando A passa da 1 a 0, AB può scendere prima e salire dopo per via dell'invertitoreInversione NOT scambia 0 e 1. Una barra superiore applica NOT all’intera espressione sottostante. Approfondisci. Fra i due eventi entrambi i termini sono 0. Un breve 0 dove l'uscita dovrebbe restare 1 è un hazard statico di tipo 1.
Confrontare numericamente i ritardi
Assumiamo questi ritardi fino agli ingressi OR. Illustrano il principio, non un processo produttivo specifico.
| Evento | Tempo dal cambio di A |
|---|---|
| AB scende a 0 | 2ns |
| sale a 1 | 4ns |
Per circa 2ns entrambi gli ingressi OR sono 0. Presenza e durata dell'impulso reale dipendono anche dal ritardo OR e dalla trasmissione degli impulsi brevi. Otto righe corrette della tabella di veritàTabella di verità Elenco completo delle combinazioni d’ingresso e delle rispettive uscite. Le variazioni temporali si esaminano separatamente nelle forme d’onda. Approfondisci non verificano questo transitorio.
Una colonna vale 1ns dopo il cambio di A. AB cambia a 2ns, NOT(A)C a 4ns. Le ultime righe combinano gli ingressi trascurando il ritardo OR: non sono misure reali. Verificate come BC=1 copra il vuoto.
Mostra i dati della forma d’onda
| Segnale | Forma d’onda | Valori del bus |
|---|---|---|
| time(ns) | 234523 | 0 → 1 → 2 → 3 → 4 → 5 |
| AB | 1.0... | |
| NOT(A)C | 0...1. | |
| OR inputs | 1.0.1. | |
| with BC | 1..... |
Un termine ridondante può avere un ruolo temporale
Aggiungiamo BC, che sostiene l'uscita con B=C=1 indipendentemente da A:
Il teorema del consenso dell'algebra booleanaAlgebra booleana Algebra di 0,1, AND, OR e NOT. Il simbolo più indica normalmente OR e segue regole diverse dall’addizione intera. Approfondisci mantiene uguale la funzione a regime. Durante il cambio di A, BC resta però 1 e copre il vuoto. Nella mappa di Karnaugh equivale a coprire due 1 adiacenti con un gruppo comune.
Il ragionamento assume, per esempio, un solo ingresso in transizione e una SOP a due livelli. Non risolve tutti i cambi simultanei, gli hazard dinamici multilivello o il rumore analogico.
Un termine RTL non resta necessariamente nell'hardware
La sintesi può eliminare BC perché ridondante funzionalmente. Aggiungerlo nel sorgente non dimostra un'implementazione senza hazard. Scegliete la struttura adatta e controllate cammini e timing dopo l'implementazione.
Nel datapath sincrono i registriRegistro Memorizza uno stato di più bit. I registri sincroni del corso acquisiscono gli ingressi specificati al fronte di clock. Approfondisci devono campionare dopo l'assestamento rispettando setup e holdSetup Tempo minimo prima del fronte di acquisizione in cui i dati devono essere stabili. Una violazione rende non garantito il valore memorizzato. ApprofondisciTempo di hold Tempo minimo dopo il fronte di acquisizione in cui i dati devono restare stabili. Va distinto dal generico mantenimento di un valore. Approfondisci. Usare glitch come clock, reset asincrono o trigger esterno può causare problemi maggiori. Progettate considerando anche scopo del segnale e modalità di ricezione.
Prova tu
Per , B=C=1 e A:0→1, quale consenso copre l’hazard statico 1? Cambia la tabella a regime?
Leggi la spiegazione
BC. è equivalente funzionalmente, ma BC copre l’intervallo in cui entrambi i cammini sono a 0. Si assume una sola transizione; la conservazione del termine nelle porte reali va verificata separatamente.