Sistemi scalabili di elaborazione a bassa tensione in un Fpga

Nel giro degli ultimi due decenni, la crescita esplosiva della domanda di banda ha portato a una varietà di standard per la trasmissione dati. Oltre al costo di realizzazione, trasferire più bit di dati con una dissipazione di calore inferiore è l’obiettivo primario che ogni standard di trasmissione dati cerca di ottenere. Dalla sua introduzione nel 1994, la Trasmissione Differenziale a Bassa Tensione (Lvds) è diventata lo standard industriale per i transceiver dati che forniscono prestazioni da “gigabit@milliwatt”. Per superare le limitazioni dello standard Lvds generico, si sono evolute diverse varianti allo scopo di soddisfare requisiti specifici di un’applicazione. Nell’ottobre 2001, il Jedec (Joint Electron Devices Engineering Council) ha pubblicato lo standard Slvs (Scalable Low Voltage Signaling) a 400 mV. Non solo lo standard Slvs eredita la suscettibilità a basso rumore fornita dal transceiver differenziale Lvds tradizionale, ma è anche caratterizzato da un’escursione di segnale che scala fino a 400 mV (rispetto allo standard Lvds con un’escursione di 700 mV) con un riferimento verso massa, che consente di ottenere un consumo di potenza inferiore per la trasmissione. L’interfaccia richiede normalmente un binario di alimentazione di 0,8 V, che è disponibile comunemente in dispositivi al silicio su scala submicrometrica. Una velocità di trasmissione massima di 3 Gbps o anche superiore può essere ottenuta lungo un intervallo che è compatibile con le dimensioni di una scheda Pcb tipica. La combinazione delle caratteristiche sopra menzionate rende l’Slvs uno standard di trasmissione ad alta velocità e a bassi consumi ideale per connessioni dati fra dispositivi su scheda Pcb. I dispositivi Fpga sono ampiamente usati per l’interfacciamento del percorso dati e per il bridging dei protocolli, grazie alle loro porte I/O ricche di funzionalità. Con la crescente popolarità del protocollo Slvs nella progettazione dei canali dati, è altamente desiderabile una soluzione Fpga economica e robusta per la realizzazione di un transceiver Slvs. Gran parte degli Fpga sono in grado di supportare l’interfaccia Lvds tradizionale. Tuttavia alcuni Fpga, come il dispositivo Lattice SC/M, può essere programmato per ottenere una corrente di pilotaggio per l’uscita in base ai requisiti Slvs, fornendo al contempo una risorsa interna di terminazione differenziale per ricevere l’ingresso Slvs, richiedendo un numero minimo di componenti esterni.

Le caratteristiche degli standard Lvds/Slvs
Lo standard di trasmissione dati Lvds è una tecnologia matura ed è diventata l’interfaccia transceiver più comunemente usata in applicazioni come video, storage e comunicazione dati, nelle quali è necessario trasferire grandi quantità di dati. La Fig. 1 illustra il funzionamento di una connessione Lvds punto-punto. Il trasmettitore è dotato di una sorgente di corrente interna che pilota l’anello, la quale commuta la polarità al variare dello stato del segnale. Gran parte della corrente di pilotaggio scorre attraverso il resistore di terminazione al lato ricevitore, ipotizzando un’impedenza molto elevata all’ingresso dell’amplificatore operazionale per la corrente in continua. La caduta di tensione sul resistore di terminazione è in proporzione alla corrente di pilotaggio, e la sua inversione di polarità può essere rilevata dall’op-amp ricevitore quando il trasmettitore si attiva, consentendo la trasmissione dell’informazione. La tecnica Lvds offre un livello eccellente di tolleranza al rumore per mezzo della reiezione di modo comune fornita da due percorsi differenziali. La velocità di trasmissione dei dati, oltre alla dissipazione di potenza, è strettamente correlata all’escursione di tensione lungo il resistore di terminazione, che è pari a 350 mV (700 mV p-p) nominali su un resistore da 100 Ω per un anello Lvds tipico. I canali Lvds presentano una suscettibilità bassa verso il rumore, perché le sorgenti di rumore distanti tendono ad aggiungere la stessa quantità di tensione, ossia il rumore di modo comune, ad entrambe le linee, di modo che la differenza fra le tensioni rimanga la stessa. La tensione bassa di modo comune è la media delle tensioni sulle due linee, pari a circa 1,25 V. Il modo comune è impostato dal trasmettitore come una tensione di scostamento dalla massa. La tensione differenziale da 350 mV fa sì che i canali Lvds consumino potenza statica nel resistore di carico Lvds, in base all’offset da 1,25 V e dall’escursione del segnale differenziale di 350 mV. Il protocollo Slvs è basato su un metodo punto-punto di trasmissione dei segnali come definito nello standard Jedec JESD8-13 (Slvs-400). L’Slvs si è evoluto dallo standard Lvds tradizionale e sfrutta escursioni di tensione più ridotte ed una tensione di modo comune inferiore. L’escursione del segnale Slvs di 200 mV (400 mV p-p) contribuisce a produrre una riduzione della potenza ed è usata comunemente con gli standard Rsds (Reduced-Swing Differential Signaling). Lo standard Rsds riduce solo l’escursione da 350 mV a 200 mV con lo stesso offset di 1,25 V dello standard Lvds; tuttavia, il protocollo Slvs si differenzia con una tensione di modo comune inferiore. Il modo comune è impostato molto basso (200 mV nominali), assicurando una diminuzione considerevole della corrente di riposo. La combinazione di un’escursione di segnale più limitata e di una tensione di modo comune bassa produce un consumo di potenza molto più contenuto. Per illustrare questo punto, si consideri che una connessione Serdes da 6 Gbps consuma circa 250 mWatt. Una coppia Slvs tipica che opera a 800 Mbps consuma circa 15 mWatt. Anche richiedendo 8 bit (8 x 800Mbps = 6.4Gbps), il consumo totale di potenza è di appena circa 120mWatts. Questo è meno della metà del consumo di potenza dello standard Lvds.

Un Fpga per l’interfaccia Slvs
In generale, è preferibile realizzare un’interfaccia differenziale dedicata in un ricevitore Slvs, allo scopo di minimizzare il numero di componenti su scheda che si connettono direttamente al proprio trasmettitore corrispondente. Ciò che è più importante, occorre prestare grande attenzione per assicurare che l’intervallo differenziale e l’intervallo di modo comune del ricevitore dell’Fpga coprano l’intera specifica dell’uscita Slvs. Per realizzare un trasmettitore Slvs robusto, l’uscita differenziale dell’Fpga deve avere la capacità di fornire la corrente di pilotaggio per ottenere il livello Slvs corretto con una rete esterna di resistori di accoppiamento. Il protocollo Slvs, come l’Lvds, richiede una terminazione di carico al ricevitore, ma non specifica se la terminazione sia interna od esterna al ricevitore. Gran parte dei dispositivi Fpga utilizzano tipicamente risorse sia interne, sia su scheda per creare un’interfaccia Slvs verso dispositivi standard. Per ottenere interconnessioni su scheda più affidabili e prestazioni di sistema robuste, un progettista dovrebbe scegliere un dispositivo Fpga che fornisca non solo la flessibilità e la velocità per i bus conformi al protocollo Slvs, ma che includa anche la terminazione differenziale interna per la realizzazione di un ricevitore. La programmabilità della sorgente di corrente in uscita è critica per una soluzione trasmettitore Slvs. La corrente di pilotaggio differenziale dovrebbe essere programmabile fino a un valore specifico per emulare i requisiti Slvs. Generalmente, la rete di resistori su scheda è utilizzata per regolare l’escursione e il modo comune richiesti dal ricevitore Slvs. Per compensare per la potenza consumata dalla rete di resistori su scheda, il buffer del circuito di pilotaggio della sorgente di corrente richiede in genere di iniettare più della corrente nominale Lvds da 3,5 mA verso le piste differenziali esterne al chip. Un buffer del circuito di pilotaggio della corrente che soddisfa questo requisito non è comunemente disponibile con una porta I/O Fpga compatibile con il protocollo Lvds tradizionale. Le caratteristiche degli ingressi Lvds sono conformi ai requisiti di trasmissione dei segnali verso i trasmettitori Slvs direttamente connessi. Le terminazioni differenziali interne sono disponibili per gli ingressi su tutti i lati del dispositivo. Le porte di ingresso del dispositivo sono caratterizzate da intervalli di tensione di modo comune (Vcm) e di tensione differenziale (Vd) che coprono bene tutte le specifiche dell’uscita Slvs con un margine sufficiente, il quale consente agli ingressi di ricevere flussi di dati fino a 2 Gbps senza bisogno di alcun componente aggiuntivo su scheda. L’Fpga fornisce anche la programmabilità dell’uscita differenziale di corrente a 2, 3,5, 4 e 6 mA. In questo esempio particolare, viene selezionata una corrente di pilotaggio di 6 mA in combinazione con la circuiteria di terminazione esterna al chip per emulare i requisiti Slvs.

Un’applicazione del Transceiver Slvs
L’interfaccia Slvs trova applicazione, ad esempio, nelle comunicazioni dati e nei display video/di immagini, in cui sono richiesti canali dati ad alta velocità e a basso consumo. Un dispositivo Fpga con transceiver compatibili con il protocollo Slvs gioca un ruolo importante nel connettere gli I/O Slvs verso altri protocolli dati su un prodotto IC standard. La recente progettazione di un Fpga LatticeSC/M, con una scheda di linea Vdsl2 di riferimento di Broadcom, dimostra come l’Fpga sia predisposto per fornire l’interfacciamento Slvs e le funzioni di connessione dello strato fisico Xaui. Sul progetto di riferimento Vdsl2, l’Fpga realizza sei connessioni Slvs. La Fig. 4 mostra il diagramma a blocchi del dispositivo Fpga che funziona come un ponte fra il flusso dati Slvs e i pacchetti Xaui. Il dispositivo Vdsl2 trasmette tre canali e ne riceve tre. Ciascun canale contiene un bus a 18 bit, che si connette alle porte Slvs standard dagli IC di terminazione Dsl verso l’Fpga. Quest’ultimo può deviare e multiplexare i bus Slvs da ciascuna delle tre connessioni in ricezione verso ciascuna delle connessioni in trasmissione, di modo che i dispositivi Broadcom siano tutti interconnessi. Al lato opposto dell’Fpga è possibile utilizzare 8 canali Serdes che operano ad una velocità di trasferimento dati di 3,125 G, per formare interfacce Xaui per le connessioni ad interruttore Ethernet. Questa configurazione forma una tipica terminazione Vdsl2 a 48 linee verso una dorsale 10 G. Gli I/O differenziali sull’Fpga supportano una velocità di trasmissione dati molto alta di 884 Mbps. Con transceiver differenziali Lvds interni e con la logica del substrato Xaui, l’Fpga di Lattice realizza due serie di blocchi di buffering e di conversione dei pacchetti e un blocco Mac con meno di 15.000 Look Up Table di risorse. L’elevato rapporto fra Serdes e logica rende questo Fpga una buona scelta per l’interfacciamento Slvs ad alta velocità in applicazioni Dslam.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome