Elettronica analogica e digitale (definizioni e caratteristiche generali) E.Gandolfi
Definizione di segnale Segnale : una qualunque grandezza fisica variabile a cui è associata una informazione Il segnale, in certi casi, può essere schematizzato come funzione matematica Y = f(X1, X2, Xn) con X1, X2, Xn variabili generiche: ES: ECG, immagine statica, immagine variabile
Classificazioni di segnali (in base ai valori assunti dalla variabile indipendente) Segnali a tempo continuo: il dominio della funzione ha la cardinalità dei numeri reali; la variabile indipendente può assumere con continuità tutti i valori compresi in uncerto intervallo (funzione continua X(t), Y(t)) Segnali a tempo discreto: il dominio della funzione ha la cardinalità dei numeri interi ; tali sequenze in matematica vengono chiamate successioni e nella teoria dei segnali sequenze numeriche X[n], Y[n]
Classificazioni di segnali (in base ai valori assunti dalla variabile dipendente) Segnali ad ampiezza continua: il codominio della funzione ha la cardinalità dei numeri reali; la variabile dipendente può assumere con continuità tutti i valori compresi in un certo intervallo: segnale acustico, andamento della temperatura Segnali ad ampiezza discreta: il codominio della funzione ha la cardinalità dei numeri interi, ovvero la variabile dipendente può assumere solo un numero limitato di valori in un dato intervallo: segnale morse…
Definizioni di segnali Segnali a tempo continuo X(t) t Segnali analogici : sono i segnali a tempo continuo e ad ampiezza continua. Segnali quantizzati: sono i segnali a tempo continuo ed ampiezza discreta; t X(t)
Definizioni di segnali Segnali a tempo discreto X[n] t Segnali a tempo discreto ed ampiezza continua, usati nei Digital Signal Processing(DSP). Segnali numerici: sono i segnali a tempo e ad ampiezza discreta, a questa categoria appartengono anche i segnali digitali nei quali la discretizzazione del tempo può essere asincrona o sincrona con un clock ; X[n] t +1 +2 -1 -2
Definizione di segnali (in base ai valori assunti dalla variabile dipendente) Segnali periodici ed aperiodici: un segnale è periodico che si “ripete” dopo un intervallo temporale To detto periodo x(t) = x(t+To), diversamente è aperiodico. (tale definizione vale sia per i segnali a tempo continuo che per i segnali a tempo discreto nel qual caso x[n]= x[n]+No) Segnali determinati e aleatori: un segnale è determinato se è possibile conoscere a priori il valore assunto in un certo istante( segnale prodotto in laboratorio da un generatore di forme d’onda…), diversamente è aleatorio
Proprietà dei segnali determinati Per i segnali periodici è possibile definire 3 caratteristiche: L’energia: La potenza: Il valor medio temporale:
Proprietà dei segnali periodici Per i segnali periodici le proprietà energia, potenza e valor medio diventano: L’energia a rigore è infinita: La potenza può essere riferita al periodo: Il valor medio può essere riferito al periodo :
Elettronica digitale L’organizzazione delle informazioni nel campo digitale si basa su una struttura “binaria” ovvero utilizzando la discretizzazione in ampiezza utilizza solo due soli valori logici “0” e “1”. L’algebra di Boole è la base su cui si fonda l’elaborazione elettronica di segnali digitali. Ai valori logici vengono associati degli intervalli di tensione che cambiano a seconda della tecnologia che caratterizza i componenti elettronici utilizzati per costruire le porte logiche ed in generale i sistemi di elaborazione digitale
L’utilizzo di intervalli da associare ai valori logici: Elettronica digitale L’utilizzo di intervalli da associare ai valori logici: semplifica le soluzioni circuitali; aumenta l’immunità al rumore. X(t) t Segnale analogico “1” logico “0” logico t X(t) Segnale digitale
Algebra di Boole Nel 1847 il Matematico inglese George Boole espose nel libro “Mathematical Analysis of Logic” le regole fondamentali di un algoritmo ( l’algebra binaria)per studiare i problemi della logica deduttiva, algoritmo che sviluppò e completò in una seconda opera pubblicata nel 1958 : “An Investigation of the laws of tougth” L’algebra binaria comprendeva solo 2 valori “0” e “1” logici per distinguerli dallo “0” e “1” aritmetici e si prestava bene ad formalizzare proposizioni logiche che potevano, secondo la logica aristotelica, essere vere o false. L’algebra binaria fu applicata solo alla logica fino a quando Shannon nel 1938 pensò di utilizzarla per i circuiti commutazionali in quanto lo “0” e ”1” si prestavano bene a descrivere interruttori , contatti,…“chiusi” e “aperti”
Algebra Booleana e Teoria degli insiemi La Teoria degli insiemi o Algebra degli insiemi è formalmente simile all’algebra booleana a condizione che: Le variabili logiche siano concepite come sottoinsiemi di un insieme universo U Il prodotto logico *(AND) sia interpretato come l’intersezione fra insiemi La somma logica +(OR) sia interpretata come l’unione fra insiemi Il valore logico “1 ( elemento neutro rispetto al *) sia sostituito dall’insieme universo (insieme neutro rispetto all’intersezione) Il valore logico “0” ( elemento neutro rispetto al +) sia sostituito dall’insieme f (insieme neutro rispetto all’unione) E’ possibile quindi dimostrare le proprietà e i teoremi dell’algebra booleana, mediante i diagrammi di Venn
Algebra di Boole Definizioni e proprietà L’algebra booleana considera solo 2 elementi : “0” e ”1” Vengono definite delle operazioni di: Somma logica: 0 + 0 = 0 0 + 1 =1 1 + 0 = 1 1 + 1 =1 Prodotto logico 0 * 0 = 0 0 * 1 = 0 1 * 0 = 0 1 * 1 = 1 Negazione( con la / si intende il valore negato) /0 =1 /1 =0 La somma e il prodotto sono commutative La teoria degli insiemi può essere usata per dimostrare le proprietà dell’algebra Booleana (con Ø si intende l’insieme vuoto e con A l’insieme Universo) Somma logica Ø U Ø = Ø Ø U A =A A U Ø =A A U A=A Analogamente si può operare per il prodotto logico e la negazione
Algebra di Boole Le variabili Una variabile nella logica binaria può assumere solo il valore “0” o “1” Per le variabili binarie si definiscono le operazioni di negazione, somma e prodotto logico ed in particolare avremo x * 1 = x x * 0 = 0 x * x = x x + 1 = 1 x + 0 = x x + x = x Inoltre valgono le proprietà commutativa , associativa e distributiva. Inoltre x + /x =1 x * /x =0 //x =x
Algebra di Boole Le funzioni Si dice che una variabile Y è funzione delle variabili x1,x2,…xn se esiste un criterio che fa corrispondere in modo univoco un valore di Y per ogni valore delle variabili x1,x2,…xn Tale metodo può essere rappresentato da una “tavola di verità” o da una espressione algebrica contenente le variabili in oggetto legate dai segni di somma, prodotto e negazione. Ogni tavola di verità può trovare una corrispondente espressione logica, chiamata forma canonica, o sotto forma di SOP(Sum Of Product) considerando tutti i termini( minterm) che danno uscita “1” o come POS( Product Of Sum) considerando tutti i termini che danno come uscita “0”
Algebra di Boole Metodi di semplificazione di una funzione logica Data una espressione SOP è possibile utilizzare dei teoremi che ne permettono la semplificazione: X + XY = X I° teorema dell’assorbimento Infatti X(1+Y) = X X + /XY = X + Y II° teorema dell’assorbimento Infatti X+/XY = (X+XY) +/XY = X+(XY+/XY)=X+Y XY +YZ + /XZ = XY+/XZ III° teorema dell’assorbimento Infatti si può verificarlo dando a XYZ tutte le 8 possibili combinazioni e verificando che YZ è sempre uguale a (XY+/XZ) Nella pratica è comunque più comodo utilizzare, quando è possibile le mappe di Karnaugh, un sistema grafico basato sulla semplificazione XY+/XY = Y , che risulta più rapido e con meno probabilità di errore
Algebra di Boole Le funzioni logiche espresse come SOP o POS Consideriamo la seguente funzione logica espressa tramite la tavola di verità Usando la rappresentazione SOP si considerano i minterm( i prodotti corrispondenti alle righe che hanno Z=1) prendendo le variabili in modo diretto( se compaiono come 1) o negato( se compaiono come 0) X1 X2 X3 Z 1 Z = /X1X2/X3 + /X1X2X3 + X1/X2/X3 + X1X2/X3 + X1X3X4 Usando la rappresentazione POS si considerano i maxterm(le somme corrispondenti alle righe che hanno Z=0) prendendo le variabili in modo diretto( se compaiono come 0) o negato( se compaiono come 1) Z = (X1+X2+X3)(X1+X2+/X3)(/X1X2X3) Infatti Z = //Y = //[/X1X2/X3 + /X1X2X3 + X1/X2/X3 + X1X2/X3 + X1X3X4] Applicando De Morgan 2 volte Z=//Y= /(X1X2/X3)/( /X1X2X3)/( X1/X2/X3)/( X1X2/X3)/(X1X3X4)=(/X1+/X2+X3)(X1+/X2+X3)(/X1+X2+X3)(/X1+/X2+X3)(/X1+/X2+/X3) Le due espressioni si può dimostrare che sono equivalenti e semplificate portano alla Z = X2 + X3X1
Algebra di Boole 1 Le mappe di Karnaugh X2,X1 00 01 11 10 X1 X2 X3 Z 1 X3 0 1 1 Le mappe di Karnaugh Si introduce una rappresentazione tabellare equivalente alla tavola di verità, ma nella quale si passa da una casella a quella successiva con una sola variabile che cambia Quindi si raggruppano a gruppi di 2,4,8… le caselle contigue orizzontalmente o verticalmente che contengono gli 1, esplicitando per ogni raggruppamento un prodotto contenente le variabili che non cambiano all’interno del raggruppamento. La somma di questi prodotti è la funzione semplificata Ai fini della semplificazione una casella può essere considerata più volte
Elettronica digitale L’elettronica digitale utilizza circuiti combinatori e sequenziali. In un circuito combinatorio l’uscita dipende unicamente dai valori logici assunti dagli ingressi quindi rappresenta la sintesi di una funzione logica. In un circuito sequenziale l’uscita dipende oltre che dagli ingressi, anche dalla “storia” precedente
Per mezzo di opportune codifiche. Elettronica digitale L’elettronica digitale utilizza i valori logici “0” e “1” anche per rappresentare numeri, caratteri alfanumerici, comandi, istruzioni ….. Per mezzo di opportune codifiche.
Elettronica digitale I componenti fondamentali che permettono di realizzare tutti i circuiti digitali ovvero di fare la sintesi di una funzione logica, sono le “porte logiche” relative ai circuiti di base: NOT, AND, OR, NAND… Circuiti di base Circuiti universali NOT NOR OR NAND AND
Le porte logiche modificano l’informazione I=X U=X Il NOT capovolge l’informazione C U=X se C=0 U=1 se C=1 U=X se C=1 U=0 se C=0 Se C=0 l’informazione passa Se C=1 l’uscita è bloccata a 1 Se C=1 l’informazione passa Se C=0 l’uscita è bloccata a 0 Se C=1 l’informazione è invertita
Elettronica combinatoria Un circuito combinatorio rappresenta la sintesi di una funzione logica. Si chiama sintesi il processo che, partendo da una funzione logica(y= f(x1,x2,..xn), porta alla costruzione di un circuito logico che ne rappresenta la soluzione utilizzando porte logiche(NOT,AND,OR…) Si chiama analisi il processo che, partendo da un circuito logico combinatorio( rete di porte logiche NOT,AND,OR…), ne estrae la funzione logica.
Sintesi di un circuito combinatorio La sintesi di un circuito combinatorio relativo ad una funzione logica si può attuare seguendo i seguenti passi: Esplicitazione della funzione logica come somma di minterm. Semplificazione della funzione logica usando il teorema dell’assorbimento o le mappe di Karnaug o altri metodi (Quine MC Klusky..) Descrizione della soluzione semplificata usando le porte logiche fondamentali, o quelle universali
Alcuni Circuiti Logici Combinatori disponibili sul mercato Multiplexer digitali Demultiplexer digitali Driver Display 7 segmenti Adder(half e full) Sommatore/sottrattore
Circuiti Logici Sequenziali Possono essere: Sincroni o Asincroni: sono sincroni se il circuito e sensibile alle variazioni degli ingressi solo in corrispondenza del clock, sono asincroni se non richiedono il clock I circuiti sincroni possono operare sul livello del Clock se sentono gli ingressi per tutto il tempo in cui il clock è alto(oppure quando è basso); sul fronte del Clock se sentono gli ingressi sul fronte di salita( o di discesa del clock) sono anche detti circuiti sincroni “ (edge) clock triggered”
Circuiti Logici Sequenziali I circuiti logici sequenziali usano come elementi fondamentali i Flip-Flop: I flip-flop sono circuiti a due stati con due uscite complementari. Possono essere realizzati in molti modi, sia usando le porte nand sia usando le porte nor Tutti i flip-flop usano una cella di memoria statica realizzata per mezzo di due NAND o NOR “incrociati” Q S R Ck S R Ck Q Steering gate latch
I Flip-Flop Q S R Ck J K Ck Q S-R J-K Sn Rn Qn+1 Jn Kn Qn 1 ?
I Flip-Flop D e T S-R J-K Sn Rn Qn+1 Jn Kn Qn 1 ? D T Dn Qn+1 Tn Qn 1 Ck Q J K Ck Q D T S-R J-K Sn Rn Qn+1 Jn Kn Qn 1 ? D T Dn Qn+1 Tn Qn 1
I Flip-Flop (ingressi asincroni) Pr Q S R Ck Pr J K Ck Q Cl Cl Input asincroni. Ck Cl Pr Q 1 *
Flip-Flop clock di livello o fronte del Clock Diverso comportamento di un Flip-Flop tipo D che opera sul livello alto o sul fronte di salita del Clock Input D Qlivello alto Qfronte salita
Flip-Flop Master-Slave Per ottenere un Flip-Flop che opera sul fronte di discesa del clock si possono utilizzare due FF di livello( il primo fa da Master mentre il secondo fa da Slave) in cascata col Clock invertito D Q Q1 Q2 D1 D2 Ck Ck Q1 Q2 Ck
Flip-Flop che opera sul fronte di discesa del CLK realizzato con la tecnica Master Slave Q1 opera sul livello alto del clock di FF1 basandosi sull’ingresso D Q2 opera sul livello alto del clk invertito ovvero sul livello basso di clk basandosi sull’ingresso D2 che coincide con l’uscita Q1 di FF1 Zona attiva di FF1 Input D1 Q1= D2 Q2 Zona attiva di FF2
Flip-Flop Master-Slave Per ottenere un Flip-Flop che opera sul fronte si può utilizzare un singolo FF con un doppia Steering gate con un ritardo fatto con un condensatore o 3 inverter S S’ A Q A=1, B=1 Condizione di memoria R Q B R’ latch Ck S’ = S Ck R’ = R Ck A = S Ck Ck = S 0 = 1 B = R Ck Ck = R 0 = 1 La linea di ritardo su Ck serve a creare un breve intervallo in cui prima e dopo il NOT abbiamo lo stesso stato logico e quindi non possiamo scrivere CKCK
Alcuni Circuiti Logici Sequenziali disponibili sul mercato Shift Register Left Shift Register Right Shift Register Left/right Shift Register Contatori Contatori binari o decimali Contatori up-down Contatori sincroni-asincroni
Le Famiglie Tecnologiche della porte logiche Dal punto di vista tecnologico abbiamo : TTL(totem pole) Standard Low Power(L) Schottky(S) Low Power Schottky(LS) Fast(F) Advanced Fast(AS) Advanced Low Power Fast(ALS) CMOS ECL
Approssimazione sui transistor usati nei circuiti digitali Transistor Saturo B Interruttore chiuso VCE = 0.2 V VBE = 0.6 V E C VCE = dipende dal potenziale in C e E Transistor Interdetto B Interruttore aperto VBE < 0.6 V E
Porta NOT TTL totem-pole +5V 130W(650) 1.6KW(8K) S 4.6V 4KW(20K) 4V S 0.2 - 1V I U = “1” (3.4V) I= “0”(0 - 0.8V) I 1KW(5K)
Porta NOT TTL totem-pole +5V 130W(650) 1.6KW(8K) I 0.8V 4KW(20K) I 1.2V S U= “0” (0.2V) I= “1” (5V) 0.6V S 1KW(5K)
Porta NAND TTL totem-pole +5V 130W(650) 1.6KW(8K) S 4KW(20K) I1=A S U=AB I I I2=B 1KW(5K)
Porta NOT TTL totem-pole con uscita Three state +5V 130W(650) 1.6KW(8K) I 4KW(20K) U= A se E = “1” U= Z se E = ”0” I1=A S I I Enable 1KW(5K)
Le Famiglie tecnologiche delle porte logiche +5V +5V Il rapporto IOL/IIL definisce il “fan –out” ovvero il massimo numero di porte pilotabili TTL output Out = “0” TTL-Input IOL,IIL
Le Famiglie Tecnologiche della porte logiche +5V +5V IOH,IIH Anche il rapporto IOH/IIH è coerente con il fan-out TTL output Out = “1” TTL-Input
Logiche WIRED AND La corrente entrante può rovinare il transistor IOH Out = “0” TTL output TTL output Out = “1” IOL Per il WIRED-AND si usano porte open collector WIRED AND
Porta NOT TTL open collector 5V +5V 1KW(5K) 4KW(20K) 1.6KW(8K) Resistenza di pull-up (2K)
Logica TTL La logica TTL è caratterizzata da avere dei livelli di tensione pari a 5V 5V 2.4V 0V “1” “0” “1” 3.4V 0.8V 0.4V “0” 0V Typical Output Maximum Input Essenziali sono poi le correnti di I/O nelle diverse situazioni, sia per il fan out sia per collegamenti non con porte omogenee
Le Famiglie Tecnologiche della porte logiche Porte TTL 54 serie militare 74 serie civile IOH mA IOL IIH IIL Power mW Delay time ns 54/74 (normale) -400 16 40 -1.6 10 54/74H (High speed) -500 20 50 -2 22 6 54/74L (Low Power) -200 3.6 -0.18 1 33 54/74S (Schottky) 8 -0.4 19 3 54/74LS (Low Power Schottky) 2 9.5 54/74F (Fast) -1 -0.2 4 2.5 54/74AS (Advanced Schottky) --2 200 1.5 54/74ALS (Advanced Low Schottky)
DATA SHEET FAMIGLIE TTL SN5408/SN7408(J,N,W) SN54LS08/SN74LS08(J,N,W) SN = Serial Number 54 = serie militare (-55°C +125°C) 74= serie civile (0°C +70°C) LS= serie diversa dalla TTL standard esistono anche L, S, H, 08 = indentifica il chip (ovvero il tipo di circuito logico (J,N,W) = identifica il package J = ceramic dual in line N = plastic T = plastic W = ceramic flat
DATA SHEET FAMIGLIE TTL SN…08 Y = ABC SN…11 Y = AB
DATA SHEET FAMIGLIE TTL SN…08 Y = AB E’ OPEN COLLECTOR Y = AB SN…09
Esempi di funzione logiche disponibili Y = A Y=AB+CD+EF+GHI+X
Flip Flop sensibili al livello o al fronte del Clock
Syncronous up/down Counter with up/down mode control SN…190 BCD counter SN…191 Binary counter
Syncronous up/down Counter with up/down mode control
DATA SHEET 4bit-Shift Register
Shift Register Architecture
4bit-Shift Register Timing
Porte CMOS FET - - - - - - - - - - - - - - - - - - - G S D n p - - - - - - - - - - - - - - - - - - - + + + + D S G CMOS a enancement S G D CMOS a depletion S G D Canale n G S D Il canale n con un “1” il transistor si comporta come un interruttore chiuso, mentre con uno “0” , come un interruttore aperto. In modo simmetrico funziona il canale P Canale p S D G
Porte CMOS G G = “1” S D G= “0” G G = “1” S D G= “0” G = “0” G= “1” Livelli “low” good Livelli “high” poor Canale p G= “0” G Livelli “low” poor Livelli “high” good G = “1” S D G= “0” Canale n G = “0” Livelli “low” good Livelli “high” good G= “1” CSWITCH
NOT CMOS +5V +5V +5V X “1” “0” “0” “1” X
NAND e NOR CMOS +5V +5V XY X X Y X+Y Y NAND NOR