Microreolyddion Cyfres STMicroelectroneg STM32H5
Rhagymadrodd
Mae'r nodyn cymhwysiad hwn yn disgrifio'r storfa gyfarwyddiadau (ICACHE) a'r storfa ddata (DCACHE), y caches cyntaf a ddatblygwyd gan STMicroelectronics. Mae'r ICACHE a DCACHE a gyflwynwyd ar fws AHB y prosesydd Arm® Cortex®-M33 wedi'u hymgorffori yn y microreolydd STM32 (MCUs) a restrir yn y tabl isod. Mae'r caches hyn yn galluogi defnyddwyr i wella perfformiad eu cymhwysiad a lleihau'r defnydd wrth nôl cyfarwyddiadau a data o atgofion mewnol ac allanol, neu ar gyfer traffig data o atgofion allanol. Mae'r ddogfen hon yn rhoi examples i dynnu sylw at nodweddion ICACHE a DCACHE a hwyluso eu cyfluniad.
Tabl 1. Cynhyrchion cymwys
Math | Cyfres cynnyrch |
Microreolyddion | Cyfres STM32H5, cyfres STM32L5, cyfres STM32U5 |
Gwybodaeth gyffredinol
Nodyn:
Mae'r nodyn cais hwn yn berthnasol i ficroreolyddion cyfres STM32 sy'n ddyfeisiau craidd Arm® Cortex®. Mae Arm yn nod masnach cofrestredig Arm Limited (neu ei is-gwmnïau) yn yr Unol Daleithiau a/neu mewn mannau eraill.
ICACHE a DCACHE drosoddview
Mae'r adran hon yn rhoi trosoddview o'r rhyngwynebau ICACHE a DCACHE sydd wedi'u hymgorffori yn y microreolyddion craidd STM32 Arm® Cortex®. Mae'r adran hon yn manylu ar ddiagram ICACHE a DCACHE ac integreiddio ym mhensaernïaeth y system.
Pensaernïaeth smart cyfres STM32L5
Mae'r bensaernïaeth hon yn seiliedig ar fatrics bws sy'n caniatáu i feistri lluosog (Cortex-M33, ICACHE, DMA1 / 2, a SDMMC1) gael mynediad at gaethweision lluosog (fel cof fflach, SRAM1 / 2, OCTOSPI1, neu FSMC). Mae'r ffigur isod yn disgrifio pensaernïaeth smart cyfres STM32L5.
Ffigur 1. Pensaernïaeth smart cyfres STM32L5
Mae perfformiad Cortex-M33 yn cael ei wella trwy ddefnyddio'r rhyngwyneb ICACHE 8-Kbyte a gyflwynwyd i'w fws C-AHB, wrth nôl cod neu ddata o'r atgofion mewnol (cof fflach, SRAM1, neu SRAM2) trwy'r bws cyflym, a hefyd o'r atgofion allanol (OCTOSPI1 neu FSMC) trwy'r bws araf.
Pensaernïaeth smart cyfres STM32U5
Mae'r bensaernïaeth hon yn seiliedig ar fatrics bws sy'n caniatáu i feistri lluosog (Cortex-M33, ICACHE, DCACHE, GPDMA, DMA2D a SDMMCs, OTG_HS, LTDC, GPU2D, GFXMMU) gael mynediad i gaethweision lluosog (fel cof fflach, SRAMs, BKPSRAM, HSPI / OCTOSPI, neu FSMC). Mae'r ffigur isod yn disgrifio pensaernïaeth smart cyfres STM32U5.
Ffigur 2. Pensaernïaeth smart cyfres STM32U5
Mae'r rhyngwynebau Cortex-M33 a'r GPU2D ill dau yn elwa o ddefnyddio CACHE.
- Mae ICACHE yn gwella perfformiad Cortex-M33 wrth nôl cod neu ddata o'r atgofion mewnol trwy'r bws cyflym (cof fflach, SRAMs) ac o atgofion allanol trwy'r bws araf (OCTOSPI1/2 a HSPI1, neu FSMC). Mae DCACHE1 yn gwella perfformiad wrth nôl data o atgofion mewnol neu allanol drwy'r bws s (GFXMMU, OCTOSPI1/2 a HSPI1, neu FSMC).
- Mae DCACHE2 yn gwella perfformiad GPU2D wrth nôl data o atgofion mewnol ac allanol (GFXMMU, cof fflach, SRAMs, OCTOSPI1/2 a HSPI1, neu FSMC) trwy fws porthladd M0.
Pensaernïaeth smart cyfres STM32H5
Pensaernïaeth glyfar STM32H523/H533, STM32H563/H573 a STM32H562 Mae'r bensaernïaeth hon yn seiliedig ar fatrics bws sy'n caniatáu i feistri lluosog (Cortex-M33, ICACHE, DCACHE, GPDMAs, Ethernet a SDMMCs) gael mynediad at gaethweision lluosog (fel cof fflach, SRAMs, BKPS, BKPS). , OCTOSPI a FMC). Mae'r ffigur isod yn disgrifio pensaernïaeth smart cyfres STM32H5.
Ffigur 3. Pensaernïaeth smart cyfres STM32H563 / H573 a STM32H562
Mae'r Cortex-M33 yn elwa o ddefnyddio CACHE.
- Mae ICACHE yn gwella perfformiad Cortex-M33 wrth nôl cod neu ddata o'r atgofion mewnol trwy fws cyflym (cof fflach, SRAMs) ac o atgofion allanol trwy fws araf (OCTOSPI a FMC).
- Mae DCACHE yn gwella'r perfformiad wrth nôl data o atgofion allanol trwy'r bws araf (OCTOSPI a FMC).
Pensaernïaeth smart STM32H503
Mae'r bensaernïaeth hon yn seiliedig ar fatrics bws sy'n caniatáu i feistri lluosog (Cortex-M33, ICACHE a GPDMAs) gael mynediad i gaethweision lluosog (fel cof fflach, SRAMs a BKPSRAM). Mae'r ffigur isod yn disgrifio pensaernïaeth smart cyfres STM32H5.
Ffigur 4. Pensaernïaeth smart cyfres STM32H503
Mae'r Cortex-M33 yn elwa o ddefnyddio CACHE.
- Mae ICACHE yn gwella perfformiad Cortex-M33 wrth nôl cod neu ddata o'r atgofion mewnol trwy fws cyflym (cof fflach, SRAMs).
Diagram bloc ICACHE
Rhoddir diagram bloc ICACHE yn y ffigur isod.
Ffigur 5. Diagram bloc ICACHE
Mae cof ICACHE yn cynnwys:
- yr TAG cof gyda:
- y cyfeiriad tags sy'n nodi pa ddata sydd wedi'u cynnwys yn y cof data storfa
- y darnau dilysrwydd
- y cof data, sy'n cynnwys y data cached
Diagram bloc DCACHE
Rhoddir diagram bloc DCACHE yn y ffigur isod.
Ffigur 6. Diagram bloc DCACHE
Mae cof DCACHE yn cynnwys:
- yr TAG cof gyda:
- y cyfeiriad tags sy'n nodi pa ddata sydd wedi'u cynnwys yn y cof data storfa
- y darnau dilysrwydd
- y darnau braint
- y darnau budr
- y cof data, sy'n cynnwys y data cached
Nodweddion ICACHE a DCACHE
Meistri deuol
Mae’r ICACHE yn cyrchu matrics bysiau AHB naill ai dros:
- Un prif borthladd AHB: master1 (bws cyflym)
- Dau brif borthladd AHB: master1 (bws cyflym) a master2 (bws araf)
Mae'r nodwedd hon yn caniatáu i'r traffig gael ei ddatgysylltu wrth gyrchu gwahanol ranbarthau cof (fel cof fflach mewnol, SRAM mewnol ac atgofion allanol), er mwyn lleihau'r stondinau CPU ar fethiannau cache. Mae'r tabl canlynol yn crynhoi rhanbarthau cof a'u cyfeiriadau.
Tabl 2. Rhanbarthau cof a'u cyfeiriadau
Ymylol | Mynediad cof y gellir ei storio | Mynediad cof na ellir ei storio | |||||||
Math |
Enw |
Enw'r cynnyrch a maint y rhanbarth |
Enw bws |
Cyfeiriad cychwyn rhanbarth anniogel |
Cyfeiriad cychwyn rhanbarth diogel, anniogel y gellir ei alw |
Enw bws |
Cyfeiriad cychwyn rhanbarth anniogel |
Cyfeiriad cychwyn rhanbarth diogel, anniogel y gellir ei alw | |
Mewnol |
FFLACH |
STM32H503 | 128 KB |
ICACHE bws cyflym |
0x0800 0000 |
Amh |
Amh |
Amh |
Amh |
STM32L5
cyfres/ 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 |
Amh |
S-bws |
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
cyfres |
16 KB | 0x0A00 4000 | Amh | 0x2000 4000 | Amh | |||
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 |
Ymylol | Mynediad cof y gellir ei storio | Mynediad cof na ellir ei storio | |||||||
Mewnol |
SRAM2 |
STM32H563/ 573/562 | 80 KB |
ICACHE bws cyflym |
0x0A04 0000 | 0x0E04 0000 |
S-bws |
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 |
Amh |
|||
Allanol |
HSPI1 | STM32U59x/
5Ax/5Fx/5Gx |
256 MB |
ICACHE bws araf |
Cyfeiriad alias yn yr ystod o [0x0000 0000 i 0x07FF FFFF] neu [0x1000 0000: 0x1FFF FFFF] wedi'i ddiffinio trwy gyfrwng nodwedd ail-fapio |
Amh |
0xA000 0000 | ||
SDRAM FMC | STM32H563/ 573/562 | 0xC000 0000 | |||||||
OCTOSPI1 banc anniogel |
STM32L5/U5
cyfres STM32H563/ 573/562 |
0x9000 0000 |
|||||||
Banc FMC 3 anniogel |
STM32L5/U5
cyfres STM32H563/ 573/562 |
0x8000 0000 |
|||||||
OCTOSPI2
banc anniogel |
STM32U575/
585/59x/5Echel/ 5Fx/5Gx |
0x7000 0000 |
|||||||
Banc FMC 1 anniogel |
STM32L5/U5
cyfres STM32H563/ 573/562 |
0x6000 0000 |
1. I'w ddewis wrth ail-fapio rhanbarthau o'r fath.
ICACHE 1-ffordd yn erbyn 2-ffordd
Yn ddiofyn, mae'r ICACHE wedi'i ffurfweddu yn y modd gweithredu cysylltiadol (dwy ffordd wedi'i alluogi), ond mae'n bosibl ffurfweddu'r ICACHE mewn modd wedi'i fapio'n uniongyrchol (wedi'i alluogi un ffordd), ar gyfer cymwysiadau sydd angen defnydd pŵer isel iawn. Gwneir y cyfluniad ICACHE gyda'r did WAYSEL yn ICACHE_CR fel a ganlyn:
- WAYSEL = 0: modd gweithredu wedi'i fapio'n uniongyrchol (1-ffordd)
- WAYSEL = 1 (diofyn): modd gweithredu cysylltiadol (2-ffordd)
Tabl 3. ICACHE 1-ffordd yn erbyn 2-ffordd
Paramedr | ICACHE 1-ffordd | ICACHE 2-ffordd |
Maint y storfa (Kbytes) | 8(1)/32(2) | |
Cache nifer o ffyrdd | 1 | 2 |
Maint llinell cache | 128 did (16 beit) | |
Nifer y llinellau cache | 512(1)/2048(2) | 256(1)/1024(2) fesul ffordd |
- Ar gyfer cyfres STM32L5 / cyfres STM32H5 /STM32U535/545/575/585
- For STM32U59x/5Ax/5Fx/5Gx
Math byrstio
Mae rhai atgofion Octo-SPI yn cefnogi byrstio WRAP, sy'n darparu budd perfformiad nodwedd gair-yn-gyntaf beirniadol. Gellir ffurfweddu math byrstio ICACHE o'r trafodiad cof AHB ar gyfer rhanbarthau wedi'u hail-fapio. Mae'n gweithredu byrstio cynyddrannol neu fyrst WRAP, wedi'i ddewis gyda'r did HBURST yn y gofrestr ICACHE_CRRx. Rhoddir y gwahaniaethau rhwng y WRAP a’r hyrddiau cynyddrannol isod (gweler y ffigur hefyd):
- WRAP byrstio:
- maint llinell cache = 128 did
- byrstio i ddechrau cyfeiriad = cyfeiriad gair y data cyntaf y gofynnwyd amdano gan y CPU
- Byrst cynyddrannol:
- maint llinell cache = 128 did
- cyfeiriad cychwyn byrstio = cyfeiriad wedi'i alinio ar ffin y llinell storfa sy'n cynnwys y gair y gofynnwyd amdano
Ffigur 7. Cynyddrannol yn erbyn WRAP byrstio
Rhanbarthau y gellir eu storio a nodwedd ail-fapio
Mae'r ICACHE wedi'i gysylltu â'r Cortex-M33 trwy'r bws C-AHB ac yn storio'r rhanbarth cod o gyfeiriadau [0x0000 0000 i 0x1FFF FFFF]. Gan fod yr atgofion allanol wedi'u mapio mewn cyfeiriad yn yr ystod [0x6000 0000 i 0xAFFF FFFF], mae'r ICACHE yn cefnogi nodwedd remap sy'n caniatáu i unrhyw ranbarth cof allanol gael ei ail-fapio mewn cyfeiriad yn yr ystod o [0x0000 0000 i 0x07FF FFFF] neu [0x1000 0000 i 0x1FFF FFFF], ac i ddod yn hygyrch trwy'r bws C-AHB. Gellir ail-fapio hyd at bedwar rhanbarth cof allanol gyda'r nodwedd hon. Unwaith y bydd rhanbarth wedi'i ail-fapio, mae'r gweithrediad remap yn digwydd hyd yn oed os yw'r ICACHE wedi'i analluogi neu os nad oes modd storio'r trafodiad. Gall y defnyddiwr yn yr uned diogelu cof (MPU) ddiffinio a rhaglennu'r rhanbarthau cof y gellir eu storio. Mae'r tabl isod yn crynhoi ffurfweddiadau atgofion cyfres STM32L5 a STM32U5.
Tabl 4. Ffurfweddiad o atgofion cyfres STM32L5 a STM32U5
Cof cynnyrch |
Cacheable
(rhaglen MPU) |
Wedi'i ail-fapio yn ICACHE
(rhaglenu ICACHE_CRRx) |
Cof fflach | Ydw neu Nac ydw |
Ddim yn ofynnol |
SRAM | Heb ei argymell | |
Atgofion allanol (HSPI/OCTOSPI neu FSMC) | Ydw neu Nac ydw | Yn ofynnol os yw'r defnyddiwr eisiau nôl cod allanol ar fws C- AHB (arall ar fws S-AHB) |
Mantais ail-fapio cof allanol ICACHE
Mae'r cynample yn y ffigur isod yn dangos sut i elwa ar berfformiad gwell ICACHE yn ystod gweithredu cod neu ddarllen data wrth gael mynediad at gof Octo-SPI allanol 8-Mbyte allanol (fel cof fflach allanol neu RAM).
Ffigur 8. Octo-SPI cof remap example
Mae angen y camau canlynol i ail-fapio'r cof allanol hwn:
Cyfluniad OCTOSPI ar gyfer y cof allanol
Ffurfweddwch y rhyngwyneb OCTOSPI er mwyn cyrchu'r cof allanol yn y modd Cof wedi'i fapio (gwelir y cof allanol fel cof mewnol wedi'i fapio yn y rhanbarth [0x9000 0000 i 0x9FFF FFFF]). Gan mai maint y cof allanol yw 8 Mbytes, fe'i gwelir yn y rhanbarth [0x9000 0000 i 0x907F FFFF]. Gellir cyrchu'r cof allanol yn y rhanbarth hwn trwy'r bws S ac nid oes modd ei storio. Mae'r cam nesaf yn dangos cyfluniad ICACHE er mwyn ail-fapio'r rhanbarth hwn.
Nodyn: Ar gyfer y ffurfweddiad OCTOSPI yn y modd map cof, cyfeiriwch at y nodyn cymhwysiad rhyngwyneb Octo- SPI ar ficroreolyddion STM32 (AN5050
Cyfluniad ICACHE i ail-fapio'r rhanbarth allanol sydd wedi'i fapio gan gof
Mae'r 8 Mbytes a osodwyd yn y rhanbarth [0x9000 0000 i 0x907F FFFF] yn cael eu hail-fapio i'r rhanbarth [0x1000 0000 i 0x107F FFFF]. Yna gellir eu cyrraedd trwy'r bws araf (bws master2 ICACHE).
- Ffurfweddiad cofrestr ICACHE_CR
- Analluogi ICACHE gydag EN = 0.
- Dewiswch 1-ffordd neu 2-ffordd (yn dibynnu ar anghenion y cais) gyda WAYSEL = 0 neu 1, yn y drefn honno.
- Cyfluniad cofrestr ICACHE_CRRx (hyd at bedwar rhanbarth, x = 0 i 3)
- Dewiswch y cyfeiriad sylfaen 0x1000 0000 (cyfeiriad remap) gyda BASEADDR [28:21] = 0x80.
- Dewiswch faint rhanbarth 8-Mbyte i'w ail-fapio gyda RSIZE[2:0] = 0x3.
- Dewiswch y cyfeiriad 0x9000 0000 wedi'i ail-fapio REMAPADDR[31:21] = 0x480.
- Dewiswch borthladd meistr2 ICACHE AHB ar gyfer atgofion allanol gyda MSTSEL = 1.
- Dewiswch y math byrstio WRAP gyda HBURST = 0.
- Galluogi'r ailfapio ar gyfer rhanbarth x gyda REN = 1.
Mae'r ffigur canlynol yn dangos sut mae'r rhanbarthau cof yn cael eu gweld gydag IAR ar ôl galluogi'r ailfap.
Ffigur 9. Ailfapio rhanbarthau cof cynample
Mae'r cof allanol 8-Mbyte bellach wedi'i ail-fapio a gellir ei gyrchu dros y rhanbarth [0x1000 0000 i 0x107F FFFF].
galluogi ICACHE
- Ffurfweddiad cofrestr ICACHE_CR Galluogi'r ICACHE gydag EN = 1 .
Monitro taro-a-methu
Mae ICACHE yn darparu dau fonitor ar gyfer dadansoddi perfformiad: monitor taro 32-bit a monitor miss 16-bit.
- Mae'r monitor taro yn cyfrif y trafodion AHB y gellir eu storio ar y porthladd cache caethweision sy'n taro cynnwys ICACHE (data a gasglwyd eisoes ar gael yn y storfa). Mae'r cownter monitor taro ar gael yn y gofrestr ICACHE_HMONR.
- Mae'r monitor miss yn cyfrif y trafodion AHB y gellir eu storio ar y porth storfa caethweision sy'n methu cynnwys ICACHE (data wedi'i nôl nad yw eisoes ar gael yn y storfa). Mae'r cownter monitor coll ar gael yn y gofrestr ICACHE_MMONR.
Nodyn:
Nid yw'r ddau fonitor hyn yn lapio drosodd wrth gyrraedd eu gwerthoedd uchaf. Mae'r monitorau hyn yn cael eu rheoli o'r darnau canlynol yn y gofrestr ICACHE_CR:
- did HITMEN (did MISSMEN yn y drefn honno) i alluogi/atal y monitor taro (colli yn y drefn honno)
- Did HITMRST (did MISSMRST yn y drefn honno) i ailosod y monitor taro (methu yn y drefn honno) Yn ddiofyn, mae monitorau traethodau ymchwil wedi'u hanalluogi er mwyn lleihau'r defnydd o bŵer.
cynnal a chadw ICACHE
Gall y meddalwedd annilysu'r ICACHE trwy osod y did CACHEINV yn y gofrestr ICACHE_CR. Mae'r weithred hon yn annilysu'r storfa gyfan, gan ei gwneud yn wag. Yn y cyfamser, os yw rhai rhanbarthau wedi'u hailmapio wedi'u galluogi, mae'r nodwedd remap yn dal i fod yn weithredol, hyd yn oed pan fydd yr ICACHE yn anabl. Gan mai dim ond trafodion darllen y mae'r ICACHE yn eu rheoli ac nad yw'n rheoli trafodion ysgrifennu, nid yw'n sicrhau cydlyniad yn achos ysgrifennu. O ganlyniad, rhaid i'r feddalwedd annilysu'r ICACHE ar ôl rhaglennu rhanbarth.
ICACHE diogelwch
Mae ICACHE yn ymylol diogel y gellir ei ffurfweddu fel un diogel trwy gofrestr cyfluniad diogel GTZC TZSC. Pan fydd wedi'i ffurfweddu'n ddiogel, dim ond mynediad diogel a ganiateir i gofrestrau ICACHE. Gellir hefyd ffurfweddu ICACHE yn freintiedig trwy gofrestr ffurfweddu braint GTZC TZSC. Pan fydd ICACHE wedi'i ffurfweddu'n freintiedig, dim ond mynediadau breintiedig a ganiateir i gofrestrau ICACHE. Yn ddiofyn, nid yw'r ICACHE yn ddiogel ac nid yw'n freintiedig trwy'r GTZC TZSC.
Rheoli digwyddiadau ac ymyriadau
Mae'r ICACHE yn rheoli'r gwallau swyddogaethol pan gânt eu canfod, trwy osod baner ERRF yn ICACHE_SR. Gellir cynhyrchu ymyriad hefyd os yw'r did ERRIE wedi'i osod yn ICACHE_IER. Mewn achos o annilysu ICACHE, pan ddaeth cyflwr prysur y storfa i ben, mae baner BSYENDF wedi'i gosod yn ICACHE_SR. Gellir cynhyrchu ymyriad hefyd os yw'r did BSYENDIE wedi'i osod yn ICACHE_IER. Mae'r tabl isod yn rhestru baneri ymyrraeth a digwyddiad ICACHE.
Tabl 5. Darnau ymyrraeth a rheoli digwyddiadau ICACHE
Cofrestrwch | Enw did | Disgrifiad did | Math mynediad did |
ICACHE_SR |
PRYSUR | Cache yn cyflawni gweithrediad annilys llawn |
Darllen-yn-unig |
BSYENDF | Gorffennodd gweithrediad annilysu'r storfa | ||
GWALL | Digwyddodd gwall yn ystod gweithrediad caching | ||
ICACHE_IER |
ERRIE | Galluogi ymyriad ar gyfer gwall cache |
Darllen/ysgrifennu |
BSYENDIE | Galluogi ymyrraeth rhag ofn y bydd gweithrediad annilysu wedi'i orffen | ||
ICACHE_FCR |
CERRF | Yn clirio ERRF yn ICACHE_SR |
Ysgrifennu yn unig |
CBSYENDF | Yn clirio BSYENDF yn ICACHE_SR |
Nodweddion DCACHE
Pwrpas y storfa ddata yw storio llwythi data cof allanol a storfeydd data sy'n dod o'r prosesydd neu o feistr bws ymylol arall. Mae DCACHE yn rheoli trafodion darllen ac ysgrifennu.
Traffig cacheability DCACHE
Mae'r DCACHE yn storio'r atgofion allanol o'r prif ryngwyneb porthladd trwy fws AHB. Diffinnir y ceisiadau cof sy'n dod i mewn fel rhai y gellir eu storio yn ôl ei briodoledd cloi cof trafodion AHB. Diffinnir polisi ysgrifennu DCACHE fel ysgrifennu drwodd neu ysgrifennu yn ôl yn dibynnu ar y priodoledd cof a ffurfweddu gan yr MPU. Pan fydd rhanbarth wedi'i ffurfweddu fel un na ellir ei storio, mae'r DCACHE yn cael ei osgoi.
Tabl 6. DCACHE cacheability ar gyfer trafodion AHB
Priodoledd chwilio AHB | Priodoledd byfferadwy AHB | Cacheability |
0 | X | Darllen ac ysgrifennu: na ellir ei storio |
1 |
0 |
Darllen: cacheable
Ysgrifennwch: (gellir ei storio) ysgrifennu drwodd |
1 |
1 |
Darllen: cacheable
Ysgrifennwch: (gellir ei storio) ysgrifennu yn ôl |
Rhanbarthau cacheable DCACHE
Ar gyfer y gyfres STM32U5, mae rhyngwyneb caethweision DCACHE1 wedi'i gysylltu â'r Cortex-M33 trwy'r bws S-AHB ac yn storio'r GFXMMU, FMC, a HSPI / OCTOSPIs. Mae rhyngwyneb caethweision DCACHE2 wedi'i gysylltu â'r DMA2D trwy'r bws porthladd M0, ac mae'n storio'r holl atgofion mewnol ac allanol (ac eithrio SRAM4 a BRKPSRAM). Ar gyfer y gyfres STM32H5, mae rhyngwyneb caethweision DCACHE wedi'i gysylltu â'r Cortex-M33 trwy atgofion allanol S-AHB trwy FMC ac OCTOSPI.
Tabl 7. Rhanbarthau a rhyngwynebau cacheable DCACHE
Rhanbarth cyfeiriad cof y gellir ei storio | DCACHE1 rhyngwynebau cacheable | DCACHE2 rhyngwynebau cacheable |
GFXMMU | X | X |
SRAM1 |
Amh |
X |
SRAM2 | X | |
SRAM3 | X | |
SRAM5 | X | |
SRAM6 | X | |
HSPI1 | X | X |
OCTOSPI1 | X | X |
BANCiau FMC | X | X |
OCTOSPI2 | X | X |
Nodyn
Nid yw rhai rhyngwynebau yn cael eu cefnogi mewn rhai cynhyrchion. Cyfeiriwch at Ffigur 1 neu'r llawlyfr cyfeirio cynnyrch penodol.
Math byrstio
Yn yr un modd ag ICACHE, mae'r DCACHE yn cefnogi pyliau cynyddrannol ac wedi'u lapio (gweler Adran 3.1.3). Ar gyfer DCACHE, mae'r math byrstio wedi'i ffurfweddu trwy'r did HBURST yn DCACHE_CR.
Cyfluniad DCACHE
Yn ystod y cychwyn, mae DCACHE yn anabl yn ddiofyn gan wneud y ceisiadau cof caethweision yn cael eu hanfon ymlaen yn uniongyrchol i'r prif borthladd. I alluogi DCACHE, rhaid gosod EN bit yn y gofrestr DCACHE_CR. Monitorau taro a methu Mae'r DCACHE yn gweithredu pedwar monitor ar gyfer dadansoddi perfformiad storfa:
- Dau fonitor taro 32-bit (R/W): yn cyfrif sawl gwaith y mae'r CPU yn darllen neu'n ysgrifennu data yn y cof storfa heb gynhyrchu trafodiad ar brif borthladdoedd DCACHE (data ar gael yn y storfa eisoes). Mae'r cownteri monitor taro (R/W) ar gael yn y drefn honno yn y cofrestrau DCACHE_RHMONR a DCACHE_WHMONR.
- Dau fonitor colli 16-did (R/W): cyfrif faint o weithiau y mae'r CPU yn darllen neu'n ysgrifennu data yn y cof storfa ac yn cynhyrchu trafodiad ar brif borthladdoedd DCACHE, er mwyn llwytho'r data o'r rhanbarth cof (nid yw'r data wedi'i nôl eisoes ar gael yn y storfa). Mae'r cownteri monitor mis (R/W) ar gael yn y drefn honno yn y cofrestri DCACHE_RMMONR a DCACHE_WMMONR.
Nodyn:
Nid yw'r pedwar monitor hyn yn lapio drosodd wrth gyrraedd eu gwerthoedd uchaf. Mae'r monitorau hyn yn cael eu rheoli o'r darnau canlynol yn y gofrestr DCACHE_CR:
- Bit WHITMAN (did WMISSMEN yn y drefn honno) i alluogi/atal y monitor ysgrifennu taro (colli yn y drefn honno)
- did RHITMEN (did RMISSMEN yn y drefn honno) i alluogi/atal y monitor taro darllen (colli yn y drefn honno)
- Bit WHITMRST (did WMISSMRST yn y drefn honno) i ailosod y monitor ysgrifennu taro (colli yn y drefn honno)
- Did RHITMRST (did RMISSMRST yn y drefn honno) i ailosod y monitor taro darllen (colli yn y drefn honno)
Yn ddiofyn, mae'r monitorau hyn yn anabl er mwyn lleihau'r defnydd o bŵer.
Cynnal a chadw DCACHE
Mae'r DCACHE yn cynnig gweithrediadau cynnal a chadw lluosog y gellir eu ffurfweddu trwy CACHECMD[2: 0] yn DCACHE_CR.
- 000: dim gweithrediad (diofyn)
- 001: amrediad glân. Glanhewch ystod benodol yn y storfa
- 010: ystod annilys. Annilysu ystod benodol yn y storfa
- 010: ystod lân ac annilys. Glanhewch ac annilysu ystod benodol yn y storfa
Mae'r ystod a ddewiswyd wedi'i ffurfweddu trwy:
- Cofrestr CMDSTARTADDR: cyfeiriad cychwyn gorchymyn
- Cofrestr CMDENDADDR: cyfeiriad terfynu gorchymyn
Nodyn:
Rhaid gosod y gofrestr hon cyn ysgrifennu CACHECMD. Mae cynnal a chadw'r gorchymyn celc yn dechrau pan fydd y did STARTCMD wedi'i osod yn y gofrestr DCACHE_CR. Mae'r DCACHE hefyd yn cefnogi annilysu CACHE llawn trwy osod y did CACHEINV yn y gofrestr DCACHE_CR.
DCACHE diogelwch
Mae'r DCACHE yn ymylol diogel y gellir ei ffurfweddu fel un diogel trwy gofrestr ffurfweddu ddiogel GTZC TZSC. Pan fydd wedi'i ffurfweddu'n ddiogel, dim ond mynediad diogel a ganiateir i gofrestrau DCACHE. Gellir hefyd ffurfweddu DCACHE yn freintiedig trwy gofrestr ffurfweddu braint GTZC TZSC. Pan fydd DCACHE wedi'i ffurfweddu'n freintiedig, dim ond mynediadau breintiedig a ganiateir i gofrestrau DCACHE. Yn ddiofyn, nid yw'r DCACHE yn ddiogel ac nid yw'n freintiedig trwy'r GTZC TZSC.
Rheoli digwyddiadau ac ymyriadau
Mae'r DCACHE yn rheoli'r gwallau swyddogaethol pan gânt eu canfod, trwy osod baner ERRF yn DCACHE_SR. Gellir cynhyrchu ymyriad hefyd os yw'r did ERRIE wedi'i osod yn DCACHE_IER. Mewn achos o annilysu DCACHE, pan fydd cyflwr prysur y storfa wedi'i orffen, gosodir baner BSYENDF yn DCACHE_SR. Gellir creu ymyriad hefyd os yw'r did BSYENDIE wedi'i osod yn DCACHE_IER. Gellir gwirio statws gorchymyn DCACHE trwy CMDENF a BUSYCMDF trwy'r DCACHE_SR Gellir cynhyrchu ymyriad hefyd os yw'r did CMDENDIE wedi'i osod yn DCACHE_IER. Mae'r tabl isod yn rhestru ymyriadau DCACHE a baneri digwyddiadau
Tabl 8. DCACHE Ymyriadau a rheoli digwyddiadau
Cofrestrwch | Cofrestrwch | Disgrifiad did | Math mynediad did |
DCACHE_SR |
PRYSUR | Cache yn cyflawni gweithrediad annilys llawn |
Darllen-yn-unig |
BSYENDF | Daeth gweithrediad annilys llawn cache i ben | ||
BWSYCMDF | Cache yn gweithredu gorchymyn amrediad | ||
CMENDF | Diwedd gorchymyn amrediad | ||
ERRF | Digwyddodd gwall yn ystod gweithrediad caching | ||
DCACHE_IER |
ERRIE | Galluogi ymyriad ar gyfer gwall cache |
Darllen/ysgrifennu |
CMDENDIE | Galluogi ymyrraeth ar ddiwedd gorchymyn ystod | ||
BSYENDIE | Galluogi ymyrraeth ar ddiwedd gweithrediad annilys llawn | ||
DCACHE_FCR |
CERRF | Yn clirio ERRF yn DCACHE_SR |
Ysgrifennu yn unig |
CCMDENDF | Yn clirio CMDENDF yn DCACHE_SR | ||
CBSYENDF | Yn clirio BSYENDF yn DCACHE_SR |
Perfformiad ICACHE a DCACHE a defnydd pŵer
Mae defnyddio ICACHE a DCACHE yn gwella perfformiad y cymhwysiad wrth gyrchu atgofion allanol. Mae'r tabl canlynol yn dangos effaith ICACHE a DCACHE ar gyflawni CoreMark® wrth gyrchu atgofion allanol.
Tabl 9. Perfformiad ICACHE a DCACHE ar gyflawni CoreMark gydag atgofion allanol
(1) | ||||
Cod CoreMark | Data CoreMark | cyfluniad ICACHE | Cyfluniad DCACHE | Sgôr CoreMark/Mhz |
Cof Flash mewnol | SRAM mewnol | Wedi'i alluogi (2 ffordd) | Anabl | 3.89 |
Cof Flash mewnol | PSRAM Octo-SPI allanol (bws S) | Wedi'i alluogi (2 ffordd) | Galluogwyd | 3.89 |
Cof Flash mewnol | PSRAM Octo-SPI allanol (bws S) | Wedi'i alluogi (2 ffordd) | Anabl | 0.48 |
Fflach Octo-SPI Allanol (C-bws) | SRAM mewnol | Wedi'i alluogi (2 ffordd) | Anabl | 3.86 |
Fflach Octo-SPI Allanol (C-bws) | SRAM mewnol | Anabl | Anabl | 0.24 |
Cof Flash mewnol | SRAM mewnol | Anabl | Anabl | 2.69 |
Amodau Prawf:
- Cynnyrch sy'n gymwys: STM32U575/585
- Amledd y system: 160 MHz.
- Cof PSRAM Octo-SPI allanol: 80 MHz (modd DTR).
- Cof fflach Octo-SPI allanol: 80 MHz (modd STR).
- Casglwr: IAR V8.50.4.
- Rhagflas mewnol: YMLAEN.
Mae defnyddio ICACHE a DCACHE yn lleihau'r defnydd o bŵer wrth gyrchu atgofion mewnol ac allanol. Mae'r tabl canlynol yn dangos effaith ICACHE ar y defnydd o bŵer yn ystod gweithrediad CoreMark.
Tabl 10. Gweithredu CoreMark Effaith ICACHE ar y defnydd o bŵer
cyfluniad ICACHE | Defnydd pŵer MCU (mA) |
Wedi'i alluogi (2 ffordd) | 7.60 |
Wedi'i alluogi (1-ffordd) | 7.13 |
Anabl | 8.89 |
- Amodau Prawf:
- Cynnyrch sy'n gymwys: STM32U575/585
- Cod CoreMark: cof Flash mewnol.
- Data CoreMark: SRAM mewnol.
- Cof Flash mewnol RHAGFED: YMLAEN.
- Amledd y system: 160 MHz.
- Casglwr: IAR V8.32.2.
- Cyftage ystod: 1.
- SMPS: YMLAEN.
- mae ffurfweddiad cysylltiadol set ffordd yn fwy perfformio na chyfluniad cysylltiadol set 1-ffordd ar gyfer cod na ellir ei lwytho'n llawn yn y storfa. Yn y cyfamser, mae storfa gysylltiadol set 1-ffordd bron bob amser yn fwy ynni-effeithlon na storfa cysylltiadol set 2-ffordd. Rhaid gwerthuso pob cod yn y ddau ffurfwedd cysylltiad, er mwyn dewis y cyfaddawd gorau rhwng perfformiad a defnydd pŵer. Mae'r dewis yn dibynnu ar flaenoriaeth y defnyddiwr.
Casgliad
Mae'r caches cyntaf a ddatblygwyd gan STMicroelectronics, ICACHE a DCACHE, yn gallu storio atgofion mewnol ac allanol, gan gynnig gwelliant perfformiad ar gyfer traffig data a chyrchu cyfarwyddiadau. Mae'r ddogfen hon yn dangos y gwahanol nodweddion a gefnogir gan yr ICACHE a DCACHE, mae eu cyfluniad, symlrwydd a hyblygrwydd yn caniatáu cost datblygu is ac amser cyflymach i'r farchnad.
Hanes adolygu
Tabl 11. Hanes adolygu'r ddogfen
Dyddiad | Fersiwn | Newidiadau |
10-Hydref-2019 | 1 | Rhyddhad cychwynnol. |
27-Chwefror-2020 |
2 |
Wedi'i ddiweddaru:
• Tabl 2. Rhanbarthau cof a'u cyfeiriadau • Adran 2.1.7 cynnal a chadw ICACHE • Adran 2.1.8 diogelwch ICACHE |
7-Rhag-2021 |
3 |
Wedi'i ddiweddaru:
• Teitl y ddogfen • Cyflwyniad • Adran 1 ICACHE a DCACHE drosoddview • Ychwanegwyd Casgliad Adran 4: • Nodweddion Adran 2 ICACHE a DCACHE • Adran 3 ICACHE a DCACHE perfformiad a defnydd pŵer |
15-Chwefror-2023 |
4 |
Wedi'i ddiweddaru:
• Adran 2.2: Pensaernïaeth smart cyfres STM32U5 • Adran 2.5: Diagram bloc DCACHE • Adran 3.1.2: ICACHE 1-ffordd yn erbyn 2-ffordd • Adran 3.1.4: Rhanbarthau y gellir eu storio a nodwedd ailfapio • Adran 3.2: Nodweddion DCACHE • Adran 3.2.2: Rhanbarthau storfa DCACHE • Adran 4: Perfformiad ICACHE a DCACHE a defnydd pŵer Ychwanegwyd: |
11-Maw-2024 |
5 |
Wedi'i ddiweddaru: |
HYSBYSIAD PWYSIG – DARLLENWCH YN OFALUS
Mae STMicroelectronics NV a'i is-gwmnïau (“ST”) yn cadw'r hawl i wneud newidiadau, cywiriadau, gwelliannau, addasiadau a gwelliannau i gynhyrchion ST a/neu i'r ddogfen hon ar unrhyw adeg heb rybudd. Dylai prynwyr gael y wybodaeth berthnasol ddiweddaraf am gynhyrchion ST cyn gosod archebion. Gwerthir cynhyrchion ST yn unol â thelerau ac amodau gwerthu ST sydd ar waith ar adeg cydnabod yr archeb. Prynwyr yn unig sy'n gyfrifol am ddewis, dewis a defnyddio cynhyrchion ST ac nid yw ST yn cymryd unrhyw atebolrwydd am gymorth ymgeisio neu ddyluniad cynhyrchion prynwyr. Ni roddir trwydded, yn benodol nac yn oblygedig, i unrhyw hawl eiddo deallusol gan ST yma. Bydd ailwerthu cynhyrchion ST gyda darpariaethau gwahanol i'r wybodaeth a nodir yma yn dileu unrhyw warant a roddir gan ST ar gyfer cynnyrch o'r fath. Mae ST a'r logo ST yn nodau masnach ST. I gael gwybodaeth ychwanegol am nodau masnach ST, cyfeiriwch at www.st.com/trademarks. Mae pob enw cynnyrch neu wasanaeth arall yn eiddo i'w perchnogion priodol. Mae gwybodaeth yn y ddogfen hon yn disodli ac yn disodli gwybodaeth a ddarparwyd yn flaenorol mewn unrhyw fersiynau blaenorol o'r ddogfen hon. © 2024 STMicroelectroneg – Cedwir pob hawl
Dogfennau / Adnoddau
![]() |
Microreolyddion Cyfres STMicroelectroneg STM32H5 [pdfLlawlyfr Defnyddiwr Microreolyddion Cyfres STM32H5, STM32H5, Microreolyddion Cyfres, Microreolyddion |