Salta la barra di navigazione [1] - Vai alla barra di navigazione [3] - Scrivimi una mail [4]

Diagrammi temporali

Tornare a scuolaElettronica digitale  - Sommario - Novità - Tutorial - Progetti - Risorse - Non solo elettronica

Diagramma temporale disegnato a mano

In fase di sviluppo Stesura preliminare In fase di sviluppo

Un diagramma temporale è un grafico che rappresenta in modo schematico come variano ingressi ed uscite di un circuito digitale in funzione del tempo:

Esempio 1

Si consideri la seguente porta logica AND a due ingressi. Vogliamo disegnare l'andamento nel tempo dell'uscita Y, noto l'andamento di A e B.

Porta AND

I due ingressi hanno il seguente andamento temporale, descritto a parole:

  1. Inizialmente A e B sono bassi
  2. All'istante T = 1 µs entrambi i segnali diventano alti
  3. All'istante T = 2 µs A diventa basso (e B non cambia)
  4. All'istante T = 3 µs entrambi gli A e B cambiano valore
  5. Infine, all'instante T = 4 µs A diventa basso

Il diagramma temporale degli ingressi è quindi il seguente, disegnato a partire dalla descrizione (nota 2):

Porta AND. Ingressi

Il grafico è stato disegnato con WaveDrom e la seguente codifica testuale:

{signal: [
 {name: 'A', wave: 'lhlhl'},
 {name: 'B', wave: 'lh.l.'},
]}

Si noti che l'informazione sulla durata di ciascun intervallo non è stata riportata nel grafico in quando sufficientemente chiara nella descrizione (ed in questo caso neppure necessaria, nota 1). Sono state disegnate linee tratteggiate verticali in corrispondenza di ciascuna transizione di uno dei segnali di ingresso.

Analogamente non è presente alcun valore numerico o unità di misura sull'asse verticale per indicare il livelli logici alti e bassi, in genere noti o sottintesi.

Possiamo ora disegnare il diagramma temporale relativo all'uscita Y, ricavato direttamente dalla tabella di verità: solo quando A e B sono contemporaneamente alti, anche Y è alto.

AND: diagramma temporale

Osservazioni:

Esercizio 2

Disegnare con WaveDrom l'uscita Y di una porta XOR quando gli ingressi A e B sono i seguenti:

Ingressi porta XOR

Esercizio 3

Trovare la tabella di verità corrispondente al seguente diagramma temporale. Disegnare inoltre il circuito corrispondente. Disegnare con WaveDrom il diagramma temporale.

Diagramma temporale ignoto

Diagrammi temporali reali

I diagrammi temporali (reali) possono essere osservati con un oscilloscopio.

Tempi di transizione

L'immagine seguente mostra un segnale periodico reale (T = 373.8 ns), con valore alto pari a circa 3 V e valore basso 0 V.

Un clock visualizzato con l'oscilloscopio 

Si possono notare i fronti non verticali. In un diagramma temporale questo aspetto viene messo in evidenza, se serve, inclinando le linee che rappresentano i fronti, come mostrato per il segnale A2

Il grafico è stato disegnato con WaveDrom e la seguente codifica testuale:

{signal: [
 {name: 'A1', wave: 'hlhl.h.'},
 {name: 'A2', wave: '1010.1.'},
]}

L'inclinazione è definita attraverso il tempo di transizione (transition time, tT), mostrato graficamente nella seguente figura:

Tempo di salita e discesa

Esercizio 4

Disegnare con WaveDrom il diagramma temporale dell'esercizio 3, rappresentando i tempi di transizione (con WaveDrom non è possibile impostare il valore numerico dell'inclinazione).

Tempo di propagazione

Un secondo parametro misura quanto una porta è più o meno veloce: Il tempo di propagazione tP indica il tempo che passa da quando l'ingresso vale il 50 % del valore alto a quando l'uscita vale il 50% del valore alto. Tale valore VM (valor medio) nel grafico reale sopra riportato vale circa 1.5 V. 

Tempo di propagazione 

Esercizio 5

Misurare per entrambi e segnali VH, VL, tTHL (o tTLH) ; misurare inoltre tP nel seguente caso (nota 4). Domanda: quale segnale è l'ingresso? Quale l'uscita?

Tempi di transizione e propagazione

Interferenze, rumore e ringing

In un circuito reale l'andamento della tensione si allontana significativamente da quello rappresentato come un insieme di segmenti rettilinei. L'immagine seguente ne è un esempio:

Segnali digitali affetti da interferenze, rumore e ringing 

In particolare possiamo osservare:

Queste variazioni non sono rappresentate nei diagrammi temporali perché, se abbastanza piccole, non modificano il valore logico.

Raggruppare più segnali

A volte il diagramma temporale appare complesso a causa di numerose linee, rendendo non facile la lettura. Per esempio il seguente diagramma rappresenta un insieme di quattro segnali A3, A2, A1 e A0 (bus)

In questi casi potrebbe essere conveniente raggruppare i segnali, immaginando i quattro bit come un unico numero binario, dove A3 è il MSB e A0 il LSB.

Nel diagramma temporale possiamo indicare la sola linea A costituita da una serie di "esagoni", come rappresentato nell'ultima riga seguente.

Come leggere il diagramma temporale ottenuto:

Il grafico è stato disegnato con WaveDrom e la seguente codifica testuale:

{signal: [
 {name: 'A0', wave: '0101010101010101'},
 {name: 'A1', wave: '0.1.0.1.0.1.0.1.'},
 {name: 'A2', wave: '0...1...0...1...'},
 {name: 'A3', wave: '0.......1.......'},
 {name: 'A', wave: '2222322222522227',
  data: ['0x0', '0x1', '0x2', '0x3', '0x4', '0x5', '0x6', '0x7', '0x8', '0x9', '1010', '1011', '1100', '13', '14', '15']},
]}

A volte per lunghi periodi di tempo, un segnale non cambia e può essere disegnato come nella seguente figura: A e A1 rappresentano lo stesso segnale

Il grafico è stato disegnato con WaveDrom e la seguente codifica testuale:

{ "signal" : [
 { "name": "A", "wave": "101......01." },
 { "name": "A1", "wave": "101|01." }
]}

Due casi particolari

Il seguente diagramma contiene due casi particolari (nota 3), riferiti la prima riga ad un segnale singolo, la seconda ad un bus:

L'intervallo evidenziato in blu indica che il valore logico "non ha importanza" (don't care oppure X). Potrebbe valere 1 oppure 0 (oppure alcuni bit a 0 ed alcuni a 1 per il bus) e questo non influenza il funzionamento del circuito. In un certo senso possiamo dire che il valore logico è sia alto che basso.

L'intervallo evidenziato in rosso indica che l'uscita di una porta si trova "ad alta impedenza" (3-state oppure High-Z), cioè né alta né bassa, ma semplicemente non collegata

{signal: [
 {name: 'A', wave: '0x..1.z..10'},
 {name: 'An', wave: '0x..2.z..22', data: ['0x5', '0x7', '0x0']},
]}

Note

  1. Non mettere le unità di misura è in genere un errore grave ed è una pratica tollerata solo in contesti in cui queste informazioni sono chiaramente deducibili da altri elementi
  2. Molti dei diagrammi temporali presenti in questa pagina sono stati disegnati con https://wavedrom.com
  3. A volte la presenza di tali casi particolari è indicata come logica a quattro valori (four-valued logic): true, false, both (true and false), and neither
  4. Se avete installato il software Picoscope potete utilizzare il file allegato per una misura "live"

Elettronica digitale


Data di creazione di questa pagina: febbraio 2020
Ultima modifica: 28 febbraio 2020


Tornare a scuola

 

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


EN - Pagina principale - Sommario - Accessibilità - Note legali e privacy policy - Posta elettronica

XHTML 1.0 Strict - CSS 3