Che materia stai cercando?

Tecnologie hardware

Le possibilità cui ci si trova di fronte sono le seguenti:
COTS: componenti, spesso integrati, che svolgono funzioni specifiche e possono essere acquistati sul mercato e utilizzati direttamente;
ASIC: circuiti integrati sviluppati specificamente per una sola applicazione, utili quando si richiedono altissime prestazioni oppure quando... Vedi di più

Esame di Sistemi embedded docente Prof. L. Pomante

Anteprima

ESTRATTO DOCUMENTO

Tecnologie (AS)IC

• Quando si considera la progettazione di grandi circuiti

digitali, sfruttare appieno la flessibilità offerta dal

processo planare diviene troppo complesso

– Ridurre i gradi di libertà e ricorrere a strutture rigide e regolari

• Tecnologia standard cell

• Avendo constatato che è possibile realizzare ciruiti

digitali assolutamente generici ricorrendo a strutture

molto regolari

– Tecnologia gate array o sea of gates

• Secondo questo approccio, la parte attiva di transistor viene pre-

fabbricata, lasciando i terminali disconnessi

– Al progettista rimane il compito di tracciare le interconnessioni e

svolgere le fasi finali del processo planare (metallizzazioni)

Sistemi embedded 17

2010/2011 Tecnologie (AS)IC

• Full Custom

– Geometria realizzata a mano

– Digitale e analogico

– Simulazione a livello di transistor

– Densità elevata

– Prestazioni elevate

– Tempo di progetto molto lungo

Sistemi embedded 18

2010/2011 9

Tecnologie (AS)IC

• Standard cell

– Si alza il livello astrazione

• Una cella è un piccolo circuito digitale completo già ottimizzato che

il progettista può utilizzare ignorando molti dei dettagli interni

– Librerie tecnologiche specifiche dei diversi silicon vendor

» 500-2000 tipi di celle che realizzano una ampissima gamma di funzioni:

logiche di base, combinatorie complesse, elementi sequenziali, memorie

– Una caratteristica delle celle che semplifica il back-end è che

tutte hanno esattamente la stessa altezza

• Questa tecnologia discretizza i processi di piazzamento e routing,

vincolando le celle a posizioni specifiche e prefissate

– Per quanto riguarda il routing, ci si basa su di una griglia ortogonale di

linee lungo le quali le net sono vincolate a correre

» Geometria Manhattan

Sistemi embedded 19

2010/2011 Tecnologie (AS)IC

• Standard cell

– Per il progettista una cella è caratterizzata da diverse

informazioni

• Nome logico o reference con il quale indicarla

• Modello funzionale

• Proprietà non funzionali

• Numero, nome e posizione relativa dei pin

• Assi di simmetria o flip

• Angoli di rotazione o orientation

– Grazie a queste informazioni è possibile, durante il flusso,

procedere al mapping tecnologico, all'ottimizzazione locale, alla

static timing analysis ed infine al placement e al routing

Sistemi embedded 20

2010/2011 10

Tecnologie (AS)IC

• Standard cell Routing

Cell

Sistemi embedded 21

IO cell

2010/2011 Tecnologie (AS)IC

• Gate array (o Sea of Gate)

– Si tratta ancora di un approccio a celle

• Le celle sono transistor o porte NAND

– Sono già presenti sul dispositvo

– La posizione delle celle è completamente fissata

• Ogni design richede solo alcune delle maschere per la realizzazione

delle connessioni in quanto le celle sono prefabbricate

Sistemi embedded 22

2010/2011 11

Tecnologie (AS)IC

• Gate array (o Sea of Gate)

Channel based Sea of gates

Sistemi embedded 23

2010/2011 Tecnologie hardware

Tecnologie programmabili 12

Tecnologie programmabili

• Sono dispositivi hardware che mettono a disposizione

componenti logici più o meno complessi che possono

essere connessi tra loro a seconda delle esigenze

– Componenti logici

• Porte logiche, Flip-flop, Buffer…

– Linee di connessione

• Tipologie di dispositivi programmabili

– ROM, PLA, PAL

– GAL, CPLD

– FPGA

Sistemi embedded 25

2010/2011 Tecnologie programmabili

• I diversi tipi di dispositivi possono essere classificati sulla

base di due aspetti

– Modalità di Programmazione

• Programmabili una sola volta (One-Time Programmable - OTP)

– Fuse, Antifuse

• Riprogrammabili (Reprogrammable)

2

– E PROM, SRAM, Flash

• Riconfigurabili (Reprogrammable & Reconfigurable)

– SRAM, Flash

– Connessioni

• Globali

• Locali e distribuite

Sistemi embedded 26

2010/2011 13

Tecnologie programmabili

• Modalità di programmazione

– Fuse (OTP)

• Le linee sono prodotte in modo da essere sempre connesse

• La programmazione consiste nel “bruciare” (fuse) alcune

connessioni in modo da mantenere solo quelle necessarie

– La programmazione avviene mediante una tensione più elevata di

quella di normale funzionamento

LINE1 LINE1

FUSE FUSE

PROGRAM PROGRAM

LINE2 LINE2

LINE1 LINE2 LINE1 LINE2

Sistemi embedded 27

2010/2011 Tecnologie programmabili

• Modalità di programmazione

– Antifuse (OTP)

• Le linee sono prodotte in modo da essere sempre disconnesse

• La programmazione consiste nel “creare” (antifuse) le connessioni

necessarie

– La programmazione avviene mediante una tensione più elevata di

quella di normale funzionamento

LINE1 LINE1 ANTIFUSE

ANTIFUSE

LINE2 LINE2

METAL2 METAL2

SiO SiO

2 2

METAL1 METAL1

SiO SiO

2 2

LINE1 LINE2

LINE1 LINE2

Sistemi embedded 28

2010/2011 14

Tecnologie programmabili

• Modalità di programmazione

2

– E PROM (Reprogrammable)

• Le connessioni tra le linee, inizialmente tutte non attive, possono

essere attivate e disattivate elettricamente in modo non distruttivo

durante la fase non operativa del dispositivo

– La programmazione consiste nel depositare carica sul floating gate del

transistor in modo da mantenerlo in conduzione

PROGRAM PROGRAM

FLOATING FLOATING

GATE GATE

GATE GATE

+ + + + +

LINE1 LINE2 LINE1 LINE2

SOURCE SOURCE

DRAIN DRAIN

CHANNEL LINE2

LINE1

LINE1 LINE2

Sistemi embedded 29

2010/2011 Tecnologie programmabili

• Modalità di programmazione

– SRAM (Reprogrammable e Reconfigurable)

• Le connessioni tra le linee, inizialmente tutte non attive, possono

essere attivate e disattivate elettricamente in modo non distruttivo

– La programmazione consiste nel memorizzare un valore logico (0 o 1)

in una cella di RAM statica

– In relazione alla tecnologia, la programmazione può avvenire

» durante la fase non operativa del dispositivo (Reprogrammable)

» durante la fase operativa del dispositivo (Reconfigurable)

LINE1 LINE1

R/W R/W

1 0

SRAM CELL SRAM CELL

LINE2 LINE2

Sistemi embedded 30

LINE1 LINE2

LINE1 LINE2

2010/2011 15

Tecnologie programmabili

• Modalità di programmazione

– Flash (Reprogrammable e Reconfigurable)

• Le connessioni tra le linee, inizialmente tutte non attive, possono

essere attivate e disattivate elettricamente in modo non distruttivo

– La programmazione consiste nel memorizzare un valore logico (0 o 1)

in una cella di memoria Flash

» Non volatile

Sistemi embedded 31

2010/2011 Tecnologie programmabili

• Connessioni

– Connessione Globale

• Linea che attraversa buona parte del dispositivo e che è condivisa

da molti elementi logici

– Elevati ritardi

– Può essere usata come uscita di un solo elemento logico limitandone

la flessibilità

– Connessione locale

• Linea che attraversa una parte ridotta del dispositivo e che è

condivisa da pochi elementi logici

– Ritardi contenuti

– All’interno di uno stesso dispositivo possono coesistere differenti linee

locali di lunghezza differente

» Elevata flessibilità e complessità del routing

– Connessione gerarchica

Sistemi embedded 32

2010/2011 16

Tecnologie programmabili

• Connessioni

Sistemi embedded 33

2010/2011 Tecnologie programmabili

• Connessioni

– Altre tipologie

• Programmable Switch Matrix

Sistemi embedded 34

2010/2011 17

Tecnologie programmabili

• Connessioni

– Connessioni globali

• Dispositivi logici programmabili a 2 livelli

– Read-Only Memory (ROM/PROM)

– Programmable Logic Array (PAL)

– Programmable Array Logic (PLA)

• PAL e PLA Avanzate

• Generic Array Logic (GAL)

• Complex Programmable Logic Devices (CPLD)

– Connessioni locali e distribuite (lunghe e corte)

• Field Programmable Gate Array (FPGA).

Sistemi embedded 35

2010/2011 Tecnologie programmabili

Logiche programmabili a 2 livelli 18

Logiche programmabili a 2 livelli

• Sono usate per realizzare generiche funzioni

combinatorie ad ingressi e uscite

n m

– f = f (x , x , ..., x ) con i={1, 2, ..., m}

i i 1 2 n

• Si possono realizzare funzioni a più livelli o sequenziali

retroazionando gli ingressi e aggiungendo elementi di memoria

– Dispongono di

• Un numero di ingressi fissato

• Un numero di uscite fissato

• Un piano AND, per la costruzione dei mintermini o implicanti

• Un piano OR, per la somma dei mintermini o implicanti

• Di Buffer di ingresso e di uscita (per ragioni elettriche e funzionali)

X f

1 1

X f

Piano Piano

2 2

Input Output

Ingressi Uscite

Buffers Buffers

AND OR

X f

n m

Sistemi embedded 37

2010/2011

Logiche programmabili a 2 livelli

• Tre tipi principali

– Read-Only Memory (ROM/PROM)

• Piano AND fissato

– Implementa tutti i possibili mintermini (decoder)

• Piano di OR adattabile

– Programmable Logic Array (PLA)

• Piano AND programmabile

– Implementa solo i mintermini/implicanti necessari

• Piano OR programmabile.

– Programmable Array Logic (PAL)

• Piano AND programmabile.

– Si costruiscono solo i mintermini/implicanti necessari

• Piano di OR fissato

– Impone un vincolo sul numero dei termini prodotto

Sistemi embedded 38

2010/2011 19

Logiche programmabili a 2 livelli

• Read-Only Memory (ROM/PROM)

– Un Memoria a Sola Lettura (ROM) implementa la prima forma

canonica di funzioni a ingressi

m n

• Somma di Prodotti (SOP)

– In una ROM, una configurazione di ingresso, denominata

indirizzo, è associata una configurazione di uscita, denominata

parola Decodificatore

X f

1 1

degli Piano

X f

2 2

Indirizzi OR

Indirizzo parola

- Piano programmabile

X f

AND

n m

Fissato -

Sistemi embedded 39

2010/2011

Logiche programmabili a 2 livelli

• Read-Only Memory (ROM/PROM)

– Decodificatore degli indirizzi (Address decoder)

• Il decodificatore degli indirizzi (address decoder) nelle memorie

mintermini

ROM realizza tutti i n

2

variabili di ingresso

– n x i

– Gli ingressi sono le variabili x i

– Una ed una sola uscita attiva alla volta

• Le uscite sono tutti i mintermini costruiti a partire dagli ingressi

0

0 0

1

x

Esempio: 1

x

x x = 111

x 2

1 2 3 x

3 n

2 -

Sistemi embedded 40

1 1

2010/2011 20

Logiche programmabili a 2 livelli

• Read-Only Memory (ROM/PROM)

– Schema logico del piano di AND (Address Decoder)

• Per semplicità si utilizza la rappresentazione che si riferisce al

decoder

a I

a 000

I 001

a’

b 010

I

b a

I

b’ b

c I

c c

I

c’ 111

Address

000 001 111 Decoder

Piano

AND

Sistemi embedded 41

2010/2011

Logiche programmabili a 2 livelli

• Read-Only Memory (ROM/PROM)

– Schema logico di una ROM

• Esempio di una ROM a 3 ingressi e 4 uscite (non programmata)

ROM

000

001

010 Piano

x 1 OR

x 2

x 3 Connessioni

111 Programmabili

Address

Decoder f f f f

Sistemi embedded 42

1 2 3 4

2010/2011 21

Logiche programmabili a 2 livelli

• Read-Only Memory (ROM/PROM)

– Esempio 000

001

010

a 011

b 100

c Piano

101

110 OR

abc f f f f f 111

1 2 3 4 5

000 0 0 0 1 0

001 1 1 1 1 0

010 0 0 1 0 1

011 1 0 1 1 0 f f f f f

100 1 0 1 1 1 1 2 3 4 5

101 1 1 1 1 1

110 1 0 1 1 1

111 1 1 0 1 1

Sistemi embedded 43

2010/2011

Logiche programmabili a 2 livelli

• Programmable Logic Array (PLA)

– Un Array Logico Programmabile (Programmable Logic Array -

PLA) consente di implementare una somma di prodotti espressa

in forma minima a due livelli (somma di implicanti)

X f

1 1

Piano Piano

X f

2 2

AND OR

programmabile programmabile

X f

n m

Sistemi embedded 44

2010/2011 22

Logiche programmabili a 2 livelli

• Programmable Logic Array (PLA)

– Schema logico di una PLA

• Esempio di PLA a 3 ingressi 2 uscite (non programmata):

PLA

a I

a

I

a’

b I

b Connessioni

I

b’ Programmabili

Piano

c I

c AND

I

c’ P P P P

1 2 3 4

Piano f

1

OR f

2

Sistemi embedded 45

2010/2011

Logiche programmabili a 2 livelli

• Programmable Logic Array (PLA)

– Esempio (1/2)

• Realizzazione delle funzioni:

– f1 = ab +ac’+a’b’c

– f2 = ab +ac +a’b’c Formato PLA

11- 10

• Prodotti 1-0 10

– P1 = ab 001 10

– P2 = ac 11- 01

– P3 = ac’ 1-1 01

– P4 = a’b’c 001 01

• Somme

– f1 = P1 + P3 + P4

– f2 = P1 + P2 + P4

Sistemi embedded 46

2010/2011 23

Logiche programmabili a 2 livelli

• Programmable Logic Array (PLA)

– Esempio (2/2) PLA

a I

a

I

a’

b I

b

Formato PLA I

b’

11- 10 Piano

c I

c

1-0 10 AND

I

c’

001 10

11- 01

1-1 01

001 01 P P P P

1 2 3 4 f

1

Piano

Sistemi embedded 47

f

2

2010/2011 OR

Logiche programmabili a 2 livelli

• Programmable Array Logic (PAL)

– Un Array Programmabile Logico (PAL) consente di

implementare una somma di prodotti espressa in forma minima

a due livelli (somma di implicanti)

• PLA e PAL coprono lo stesso spazio d’applicazione

X f

1 1

Piano Piano

X f

2 2

AND OR

programmabile fissato

X f

n m

Sistemi embedded 48

2010/2011 24

Logiche programmabili a 2 livelli

• Programmable Array Logic (PAL)

– Schema logico di una PAL

• Esempio di PAL a 3 ingressi 2 uscite (non programmata):

PAL

a I

a

I

!a

b I

b Connessioni

I

!b Programmabili

Piano

c I

c AND

I

!c Connessioni

P P P P Fisse

1 2 3 4

Piano f

1

OR f

2

Sistemi embedded 49

2010/2011 Tecnologie programmabili

Logiche programmabili a più livelli 25


PAGINE

38

PESO

660.96 KB

AUTORE

Atreyu

PUBBLICATO

+1 anno fa


DESCRIZIONE DISPENSA

Le possibilità cui ci si trova di fronte sono le seguenti:
COTS: componenti, spesso integrati, che svolgono funzioni specifiche e possono essere acquistati sul mercato e utilizzati direttamente;
ASIC: circuiti integrati sviluppati specificamente per una sola applicazione, utili quando si richiedono altissime prestazioni oppure quando il mercato richiede volumi molto elevati;
Logiche programmabili: componenti integrati che mettono a disposizione del progettista una grande quantità di risorse logiche, di memorizzazione e di interconnessione;
Microprocessori: utili qualora le funzioni che il progettista intende realizzare siano complesse e non disponibili sotto forma di componenti predefiniti.


DETTAGLI
Corso di laurea: Corso di laurea magistrale in ingegneria delle telecomunicazioni
SSD:
Università: L'Aquila - Univaq
A.A.: 2011-2012

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Atreyu di informazioni apprese con la frequenza delle lezioni di Sistemi embedded e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università L'Aquila - Univaq o del prof Pomante Luigi.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!

Altri appunti di Sistemi embedded

Programmazione concorrente
Dispensa
Sistemi Embedded
Dispensa
SystemC
Dispensa
Real-time and embedded operating systems
Dispensa