Alee

The duke of Hazzard - Generale Lee

In fase di sviluppo Stesura preliminare In fase di sviluppo

In questa pagina verrà mostrato come i tempi di propagazione delle porte logiche possono avere effetti imprevisti e spesso indesiderati sul funzionamento di un circuito combinatorio; in genere sono indicati con il temine di alea (hazard).

La fotografia di apertura ovviamente non ha nulla a che fare con il contenuto della pagina (anche per una Z di differenza...), ma la Generale Lee è un mito per chi è nato nella seconda metà del secolo scorso; da qualche parte la dovevo pur mettere.

Clock

Consideriamo il seguente circuito disegnato con Deeds, un semplice inverter:

Un inverter

L'ingresso è costituito da un clock, cioè un segnale che si ripete sempre uguale a se stesso, alternano un tempo in cui ha valore alto (TON) ad un tempo in cui ha valore basso (TOFF). Viene indicato con il termine periodo (T) la somma di questi due tempi: T = TON + TOFF. Ovviamente si misura in secondi (s), spesso usando i suoi sottomultipli.

La frequenza (f) è l'inverso del periodo: f = 1 / T e si misura in hertz (Hz), spesso usando i suoi multipli.

Se TON = TOFF il segnale viene chiamato onda quadra.

Si definisce Duty Cycle (in italiano, meno usato: ciclo utile) il rapporto DC = TON / T, sempre compreso tra 0 e 1; esso è un numero puro. Spesso è espresso come percentuale ( DC% = TON / T · 100 ). Per l'onda quadra il DC% è pari al 50%.

Durante la simulazione interattiva è possibile impostare la frequenza del clock, tenendo conto che anche soli pochi hertz sono difficilmente percepibili dal nostro occhio.

Clock in Deeds

In genere quando si utilizzano clock è preferibile visualizzare i diagrammi temporali.  In particolare sono utili gli strumenti Cursors, (a volte indicati come rulers oppure, in italiano, cursori) evidenziati in figura dal bollo rosso, e Magnifier (lente di ingrandimento), evidenziati dai bolli verdi.

Magnifier di Deeds

Tre quesiti:

Ritardo X4

Alea statica

In base alla tabella di verità, quanto vale l'uscita Q nel seguente circuito (nota 1)?

Circuito con alea statica

Simulando il circuito nella modalità Timing Diagram si nota una strano comportamento, in genere causa di problemi.

Questo comportamento è chiamato alea statica oppure (impropriamente) glitch o spike; può essere descritto come presenza di una transizioni da uno a zero e da zero a uno (o viceversa) quando, in base alla tabella di verità, l'uscita non dovrebbe cambiare.

In genere la sua soluzione porta ad un aumento della complessità del circuito. In alternativa possiamo ignorare il problema e, dopo il cambiamento di uno degli ingressi attendere un po' di tempo prima di leggere l'uscita.

Nella pagina www.digitalelectronicsdeeds.com...labtopics è presente l'esercizio Analysis and elimination of static hazards. L'analisi può essere fatta facilmente, il metodo suggerito per l'eliminazione non è qui descritto, ma con un po' di intuito...

Alea dinamica

In base alla tabella di verità, il seguente circuito dovrebbe comportarsi come un un inverter. Verificarlo.

Circuito con alea dinamica

Di seguito un dettaglio del diagramma temporale:

Alea dinamica

Questo comportamento è chiamato alea dinamica è può essere descritto come presenza di più transizioni da uno a zero e viceversa quando, in base alla tabella di verità, ce ne dovrebbe essere una sola.

In genere la sua soluzione porta ad un aumento della complessità del circuito e richiede l'eliminazione preventiva delle alee statiche. In alternativa possiamo ignorare il problema e, dopo il cambiamento di uno degli ingressi attendere un po' di tempo prima di leggere l'uscita.

Note

  1. Sono presenti nel circuito un Test LED (utile per una verifica "visiva) ed un Test Point (utile nei diagrammi temporali)


Pagina creata nel novembre 2020. Ultima modifica: 13 novembre 2020


Licenza "Creative Commons" - Attribuzione-Condividi allo stesso modo 3.0 Unported


Pagina principaleAccessibilitàNote legaliPosta elettronicaXHTML 1.0 StrictCSS 3

Vai in cima