Gli FPGA sono disponibili in pacchetti quad o BGA che possono essere difficili da pianificare, specialmente con l'alto numero di I/O spesso implementati in questi componenti. Gli FPGA offrono molti vantaggi in termini di riconfigurabilità, ma possono richiedere molto sforzo per essere disposti e connessi senza problemi. Se non hai mai lavorato con un FPGA nel tuo layout PCB, abbiamo alcune linee guida che possono aiutarti a iniziare.
Creare un layout PCB per FPGA è principalmente difficile perché richiede una significativa pianificazione che deve corrispondere al design complessivo del sistema. Il design del sistema FPGA può dettare dove alcuni componenti devono essere posizionati e connessi nel layout PCB, e viceversa. Se hai già pianificato il layout del tuo sistema, allora probabilmente avrai più facilità a costruire la tua applicazione e implementarla su un FPGA con successo. Per iniziare, esamineremo come pensare allo stackup e ai canali di routing nel tuo FPGA poiché questi punti guideranno molte scelte nel layout PCB.
Per iniziare con un FPGA, è importante notare che gli FPGA avanzati di oggi con un numero moderato ad alto di I/O sono disponibili in pacchetti BGA. Gli FPGA in QFP sono disponibili anche, ma i componenti più avanzati saranno disponibili in pacchetti BGA. Il motivo è semplice: si possono inserire molti più I/O in un pacchetto BGA, e si può ridurre la dimensione del componente se un FPGA è confezionato in un BGA.
Quindi, per iniziare, assicurati che il design dello stackup per il layout del tuo PCB FPGA soddisfi alcuni semplici requisiti:
Le linee guida qui esposte si applicano a qualsiasi BGA, ma sono particolarmente importanti negli FPGA. Un FPGA è spesso utilizzato perché consente l'accesso a molteplici interfacce ad alta velocità che non sono disponibili in un componente più lento come un MCU/MPU. Anche nei BGA con pitch inferiore al millimetro, non è richiesto di implementare pratiche di progettazione HDI, ma dovresti comunque implementare uno stackup che permetta il tipo di routing necessario per garantire l'integrità del segnale, l'integrità della potenza e la compatibilità elettromagnetica.
Lo stackup mostrato di seguito offre molteplici canali di routing su più strati. Se ci sono più di due righe/colonne di I/O sull'FPGA, allora dovrai dedicare più strati di segnale a questi gruppi di I/O. Strati aggiuntivi possono essere aggiunti per supportare altri segnali non dedicati all'FPGA, o ad altre interfacce (analogiche, SPI, ecc.).
In questo stackup, abbiamo preso le migliori misure disponibili per fornire isolamento nei diversi canali, fornire abbastanza spazio e strati per il routing dell'alimentazione, e abbondante terra per controllare i percorsi di ritorno. L'intercalazione di strati di terra tra segnale e PWR è molto importante poiché fornisce il controllo del percorso di ritorno necessario per garantire che i requisiti EMC siano soddisfatti. In questo stackup c'è solo 1 strato di alimentazione elencato, sebbene l'alimentazione possa anche essere instradata sugli strati di segnale secondo necessità per realizzare connessioni con binari più piccoli. Sistemi ad alta corrente possono usare più strati di alimentazione in parallelo se necessario.
L'FPGA sarà generalmente posizionato lontano dai bordi della scheda in modo che i canali di routing possano essere estesi verso l'esterno. Tuttavia, esiste un metodo alternativo per posizionare un FPGA. Invece di posizionare l'FPGA come un componente, potrebbe essere disponibile su un modulo sistema-su-modulo (SOM) fornito dal produttore del componente o da un'azienda terza. Il posizionamento come un SOM richiede l'espansione dei connettori da scheda a scheda che possono avere un numero di pin molto elevato. Un esempio è mostrato di seguito.
A seconda dell'impronta del connettore da scheda a scheda, potrebbe essere necessaria una strategia di fanout e delle regole di progettazione che si potrebbero utilizzare su un FPGA. È comune vedere più connettori raggruppati in un arrangiamento quadrato intorno alla scheda SOM o ai bordi.
Come possiamo vedere da tutta la discussione sopra, un layout e un routing efficaci della PCB con un FPGA riguardano il lavoro con i BGA, quindi le stesse strategie di routing utilizzate in altri BGA si applicheranno agli FPGA. Ci sono alcune strategie semplici che sono necessarie per il routing dei segnali fuori da un grande FPGA:
Altre sfide di posizionamento normalmente coinvolgono il posizionamento di condensatori sui pin di alimentazione intorno all'FPGA per fornire il decoupling. Con i pacchetti BGA, questo è molto più conveniente perché puoi posizionare quei condensatori attraverso i pin sul lato posteriore dell'FPGA. Assicurati di specificare via-in-pad nella tua documentazione di fabbricazione se stai utilizzando condensatori di dimensioni maggiori. Se stai lavorando con alcuni degli standard di segnalazione più veloci, allora dovresti optare per dimensioni di pacchetto più piccole (sub-0402) per garantire la risposta più rapida possibile nella tua rete di decoupling.
Per segnali ad altissima velocità, dove è necessario un abbinamento preciso della lunghezza attraverso un bus parallelo di grandi dimensioni (come DDR4 o superiore) e tra molteplici coppie differenziali (come in PCIe), sarà necessario includere i tempi di volo attraverso l'FPGA. Gli FPGA fisicamente grandi potrebbero richiedere che i segnali viaggino attraverso il componente affinché un segnale possa lasciare un blocco logico e raggiungere un pin I/O. A volte, questi si trovano sui lati opposti dell'FPGA, quindi ci sarà un grande ritardo di propagazione aggiunto al tempo di viaggio del segnale. Questo tempo di volo aggiuntivo può essere incluso nelle informazioni di ritardo pin-package per l'FPGA. Se il tuo segnale sta passando attraverso una via, non dimenticare di includere il ritardo della via (vedi il link precedente).
Quando devi posizionare un FPGA nel tuo layout PCB e instradare i segnali ad altri componenti, usa il miglior set di funzionalità di layout PCB in Altium Designer®. Una volta completato il tuo PCB e sei pronto per condividere i tuoi progetti con collaboratori o il tuo produttore, puoi condividere i tuoi progetti completati attraverso la piattaforma Altium 365™. Tutto ciò di cui hai bisogno per progettare e produrre elettronica avanzata si trova in un unico pacchetto software.
Abbiamo appena iniziato a scoprire cosa è possibile fare con Altium Designer su Altium 365. Inizia oggi la tua prova gratuita di Altium Designer + Altium 365.