Evoluzione dei sistemi di comunicazione integrati: bus, Network on Chip, Network in Package.

Post on 02-May-2015

221 views 3 download

Transcript of Evoluzione dei sistemi di comunicazione integrati: bus, Network on Chip, Network in Package.

Evoluzione dei sistemi di comunicazione integrati:

bus, Network on Chip, Network in Package

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Agenda

1. La STMicroelectronics2. Generalità sui System on Chip3. Sistemi di comunicazione basati su bus e loro limiti4. L'approccio Network on Chip5. Limiti fisici dei sistemi di comunicazione elettrici6. Dai System on Chip ai System in Package7. Interconnessioni ottiche come soluzione per sistemi

di futura generazione

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

La STMicroelectronics

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Descrizione della compagnia

Fornitore di semiconduttori ad ampio spettro (digital consumer, computer peripherals, imaging, automotive, wireless, MEMS, smartcard & microcontrollers, industrial)

Compagnia di semiconduttori a livello globale (Europa, America del nord, Cina, Giappone, Asia-Pacifico, mercati emergenti)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Interconnect Systems GroupResponsabile dello sviluppo dei sistemi di comunicazione on-chip e off-chip

Sistema di comunicazione (STBus, STNoC)

Moduli di interfaccia tra dice

Sottosistemi di interfaccia con IP (Ethernet, USB, SATA, PCI Express)

Sistema di debugging

Locazione base a Catania

Team diviso tra Catania, Grenoble, Tunisi, Noida

Serve quasi tutte le divisioni di prodotto ST così come clienti esterni

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Generalità sui System on Chip

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• Intellectual Property (IP)– Modulo riutilizzabile che implementa una funzionalità ben

definita, noto anche come Virtual Component (VC)• System on Chip (SoC)

– Singolo chip contenente parti analogiche, digitali e MEMS (IBM)– Singolo chip contenente parti analogiche, digitali (LUCENT)– Sistema digitale su singolo chip (Synopsys)– Inoltre si parla anche di

• System on Programmable Chip (SoPC)• Programmable System on Chip (PSoC)• System on Reconfigurable Chip (SoRC)

• Globally Asynchronous Locally Synchronous (GALS)– Isole sincrone connesse tra loro da canali di comunicazione

asincroni

Terminologia (1/2)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• System in Package (SiP)– Sistema complesso partizionato su più chip contenuti

entro lo stesso package• Deep Submicron

– Lo scaling verso i 90, 65, 45 (attualmente), 22, 12 nm (entro i prossimi 5 anni) determina imprevisti effetti collaterali

– Tensioni di alimentazione più basse– Frequenze di lavoro più elevate– Interconnessioni più dense– Rumore– Potenza statica

Terminologia (2/2)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Architettura

On-chip communication system

External fast memories

Initiators (processors, real time blocks, DMAs)

Slow memories Peripherals

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• Differenti classi di traffico

– Le CPU richiedono bassa latenza ed elevata banda

– I processori real time richiedono elevata banda

– I DMA (processi di background) usano la banda rimanente

• Il bottleneck è la memoria esterna (SDRAM, DDR, …)

– Banda finita

– Efficienza limitata

Sistemi precedenti/attuali

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Sistemi attuali/futuri

• Maggiore capacità computazionale delle IP

• Maggiori requisiti di banda delle IP

• Ritardo di propagazione attraverso le gate ridotto, ritardo di propagazione attraverso i wire incrementato

• Effetti Deep Sub Micron (DSM)

• Il bottleneck sarà l’interconnect

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• IP-based design– IP reuse per aumentare la produttività

– Le IP implementano la maggior parte della funzionalità

– Maggiore contributo del SW

– Interfacce ben definite e standardizzate

• Interconnect centric design– L’interconnect è riutilizzabile

• Platform-based design– Sia le IP che l’interconnect sono riutilizzabili

– Uso di processori programmabili e di interconnect programmabile

Metodologie di progettazione

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Platform based design

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Sistemi di comunicazione basati su bus e loro limiti

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Shared bus

• Lo stesso insieme di wire è condiviso tra più target• Minimo numero di wire• Minime prestazioni (una transazione per ciclo)• Three-state

– Minima quantità di logica (no multiplexer)– Necessità del bus keeper

• Bus multiplexati– Meno problemi elettrici ma più logica richiesta

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Limitazioni dello shared bus

• Banda = dimensione del bus x frequenza del clock

• La dimensione del bus è limitata da problemi fisici (congestione, accoppiamenti capacitivi)

• La frequenza del clock è limitata dal ritardo di propagazione sui wire, a sua volta influenzato dalla dimensione del bus

• Banda disponibile limitata

• Scalabilità limitata

– Banda non scalabile

– Sistema limitatamente scalabile

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Esempio di shared bus (1/3)

sel

I1

I2

I3

T1

T2

T3

BW = N BWi = N/3

sel

I1

I2

I3

T1

T2

T3

BW = N BWi = N/5

I4

I5

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Esempio di shared bus (2/3)

• Banda disponibile costante• La banda disponibile per initiator decresce

all’aumentare del numero di initiator

No of rinitiators

Individual available bandwidth

No of initiators

Available bandwidth

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Esempio di shared bus (3/3)

sel

I1

I2

I3

T1

T2

T3

sel

T1

T2

T3

I1

I2

I3

Request path

Response path

Capacitive load

Capacitive load Congestion

Congestion

Congestion origin

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Crossbar

• Differenti set di wire per target differenti– Full crossbar: tanti set di wire quanti target– Partial crossbar: più di un set di wire, ma meno

del numero totale di target

• Maggior numero di fili

• Prestazioni massime in caso di full crossbar (fino a tante transazioni quanti sono i target)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Limitazioni del crossbar• Maggiore banda disponibile, ma maggiori limitazioni in

frequenza a causa di problemi fisici (maggiore congestione, maggiore carico capacitivo, maggiore accoppiamento capacitivo)

sel

I1I2I3

T1

BW = 3N

sel

T2

sel

T3

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Altre limitazioni dei bus• Efficienza dei wire limitata

– Bus di richiesta e di risposta separati

– Assenza di separazione tra informazioni di controllo (header) e dati (payload)

• Flessibilità limitata

– Struttura del bus e delle interfacce specifiche

• Quality of Service (QoS) limitato

– Difficoltà di gestione di classi di traffico differenti

• Consumo di potenza

– Elevata switching activity a causa dell’alto numero di wire

– Pdyn = ½ Cload f Vdd2

• Sensibilità al deadlock

– Assenza di architetture regolari

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Protocolli (1/2)• Protocolli low performance

– Semplice handshake (req/gnt o val/ack)– Set di operazioni limitato– Basso costo– Solitamente usati per accessi a registri di periferiche

• Protocolli high performance– Split transaction– Simmetria– Ordine– DMA, Co-processori

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Protocolli (2/2)

• Protocolli very high performance– Split transaction– Asimmetria– Disordine– CPU avanzate, DMA multicanale

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Software view

• Programmabilità– Schemi di arbitraggio– Mappa di memoria dei target

• Registri memory mapped

• Frequenza di programmazione bassa (massimo 200 MHz)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

L'approccio Network on Chip

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Definizione di Network on Chip• Micro-rete a commutazione di pacchetto, on-chip,

flessibile e scalabile– Approccio a strati (transport, network, data link, physical)

– Pacchetto = header + payload

– Routing wormhole

– Canali virtuali/reti virtuali (immunità al deadlock, QoS)

Ring 2D-mesh 2D-torus

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Topologie di NoC

1D Mesh 2D Mesh Ring

Torus Hypercube

Fat tree

Butterfly

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Routing

IP1

Inte

rfac

e

IP2Interface

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Routing

IP3Interface

IP2

Inte

rfa

ce

IP1(HM) In

terf

ace

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Virtual Channels

X-Bar

Input Buffer

Output Buffer

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Flow control• Store-and-forward: il router aspetta di

ricevere tutti i flit del pacchetto prima di inoltrarlo

• Cut-through/wormhole: il router inizia la propagazione dei flit di un pacchetto non appena ricevuto l’header

• Handshake: val/ack o credit-based

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Benefici del NoC (1/3)

• Architettura modulare (NI, router, physical link)

– Scalabilità di banda e di sistema

• Ridotto numero di wire

– Scalabilità di sistema

– Problemi fisici ridotti

– Maggiore frequenza operativa

• Alta flessibilità

– Grazie alle NI e al formato di pacchetto indipendente dai protocolli delle IP

• Alta efficienza dei wire

– Grazie al multiplexing di header e payload e alla condivisione del canale fisico tra richieste e risposte

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• Maggiore banda disponibile (aggregate throughput) grazie ai router

• Possibilità di immunità al deadlock (in base alla teoria del channel dependency graph)– Grazie alle strutture regolari

No of routers

Individual throughput

No of routers

Aggregate throughput

Benefici del NoC (2/3)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

• Totale supporto del QoS

– Grazie ai Virtual Channel (VC) che permettono di gestire diverse classi di traffico

• Consumo di potenza ridotto

– Grazie al ridotto numero di fili, alla ridotta switching activity e al ridotto carico capacitivo

• Possibilità di applicare tecniche avanzate al livello fisico grazie all’approccio a strati (modello ISO-OSI)

– Comunicazione asincrona

– Comunicazione mesocrona

– Comunicazione serialeNI

physical

data link

network

transport

application

router

physical link

Benefici del NoC (3/3)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Protocollo a strati

• Livello transport: responsabile della trasmissione dell’informazione end-to-end

• Livello network: responsabile del routing

Payload

Payload Header

HeaderTransport

Network

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Deadlock

• Livelock: I pacchetti si muovono nella rete senza mai

avvicinarsi alla destinazione

• Deadlock: I pacchetti si fermano (fase di stallo) nella rete a

causa di mutue attese

• Low level deadlock (topologia + routing)

– Schemi nativi di routing o uso di Virtual Channel

• High level/protocol deadlock (protocollo end-to-end)

– uso di Virtual Networks

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Mapping dell’applicazione (1/2)

1

2

10

11

Initiator IP/subsystem Target

0

NI Initiator

NI Target

Router

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Mapping dell’applicazione (2/2)

1

2

10

11

Initiator IP/subsystem Target

0

NI Initiator

NI Target

Router

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Limiti fisici dei sistemi di comunicazione elettrici

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

CMOS chip

PROBLEMA: lunghezza dei wire e congestione

Network Interface

NoC node

Routing

Integrazione di SoC

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Interconnect (1/2)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Interconnect (2/2)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Parassiti (1/4)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Parassiti (2/4)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Parassiti (3/4)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Parassiti (4/4)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Dai System on Chip ai System in Package

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Multi-chip integration

Problema #1

Spazio occupato dai diversi chip

Problema #2

Coesistenza di diverse tecnologie

Ad esempio DDR3 a 1.5V e HDMI, SATA e USB sono incompatibili per via dello diverso spessore dell’ossido (30 A° vs 50 A°)

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Multi Chip Module (MCM)

Più chip non comunicanti tra loro all’interno dello stesso package

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

System in Package (SiP)Sistema partizionato su più chip comunicanti tra loro all’interno dello stesso package

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Interconnessioni ottiche come soluzione per sistemi

di futura generazione

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Capacità degli interconnect

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Approccio 3D

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Stato dell’arte

Col progetto PICMOS (2004-2006), di cui l’IMEC era il leader, è stata dimostrata l’integrabilità di dispositivi in InP con chip CMOS

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Benefici in termini di integrazione

CMOS chip

Photonic chip

router

Rimossi i problemi di congestione e wire lunghi

Network Interface

ONoC Tx/Rx

Waveguide

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Wafer to wafer bonding

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Trasmettitore

N-bits flit

Clk1 (f1) Clk2 (f2=N*f1)

Demux

Drivers

Addressdecoder

1-bit flit

Optical waveguide

Initiator NI

Digital

Analog

Optoelectronic

Serializer

Lasers

Encoder

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Ricevitore

Optical waveguide

Target NI

Digital

Analog

Optoelectronic

Detector DESTIA Comp.

Detector DESTIA Comp.

Detector DESTIA Comp.

Arbiter

Target frequency domainOptical network frequency domain

17 Giugno 2010 Facoltà di Ingegneria di Catania - Corso di "Sistemi embedded"

Obiettivo

viastack

III-V laser source

III-V photodetector

Si photonic waveguide (n=3.5)

SiO2 waveguide cladding (n=1.5)

III-V input guidep-contactn-contactabsorption layer

cop

per

in

terc

on

nec

t la

yers

CMOS transistor layer

p-contactn-contact

active layer