Programma dettagliato del Corso (1) Programma dettagliato...

16
Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB) Elettronica Digitale Anno Accademico 2006/2007 Massimo Barbaro 02 Ottobre 2006 ED - Intro Massimo Barbaro 2 Informazioni sul corso Massimo BARBARO Dipartimento di Ingegneria Elettrica ed Elettronica Padiglione B, secondo piano Tel. 070675 5770 – Email: [email protected] Orario di ricevimento: giovedì 10-13 (o su appuntamento) 02 Ottobre 2006 ED - Intro Massimo Barbaro 3 Programma dettagliato del Corso (1) Introduzione ai sistemi digitali Sistemi digitali Campionamento e quantizzazione Rappresentazione delle informazioni – Richiami sull’algebra di Boole – Cenni alla storia dei circuiti integrati – Legge di Moore - Scaling Linguaggio Verilog Concetto di modulo – Operatori – Descrizioni strutturali, dataflow ed algoritmiche – Net e register – Concetto di testbench Inverter CMOS Caratteristica di trasferimento statica (VTC) – Margini di rumore – Fan-in e Fan-out – Layout - Caratteristiche dinamiche (tempo di propagazione) – Dissipazione di potenza – Simulazione spice e verilog 02 Ottobre 2006 ED - Intro Massimo Barbaro 4 Programma dettagliato del Corso (2) Logica Combinatoria Logiche statiche (CMOS, pseudo-NMOS, pass-transistor) – Logiche dinamiche (concetto di base, domino, np-CMOS) – Caratterestiche dinamiche (legge di Elmore) – Logical effort - Tri-state - Simulazione e descrizione di blocchi combinatori in linguaggio Verilog – Simulazione Spice Logica Sequenziale Bistabilità - Latch e flip-flop – Simulazione e descrizione Verilog di blocchi sequenziali – Implementazione CMOS statica – Implementazione CMOS dinamica Memorie a semiconduttore Classificazione delle memorie – Architetture di memorie – ROM – RAM – RAM non volatili – Circuiti base (elemento di memoria, sense amplifier) – Descrizione Verilog

Transcript of Programma dettagliato del Corso (1) Programma dettagliato...

Page 1: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Elettronica Digitale

Anno Accademico 2006/2007Massimo Barbaro

02 Ottobre 2006 ED - Intro Massimo Barbaro 2

Informazioni sul corso

Massimo BARBARO

Dipartimento di Ingegneria Elettrica ed ElettronicaPadiglione B, secondo piano

Tel. 070675 5770 – Email: [email protected]

Orario di ricevimento: giovedì 10-13 (o su appuntamento)

02 Ottobre 2006 ED - Intro Massimo Barbaro 3

Programma dettagliato del Corso (1)

Introduzione ai sistemi digitaliSistemi digitali – Campionamento e quantizzazione –Rappresentazione delle informazioni – Richiami sull’algebra di Boole – Cenni alla storia dei circuiti integrati – Legge di Moore- Scaling

Linguaggio VerilogConcetto di modulo – Operatori – Descrizioni strutturali, dataflow ed algoritmiche – Net e register – Concetto di testbench

Inverter CMOSCaratteristica di trasferimento statica (VTC) – Margini di rumore – Fan-in e Fan-out – Layout - Caratteristiche dinamiche (tempo di propagazione) – Dissipazione di potenza –Simulazione spice e verilog

02 Ottobre 2006 ED - Intro Massimo Barbaro 4

Programma dettagliato del Corso (2)

Logica CombinatoriaLogiche statiche (CMOS, pseudo-NMOS, pass-transistor) –Logiche dinamiche (concetto di base, domino, np-CMOS) –Caratterestiche dinamiche (legge di Elmore) – Logical effort -Tri-state - Simulazione e descrizione di blocchi combinatori in linguaggio Verilog – Simulazione Spice

Logica SequenzialeBistabilità - Latch e flip-flop – Simulazione e descrizione Verilog di blocchi sequenziali – Implementazione CMOS statica – Implementazione CMOS dinamica

Memorie a semiconduttoreClassificazione delle memorie – Architetture di memorie –ROM – RAM – RAM non volatili – Circuiti base (elemento di memoria, sense amplifier) – Descrizione Verilog

Page 2: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 5

Struttura del CorsoOre di lezione: 50Libri di testo:Lucidi di lezione (sono sufficienti per preparare l’esame)“Circuiti Integrati Digitali 2e” – Jan M. Rabaey, A. Chandrakasan, B. Nicolic – Ed. Pearson Education Italia (Prentice Hall) (in italiano)“Modeling, Synthesis and Rapid Prototyping with the Verilog HDL” –Michael D. Ciletti – Ed. Prentice Hall

Struttura dell’esame: scritto e oraleSono previste 2 prove scritte intermedie:

1a: 17 Novembre 2006, ore 14:00, Aula V 2a: 21 Dicembre 2006, ore 14:00, Aula V

Sito del corso: http://www.diee.unica.it/eolab2/corsi.htmlMailing List: http://lists.unica.it/mailman/listinfo/esd1

02 Ottobre 2006 ED - Intro Massimo Barbaro 6

Prove intermedie, III anno, I sem. 2006/07

------------ScrittoTeoria dell'informazione e codiciTIC

Seconda prova intermedia------------NoCampi Elettromagnetici 1CMP1 ------------NoElettronica 1ELE1

14:00Aula V21/12/2006ScrittoElettronica DigitaleED--------Da definireOraleMisure ElettronicheMIS

Prima prova intermedia

--------22/12/2006ScrittoTeoria dell'informazione e codiciTIC

15:00Aula V16/11/2006ScrittoMisure ElettronicheMIS14:00Aula V17/11/2006ScrittoElettronica DigitaleED

------------NoElettronica 1ELE1------------NoCampi Elettromagnetici 1CMP1

OraAulaDataProvaInsegnamento

La possibilità di svolgere la seconda prova intermedia prima di Natale è ancora da verificare!

02 Ottobre 2006 ED - Intro Massimo Barbaro 7

Strumenti di studioSimulatori:

Spice: software per la simulazione dei circuiti a livello transistor

Utilizzeremo un simulatore gratuito, chiamato SwitcherCAD III (Linear Technologies) reperibile all’indirizzo (si può scaricare anche senza registrarsi):

http://www.linear.com/designtools/softwareRegistration.jspModelsim: software per la simulazione dei blocchi descritti in termini di linguaggio verilog

Utilizzeremo una versione demo, gratuita, del simulatore, con alcune limitazioni in termini di velocità di simulazione (inavvertibili nel caso dei semplici circuiti che useremo). Per utilizzare il software è necessario registrarsi e scaricare un file di licenza (collegato al numero seriale del hard-disk del pc). Il software èreperibile presso all’indirizzo:

http://www.xilinx.com/ise/optional_prod/mxe.htm

E’ disponibile un CD, in portineria del Padiglione B, con il materiale e le istruzioni per l’installazione e la registrazione

02 Ottobre 2006 ED - Intro Massimo Barbaro 8

Prerequisiti CulturaliCalcolatori Elettronici

Algebra di BooleMappe di KarnaughMinimizzazione di funzioni logichePorte LogicheLogica combinatoria e sequenziale

Dispositivi Elettronici 1: Equazioni caratteristiche del transistor MOSProcesso CMOS

Page 3: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 9

ObiettiviComprendere il funzionamento base dei circuiti digitali in tecnologia CMOS ed il loro impatto sulle caratteristiche dei sistemi in cui sono impiegati.Capire ed analizzare l’elemento base (inverter) fino a livello di transistor.Essere in grado di descrivere e simulare semplici blocchi digitali utilizzando il linguaggio verilog (linguaggio di descrizione dell’hardware).Essere in grado di progettare semplici porte logiche a livello transistor (simulazione spice).Capire il legame fra l’elettronica (i circuiti, i blocchi combinatori e sequenziali) all’interno dei sistemi ed il funzionamento dei sistemi stessi.

02 Ottobre 2006 ED - Intro Massimo Barbaro 10

Percorsi didatticiIl corso di ED è il punto di partenza per un percorso didattico che comprende i corsi:

Sistemi Digitali e Processori (SDP, 10 crediti)Simulazione e verifica di circuiti digitali con HDL – Macchine a stati - Sintesi di sistemi digitali – Realizzazione di sistemi digitali –Laboratorio di sistemi digitali – Architetture e progetto di processori

Sistemi Embedded (SE, 6 crediti)Architetture di sistemi embedded – Interfaccia HW-SW per sistemiembedded – Cenni di microarchitetture avanzate (DSP, superscalare, VLIW) – Microarchitetture di processori reali (ARM) – Architetture integrate per il digital signal processing – Digital Signal Processor

Microelettronica (UE, 6 crediti)Circuiti integrati – Processo CMOS e tecniche di layout -Progettazione analogica – Circuiti per l’elaborazione del segnale(S&H, comparatori) – Circuiti a capacità commutate – ConvertitoriD/A e A/D – Cenni di place&route

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Sistemi Digitali

Lucidi del Corso di Elettronica DigitaleModulo 1

02 Ottobre 2006 ED - Intro Massimo Barbaro 12

Sistemi digitaliI sistemi digitali occupano ormai in maniera pervasiva quasi ogni aspetto della realtàmodernaSono alla base praticamente di ogni sistema di elaborazione, conservazione o trasferimentodell’informazione, qualunque sia la natura dell’informazione stessaSono così diffusi che spesso li utilizziamo senza neanche rendercene conto

Page 4: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 13

Sistemi digitaliUtilizziamo un insieme di sistemi digitali complessi quando:

TelefoniamoGuardiamo un DVDPreleviamo soldi dal bancomatLavoriamo al PCFotografiamoProgrammiamo il condizionatore d’ariaGuidiamo

02 Ottobre 2006 ED - Intro Massimo Barbaro 14

Vantaggi dei sistemi digitaliNell’ambito di questo corso avremo modo di vedere perché i sistemi digitali si siano diffusi in modo così pervasivo.I loro principali vantaggi sono:

ProgrammabilitàVersatilitàVelocitàPrecisioneCostoSemplicità di progettazione

02 Ottobre 2006 ED - Intro Massimo Barbaro 15

Sistemi DigitaliUn sistema digitale è un qualsiasi sistema elettronico in cui le informazioni vengono rappresentate in forma binaria, utilizzando cioèsolo due simboli (0 e 1) e l’elaborazione si basa sull’algebra di Boole (o della commutazione)

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Segnali Digitali

Campionamento e quantizzazione

Page 5: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 17

Segnali digitaliI segnali digitali sono

DISCRETIZZATI NEL TEMPODISCRETIZZATI IN AMPIEZZA

Questo significa che un qualsiasi segnale, che sia esso un suono, un’immagine, una temperatura o qualsiasi altra cosa, èrappresentato da una sequenza di NUMERI:

Ogni numero rappresenta il valore del segnale in un particolare istante (istante di campionamento)Ogni numero può assumere un insieme discreto e finito di valori possibili

02 Ottobre 2006 ED - Intro Massimo Barbaro 18

Segnali digitaliSegnale

Campionamento

Quantizzazione t

t

t

Si considera il valore del segnale solo in determinati istanti di tempo chiamati istanti di campionamento

Si suddivide l’intervallo di variazione del segnale in un certo numero (finito) di livelli di quantizzazione e si discretizza il valore campionato, ossia si memorizza solo l’intervallo di appartenenza e non il valore esatto

Il segnale originale varia con continuitànel tempo e può assumere qualsiasi valore in ampiezza

02 Ottobre 2006 ED - Intro Massimo Barbaro 19

QuantizzazioneQuantizzare significa discretizzare, passare cioè da un insieme continuo di valori ad un insieme discreto.Avendo, ad esempio, un segnale che può assumere valori fra 0 e 4, discretizzare su 4 livelli significa dividere l’intervallo 0-4 in 4 sottointervalli:

Intervallo 0-1Intervallo 1-2Intervallo 2-3Intervallo 3-4

A seconda dell’intervallo nel quale ricade il segnale, esso verràrappresentato con un numero associato a quel particolare intervallo. Tutti i valori dello stesso intervallo vengono quindi rappresentati con lo stesso numero

0

1

2

3

4

2.76 2

0.5

3.3

0

3

Errore di quantizzazione

02 Ottobre 2006 ED - Intro Massimo Barbaro 20

Campionamento e quantizzazioneE’ possibile dimostrare, matematicamente, che il processo di campionamento, che permette di trasformare un segnale continuo (come un suono) in una sequenza di numeri NON comporta perdita di informazione. E’ quindi sempre possibile, sotto opportune condizioni, ricostruire esattamente il segnale originaleIl processo di quantizzazione, invece, introduce un errore (errore di quantizzazione) che non può piùessere recuperato (se rappresento sia 2.76 che 2.1 con il numero 2 non saprò mai quale era il numero originario). Se il numero di livelli di quantizzazione, però, è sufficientemente elevato, l’errore diventa molto piccolo e trascurabile. L’errore massimo è infatti pari all’ampiezza del singolo intervallo, che risulta molto piccola se si prende un gran numero di intervalli

Page 6: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 21

Segnali digitaliUn’immagine fissa, ad esempio, èrappresentata da una matrice di numeri che rappresentano l’intensità luminosa

313028273230

385340657348

223689946951

225061535648

277436526831

355442584939

Un video è rappresentato da una sequenza di immagini fisse, quindi un insieme di immagini ognuna presa in un certo istante di campionamento

313028273230

385340657348

223689946951

225061535648

277436526831

355442584939

313028273230

385340657348

223689946951

225061535648

277452683148

355458493948

313028273230

385340657348

223689946951

225061535648

275268315648

355849395648

02 Ottobre 2006 ED - Intro Massimo Barbaro 22

Segnali digitaliUn documento di testo èrappresentato da una sequenza di numeri, ognuno dei quali rappresenta una lettera e le eventuali sequenze di controllo (a capo, tabulazione, etc.) secondo un sistema di codifica detto ASCII

g103n110i105l108l108a97t116s115n110I73

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Rappresentazione dei numeri

Rappresentazione binaria dei segnali campionati e discretizzati

02 Ottobre 2006 ED - Intro Massimo Barbaro 24

Sistemi digitaliProprio il fatto che le informazioni sono rappresentate sempre come numeri ha dato il nome a questo tipo di sistemi

DIGIT : Termine inglese per CIFRANon tutti i sistemi elettronici sono sistemi digitali, ad esempio

MusicassetteTelevisione terrestre analogica

Page 7: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 25

Rappresentazione dei numeriCome vengono rappresentati, a loro volta, i numeri?

Utilizzando la notazione posizionale

b3b2b1b0 N = b3r3+b2r2+b1r1+b0r0

Cifra (può assumere un valore compreso fra 0 e r-1)

Base (radix, in inglese)

In una rappresentazione decimale, ovviamente, r=10 e le cifre sono comprese fra 0 e 9

02 Ottobre 2006 ED - Intro Massimo Barbaro 26

Rappresentazione binariaIn generale, in un sistema digitale la base utilizzata è 2 (numeri binari) in quanto si hanno a disposizione solo due cifre (0 e 1)

b3b2b1b0 D = b323+b222+b121+b020

Esempio:

10112 D = 1x23+0x22+1x21+1x20= 1110

Il pedice in basso a destra indica la base della notazione

02 Ottobre 2006 ED - Intro Massimo Barbaro 27

Rappresentazione dei numeriGeneralizzando rispetto al numero N di cifre utilizzate, la formula per ricavare l’equivalente decimale di un numero binario è:

10010110

Word (N bit)

Bit (bi)

∑−

=

=1

02

N

i

i

ibDb0 bit meno significativo (estrema destra)bN-1 è il bit più significativo (estrema sinistra)

b0bN-1

02 Ottobre 2006 ED - Intro Massimo Barbaro 28

Rappresentazione binariaLa rappresentazione fisica avviene per mezzo di grandezze elettriche.

A disposizione ci sono fondamentalmente 3 grandezze da utilizzare (tensione, corrente, carica).

Normalmente la scelta cade sulla tensione, che è piùfacile da maneggiare e misurare.

1 (vero)

0 (falso)

V (volt)

0

5

3.5

1.5

Page 8: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 29

Rappresentazione binariaA ciascun simbolo, quindi, viene associato un intervallo di valori di tensione e non un singolo valore.I due intervalli sono separati da una banda proibita di valori di tensione che non dovrebbero MAI essere raggiunti.La presenza di disturbi (rumore) quindi non altera i dati a meno che l’intensitàdel rumore stesso non causi un salto da un intervallo all’altro.

V (volt)

0

5

3.5

1.5

∆V1

∆V2

Il dato cambia valore

Il dato non cambia valore

02 Ottobre 2006 ED - Intro Massimo Barbaro 30

Rappresentazione binariaLa rappresentazione binaria è quindi un’astrazione logica che consente di dimenticare i dettagli fisici (il segnale in realtà è una tensione quindi un segnale analogico) per concentrarsi sugli aspetti logici del sistemaL’esistenza di soli 2 simboli, inoltre, rende più semplice realizzare i circuiti perché il rumore influenza molto meno il comportamento dei dispositiviLe operazione logiche seguono le regole dell’algebra di Boole(della commutazione)

02 Ottobre 2006 ED - Intro Massimo Barbaro 31

Vantaggi dei sistemi digitaliVersatilità

Il fatto che tutte le informazioni, di qualunque natura siano, vengano rappresentate nello stesso modo (con NUMERI), permette di utilizzare gli stessi strumenti elettronici per applicazioni diverse. Ad esempio, lo stesso microcontrolloreutilizzato nel cellulare per elaborare e codificare la voce (un suono) potrebbe essere usato nella realizzazione del sistema ABS della macchina, che elabora invece la velocità delle ruote per decidere come ripartire la frenata.

ProgrammabilitàVisto che i dati sono rappresentati nello stesso modo, al cambiare del tipo di dato si può cambiare non il sistema stesso ma solo la sequenza di operazioni che esso svolge sui dati stessi (il programma)

02 Ottobre 2006 ED - Intro Massimo Barbaro 32

Vantaggi dei sistemi digitaliPrecisione

La rappresentazione interna delle informazioni avviene usando SOLO 2 simboli (1 e 0). Questo rende i circuiti digitali piùprecisi perché più resistenti al rumore (i due simboli sono ben separati l’uno dall’altro)

VelocitàLa maggiore precisione consente anche una maggiore velocità, perché i circuiti NON digitali sono costretti a sprecare molte risorse per garantire lo stesso livello di precisione. L’utilizzo di un maggior numero di risorse causa un rallentamento dell’elaborazione

Page 9: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 33

Vantaggi dei sistemi digitaliCosto

La versatilità e programmabilità dei sistemi digitali nei diminuisce il costo perché aumenta il potenziale numero di applicazioni sui cui dividere i costi fissi. Se lo stesso processore lo posso vendere ai produttori di cellulari, ai fabbricanti di automobili ed elettrodomestici, ai produttori di hi-fi, suddividerò il costo di progettazione, realizzazione e ricerca su tutti gli utenti diminuendone l’impatto sul prezzo finale

Semplicità di progettazioneL’uso dei soli due simboli consente di applicare tecniche di progettazione standard, facili da apprendere e da automatizzare (vedremo meglio in seguito)

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Elaborazione di segnali digitali

Richiami sull’algebra di Boole

02 Ottobre 2006 ED - Intro Massimo Barbaro 35

Algebra di BooleL’algebra di Boole o della commutazione è lo strumento che si usa per l’elaborazione dell’informazione binaria.L’algebra di Boole si basa su 2 simboli (0/1) e i 3 operatori: somma (+), prodotto (•) e negazione (‘).Dal corso di Calcolatori Elettronici dovrebbero essere noti gli assiomi ed i teoremi su cui si basa l’algebra della commutazione. In questo corso si farà uso delle nozioni di base come strumento per arrivare alla sintesi di circuiti logici.

02 Ottobre 2006 ED - Intro Massimo Barbaro 36

Algebra della commutazioneL’algebra della commutazione è definita su un insieme di due elementi (0 e 1), che sono gli elementi con cui abbiamo costruito la rappresentazione delle informazioni e che corrispondono al FALSO e VERO dell’algebra inizialmente sviluppata da BooleGli operatori sono 3, gli stessi di Boole:

PRODOTTO LOGICO (AND, ·)SOMMA LOGICA (OR, +)NEGAZIONE (NOT, ‘)

Page 10: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 37

Funzioni logiche

Una funzione logica è una relazione algebrica ingresso/uscita che lega un numero N di ingressi con l’uscita.

F(x1,x2,…,xN)

x1x2

xN

F

02 Ottobre 2006 ED - Intro Massimo Barbaro 38

Rappresentazione di funzioni logicheUna qualsiasi funzione logica può essere rappresentata in svariati modi.

Tabella di verità: la tabella di verità ha tante righe quante sono le possibili combinazioni degli ingressi e per ogni riga viene indicato il valore della funzione Espressione logica: la funzione è rappresentata per mezzo di un’espressione algebrica contenente le variabili di ingresso e gli operatori logici di baseMappe di Karnaugh: rappresentazione grafica basata sulla visualizzazione delle combinazioni di ingressi per cui la funzione vale 1 (o 0), utilizzata per la minimizzazione della funzione stessaSchematico: rappresentazione grafica per mezzo di simboli

02 Ottobre 2006 ED - Intro Massimo Barbaro 39

Principali funzioni logiche

Z=X’

Tabella di verità

Simbolo grafico

1001

ZX

010001

1

0X

00

11

ZY

110101

1

0X

00

11

ZY

Z=X+Y Z=X•Y

Espressione algebrica

OR AND

NOT

02 Ottobre 2006 ED - Intro Massimo Barbaro 40

Principali funzioni logiche

110101

1

0X

10

01

ZY

010001

1

0X

10

01

ZY

Z=(X+Y)’ Z=(X•Y)’

NOR NAND

010001

1

0X

10

11

ZY

110101

1

0X

00

01

ZY

Z= X•Y’ + X’•Y Z=X’•Y’+X•Y

XOR XNOR

Page 11: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 41

Implementazione di funzioni logicheE’ dimostrabile che qualsiasi funzione logica può essere implementata con i soli operatori di somma, prodotto e negazione e con solo 2 livelli di logica. Ossia con somme di prodotti o prodotti di somme.

Somma di prodotti Prodotto di somme

F’

CD’

AB’F

C’D

A’B

2° livello1° livello 2° livello1° livello

02 Ottobre 2006 ED - Intro Massimo Barbaro 42

Insieme funzionalmente completiL’insieme AND, OR, NOT è dunque funzionalmente completo perché avendo a disposizione solo tali operatori è possibile implementare ogni funzione logicaAnche il solo insieme AND, NOT èfunzionalmente completo, grazie al teorema di DeMorgan che consente di trasformare una somma in un prodottoPer dualità è completo anche il solo insieme OR, NOT

02 Ottobre 2006 ED - Intro Massimo Barbaro 43

Insieme funzionalmente completiIl solo operatore NAND (il simbolo della NAND è↑) è un insieme funzionalmente completo, infatti:

Con una NAND si può implementare l’operatore NOT:

A’ = (AA)’ = A NAND A

Con la NAND si può implementare il prodottoAB = (AB)’’ = (A ↑ B)’ = (A ↑ B) ↑ (A ↑ B)

Con la NAND si può implementare la sommaA+B = (A+B)’’ = (A’B’)’ = (A ↑ A) ↑ (B ↑ B)

Analogamente si può mostrare che la sola NOR è un insieme funzionalmente completo

02 Ottobre 2006 ED - Intro Massimo Barbaro 44

Implementazione con operatori NAND

FC’D

A’B

FC’D

A’B F

C’D

A’B

Per il teorema di DeMorgan èpossibile trasformare la somma di prodotti in modo da avere solo operatori NAND

(X•Y)’=NAND(X,Y) (X’+Y’)=(X•Y)’=NAND(X,Y)

Page 12: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 45

Implementazione con operatori NOR

FC’D

A’B

FC’D

A’B F

C’D

A’B

Analogamente è possibile realizzare il prodotto di somme con soli operatori NOR

(X+Y)’=NOR(X,Y) (X’ • Y’)=(X+Y)’=NOR(X,Y)

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)

Realizzazione fisica di sistemi digitali

Evoluzione tecnologica dei sistemi di elaborazione digitali

02 Ottobre 2006 ED - Intro Massimo Barbaro 47

Sistemi digitaliIl concetto stesso di elaborazione digitale ha avuto un drammatico impatto sull’evoluzione della società moderna portando allo sviluppo della tecnologia con maggiore tasso di crescita mai prodotta nella storia dell’umanitàUna rapida carrellata sulla storia della realizzazione di sistemi digitali e della tecnologia di realizzazione fisica dei dispositivi integrati consente di meglio comprendere gli aspetti peculiari della progettazione ed utilizzazione di sistemi di questo genere

02 Ottobre 2006 ED - Intro Massimo Barbaro 48

Il primo calcolatoreLa prima macchina calcolatrice paragonabile ad un moderno elaboratore non è un dispositivo elettronico ma bensì meccanico, il “Difference Engine I” realizzato da Babbage nel 1832

Macchina in grado di compiere operazioni elementari in sequenza arbitrariaSistema di numerazione decimaleComposto da più di 25000 componenti meccaniciCosto di 17470 sterline dell’epoca

Page 13: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 49

Elettronica digitaleLa svolta, nella realizzazione di sistemi di calcolo automatici, avvenne con il passaggio all’elettronica che consentiva costi minori e minore complessità costruttivaInizialmente si trattava comunque di dispositivi basati su valvole (vacuum tubes), quindi ancora ingombranti e dispendiosi in termini di energiaI primi elaboratori ebbero uso militare (ENIAC, usato nella II Guerra Mondiale per il calcolo delle traiettorie balisistiche dell’artiglieria americana)

ENIAC - 194618000 valvoleDimensioni di una stanza

02 Ottobre 2006 ED - Intro Massimo Barbaro 50

Il transistorData la complessità della tecnologia valvolare non era possibile aumentare la potenza di calcolo degli elaboratori a valvole (l’ENIAC aveva meno capacità di calcolo di quella contenuta in un telefonino GSM) La svolta avviene nel 1947 con l’invenzione del transistor (Bell Telephone Laboratories).

Il transistor implementa le stesse funzionalità di una valvola in forma integrata (a stato solido) quindi occupando meno spazio, utilizzando meno potenza e raggiungendo velocitàenormemente superiori

1947 – Transistor a giunzione

02 Ottobre 2006 ED - Intro Massimo Barbaro 51

Circuiti integratiLo sviluppo della tecnologia porta rapidamente alla capacità di integrare piùtransistor sullo stesso pezzo di materiale dando il via allo sviluppo dei circuiti integrati e l’esplosione delle capacità di elaborazione implementabili su un singolo pezzo di silicio (chip)Il primo circuito integrato è realizzato da Jack Kilby nel 1958 (Texas Instruments)

Il primo integrato: phase shiftoscillator

02 Ottobre 2006 ED - Intro Massimo Barbaro 52

Il transistor MOSL’ultima svolta di rilievo nella tecnologia elettronica è stata l’introduzione del transistor MOS, alla fine degli anni ’60 (anche se l’idea di base risale al 1925, ma limiti tecnici di produzione impedirono la realizzazione)Il transistor MOS, con la sua incredibile capacitàdi scalare (diminuire in dimensione) al migliorare della tecnologia ha permesso l’esplosione del mercato elettronico e la miniaturizzazione estrema dei circuiti integrati

Page 14: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 53

Legge di Moore (1965)

Il grafico originale di Moore (fonte Intel)

Nel 1965 Gordon Moore predisse che il numero di transistor contenuti in un circuito integrato sarebbe aumentato in modo esponenziale, ossia che sarebbe DUPLICATO ogni 18 mesi

02 Ottobre 2006 ED - Intro Massimo Barbaro 54

Legge di Moore aggiornataPiù volte è stata annunciata l’impossibilità di mantenere il passo dettato da tale legge, eppure risulta valida ancora oggiLa legge di Moore è diventata quasi un pungolo per l’intera industria elettronica che si sente obbligata a rispettarla

(fonte Intel)

02 Ottobre 2006 ED - Intro Massimo Barbaro 55

ScalingL’aumento del numero di transistor contenuti in un circuito integrato è legato principalmente alla miniaturizzazione del singolo transistor (scaling) che consente di ottenere:

Circuiti più compattiPiù velociMeno dispendiosi in termini di energia per commutazione (1->0 o 0->1)

02 Ottobre 2006 ED - Intro Massimo Barbaro 56

Esempio : Pentium 3Lunghezza del canale dei transistor : 180nm

28 milioni di transistor

Page 15: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 57

Tecnologia attuale: 65nm

(fonte Intel)

PMOS (gate 65nm)

Livelli di metal per le interconnessioni (8)

02 Ottobre 2006 ED - Intro Massimo Barbaro 58

Aumento della frequenzaLo scaling ha permesso il continuo aumento della velocità dei processori

02 Ottobre 2006 ED - Intro Massimo Barbaro 59

Limiti all’aumento dell’integrazioneUno dei maggiori limiti all’aumento dell’integrazione non è solo tecnologico ma anche pratico: all’aumento dei componenti integrati aumenta la dissipazione di potenza sul chip

02 Ottobre 2006 ED - Intro Massimo Barbaro 60

Aumento della potenzaL’aumento della potenza presto renderà impossibile diminuire la quantità di calore sviluppata dal singolo chipPuò essere solo parzialmente corretto a livello di progettazione

Page 16: Programma dettagliato del Corso (1) Programma dettagliato ...barbaro/eolab2/ESD/07/01ed_intro.pdf · Classificazione delle memorie ... “Circuiti Integrati Digitali 2e” – Jan

02 Ottobre 2006 ED - Intro Massimo Barbaro 61

RiassumendoI sistemi digitali costituiscono la grandissima maggioranza dei sistemi elettroniciI segnali digitali sono campionati e quantizzatiLa rappresentazione delle informazioni è binariaI simboli binari sono rappresentati elettricamente da intervalli di tensioniL’elaborazione delle informazioni si basa sull’algebra di BooleEsistono vari metodi per rappresentare una funzione logicaIl rapido sviluppo della tecnologia del silicio ha permesso una crescita vertiginosa delle capacità di elaborazione di un qualsiasi sistema digitale