ETLC2 - B2 10/05/2007 2007 DDC 1 Page 1 10/05/2007 - 1 ETLC2 - B2 - 2007 DDC Politecnico di Torino Facoltà dell’Informazione Modulo Elettronica delle telecomunicazioni II B Protocolli B2 – Indirizzamento e allocazione » Transazioni » Indirizzamento » Allocazione » Esempio bus PCI 10/05/2007 - 2 ETLC2 - B2 - 2007 DDC Lezione B2 • Modello e definizioni per strutture a bus • Indirizzamento • Meccanismi di allocazione del canale • Bus paralleli e multiplati, strutture miste • Trasferimenti a burst, altre varianti • Esempi: bus VME e PCI • Migrazione verso bus seriali • Riferimenti nel testo – Connessioni multipunto 5.4 10/05/2007 - 3 ETLC2 - B2 - 2007 DDC Livelli di protocollo Lezione B2 Lezioni gruppo D (integrità dei segnali) Lezione B1 10/05/2007 - 4 ETLC2 - B2 - 2007 DDC Servizi disponibili dal livello ciclo • Trasferimento di unitá di informazione (byte, ...), • Da una SORGENTE a una DESTINAZIONE – Possono essere definiti anche trasferimenti 1-N e N-M (protocolli N-partner) • Cicli di SCRITTURA o di LETTURA • Il servizio consuma energia e tempo – Tempo di ciclo t CY , legato a: »parametri del livello elettrico »protocollo di ciclo 10/05/2007 - 5 ETLC2 - B2 - 2007 DDC Sommario degli strati e relativi servizi • Livello elettrico: – Tensioni e correnti sono usate per rappresentare stati logici – Il servizio reso disponibile e’ il trasferimento di “1” e “0” • Livello ciclo: – I bit sono combinati in unità di INFORMAZIONE – Il servizio offerto è il trasferimento di unità di informazione • Livello transazione: – Le unità di informazione assumono un significato (dati, indirizzi, …) • Livello applicazione: – Realizza l’esecuzione di un programma (servizio reso all’utente finale) 10/05/2007 - 6 ETLC2 - B2 - 2007 DDC Definizione di transazione • Sequenza di uno o più cicli, che trasferisce unità di informazione associandovi un significato (Indirizzo, dato, vettore di priorità, ...) • Moduli visibili a livello transazione: MASTER: avvia le operazioni SLAVE: risponde ai comandi del master M S
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ETLC2 - B2 10/05/2007
2007 DDC 1
Page 1
10/05/2007 - 1 ETLC2 - B2 - 2007 DDC
Politecnico di TorinoFacoltà dell’Informazione
Modulo
Elettronica delle telecomunicazioni II
B Protocolli
B2 – Indirizzamento e allocazione» Transazioni» Indirizzamento» Allocazione» Esempio bus PCI
10/05/2007 - 2 ETLC2 - B2 - 2007 DDC
Lezione B2
• Modello e definizioni per strutture a bus• Indirizzamento• Meccanismi di allocazione del canale• Bus paralleli e multiplati, strutture miste• Trasferimenti a burst, altre varianti• Esempi: bus VME e PCI• Migrazione verso bus seriali
• Riferimenti nel testo– Connessioni multipunto 5.4
10/05/2007 - 3 ETLC2 - B2 - 2007 DDC
Livelli di protocollo
Lezione B2
Lezioni gruppo D(integrità dei segnali)
Lezione B1
10/05/2007 - 4 ETLC2 - B2 - 2007 DDC
Servizi disponibili dal livello ciclo
• Trasferimento di unitá di informazione (byte, ...),
• Da una SORGENTE a una DESTINAZIONE– Possono essere definiti anche trasferimenti 1-N e N-M
(protocolli N-partner)
• Cicli di SCRITTURA o di LETTURA
• Il servizio consuma energia e tempo– Tempo di ciclo tCY, legato a:
»parametri del livello elettrico»protocollo di ciclo
10/05/2007 - 5 ETLC2 - B2 - 2007 DDC
Sommario degli strati e relativi servizi
• Livello elettrico:– Tensioni e correnti sono usate per rappresentare stati logici– Il servizio reso disponibile e’ il trasferimento di “1” e “0”
• Livello ciclo:– I bit sono combinati in unità di INFORMAZIONE– Il servizio offerto è il trasferimento di unità di informazione
• Livello transazione:– Le unità di informazione assumono un significato
(dati, indirizzi, …)
• Livello applicazione:– Realizza l’esecuzione di un programma
(servizio reso all’utente finale)
10/05/2007 - 6 ETLC2 - B2 - 2007 DDC
Definizione di transazione
• Sequenza di uno o più cicli, che trasferisce unità di informazione associandovi un significato(Indirizzo, dato, vettore di priorità, ...)
• Moduli visibili a livello transazione:MASTER: avvia le operazioniSLAVE: risponde ai comandi del master
M S
ETLC2 - B2 10/05/2007
2007 DDC 2
Page 2
10/05/2007 - 7 ETLC2 - B2 - 2007 DDC
Protocollo a livello transazione
• Sistemi punto-punto e multipunto (bus)
• Transazione come sequenza di cicli– Allocazione– Indirizzamento– Trasferimento– …..
• Bus paralleli e bus multiplati
• Tecniche per accelerare i trasferimenti
• Migrazione verso bus seriali
10/05/2007 - 8 ETLC2 - B2 - 2007 DDC
Sistemi punto-punto
• I due elementi che scambiano informazione sonogiá definiti
– Operazioni di scrittura o lettura(verso del trasferimento di informazione)
MASTER
SLAVE
(BUS)
A
3
Scrittura: M � S
Lettura: S � M
10/05/2007 - 9 ETLC2 - B2 - 2007 DDC
Sistemi multi-punto (bus)
• Più coppie di moduli convidono lo stesso supportofisico
– Occorre definire/scegliere i partecipanti al trasferimento
MASTER
SLAVE
BUS
A
1
B C Z
2 3 N
10/05/2007 - 10 ETLC2 - B2 - 2007 DDC
Sistemi a bus
• La configurazione puó essere variata aggiungendo o rimuovendo schede
• Sistemi MODULARI APERTI
• Tutte le unità devono seguire lo stesso protocollo– Definizione di protocollo:
insieme di regole che le interfacce devono seguire per unacorretta comunicazione
• Parametri:– numero massimo di schede– velocitá delle transazioni e parallelismo (throughput)– struttura fisica-elettrica (connettore, formato, livelli, ..)
10/05/2007 - 11 ETLC2 - B2 - 2007 DDC
Bus e punto-punto
• Collegamenti punto-punto– Più porte per modulo, supporti fisici separati– Condizioni elettriche ben definite– Richiede instradamento (routing) da un modulo all’altro
• Collegamenti multipunto/bus– Una porta per modulo, unico supporto fisico– Condizioni elettriche variabili– Richiede allocazione e indirizzamento
• Il punto-punto e’ piu’ costoso ma preferibile per– alte velocita’– lunghe distanze
10/05/2007 - 12 ETLC2 - B2 - 2007 DDC
Protocollo a livello transazione
• Presente nei sistemi multipunto (bus).
• Cicli specifici per definire i moduli che si scambianoinformazioni:
selezione dello slave: Indirizzamento
selezione del master: Allocazione(del canale)
– A queste segue il trasferimento vero e propriodell’informazione (dato, istruzione)
ALLOCAZIONE INDIRIZZAMENTO TRASFERIMENTO
ETLC2 - B2 10/05/2007
2007 DDC 3
Page 3
10/05/2007 - 13 ETLC2 - B2 - 2007 DDC
Sistemi con piú slave
• Lo slave che partecipa al trasferimento vieneselezionato con una operazione di
INDIRIZZAMENTO
1 2 N
MASTER
SLAVE
BUS
A
3
10/05/2007 - 14 ETLC2 - B2 - 2007 DDC
Modi di indirizzamento
• Logico– La selezione dipende da un codice caratteristico dello Slave
» Memorie, banchi di registri
• Geografico– La selezione dipende dalla posizione (slot) del modulo Slave
» Identificazione della configurazione
• Codificato– N bit individuano 2N elementi
» Memorie
• Decodificato– M bit individuano M elementi (codici a singolo 1)
» Selezione diretta di registri, memorie dopo il decoder
10/05/2007 - 15 ETLC2 - B2 - 2007 DDC
Indirizzamento logico
10/05/2007 - 16 ETLC2 - B2 - 2007 DDC
Indirizzamento geografico
10/05/2007 - 17 ETLC2 - B2 - 2007 DDC
A
1
B C Z
2 3 N
MASTER
SLAVE
BUS
Trasferimenti in sistemi multimaster
• In un sistema con piú master e piú slave bisognadecidere tra quali unitá avviene ciascun trasferimento
10/05/2007 - 18 ETLC2 - B2 - 2007 DDC
1: selezione del master
• Il master che avvia la transazione viene selezionatocon una operazione di
• Collisione: accesso contemporaneo alla risorsa– da evitare ! --> meccanismi di allocazione
• Allocazione con token passing– GRANT assegnato a turno (senza valutare REQUEST)
• Allocazione con rivelatore di collisione– GRANT automatico, collisioni, accesso non deterministico
• Allocazione con arbitrazione– Valutazione dei REQUEST– Nessuna collisione– Accesso deterministico
10/05/2007 - 21 ETLC2 - B2 - 2007 DDC
Esempi di allocazione
• Tra persone collisione � tanti parlano assieme
• Riunione (poche persone)– Token passing: diritto a parlare (GRANT) assegnato a turno
» Indipendente da richiesta o meno, può essere rifiutato
• Gruppi “assembleari”– Chi vuole inizia a parlare (senza interrompere) – Collisione possibile; rileva, stop, ritenta (CSMA-CD)
• Gruppo “moderati”– Un ARBITRO centralizzato valuta le richieste– Assegnazione del GRANT con algoritmo (tempo, rango, …)– Nessuna collisione, accesso deterministico
10/05/2007 - 22 ETLC2 - B2 - 2007 DDC
Allocazione con token passing
• Usata nelle reti
• Arbitri con circuiti a riporto– daisy chain– Round robin
10/05/2007 - 23 ETLC2 - B2 - 2007 DDC
Allocazione con arbitrazione
• Usata nei bus paralleli
• Richiede un arbitro– Centralizzato
– Distribuito
10/05/2007 - 24 ETLC2 - B2 - 2007 DDC
Allocazione con collision detection
• CSMA/CD: Carrier Sense Multiple Access - Collision Detection
• Usata in reti (anche wireless)
• Arbitri distribuiti
ETLC2 - B2 10/05/2007
2007 DDC 5
Page 5
10/05/2007 - 25 ETLC2 - B2 - 2007 DDC
Tecniche di arbitrazione
• FCFS (first Come First Served)– Problema della risoluzione temporale– Necessario altro meccanismo
• Priorità– Problema del blocco da parte di richieste ad alta priorità– Starvation– Necessari meccanismi di Fairness– Combinato con sincronizzazione
10/05/2007 - 26 ETLC2 - B2 - 2007 DDC
Arbitro FCFS
10/05/2007 - 27 ETLC2 - B2 - 2007 DDC
Arbitro a priorità
10/05/2007 - 28 ETLC2 - B2 - 2007 DDC
Starvation
10/05/2007 - 29 ETLC2 - B2 - 2007 DDC
Fairness
Campionamento richieste servizio camp serv camp
10/05/2007 - 30 ETLC2 - B2 - 2007 DDC
Circuiti per arbitri
• Codificatore a priorità (Priority encoder)
• Lineare– Centralizzato– Distribuito
• Codificato– Centralizzato– Distribuito
» Parallelo» Seriale
ETLC2 - B2 10/05/2007
2007 DDC 6
Page 6
10/05/2007 - 31 ETLC2 - B2 - 2007 DDC
Circuito a priorità lineare
• Rete combinatoria
10/05/2007 - 32 ETLC2 - B2 - 2007 DDC
Circuito a priorità codificato
• Rete combinatoria
10/05/2007 - 33 ETLC2 - B2 - 2007 DDC
Circuiti distribuiti
• Rete combinatoria lineare
• Rete combinatoria codificata
10/05/2007 - 34 ETLC2 - B2 - 2007 DDC
Trasferimento del controllo
• Passaggio del controllo: deve essere sincronizzatocon le operazioni di trasferimento
– …– Fine di transazione con master1– Rilascio del bus da parte del Master1– Acquisizione del controllo da Master2– Inizio transazione con master2– …
• Meccanismo di sincronizzazione (Bus Busy)– Centralizzato– Distribuito
10/05/2007 - 35 ETLC2 - B2 - 2007 DDC
Trasferimento del controllo
10/05/2007 - 36 ETLC2 - B2 - 2007 DDC
A
1
B C Z
2 3 N
MASTER
SLAVE
BUS
2: selezione dello slave
• La seconda operazione è la selezione dello slave chepartecipa al trasferimento (indirizzamento)
ETLC2 - B2 10/05/2007
2007 DDC 7
Page 7
10/05/2007 - 37 ETLC2 - B2 - 2007 DDC
1
B C Z
2 N
MASTER
SLAVE
BUS
A
3
3: trasferimento
• Uno volta selezionati master e slave il puó aver luogoil trasferimento (come un punto-punto)
10/05/2007 - 38 ETLC2 - B2 - 2007 DDC
Lezione B2
• Transazioni come sequenza di cicli• Modello e definizioni per strutture a bus• Indirizzamento• Meccanismi di allocazione del canale• Bus paralleli e multiplati, strutture miste• Trasferimenti a burst, altre varianti• Esempi: Bus VME, bus PCI• Migrazione verso bus seriali
10/05/2007 - 39 ETLC2 - B2 - 2007 DDC
Prestazioni di un bus
• Quantitá di informazione scambiata in un dato tempo.THROUGHPUT (T)
• T = P x V– P: larghezza del bus (parallelismo, numero di bit/ciclo)– V: velocità (numero di cicli/secondo)
se Tc = durata del ciclo/transazione, V = 1/tc)
• La durata del ciclo tc dipende da:– Parametri del livello elettrico: tTX, tK– Parametri dei moduli: tSU, tH, tWR, tEN, ...– Protocollo (numero di transizioni, SS o asincrono, …)
10/05/2007 - 40 ETLC2 - B2 - 2007 DDC
Bus paralleli
• Ogni segnale utilizza una connessione separata– Catena driver, pin sul connettore, pista, receiver,
terminazione,…
• Parallelismi attuali– dati: 32/64/128 bit– indirizzo: 32/64 bit
• Numero complessivo di pin/linee: >100
• Per ottenere elevata velocità (Tc breve, P alto):– Consumo elevato– Problemi di EMC
10/05/2007 - 41 ETLC2 - B2 - 2007 DDC
Relazione velocitá - consumo
• Alzando la velocità aumenta il consumo– Terminazioni con resistenza più bassa– Driver con RO piú bassa
• Aumentando il parallelismo aumenta il consumo– maggior numero di driver e terminazioni
• Per una data tecnologia, aumentare il throughputagendo su V e P aumenta il consumo
• Bus multiplato:– Minor numero di collegamenti– Minor consumo statico– Stesso consumo dinamico (legato alle transizioni)
10/05/2007 - 42 ETLC2 - B2 - 2007 DDC
Bus multiplati
• Bus convenzionale (parallelo)– indirizzi e dati usano gruppi di fili separati– Driver/receiver, piste sul backplane, piedini dei connettori
sono risorse costose» richiedono spazio» consumano energia
• Conviene ridurre il numero di “connessioni” usando lo stesso canali fisico per informazioni diverse:
bus MULTIPLATI
– Indirizzi, dati, altre informazioni) usano gli stessi fili in tempi diversi.
ETLC2 - B2 10/05/2007
2007 DDC 8
Page 8
10/05/2007 - 43 ETLC2 - B2 - 2007 DDC
• Parallelo: Gruppi di linee separate per indirizzi e dati
• Multiplato: Indirizzi, dati, altro su un unico set di linee
ADD1 X X X X ADD2INDIRIZZO
CICLO
TRANSAZIONE
CICLO
DATA2DATA1DATI
Bus paralleli e bus multiplati
ADD1 DATA2ADD2DATA1INF
CICLO
TRANSAZIONE
CICLO
10/05/2007 - 44 ETLC2 - B2 - 2007 DDC
Relazione velocitá - consumo
• Alzando la velocità aumenta il consumo– Terminazioni con resistenza più bassa– Driver con RO piú bassa
• Aumentando il parallelismo aumenta il consumo– maggior numero di driver e terminazioni
• Per una data tecnologia, aumentare il throughputagendo su V e P aumenta il consumo
• Bus multiplato:– Minor numero di collegamenti– Minor consumo statico– Stesso consumo dinamico (legato alle transizioni)
10/05/2007 - 45 ETLC2 - B2 - 2007 DDC
Varianti di protocollo
• Tecniche per usare sempre tutte le linee– Multiplex A/D: indirizzamento e trasferimento sono
intrinsecamente sequenziali; a pari tecnologia un bus multiplato non è piú lento di un bus parallelo
– Pipeline tra i vari cicli di transazioni successive
• Combinazione di più cicli per ottimizzare il protocolloa livello di transazione
– Cicli con handshake a due fronti– Trasferimenti a burst– Cicli sincroni a burst entro transazioni asincrone– Cicli source synchronous
10/05/2007 - 46 ETLC2 - B2 - 2007 DDC
• Stessa banda (numero transizioni) per controlli e INF• Minor consumo
INF
STB
ACK
INF
STB
ACK tC
INF1
tCtC
INF2INF1
Handshake a due fronti (DDR)
10/05/2007 - 47 ETLC2 - B2 - 2007 DDC
INF ADD DATA3DATA2DATA1
cicloindirizzo
TRANSAZIONE
ciclodati 1
ciclodati 2
ciclodati N
Trasferimento a burst
• Viene trasferita una sequenza (burst) di dati, inviandosolo l’indirizzo del primo
– Per sequenze lunghe raddoppia la quantitá di informazionescambiata in un determinato tempo
10/05/2007 - 48 ETLC2 - B2 - 2007 DDC
Gestione di trasferimenti a burst
• Occorre un controller per generare l’indirizzo verso la memoria
IND
STB MEMORIA
IND
bus scheda
IND
STB MEMORIA
IND
bus scheda
CONTR.
ETLC2 - B2 10/05/2007
2007 DDC 9
Page 9
10/05/2007 - 49 ETLC2 - B2 - 2007 DDC
Trasferimento a burst: memorie DDR
• Trasferimento Source Synchronous– DQS (Strobe dati) pilotato dalla memoria (dual edge)– Latenza di 2 cicli di clock
latenza ciclo
10/05/2007 - 50 ETLC2 - B2 - 2007 DDC
Lezione B2
• Transazioni come sequenza di cicli• Modello e definizioni per strutture a bus• Indirizzamento• Meccanismi di allocazione del canale• Bus paralleli e multiplati, strutture miste• Trasferimenti a burst, altre varianti
• Esempi: Bus VME e Bus PCI
• Migrazione verso bus seriali
10/05/2007 - 51 ETLC2 - B2 - 2007 DDC
Esempi/storia di bus industriali
• Prima generazione (8/16 bit- …. 1980)– S100, Multibus I, G96, STD, ....
• Seconda generazione (16/32/64 bit, 1980 … 1995)– VME 8/16/32/64 bit (esempio di evoluzione di un protocollo)
• Standard “ufficiali”– Emessi da enti internazionali
• Standard “de facto”– Emessi da (consorzi di) industrie
• Processo di definizione di uno standard– Gruppi di lavoro tecnici– Votazioni (1 voto/partecipante o ente)– Loop con revisioni e emissione (de facto)– Passaggio a ente ufficiale– Revisioni (loop)– Votazione (1 voto/paese) ed emissione ufficiale
10/05/2007 - 53 ETLC2 - B2 - 2007 DDC
Preparano e/o emettono standard
• ISO-IEC (JTC1 per Information Technologies)– UNINFO (Torino)– CEI
»…– CEN-ISSN– CENELEC– ANSI– …
• ETSI (Communications)
• IEEE Standard Organization– Technical committees (Pxxx)– http\\:…..
10/05/2007 - 54 ETLC2 - B2 - 2007 DDC
Quale bus ?
Bus paralleli
Da http://www.ni.com/swf/presentation/us/buscomp
ETLC2 - B2 10/05/2007
2007 DDC 10
Page 10
10/05/2007 - 55 ETLC2 - B2 - 2007 DDC
Esempio di protocollo completo
• VMEbus (standard ISO-IEC 821)– Rev. C.1 nel 1985
• Bus di backplane per uso industriale(sistemi di controllo, gestione impianti, ...)
– Connettore indiretto, schede formato “Europa” (3U e 6U)– Tecnologia standard TTL
• Evoluzioni successive del protocollo– Inizialmente asincrono con cicli singoli– Espansione della larghezza 32 � 64– Protocollo sincrono con trasferimenti a burst
10/05/2007 - 56 ETLC2 - B2 - 2007 DDC
Estensioni a VMEbus
• Limiti al throughput– Iniziale: velocità e parallelismo dei processori– Negli anni 80: struttura di interconnessione (bus)
• Allargamento del data path– Dati da 16 a 32 bit– Dati e indirizzi da 32/64 bit: secondo connettore
• Varianti diprotocollo– protocollo multiplexato (miglio utilizzo delle linee)– data path a 64 bit– trasferimenti a blocchi– trasferimenti a blocchi sincroni (SSBLT)
• A01-A31 indirizzo• AS* strobe indirizzo• D00-D31 dati• WRITE* ciclo di scrittura• DS0*-DS1* strobe dati• DTACK*/BERR* conferma/errore dati
• AM0-AM6 estensione indirizzo• BBSY*, BCLR* gestione arbitro di bus• BRi*, BGiI*/BGiO* (4) richiesta bus e daisy-chain• IRQi* (8) richiesta di interrupt• IACKI*/IACKO* daisy-chain di interrupt• SYSRESET* reset generale
10/05/2007 - 59 ETLC2 - B2 - 2007 DDC
Caretteristiche elettriche
• Livelli TTL• Comandi attivi L• Protocollo asincrono con handshake a 4 transizioni
– Durata del ciclo legata alla velocità di master e slave
• Formato big endian– MSBy a 0x0– Molti processori little endian: MSBy a 0x3– Logica di byte swap al master
• Block transfers must not cross x0..0 boundaries– D32: 256 bytes (address x00)– D64: 2048 bytes (address x000)– Can cross with double AS cycle (go through arbitration)– Avoids too long use by a single master
• Allocated memory (malloc ()) can cross boundaries– If handled by block operations need special DMA controllers– Contiguous buffers with special drivers (cmem_rcc) or
special kernel functions
10/05/2007 - 69 ETLC2 - B2 - 2007 DDC
Error handling
10/05/2007 - 70 ETLC2 - B2 - 2007 DDC
Interrupt
10/05/2007 - 71 ETLC2 - B2 - 2007 DDC
VME64x
10/05/2007 - 72 ETLC2 - B2 - 2007 DDC
Segnali principali in VMEbus (32)
• A01-A31 indirizzo• AS* strobe indirizzo• D00-D31 dati• WRITE* ciclo di scrittura• DS0*-DS1* strobe dati• DTACK*/BERR* conferma/errore dati
• AM0-AM6 estensione indirizzo• BBSY*, BCLR* gestione arbitro di bus• BRi*, BGiI*/BGiO* (4) richiesta bus e daisy-chain• IRQi* (8) richiesta di interrupt• IACKI*/IACKO* daisy-chain di interrupt• SYSRESET* reset generale
• Target– Risponde alla richiesta di transazione del master– Attiva DEVSEL (locale)– Risponde sul bus con TRDY
10/05/2007 - 81 ETLC2 - B2 - 2007 DDC
PCI: segnali
10/05/2007 - 82 ETLC2 - B2 - 2007 DDC
PCI: segnali di sincronizzazione
• FRAME# – I/O– Signals the start and end of a transaction
• IRDY# – I/O – Assertion by initiator indicates that it is ready to send or
receive data• DEVSEL# – I/O
– Part of PCI’s distributed address decoding» Each target is responsible for decoding the address associated
with each transaction» When a target recognizes its address, it asserts DEVSEL# to
claim the corresponding transaction
• TRDY# – I/O– When the target asserts this signal, it tells the initiator that it
is ready to send or receive data
10/05/2007 - 83 ETLC2 - B2 - 2007 DDC
PCI: segnali
• STOP# – I/O– Used by target to indicate that it needs to terminate the
transaction
• IDSEL – I– Individual device select for configuration– one unique IDSEL line per agent– Allows the system host to configure agents before these
agents know the PCI addresses to which they must respond(solves the “chicken-and-egg” problem)
10/05/2007 - 84 ETLC2 - B2 - 2007 DDC
PCI: segnali indirizzo/dati/controllo
• AD[31:0] – I/O– 32-bit address/data bus– PCI is little endian (lowest numeric index is LSB)
• C/BE#[3:0] – I/O– 4-bit command/byte enable bus– Defines the PCI command during address phase– Indicates byte enable during data phases– Each bit corresponds to a “byte-lane” in AD[31:0]
» C/BE#[0] is the byte enable for AD[7:0]
ETLC2 - B2 10/05/2007
2007 DDC 15
Page 15
10/05/2007 - 85 ETLC2 - B2 - 2007 DDC
PCI: segnali per arbitrazione
• REQ# – O– Asserted by initiator to request bus ownership– Point-to-point connection to arbiter – each initiator has its
own
• REQ# line
• GNT# – I– Asserted by system arbiter to grant bus ownership to the
initiator
• Point-to-point connection from arbiter – each initiatorhas its own GNT# line
10/05/2007 - 86 ETLC2 - B2 - 2007 DDC
PCI: configurazione iniziale
• Selezione diretta di scheda (geografica)• Segnale
• Same as a standard 32-bit transaction, plus:– The initiator asserts REQ64# to mirror FRAME#– The target, in response, asserts ACK64# to mirror DEVSEL#
• Data is transferred on AD[31:0] and AD[63:32]– 66MHz PCI can only use 3.3V signaling– The loading allowance is cut in half (5 loads): only one or two
add-in slots are possible
10/05/2007 - 106 ETLC2 - B2 - 2007 DDC
PCI- express – livello fisico
• Collegamenti punto-punto, 2,5 Gb/s (� 10 Gb/s)• Full duplex (canali RX/TX separati)• Coppie differenziali LV, accoppiamento AC (lane)
– Ridotta EMI/EMC, basso consumo
• Ambiente trasmissivo ben controllato
• Codifica 8b/10b• Preenfasi per ridurre ISI• Modulare: possibile collegare più lane in parallelo
– Diversi connettori compatibili
• Interrupt e altri comandi diretti con messaggi
10/05/2007 - 107 ETLC2 - B2 - 2007 DDC
PCI- express – connettori
• Possibile up-plugging(board N in connettore N+m)