STMicroelectronics-logo

STMicroelectronics STM32H5 Series Microcontrollers

STMicroelectronics-STM32H5-Series-Microcontrollers-hilber

Pêşkêş

Ev nîşeya serîlêdanê cacheya rêwerzê (ICACHE) û cache daneyê (DCACHE) vedibêje, kaşên yekem ên ku ji hêla STMicroelectronics ve hatine pêşve xistin. ICACHE û DCACHE yên ku li ser otobusa AHB ya pêvajoya Arm® Cortex®-M33 hatine destnîşan kirin di mîkrokontrolkera STM32 (MCU) de ku di tabloya jêrîn de hatî destnîşan kirin de têne bicîh kirin. Van cache destûrê didin bikarhêneran ku performansa serîlêdana xwe baştir bikin û dema ku rêwerz û daneyan ji bîranînên hundurîn û derveyî, an ji bo seyrûsefera daneyê ji bîranînên derveyî digirin, vexwarinê kêm bikin. Ev belge berê tîpîk dideamples ku taybetmendiyên ICACHE û DCACHE ronî bikin û veavakirina wan hêsan bikin.

Table 1. Berhemên sepandin

Awa series Product
Mîkrokontroller rêzikên STM32H5, rêzikên STM32L5, rêzikên STM32U5

Agahiyên giştî

Not:

Ev nîşeya serîlêdanê li ser mîkrokontrolkerên rêza STM32 ku amûrên bingehîn ên Arm® Cortex® ne derbas dibe. Arm li Dewletên Yekbûyî û / an cîhek din nîşanek tîcarî ya Arm Limited (an pargîdaniyên wê) ye.

ICACHE û DCACHE li serview

Ev beş pêvekek peyda dikeview ji navberên ICACHE û DCACHE yên ku di mîkrokontrolkerên bingehîn ên STM32 Arm® Cortex® de hatine bicîh kirin. Ev beş hûrgulî diagrama ICACHE û DCACHE û entegrasyona di mîmariya pergalê de dike.
Mîmariya zîrek rêza STM32L5
Ev mîmarî li ser bingeha matrixek otobusê ye ku dihêle gelek axayan (Cortex-M33, ICACHE, DMA1/2, û SDMMC1) bigihîjin xulamên pirjimar (wek bîra flash, SRAM1/2, OCTOSPI1, an FSMC). Nîgara jêrîn mîmariya zîrek a rêza STM32L5 diyar dike.

jimar 1. Mîmariya zîrek rêza STM32L5

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-1

Performansa Cortex-M33 bi karanîna navbeynkariya ICACHE ya 8 Kbyte ya ku bi otobusa xwe ya C-AHB ve hatî destnîşan kirin çêtir dibe, dema ku kod an daneyên ji bîranînên hundurîn (bîra flash, SRAM1, an SRAM2) bi otobusa bilez, û her weha ji bîranînên derve (OCTOSPI1 an FSMC) bi otobusê hêdî.
Mîmariya zîrek rêza STM32U5
Ev mîmarî li ser bingeha matrixek otobusê ye ku dihêle gelek axayan (Cortex-M33, ICACHE, DCACHE, GPDMA, DMA2D û SDMMC, OTG_HS, LTDC, GPU2D, GFXMMU) bigihîjin xulamên pirjimar (wek bîra flash, SRAM, BKPSRAM, OCTOSPI, an jî FSMC).Rewşa jêrîn mîmariya jîr a rêze STM32U5 vedibêje.

jimar 2. Mîmariya zîrek rêza STM32U5

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-2

Têkiliyên Cortex-M33 û GPU2D hem ji karanîna CACHE sûd werdigirin.

  • ICACHE performansa Cortex-M33 dema ku kod an daneyan ji bîranînên hundurîn bi navgîniya otobusa bilez (bîra flash, SRAM) û ji bîranînên derveyî bi otobusa hêdî (OCTOSPI1/2 û HSPI1, an FSMC) digire, performansa Cortex-M1 çêtir dike. DCACHE1 dema ku daneyan ji bîranînên hundurîn an derveyî bi riya s‑busê (GFXMMU, OCTOSPI2/1 û HSPIXNUMX, an FSMC) digire performansê baştir dike.
  •  DCACHE2 dema ku daneyan ji bîranînên hundurîn û derveyî (GFXMMU, bîra flash, SRAM, OCTOSPI2/1 û HSPI2, an FSMC) bi otobusa porta M1-ê digire, performansa GPU0D çêtir dike.

Mîmariya zîrek rêza STM32H5
STM32H523/H533, STM32H563/H573 û STM32H562 mîmariya zîrek Ev mîmarî li ser bingehek otobusek matrixê ye ku dihêle gelek axayan (Cortex-M33, ICACHE, DCACHE, GPDMA, Ethernet û SDMMC) bigihîjin gelek xulamên flash, bîranînên BKRAM (sKPSM). , OCTOSPI û FMC). Nîgara jêrîn mîmariya zîrek a rêza STM32H5 diyar dike.

jimar 3. STM32H563 / H573 û STM32H562 mîmariya jîr series

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-3

Cortex-M33 ji karanîna CACHE sûd werdigire.

  • ICACHE dema ku kod an daneyan ji bîranînên hundurîn bi otobusek bilez (bîra flash, SRAM) û ji bîranînên derveyî bi otobusek hêdî (OCTOSPI û FMC) digire, performansa Cortex-M33 çêtir dike.
  • DCACHE dema ku daneyan ji bîranînên derveyî bi otobusa hêdî (OCTOSPI û FMC) digire, performansê baştir dike.

STM32H503 mîmariya jîr
Ev mîmarî li ser bingeha matrixek otobusê ye ku dihêle gelek axayan (Cortex-M33, ICACHE û GPDMA) bigihîjin xulamên pirjimar (wek bîra flash, SRAM û BKPSRAM). Nîgara jêrîn mîmariya zîrek a rêza STM32H5 diyar dike.

jimar 4. STM32H503 series mîmariya jîr

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-4

Cortex-M33 ji karanîna CACHE sûd werdigire.

  • ICACHE performansa Cortex-M33 çêtir dike dema ku kod an daneya ji bîranînên hundurîn bi otobusa bilez (bîra flash, SRAM) digire.

Diyagrama bloka ICACHE
Di wêneya jêrîn de diyagrama bloka ICACHE tê dayîn.

jimar 5. Diyagrama bloka ICACHE

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-5

Bîra ICACHE dihewîne:

  • ew TAG bîranîn bi:
    • navnîşan tags ew destnîşan dikin ka kîjan dane di bîra daneya cache de hene
    • bits derbasdar
  •  bîra daneyê, ku tê de daneyên cached hene

Diyagrama bloka DCACHE
Di wêneya jêrîn de diyagrama blokê ya DCACHE tê dayîn.

jimar 6. Diyagrama bloka DCACHE

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-6

Bîra DCACHE dihewîne:

  • ew TAG bîranîn bi:
    • navnîşan tags ew destnîşan dikin ka kîjan dane di bîra daneya cache de hene
    • bits derbasdar
    • bits îmtiyazê
    • perçeyên qirêj
  • bîra daneyê, ku tê de daneyên cached hene

Taybetmendiyên ICACHE û DCACHE

axayên dualî
ICACHE digihîje matrixa otobusê ya AHB an li ser:

  • Yek porta masterê AHB: master1 (otobusa bilez)
  • Du portên masterê AHB: master1 (otobusa bilez) û master2 (otobusa hêdî)

Ev taybetmendî dihêle ku seyrûsefer dema ku bigihîje deverên cûda yên bîranînê (wek bîra flash hundurîn, SRAM-ya hundurîn û bîranînên derveyî) were veqetandin, da ku rawestgehên CPU li ser windakirina cache kêm bikin. Tabloya jêrîn herêmên bîranîn û navnîşanên wan kurt dike.

Tablo 2. Herêmên bîrê û navnîşanên wan

Peripheral Gihîştina bîra Cacheable Ne gihîştina bîranîna cacheable
 

 

Awa

 

 

Nav

 

 

Navê hilberê û mezinahiya herêmê

 

 

Navê otobusê

 

Navnîşana destpêkê ya herêma neewle

Navnîşana destpêkê ya herêma gazîkirî ya ewle, ne ewledar  

 

Navê otobusê

 

Navnîşana destpêkê ya herêma neewle

Navnîşana destpêkê ya herêma gazîkirî ya ewle, ne ewledar
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Navbend

 

 

 

 

 

 

 

BIRÛSK

STM32H503 128 KB  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ICACHE

otobusa bilez

 

 

 

 

 

 

 

0x0800 0000

N/A  

 

 

 

 

 

 

N/A

 

 

 

 

 

 

 

N/A

 

 

 

 

 

 

 

N/A

STM32L5

series / STM32U535 / 545 / STM32H523 / 533

 

 

512 KB

 

 

 

 

 

 

0x0C00 0000

STM32U575/ 585

STM32H563/ 573/562

 

 

2 MB

STM32U59x/

5Ax/5Fx/5Gx

4 MB
 

 

 

 

 

 

SRAM1

STM32H503 16 KB  

 

 

 

 

 

0x0A00 0000

N/A  

 

 

 

 

 

 

 

S-bus

 

 

 

 

 

 

0x2000 0000

 

 

 

 

 

 

0x3000 0000

STM32L5

series/ STM32U535/ 545/575/585

 

192 KB

 

 

 

 

 

0x0E00 0000

STM32H523/ 533 128 KB
STM32H563/ 573/562 256 KB
STM32U59x/

5Ax/5Fx/5Gx

768 KB
 

 

 

 

SRAM2

STM32H503

doranî

16 KB 0x0A00 4000 N/A 0x2000 4000 N/A
STM32L5

series/ STM32U535/ 545/575/585

 

64 KB

 

0x0A03 0000

 

0x0E03 0000

 

0x2003 0000

 

0x3003 0000

STM32H523/ 533 64 KB  

0x0A04 0000

 

0x0E04 0000

 

0x2004 0000

 

0x3004 0000

Peripheral Gihîştina bîra Cacheable Ne gihîştina bîranîna cacheable
 

 

 

 

 

 

 

 

 

Navbend

 

 

SRAM2

STM32H563/ 573/562 80 KB  

 

 

 

 

 

 

 

ICACHE

otobusa bilez

0x0A04 0000 0x0E04 0000  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S-bus

0x2004 0000 0x3004 0000
STM32U59x/

5Ax/5Fx/5Gx

64 KB 0x0A0C 0000 0x0E0C 0000 0x200C 0000 0x300C 0000
 

 

 

 

SRAM3

STM32U575/ 585 512 KB 0x0A04 0000 0x0E04 0000 0x2004 0000 0x3004 0000
STM32H523/ 533 64 KB  

 

0x0A05 0000

 

 

0x0E05 0000

 

 

0x2005 0000

 

 

0x3005 0000

STM32H563/ 573/562 320 KB
STM32U59x/

5Ax/5Fx/5Gx

832 KB 0x0A0D 0000 0x0E0D 0000 0x200D 0000 0x300D 0000
SRAM5 STM32U59x/

5Ax/5Fx/5Gx

832 KB 0x0A1A 0000 0x0E1A 0000 0x201A 0000 0x301A 0000
SRAM6 STM32U5Fx/

5Gx

512 KB 0x0A27 0000 0x0E27 0000 0x2027 0000  

 

 

 

 

 

 

 

 

 

 

 

N/A

 

 

 

 

 

 

 

 

 

 

 

Xûkirînî

HSPI1 STM32U59x/

5Ax/5Fx/5Gx

 

 

 

 

 

 

 

 

 

 

 

256 MB

 

 

 

 

 

 

 

 

 

 

ICACHE

otobusê hêdî

(1)

 

 

 

 

 

 

Navnîşana navnavê di rêza [0x0000 0000 de

ber 0x07FF FFFF] an [0x1000 0000:0x1FFF

FFFF] ji hêla taybetmendiya ji nû ve nexşeyê ve hatî destnîşan kirin

 

 

 

 

 

 

 

 

 

 

 

N/A

0xA000 0000
FMC SDRAM STM32H563/ 573/562 0xC000 0000
 

OCTOSPI1

bank neewle

STM32L5/U5

doranî

STM32H563/ 573/562

 

 

0x9000 0000

 

Banka FMC 3

neewle

STM32L5/U5

doranî

STM32H563/ 573/562

 

 

0x8000 0000

OCTOSPI2

bank neewle

STM32U575/

585/59x/5Ax/

5Fx/5Gx

 

0x7000 0000

 

Banka FMC 1

neewle

STM32L5/U5

doranî

STM32H563/ 573/562

 

 

0x6000 0000

1. Dema ku ji nû ve nexşeya herêmên weha were hilbijartin.

1-rê li hember ICACHE 2-rê
Ji hêla xwerû, ICACHE di moda xebitandina asociative de tête mîheng kirin (du awayên çalakkirî), lê gengaz e ku ICACHE di moda nexşeya rasterast (yek-alî çalakkirî) de were mîheng kirin, ji bo serîlêdanên ku hewceyê xerckirina hêzek pir kêm in. Veavakirina ICACHE bi bit WAYSEL di ICACHE_CR de wiha tê kirin:

  • WAYSEL = 0: moda xebitandina nexşeya rasterast (1-rê)
  • WAYSEL = 1 (xweserî): moda xebitandinê ya hevgirtî (2-alî)

Table 3. 1-rêya beramberî 2-rêya ICACHE

Parametre 1-rêya ICACHE 2-rêya ICACHE
Mezinahiya cache (Kbytes) 8(1)/32(2)
Cache çend awayan 1 2
Mezinahiya xeta cache 128 bit (16 bytes)
Hejmara xetên cache 512(1)/2048(2) 256 (1)/1024 (2) her rê
  1. Ji bo rêzikên STM32L5 / STM32H5 / STM32U535/545/575/585
  2. For STM32U59x/5Ax/5Fx/5Gx

Tîpa teqînê
Hin bîranînên Octo-SPI piştgirî didin teqîna WRAP-ê, ku feyda performansa taybetmendiya peyva-yekemîn a krîtîk peyda dike. Cûreya teqîna ICACHE ya danûstendina bîranîna AHB ji bo herêmên ji nû ve hatî veguheztin tê mîheng kirin. Ew teqîna zêde an teqîna WRAP-ê, ku bi bit HBURST-ê di qeyda ICACHE_CRRx de hatî hilbijartin, bicîh tîne. Cûdahiyên di navbera WRAP û teqînên zêde de li jêr têne dayîn (herweha li wêneyê jî binêre):

  • WRAP teqiya:
    • mezinahiya xeta cache = 128 bit
    • burst to start address = navnîşana peyva yekem daneya ku ji hêla CPU ve hatî xwestin
  •  Teqîna zêde:
    • mezinahiya xeta cache = 128 bit
    • navnîşana destpêkî teqiya = navnîşana ku li ser sînorê xeta cache ya ku peyva tê xwestin tê de hatiye rêz kirin

jimar 7. Zêdebûn li hember teqîna WRAP

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-9

Herêmên cacheable û taybetmendiya remapping
ICACHE bi otobusa C-AHB ve bi Cortex-M33 ve girêdayî ye û herêma kodê ji navnîşanan [0x0000 0000 ber 0x1FFF FFFF] vedişêre. Ji ber ku bîranînên derve li navnîşanek di rêza [0x6000 0000 heta 0xAFFF FFFF] de têne nexşe kirin, ICACHE taybetmendiyek ji nû ve nexşeyê piştgirî dike ku dihêle her herêmek bîranîna derveyî li navnîşek di rêza [0x0000 0000 heya 0x07FF FFFF] de ji nû ve were nexşandin. [0x1000 0000 ber 0x1FFF FFFF], û bi otobusa C-AHB ve were gihîştin. Bi vê taybetmendiyê heya çar deverên bîranîna derve dikarin ji nû ve werin nexşandin. Dema ku herêmek ji nû ve were nexşe kirin, ger ICACHE neçalak be an jî ger danûstendin ne cache be jî, operasyona remap pêk tê. Herêmên bîra cacheable dikare ji hêla bikarhêner ve di yekîneya parastina bîranînê (MPU) de were veqetandin û bernamekirin. Tabloya jêrîn mîhengên bîranînên rêzikên STM32L5 û STM32U5 kurt dike.

Tablo 4. Veavakirina bîranînên rêzikên STM32L5 û STM32U5

 

bîra Product

Cacheable

(Bernameya MPU)

Di ICACHE de ji nû ve hatî çêkirin

(Bernameya ICACHE_CRRx)

bîra Flash Erê an Na  

Ne hewce ye

SRAM nayê pêşniyar kirin
Bîranînên derve (HSPI/ OCTOSPI an FSMC) Erê an Na Pêdivî ye ku ger bikarhêner koda derveyî li ser otobusa C-AHB bigire (di otobusa S-AHB de)

Feydeya nûvekirina bîranîna derveyî ya ICACHE
The exampLe di jimareya jêrîn de destnîşan dike ka meriv çawa ji performansa pêşkeftî ya ICACHE di dema darvekirina kodê an daneya xwendinê de dema ku bigihîje bîranînek Octo-SPI-ya derveyî ya 8-Mbyte (wek bîra flash-ya derveyî an RAM) sûd werdigire.

jimar 8. Remap bîra Octo-SPI example

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-7

Ji bo nûvekirina vê bîranîna derveyî gavên jêrîn hewce ne:

Veavakirina OCTOSPI ji bo bîranîna derveyî

Têkiliya OCTOSPI-ê mîheng bikin da ku meriv di moda Nexşeya Bîrê de bigihîje bîra derveyî (bîra derve wekî bîranînek hundurîn ku li herêma [0x9000 0000 ber 0x9FFF FFFF] ve hatî nexşeyê tê dîtin). Ji ber ku mezinahiya bîra derveyî 8 Mbyte ye, ew li herêmê [0x9000 0000 heta 0x907F FFFF] tê dîtin. Bîra derve ya li vê herêmê bi rêya S‑busê tê gihîştin û nayê cachekirin. Pêngava paşîn veavakirina ICACHE nîşan dide da ku vê herêmê ji nû ve nexşe bike.
Not: Ji bo veavakirina OCTOSPI-yê di moda nexşeya bîranînê de, li ser mîkrokontrollerên STM32 (AN5050) serî li têbînîya serîlêdanê ya Octo-SPI bidin

Veavakirina ICACHE ji bo ji nû ve nexşeya devera nexşeya bîranîna derveyî
8 Mbytên ku li herêma [0x9000 0000 heta 0x907F FFFF] hatine danîn ji nû ve li herêma [0x1000 0000 ber 0x107F FFFF] têne veguheztin. Dûv re ew dikarin bi otobusa hêdî (otobusa ICACHE master2) werin gihîştin.

  • Veavakirina qeyda ICACHE_CR
    • ICACHE bi EN = 0 neçalak bike.
    • Bi WAYSEL = 1 an 2, bi rêzê ve 0-rê an 1-rê (li gorî hewcedariyên serîlêdanê ve girêdayî ye) hilbijêrin.
  • Veavakirina qeyda ICACHE_CRRx (heta çar herêm, x = 0 heta 3)
    • Bi BASEADDR [0:1000] = 0000x28 navnîşana bingehîn 21x0 80 (navnîşana remapê) hilbijêrin.
    • Mezinahiya herêmê 8-Mbyte hilbijêrin ku bi RSIZE[2:0] = 0x3 ji nû ve nexşeyê bikin.
    • Navnîşana 0x9000 0000 ji nû ve hatî çêkirin REMAPADDR[31:21] = 0x480 hilbijêrin.
    • Ji bo bîranînên derveyî bi MSTSEL = 2 porta ICACHE AHB master1 hilbijêrin.
    • Tîpa teqîna WRAP bi HBURST = 0 hilbijêrin.
    • Ji nû ve nexşeyê ji bo herêma x bi REN = 1 çalak bike.

Nîgara jêrîn destnîşan dike ka deverên bîranînê bi IAR-ê re piştî çalakkirina remapê çawa têne dîtin.

jimar 9. Herêmên bîrê ji nû ve neqşkirinample

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-8

Bîra derve ya 8-Mbyte naha ji nû ve hatî çêkirin û dikare li herêma [0x1000 0000 ber 0x107F FFFF] ve were gihandin.

ICACHE çalak bike

  • Veavakirina qeyda ICACHE_CR ICACHE bi EN = 1 çalak bike.

çavdêrên Hit-û-miss
ICACHE ji bo analîzkirina performansê du çavdêran peyda dike: çavdêriyek lêdanê ya 32-bit û çavdêriyek xelet a 16-bit.

  • Monitoravdêrê danûstendinên AHB-a cache-ê li ser porta cache ya xulamê ku li naveroka ICACHE dihejmêre (daneyên hilanîn ên ku jixwe di cache-ê de peyda dibin). Hejmara çavdêriya lêdanê di qeyda ICACHE_HMONR de heye.
  • Monitoravdêr danûstendinên AHB-a cacheable li ser porta cache ya xulamê ku naveroka ICACHE ji bîr dike dihejmêre (daneyên ku jixwe di cache de peyda nabin). Hejmara çavdêriya wenda di qeyda ICACHE_MMONR de heye.

Not:

Van her du çavdêran dema ku digihîjin nirxên xwe yên herî zêde bi ser nakevin. Van çavdêran ji bitsên jêrîn di qeyda ICACHE_CR de têne rêve kirin:

  • HITMEN bit (bi rêzê bit MISSMEN) ji bo çalakkirin/rawestandina lêdanê (bi rêzê jî bêriya) monitor
  • HITMRST bit (bi rêzê bit MISSMRST) ji bo sifirkirina lêdanê (bi rêzê jî bêriya) monitor Bi xweber, van çavdêran ji bo kêmkirina xerckirina hêzê neçalak dibin.

Parastina ICACHE
Nermalava dikare ICACHE betal bike bi danîna bit CACHEINV di qeyda ICACHE_CR de. Ev kiryar tevahiya cacheyê betal dike, wê vala dike. Di vê navberê de, heke hin herêmên ji nû ve nexşandî werin çalak kirin, taybetmendiya remapê hîn jî çalak e, tewra dema ku ICACHE betal be. Ji ber ku ICACHE tenê danûstendinên xwendinê birêve dibe û danûstendinên nivîsandinê îdare nake, ew di mijara nivîsandinê de hevrêziyê peyda nake. Ji ber vê yekê, nermalavê piştî bernamekirina herêmek pêdivî ye ku ICACHE betal bike.

ewlehiya ICACHE
ICACHE dorhêlek ewledar e ku dikare bi navgîniya tomara veavakirina ewledar a GTZC TZSC ve wekî ewle were mîheng kirin. Dema ku ew wekî ewledar were mîheng kirin, tenê gihîştinên ewledar ji qeydên ICACHE re têne destûr kirin. ICACHE di heman demê de dikare bi navgîniya tomara veavakirina îmtiyaza GTZC TZSC ve wekî îmtiyaz were mîheng kirin. Dema ku ICACHE wekî îmtiyaz tê mîheng kirin, tenê gihîştinên îmtiyazê ji qeydên ICACHE re têne destûr kirin. Bi xwerû, ICACHE bi navgîniya GTZC TZSC ne ewledar û ne-îmtiyaz e.

Bûyer û rêveberiya astengkirinê

ICACHE dema ku têne kifş kirin, bi danîna ala ERRF-ê li ICACHE_SR, xeletiyên fonksiyonel birêve dibe. Ger bit ERRIE di ICACHE_IER de were saz kirin jî navberek dikare were çêkirin. Di bûyera betalkirina ICACHE de, dema ku rewşa mijûlbûna cache qediya, ala BSYENDF li ICACHE_SR tê danîn. Ger bit BSYENDIE di ICACHE_IER de were danîn jî dikare navberek çêbibe. Tabloya li jêr alayên navbir û bûyerê yên ICACHE navnîş dike.

Tablo 5. ICACHE navbirî û bits rêveberiya bûyerê

Fêhrist Navê bit Danasîna bit Cureyê gihîştina bit
 

ICACHE_SR

BIKAR Cache operasiyonek betalkirina tevahî pêk tîne  

Tenê xwendin

BSYENDF Operasyona betalkirina cache qediya
ŞAŞÎ Di dema xebata cachekirinê de xeletiyek derket
 

ICACHE_IER

ERRIE Ji bo xeletiya cache qutbûnê çalak bike  

Xwendin/nivîsandin

BSYENDIE Di rewşa ku operasyona betalkirinê qediya de qutbûnê çalak bike
 

ICACHE_FCR

CERRF ERRF di ICACHE_SR de paqij dike  

Tenê binivîse

CBSYENDF BSYENDF li ICACHE_SR paqij dike

taybetmendiyên DCACHE
Armanca cacheya daneyê ew e ku barkirinên daneya bîranîna derveyî û depoyên daneyê yên ku ji pêvajoyê an ji cîhek din a sereke ya otobusê tê veşêre. DCACHE hem danûstandinên xwendin û nivîsandinê birêve dibe.
trafîka cacheability DCACHE

DCACHE bîranînên derveyî ji navgîniya porta masterê bi otobusa AHB vedişêre. Daxwazên bîranîna hatinî li gorî taybetmendiya girtina bîranîna danûstendinê ya AHB wekî cacheable têne destnîşankirin. Siyaseta nivîsandina DCACHE li gorî taybetmendiya bîranînê ya ku ji hêla MPU ve hatî mîheng kirin ve wekî nivîsandin-rêveberî an paş-venivîsandinê tê pênase kirin. Dema ku herêmek wekî ne-cache were mîheng kirin, DCACHE tê derbas kirin.

 Tablo 6. DCACHE cacheability ji bo danûstandina AHB

Taybetmendiya lêgerîna AHB Taybetmendiya tampon a AHB Cacheability
0 X Bixwîne û binivîse: ne-cacheable
 

1

 

0

Bixwîne: cacheable

Binivîsin: (cacheable) binivîsin

 

1

 

1

Bixwîne: cacheable

Binivîsin: (cacheable) binivîsin-vegerandin

herêmên cacheable DCACHE
Ji bo rêzikên STM32U5, pêwendiya xulamê DCACHE1 bi otobusa S-AHB ve bi Cortex-M33 ve girêdayî ye û GFXMMU, FMC, û HSPI/OCTOSPI-an vedişêre. Têkiliya xulamê DCACHE2 bi otobusa porta M2 ve bi DMA0D-ê ve girêdayî ye, û hemî bîranînên hundurîn û derveyî (ji bilî SRAM4 û BRKPSRAM) vedigire. Ji bo rêzikên STM32H5, pêwendiya xulamê DCACHE bi navgîniya bîranînên derveyî yên S-AHB bi navgîniya FMC û OCTOSPI ve bi Cortex-M33 ve girêdayî ye.

Tablo 7. Herêmên cacheable DCACHE û navrû

Herêma navnîşana bîranîna cacheable DCACHE1 navberên cacheable DCACHE2 navberên cacheable
GFXMMU X X
SRAM1  

 

 

N/A

X
SRAM2 X
SRAM3 X
SRAM5 X
SRAM6 X
HSPI1 X X
OCTOSPI1 X X
BANKÊN FMC X X
OCTOSPI2 X X

Not

Hin navber di hin hilberan de nayên piştgirî kirin. Binêre Figure 1 an pirtûka referansa hilberê ya taybetî.
Tîpa teqînê
Wek ICACHE, DCACHE teqînên zêde û pêçandî piştgirî dike (binihêre Beş 3.1.3). Ji bo DCACHE, celebê teqînê di nav bit HBURST de di DCACHE_CR de tê mîheng kirin.
veavakirina DCACHE
Di dema bootkirinê de, DCACHE ji hêla xwerû ve tê neçalak kirin ku daxwazên bîranîna xulam rasterast ji porta sereke re têne şandin. Ji bo çalakkirina DCACHE, divê bit EN di qeyda DCACHE_CR de were danîn. Çavdêrên lêdan-û-miss DCACHE ji bo analîzkirina performansa cache çar çavdêran pêk tîne:

  • Du çavdêriya lêdanê ya 32-bit (R/W): Hejmara caran dihejmêre ku CPU daneyan di bîra cache de dixwîne an dinivîse bêyî ku li ser portên masterê DCACHE danûstendinek çêbike (daneyên ku berê di cache de hene). Hejmarên çavdêrên lêdanê (R/W) bi rêzê ve di qeydên DCACHE_RHMONR û DCACHE_WHMONR de hene.
  • Du çavdêrên 16-bit (R/W) yên bêpar: Hejmara carên ku CPU daneya di bîra cache de dixwîne an dinivîse bijmêre û li ser portên sereke yên DCACHE danûstendinek çêdike, da ku daneyan ji herêma bîranînê bar bike (daneyên hilanîn ne jixwe di cache de heye). Di tomarên DCACHE_RMMONR û DCACHE_WMMONR de jimarkerên (R/W) yên mêtinger hene.

Not:

Van çar çavdêran dema ku digihîjin nirxên xwe yên herî zêde bi ser nakevin. Van çavdêran ji bitsên jêrîn di qeyda DCACHE_CR de têne rêve kirin:

  • WHITMAN bit (bi rêzê bit WMISSMEN) ji bo çalakkirin/ rawestandina lêdana nivîsandinê (bi rêzê ve bêriya) monitor
  • bit RHITMEN (bi rêzê bit RMISSMEN) ji bo çalakkirin/rawestandina lêdana xwendinê (bi rêzê ve winda) monitor
  • bit WHITMRST (bi rêzê bit WMISSMRST) ji bo sifirkirina çavdêriya lêdana nivîsandinê (bi rêzê jî winda)
  • bit RHITMRST (bi rêzê bit RMISSMRST) ji bo vesazkirina lêdana xwendinê (bi rêzê jî bêriya) monitor

Bi xwerû, van çavdêran ji bo kêmkirina xerckirina hêzê neçalak in.

parastina DCACHE
DCACHE gelek operasyonên lênêrînê pêşkêşî dike ku dikarin bi navgîniya CACHECMD[2:0] di DCACHE_CR de bêne mîheng kirin.

  • 000: bê operasyon (pêşniyaz)
  • 001: range paqij. Di cache de hin rêzek paqij bikin
  • 010: range betal bike. Rêjeyek diyarkirî di cache de betal bike
  • 010: rêzê paqij û betal bike. Di cache de hin rêzek paqij bikin û betal bikin

Rêjeya hilbijartî ji hêla:

  • Tomara CMDSTARTADDR: navnîşana destpêkê ya fermanê
  • Tomara CMDENDADDR: navnîşana dawiya fermanê

Not:

Berî ku CACHECMD were nivîsandin divê ev qeyd were danîn. Dema ku bit STARTCMD di qeyda DCACHE_CR de were danîn, parastina fermana cache dest pê dike. DCACHE di heman demê de bi danîna bit CACHEINV di qeyda DCACHE_CR de betalkirina tevahî CACHE piştgirî dike.

ewlekariya DCACHE
DCACHE dorhêlek ewledar e ku dikare bi navgîniya tomara veavakirina ewledar a GTZC TZSC ve wekî ewle were mîheng kirin. Dema ku ew wekî ewledar were mîheng kirin, tenê gihîştinên ewledar ji qeydên DCACHE re têne destûr kirin. DCACHE di heman demê de dikare bi navgîniya tomara veavakirina îmtiyazê ya GTZC TZSC wekî îmtiyaz were mîheng kirin. Dema ku DCACHE wekî îmtiyaz tê mîheng kirin, tenê gihîştinên îmtiyaz ji qeydên DCACHE re têne destûr kirin. Ji hêla xwerû, DCACHE bi navgîniya GTZC TZSC ne ewledar û ne-îmtiyaz e.

Bûyer û rêveberiya astengkirinê
DCACHE dema ku têne kifş kirin, bi danîna ala ERRF-ê li DCACHE_SR, xeletiyên fonksiyonel birêve dibe. Ger bit ERRIE di DCACHE_IER de were saz kirin jî navberek dikare were çêkirin. Di bûyera betalkirina DCACHE de, dema ku rewşa mijûlbûna cache qediya, ala BSYENDF li DCACHE_SR tê danîn. Ger bit BSYENDIE di DCACHE_IER de were saz kirin jî navberek dikare were çêkirin. Rewşa fermana DCACHE dikare bi CMDENF û BUSYCMDF bi DCACHE_SR ve were kontrol kirin Ger bit CMDENDIE di DCACHE_IER de were saz kirin jî navberek dikare were çêkirin. Tabloya jêrîn navberên DCACHE û alayên bûyerê destnîşan dike

Tablo 8. DCACHE Biteyên rêveberiya navbirî û bûyeran

Fêhrist Fêhrist Danasîna bit Cureyê gihîştina bit
 

 

 

DCACHE_SR

BIKAR Cache operasiyonek betalkirina tevahî pêk tîne  

 

 

Tenê xwendin

BSYENDF Operasyona tam betalkirina cache qediya
BUSYCMDF Cache fermanek rêzê pêk tîne
CMDENDF A dawiya fermana range
ERRF Di dema xebata cachekirinê de xeletiyek derket
 

DCACHE_IER

ERRIE Ji bo xeletiya cache qutbûnê çalak bike  

Xwendin/nivîsandin

CMDENDIE Di dawiya fermanê de qutbûnê çalak bike
BSYENDIE Di dawiya operasyona betalkirina tevahî de qutbûnê çalak bike
 

DCACHE_FCR

CERRF ERRF di DCACHE_SR de paqij dike  

Tenê binivîse

CCMDENDF CMDENDF li DCACHE_SR paqij dike
CBSYENDF BSYENDF li DCACHE_SR paqij dike

Performansa ICACHE û DCACHE û xerckirina hêzê

Bikaranîna ICACHE û DCACHE dema ku bigihîjin bîranînên derveyî performansa serîlêdanê çêtir dike. Tabloya jêrîn bandora ICACHE û DCACHE li ser darvekirina CoreMark® dema ku gihîştina bîranînên derveyî nîşan dide.

Tablo 9. Performansa ICACHE û DCACHE li ser darvekirina CoreMark bi bîranînên derveyî

(1)
Koda CoreMark Daneyên CoreMark veavakirina ICACHE veavakirina DCACHE xala CoreMark / Mhz
Bîra Flash Navxweyî SRAM navxweyî Çalakkirî (2-awa) Bêmecel 3.89
Bîra Flash Navxweyî Octo-SPI PSRAM ya derve (S-bus) Çalakkirî (2-awa) Enabled 3.89
Bîra Flash Navxweyî Octo-SPI PSRAM ya derve (S-bus) Çalakkirî (2-awa) Bêmecel 0.48
Octo-SPI Flashê Derveyî (C-otobus) SRAM navxweyî Çalakkirî (2-awa) Bêmecel 3.86
Octo-SPI Flashê Derveyî (C-otobus) SRAM navxweyî Bêmecel Bêmecel 0.24
Bîra Flash Navxweyî SRAM navxweyî Bêmecel Bêmecel 2.69

Mercên Testê:

  • Hilbera bicîhkirî: STM32U575/585
  • Frekansa pergalê: 160 MHz.
  • Bîra derveyî Octo-SPI PSRAM: 80 MHz (moda DTR).
  • Bîra flash Octo-SPI ya derveyî: 80 MHz (moda STR).
  • Berhevkar: IAR V8.50.4.
  • PÊŞGERÎNA Flash-a Navxweyî: LIVE.

Bikaranîna ICACHE û DCACHE dema ku bigihîjin bîranînên hundurîn û derveyî vexwarina hêzê kêm dike. Tabloya jêrîn bandora ICACHE li ser xerckirina hêzê di dema darvekirina CoreMark de nîşan dide.

Tablo 10. Bandora ICACHE ya darvekirina CoreMark li ser xerckirina hêzê

veavakirina ICACHE Xerca hêza MCU (mA)
Çalakkirî (2-awa) 7.60
Çalakkirî (1-alî) 7.13
Bêmecel 8.89
  1. Mercên Testê:
    • Hilbera bicîhkirî: STM32U575/585
    • Koda CoreMark: bîra Flash ya navxweyî.
    • Daneyên CoreMark: SRAM navxweyî.
    • Bîra Flash-a Navxweyî PÊŞGETIN: LIVE.
    • Frekansa pergalê: 160 MHz.
    • Berhevkar: IAR V8.32.2.
    • Voltage range: 1.
    • SMPS: LIVE.
  2. Veavakirina komeleyê ya awayê ji bo koda ku bi tevahî di cache de nayê barkirin ji konfigurasyona komeleyê ya 1-rê bikêrtir e. Di vê navberê de, cache-ya komeleyê ya yek-alî hema hema her gav ji cache-ya komeleyê ya 1-alî jêhatîtir e. Pêdivî ye ku her kod di her du mîhengên hevrêziyê de were nirxandin, da ku bazirganiya çêtirîn di navbera performans û xerckirina hêzê de hilbijêrin. Hilbijartin bi pêşengiya bikarhêner ve girêdayî ye.

Xelasî

Pêşniyarên pêşîn ên ku ji hêla STMicroelectronics, ICACHE û DCACHE ve hatine pêşve xistin, dikarin bîranînên hundurîn û derveyî cache bikin, ji bo seyrûsefera daneyê û girtina rêwerzan çêtirkirina performansê pêşkêş dikin. Ev belge taybetmendiyên cihêreng ên ku ji hêla ICACHE û DCACHE ve têne piştgirî kirin destnîşan dike, sadebûn û nermbûna veavakirina wan dihêle ku lêçûna pêşkeftinê kêmtir û demek zûtir a bazarê.

Dîroka Revision

Tablo 11. Dîroka guhertoya belgeyê

Rojek Awa Changes
10-Oct-2019 1 Serbestberdana destpêkê.
 

 

27-Seb-2020

 

 

2

Nûkirin:

• Tablo 2. Herêmên bîrê û navnîşanên wan

• Beşa 2.1.7 parastina ICACHE

• Beşa 2.1.8 ewlekariya ICACHE

 

 

 

 

7-Dec-2021

 

 

 

 

3

Nûkirin:

• Sernavê belgeyê

• Destpêk

• Beşa 1 ICACHE û DCACHE li serview

• Beş 4 Encam hat zêdekirin:

• Beş 2 taybetmendiyên ICACHE û DCACHE

• Beşa 3 ICACHE û DCACHE performansa û mezaxtina hêzê

 

 

 

 

 

 

15-Seb-2023

 

 

 

 

 

 

4

Nûkirin:

•         Beş 2.2: Mîmariya zîrek a rêze STM32U5

•         Beş 2.5: Diyagrama bloka DCACHE

•         Beş 3.1.1: Serwerên dualî

•         Beşa 3.1.2: 1-rê li hember ICACHE-ya 2-rê

•         Beş 3.1.4: Herêmên cacheable û taybetmendiya remapping

•         Beş 3.2: Taybetmendiyên DCACHE

•         Beş 3.2.2: Herêmên cacheable DCACHE

•         Beş 4: Performansa ICACHE û DCACHE û xerckirina hêzê Zêde kirin:

•         Beş 1: Agahiyên giştî

 

11-Adar-2024

 

5

Nûkirin:

•         Beş 2.3: Mîmariya zîrek rêza STM32H5

•         Beş 3.1.1: Serwerên dualî

BİXWÎNE BİXWÎNE - BİXWÎNE BİXWÎNE
STMicroelectronics NV û şaxên wê ("ST") mafê ku di her kêliyê de bêyî agahdarî li ser hilberên ST-ê û / an jî vê belgeyê biguhezînin, rastkirin, çêtirkirin, guheztin û çêtirkirinan diparêzin. Pêdivî ye ku kirrûbir berî ku fermanan bidin agahdariya herî dawî ya têkildar li ser hilberên ST bistînin. Berhemên ST di dema pejirandina fermanê de li gorî şert û mercên firotanê yên ST têne firotin. Kiryar bi tenê ji bijartin, hilbijartin û karanîna hilberên ST berpirsiyar in û ST ji bo arîkariya serîlêdanê an sêwirana hilberên kirrûbiran berpirsiyarî nagire. Li vir ji hêla ST ve ti destûrek, eşkere an jî têgihîştî, ji tu mafek milkê rewşenbîrî re nayê dayîn. Ji nû ve firotina hilberên ST bi şertên ku ji agahdariya ku li vir hatî destnîşan kirin cûdatir dê garantiyek ku ST ji bo hilberek weha hatî dayîn betal bike. ST û logoya ST marqeyên ST ne. Ji bo bêtir agahdarî li ser tîcareta ST, serî li www.st.com/trademarks bidin. Hemî navên hilber an karûbarê din milkê xwediyên wan ên têkildar in. Agahdariya di vê belgeyê de agahdariya ku berê di her guhertoyên berê yên vê belgeyê de hatine peyda kirin digire û diguhezîne. © 2024 STMicroelectronics - Hemî maf parastî ne

Belge / Çavkanî

STMicroelectronics STM32H5 Series Microcontrollers [pdf] Rêbernameya Bikarhêner
Mîkrokontrollerên Rêzeya STM32H5, STM32H5, Mîkrokontrollerên Rêze, Mîkrokontroller

Çavkanî

Bihêle şîroveyek

Navnîşana e-nameya we nayê weşandin. Zeviyên pêwîst têne nîşankirin *