Logotip NXPAN13951
Optimizacija porabe energije za i.MX 8ULP

NXP AN13951 Optimizacija porabe energije za i MX 8ULP - predstavljena slikaRev. 0 – 30. maj 2023
Opomba o aplikaciji

AN13951 Optimizacija porabe energije za i.MX 8ULP

Informacije o dokumentu

Informacije Vsebina
Ključne besede AN13951, i.MX 8ULP, arhitektura napajanja, poraba energije, optimizacija programske opreme
Povzetek Ta opomba o aplikaciji opisuje, kako optimizirati porabo energije na ravni sistema v več
tipični scenariji z različnimi kombinacijami domen.

Uvod

Družina procesorjev i.MX 8ULP vključuje NXP napredno implementacijo dvojnih jeder Arm Cortex-A35 poleg Arm Cortex-M33. Ta kombinirana arhitektura omogoča, da naprava poganja bogate operacijske sisteme, kot je Linux, na jedru Cortex-A35 in RTOS, kot je FreeRTOS, na jedru Cortex-M33. Vključuje tudi Fusion DSP za nizkoenergijski zvok in HiFi4 DSP za napredne aplikacije za zvok in strojno učenje. Usmerjen je na primere uporabe in izdelke z nizko in ultra nizko porabo energije.
i.MX 8ULP ima zapleteno in napredno zasnovo, ki pokriva različne primere uporabe, ki delijo SoC na tri domene z neodvisnimi in namenskimi krmilniki napajanja in ure. To uporabnikom omogoča prilagodljivost pri izvajanju različnih primerov uporabe s kombiniranjem različnih domen. Namen te opombe o aplikaciji je opisati, kako optimizirati porabo energije na sistemski ravni v več tipičnih scenarijih z različnimi kombinacijami domen.
Opomba: Ta opomba o aplikaciji uporablja kodo Linuxa in SDK BSP kot reference in npramples.

konecview

SoC i.MX 8ULP ima tri ločene domene: aplikacijski procesor (AP), avdio video z nizko porabo energije (LPAV) in domene realnega časa (RT). Kontrole napajanja in ure teh domen so ločene, struktura vodila vsake domene pa je tesno integrirana za učinkovito komunikacijo.
Aplikacijska domena (APD) se uporablja za visoko zmogljivo računalništvo z uporabo dvojnih jeder A35 in hitrih V/I, kot je USB/Ethernet/eMMC. Domena LPAV (LPAVD) je za multimedijske aplikacije, vključno z zvokom, videom, grafiko in zasloni, ki zahtevajo visoko zmogljiv in velik pomnilnik DDR. Domena v realnem času (RTD) vključuje jedro M33 z nizko zakasnitvijo, majhen Fusion DSP za obdelavo zvoka/glasa, uPower za popoln nadzor stanja napajanja SoC in Sentinel za varnostni nadzor.
Slika 1. Domene i.MX8ULP

NXP AN13951 Optimizacija porabe energije za i MX 8ULP - večview2.1 Arhitektura napajanja
Različne domene imajo ločene napajalnike (power rail). Slika 2 prikazuje napajalno shemo i.MX 8ULP. Obstaja 18 x stikal za vklop (PS) za notranje IP module SoC. Te module je mogoče vklopiti/izklopiti s programsko opremo prek uPower FW API za natančen nadzor moči.
uPower je centralni krmilnik moči v i.MX 8ULP. Vdelana programska oprema, ki se izvaja na uPower, ponuja naslednje funkcije:

  • Krmilnik prehoda v način napajanja.
  • Merilnik moči za merjenje porabe v domenah moči naprave.
  • Temperaturni senzor za merjenje temperature naprave.
  • Sporočilne enote za komunikacijo s procesorji na čipu.
  • I2C za komunikacijo s PMIC.

Vstop/izstop iz načinov nizke porabe se izvede s klicem uPower FW API v programski opremi APD ali RTD. Če želite konfigurirati nastavitev, podobno PMIC, izhod voltage, omejitev itd. je treba opraviti s klicem API-jev uPower FW I2C ali PMIC.
Slika 2. Struktura napajanja

NXP AN13951 Optimizacija porabe energije za i MX 8ULP - napajalna arhitektura2.2 Načini napajanja
Tabela 1 prikazuje razpoložljivo kombinacijo načinov napajanja CA35 in CM33. SoC ne podpira nekaterih kombinacij. Za več podrobnosti o vsakem načinu napajanja glejte poglavje »Upravljanje napajanja« v Referenčnem priročniku procesorja i.MX 8ULP (dokument i.MX8ULPRM).
Tabela 1. Načini napajanja i.MX8ULP

CA35 CM33
Aktiven spi Globok spanec Izklop Globok izklop
Aktiven DA Scenarij #1 DA Scenarij #3 DA Scenarij #3 št št
Delno aktivno* DA DA DA št št
spi DA DA DA št št
globok spanec* DA DA DA št št
Izklop DA
Scenarij #2/4
DA
Scenarij #2
DA
Scenarij #2
DA
Scenarij #2
DA
Globok izklop  DA DA DA DA

*Linux ne podpira globokega spanja ali delno aktivnega načina za A35.
Tabela 2 preslika infrastrukturo napajanja jedra Linuxa v načine napajanja 8ULP.

Tabela 2. Načini napajanja, ki jih podpira Linux BSP

Moč Linuxa 8ULP načini moči
Teči Aktiven
CPU v mirovanju spi
Pripravljenost N/A
Prekini Izklop
Izklop Globok izklop

Glede na različne primere uporabe in scenarije lahko uporabnik izbere eno ali dve ali v večjih primerih vse tri domene. Te primere uporabe/scenarije je mogoče uvrstiti v naslednje štiri kategorije:

  1. Aktivne so vse domene – na primer aktivna pametna ura.
  2. Domena RTD uporablja samo – na primer zvezdišče senzorja in zaznavanje ključnih besed za glasovno bujenje pri zelo nizki moči.
  3. APD je aktiven z LPAV – kot je navigacija po zemljevidu in stransko iskanje v e-bralniku.
  4. RTD je aktiven z LPAV – na primer zaslon z nizko porabo energije in obdelava Hi-Fi zvoka.

Ti štirje scenariji so bili označeni v Tabela 1. Naslednja poglavja opisujejo, kako optimizirati porabo energije za scenarij 2, 3 in 4. Optimizacije aktivne porabe vseh domen lahko izkoristijo nasvete iz drugih scenarijev.

2.3 Načini vožnje
SoC lahko podpira različne načine vožnje: over drive (OD), nominalni pogon (ND) in under drive (UD), kar pomeni, da lahko SoC deluje pod različnimi volumni jedra.tages z ustreznim vodilom in frekvenco IP. Uporabniki lahko izberejo pravi način vožnje za svoje primere uporabe in zahteve glede moči.
Privzeti BSP zažene SoC tako, da APD/LPAV preklopi v način OD in RTD v način ND. Uporabniki lahko konfigurirajo U-Boot in naložijo določeno drevo naprav jedra files za način ND. Domena RTD podpira samo UD.
Tabela 3 navaja nekaj ključnih ur IP v različnih načinih.

Tabela 3. Ključne ure IP v različnih načinih

Ime ure Prenapetost (1.1 V) Frekvenca (MHz) Nazivna pogonska frekvenca (1.0 V) (MHz)
CM33_BUSCLK 108 65
DSP_CORECLK 200 150
FlexSPI0/1 400 150
NIC_AP_CLK 460 241
NIC_PER_CLK 244 148
uSDHC0 397 200
uSDHC1 (PTE/F) 200 100
uSDHC2 (PTF) 200 100
HIFI4_CLK 594 263
NIC_LPAV_AXI_CLK 316.8 200
NIC_LPAV_AHB_CLK 158.4 100
DDR_CLK 266 200
DDR_PHY 528 400
GPU3D/2D 316.8 200
DCNano 105 75

Za več taktov glejte tabelo taktnih frekvenc v aplikacijskem procesorju i.MX 8ULP – industrijski izdelki (dokument IMX8ULPIEC).

Samo domena RTD

Razmislite SDK Power_mode_switch demo kot bivšiampki je priložen programski opremi i.MX 8ULP SDK sprostitev.
V tem scenariju sta domeni AP in LPAV v načinu izklopa ali globokega izklopa, jedro M33 ali ponastavitev pa ju lahko prebudita. Domena RTD je lahko v aktivnem načinu, načinu spanja, globokega spanja ali načinu izklopa glede na porabo energije in zahteve glede časa bujenja.
Slika 3 in Slika 4 prikaže porabo energije in čas bujenja za vsak način nizke porabe.

Slika 3. Poraba energije v različnih načinih napajanja

NXP AN13951 Optimizacija porabe energije za i MX 8ULP - načini napajanjaSlika 4. Čas prebujanja sistema v različnih načinih napajanja

NXP AN13951 Optimiziranje porabe energije za i MX 8ULP - različni načini napajanja3.1 Izberite pravi način nizke porabe
Uporabnik mora izbrati enega ali več desnih načinov nizke porabe za varčevanje z energijo glede na zahteve. Upoštevati je treba naslednje:

  • Upoštevajte porabo energije SoC, PD < 300 µW, globoko spanje < 1 mW, spanje < 50 mW
  • Upoštevajte čas prebujanja iz načinov nizke porabe, PD > 400 µs, globoko spanje > 60 µs, spanje > 10 µs
  • Upoštevajte IP-je, ki se uporabljajo v načinih z najmanjšo porabo energije, tako da se sklicujete Tabela 4.
    Na primerample:
    1. Če mora LPI2C[3] delovati ali delovati asinhrono, ne pa CG/PG, uporabite način mirovanja.
    2. Če se zahteva, da FlexSPI deluje, je način najnižje porabe v stanju mirovanja brez zaporne ure sistema/vodila.

Tabela 4. Podrobnosti načina napajanja (domena v realnem času)

Moduli Načini moči Aktiven spi Globok spanec Izklop Globoka moč
navzdol
Power state močnostna domena Napajanje jedra = VKLOP, pristranskost = AFBB in DVS, takti sistema/vodila = VKLOP, napajanje V/I = VKLOP Napajanje jedra = VKLOP, Bias = AFBB ali ARBB, Voltage = fiksno, ura sistema/vodila = VKLOPLJENO (izbirno), V/I napajanje = VKLOPLJENO Napajanje jedra = VKLOP, Bias = RBB Voltage/ Bias = prog, ura sistema/vodila = IZKLOP, I/0 napajanje = VKLOP Napajanje jedra = ON (samo Mem), Bias = RBB, Voltage/ Bias = prog, ura sistema/vodila = IZKLOP, I/0 napajanje = VKLOP (neobvezno) Napajanje jedra = OFF, Bias = RBB, Voltage/ Bias = prog, ura sistema/vodila = IZKLOP, I/0 napajanje = VKLOP (neobvezno)
CCGO RTD Funkcionalen Funkcionalen Funkcionalno (omejeno) PG PG
PLLO PLL LDO Funkcionalen Funkcionalen CG PG PG
PLL1 (avdio) PLL LDO Funkcionalen Funkcionalen CG PG PG
LPO (1 MHz) RTD Funkcionalen Funkcionalen Funkcionalen PG PG
SYSOSC RTD Funkcionalen Funkcionalen Funkcionalen PG PG

Za več podrobnosti glejte poglavje »Podrobnosti načina napajanja (domena realnega časa)« v Referenčnem priročniku procesorja i.MX 8ULP (dokument i.MX8ULPRM).
Razmislite o primeru uporabe glasovnega bujenja z nizko močjoample. Najnižji način porabe energije, ki ga lahko uporabnik izbere, je globok spanec. IP mikrofona in telefona (MICFIL) lahko deluje v globokem spanju z vklopljeno uro FRO, kar ne deluje v načinu izklopa.

3.2 Uporabite ustrezne ure
Domena RTD ima več virov takta, kot je prikazano na sliki 5: SYSOSC, FRO, LPO, PLL0 (sistemski PLL (SPLL)) in PLL1 (zvočni PLL (APLL)). Medtem lahko domena RTD uporablja tudi uro domene VBAT RTC32K/1K.

Slika 5. Urni diagram RTD CGC0

NXP AN13951 Optimizacija porabe energije za i MX 8ULP - diagram

  • Vir takta SYSOSC je iz zunanjega vgrajenega kristala, običajno 24 MHz. Izvor PLL0/1 in jedro/vodilo CM33 lahko uporabljata vir ure SYSOSC.
  • FRO je prosto delujoč oscilator z uglaševalnikom, ki lahko oddaja frekvenco 192 MHz in 24 MHz. FRO24 je mogoče uporabiti za vir PLL0/1, FRO192 pa za takte jedra/vodila CM33.
  • LPO je fiksiran na 1 MHz, uporabljajo ga moduli IP, ki morajo delovati v načinih nizke porabe, kot sta EWM in LPTMR.
  • PLL0 deluje pri 480 MHz, PLL1 pa 528 MHz. PLL0 je sistemski PLL, ki ga uporabljata jedro/vodilo CM33 in FlexSPI. PLL1 uporabljajo zvočni sistemi, kot je SAI/MICFIL/MQS. Oba lahko zagotovita višjo taktno frekvenco za jedro/vodilo CM33.

Ker je uro jedra/vodila CM33 mogoče pridobiti iz FRO ali SYSOSC, se je bolje izogniti uporabi PLL0/1, če ni potrebna višja frekvenca. Z izklopom PLL-jev lahko znatno prihranite energijo.
Če se PLL uporabljajo za CM33 v aktivnem načinu, jih je treba ročno izklopiti, preden vstopite v načine nizke porabe (mirovanje/globoko spanje/izklop), da prihranite energijo. To zahteva več korakov:

  1. Omogočite FRO ali SYSOSC z bitnimi nastavitvami *DSEN v registrih SCR glede na uporabo Fusion DSP v načinih nizke porabe
  2. Počakajte na veljavnost ure tako, da preverite bit VLD, nastavljen v registru SCR.
  3. Onemogočite module IP, ki uporabljajo PLL, ali preklopite uro na FRO ali SYSOSC.
  4. Preklopite uro CM33 na FRO ali SYSOSC z nastavitvami DIV za jedro/bus/počasno uro v CGC0.CM33CLK.
  5. Počakajte nekaj mikrosekund. Če želite počakati na stabilnost ure, preverite bit CM33LOCKED.
  6. Onemogočite PLL0/1 tako, da počistite bit SCR PLLEN.

3.3 Izklopi in uri vrata za neuporabljene načine IP in particijo SRAM
Za domeno RTD je lahko več stikal za vklop/izklop (glejte razdelek 7):

  • PS0: jedro CM33, zunanje naprave in enklava EdgeLock
  • PS1: jedro Fusion DSP
  • PS14: Fusion AON
  • PS15: eFuse

V SDK-ju lahko uporabnik pokliče UPOWER_PowerOffSwitches(upower_ps_mask_t mask) in UPOWER_PowerOn Switches(upower_ps_mask_t mask), da po potrebi izklopi in vklopi module. Tabela 7 prikazuje vrednost parametrov maske.
Za zunanje naprave CM33 (IP modul), ki se ne uporabljajo, pustite status onemogočenega (vrednost ponastavitve) ali ga onemogočite tako, da počistite njegov omogočeni bit, kot je glavni omogočitveni bit LPI2C MCR. Prepričajte se, da je krmilni bit vrat PCC počiščen, nprample, bit PCC1.PCC_LPI2C0[CGC]. V domeni RTD so lahko vse ure IP odporne ali neomejene z urnimi moduli PCC.
Pomnilniška particija je prav tako pomembna za varčevanje z energijo, če se ti pomnilniki ne uporabljajo. V SDK-ju lahko uporabnik pokliče UPOWER_PowerOffMemPart(uint32_t mask0, uint32_t mask1) in UPOWER_PowerOnMemPart(uint32_t mask0, uint32_t mask1), da po potrebi izklopi in vklopi pomnilniške particije. Tabela 8 prikaže vrednost parametrov mask0/1.

3.4 Vstop v način nizke porabe

Pred vstopom v načine nizke porabe energije (mirovanje/globoko spanje/izklop) je treba izvesti več korakov, da zagotovite nizko porabo energije v teh načinih:

  • Splošne nastavitve PAD v modulu SIM
    Znotraj SoC obstajata dve vrsti V/I PAD: FSGPIO (PTA/B/E/F) in HSGPIO (PTC/D). Za varčevanje z energijo v načinu nizke porabe mora uporabnik:
    – Onemogočite funkcijo kompenzacije za HSGPIO tako, da počistite bit COMPE v registrih PTC/D_COMPCELL.
    – Omejite območje delovanja V/I za FSGPIO, ki deluje znotraj 1.8 V, tako da nastavite bit PTx_OPERATION_RANGE
    DGO_GP10/11 RTD_SEC_SIM in DGO_GP4/5 APD_SIM. Na EVK PTB deluje za 1.8 V. Uporabnik mora omejiti območje delovanja PTB na 1.8 V z nastavitvijo RTD_SEC_SIM[DGO_GP11] = 0x1.
  • Onemogočite I/O zatiče tako, da PAD mux nastavite na analogno funkcijo hi-Z. Razen za zatiče, ki jih uporablja GPIO bujenje ali funkcija modula v načinih nizke porabe, morajo biti vsi drugi zatiči PTA/B/C nastavljeni na analogna funkcija visokega Z za varčevanje z energijo. To lahko dosežete z brisanjem bitov mux v registrih IOMUX0.PCR0_PTA/B/Cx. V SDK-ju lahko uporabnik neposredno dodeli 0 spodnjim elementom polja:
    PTA: IOMUXC0->PCR0_IOMUXCARRAY0[x]
    PTB: IOMUXC0->PCR0_IOMUXCARRAY1[x]
    PTC: IOMUXC0->PCR0_IOMUXCARRAY2[x]

    Na primerample, IOMUXC0->PCR0_IOMUXCARRY0[1] = 0 lahko onemogoči PTA1.
    Opomba: Ker mora biti PMIC med prehodom v način napajanja konfiguriran prek I2C (PTB10/11), teh zatičev ne morete onemogočiti.
    Če želite, da I/O pin deluje kot vir bujenja, je treba narediti spodnje nastavitve za različne načine napajanja:
    – Način izklopa:
    1. Omogočite pin bit v registrih WUU0 PE1/PE2.
    2. Konfigurirajte pin mux v funkciji IOMUXC0->PCR0_IOMUXCARRYx do WUU0_Pxx. Za podrobnosti glejte tabelo I/Osignal, priloženo v Referenčnem priročniku procesorja i.MX 8ULP (dokument i.MX8ULPRM).
    – Način spanja/globokega spanja: pravilno nastavite registre krmilnika prekinitev skupine GPIO (GPIOx->ICR).

  • Prikaz PLL-jev – Preklopite ure jedra/vodila na FRO ali LPO.
  • Nastavite PMIC za prilagoditev volumna napajanjatage za načine nizke porabe
    i.MX 8ULP podpira prilagajanje VDD_DIG0/1/2 napajalna tirnica voltage ali neposredno izklopite nekatere tirnice (podprite samo izklop LSW1 VDD_PTC v trenutnih EVK in SDK v načinih izklopa) med prehodom načinov napajanja. Znižanje voltage v načinih nizke porabe lahko učinkovito zmanjša porabo energije. 
    Izklop nekaterih tirnic lahko neposredno prekine napajanje, da prihrani energijo. Tabela 5 prikazuje tipično voltages VDD_DIG0/1 pod različnimi načini napajanja (VDD_DIG2 je povezan z DIG1 na plošči EVK. Lahko se ga prilagodi skupaj z  VDD_DIG1).
    Tabela 5. Napajanje voltage v različnih načinih napajanja
    Električna tirnica Aktiven spi Globok spanec Izklop
    VDD_DIGO 1.05 V 1.05 V 0.73 V 0.65 V
    VDD_DIG1 1.05 V 1.05 V 0.73 V 0.73 V

    Za znižanje glasnostitagPri napajalnih tirnicah mora uporabnik uPowerju povedati, kako naj konfigurira PMIC med prehodom napajanja z dodajanjem elementov strukture ps_rtd_pmic_reg_data_cfgs_t v polje pwr_sys_cfg->ps_rtd_ pmic_reg_data_cfg[]. Za primer vzemi PCA9460 PMIC na EVKample spodaj:
    1. Vstopite v način izklopa:
    a. Nizko navzdol BUCK2 (VDD_DIG0) na 0.65 V.
    b. Izklopite LSW1 za napajanje PTC I/O.
    2. Zapustite način izklopa:
    a. Dvignite BUCK2 (VDD_DIG0) nazaj na 1.0 V.
    b. Vklopite LSW1 za PTC V/I napajanje.
    NXP AN13951 Optimizacija porabe energije za i MX 8ULP - napajalnik 1NXP AN13951 Optimizacija porabe energije za i MX 8ULP - napajalnik 2V strukturi član power_mode definira ciljne načine napajanja za to nastavitev PMIC, npr.ample, PD_RTD_PWR_MODE, kar pomeni, da se ta nastavitev uporabi, ko se način napajanja prenese v izklop. I2c_addr je naslov registra znotraj PMIC, i2c_data pa vrednost registra, ki jo je treba konfigurirati.
    Za več informacij o naslovu registra in bitih glejte PCA9460, podatkovni list IC za upravljanje porabe za i.MX 8ULP (dokument PCA9460DS).

  • Nastavite uPower za stikalo za vklop, stikalo za pomnilniško particijo in konfiguracijo PAD:
    NXP AN13951 Optimizacija porabe energije za i MX 8ULP - particijsko stikaloZa ti dve strukturi za prehod v način napajanja glejte lpm.c v predstavitvi power_mode_switch.
    Uporabnik lahko ohrani te nastavitve nedotaknjene, razen če so potrebne dodatne nastavitve, kot so vklop/izklop, nekateri moduli IP in pomnilniško polje. Uporabniki lahko vklopijo/izklopijo stikala za napajanje tako, da nastavijo swt_board[0]: SWT_BOARD(biti za vklop/izklop, maske). Definicijo bitov lahko najdete v Tabela 7. Vklop/izklop pomnilniškega polja je mogoče izvesti z nastavitvijo swt_mem[0]: SWT_MEM(SRAM Ctrl array bits, SRAM peripheral bits, masks). Definicijo bitov lahko najdete v  Tabela 8.
    Za več podrobnosti o nastavitvah prehoda načina napajanja za uPower glejte Uporabniški priročnik za vdelano programsko opremo uPower (dokument UPOWERFWUG).
  • Pokličite uPower za prehod moči. Kot primer vzemite vstop v način izklopaample, glejte funkcijo LPM_SystemPowerDown(void) v predstavitvi SDK power_mode_switch.

Ko se sistem prebudi iz načinov nizke porabe, mora uporabnik pred vstopom obnoviti vse nastavitve registrov. Na primerample, v nastavitvah IOMUXC lahko uporabnik uporabi statično matrično spremenljivko za shranjevanje vrednosti vseh PCR0 in njihovo obnovitev.

Domena APD aktivna z LPAV

Vzemite izdajo NXP Linux kot primerample operacijski sistem za domeno APD.
4.1 Preklopite RTD v način spanja
Ohranjanje domene RTD v načinu mirovanja lahko prihrani približno 20 mW ~ 40 mW v primerjavi z aktivnim načinom. Prepričajte se tudi, da so neuporabljeni priključki GPIO izklopljeni.
4.2 Onemogočite neuporabljene IP in zatiče v Linux DTS (drevo naprav)
Če onemogočite vozlišče naprave, se lahko izognete vklopu te naprave ali odklopu njene ure. Na primerample, da onemogočite GPU3D v viru drevesa naprav (DTS):
NXP AN13951 Optimizacija porabe energije za i MX 8ULP - tabelaČe želite preprečiti, da bi se stikalo za vklop PS7 vklopilo, onemogočite GPU3D. Če so DCNano, MIPI DSI/CSI in GPU2D vsi onemogočeni, PLL4 ni omogočen.
Če se želite izogniti omogočanju I/O PAD za te zatiče, onemogočite neuporabljene zatiče v vozliščih pinctrl.

4.3 Uporabite DVFS
i.MX 8ULP Linux podpira voltage in funkcije skaliranja frekvence, uradno znane kot DVFS na drugih platformah i.MX. VoltagFunkcije skaliranja e/frekvenčnosti niso dinamično implementirane v programsko opremo. Uporabnik mora preklopiti s sysfs jedra Linuxa. Za uporabo VFS naložite imx8ulp-evk-nd.dtb kot privzeto drevo naprav za zagon sistema. Nato vstopite v način nizkega vodila tako:NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 2Kernel izvede naslednje spremembe:

  • Zmanjšajte frekvenco jedra DDR s 528 MHz na 96 MHz.
  • Zmanjšajte takt APD NIC na 192 MHz z uporabo FRO kot vira takta namesto PLL.
  • Zmanjšajte takt LPAV AXI na 192 MHz z uporabo FRO kot vira takta namesto PLL.
  • Zmanjšajte takt procesorja A35 na 500 MHz.
  • Nizko na napajalni tračnici BUCK3 (VDD_DIG1/2) voltage na 1.0 V od 1.1 V.

Izhod in vrnitev v način visokega vodila:NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 94.4 Uporabite nominalni način pogona (VDD_DIG1/2 1.0 V)
i.MX 8ULP SoC deluje v načinu overdrive s privzetimi konfiguracijami U-Boot in jedra. Če visoka zmogljivost ni ključna zahteva, lahko uporabnik ob zagonu zažene SoC v načinu nominalnega pogona, da prihrani energijo. Je statična konfiguracija; uporabnik ne more dinamično spremeniti voltage ali frekvenca po zagonu.
U-Boot: Zgradite U-Boot s konfiguracijo imx8ulp_evk_nd_defconfig. Izvaja naslednje spremembe:

  • Med zagonom znižajte napajalno vodilo VDD_DIG1/2 (BUCK3) na 1.0 V.
  • Konfigurirajte takt DDR na 266 MHz namesto na 528 MHz.
  • Zmanjšajte takt omrežne kartice LPAV/APD na 192 MHz.
  • Zmanjšajte takt jedra A35 na 750 MHz.

Jedro: naloži imx8ulp-evk-nd.dtb ob zagonu. Zmanjša takt GPU2D/3D na 200 MHz, jedro HiFi4 DSP
takt na 260 MHz, uSDHC0 na 194 MHz in uSDHC1/2 na 97 MHz.

Domena RTD aktivna z LPAV

Vzemite primer uporabe »vedno na zaslonu«.ample, ki je na voljo s to opombo o aplikaciji. V tem primeru RTD dostopa do krmilnika zaslona DCNano za prikaz vsebine v PSRAM. Za podrobnosti glejte kodo, priloženo tej opombi o aplikaciji.

5.1 Omogoči domeno LPAV
Ko se Linux prekine, domeni AP in LPAV preideta v način izklopa. RTD mora najprej prevzeti lastništvo domene LPAV od APD:

  • SIM_RTD_SEC.SYSCTRL0[LPAV_MASTER_CTRL] = 0 // nastavi RTD kot glavno domeno domene LPAV
  • SIM_RTC_SEC.LPAV_MASTER_ALLOC_CTRL = 0 // dodeli glavni IP LPAV RTD
  • SIM_RTC_SEC.LPAV_SLAVE_ALLOC_CTRL = 0 // dodeli podrejeni IP LPAV RTD

Nato obnovite osnovno napajanje VDD_DIG2 (BUCK3) domene LPAV na 1.05 V ali 1.1 V, da zagotovite pravilno delovanje vseh IP-jev v LPAV z API-jem uPower upwr_vtm_pmic_config().

Končno izvlecite domeno LPAV iz načina izklopa v aktivni način:NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 5V primeru uporabe vedno vklopljenega zaslona mora uporabnik vklopiti naslednje, da začne delovati celoten cevovod zaslona:

  • Stikalo za vklop MIPI-DSI
  • Pomnilniške particije za krmilnik zaslona DCNano
  • MIPI-DSI
  • Medpomnilniki FlexSPI FIFO

5.3 Konfigurirajte ure
Domena LPAV ima samo en PLL za vire takta. Torej mora uporabnik omogočiti, da ta in njegov PFD poganjata IP-je.
Omogočite PLL4 s svojima PFD in PFDDIV

NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 6NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 7Izberite PLL4 PFD0DIV1 kot vir ure za DCNano in omogočite njegovo uro v PCC:NXP AN13951 Optimizacija porabe energije za i MX 8ULP – tabela 8Ko je stikalo za vklop vklopljeno in so ure pripravljene, lahko uporabnik uporablja gonilnike SDK za dostop in nadzor IP-jev domene LPAV.

Sorodna dokumentacija/viri

Tabela 6 navaja dodatne dokumente in vire, na katere se lahko obrnete za več informacij. Nekateri spodaj našteti dokumenti so morda na voljo samo na podlagi pogodbe o nerazkritju podatkov (NDA). Če želite zahtevati dostop do teh dokumentov, se obrnite na lokalnega terenskega inženirja za aplikacije (FAE) ali prodajnega predstavnika.

Tabela 6. Povezana dokumentacija/viri

Dokument Povezava/kako dostopati
PCA9460, IC za upravljanje porabe za i.MX 8ULP podatkovni list (dokument PCA9460DS) PCA9460DS
Uporabniški priročnik za vdelano programsko opremo uPower (dokument UPOWERFWUG) UPOWERFWUG
Referenčni priročnik za procesor i.MX 8ULP (dokument i.MX8 ULPRM) Obrnite se na lokalnega terenskega inženirja NXP (predstavnik. Obrnite se na lokalnega terenskega inženirja NXP (FAE) ali prodajnega predstavnika.
Procesor aplikacij i.MX 8ULP – industrijski izdelki (dokument IMX8ULPIEC) Obrnite se na lokalnega terenskega inženirja NXP (FAE) ali prodajnega predstavnika.
MCUXpresso SDK Builder https://mcuxpresso.nxp.com/en/welcome

Dodatek

Tabela 7 prikazuje ime, logično številko in bit za vsako vklopno stikalo.
Tabela 7. Napajalna stikala

funkcija Logično stikalo za vklop bit
CM33 PSO 0
Fuzija PS1 1
A35[0] Jedro PS2 2
A35[1] Jedro PS3 3
Predpomnilnik Mercury L2 [1] PS4 4
Hitri NIC / Mercury PS5 5
APD Periph PS6 6
GPU3D PS7 7
HiFi4 PS8 8
Krmilnik DDR PS9 9
PXP, EPDC PS13 10
MIPI-DSI PS14 11
MIPI CSI PS15 12
NIC AV / perif PS16 13
Fusion AO PS17 14
VAROVALKA PS18 15
uPower PS19 16

Tabela 8 prikazuje bit in ime vsakega krmilnika pomnilniške particije.

Tabela 8. Kontrolniki pomnilniške particije

SRAM CTRL ARRAY_O (APD/LPAV)
MaskaO
SRAM CTRL ARRAY_1 (RTD)
Maska1
bit Spomini pod nadzorom bit Spomini pod nadzorom
0 CA35 Core 0 L1 predpomnilnik 0 Casper RAM
1 CA35 Core 1 L1 predpomnilnik 1 DMAO RAM
2 L2 predpomnilnik 0 2 FIexCAN RAM
3 L2 predpomnilnik 1 3 FIexSPIO FIFO, medpomnilnik
4 Žrtev predpomnilnika L2/tag 4 FlexSPI1 FIFO, medpomnilnik
5 CAAM Secure RAM 5 Predpomnilnik CM33
6 DMA1 RAM 6 PowerQuad RAM
7 FlexSPI2 FIFO, medpomnilnik 7 ETF RAM
8 SRAMO 8 Sentinel PKC, Data RAM1, Inst RAMO/1
9 AD ROM 9 Sentinel ROM
10 USB TX/RX RAM 10 uPower IRAM/DRAM
11 uSDHCO FIFO RAM 11 uPower ROM
12 uSDHC1 FIFO RAM 12 CM33 ROM
13 uSDHC2 FIFO in USB1 TX/RX RAM 13 SSRAM particija 0
14 GIC RAM 14 SSRAM particija 1
15 ENET TX FIXO 15 SSRAM particija 2,3,4
16 Rezervirano (premik možganov) 16 SSRAM particija 5
17 DCNano Tile2Linear in RGB popravek 17 SSRAM particija 6
18 DCNano kazalec in FIFO 18 SSRAM particija 7_a (128 kB)
19 EPDC LUT 19 SSRAM particija 7_b (64 kB)
20 EPDC FIFO 20 SSRAM particija 7_c (64 kB)
21 DMA2 RAM 21 Sentinel Data RAM0, Inst RAM2
22 GPU2D RAM skupina 1 22 Rezervirano
23 GPU2D RAM skupina 2 23
24 GPU3D RAM skupina 1 24
25 GPU3D RAM skupina 2 25
26 HIFI4 predpomnilniki, IRAM, DRAM 26
27 Medpomnilniki ISI 27
28 MIPI-CSI FIFO 28
29 MIPI-DSI FIFO 29
30 PXP predpomnilniki, medpomnilniki 30
31 SRAM1 31

Opomba o izvorni kodi v dokumentu

Exampkoda datoteke, prikazana v tem dokumentu, ima naslednje avtorske pravice in licenco klavzule BSD-3:
Avtorska pravica LLLL NXP Nadaljnja distribucija in uporaba v izvorni in binarni obliki, s spremembami ali brez njih, sta dovoljeni, če so izpolnjeni naslednji pogoji:

  1. Nadaljnja distribucija izvorne kode mora ohraniti zgornje obvestilo o avtorskih pravicah, ta seznam pogojev in naslednjo zavrnitev odgovornosti.
  2. Nadaljnje distribucije v binarni obliki morajo reproducirati zgornje obvestilo o avtorskih pravicah, ta seznam pogojev in naslednjo zavrnitev odgovornosti v dokumentaciji in/ali drugem gradivu morajo biti priloženi distribuciji.
  3. Niti ime imetnika avtorskih pravic niti imena njegovih sodelujočih se ne smejo uporabljati za podporo ali promocijo izdelkov, pridobljenih iz te programske opreme, brez posebnega predhodnega pisnega dovoljenja.

IMETNIKI AVTORSKIH PRAVIC IN SODELUJOČI PONUJAJO TO PROGRAMSKO OPREMO "TAKŠNO, KOT JE" IN VSE IZRECNE ALI NAZNAČENE JAMSTVA, VKLJUČNO, VENDAR NE OMEJENO NA, NAZNAČENA JAMSTVA GLEDE PRIMERNOSTI ZA PRODAJO IN PRIMERNOSTI ZA DOLOČEN NAMEN. IMETNIK AVTORSKIH PRAVIC ALI SODELUJOČI V NOBENEM PRIMERU NISO ODGOVORNI ZA KAKRŠNO KOLI NEPOSREDNO, POSREDNO, NAKLJUČNO, POSEBNO, EKSEMPLARNO ALI POSLEDIČNO ŠKODO (VKLJUČNO, VENDAR NE OMEJENO NA NABAVO NADOMESTNEGA BLAGA ALI STORITEV; IZGUBO UPORABE , PODATKI ALI DOBIČKI; ALI PREKINITEV POSLOVANJA), NE glede na to, KI JE POVZROČEN IN NA KAKRŠNI KOLI TEORIJI ODGOVORNOSTI, BODISI V POGODBI, OBVEZNI ODGOVORNOSTI ALI DELKTU (VKLJUČNO Z MALOMARNOSTJO ALI DRUGAČEM), KI NA KAKRŠEN KOLI NAČIN IZHAJA IZ UPORABE TE PROGRAMSKE OPREME, TUDI ČE BI BIL OBVEŠČEN O MOŽNOSTI TAKŠNE PREKRIBE STAROST.

Zgodovina revizij

Tabela 9 povzema spremembe tega dokumenta od prve izdaje.

Tabela 9. Zgodovina revizij

Številka revizije Datum Vsebinske spremembe
0 30. maj 2023 Začetna izdaja

Pravne informacije

10.1 Definicije
Osnutek — Status osnutka na dokumentu pomeni, da je vsebina še vedno v internem pregleduview in predmet formalne odobritve, ki lahko povzroči spremembe ali dodatke. NXP Semiconductors ne daje nobenih zagotovil ali jamstev glede točnosti ali popolnosti informacij, vključenih v osnutek različice dokumenta, in ne prevzema nobene odgovornosti za posledice uporabe takih informacij.

10.2 Omejitve odgovornosti

Omejena garancija in odgovornost — Podatki v tem dokumentu naj bi bili točni in zanesljivi. Vendar pa NXP Semiconductors ne daje nobenih izrecnih ali implicitnih zagotovil ali jamstev glede točnosti ali popolnosti takih informacij in ne prevzema nobene odgovornosti za posledice uporabe takih informacij. NXP Semiconductors ne prevzema nikakršne odgovornosti za vsebino v tem dokumentu, če jo zagotavlja vir informacij zunaj NXP Semiconductors.
NXP Semiconductors v nobenem primeru ni odgovoren za kakršno koli posredno, naključno, kaznovalno, posebno ali posledično škodo (vključno – brez omejitev z izgubljenim dobičkom, izgubljenimi prihranki, prekinitvijo poslovanja, stroški, povezanimi z odstranitvijo ali zamenjavo katerega koli izdelka ali stroški predelave), ne glede na to ali taka škoda ne temelji na odškodninski odgovornosti (vključno z malomarnostjo), garanciji, kršitvi pogodbe ali kateri koli drugi pravni teoriji.
Ne glede na morebitno škodo, ki bi jo stranka lahko utrpela iz kakršnega koli razloga, je skupna in kumulativna odgovornost družbe NXP Semiconductors do stranke za izdelke, opisane v tem dokumentu, omejena v skladu s pogoji komercialne prodaje družbe NXP Semiconductors.
Pravica do sprememb — NXP Semiconductors si pridržuje pravico do sprememb informacij, objavljenih v tem dokumentu, vključno brez omejitev s specifikacijami in opisi izdelkov, kadar koli in brez predhodnega obvestila. Ta dokument nadomešča in nadomešča vse informacije, posredovane pred objavo tega dokumenta.
Primernost za uporabo — Izdelki NXP Semiconductors niso zasnovani, odobreni ali zanje ni zagotovljeno, da bi bili primerni za uporabo v sistemih ali opremi za vzdrževanje življenja, življenjsko kritičnih ali varnostno kritičnih sistemih ali opremi, niti v aplikacijah, kjer je razumno pričakovati, da bo okvara ali okvara izdelka NXP Semiconductors povzročila osebne poškodbe, smrt ali huda materialna ali okoljska škoda. NXP Semiconductors in njegovi dobavitelji ne prevzemajo nobene odgovornosti za vključitev in/ali uporabo izdelkov NXP Semiconductors v tako opremo ali aplikacije, zato je taka vključitev in/ali uporaba na lastno odgovornost stranke.

Aplikacije — Aplikacije, ki so tukaj opisane za katerega koli od teh izdelkov, so samo v ilustrativne namene. NXP Semiconductors ne daje nobene izjave ali jamstva, da bodo takšne aplikacije primerne za določeno uporabo brez nadaljnjega testiranja ali spreminjanja.
Stranke so odgovorne za načrtovanje in delovanje svojih aplikacij in izdelkov, ki uporabljajo izdelke NXP Semiconductors, NXP Semiconductors pa ne prevzema nobene odgovornosti za kakršno koli pomoč pri oblikovanju aplikacij ali izdelkov strank. Stranka je izključno odgovorna, da ugotovi, ali je izdelek NXP Semiconductors primeren in primeren za strankine aplikacije in načrtovane izdelke ter za načrtovano uporabo in uporabo strankine tretje stranke. Stranke morajo zagotoviti ustrezne zaščitne ukrepe za načrtovanje in delovanje, da zmanjšajo tveganja, povezana z njihovimi aplikacijami in izdelki.
NXP Semiconductors ne prevzema nobene odgovornosti v zvezi s kakršno koli napako, škodo, stroški ali težavo, ki temelji na kakršni koli pomanjkljivosti ali napaki v strankinih aplikacijah ali izdelkih ali aplikaciji ali uporabi strankine tretje stranke. Stranka je odgovorna za izvedbo vseh potrebnih testiranj strankinih aplikacij in izdelkov z uporabo izdelkov NXP Semiconductors, da bi se izognili privzetim aplikacijam in izdelkim ali aplikaciji ali uporabi s strani strankine tretje stranke. NXP v zvezi s tem ne prevzema nobene odgovornosti.

Pogoji komercialne prodaje — Izdelki NXP Semiconductors se prodajajo v skladu s splošnimi pogoji komercialne prodaje, kot so objavljeni na http://www.nxp.com/profile/pogoji, razen če ni drugače dogovorjeno v veljavni pisni individualni pogodbi. V primeru sklenitve posamezne pogodbe veljajo le pogoji posamezne pogodbe. NXP Semiconductors s tem izrecno nasprotuje uporabi strankinih splošnih pogojev v zvezi z nakupom izdelkov NXP Semiconductors s strani stranke.
Izvozni nadzor — Ta dokument in predmet(i), opisani v njem, so lahko predmet predpisov o nadzoru izvoza. Izvoz lahko zahteva predhodno dovoljenje pristojnih organov.

Primernost za uporabo v neavtomobilskih izdelkih — Če ta podatkovni list izrecno ne navaja, da je ta izdelek NXP Semiconductors primeren za avtomobile, izdelek ni primeren za uporabo v avtomobilih. Ni niti kvalificiran niti preizkušen v skladu z avtomobilskimi testiranji ali zahtevami uporabe. NXP Semiconductors ne prevzema nikakršne odgovornosti za vključitev in/ali uporabo neavtomobilskih izdelkov v avtomobilski opremi ali aplikacijah.
V primeru, da stranka uporablja izdelek za načrtovanje in uporabo v avtomobilskih aplikacijah v skladu z avtomobilskimi specifikacijami in standardi, mora stranka (a) uporabljati izdelek brez garancije NXP Semiconductors za izdelek za takšne avtomobilske aplikacije, uporabo in specifikacije in ( b) kadarkoli stranka uporablja izdelek za avtomobilske aplikacije, ki presegajo specifikacije NXP Semiconductors, je taka uporaba izključno na strankino lastno odgovornost in (c) stranka v celoti odškodnini družbi NXP Semiconductors za kakršno koli odgovornost, škodo ali neuspešne zahtevke glede izdelka, ki izhajajo iz strankine zasnove in uporabe izdelek za avtomobilske aplikacije, ki presegajo standardno garancijo NXP Semiconductors in specifikacije izdelkov NXP Semiconductors.

Prevodi — Neangleška (prevedena) različica dokumenta, vključno s pravnimi informacijami v tem dokumentu, je samo za referenco. V primeru neskladja med prevedeno in angleško različico prevlada angleška različica.
Varnost — Stranka razume, da so lahko vsi izdelki NXP izpostavljeni neznanim ranljivostim ali podpirajo uveljavljene varnostne standarde ali specifikacije z znanimi omejitvami. Stranka je odgovorna za načrtovanje in delovanje svojih aplikacij in izdelkov v celotnem življenjskem ciklu, da zmanjša učinek teh ranljivosti na strankine aplikacije in izdelke. Odgovornost stranke se razširi tudi na druge odprte in/ali lastniške tehnologije, ki jih podpirajo izdelki NXP za uporabo v aplikacijah stranke. NXP ne prevzema nobene odgovornosti za kakršno koli ranljivost. Stranka mora redno preverjati varnostne posodobitve NXP in ustrezno ukrepati.
Stranka bo izbrala izdelke z varnostnimi funkcijami, ki najbolje ustrezajo pravilom, predpisom in standardom predvidene uporabe, in sprejela končne odločitve glede oblikovanja svojih izdelkov ter je izključno odgovorna za skladnost z vsemi pravnimi, regulativnimi in varnostnimi zahtevami v zvezi z njenimi izdelki, ne glede na to. kakršnih koli informacij ali podpore, ki jih lahko zagotovi NXP.
NXP ima ekipo za odzivanje na incidente varnosti izdelkov (PSIRT) (dosegljiva na PSIRT@nxp.com), ki upravlja preiskavo, poročanje in objavo rešitev za varnostne ranljivosti izdelkov NXP.
NXP BV – NXP BV ni operativno podjetje in ne distribuira ali prodaja izdelkov.

Blagovne znamke

Obvestilo: Vse navedene blagovne znamke, imena izdelkov, imena storitev in blagovne znamke so last njihovih lastnikov.
NXP — besedni znak in logotip sta blagovni znamki NXP BV

AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart, DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed Enabled, NEON, POP, RealView, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINKPLUS, ULINKpro, μVision, Versatile — so blagovne znamke in/ali registrirane blagovne znamke Arm Limited (ali njegovih podružnic ali podružnic) v ZDA in/ali drugje. Povezana tehnologija je lahko zaščitena s katerim koli ali vsemi patenti, avtorskimi pravicami, dizajni in poslovnimi skrivnostmi. Vse pravice pridržane.
EdgeLock — je blagovna znamka NXP BV
i.MX — je blagovna znamka NXP BV

Upoštevajte, da so pomembna obvestila o tem dokumentu in izdelkih, opisanih v njem, vključena v razdelek »Pravne informacije«.

Logotip NXP© 2023 NXP BV
Za več informacij obiščite: http://www.nxp.com
Vse pravice pridržane.
Datum izida: 30. maj 2023
Identifikator dokumenta: AN13951
NXP Semiconductors”
AN13951
Optimizacija porabe energije za i.MX 8ULP

Dokumenti / Viri

NXP AN13951 Optimizacija porabe energije za i.MX 8ULP [pdf] Uporabniški priročnik
AN13951, AN13951 Optimiziranje porabe energije za i.MX 8ULP, Optimiziranje porabe energije za i.MX 8ULP, Poraba energije za i.MX 8ULP, Poraba za i.MX 8ULP, i.MX 8ULP

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *