Table of Contents
Ruolo strategico di FPGA in collegamenti seriali ad alta velocità
Dalla trasmissione video tra telecamere e processori all'acquisizione di dati da ADC ad alta velocità e interconnessioni in data center, i collegamenti seriali hanno sostituito bus paralleli su praticamente ogni interfaccia.
A differenza di ASIC che richiedono costosi set di maschere e lunghi cicli di fabbricazione, FPGAs consente agli ingegneri di prototipo, convalidare e distribuire protocolli seriali personalizzati in settimane. Questa riconfigurabilità è un bene strategico quando gli standard si evolvono, quando i protocolli proprietari forniscono vantaggio competitivo, o quando i volumi di produzione non giustificano un ASIC.
Architettura del Transceiver: PMA e PCS Layers
Ogni transceiver FPGA comprende due sotto-blocchi principali: l'attacco fisico medio (PMA) e il sottostrato di codifica fisica (PCS).
Il livello PMA
Il PMA gestisce tutte le funzioni digitali analogiche e ad alta velocità. Sul lato della trasmissione, contiene il serializzatore (conversione parallel-to-serial). Sul lato ricevente, contiene il deserializzatore (conversione seriale-to-parallele). Il PMA include anche l'unità di moltiplicatore di clock (CMU) o trasmettere PLL che moltiplica l'orologio di riferimento alla velocità di linea.
Il livello PCS
Il PCS collega il PMA ad alta velocità al tessuto FPGA, che opera al ritmo delle parole parallele. Si tratta di funzioni digitali che richiedono una complessità moderata ma sono troppo veloci per l'implementazione di logica morbida. Le caratteristiche tipiche del PCS includono 8b/10b o 64b/66b codifica e decodifica, rilevamento di virgola e allineamento delle parole, buffering elastico per l'attraversamento del dominio, il collegamento dei canali per i protocolli multi-lane e la generazione del modello PRBS appropriata e il controllo della procedura guidata di test.
La documentazione del venditore è essenziale per i diagrammi di blocco dettagliati e le mappe di registro.Xilinx 7 Series Transceivers User Guide] fornisce una copertura completa della configurazione PMA e PCS, mentre il Intel High-Speed Serial Interface Handbook] copre le famiglie Intel Agilex e Stratix transceiver
Trasmettitore di base e di routine
I fornitori di FPGA organizzano i ricetrasmettitori in quad o banche, ogni condivisione di PLL e ingressi di clock di riferimento. Il posizionamento fisico di questi quad sul dado determina quali banche FPGA I/O possono ricevere dati seriali. È necessario verificare che la banca di transceiver selezionata abbia accesso diretto alla logica FPGA necessaria per l'elaborazione del protocollo. Alcuni dispositivi limitano determinate funzioni di posizionamento a specifiche posizioni quad.
Progettazione di trasmettitori basati su FPGA
Il percorso del trasmettitore converte i dati paralleli dal tessuto FPGA in un flusso seriale ad alta velocità, mentre l'implementazione semplice e pratica richiede un'attenta gestione dell'orologio, del condizionamento del segnale e della formattazione specifica del protocollo.
Struttura della serializzazione e dei Datapath
Il serializzatore all'interno del PMA accetta una parola parallela, di tipo 8, 10, 16, 20, 32 o 40 bit, e lo sposta alla velocità di linea. Il bus parallelo opera in una frazione della velocità di linea pari alla larghezza dell'autobus divisa nella velocità del bit. Ad esempio, un collegamento Ethernet 10.3125 Gbps che utilizza un percorso dati a 32 bit gestisce il lato parallelo a circa 322 MHz.
Generazione di orologi e controllo Jitter
La maggior parte dei transceiver FPGA accetta orologi di riferimento differenziali (LVDS, LVPECL, o HCSL) e richiedono una frequenza che è un submultiple razionale della velocità di linea. Il PLL di trasmettitore moltiplica questo riferimento alla velocità di bit seriale.
PCI Express, SATA e USB 3.0 specificano tutti SSC con profili di modulazione specifici. Se il transceiver deve supportare SSC, verificare che il PLL possa monitorare la frequenza di modulazione (di solito 30–33 kHz) e che il CDR sul terminale ricevente abbia una larghezza di banda sufficiente per seguire la variazione di frequenza.
Codifica della linea e bilanciamento DC
I collegamenti seriali non possono tollerare lunghe corse di bit identici. Il circuito CDR ha bisogno di bordi per mantenere la serratura, e i ricevitori con il sistema AC-coupled richiedono l'equilibrio DC per evitare il giro di linea. La codifica della linea risolve entrambi i problemi. Il codice più diffuso è 8b/10b, che mappa ogni 8-bit dati tramite un simbolo morbido a 10 bit scelto per mantenere una disparità in esecuzione vicino a zero e limitare la lunghezza di corsa a cinque bit consecutivi.
Per i collegamenti personalizzati, possono essere implementati codici alternativi come 16b/18b, 8b/9b o Manchester coding. Il trade-off è sempre tra overhead, DC balance, la densità di transizione e la complessità di implementazione.
Trasmettere Parimentazione e Pre-Emfasi
La perdita del canale è dipendente dalla frequenza: i componenti ad alta frequenza che definiscono le transizioni a bit veloci sono attenuati più di componenti a bassa frequenza. Questa attenuazione provoca intersymbol interferenza, rendendo più difficile per il ricevitore distinguere quelli da zero.
I transceiver FPGA espongono questi coefficienti di rubinetto attraverso i registri di configurazione. I valori di partenza sono forniti nelle note di applicazione per i protocolli comuni. Iniziare con le impostazioni consigliate, quindi ottimizzare osservando il diagramma degli occhi all'ingresso del ricevitore. Aumentare i rubinetti pre-cursore e post-cursore fino all'apertura dell'occhio, ma fermarsi prima che la sovra-equalizzazione provoca l'anello e l'eccessiva crosstalk eccessivo.
Sfera di uscita, Terminazione e Integrità di segnale
Il driver di uscita del ricettore è programmabile. L'oscillazione inferiore riduce il consumo di energia e l'EMM ma riduce il rapporto segnale-rumore al ricevitore. Impostare la tensione di uscita differenziale al minimo necessario per ottenere un'apertura dell'occhio accettabile all'estremità opposta, data la perdita del canale. L'impedenza di terminazione dovrebbe corrispondere all'impedenza caratteristica della linea di trasmissione, tipicamente 100 ohms differenziale.
Progettazione di ricevitori basati su FPGA
Il ricevitore è dove l'esperienza e l'attenzione al dettaglio separano un collegamento robusto da uno che funziona in modo intermittente. Il ricevitore deve recuperare un orologio pulito da un segnale degradato, confini di parola allineare, e compensare i difetti del canale.
Orologio e recupero dati
Il circuito CDR in transceivers FPGA utilizza un loop o un interpolator di fase per generare un orologio di campionamento che traccia i bordi dei dati in arrivo. La banda CDR determina quanto velocemente l'orologio recuperato segue i cambiamenti di frequenza e jitter.
Il CDR richiede un orologio di riferimento che è bloccato in frequenza ai dati in arrivo entro una tolleranza specificata, tipicamente da ±100 a ±300 ppm. Se le frequenze di riferimento e di dati differiscono da più del range di pull-in CDR, il CDR non si blocca. Questo requisito diventa critico quando il trasmettitore remoto utilizza una diversa fonte di riferimento.
Allineamento delle parole e rilevamento dei problemi
Una volta che il CDR recupera l'orologio bit, il deserializer presenta una parola parallela al PCS. I confini della parola sono arbitrari; il circuito di allineamento deve trovare il limite corretto cercando un modello noto. Per 8b/10b collegamenti, il carattere virgole K28.5 (modello di legare 1100000101) appare periodicamente in sequenze di idle o di allenamento.
Dopo l'allineamento, il ricevitore deve mantenere la sincronizzazione. La perdita di sincronizzazione si verifica quando gli errori corrompono il modello di allineamento. Il PCS tipicamente include una macchina statale che passa da sincronizzato a perdita di sincronizzazione dopo un numero programmabile di errori. Questo istere impedisce brevi scoppi di rumore causando inutili riallineamento.
Ricevitore Pariqualizzazione
A velocità multi-gigabit, il segnale che arriva ai perni del ricevitore può avere un'altezza dell'occhio di solo dieci millivolts. Due fasi di equalizzazione recuperare il segnale. CTLE amplifica componenti ad alta frequenza rispetto alle basse frequenze, attenuando efficacemente il contenuto del segnale a bassa frequenza.
Dopo CTLE, ISI residuo rimane a causa di riflessi e risposte a lungo termine del canale. DFE sottrae le interferenze da bit precedentemente rilevati utilizzando rubinetti di feedback. Ogni rubinetto moltiplica una decisione a bit precedente da un coefficiente e lo sottrae al campione corrente. La maggior parte dei transceivers FPGA implementano 1-5 rubinetti DFE, con gli aggiornamenti di coefficiente adattativo.
Analisi degli occhi e dei margini
Gli strumenti di scansione degli occhi forniti dal fornitore sono inestimabili per caratterizzare il margine di collegamento. Il ricetrasmettitore fornisce una porta di analisi dei margini che consente di spostare il punto di campionamento in tensione e tempo durante la misurazione della velocità di errore del bit.
Integrità del segnale e progettazione del PCB
La migliore configurazione del ricetrasmettitore non può compensare il design del PCB povero. La disciplina di integrità del segnale è obbligatoria per i collegamenti seriali ad alta velocità affidabili.
Linea di trasmissione Design
Percorso differenziale coppie come microstrip strettamente accoppiato o strisce traccia con un'impedenza differenziale di 100 ohm ±10%. L'impedenza caratteristica dipende dalla larghezza di traccia, traccia spaziatura, spessore dielettrico e peso di rame.
Evitare le vie su tracce seriali ad alta velocità quando possibile. Quando le vie sono inevitabili, ad esempio, quando si gira su un connettore sul lato opposto della scheda—minimizzare la via acrobata utilizzando la retro-guida o routing su uno strato vicino al connettore. La via stub agisce come un robusto che degrada l'occhio alle frequenze in cui la lunghezza del fermabo è un quarto di lunghezza d'onda.
Consegna di energia per i Transceivers
I sistemi di alimentazione a trasmissione a distanza sono notoriamente sensibili al rumore. Un tipico FPGA di fascia alta potrebbe avere più forniture a 1,0 V: uno per il transceiver PMA, uno per la logica digitale PCS, e uno per il tessuto FPGA. Non condividere questi rifornimenti senza isolamento.
Connettore e Selezione cavi
Per le applicazioni backplane, utilizzare connettori progettati per la segnalazione multi-gigabit, come la serie Q di Samtec o la serie di impatto Molex. I cavi ad alta velocità devono essere specificati per la velocità e la lunghezza dei dati. Per brevi arrivi (meno di 1 metro), cavi di rame ad attacco diretto, sono necessari cavi di distanza di costo.
Protocolli e modelli di attuazione moderni
Protocollo di streaming su misura e Aurora
Xilinx offre il protocollo Aurora come un collegamento leggero e scalabile per collegare FPGA-to-FPGA attraverso backplanes. Aurora gestisce l'inizializzazione, il collegamento dei canali e il controllo del flusso, lasciando il contenuto dei dati interamente all'utente. Il protocollo supporta collegamenti semplici o full-duplex con il numero configurabile di corsie. L'implementazione è semplice utilizzando il core Aurora IP, che gestisce la configurazione, l'allineamento e il collegamento seriale.
JESD204B/C per convertitori di dati ad alta velocità
Il sistema di interfaccia JESD204 è diventato il metodo dominante per collegare ADC ad alta velocità e DAC a FPGAs. La revisione B supporta la latenza deterministica, la sincronizzazione multi-dispositivo, e le velocità di allineamento fino a 12.5 Gbps.
PCI Express
PCI Express è onnipresente nel calcolo, e molti FPGAs includono blocchi IP PCI Express induriti. Lo strato fisico funziona a 2.5 GT/s (Gen1), 5 GT/s (Gen2), 8 GT/s (Gen3), 16 GT/s (Gen4), e 32 GT/s (Gen5). Gen3 e sopra usare 128b/130b codificando con la messa a punto e richiedono DFE alla sequenza del ricevitore.
100G/400G Ethernet e PAM4
Il PAM4 Modulazione codifica due bit per simbolo utilizzando quattro livelli di tensione, raddoppiando la velocità dei dati per una determinata velocità di baud. PAM4 introduce nuove sfide: ci sono tre aperture oculari verticali invece di uno, e il rapporto segnale-rumore è intrinsecamente inferiore a NRZ.
Test, convalida e debito
Auto-Test integrato
Ogni transceiver FPGA include generatori di pattern integrati e pedine. Utilizzare modelli PRBS-7, PRBS-15, PRBS-23, PRBS-31) per sottolineare il collegamento con modelli di transizione dati realistici. Trasmettere PRBS-31 dal trasmettitore e verificare che il ricevitore di controllo corrisponde.
Test di tasso di errore di bit
Per un obiettivo BER di 10−12[FLT]], è necessario osservare almeno 1012 bit senza errore. Questo corrisponde a circa 100 secondi a 10 Gbps. In pratica, prova per periodi più lunghi per rilevare interferenze
Risoluzione dei problemi Problemi comuni
Quando il collegamento non inizializza, controlla il seguente in ordine: presenza orologio di riferimento e precisione di frequenza, reset di ricettività del ricettore, stato di blocco PLL, stato di blocco CDR e stato di allineamento. Ogni fornitore di FPGA fornisce indicatori di stato accessibili attraverso l'interfaccia di transceiver. Se il CDR blocca ma l'allineamento non riesce, verifica che il trasmettitore sta inviando il corretto schema di allineamento e che il ricevitore è configurato per rilevare.
Metodologia di progettazione e flusso degli strumenti
Inizia con la procedura guidata del fornitore per generare il corretto istante iniziale. Simula il comportamento del transceiver utilizzando i modelli di simulazione forniti dal fornitore, verificando tempi di reset, tempo di blocco PLL e comportamento di blocco CDR. Crea un banco di prova che esercita il generatore di pattern PRBS integrato e l'errore.
Mantenere un registro dei margini di collegamento durante lo sviluppo, la registrazione delle misurazioni dell'altezza e della larghezza dell'occhio per ogni scheda e ogni angolo di temperatura. Questo dato aiuta a identificare le variazioni di produzione e le modifiche di progettazione delle guide per la prossima revisione.
Le direzioni e le tendenze tecnologiche del futuro
I tassi di dati seriali continuano ad aumentare, guidati dalle richieste di banda del data center e dagli standard emergenti come 800G Ethernet e PCI Express Gen6 (64 GT/s). I transceiver FPGA incorporano formati di modulazione avanzati tra cui PAM6 e PAM8, che richiedono una equalizzazione ancora più sofisticata.
Grazie alla comprensione dell'architettura transceiver, all'integrità del segnale sin dall'inizio, e all'utilizzo di strumenti di test e misura disponibili, à ̈ possibile implementare in modo affidabile la comunicazione seriale multi-gigabit nei sistemi.