- Hvorfor endre klokkefrekvensen i mikrokontrollere?
- Hva er effekten av å velge flere frekvenser på ytelsen?
- Lav eller høy frekvens, hvilken velger du?
- Clock-Frequency Switching Technique
- Velge klokkeadministrasjonsmåter
- Programvareutførelse fra ikke-flyktig minne eller RAM
- Bruke den interne oscillatoren
- Konklusjon
Utviklere har alltid utfordringer med å levere høye nivåer av funksjonalitet og ytelse og samtidig maksimere batterilevetiden. Også når det gjelder elektroniske produkter, er den viktigste funksjonen batteriforbruket. Det bør være så mindre som mulig å øke enhetens driftstid. Strømstyringen er veldig viktig i bærbare og batteridrevne applikasjoner. Forskjeller i mikroampereforbruk kan føre til måneder eller år med levetid som kan øke eller redusere produktets popularitet og merkevare i markedet. Økningen i produkter krever mer effektiv optimalisering av batteribruken. I dag krever brukere lengre batterisikkerhetskopi med kompakt størrelse på produktene, slik at produsenter fokuserer på mindre batteristørrelse med super lang batterilevetid, noe som er en tvilsom oppgave. Men,utviklerne har kommet med Power Saving Technologies etter å ha gått gjennom mange faktorer og kritiske parametere som påvirker batterilevetiden.
Det er mange parametere som påvirker batteribruken, for eksempel mikrokontroller som brukes, driftsspenning, strømforbruk, omgivelsestemperatur, miljøtilstand, periferiutstyr som brukes, ladingssykluser etc. Med trenden med smarte produkter som kommer i markedet, er det veldig viktig å først fokusere på MCU som brukes, for å optimalisere batterilevetiden. MCU blir en viktig del når det gjelder å spare strøm i små produkter. Så det anbefales at du starter med MCU først. Nå kommer MCU med de forskjellige strømsparingsteknikkene. For å vite mer om å minimere strømforbruket i mikrokontrollere (MCU), se forrige artikkel. Denne artikkelen fokuserer hovedsakelig på en av de viktige parameterne for å redusere strømforbruket i mikrokontroller, som er å endre klokkefrekvensensom må tas vare på når du bruker MCU for applikasjoner med lite strøm.
Hvorfor endre klokkefrekvensen i mikrokontrollere?
Av mange parametere nevnt ovenfor spiller valget av klokkefrekvens en veldig viktig rolle for å spare strøm. Studien viser at feil valg av driftsfrekvens til mikrokontrollere kan føre til betydelig prosentandel (%) tap av batteristrøm. For å unngå dette tapet, må utviklerne ta seg av riktig frekvensvalg for å kjøre mikrokontrolleren. Nå er det ikke nødvendig at frekvensvalget kan gjøres i utgangspunktet mens du setter opp mikrokontroller, mens det også kan velges mellom programmeringen. Det er mange mikrokontroller som kommer med bitvalg for å velge ønsket driftsfrekvens. Også mikrokontrolleren kan kjøre på flere frekvenser, så utviklerne har muligheten til å velge passende frekvens avhengig av applikasjonen.
Hva er effekten av å velge flere frekvenser på ytelsen?
Det er ingen tvil om at valg av forskjellige frekvenser vil påvirke ytelsen til mikrokontroller. Som når det gjelder mikrokontroller, er det veldig kjent at frekvens og ytelse er proporsjonal. Det betyr at større frekvens vil ha mindre kodeutførelsestid og dermed større hastighet på programutførelse. Så nå er det veldig klart at hvis frekvensen endres, vil ytelsen også endres. Men det er ikke nødvendig at utviklere trenger å holde seg på en frekvens bare for å oppnå høyere ytelse til mikrokontrolleren.
Lav eller høy frekvens, hvilken velger du?
Det er ikke alltid tilfelle når mikrokontroller må levere høy ytelse, det er flere applikasjoner som trenger moderat ytelse fra mikrokontrolleren. I denne typen applikasjoner kan utviklerne redusere driftsfrekvensen fra GHz til MHz og til og med til minimumsfrekvensen som kreves for å kjør mikrokontroller. Selv om det i noen tilfeller er optimal ytelse og også gjennomføringstid er kritisk, for eksempel når du kjører eksterne flash-ADC uten FIFO-buffer, eller i videoprosessering og mange andre applikasjoner, kan utviklerne i disse områdene bruke den optimale frekvensen til mikrokontroller. Selv ved bruk i slike miljøer kan utviklerne kode smart for å redusere kodelengden ved å velge riktig instruksjon.
For eksempel: Hvis 'for' loop tar flere instruksjoner og man kan bruke flere linjer med instruksjoner som bruker mindre minne til å gjøre oppgaven uten å bruke for loop, så kan utviklere gå med flere linjer med instruksjoner og unngå bruk av 'for' loop.
Valget av passende frekvens for mikrokontroller avhenger av oppgavens krav. Høyere frekvens betyr høyere strømforbruk, men også mer beregningskraft. Så egentlig er valg av frekvens en avveining mellom strømforbruk og nødvendig beregningskraft.
Den største fordelen med å jobbe med lav frekvens er også lav forsyningsstrøm i tillegg til lavere RFI (radiofrekvensinterferens).
Forsyningsstrøm (I) = Hvilestrøm (I q) + (K x Frekvens)
Det andre begrepet er dominerende. RFI-energien til en mikrokontroller er så liten at det er veldig enkelt å filtrere.
Så hvis applikasjonen trenger rask hastighet, ikke bekymre deg for å løpe fort. Men hvis strømforbruket er et problem, kjør så tregere som applikasjonen tillater.
Clock-Frequency Switching Technique
PLL (Phases Lock Loop) Enhet eksisterer alltid i en MCU med høy ytelse som kjører i høy hastighet. Den PLL øker inngangsfrekvensen til en høyere frekvens for eksempel fra 8 MHz til 32 MHz. Det er alternativet for utvikleren å velge passende driftsfrekvens for applikasjonen. Noen applikasjoner trenger ikke å kjøre med høy hastighet, i så fall må utviklere holde klokkefrekvensen til MCU så lav som mulig for å kjøre oppgaven. I en fast frekvensplattform, for eksempel billig 8-biters MCU som ikke inneholder PLL-enhet, må man imidlertid forbedre instruksjonskoden for å redusere prosesseringsenergien.. MCU som inneholder en PLL-enhet, kan heller ikke utnytte fordelene med frekvensbryterteknikk som gjør at MCU kan operere med høy frekvens i databehandlingsperioden og deretter gå tilbake til lavfrekvent drift for dataoverføringsperioden.
Figuren forklarer bruken av PLL-enhet i Frequency Switching Technique.
Velge klokkeadministrasjonsmåter
Noen av høyhastighets mikrokontrollere støtter forskjellige klokkehåndteringsmodi som stoppmodus, strømstyringsmodus (PMM) og inaktiv modus. Det er mulig å veksle mellom disse modusene slik at brukeren kan optimalisere hastigheten på enheten mens strømforbruket.
Valgbar klokkilde
Krystalloscillatoren er en stor forbruker av strøm på hvilken som helst mikrokontroller, spesielt under drift med lite strøm. Ringoscillatoren, som brukes til hurtigstart fra stoppmodus, kan også brukes til å gi en omtrent 3 til 4MHz klokkilde under normal drift. Selv om det fremdeles er behov for en krystalloscillator ved oppstart, kan enheten, når krystallet har stabilisert seg, byttes til ringoscillatoren, noe som gir en strømbesparelse på hele 25 mA.
Klokkehastighetskontroll
Driftsfrekvensen til en mikrokontroller er den største faktor for å bestemme strømforbruket. High-Speed Microcontroller-familien av mikrokontrollere støtter forskjellige moduser for klokkehastighetsstyring som sparer strøm ved å bremse eller stoppe den interne klokken. Disse modusene tillater systemutvikleren å maksimere strømbesparelser med minimal innvirkning på ytelsen.
Programvareutførelse fra ikke-flyktig minne eller RAM
Utviklere må nøye vurdere om programvare kjøres fra ikke-flyktige minner eller RAM for å estimere strømforbruket. Å kjøre fra RAM kan tilby lavere aktive strømspesifikasjoner; mange applikasjoner er imidlertid ikke små nok til å kjøre fra RAM alene og krever at programmer kjøres fra ikke-flyktig minne.
Bussklokker aktivert eller deaktivert
De fleste mikrokontrollerapplikasjoner krever tilgang til minner og eksterne enheter under programvareutførelse. Dette krever at bussklokker er aktivert og må vurderes i aktive nåværende estimater.
Bruke den interne oscillatoren
Bruk av interne oscillatorer og unngå eksterne oscillatorer kan spare betydelig energi. Når eksterne oscillatorer trekker mer strøm, noe som resulterer i mer strømforbruk. Det er heller ikke vanskelig å bruke intern oscillator, da eksterne oscillatorer anbefales å bruke når applikasjonene krever mer klokkefrekvens.
Konklusjon
Å lage et laveffektprodukt starter med et valg av MCU, og det er betydelig vanskelig når forskjellige alternativer er tilgjengelige i markedet. Modifisering av frekvens kan ha stor innvirkning på strømforbruket og også gi et godt strømforbruksresultat. Den ekstra fordelen med å endre frekvensen er at det ikke er noen ekstra maskinvarekostnader, og at den enkelt kan implementeres i programvaren. Denne teknikken kan brukes til å forbedre energieffektiviteten til en billig MCU. Videre avhenger energisparemengden av forskjellen mellom driftsfrekvenser, databehandlingstid og MCU-arkitekturen. Energibesparelsen på opptil 66,9% kan oppnås ved bruk av frekvensbryterteknikk sammenlignet med normal drift.
På slutten av dagen er det en betydelig utfordring for utviklere å møte behovene til økt systemfunksjonalitet og ytelsesmål samtidig som produktets batterilevetid økes. For å effektivt utvikle produkter som leverer lengst mulig batterilevetid - eller til og med opererer uten batteri i det hele tatt - krever en dyp forståelse av både systemkravene og mikrokontrollers nåværende spesifikasjoner. Dette er mye mer komplisert enn å bare estimere hvor mye strøm MCU bruker når den er aktiv. Avhengig av applikasjonen som utvikles, kan frekvensendring, standbystrøm, perifer strøm ha en mer betydelig innvirkning på batterilevetiden enn MCU-strøm.
Denne artikkelen ble laget for å hjelpe utviklere å forstå hvordan MCU-ene bruker strøm når det gjelder frekvens og kan optimaliseres med frekvensendring.