38
Università degli studi Università degli studi di Parma di Parma Dipartimento di Ingegneria Dipartimento di Ingegneria dell’Informazione dell’Informazione Politecnico Politecnico di Milano di Milano Reti Logiche A Reti Logiche A Lezione xx.x Lezione xx.x Dispositivi Programmabili Dispositivi Programmabili Docente: Docente: prof. William FORNACIARI prof. William FORNACIARI [email protected] [email protected] www.elet.polimi.it/people/fornacia www.elet.polimi.it/people/fornacia

Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Embed Size (px)

Citation preview

Page 1: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Università degli studi di Università degli studi di ParmaParmaDipartimento di Ingegneria Dipartimento di Ingegneria

dell’Informazionedell’Informazione

PolitecnicoPolitecnicodi Milanodi Milano

Reti Logiche AReti Logiche A

Lezione xx.xLezione xx.x

Dispositivi ProgrammabiliDispositivi Programmabili

Docente:Docente:

prof. William FORNACIARIprof. William FORNACIARI [email protected]@elet.polimi.it

www.elet.polimi.it/people/fornaciawww.elet.polimi.it/people/fornacia

Page 2: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 22 - -

SommarioSommario

IntroduzioneProgrammable Logic ArrayProgrammable Array LogicMemorie ROMAltri dispositivi programmabiliEsempiEsercizi

Page 3: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 33 - -

IntroduzioneIntroduzione

Una funzione logica combinatoria puo’ sempre essere rappresentata come una somma di prodotti.E’ possibile realizzare una funzione combinatoria con porte logiche AND e OR.Esistono diverse classi di dispositivi programmabili (Programmable Logic Device, PLD) che consentono di realizzare funzioni logiche di questo tipo.Le PLD offrono diversi vantaggi rispetto alla logica a componenti discreti:

Integrazione elevataCosti ridottiRiprogrammabilita’

Page 4: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 44 - -

IntroduzioneIntroduzione

Diagramma a blocchi di una semplice PLD:

I1

Input buffersand

inverters

OR Plane

AND Plane

Output buffers

x1

x2

xnI2n

P1 Pk

O1

Om

f1

fm

Dispositivi piu’ complessi dispongono di loop di retroazione e di uscite sincrone.

Page 5: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 55 - -

IntroduzioneIntroduzione

Le funzioni che si vogliono realizzare sono:

fi = fi(x1, x2, …, xn)

Nel diagramma a blocchi sono evidenziati:Le variabili di ingresso: x1, x2, …, xn

Gli ingressi a valle dei buffer: I1, …, I2n. Questi ingressi sono la forma naturale e quella complementata delle variabili di ingressoI prodotti P1, …, Pk

Le somme di prodotti O1, …, Om

Le funzioni di uscita f1, …, fm. Le funzioni di uscita sono le somme di prodotti a valle dei buffer di uscita

Page 6: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 66 - -

Programmable Logic ArrayProgrammable Logic Array

Le PLA o Programmable Logic Array sono dispositivi in cui sono programmabili:

Le connessioni all’array di AND (AND Plane)Le connessioni all’array di OR (OR Plane)

Per realizzare le funzioni in modo corretto e’ necessario che:

Le connessioni programmabili in ingresso all’array di AND devono essere realizzate in modo che le connessioni aperte siano pilotate dal valore logico 1.Le connessioni programmabili in ingresso all’array di OR devono essere realizzate in modo che le connessioni aperte siano pilotate dal valore logico 0.

Page 7: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 77 - -

Programmable Logic ArrayProgrammable Logic Array

Le connessioni programmabili sono realizzate con diverse tecnologie:

Fusibili: Ogni possibile connessione e’ un fusibile che viene bruciato per le connessioni non necessarie. I dispositivi di questo tipo sono detti OTP (One-Time Programmable).Transistor: Ogni possibile connessione e’ realizzata mediante un transistor pilotato da un elemento di memoria. I dispositivi di questo tipo sono riprogrammabili semplicemente modificando i valori nella memoria.

I dispositivi riprogrammabili sono spesso associati a memorie EPROM.La configurazione delle connessioni puo’ essere scaricata sul dispositivo da un microprocessore.

Page 8: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 88 - -

Esempio 1Esempio 1

32131212

32131211

xxxxxxxf

xxxxxxxf

su una PLA con:

3 ingressi

4 termini prodotto

2 termini somma

2 buffer di uscita

Realizzazionde delle funzioni:

Page 9: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 99 - -

Esempio 1Esempio 1

Si individuano i prodotti:

E le somme

Da cui le due funzioni:

3214

313

312

211

xxxP

xxP

xxP

xxP

4212

4311

PPPO

PPPO

22

11

Of

Of

Page 10: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1010 - -

Esempio 1Esempio 1

La realizzazione che ne segue e’:

x1

x2

x3

I1

I2

I3

I4

I5

I6

P1 P2 P3 P4

f1

f2

O1

O2

Input buffersInverters

AND Plane

OR Plane

Output buffers

Page 11: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1111 - -

Esempio 1Esempio 1

La realizzazione che ne segue e’:

x1

x2

x3

I1

I2

I3

I4

I5

I6

P1 P2 P3 P4

f1

f2

O1

O2

Input buffersInverters

AND Plane

OR Plane

Output buffers

Page 12: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1212 - -

Programmable Array LogicProgrammable Array Logic

I dispositivi in cui solo le connessioni alle porte AND sono programmabili prende il nome di PAL (Programmable Array Logic).Tali dispositivi hanno trovato una larga diffusione nelle applicazioni pratiche.La capacita’ di una PAL dipende da due fattori:

Il numero di porte AND disponibili e quindi il numero di prodotti che e’ possibile generare.Il numero di ingressi delle porte OR, che determina il numero massimo di addendi in una funzione.

Anche il numero di ingressi ed il numero di uscite determinano la capacita’ di un dispositivo.

Page 13: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1313 - -

Esempio 2Esempio 2

Realizzazione delle funzioni:

321212

3213211

xxxxxf

xxxxxxf

su una PAL con:

3 ingressi

4 termini prodotto

2 termini somma a 2 ingressi

2 buffer di uscita

Page 14: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1414 - -

Esempio 2Esempio 2

Si individuano i prodotti:

3214

213

3212

3211

xxxP

xxP

xxxP

xxxP

432

211

PPO

PPO

22

11

Of

Of

E le somme:

Da cui le funzioni:

Page 15: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1515 - -

Esempio 2Esempio 2

La realizzazione che ne segue e’:

x1

x2

x3

I1

I2

I3

I4

I5

I6

P1 P2 P3 P4

f2

f1

O2

O1

Input buffersInverters

AND Plane

OR Plane

Output buffers

Page 16: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1616 - -

Programmable Array LogicProgrammable Array Logic

Sono in commercio dispositivi di tipo PAL sui quali vengono aggiunte alcune funzionalita’, tra cui:

Le uscite sono disponibili sia dirette che invertite.Le uscite sono sincrone.Le diverse uscite sono programmabili.

Una tipica architettura e’ la seguente:

Output Enable

Output

Internal Feed-back

Clock OutputSelect

fD Q

Q

Page 17: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1717 - -

Memorie ROMMemorie ROM

Uno strumento molto efficiente per realizzare funzioni combinatorie sono le memorie a sola lettura o ROM (Read Only Memory).In generale si ha la necessita’ di realizzare un insieme di funzioni del tipo:

fi = fi(x1, x2, …, xn)

Con una diversa notazione:

(x1, x2, …, xn) (f1, f2, …, fk)

ovvero una trasformazione F che va da una n-upla di ingressi xj ad una k-upla di uscite fi.

F

Page 18: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1818 - -

Memorie ROMMemorie ROM

Per realizzare le funzioni fj si considerano:La n-upla di ingressi xi come indirizzo di una parola di memoriaLa k-upla di uscite fj come una parola di memoria.

In questo modo una funzione di n ingressi e k uscite viene quindi realizzata su una ROM con:

2n parolek bit per parola

Generalmente le ROM sono disponibili con lunghezze di parola di 4, 8, 16 o 32 bit. Quando k non e’ uno di questi valori, ai bit superflui vengono assegnati valori non significativi.

Page 19: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 1919 - -

Memorie ROMMemorie ROM

La struttura di una ROM a 3 ingressi e 4 uscite e’ la seguente:

ROM

Output BuffersAddressDecoder

x1

x2

x3

000001010

111

f1 f2 f3 f4

Page 20: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2020 - -

Memorie ROMMemorie ROM

Il blocco indicato come Address Decoder genera tutti i mintermini relativi agli ingressi xi.

Un insieme di funzioni fi dato puo’ essere realizzato su ROM seguendo due metodi equivalenti:

Dale funzioni si ricava la tabella della verita’ coorrisponente, quindi si realizzano e connessioni riga per riga, ovvero considerano una linea di parola alla volta.Date le funzioni, le si riduce alla prima forma canonica, quindi si realizzano le connessioni colonna per colonna, ovvero una linea di bit alla volta.

Page 21: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2121 - -

Esempio 3Esempio 3

Realizzazione delle funzioni:

1325

3214

3132213

323212

313211

xxxf

xxxf

xxxxxxf

xxxxxf

xxxxxf

Il primo metodo si articola nei due passi:Costruzione della tabella della verita’ per le cinque funzioniCreazione delle connessioni necessarie sulla ROM, una linea di parola alla volta

Page 22: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2222 - -

Esempio 3Esempio 3

La tabella della verita’ e la conseguente realizzazione sono:

x1x2x3 f1 f2 f3 f4 f5

000 0 0 0 1 0001 1 1 1 1 0010 0 0 1 0 1011 1 0 1 1 0100 1 0 1 1 1101 1 1 1 1 1110 1 0 1 1 1111 1 1 0 1 1

ROM

Output Buffers

000001010

f1 f2 f3 f4

011100101110111

f5

Page 23: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2323 - -

Esempio 4Esempio 4

Realizzazione delle funzioni:

Il secondo metodo si articola nei due passi:Riduzione nella prima forma canonicaCreazione delle connessioni necessarie sulla ROM, una linea di bit alla volta

1325

3214

3132213

323212

313211

xxxf

xxxf

xxxxxxf

xxxxxf

xxxxxf

Page 24: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2424 - -

Esempio 4Esempio 4

Le funzioni ridotte alla prima forma canonica sono:

321321321321321

3213213213213213215

321321321321321321321

321321321321321321

3213213213213213214

3213213213213213213

3213213212

321321321321321321

321321321321

3213213213211

xxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxf

xxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxf

xxxxxxxxxxxxxxxxxxf

xxxxxxxxxf

xxxxxxxxxxxxxxxxxx

xxxxxxxxxxxx

xxxxxxxxxxxxf

Page 25: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2525 - -

Esempio 4Esempio 4

Si realizzano i collegamenti una linea di bit alla volta:

ROM

Output Buffers

000001010

f1 f2 f3 f4

011100101110111

f5

321 xxx

321 xxx

321 xxx

321 xxx

Page 26: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2626 - -

Memorie ROMMemorie ROM

A causa delle dimensioni discrete delle parole di memoria delle memorie ROM disponibili il metodo descritto porta spesso ad un sottoutilizzo della memoria fisica.E’ possibile ottimizzare la realizzazione al costo di aggiungere dei circuiti di decodifica esterni alla ROM.La tecnica di ottimizzazione si basa sulla compressione o codifica dell’informazione da memorizzare.La codifica e’ possibile per le linee di bit mutuamente esclusive.Due linee di bit i e j sono mutuamente esclusive se:

Ogni volta che e’ presente un collegamento sulla linea i, e’ assente sulla linea j e viceversa.

Page 27: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2727 - -

Memorie ROMMemorie ROM

La definizione si estende ad un insieme di linee.Le linee di bit (f1, f2, …,fn) sono mutuamente esclusive se tale proprieta’ vale per ogni coppia di linee.Per un tale insieme di n linee e’ sufficiente indicare:

se una delle linee e’ attivain caso affermativo, quale delle linee e’ attiva.

Per fornire tale informazione sono sufficienti:k = log2(n+1)

bit.Se risulta k < n, la codifica conviene.

Page 28: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2828 - -

Esempio 5Esempio 5

Data la ROM programmata come in figura, utilizzare il metodo di codifica in modo da utilizzare una ROM con parole di 8 bit.

Si costruisce il grafo di mutua esclusione

1 2 3 4 5 6 7 8 9 10 11

12

3

6

4

5

7

10

11

9

8

Page 29: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 2929 - -

Esempio 5Esempio 5

Si individua ora sul grafo l’insieme N1 piu’ grande possibile di nodi non collegati da rami.Si eliminano i nodi di tale insieme ed i lati ad essi connessi

12

3

6

4

5

7

10

11

9

8

12

3

6

4

5

7

10

11

9

8

N1 = {1, 2, 3, 5, 6, 7}

Page 30: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3030 - -

Esempio 5Esempio 5

Si ripete lo stesso procedimento sul nuovo grafo ottenuto:

12

3

6

4

5

7

10

11

9

8

N2 = {4, 9, 10}

Il grafo ottenuto a questo punto non e’ piu’ riducibile per cui:

N3 = {8, 11}

Si procede quindi a verificare se la codifica degli insiemi N1, N2 ed N3 e’ conveniente, nel qual caso la si stabilisce.

12

3

6

4

5

7

10

11

9

8

Page 31: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3131 - -

Esempio 5Esempio 5

Valgono le relazioni

N1 = {1, 2, 3, 5, 6, 7} n1=6, k1=log2(6+1)=3 k1<n1

N2 = {4, 9, 10} n2=3, k2=log2(3+1)=2 k2<n2

N3 = {8, 11} n3=2, k3=log2(2+1)=2 k3=n3

Conviene codificare solo N1 ed N3.

Una possibile scelta delle codifiche e’:

Nessuna linea 0 0 0

Linea 1 attiva 0 0 1

Linea 2 attiva 0 1 0

Linea 3 attiva 0 1 1

Linea 5 attiva 1 0 1

Linea 6 attiva 1 1 0

Linea 7 attiva 1 1 0

Insieme N1 y1 y2 y3

Nessuna linea 0 0

Linea 4 attiva 0 1

Linea 9 attiva 1 0

Linea 10 attiva 1 1

Insieme N2 y4 y5

Page 32: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3232 - -

Esempio 5Esempio 5

Ricordando le codifiche si ha la nuova realizzazione:

Nessuna linea 0 0 0

Linea 1 attiva 0 0 1

Linea 2 attiva 0 1 0

Linea 3 attiva 0 1 1

Linea 5 attiva 1 0 1

Linea 6 attiva 1 1 0

Linea 7 attiva 1 1 0

Insieme N1 y1 y2 y3

Nessuna linea 0 0

Linea 4 attiva 0 1

Linea 9 attiva 1 0

Linea 10 attiva 1 1

Insieme N2 y4 y5

N1 N2

y4 y5y1 y2 y3

1 2 3 5 6 7 4 9 10 8 11

Page 33: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3333 - -

Altri dispositivi programmabiliAltri dispositivi programmabili

I dispositivi programmabili possono essere classificati secondo due criteri differenti:

TecnologiaArchitettura

Per tecnologia si intende il processo elettronico sul quale si basa la realizzazione dei dispositivi stessi. Dalla tecnologia dipendono diverse caratteristiche:

IntegrazioneVelocita’Riprogrammabilita’

L’architettura definisce le caratteristiche delle celle base.L’architettura influenza:

Flessibilita’

Page 34: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3434 - -

Altri dispositivi programmabiliAltri dispositivi programmabili

Classificazione secondo la tecnologia:

PLDPLD

FuseFuse AntifuseAntifuse SRAMSRAM EPROMEPROM EE22PROMPROM

AMD

Cypress

Actel Actel

Xilinx

Atmel

Xilinx

Lucent Altera

Altera

OTP Reconfigurable Reprogrammable

Philips

Page 35: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3535 - -

Altri dispositivi programmabiliAltri dispositivi programmabili

Classificazione secondo l’architettura:

PLDPLD

GALGAL PALPAL CPLDCPLD FPGAFPGA FPGA+CoreFPGA+Core

AMD

Cypress

Actel

Atmel

Xilinx

Lucent

PLAPLA

AMD

Motorola

AMD

Cypress Lucent

Actel

Cypress

100 - 1K100 - 1K10 - 10010 - 100 5K- 100K5K- 100K 5K- 200K5K- 200K 50K- 400K50K- 400K

Philips Philips

Page 36: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3636 - -

Esercizio 1Esercizio 1

Date le funzioni f1, …,f5 specificate dalla tabella di verita’:

x1x2x3 f1 f2 f3 f4 f5

000 0 0 0 1 0001 1 1 1 1 0010 0 0 1 0 1011 1 0 1 1 0100 1 0 1 1 1101 1 1 1 1 1110 1 0 1 1 1111 1 1 0 1 1

Si ricavino le equazioniSi realizzi una implementazione su una PLA con:

3 ingressi8 termini prodotto5 termini somma5 uscite

Page 37: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3737 - -

Esercizio 2Esercizio 2

Date le funzioni f1, f3, f3 specificate dalla tabella di verita’:

x1x2x3 f1 f2 f3

000 0 1 1001 0 1 0010 0 0 0011 1 0 0100 1 1 1101 0 0 1110 0 0 0111 1 0 1

Si ricavino le equazioniSi realizzi una implementazione su una PAL con:

3 ingressi5 termini prodotto3 termini somma a 2 ingressi3 uscite

Page 38: Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano Reti Logiche A Lezione xx.x Dispositivi Programmabili

Dispositivi Logici ProgrammabiliDispositivi Logici Programmabili © 2001/02 - William Fornaciari© 2001/02 - William Fornaciari- - 3838 - -

Esercizio 3Esercizio 3

Date le funzioni f1, ..., f6 specificate dalla tabella di verita’:

Si realizzi una implementazione su ROM con parole di 6 bitSi ottimizzi la realizzazione precedente in modo da poter utilizzare una ROM con parole di 4 bit

x1x2x3 f1 f2 f3 f4 f5 f6

000 0 1 0 0 0 0001 1 0 0 1 0 0010 0 0 1 0 0 0011 1 0 0 0 1 0100 0 0 0 0 0 1101 0 1 0 0 0 0110 0 0 1 0 0 0111 0 0 0 1 0 0