Come funziona il bus FireWire – parte 2

Strati e protocolli L’architettura 1394 si compone di quattro strati (layer): Fisico, Link (collegamento) e Transazione, più il Serial Bus Management (gestione del bus seriale), che coordina le operazioni. Lo strato fisico si interfaccia con il connett …

Strati e protocolli
L’architettura 1394 si compone di quattro strati (layer):
Fisico, Link (collegamento) e Transazione, più il Serial Bus Management
(gestione del bus seriale), che coordina le operazioni.

Lo strato fisico si interfaccia con il connettore; collegamento
e transazione si interfacciano con l’applicazione. Lo strato fisico fornisce
la connessione elettrica e meccanica tra il dispositivo 1394 e il cavo. Si occupa
delle funzioni di trasmissione e ricezione e dell’arbitraggio per assicurare
un equo accesso dei dispositivi al bus.

Lo strato di collegamento espleta il servizio di consegna
dei pacchetti di dati, in modo sia asincrono (trasmissione-conferma), sia isocrono
(in tempo reale con banda passante garantita).

Lo strato transazione supporta i comandi di lettura, scrittura
e blocco utilizzati dal protocollo di trasmissione asincrona. Una scrittura
invia i dati dal dispositivo di origine al ricevente; una lettura restituisce
i dati all’originatore e il blocco (lock) combina i comandi di scrittura
e lettura in un percorso di andata e ritorno.

Il Serial Bus Management permette il controllo della configurazione
del bus sotto forma di ottimizzazione dei parametri temporali di arbitraggio,
garanzia di adeguata alimentazione elettrica dei dispositivi connessi al bus,
assegnazione di un identificatore ai canali isocroni, designazione del nodo
autorizzato a trasmettere e notifica degli errori.

Funzionamento
Per trasmettere dati, un dispositivo 1394 richiede il controllo dello strato
fisico. Nel caso di trasporto asincrono, vengono trasmessi
gli indirizzi di mittente e destinatario seguiti dai dati. Ricevuto un pacchetto
di dati, il destinatario restituisce un pacchetto di conferma; per migliorare
l’efficienza, il mittente può continuare a trasmettere avviando
fino a 64 transazioni prima di ricevere conferma. In caso di esito negativo
di una transazione, viene avviata la procedura di recupero.

In modalità isocrona, il mittente richiede un canale
isocrono con una determinata larghezza di banda. Quando il canale è assegnato,
viene trasmesso l’identificatore del canale seguito dai dati. Il ricevente
tiene sotto controllo l’identificatore di canale e accetta solo i dati
di quel canale.

Possono essere aperti fino a 64 canali isocroni, in base ai requisiti delle
applicazioni. I pacchetti sono delimitati dal clock del bus di 8 KHz e hanno
quindi una durata di 125 microsecondi. La lunghezza dei pacchetti dipende dalla
velocità di trasmissione, che a 400 Mbps è di 2.048 byte.

1394b
Il 1394b (o FireWire 800) è disponibile sui PowerMac G5, sui PowerBook
G4 e su diverse periferiche, soprattutto hard disk. Il 1395b include le funzioni
del 1394a ed estende la velocità, la lunghezza dei segmenti di rete (salti
fino a 100 metri), i supporti (cavo di rete e fibra ottica) e le funzionalità.

Uno schema di arbitraggio ad alta efficienza, chiamato BOSS (Bus Owner
Supervisor Selector
, selettore del supervisore del proprietario del
bus), implementa l’arbitraggio in forma sovrapposta e in pipeline, vale
a dire che il protocollo di arbitraggio è eseguito in parallelo alla
trasmissione dei dati, anziché alternarsi come nel 1394a.

Un altro miglioramento è la codifica dei dati secondo lo standard di
Fibre Channel e Gigabit Ethernet, che risulta più affidabile e riduce
le emissioni elettromagnetiche. Queste due innovazioni formano la cosiddetta
modalità di funzionamento beta del 1394b, per distinguerla dalla modalità
compatibile con 1394 e 1394a.

Altre migliorie riguardano l’auto-adattamento a una rete cablata in modo
scorretto (1394a rifiuterebbe di funzionare) e la trasmissione full duplex sui
due doppini a velocità costante.

Il cavo 1394b porta a nove il numero di connettori e allarga la scelta tra
le possibili connessioni. Lo zoccolo beta a nove pin (incavo largo)
accetta un connettore beta a 9 pin e supporta solo il 1394b.

Lo zoccolo cosiddetto bilingue (incavo stretto) supporta 1394b
e 1394a e permette di realizzare cavi misti da 9 a 6 oppure a 4 pin. L’incavo
stretto sopra il connettore bilingue impedisce di inserirlo in uno zoccolo beta
(solo 1394b).

Riferimenti
Tra le numerose fonti di informazione tecnica sul 1394, citiamo questi articoli
con i relativi link:
Technical
Introduction to IEEE 1394
;
IEEE1394
and the Windows Platform
;
FireWire
– the Consumer Electronics Connection
;
1394
Technology
;
IEEE 1394:
A Ubiquitous Bus
;
IEEE
1394 – The Multimedia Bus of The Future
;
IEEEE
1394b: Faster, Longer and Simpler
.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome