In applicazioni con FPGA e ASIC sono richieste diverse tensioni di alimentazione, per il core, per gli I/O e in taluni casi anche una terza tensione per l’alimentazione dei circuiti ausiliari. Ecco come scegliere il sistema di alimentazione più idoneo anche in termini di ingombro su PCB, risposta ai transitori ed efficienza.
Nei mercati super-competitivi di oggi, che vedono una sempre più crescente pressione del time-to-market relativamente ai sottosistemi elettronici, l’importanza di FPGA e ASIC è cresciuta enormemente per il fatto che da questi componenti deriva la funzionalità di numerosi nuovi sistemi. Uno dei fattori più critici di un sistema basato su una FPGA è rappresentato dal power management. Per alimentare correttamente una FPGA si rende necessaria una attenta analisi del sistema, e la stessa tecnica può essere quasi sempre utilizzata anche nel caso si utilizzi un ASIC. Le prestazioni richieste al sistema di alimentazione risultano importanti a motivo delle complesse condizioni che si verificano al momento dell’accensione, per il comportamento nei confronti dei transitori, per le specifiche da seguire nella fase di spegnimento, e anche da altre specifiche situazioni. Anche il filtraggio delle tensioni di alimentazione del dispositivo richiede una particolare attenzione sopratutto in funzione della specifica applicazione. La figura 1 mostra una tipica configurazione del sistema di alimentazione di una FPGA.
Generalmente sono richieste almeno due tensioni per la sua corretta alimentazione: una destinata al “core” (compresi tipicamente tra 1,0V e 2,5V), e una per l’I/O (tipicamente di 3,3V). Molte FPGA richiedono anche una terza tensione di alimentazione di valore compreso tra 2,5V e 3,3V che dipende dalla famiglia di FPGA, destinata ad alimentare i circuiti ausiliari e caratterizzata da basso rumore e ripple contenuto. La corrente per ciascuna di queste tensioni è variabile e dipende da numerosi fattori legati all’applicazione come la frequenza di lavoro dell’FPGA, l’utilizzo di capacità, e altre variabili similari. I valori di corrente possono variare tra 100mA e 20A. Generalmente in questi sistemi la tensione di ingresso presenta un valore superiore a quello delle varie tensioni richieste dall’FPGA, ed è quindi necessario ridurne e regolarne il valore. La figura 2 mostra le tre più comuni configurazioni utilizzate per la regolazione step-down di FPGA. Esse sono rispettivamente il convertitore buck non sincrono, il convertitore buck sincrono, e il regolatore lineare. La scelta del regolatore ottimale da utilizzare passa attraverso un attento esame delle specifiche del sistema e del funzionamento del regolatore stesso, e per essere certi di effettuare la scelta corretta è necessario tenere in considerazione i seguenti aspetti.
TENSIONE DI INGRESSO (VIN)
La tensione di alimentazione per l’FPGA è normalmente derivata da un backplane o da una linea a tensione intermedia. I valori tipici di tensione disponibili variano tra 3V e 15V, ma possono arrivare a 30V nel caso di alcune applicazioni industriali. Il valore della tensione di ingresso può essere il primo fattore di esclusione delle possibili soluzioni, in quanto ogni regolatore richiede uno specifico valore minimo della tensione di alimentazione per poter operare correttamente.
TENSIONE DI USCITA (VOUT) E CORRENTE DI USCITA (IOUT)
La funzione di un regolatore consiste nel mantenere costante la tensione di uscita al variare della tensione di ingresso e della corrente assorbita dal carico. Come già citato in precedenza la corrente operativa può variare tra 100mA e 20A, e la combinazione tra tensione di ingresso, e tensione e corrente di uscita ci forzerà a scegliere il tipo di regolatore da impiegare. Come regola generale:
- Sceglieremo un regolatore lineare se la potenza dissipata risulterà inferiore a 1W.
- Impiegheremo un regolatore buck non sincrono se il rapporto tra la tensione di ingresso e quella di uscita è inferiore a 2:1, e la corrente di uscita è inferiore a 3A.
- Useremo un regolatore buck sincrono se il rapporto tra tensione di ingresso e tensione di uscita è superiore a 2:1, e la corrente di uscita è superiore a 3A.
Un regolatore controlla la tensione di uscita comparandone il valore o una sua frazione presente sul ingresso di feedback con una tensione di riferimento, il cui valore fissa anche il valore minimo possibile per la tensione di uscita. Alcuni controllori sono caratterizzati da un tempo minimo di conduzione, e questa caratteristica limita la capacità del regolatore di poter operare correttamente se il rapporto tra tensione di ingresso e tensione di uscita assume valori elevati. Il valore minimo del tempo di conduzione (TONmin) del circuito di controllo fissa anche la minima tensione di uscita ottenibile ad una specifica frequenza operativa. Se per una qualsiasi ragione il tempo minimo di conduzione viene superato, avremo che anche la tensione di uscita salirà oltre al valore desiderato.
Diminuendo la frequenza di switching potremo utilizzare un rapporto di step-down superiore.
FREQUENZA OPERATIVA DEL REGOLATORE SWITCHING
Il valore della frequenza operativa presenta una diretta ricaduta su alcuni parametri critici che comprendono le dimensioni dell’induttanza e della capacità, l’efficienza, la tensione di ripple, e da ultimo le dimensioni dell’area occupata sulla scheda. L’impiego di frequenze di switching più elevate consente al progettista di utilizzare induttanze di dimensioni ridotte e piccoli condensatori di uscita che consentono di ridurre il valore del ripple, e allo stesso tempo facilitano la progettazione di sistemi a larga banda. Oltre a questo avremo anche la possibilità di disporre di una variabile che ci consente di operare al di fuori di una specifica banda di frequenza evitando in questo modo interferenze spurie. L’impiego di un regolatore buck con frequenza operativa regolabile garantisce il più elevato grado di flessibilità al sistema.
EFFICIENZA
L’efficienza è il rapporto tra la potenza di uscita e la potenza di ingresso di un sistema, ed è un indice dell’energia sciupata. Questo è un parametro spesso trascurato dai progettisti di sistemi. Se la corrente di ingresso disponibile non presenta limitazioni particolari, o se la durata di utilizzo della batteria non è critica ci troveremo ad operare nella situazione in cui l’efficienza può non rappresentare un problema, ma dovremo in ogni caso tenere conto della dissipazione di potenza che diventa il parametro da controllare. La potenza dissipata in un sistema presenta un impatto diretto sull’incremento di temperatura di tutte le componenti del sistema come circuiti integrati, dispositivi di potenza, condensatori e induttanze. In alcuni casi dovremo concentrare la nostra attenzione su aree particolari per valutare in modo corretto il salto termico. Come regola generale possiamo valutare che l’incremento di temperatura provocato da una potenza di 1W dissipata su un’area di rame di 6,25cm2, provoca un incremento di temperatura di circa 40°C. Se le condizioni operative sono:
e se questa potenza viene dissipata su un’area di rame di 6,25cm2 avremo un aumento della temperatura di 100°C. Se consideriamo ora le seguenti condizioni operative:
Notiamo che l’efficienza si è significativamente ridotta, ma grazie al modesto valore della corrente di uscita la dissipazione è limitata a soli 0,53W che, dissipati sulla stessa superficie di rame, causano una sopraelevazione della temperatura di soli 20°C. Tutto questo dimostra come il valore della potenza dissipata sia più significativo di quello dell’efficienza. La comprensione di questo principio può aiutare il progettista ad ottimizzare la richiesta di efficienza e ridurre il costo globale del sistema.
OCCUPAZIONE DI AREA SUL PCB
La richiesta di riduzione dell’area occupata sulla scheda o dell’altezza possono avere un serio impatto sia sul costo che sull’efficienza di uno specifico prodotto. Ad esempio induttanze di piccole dimensioni presentano normalmente un valore di resistenza serie (ESR) superiore a quello di una induttanza di maggiori dimensioni. Le induttanze i condensatori a basso profilo sono generalmente più costosi, e l’impiego di un circuito stampato multistrato contribuisce sicuramente alla riduzione delle dimensioni, ma eleva il costo totale del sistema. Alcuni progettisti possono ipotizzare di aumentare la frequenza di switching per ridurre le dimensioni dei componenti, ma l’incremento della frequenza causa un aumento delle perdite di commutazione e il conseguente peggioramento dell’efficienza, per cui una riduzione delle dimensioni della scheda non necessaria provoca un ingiustificato aumento dei costi e obbliga a minimizzare la potenza dissipata per garantire la corretta gestione termica del sistema.
COSTO DEL SISTEMA
Uno dei traguardi del progettista è rappresentato dall’ottimizzazione dei costi del sistema di alimentazione dell’FPGA, ma il costo minimo non si ottiene necessariamente utilizzando il regolatore meno costoso. Ad esempio molti progettisti hanno talvolta rapidamente scartato i regolatori con dispositivo FET di potenza integrato semplicemente considerando esclusivamente il fattore prezzo, ma in certe situazioni questa soluzione si dimostra più economica di quella realizzata con un regolatore che utilizza un MOSFET esterno. È bene tenere presente che i regolatori che utilizzano un dispositivo di potenza esterno sono più sensibili alle problematiche di layout. Un semplice regolatore switching con MOSFET integrato può eliminare la maggior parte delle problematiche legate alla sensibilità al rumore. Un altro esempio riguarda l’abbandono di una soluzione a convertitore buck duale per passare ad utilizzare due convertitori separati. La prima soluzione può risultare estremamente vantaggiosa se si considera la possibile riduzione del numero dei condensatori posti all’ingresso del convertitore dovuta alla possibilità offerta dal dispositivo duale di operare in opposizione di fase riducendo in modo determinante il valore RMS del ripple di corrente. Usando un convertitore con controllore a due fasi otterremo anche il vantaggio di eliminare i battimenti di frequenza che si presentano se si utilizzano sistemi non sincronizzati che operano su frequenza simili ma non identiche. È bene ricordare che il vero costo del sistema è rappresentato dalla sommatoria del costo di tutti i componenti e non dal costo di un singolo componente. Al di la di tutte queste considerazioni, i sistemi che impiegano FPGA possono presentare una o più delle seguenti specifiche necessità.
RISPOSTA AI TRANSITORI
La tensione che alimenta il core dell’FPGA è soggetta ad ampie variazioni di corrente caratterizzate da slew-rate estremamente elevati. Questo richiede che il controllore sia in grado di erogare gradini di corrente al carico limitando al minimo le variazioni della sua tensione di uscita. La capacità del controllore di rispondere a queste repentine variazioni di carico è rappresentata dalla risposta ai transitori che dipende in modo diretto dalla larghezza di banda dell’anello di regolazione e dal valore dell’ESR del condensatore di uscita.
SEQUENZA DI ATTIVAZIONE E TRACCIATURA
Al momento dell’accensione può essere necessario che una tensione di alimentazione si porti a regime prima di un’altra. Se la sequenza prevista non viene attuata avremo che l’alimentatore può entrare in una condizione di “latch-up”, e l’FPGA può essere danneggiata o funzionare in modo non corretto. Alcune FPGA prevedono che l’applicazione delle varie tensioni avvenga in modo ordinato o che vi sia una salita controllata delle tensioni utilizzate per alimentare il core e l’I/O. (Fate riferimento alla figura 3 per le diverse sequenze e per le opzioni di tracciatura.) Le funzioni di partenza ordinata e tracciatura possono essere realizzate in modo semplice se i regolatori dispongono delle funzioni di power good, abilitazione logica, soft-start e tracking. In caso contrario sarà necessario ricorrere a della circuiteria aggiuntiva che provveda a realizzare le sequenze richieste.
PRECAUZIONI PER L’ACCENSIONE
Se le tensioni dell’FPGA richiedono una specifica rampa di salita, potremo implementare questa funzione operando sul valore della capacità di softstart. È anche necessario che la tensione applicata all’FPGA presenti un andamento monotonico, cioè non si evidenzino tratti a pendenza negativa. Se il condensatore di uscita del regolatore presenta un valore modesto potremo incorrere in questo problema. L’impiego di un condensatore di valore appropriato consente di disporre di sufficiente energia per poter soddisfare le necessità poste dal transitorio di accensione dell’FPGA.
SINCRONIZZAZIONE
La sincronizzazione consente a due o più regolatori di operare alla stessa frequenza di switching, e questo elimina le problematiche legate alla generazione di battimenti che risultano inevitabili se non si utilizza un sistema sincronizzato.
CONCLUSIONI
La configurazione ottimale del sistema di alimentazione varia con le necessità del sistema e la sua complessità, a cui si aggiunge l’eventuale impiego di FPGA o ASIC. Oltre a tensione di ingresso, tensione di uscita e corrente di uscita, si dovranno prendere in attenta considerazione specifiche richieste relative alla sequenza di attivazione, alla tracciatura delle tensioni e alle condizioni da soddisfare al momento dell’accensione; a queste si aggiungeranno le necessità imposte dalle dimensioni fisiche del sistema, dal costo e dalla dissipazione che andranno congiuntamente ad influenzare il progetto.
A propositiodi FPGA vi ricordo il nostro corso VHDL https://it.emcelettronica.com/vhdl-for-beginners-entita-e-architetture