- Perché modificare la frequenza di clock nei microcontrollori?
- Qual è l'effetto della selezione di più frequenze sulla performance?
- Bassa o alta frequenza, quale selezionare?
- Tecnica di commutazione della frequenza di clock
- Selezione delle modalità operative di gestione dell'orologio
- Esecuzione del software da memoria non volatile o RAM
- Utilizzando l'oscillatore interno
- Conclusione
Gli sviluppatori devono sempre sfidare a fornire alti livelli di funzionalità e prestazioni massimizzando al contempo la durata della batteria. Anche quando si tratta di prodotti elettronici, la caratteristica più importante è il consumo della batteria. Dovrebbe essere il meno possibile per aumentare il tempo di funzionamento del dispositivo. La gestione dell'alimentazione è molto critica nelle applicazioni portatili e alimentate a batteria. Differenze di consumo di microampere possono portare a mesi o anni di vita operativa che possono aumentare o diminuire la popolarità e il marchio del prodotto nel mercato. L'aumento dei prodotti richiede un'ottimizzazione più efficiente dell'uso della batteria. Al giorno d'oggi, gli utenti richiedono un backup della batteria più lungo con prodotti di dimensioni compatte, quindi i produttori si concentrano su batterie di dimensioni inferiori con una durata della batteria estremamente lunga, il che è un compito discutibile. Ma,gli sviluppatori hanno ideato le tecnologie di risparmio energetico dopo aver esaminato molti fattori e parametri critici che influenzano la durata della batteria.
Ci sono molti parametri che influenzano l'utilizzo della batteria come il microcontrollore utilizzato, la tensione di funzionamento, il consumo di corrente, la temperatura ambiente, le condizioni ambientali, le periferiche utilizzate, i cicli di ricarica ecc. Con la tendenza dei prodotti intelligenti che arrivano sul mercato, è molto importante concentrarsi prima sull'MCU utilizzato, per ottimizzare la durata della batteria. L'MCU diventa una parte fondamentale quando si tratta di risparmiare energia nei prodotti di piccole dimensioni. Quindi si consiglia di iniziare prima con l'MCU. Ora, MCU viene fornito con diverse tecniche di risparmio energetico. Per saperne di più sulla riduzione del consumo di energia nei microcontrollori (MCU), fare riferimento all'articolo precedente. Questo articolo si concentra principalmente su uno dei parametri importanti per ridurre il consumo di energia nel microcontrollore, ovvero la modifica della frequenza di clockche deve essere prestato attenzione quando si utilizza MCU per applicazioni a bassa potenza.
Perché modificare la frequenza di clock nei microcontrollori?
Tra molti parametri sopra menzionati, la scelta della frequenza di clock gioca un ruolo molto importante nel risparmio energetico. Lo studio mostra che una selezione errata della frequenza operativa dei microcontrollori può portare a una significativa perdita percentuale (%) della potenza della batteria. Per evitare questa perdita, gli sviluppatori devono occuparsi della selezione della frequenza appropriata per eseguire il microcontrollore. Ora, non è necessario che la selezione della frequenza possa essere effettuata inizialmente, durante l'impostazione del microcontrollore, mentre può essere scelta anche tra la programmazione. Ci sono molti microcontrollori che vengono forniti con la selezione dei bit per selezionare la frequenza operativa desiderata. Anche il microcontrollore può funzionare a più frequenze, quindi gli sviluppatori hanno la possibilità di selezionare la frequenza appropriata a seconda dell'applicazione.
Qual è l'effetto della selezione di più frequenze sulla performance?
Non c'è dubbio che la selezione di varie frequenze influenzerà le prestazioni del microcontrollore. Come in termini di microcontrollore, è risaputo che frequenza e prestazioni sono proporzionali. Significa che maggiore è la frequenza avrà meno tempo di esecuzione del codice e quindi maggiore velocità di esecuzione del programma. Quindi ora, è molto chiaro che se la frequenza viene modificata, anche le prestazioni cambieranno. Ma non è necessario che gli sviluppatori debbano attenersi a una frequenza solo per ottenere prestazioni più elevate del microcontrollore.
Bassa o alta frequenza, quale selezionare?
Non è sempre il caso quando il microcontrollore deve fornire prestazioni elevate, ci sono diverse applicazioni che richiedono prestazioni moderate del microcontrollore, in questo tipo di applicazioni gli sviluppatori possono ridurre la frequenza operativa da GHz a MHz e anche alla frequenza minima richiesta per eseguire microcontrollore. Sebbene, in alcuni casi, siano richieste prestazioni ottimali e anche il tempo di esecuzione sia fondamentale come quando si pilotano ADC flash esterni senza buffer FIFO, o nell'elaborazione video e in molte altre applicazioni, in queste aree gli sviluppatori possono utilizzare la frequenza ottimale del microcontrollore. Anche utilizzando in questo tipo di ambiente, gli sviluppatori possono programmare in modo intelligente per ridurre la lunghezza del codice scegliendo l'istruzione giusta.
Ad esempio: se il ciclo "for" richiede più istruzioni e si possono utilizzare diverse righe di istruzioni che utilizzano meno memoria per eseguire l'attività senza utilizzare il ciclo for , gli sviluppatori possono seguire diverse righe di istruzioni evitando l'uso del ciclo "for" .
La selezione della frequenza appropriata per il microcontrollore dipende dai requisiti dell'attività. Una frequenza più alta significa un maggiore consumo energetico ma anche una maggiore potenza di calcolo. Quindi, essenzialmente, la scelta della frequenza è un compromesso tra il consumo di energia e la potenza di calcolo richiesta.
Anche il vantaggio principale di lavorare a bassa frequenza è la bassa corrente di alimentazione oltre a una RFI (Interferenza di radiofrequenza) inferiore.
Corrente di alimentazione (I) = Corrente di riposo (I q) + (K x Frequenza)
Il secondo termine è predominante. L'energia RFI di un microcontrollore è così piccola che è molto facile da filtrare.
Quindi, se l'applicazione richiede una velocità elevata, non preoccuparti di correre veloce. Ma se il consumo di energia è un problema, eseguire il più lento possibile dell'applicazione.
Tecnica di commutazione della frequenza di clock
L'unità PLL (Phases Lock Loop) esiste sempre in un MCU ad alte prestazioni che funziona ad alta velocità. Il PLL aumenta la frequenza di ingresso a una frequenza più alta, ad esempio da 8 MHz a 32 Mhz. È facoltà dello sviluppatore scegliere la frequenza operativa appropriata per l'applicazione. Alcune applicazioni non devono essere eseguite ad alta velocità, in questo caso gli sviluppatori devono mantenere la frequenza di clock dell'MCU il più bassa possibile per eseguire l'attività. Tuttavia, in una piattaforma a frequenza fissa, come un MCU a 8 bit a basso costo che non contiene un'unità PLL, è necessario migliorare il codice di istruzione per ridurre l'energia di elaborazione. Inoltre, l'MCU che contiene un'unità PLL non può sfruttare i vantaggi della tecnica di commutazione di frequenza che consente all'MCU di funzionare ad alta frequenza nel periodo di elaborazione dei dati e quindi tornare al funzionamento a bassa frequenza per il periodo di trasmissione dei dati.
La figura spiega l'uso dell'unità PLL nella tecnica di commutazione di frequenza.
Selezione delle modalità operative di gestione dell'orologio
Alcuni microcontrollori ad alta velocità supportano diverse modalità di gestione dell'orologio come la modalità Stop, le modalità di gestione dell'alimentazione (PMM) e la modalità Idle. È possibile passare da una modalità all'altra consentendo all'utente di ottimizzare la velocità del dispositivo durante il consumo energetico.
Sorgente di clock selezionabile
L'oscillatore a cristallo è un grande consumatore di energia su qualsiasi microcontrollore, specialmente durante il funzionamento a bassa potenza. L'oscillatore ad anello, utilizzato per l'avvio rapido dalla modalità Stop, può anche essere utilizzato per fornire una sorgente di clock da circa 3 a 4 MHz durante il normale funzionamento. Sebbene all'accensione sia ancora necessario un oscillatore a cristallo, una volta che il cristallo si è stabilizzato, il funzionamento del dispositivo può essere commutato sull'oscillatore ad anello, ottenendo un risparmio energetico fino a 25 mA.
Controllo della velocità di clock
La frequenza operativa di un microcontrollore è il singolo fattore più importante nel determinare il consumo energetico. La famiglia di microcontrollori High-Speed Microcontroller supporta diverse modalità di gestione della velocità di clock che consentono di risparmiare energia rallentando o arrestando l'orologio interno. Queste modalità consentono allo sviluppatore del sistema di massimizzare il risparmio energetico con un impatto minimo sulle prestazioni.
Esecuzione del software da memoria non volatile o RAM
Gli sviluppatori devono considerare attentamente se il software viene eseguito da memorie non volatili o RAM nella stima del consumo corrente. L'esecuzione dalla RAM può offrire specifiche di corrente attiva inferiori; tuttavia, molte applicazioni non sono abbastanza piccole per essere eseguite dalla sola RAM e richiedono che i programmi vengano eseguiti dalla memoria non volatile.
Orologi bus abilitati o disabilitati
La maggior parte delle applicazioni del microcontrollore richiede l'accesso a memorie e periferiche durante l'esecuzione del software. Ciò richiede l'abilitazione dei clock del bus e deve essere considerato nelle stime correnti attive.
Utilizzando l'oscillatore interno
Usare oscillatori interni ed evitare oscillatori esterni può far risparmiare energia significativa. Poiché gli oscillatori esterni assorbono più corrente con conseguente maggiore utilizzo di energia. Inoltre, non è obbligatorio utilizzare un oscillatore interno, poiché è consigliabile utilizzare oscillatori esterni quando le applicazioni richiedono più frequenza di clock.
Conclusione
La realizzazione di un prodotto a bassa potenza inizia con una scelta di MCU ed è notevolmente difficile quando sul mercato sono disponibili diverse opzioni. La modifica della frequenza può avere un grande impatto sul consumo di energia e anche fornire un buon risultato di consumo energetico. Il vantaggio aggiuntivo di modificare la frequenza è che non ci sono costi hardware aggiuntivi e può essere implementato facilmente nel software. Questa tecnica può essere utilizzata per migliorare l'efficienza energetica di un MCU a basso costo. Inoltre, la quantità di risparmio energetico dipende dalla differenza tra le frequenze operative, il tempo di elaborazione dei dati e l'architettura della MCU. Il risparmio energetico fino al 66,9% può essere ottenuto utilizzando la tecnica di commutazione di frequenza rispetto al normale funzionamento.
Alla fine della giornata, per gli sviluppatori, soddisfare le esigenze di una maggiore funzionalità del sistema e obiettivi di prestazioni aumentando la durata della batteria dei prodotti, è una sfida significativa. Per sviluppare in modo efficace prodotti che offrano la durata della batteria più lunga possibile - o anche che funzionino senza batteria - richiede una profonda comprensione sia dei requisiti di sistema che delle specifiche attuali del microcontrollore. Questo è molto più complesso della semplice stima della quantità di corrente consumata dall'MCU quando è attivo. A seconda dell'applicazione sviluppata, la modifica della frequenza, la corrente di standby e la corrente periferica possono avere un impatto più significativo sulla durata della batteria rispetto all'alimentazione dell'MCU.
Questo articolo è stato creato per aiutare gli sviluppatori a capire come gli MCU consumano energia in termini di frequenza e possono essere ottimizzati con la modifica della frequenza.