Tecniche di controllo della velocità della ventola in PC
Analog Devices offre un set completo di prodotti di monitoraggio hardware per l’utilizzo in PC desktop e notebook e server. Sistemi intelligenti-i dispositivi di monitoraggio rendono possibili sofisticate tecniche di controllo della velocità della ventola per fornire un raffreddamento adeguato e mantenere prestazioni termiche ottimali nel sistema. Durante lo scorso anno è stata sviluppata una famiglia di prodotti, tra cui il controller per ventole PWM doppio ADM1029 e il monitor termico remoto a doppio canale ±1°C ADM1026 e ADM1030/31 completi, conformi ACPI, per una o due ventole indipendenti. Si basano sulla tecnologia di base utilizzata nel portafoglio di prodotti per monitor di sistema per PC ADM102x (vedere anche Analog Dialogue 33-1 e 33-4). Fornendo il controllo della velocità della ventola in base alle temperature misurate all’interno del sistema, questi nuovi prodotti offrono soluzioni di gestione termica più complete. Discutiamo qui la necessità di questo livello di controllo sofisticato e le questioni inerenti a fornirlo.
Background
All’alba del nuovo millennio, i processori raggiungono velocità di 1 GHz e oltre. I loro impressionanti miglioramenti nella velocità e nelle prestazioni del sistema sono accompagnati dalla generazione di quantità crescenti di calore all’interno delle macchine che li utilizzano. La necessità di dissipare in modo sicuro questo calore, insieme alle mosse nel settore informatico per sviluppare “PC verdi” e macchine user-friendly (come elettrodomestici Internet diventano mainstream) ha guidato la necessità e lo sviluppo di tecniche di raffreddamento e gestione termica più sofisticate.
I PC hanno anche iniziato a diventare più piccoli e meno convenzionali in termini di dimensioni e forma-come si può vedere in uno qualsiasi dei più recenti concept PC o notebook slim-line sul mercato. Specifiche rigide di dissipazione di potenza come “Linee guida di alimentazione mobile’ 99 ” (Rif. 1) stabilire quanto calore può essere dissipato in modo sicuro attraverso la tastiera di un notebook senza causare disagio all’utente. Il calore in eccesso deve essere canalizzato dal sistema con altri mezzi, come la convezione lungo tubi di calore e una piastra di spargimento di calore, o l’uso di un ventilatore per spostare l’aria attraverso il sistema. Chiaramente, ciò che serve è un approccio intelligente ed efficace alla gestione termica che può essere adottato universalmente. Vari gruppi industriali si sono riuniti per affrontare questi e altri problemi e hanno sviluppato standard come ACPI (Advanced configuration and power interface) per notebook PC e IPMI (intelligent Platform management interface) per la gestione dei server.
Standard industriali
Lo sviluppo dei nuovi prodotti di gestione termica/controllo della velocità è stato motivato dagli standard ACPI e IPMI. La configurazione avanzata e power interface-ACPI è stata definita da Intel, Microsoft e Toshiba principalmente per definire e implementare la gestione dell’alimentazione all’interno dei PC notebook.
La gestione dell’alimentazione è definita come ” Meccanismi hardware e software per ridurre al minimo il consumo energetico del sistema, gestire i limiti termici del sistema e massimizzare la durata della batteria del sistema. La gestione dell’alimentazione comporta compromessi tra velocità del sistema, rumore, durata della batteria, velocità di elaborazione e consumo di energia CA.”
Considera prima un utente di notebook-PC che scrive rapporti di viaggio mentre vola attraverso oceani o continenti. Quale caratteristica è più importante, massime prestazioni della CPU o maggiore durata della batteria? In una semplice applicazione di word-processor, dove il tempo tra le sequenze di tasti di un utente è quasi un’eternità nei cicli di clock della CPU, le massime prestazioni della CPU non sono affatto così critiche come la disponibilità continua di potenza. Quindi le prestazioni della CPU possono essere scambiate con una maggiore durata della batteria. D’altra parte, considera l’utente che vuole guardare l’ultimo film di James Bond in full-motion, a schermo intero, suono e luminosità intorpiditi, su disco versatile digitale (DVD). È fondamentale che il sistema funzioni a un livello di prestazioni per decodificare il software abbastanza velocemente, senza far cadere immagini o fotogrammi audio. In questa situazione le prestazioni della CPU non possono essere compromesse. Pertanto, la generazione di calore sarà ai massimi livelli e l’attenzione alla gestione termica sarà di fondamentale importanza per ottenere le migliori prestazioni senza compromettere l’affidabilità. Inserisci ACPI.
Che cosa è allora ACPI? ACPI è una specifica che descrive l’interfaccia tra i componenti e come si comportano. Non è una specifica puramente software o hardware, poiché descrive come il software del BIOS, il software del sistema operativo e l’hardware del sistema dovrebbero interagire.
La specifica ACPI delinea due metodi distinti di raffreddamento del sistema: raffreddamento passivo e raffreddamento attivo. Il raffreddamento passivo si basa sul software del sistema operativo (OS) e/o del sistema di input/output di base (BIOS) per ridurre il consumo energetico della CPU al fine di ridurre la dissipazione del calore della macchina. Come si può raggiungere questo obiettivo? Prendendo decisioni intelligenti come entrare in modalità di sospensione se non è stata rilevata alcuna sequenza di tasti o altra interazione con l’utente dopo un tempo specificato. O se il sistema sta facendo alcuni calcoli intensivi, come l’elaborazione 3D, e sta diventando pericolosamente caldo, il BIOS potrebbe decidere di strozzare (rallentare) l’orologio della CPU. Ciò ridurrebbe la potenza termica della macchina, ma a costo delle prestazioni complessive del sistema. Qual è il vantaggio di questo raffreddamento di tipo passivo? Il suo netto vantaggio è che il fabbisogno di alimentazione del sistema viene abbassato silenziosamente (il funzionamento della ventola non è richiesto) per ridurre la temperatura del sistema, ma limita le prestazioni.
Quindi, per quanto riguarda il raffreddamento attivo? In un sistema raffreddato attivamente, il software del sistema operativo o del BIOS esegue un’azione diretta, come l’accensione di una ventola montata sulla CPU, per raffreddare il processore. Ha il vantaggio che l’aumento del flusso d’aria sopra metal slug della CPU o dissipatore di calore permette il calore da estrarre dalla CPU in tempi relativamente brevi. In un sistema raffreddato passivamente, la limitazione della CPU da sola impedirà un ulteriore riscaldamento della CPU, ma la resistenza termica del dissipatore ad “aria ferma” può essere abbastanza grande, il che significa che il dissipatore dissiperebbe il calore nell’aria abbastanza lentamente, ritardando un ritorno all’elaborazione a piena velocità. Pertanto, un sistema che impiega il raffreddamento attivo può combinare le massime prestazioni della CPU e una dissipazione del calore più rapida. Tuttavia, il funzionamento della ventola introduce rumore acustico nell’ambiente del sistema e attira più potenza. Quale tecnica di raffreddamento è migliore? In realtà, dipende dall’applicazione; una macchina versatile utilizzerà entrambe le tecniche per gestire circostanze diverse. ACPI delinea le tecniche di raffreddamento in termini di due diverse modalità: modalità prestazioni e modalità silenziosa. Le due modalità sono confrontate nelle figure 1 e 2.
Le figure 1 e 2 sono esempi di scale di temperatura che illustrano i rispettivi compromessi tra prestazioni, rumore acustico della ventola e consumo / dissipazione di energia. Affinché un dispositivo di gestione del sistema sia conforme a ACPI, dovrebbe essere in grado di segnalare gli attraversamenti dei limiti a intervalli di 5°C o eventi SCI (system-control interrupt) che si è verificato un nuovo incremento di temperatura fuori limite. Questi eventi forniscono un meccanismo attraverso il quale il sistema operativo può monitorare la temperatura del sistema e prendere decisioni informate sul fatto di limitare l’orologio della CPU, aumentare/diminuire la velocità della ventola di raffreddamento o intraprendere azioni più drastiche. Una volta che la temperatura supera l’impostazione del criterio _CRT (temperatura critica), il sistema verrà arrestato come fail-safe per proteggere la CPU. Le altre due impostazioni dei criteri mostrate nelle figure 1 e 2 sono _PSV (raffreddamento passivo o limitazione dell’orologio della CPU) e _ACx. (raffreddamento attivo, quando la ventola si accende).
In Figura 1 (modalità prestazioni), la ventola di raffreddamento viene accesa a 50°C. Se la temperatura continua a salire oltre i 60°C, viene avviata la limitazione dell’orologio. Questo comportamento massimizzerà le prestazioni del sistema, poiché il sistema viene rallentato solo a una temperatura più elevata. In Figura 2 (modalità silenziosa), l’orologio della CPU viene prima strozzato a 45 gradi C. Se la temperatura continua a salire, una ventola di raffreddamento può essere accesa a 60 gradi C. Questa modalità a prestazioni ridotte tenderà anche ad aumentare la durata della batteria, poiché la riduzione dell’orologio riduce il consumo energetico.
La figura 3 mostra come i limiti delle bande di misurazione della temperatura tracciano la misurazione della temperatura. Ogni limite di attraversamento produce un interrupt.
La specifica Intelligent Platform Management Interface (IPMI) (Rif. 2) porta caratteristiche di gestione termica simili ai server. IPMI ha lo scopo di ridurre il total cost of Ownership (TCO) di un server monitorando i parametri critici di “heartbeat” del sistema: temperatura, tensioni, velocità della ventola e PSU (unità di alimentazione). Un’altra motivazione per IPMI è la necessità di interoperabilità tra server, per facilitare la comunicazione tra battiscopa e chassis. IPMI si basa sull’uso di un bus I2C a 5 volt, con messaggi inviati in forma di pacchetto. Ulteriori informazioni su IPMI sono disponibili sul sito web Intel all’indirizzo http://developer.intel.com/design/servers/ipmi/.
Tutti i membri della famiglia TSM (Analog Devices Temperature and Systems-Monitoring) sono conformi ACPI e IPMI.
Monitoraggio della temperatura
Il prerequisito per il controllo intelligente della velocità della ventola all’interno dei PC è la capacità di misurare con precisione la temperatura del sistema e del processore. La tecnica di monitoraggio della temperatura utilizzata è stata oggetto di molti articoli (ad esempio, vedere il dialogo analogico 33-4.) e sarà solo brevemente visitato qui. Tutti i dispositivi di monitoraggio del sistema Analog Devices utilizzano una tecnica di monitoraggio della temperatura nota come Thermal Diode Monitoring (TDM). La tecnica si avvale del fatto che la tensione diretta di un transistor collegato a diodo, azionato a corrente costante, presenta un coefficiente di temperatura negativo, circa-2mV/°C. Poiché il valore assoluto di VBE varia da dispositivo a dispositivo, questa caratteristica di per sé non è adatta per l’uso in dispositivi prodotti in serie, perché ognuno richiederebbe una calibrazione individuale. Nella tecnica TDM, due diverse correnti vengono successivamente passate attraverso il transistor e viene misurata la variazione di tensione. La temperatura è correlata alla differenza di VBE di:
ΔVBE = kT/q × ln(N)
dove:
k = la costante di Boltzmann
q = carica elettrone magnitudine
T = temperatura assoluta in gradi kelvin
N = rapporto tra le due correnti
In qualsiasi CPU, la temperatura più rilevante è quella del “punto caldo” sullo stampo. Tutte le altre temperature del sistema (compresa la temperatura del dissipatore di calore) ritarderanno l’aumento di questa temperatura. Per questo motivo, praticamente ogni CPU (prodotta fin dai primi processori Intel Pentium II) contiene un transistor strategicamente posizionato sul suo die per il monitoraggio termico. Fornisce un profilo reale, essenzialmente istantaneo, della temperatura dello stampo. Figura 5 mostra profili di temperatura in un sistema ripetutamente entrare e svegliarsi dalla modalità di sospensione. Confronta le temperature misurate da un termistore collegato al dissipatore di calore della CPU e dal diodo termico del substrato. Nel breve intervallo affinché la temperatura effettiva dello stampo cambi avanti e indietro di circa 13 gradi, il termistore del dissipatore di calore non può percepire alcun cambiamento.
Temperatura di controllo della ventola
Con un accurato metodo di monitoraggio della temperatura stabilito, efficace controllo della ventola può essere implementato! La tecnica, in generale, consiste nell’utilizzare TDM per misurare la temperatura, con il transistor di rilevamento integrato su chip o posizionato esternamente il più vicino possibile a un punto caldo e impostando la velocità della ventola a un livello che assicuri un trasporto di calore sufficiente a quella temperatura. Vari parametri operativi del ciclo di controllo saranno programmabili, come la velocità minima, la temperatura di avvio della ventola, la velocità rispetto alla pendenza della temperatura e l’isteresi di accensione/spegnimento. Gli approcci di controllo della velocità descritti includeranno on-off, continuous (“linear”) e pulse-width modulation (PWM).
Metodi di controllo della ventola: storicamente, la gamma di approcci al controllo della velocità della ventola nei PC va dal semplice controllo on-off al controllo della velocità della temperatura-ventola a circuito chiuso.
Controllo in due fasi: questa è stata la prima forma di controllo della velocità della ventola adottata nei PC. Il BIOS misurava la temperatura del sistema (originariamente utilizzando un termistore in prossimità della CPU) e decideva se accendere o spegnere completamente una ventola di raffreddamento. Successivamente, i PC hanno utilizzato monitor di temperatura basati su TDM più accurati per implementare lo stesso controllo della ventola in due fasi.
Controllo in tre fasi: Il BIOS o il sistema operativo misura nuovamente la temperatura utilizzando un termistore o un diodo termico e, in base alle impostazioni del software, decide se accendere completamente la ventola, spegnerla completamente o impostarla per funzionare a metà velocità.
Controllo lineare della velocità della ventola: questo metodo più recente di controllo della velocità della ventola è noto anche come controllo della tensione. Il BIOS o il sistema operativo legge la temperatura dal circuito di misura TDM e scrive un byte su un DAC su chip, per impostare la tensione di uscita al fine di controllare la velocità della ventola. Un esempio di un controller di ventola IC di questo tipo è l’ADM1022, che ha un DAC a 8 bit su chip con un intervallo di tensione di uscita da 0 V a 2,5 V. Funziona con un amplificatore buffer esterno con valutazioni di progettazione appropriate per la ventola scelta. ADM1022 contiene anche punti di arresto hardware automatici predefiniti che causano la guida della ventola a piena velocità nel caso in cui il circuito TDM rilevi una condizione di sovratemperatura. Il debutto di questi tipi di dispositivi ha significato l’emergere del controllo automatico della velocità della ventola, in cui parte del processo decisionale viene spostato dal software del sistema operativo all’hardware di monitoraggio del sistema.
Pulse-width-modulation (PWM) fan-speed control: Nella linea di prodotti di monitoraggio dei sistemi ADI, questi tipi PWM sono i prodotti di controllo della ventola più recenti. Il BIOS o il sistema operativo possono leggere la temperatura dal dispositivo TDM e controllare la velocità della ventola di raffreddamento regolando il duty cycle PWM applicato ad esso.
Vale la pena notare che tutti i suddetti metodi di controllo della velocità della ventola si basano sull’intervento della CPU o dell’host per leggere la temperatura dal dispositivo TDM sul bus di gestione del sistema a 2 fili. Il software di gestione termica eseguito dalla CPU deve quindi decidere quale dovrebbe essere la velocità della ventola e scrivere di nuovo un valore a un registro sui sistemi monitor IC per impostare la velocità della ventola appropriata.
Un ovvio passo successivo nell’evoluzione del controllo della velocità della ventola è quello di implementare un loop di controllo automatico della velocità della ventola, che potrebbe comportarsi indipendentemente dal software e far funzionare la ventola alla sua velocità ottimale per una data temperatura del chip. Ci sono molti vantaggi per tale controllo della velocità a circuito chiuso.
Una volta che il dispositivo di monitoraggio dei sistemi è stato inizializzato (caricando i registri dei limiti con i parametri richiesti), il ciclo di controllo è completamente indipendente dal software e l’IC può reagire alle variazioni di temperatura senza l’intervento dell’host. Questa funzione è particolarmente desiderabile quando si verifica un errore di sistema catastrofico, da cui il sistema non è in grado di recuperare. Se il PC si blocca, il software di gestione dell’alimentazione nel sistema operativo non è più in esecuzione, con conseguente perdita di gestione termica! Se il PC non è in grado di leggere la temperatura misurata (poiché il PC si è bloccato), non è possibile impostare la velocità della ventola corretta per fornire il livello di raffreddamento richiesto.
L’altro vantaggio tangibile di un’implementazione a circuito chiuso è che azionerà la ventola alla velocità ottimale per qualsiasi data temperatura. Ciò significa che sia il rumore acustico che il consumo energetico sono ridotti. L’esecuzione di una ventola a piena velocità massimizza sia il consumo energetico che il rumore acustico. Se la velocità della ventola può essere gestita in modo efficace attraverso l’ottimizzazione del loop, funzionando solo alla velocità necessaria per una data temperatura, il consumo di potenza e il rumore udibile della ventola sono entrambi ridotti. Questo è un requisito assolutamente critico nelle applicazioni per PC notebook alimentati a batteria in cui ogni milliampere di corrente (o milliampere-secondo di carica) è un bene prezioso.
Loop di controllo automatico della velocità della ventola
Ecco come si potrebbe implementare un loop di controllo automatico della velocità della ventola, che misurerà la temperatura utilizzando tecniche TDM e imposterà la velocità della ventola in modo appropriato in funzione della temperatura. I parametri programmabili consentono un controllo più completo del loop. Il primo valore di registro da programmare è TMIN. Questa è la temperatura (corrispondente a ACx) alla quale la ventola si accenderà per la prima volta e dove inizierà il controllo della velocità della ventola. La velocità viene impostata momentaneamente al massimo per far funzionare la ventola, quindi ritorna all’impostazione della velocità minima (vedi Figura 6). Il parametro che consente il controllo della pendenza della funzione di velocità temperatura-ventola è l’intervallo da TMAX a TMIN o TRANGE. I valori programmati per TMIN e TRANGE definiscono la temperatura alla quale la ventola raggiungerà la velocità massima, cioè TMAX = TMIN + TRANGE. La gamma di temperature programmata è selezionabile: 5&de;C, 10°C, 20°C, 40°C e 80°C. Per evitare l’accensione e lo spegnimento rapidi in prossimità di TMIN, viene utilizzata l’isteresi per stabilire una temperatura inferiore a TMIN, a cui la ventola è spenta. La quantità di isteresi che può essere programmata nel loop è compresa tra 1°C e 15°C. Questo loop di controllo della ventola può essere supervisionato dal software OS tramite SMBus e il PC può decidere di ignorare il loop di controllo in qualsiasi momento.
PWM vs. Controllo della velocità della ventola lineare
Ci si potrebbe chiedere perché la modulazione della larghezza di impulso è auspicabile se il controllo della velocità della ventola lineare è già in uso diffuso.
Si consideri una ventola da 12 V che viene guidata utilizzando il controllo lineare della velocità della ventola. Poiché la tensione applicata alla ventola viene aumentata lentamente da 0 V a circa 8 V, la ventola inizierà a girare. Man mano che la tensione alla ventola aumenta ulteriormente, la velocità della ventola aumenta fino a quando non funziona alla massima velocità quando viene azionata con 12 V. Quindi la ventola da 12 V ha una finestra operativa efficace tra 8 V e 12 V; con una gamma di soli 4 V disponibili per l’uso nel controllo della velocità.
La situazione diventa ancora peggiore con la ventola 5-V che verrebbe utilizzata con un notebook PC. La ventola non si avvia fino a quando la tensione applicata è di circa 4 V. Sopra 4 V, la ventola tenderà a girare vicino a piena velocità, quindi c’è poco controllo della velocità disponibile tra 4 e 5 volt. Pertanto, il controllo della velocità della ventola lineare non è adatto per il controllo della maggior parte dei tipi di ventole 5V.
Con pulse-width modulation (PWM), la tensione massima viene applicata per intervalli controllati (il duty cycle di un’onda quadra, tipicamente a 30-100 Hz). Poiché questo ciclo di lavoro, o rapporto tra tempo alto e tempo basso, è variato, la velocità della ventola cambierà.
A queste frequenze, gli impulsi puliti del tachimetro (contagiri) vengono ricevuti dalla ventola, consentendo una misurazione affidabile della velocità della ventola. Poiché le frequenze di azionamento aumentano, ci sono problemi con impulsi tach insufficienti per una misurazione accurata, quindi rumore acustico e, infine, picchi elettrici che corrompono il segnale tach. Pertanto, la maggior parte delle applicazioni PWM utilizza l’eccitazione a bassa frequenza per guidare la ventola. Il circuito di azionamento PWM esterno è abbastanza semplice. Può essere realizzato (Figura 7) con un singolo transistor esterno o MOSFET per pilotare la ventola. L’equivalente di controllo della velocità della ventola lineare, guidato da una tensione di velocità analogica, richiede un amplificatore operazionale, un transistor pass e una coppia di resistori per impostare il guadagno dell’amplificatore operazionale.
Come viene misurata la velocità della ventola? Una ventola a 3 fili ha un’uscita tach, che di solito emette 1, 2 o 4 impulsi tach per giro, a seconda del modello di ventola. Questo segnale tach digitale viene quindi applicato direttamente all’ingresso tach sul dispositivo di monitoraggio dei sistemi. Gli impulsi tach non vengono contati, perché una ventola funziona relativamente lentamente, e ci vorrebbe una quantità apprezzabile di tempo per accumulare un gran numero di impulsi tach per una misurazione affidabile della velocità della ventola. Invece, gli impulsi tach sono utilizzati per gate un oscillatore on-chip in esecuzione a 22,5 kHz fino a un contatore (Vedi Figura 8). In effetti, il periodo di tach viene misurato per determinare la velocità della ventola. Un conteggio elevato nel registro dei valori di tach indica una ventola che funziona a bassa velocità (e viceversa). Un registro limite viene utilizzato per rilevare le ventole attaccate o bloccate.
Quali altri problemi ci sono con il controllo della velocità della ventola?
Quando si controlla una ventola utilizzando PWM, il ciclo di lavoro minimo per un funzionamento continuo affidabile della ventola è di circa il 33%. Tuttavia, un ventilatore non si avvia al duty cycle del 33% perché non c’è abbastanza potenza disponibile per superare la sua inerzia. Come notato nella discussione della Figura 6, la soluzione a questo problema è far girare la ventola per 2 secondi all’avvio. Se la ventola deve essere eseguita alla sua velocità minima, il ciclo di lavoro PWM può essere ridotto al 33% dopo che la ventola è stata attivata ed è protetta dallo stallo dall’isteresi.
Blocco della ventola & Guasti della ventola
Tuttavia, può sorgere la possibilità che una ventola possa bloccarsi a un certo punto mentre viene utilizzata in un sistema. Le cause possono includere una ventola che funziona troppo lentamente o l’accumulo di polvere che impedisce la rotazione. Per questo motivo, i monitor Analog Devices systems hanno un meccanismo on-chip basato sull’uscita tach della ventola per rilevare e riavviare una ventola in stallo. Se non vengono ricevuti impulsi tach, il valore nel registro Valore Tach supererà il limite nel registro Limite Tach e verrà impostato un flag di errore. Questo farà sì che il controller per tentare di riavviare la ventola cercando di girare in su per 2 secondi. Se la ventola continua a fallire, per un massimo di 5 tentativi di riavvio, viene riconosciuto che esiste un guasto catastrofico della ventola e un pin FAN_FAULT asserirà di avvertire il sistema che una ventola ha fallito. Nei sistemi a doppio controller a due ventole, la seconda ventola può essere ruotata fino alla massima velocità per cercare di compensare la perdita di flusso d’aria dovuta al guasto della prima ventola.
Sommario
Soluzioni di gestione termica superiori continuano ad essere sviluppate e offerte all’industria informatica da Analog Devices. Le tecniche sviluppate per ADM1029, ADM1030 / 31 e ADM1026 portano la gestione termica all’interno dei PC ad un nuovo livello. Questi dispositivi sono dotati di funzioni come il monitoraggio della temperatura, il controllo automatico della temperatura nell’hardware, la misurazione della velocità della ventola, il supporto per i fan di backup e ridondanti, il rilevamento dei fan presenti e dei fan, la frequenza PWM programmabile e il duty cycle. Man mano che le linee guida sull’alimentazione diventano più rigorose e i PC sono più caldi, vengono sviluppate tecniche di misurazione della temperatura e controllo della velocità della ventola più sofisticate per gestire i sistemi del futuro in modo più efficace.
Leave a Reply