STMicroelectronics-ໂລໂກ້

STMicroelectronics STM32H5 Series Microcontrollers

STMicroelectronics-STM32H5-Series-Microcontrollers-ຜະລິດຕະພັນ

ແນະນຳ

ບັນ​ທຶກ​ຂອງ​ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​ນີ້​ອະ​ທິ​ບາຍ​ຖານ​ຄວາມ​ຈໍາ​ຄໍາ​ແນະ​ນໍາ (ICACHE​) ແລະ​ຖານ​ຄວາມ​ຈໍາ​ຂໍ້​ມູນ (DCACHE​)​, ຖານ​ຄວາມ​ຈໍາ​ທໍາ​ອິດ​ພັດ​ທະ​ນາ​ໂດຍ STMicroelectronics​. ICACHE ແລະ DCACHE ທີ່ນໍາສະເຫນີຢູ່ໃນລົດເມ AHB ຂອງໂປເຊດເຊີ Arm® Cortex®-M33 ຖືກຝັງຢູ່ໃນ microcontroller STM32 (MCUs) ທີ່ລະບຸໄວ້ໃນຕາຕະລາງຂ້າງລຸ່ມນີ້. ແຄດເຫຼົ່ານີ້ຊ່ວຍໃຫ້ຜູ້ໃຊ້ສາມາດປັບປຸງການປະຕິບັດຄໍາຮ້ອງສະຫມັກຂອງເຂົາເຈົ້າແລະຫຼຸດຜ່ອນການບໍລິໂພກໃນເວລາທີ່ດຶງຄໍາແນະນໍາແລະຂໍ້ມູນຈາກຄວາມຊົງຈໍາທັງພາຍໃນແລະພາຍນອກ, ຫຼືສໍາລັບການຈະລາຈອນຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍນອກ. ເອກະສານນີ້ໃຫ້ຕົວຢ່າງປົກກະຕິamples ເພື່ອເນັ້ນລັກສະນະ ICACHE ແລະ DCACHE ແລະອໍານວຍຄວາມສະດວກໃນການຕັ້ງຄ່າຂອງພວກເຂົາ.

ຕາຕະລາງ 1. ຜະລິດຕະພັນທີ່ໃຊ້ໄດ້

ປະເພດ ຊຸດຜະລິດຕະພັນ
Microcontrollers ຊຸດ STM32H5, ຊຸດ STM32L5, ຊຸດ STM32U5

ຂໍ້ມູນທົ່ວໄປ

ໝາຍເຫດ:

ບັນທຶກຂອງແອັບພລິເຄຊັນນີ້ໃຊ້ກັບຊຸດ microcontrollers STM32 ທີ່ເປັນອຸປະກອນຫຼັກຂອງ Arm® Cortex®. Arm ເປັນເຄື່ອງໝາຍການຄ້າທີ່ຈົດທະບຽນຂອງ Arm Limited (ຫຼືບໍລິສັດຍ່ອຍຂອງມັນ) ໃນສະຫະລັດ ແລະ/ຫຼືຢູ່ບ່ອນອື່ນ.

ICACHE ແລະ DCACHE ຫຼາຍກວ່າview

ພາກນີ້ໃຫ້ຫຼາຍກວ່າview ຂອງອິນເຕີເຟດ ICACHE ແລະ DCACHE ທີ່ຝັງຢູ່ໃນຕົວຄວບຄຸມ microcontrollers ຫຼັກ STM32 Arm® Cortex®. ພາກນີ້ໃຫ້ລາຍລະອຽດກ່ຽວກັບແຜນວາດ ICACHE ແລະ DCACHE ແລະການເຊື່ອມໂຍງໃນສະຖາປັດຕະຍະກໍາລະບົບ.
ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32L5
ສະຖາປັດຕະຍະກໍານີ້ແມ່ນອີງໃສ່ເມຕຣິກລົດເມທີ່ອະນຸຍາດໃຫ້ແມ່ບົດຫຼາຍ (Cortex-M33, ICACHE, DMA1/2, ແລະ SDMMC1) ເຂົ້າເຖິງຫຼາຍທາດ (ເຊັ່ນ: ຫນ່ວຍຄວາມຈໍາ flash, SRAM1/2, OCTOSPI1, ຫຼື FSMC). ຮູບຂ້າງລຸ່ມນີ້ອະທິບາຍສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32L5.

ຮູບທີ 1. ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32L5

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-1

ປະສິດທິພາບ Cortex-M33 ໄດ້ຖືກປັບປຸງໂດຍການໃຊ້ອິນເຕີເຟດ 8-Kbyte ICACHE ທີ່ແນະນໍາກັບລົດເມ C-AHB ຂອງມັນ, ເມື່ອດຶງລະຫັດ ຫຼືຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນ (flash memory, SRAM1, ຫຼື SRAM2) ຜ່ານລົດເມໄວ, ແລະຈາກ. ຄວາມຊົງຈໍາພາຍນອກ (OCTOSPI1 ຫຼື FSMC) ຜ່ານລົດເມຊ້າ.
ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32U5
ສະຖາປັດຕະຍະກໍານີ້ແມ່ນອີງໃສ່ເມຕຣິກລົດເມທີ່ອະນຸຍາດໃຫ້ແມ່ບົດຫຼາຍ (Cortex-M33, ICACHE, DCACHE, GPDMA, DMA2D ແລະ SDMMCs, OTG_HS, LTDC, GPU2D, GFXMMU) ເຂົ້າເຖິງ slave ຫຼາຍ (ເຊັ່ນ: ຫນ່ວຍຄວາມຈໍາ flash, SRAMs, BKPSRAM, HSPI/ OCTOSPI, ຫຼື FSMC).ຮູບຂ້າງລຸ່ມນີ້ອະທິບາຍສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32U5.

ຮູບ 2. ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32U5

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-2

ການໂຕ້ຕອບ Cortex-M33 ແລະ GPU2D ທັງສອງໄດ້ຮັບຜົນປະໂຫຍດຈາກການນໍາໃຊ້ CACHE.

  • ICACHE ປັບປຸງປະສິດທິພາບຂອງ Cortex-M33 ເມື່ອດຶງລະຫັດຫຼືຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນຜ່ານລົດເມໄວ (flash memory, SRAMs) ແລະຈາກຄວາມຊົງຈໍາພາຍນອກຜ່ານລົດເມຊ້າ (OCTOSPI1/2 ແລະ HSPI1, ຫຼື FSMC). DCACHE1 ປັບປຸງປະສິດທິພາບເມື່ອດຶງຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນ ຫຼືພາຍນອກຜ່ານ s-bus (GFXMMU, OCTOSPI1/2 ແລະ HSPI1, ຫຼື FSMC).
  •  DCACHE2 ປັບປຸງປະສິດທິພາບຂອງ GPU2D ເມື່ອດຶງຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນ ແລະພາຍນອກ (GFXMMU, flash memory, SRAMs, OCTOSPI1/2 ແລະ HSPI1, ຫຼື FSMC) ຜ່ານ M0 port bus.

ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32H5
ສະຖາປັດຕະຍະກຳອັດສະລິຍະ STM32H523/H533, STM32H563/H573 ແລະ STM32H562 ສະຖາປັດຕະຍະກຳສະຖາປັດຕະຍະກຳສະຖາປັດຕະຍະກຳແບບອັດສະລິຍະນີ້ແມ່ນອີງໃສ່ເມທຣິກລົດເມທີ່ອະນຸຍາດໃຫ້ແມ່ແບບຫຼາຍອັນ (Cortex-M33, ICACHE, DCACHE, GPDMAs, Ethernet ແລະ SDMMCs) ເຂົ້າເຖິງສະຖາປັດຕະຍະກຳຫຼາຍອັນ (ເຊັ່ນ: ແຟລດ, ໜ່ວຍຄວາມຈຳ BPSRAM. , OCTOSPI ແລະ FMC). ຮູບຂ້າງລຸ່ມນີ້ອະທິບາຍສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32H5.

ຮູບທີ 3. ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32H563/H573 ແລະ STM32H562

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-3

Cortex-M33 ໄດ້ຮັບຜົນປະໂຫຍດຈາກການນໍາໃຊ້ CACHE.

  • ICACHE ປັບປຸງປະສິດທິພາບຂອງ Cortex-M33 ເມື່ອດຶງລະຫັດຫຼືຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນຜ່ານລົດເມໄວ (flash memory, SRAMs) ແລະຈາກຄວາມຊົງຈໍາພາຍນອກຜ່ານລົດເມຊ້າ (OCTOSPI ແລະ FMC).
  • DCACHE ປັບປຸງປະສິດທິພາບເມື່ອດຶງຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍນອກຜ່ານລົດເມຊ້າ (OCTOSPI ແລະ FMC).

ສະຖາປັດຕະຍະກຳອັດສະລິຍະ STM32H503
ສະຖາປັດຕະຍະກໍານີ້ແມ່ນອີງໃສ່ເມຕຣິກລົດເມທີ່ອະນຸຍາດໃຫ້ແມ່ບົດຫຼາຍ (Cortex-M33, ICACHE ແລະ GPDMAs) ເຂົ້າເຖິງທາດຫຼາຍ (ເຊັ່ນ: ຫນ່ວຍຄວາມຈໍາ flash, SRAMs ແລະ BKPSRAM). ຮູບຂ້າງລຸ່ມນີ້ອະທິບາຍສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32H5.

ຮູບ 4. ສະຖາປັດຕະຍະກຳອັດສະລິຍະຊຸດ STM32H503

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-4

Cortex-M33 ໄດ້ຮັບຜົນປະໂຫຍດຈາກການນໍາໃຊ້ CACHE.

  • ICACHE ປັບປຸງປະສິດທິພາບຂອງ Cortex-M33 ໃນເວລາທີ່ດຶງລະຫັດຫຼືຂໍ້ມູນຈາກຄວາມຊົງຈໍາພາຍໃນໂດຍຜ່ານລົດເມໄວ (flash memory, SRAMs).

ແຜນວາດ ICACHE block
ແຜນວາດບລັອກ ICACHE ແມ່ນໃຫ້ຢູ່ໃນຮູບຂ້າງລຸ່ມນີ້.

ຮູບທີ 5. ແຜນວາດ ICACHE block

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-5

ຫນ່ວຍຄວາມຈໍາ ICACHE ປະກອບມີ:

  • ໄດ້ TAG ຄວາມ​ຊົງ​ຈໍາ​ທີ່​ມີ​:
    • ທີ່ຢູ່ tags ທີ່ຊີ້ບອກວ່າຂໍ້ມູນໃດບັນຈຸຢູ່ໃນຫນ່ວຍຄວາມຈໍາຂອງຂໍ້ມູນ cache
    • bits ທີ່ຖືກຕ້ອງ
  •  ຫນ່ວຍຄວາມຈໍາຂໍ້ມູນ, ເຊິ່ງປະກອບດ້ວຍຂໍ້ມູນທີ່ເກັບໄວ້ໃນຖານຄວາມຈໍາ

ແຜນວາດຕັນ DCACHE
ແຜນວາດຕັນ DCACHE ແມ່ນໃຫ້ຢູ່ໃນຮູບຂ້າງລຸ່ມນີ້.

ຮູບທີ 6. ແຜນວາດຕັນ DCACHE

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-6

ຫນ່ວຍຄວາມຈໍາ DCACHE ປະກອບມີ:

  • ໄດ້ TAG ຄວາມ​ຊົງ​ຈໍາ​ທີ່​ມີ​:
    • ທີ່ຢູ່ tags ທີ່ຊີ້ບອກວ່າຂໍ້ມູນໃດບັນຈຸຢູ່ໃນຫນ່ວຍຄວາມຈໍາຂອງຂໍ້ມູນ cache
    • bits ທີ່ຖືກຕ້ອງ
    • ສິດທິພິເສດ
    • bits ເປື້ອນ
  • ຫນ່ວຍຄວາມຈໍາຂໍ້ມູນ, ເຊິ່ງປະກອບດ້ວຍຂໍ້ມູນທີ່ເກັບໄວ້ໃນຖານຄວາມຈໍາ

ລັກສະນະ ICACHE ແລະ DCACHE

ແມ່ບົດຄູ່
ICACHE ເຂົ້າເຖິງ AHB bus matrix ຕະຫຼອດ:

  • ຫນຶ່ງພອດແມ່ບົດ AHB: master1 (ລົດເມໄວ)
  • ສອງພອດແມ່ບົດ AHB: master1 (ລົດເມໄວ) ແລະ master2 (ລົດເມຊ້າ)

ຄຸນສົມບັດນີ້ອະນຸຍາດໃຫ້ຕັດການຈາລະຈອນໄດ້ເມື່ອເຂົ້າເຖິງພື້ນທີ່ຄວາມຊົງຈໍາຕ່າງໆ (ເຊັ່ນ: ໜ່ວຍຄວາມຈຳແຟລດພາຍໃນ, SRAM ພາຍໃນ ແລະໜ່ວຍຄວາມຈຳພາຍນອກ), ເພື່ອຫຼຸດຜ່ອນການຢຸດ CPU ທີ່ຂາດແຄດ. ຕາຕະລາງຕໍ່ໄປນີ້ສະຫຼຸບພື້ນທີ່ຫນ່ວຍຄວາມຈໍາແລະທີ່ຢູ່ຂອງເຂົາເຈົ້າ.

ຕາຕະລາງ 2. ຂົງເຂດຄວາມຈໍາ ແລະທີ່ຢູ່ຂອງພວກມັນ

ອຸປະກອນຕໍ່ຂ້າງ ການເຂົ້າເຖິງໜ່ວຍຄວາມຈຳທີ່ສາມາດເກັບໄດ້ ບໍ່ສາມາດເຂົ້າເຖິງໜ່ວຍຄວາມຈຳທີ່ເກັບໄວ້ໄດ້
 

 

ປະເພດ

 

 

ຊື່

 

 

ຊື່ຜະລິດຕະພັນ ແລະຂະຫນາດພາກພື້ນ

 

 

ຊື່ລົດເມ

 

ທີ່ຢູ່ເລີ່ມຕົ້ນພາກພື້ນທີ່ບໍ່ປອດໄພ

ທີ່​ຢູ່​ເລີ່ມ​ຕົ້ນ​ພາກ​ພື້ນ​ໂທ​ທີ່​ປອດ​ໄພ​, ບໍ່​ປອດ​ໄພ​  

 

ຊື່ລົດເມ

 

ທີ່ຢູ່ເລີ່ມຕົ້ນພາກພື້ນທີ່ບໍ່ປອດໄພ

ທີ່​ຢູ່​ເລີ່ມ​ຕົ້ນ​ພາກ​ພື້ນ​ໂທ​ທີ່​ປອດ​ໄພ​, ບໍ່​ປອດ​ໄພ​
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ພາຍໃນ

 

 

 

 

 

 

 

ແຟລດ

STM32H503 128 KB  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ICACHE

ລົດເມໄວ

 

 

 

 

 

 

 

0x0800 0000

ບໍ່ມີ  

 

 

 

 

 

 

ບໍ່ມີ

 

 

 

 

 

 

 

ບໍ່ມີ

 

 

 

 

 

 

 

ບໍ່ມີ

STM32L5

ຊຸດ/ 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

ບໍ່ມີ  

 

 

 

 

 

 

 

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

ຊຸດ

16 KB 0x0A00 4000 ບໍ່ມີ 0x2000 4000 ບໍ່ມີ
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

ອຸປະກອນຕໍ່ຂ້າງ ການເຂົ້າເຖິງໜ່ວຍຄວາມຈຳທີ່ສາມາດເກັບໄດ້ ບໍ່ສາມາດເຂົ້າເຖິງໜ່ວຍຄວາມຈຳທີ່ເກັບໄວ້ໄດ້
 

 

 

 

 

 

 

 

 

ພາຍໃນ

 

 

SRAM2

STM32H563/573/562 80 KB  

 

 

 

 

 

 

 

ICACHE

ລົດເມໄວ

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  

 

 

 

 

 

 

 

 

 

 

 

ບໍ່ມີ

 

 

 

 

 

 

 

 

 

 

 

ພາຍນອກ

HSPI1 STM32U59x/

5Ax/5Fx/5Gx

 

 

 

 

 

 

 

 

 

 

 

256 MB

 

 

 

 

 

 

 

 

 

 

ICACHE

ລົດເມຊ້າ

(1)

 

 

 

 

 

 

ທີ່ຢູ່ Alias ​​ຢູ່ໃນຂອບເຂດຂອງ [0x0000 0000

ເປັນ 0x07FF FFFF] ຫຼື [0x1000 0000:0x1FFF

FFFF] ກໍານົດໂດຍວິທີການ remapping ຄຸນນະສົມບັດ

 

 

 

 

 

 

 

 

 

 

 

ບໍ່ມີ

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

OCTOSPI1

ທະນາຄານບໍ່ປອດໄພ

STM32L5/U5

ຊຸດ

STM32H563/573/562

 

 

0x9000 0000

 

ທະນາຄານ FMC 3

ບໍ່ປອດໄພ

STM32L5/U5

ຊຸດ

STM32H563/573/562

 

 

0x8000 0000

OCTOSPI2

ທະນາຄານບໍ່ປອດໄພ

STM32U575/

585/59x/5Ax/

5Fx/5Gx

 

0x7000 0000

 

ທະນາຄານ FMC 1

ບໍ່ປອດໄພ

STM32L5/U5

ຊຸດ

STM32H563/573/562

 

 

0x6000 0000

1. ຈະຖືກເລືອກໃນເວລາທີ່ remapping ພາກພື້ນດັ່ງກ່າວ.

1-ທາງກັບ 2-way ICACHE
ໂດຍຄ່າເລີ່ມຕົ້ນ, ICACHE ຖືກຕັ້ງຄ່າໃນໂຫມດປະຕິບັດການທີ່ກ່ຽວຂ້ອງ (ສອງວິທີເປີດໃຊ້ງານ), ແຕ່ມັນເປັນໄປໄດ້ທີ່ຈະກໍາຫນົດຄ່າ ICACHE ໃນຮູບແບບແຜນທີ່ໂດຍກົງ (ເປີດທາງດຽວ), ສໍາລັບຄໍາຮ້ອງສະຫມັກທີ່ຕ້ອງການການໃຊ້ພະລັງງານຕ່ໍາຫຼາຍ. ການຕັ້ງຄ່າ ICACHE ແມ່ນເຮັດດ້ວຍບິດ WAYSEL ໃນ ICACHE_CR ດັ່ງຕໍ່ໄປນີ້:

  • WAYSEL = 0: ຮູບແບບການໃຊ້ງານແຜນທີ່ໂດຍກົງ (1-ທາງ)
  • WAYSEL = 1 (ຄ່າເລີ່ມຕົ້ນ): ຮູບແບບການເຮັດວຽກທີ່ເຊື່ອມໂຍງ (2 ທາງ)

ຕາຕະລາງ 3. 1-way ທຽບກັບ 2-way ICACHE

ພາລາມິເຕີ ICACHE 1 ທາງ ICACHE 2 ທາງ
ຂະໜາດແຄສ (Kbytes) 8(1)/32(2)
Cache ຈໍານວນຂອງວິທີການ 1 2
ຂະຫນາດເສັ້ນ cache 128 bits (16 bytes)
ຈໍານວນສາຍ cache 512(1)/2048(2) 256(1)/1024(2) ຕໍ່ທາງ
  1. ສໍາລັບຊຸດ STM32L5 / STM32H5 ຊຸດ / STM32U535/545/575/585
  2. For STM32U59x/5Ax/5Fx/5Gx

ປະເພດລະເບີດ
ບາງຄວາມຊົງຈໍາ Octo-SPI ສະຫນັບສະຫນູນການລະເບີດຂອງ WRAP, ເຊິ່ງສະຫນອງຜົນປະໂຫຍດຂອງການປະຕິບັດຄຸນນະສົມບັດຄໍາທໍາອິດທີ່ສໍາຄັນ. ປະເພດຂອງການລະເບີດຂອງ ICACHE ຂອງທຸລະກໍາຫນ່ວຍຄວາມຈໍາ AHB ສໍາລັບພາກພື້ນ remapped ແມ່ນກໍາຫນົດຄ່າໄດ້. ມັນປະຕິບັດການລະເບີດທີ່ເພີ່ມຂຶ້ນ ຫຼື WRAP burst, ເລືອກດ້ວຍບິດ HBURST ໃນທະບຽນ ICACHE_CRRx. ຄວາມແຕກຕ່າງລະຫວ່າງ WRAP ແລະການລະເບີດທີ່ເພີ່ມຂຶ້ນແມ່ນໃຫ້ຂ້າງລຸ່ມນີ້ (ເບິ່ງຮູບ):

  • WRAP ລະເບີດ:
    • ຂະຫນາດເສັ້ນ cache = 128 bits
    • burst ເພື່ອເລີ່ມຕົ້ນທີ່ຢູ່ = ທີ່ຢູ່ຄໍາສັບຂອງຂໍ້ມູນທໍາອິດທີ່ຮ້ອງຂໍໂດຍ CPU
  •  ການລະເບີດທີ່ເພີ່ມຂຶ້ນ:
    • ຂະຫນາດເສັ້ນ cache = 128 bits
    • burst start address = ທີ່ຢູ່ຖືກຈັດຢູ່ໃນຂອບເຂດຂອງເສັ້ນ cache ທີ່ມີຄໍາຮ້ອງຂໍ

ຮູບທີ 7. ເພີ່ມຂຶ້ນທຽບກັບ WRAP ລະເບີດ

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-9

ພື້ນທີ່ທີ່ສາມາດເກັບໄວ້ໄດ້ ແລະຄຸນສົມບັດການແຜນທີ່ຄືນໃໝ່
ICACHE ເຊື່ອມຕໍ່ກັບ Cortex-M33 ຜ່ານລົດເມ C-AHB ແລະ cache ພາກພື້ນລະຫັດຈາກທີ່ຢູ່ [0x0000 0000 ຫາ 0x1FFF FFFF]. ເນື່ອງຈາກຄວາມຊົງຈໍາພາຍນອກຖືກແຜນທີ່ຢູ່ໃນທີ່ຢູ່ໃນໄລຍະ [0x6000 0000 ຫາ 0xAFFF FFFF], ICACHE ສະຫນັບສະຫນູນຄຸນສົມບັດ remap ທີ່ອະນຸຍາດໃຫ້ພາກພື້ນຫນ່ວຍຄວາມຈໍາພາຍນອກທີ່ຈະ remapped ທີ່ຢູ່ໃນໄລຍະຂອງ [0x0000 0000 ຫາ 0x07FF FF FF] ຫຼື. [0x1000 0000 ຫາ 0x1FFF FFFF], ແລະເພື່ອເຂົ້າເຖິງໄດ້ຜ່ານລົດເມ C-AHB. ສູງສຸດສີ່ພື້ນທີ່ຫນ່ວຍຄວາມຈໍາພາຍນອກສາມາດ remapped ກັບຄຸນນະສົມບັດນີ້. ເມື່ອພາກພື້ນໄດ້ຖືກ remapped, ການດໍາເນີນງານ remap ເກີດຂຶ້ນເຖິງແມ່ນວ່າ ICACHE ຈະຖືກປິດໃຊ້ງານຫຼືຖ້າຫາກວ່າທຸລະກໍາບໍ່ສາມາດ cache ໄດ້. ພາກພື້ນຂອງຫນ່ວຍຄວາມຈໍາທີ່ສາມາດເກັບໄວ້ໄດ້ສາມາດ defi ed ແລະດໍາເນີນໂຄງການໂດຍຜູ້ໃຊ້ໃນຫນ່ວຍປ້ອງກັນຫນ່ວຍຄວາມຈໍາ (MPU). ຕາຕະລາງຂ້າງລຸ່ມນີ້ສະຫຼຸບການຕັ້ງຄ່າຂອງຄວາມຊົງຈໍາຊຸດ STM32L5 ແລະ STM32U5.

ຕາຕະລາງ 4. ການຕັ້ງຄ່າຄວາມຊົງຈໍາຊຸດ STM32L5 ແລະ STM32U5

 

ຄວາມຊົງຈໍາຂອງຜະລິດຕະພັນ

ສາມາດເກັບໄວ້ໄດ້

(ໂຄງການ MPU)

Remapped ໃນ ICACHE

(ICACHE_CRRx ການຂຽນໂປລແກລມ)

ຫນ່ວຍຄວາມຈໍາ Flash ແມ່ນ ຫຼື ບໍ່  

ບໍ່ຈໍາເປັນ

SRAM ບໍ່ແນະນໍາ
ຄວາມຊົງຈຳພາຍນອກ (HSPI/ OCTOSPI ຫຼື FSMC) ແມ່ນ ຫຼື ບໍ່ ຕ້ອງ​ການ​ຖ້າ​ຫາກ​ວ່າ​ຜູ້​ໃຊ້​ຕ້ອງ​ການ​ການ​ດຶງ​ຂໍ້​ມູນ​ລະ​ຫັດ​ພາຍ​ນອກ​ໃນ​ລົດ​ເມ C- AHB (ອື່ນໆ​ໃນ​ລົດ​ເມ S-AHB​)

ຜົນປະໂຫຍດຂອງ ICACHE ການສ້າງແຜນທີ່ຫນ່ວຍຄວາມຈໍາພາຍນອກ
ອະດີດample ໃນຮູບຂ້າງລຸ່ມນີ້ສະແດງໃຫ້ເຫັນວິທີການຮັບຜົນປະໂຫຍດຈາກການປະຕິບັດການປັບປຸງ ICACHE ໃນລະຫວ່າງການປະຕິບັດລະຫັດຫຼືຂໍ້ມູນທີ່ອ່ານເມື່ອເຂົ້າເຖິງຫນ່ວຍຄວາມຈໍາ Octo-SPI ພາຍນອກ 8-Mbyte ພາຍນອກ (ເຊັ່ນ: ຫນ່ວຍຄວາມຈໍາ flash ພາຍນອກຫຼື RAM).

ຮູບທີ 8. Remap ໜ່ວຍຄວາມຈຳ Octo-SPI example

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-7

ຂັ້ນຕອນຕໍ່ໄປນີ້ແມ່ນຈໍາເປັນເພື່ອ remap ຫນ່ວຍຄວາມຈໍາພາຍນອກນີ້:

ການຕັ້ງຄ່າ OCTOSPI ສໍາລັບຫນ່ວຍຄວາມຈໍາພາຍນອກ

ຕັ້ງຄ່າສ່ວນຕິດຕໍ່ OCTOSPI ເພື່ອເຂົ້າເຖິງຫນ່ວຍຄວາມຈໍາພາຍນອກໃນໂຫມດ Memory mapped (ຫນ່ວຍຄວາມຈໍາພາຍນອກແມ່ນເຫັນໄດ້ວ່າເປັນຫນ່ວຍຄວາມຈໍາພາຍໃນທີ່ແຜນທີ່ຢູ່ໃນພາກພື້ນ [0x9000 0000 ຫາ 0x9FFF FFFF]). ເນື່ອງຈາກຂະຫນາດຫນ່ວຍຄວາມຈໍາພາຍນອກແມ່ນ 8 Mbytes, ມັນຖືກສັງເກດເຫັນຢູ່ໃນພາກພື້ນ [0x9000 0000 ຫາ 0x907F FFFF]. ໜ່ວຍຄວາມຈຳພາຍນອກຢູ່ໃນພາກພື້ນນີ້ຖືກເຂົ້າເຖິງຜ່ານ S-bus ແລະບໍ່ສາມາດເກັບຂໍ້ມູນໄດ້. ຂັ້ນ​ຕອນ​ຕໍ່​ໄປ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ການ​ຕັ້ງ​ຄ່າ ICACHE ໃນ​ຄໍາ​ສັ່ງ​ທີ່​ຈະ remap ພາກ​ພື້ນ​ນີ້​.
ໝາຍເຫດ: ສຳລັບການຕັ້ງຄ່າ OCTOSPI ໃນໂໝດຄວາມຈຳແຜນທີ່, ໃຫ້ອ້າງອີງໃສ່ບັນທຶກຂອງແອັບພລິເຄຊັນ Octo‑ SPI ໃນຕົວຄວບຄຸມຈຸລະພາກ STM32 (AN5050.

ການຕັ້ງຄ່າ ICACHE ເພື່ອ remap ພາກພື້ນທີ່ມີແຜນທີ່ຫນ່ວຍຄວາມຈໍາພາຍນອກ
8 Mbytes ທີ່ວາງໄວ້ໃນພາກພື້ນ [0x9000 0000 ຫາ 0x907F FFFF] ໄດ້ຖືກ remapped ກັບພາກພື້ນ [0x1000 0000 ຫາ 0x107F FFFF]. ຫຼັງຈາກນັ້ນເຂົາເຈົ້າສາມາດເຂົ້າເຖິງໄດ້ໂດຍຜ່ານລົດເມຊ້າ (ICACHE master2 bus).

  • ການຕັ້ງຄ່າການລົງທະບຽນ IACHE_CR
    • ປິດໃຊ້ງານ ICACHE ດ້ວຍ EN = 0.
    • ເລືອກທາງ 1 ຫຼື 2 ທາງ (ຂຶ້ນກັບຄວາມຕ້ອງການຂອງແອັບພລິເຄຊັນ) ດ້ວຍ WAYSEL = 0 ຫຼື 1, ຕາມລໍາດັບ.
  • ການຕັ້ງຄ່າການລົງທະບຽນ ICACHE_CRRx (ສູງສຸດສີ່ພາກພື້ນ, x = 0 ຫາ 3)
    • ເລືອກທີ່ຢູ່ຖານ 0x1000 0000 (remap address) ດ້ວຍ BASEADDR [28:21] = 0x80.
    • ເລືອກຂະໜາດພາກພື້ນ 8-Mbyte ເພື່ອ remap ດ້ວຍ RSIZE[2:0] = 0x3.
    • ເລືອກທີ່ຢູ່ 0x9000 0000 remapped REMAPADDR[31:21] = 0x480.
    • ເລືອກພອດ ICACHE AHB master2 ສໍາລັບຄວາມຊົງຈໍາພາຍນອກດ້ວຍ MSTSEL = 1.
    • ເລືອກປະເພດການລະເບີດຂອງ WRAP ດ້ວຍ HBURST = 0.
    • ເປີດໃຊ້ remapping ສໍາລັບພາກພື້ນ x ກັບ REN = 1.

ຕົວເລກຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນວ່າພື້ນທີ່ຄວາມຊົງຈໍາແນວໃດກັບ IAR ຫຼັງຈາກເປີດໃຊ້ remap.

ຮູບ 9. remapping ພາກພື້ນຫນ່ວຍຄວາມຈໍາ example

STMicroelectronics-STM32H5-Series-Microcontrollers-fig-8

ຫນ່ວຍຄວາມຈໍາພາຍນອກ 8-Mbyte ໄດ້ຖືກ remapped ໃນປັດຈຸບັນແລະສາມາດໄດ້ຮັບການເຂົ້າເຖິງໄດ້ໃນໄລຍະພາກພື້ນ [0x1000 0000 ຫາ 0x107F FFFF].

ICACHE ເປີດໃຊ້

  • ການຕັ້ງຄ່າການລົງທະບຽນ ICACHE_CR ເປີດໃຊ້ ICACHE ດ້ວຍ EN = 1.

ຕິດ​ຕາມ​ກວດ​ກາ​ຕິດ​ແລະ​ພາດ​
ICACHE ໃຫ້ສອງຈໍພາບສໍາລັບການວິເຄາະປະສິດທິພາບ: ຈໍສະແດງຜົນ hit 32-bit ແລະ 16-bit miss monitor.

  • ຈໍສະແດງຜົນ hit ຈະນັບການເຮັດທຸລະກໍາ AHB ທີ່ສາມາດເກັບໄວ້ໄດ້ໃນພອດແຄດຂອງ slave ທີ່ຕີເນື້ອຫາ ICACHE (ຂໍ້ມູນທີ່ດຶງມາແລ້ວມີຢູ່ໃນແຄດ). ເຄົາເຕີຕິດຕາມການຕີແມ່ນມີຢູ່ໃນທະບຽນ ICACHE_HMONR.
  • ຈໍສະແດງຜົນ miss ຈະນັບການເຮັດທຸລະກໍາ AHB ທີ່ສາມາດເກັບໄວ້ໄດ້ໃນພອດແຄດຂອງ slave ທີ່ຂາດເນື້ອຫາ ICACHE (ຂໍ້ມູນທີ່ດຶງມາບໍ່ໄດ້ຢູ່ໃນແຄດແລ້ວ). ຕົວນັບຈໍພາບທີ່ຂາດຫາຍໄປແມ່ນມີຢູ່ໃນທະບຽນ ICACHE_MMONR.

ໝາຍເຫດ:

ຈໍສະແດງຜົນສອງອັນນີ້ບໍ່ຖືກປົກຄຸມເມື່ອຮອດຄ່າສູງສຸດ. ຈໍພາບເຫຼົ່ານີ້ຖືກຈັດການຈາກບິດຕໍ່ໄປນີ້ຢູ່ໃນທະບຽນ ICACHE_CR:

  • HITMEN bit (ຕາມລໍາດັບ MISSEN bit) ເພື່ອເປີດໃຊ້ / ຢຸດ hit (ຕາມລໍາດັບ miss) ຕິດຕາມກວດກາ
  • ບິດ HITMRST (ຕາມລໍາດັບ MISSMRST bit) ເພື່ອຕັ້ງຄ່າຈໍສະແດງຜົນ hit (ຕາມລໍາດັບ miss) ໂດຍຄ່າເລີ່ມຕົ້ນ, ຈໍສະແດງຜົນເຫຼົ່ານີ້ຖືກປິດການໃຊ້ງານເພື່ອຫຼຸດຜ່ອນການໃຊ້ພະລັງງານ.

ICACHE ບໍາລຸງຮັກສາ
ຊອບແວສາມາດເຮັດໃຫ້ ICACHE ບໍ່ຖືກຕ້ອງໂດຍການຕັ້ງບິດ CACHEINV ຢູ່ໃນທະບຽນ ICACHE_CR. ຄຳສັ່ງນີ້ເຮັດໃຫ້ແຄດທັງໝົດບໍ່ຖືກຕ້ອງ, ເຮັດໃຫ້ມັນຫວ່າງເປົ່າ. ໃນຂະນະດຽວກັນ, ຖ້າບາງພື້ນທີ່ remapped ຖືກເປີດໃຊ້, ຄຸນສົມບັດ remap ຍັງເຮັດວຽກ, ເຖິງແມ່ນວ່າໃນເວລາທີ່ ICACHE ຈະຖືກປິດໃຊ້ງານ. ເນື່ອງຈາກ ICACHE ພຽງແຕ່ຄຸ້ມຄອງການເຮັດທຸລະກໍາທີ່ອ່ານແລະບໍ່ໄດ້ຈັດການການເຮັດທຸລະກໍາການຂຽນ, ມັນບໍ່ຮັບປະກັນຄວາມສອດຄ່ອງໃນກໍລະນີຂອງການຂຽນ. ດັ່ງນັ້ນ, ຊອບແວຈະຕ້ອງເຮັດໃຫ້ ICACHE ບໍ່ຖືກຕ້ອງຫຼັງຈາກດໍາເນີນໂຄງການພາກພື້ນ.

ຄວາມ​ປອດ​ໄພ ICACH
ICACHE ແມ່ນອຸປະກອນຕໍ່ພ່ວງທີ່ປອດໄພທີ່ສາມາດຕັ້ງຄ່າໄດ້ຢ່າງປອດໄພຜ່ານທະບຽນການຕັ້ງຄ່າທີ່ປອດໄພ GTZC TZC. ເມື່ອມັນຖືກຕັ້ງຄ່າເປັນທີ່ປອດໄພ, ພຽງແຕ່ການເຂົ້າເຖິງທີ່ປອດໄພແມ່ນອະນຸຍາດໃຫ້ລົງທະບຽນ ICACHE. ICACHE ຍັງສາມາດຖືກຕັ້ງຄ່າເປັນສິດທິພິເສດໂດຍຜ່ານທະບຽນການຕັ້ງຄ່າສິດທິພິເສດ GTZC TZC. ເມື່ອ ICACHE ຖືກຕັ້ງຄ່າເປັນສິດທິພິເສດ, ມີພຽງແຕ່ການເຂົ້າເຖິງສິດທິພິເສດເທົ່ານັ້ນທີ່ຖືກອະນຸຍາດໃຫ້ລົງທະບຽນ ICACHE. ໂດຍຄ່າເລີ່ມຕົ້ນ, ICACHE ແມ່ນບໍ່ປອດໄພ ແລະບໍ່ມີສິດທິພິເສດຜ່ານ GTZC TZC.

ການຈັດການເຫດການແລະການຂັດຂວາງ

ICACHE ຈັດການຄວາມຜິດພາດໃນການເຮັດວຽກເມື່ອກວດພົບ, ໂດຍການຕັ້ງທຸງ ERRF ໃນ ICACHE_SR. ການຂັດຂວາງຍັງສາມາດຖືກສ້າງຂື້ນຖ້າບິດ ERRIE ຖືກຕັ້ງຢູ່ໃນ IACHE_IER. ໃນ​ກໍ​ລະ​ນີ​ຂອງ​ການ​ບໍ່​ຖືກ​ຕ້ອງ​ຂອງ ICACHE​, ໃນ​ເວ​ລາ​ທີ່ cache busy state ສໍາ​ເລັດ​ຮູບ​, ທຸງ BSYENDF ຖືກ​ຕັ້ງ​ຢູ່​ໃນ ICACHE_SR​. ການຂັດຂວາງຍັງສາມາດຖືກສ້າງຂື້ນຖ້າບິດ BSYENDIE ຖືກຕັ້ງຢູ່ໃນ ICACHE_IER. ຕາຕະລາງຂ້າງລຸ່ມນີ້ລາຍຊື່ການຂັດຂວາງ ICACHE ແລະທຸງເຫດການ.

ຕາຕະລາງ 5. ICACHE interrupt ແລະ bits ການຈັດການເຫດການ

ລົງທະບຽນ ຊື່ນ້ອຍ ລາຍລະອຽດເລັກນ້ອຍ ປະເພດການເຂົ້າເຖິງບິດ
 

ICACHE_SR

ຄາ​ວຽກ Cache ປະຕິບັດການດໍາເນີນການທີ່ບໍ່ຖືກຕ້ອງຢ່າງເຕັມທີ່  

ອ່ານເທົ່ານັ້ນ

BSYENDF ການດໍາເນີນການ cache invalidation ສໍາເລັດ
ຜິດພາດ ມີຂໍ້ຜິດພາດເກີດຂຶ້ນໃນລະຫວ່າງການດໍາເນີນການເກັບຂໍ້ມູນ
 

ICACHE_IER

ຜິດພາດ ເປີດໃຊ້ການຂັດຂວາງສໍາລັບຄວາມຜິດພາດຂອງ cache  

ອ່ານ/ຂຽນ

BSYENDIE ເປີດໃຊ້ການຂັດຂວາງໃນກໍລະນີຂອງການດໍາເນີນການ invalidation ສໍາເລັດ
 

ICACHE_FCR

CERRF ລຶບລ້າງ ERRF ໃນ ICACHE_SR  

ຂຽນເທົ່ານັ້ນ

CBSYENDF ລຶບ BSYENDF ໃນ ICACHE_SR

ຄຸນສົມບັດ DCACHE
ຈຸດ​ປະ​ສົງ​ຂອງ​ຖານ​ຄວາມ​ຈໍາ​ຂໍ້​ມູນ​ແມ່ນ​ເພື່ອ cache ການ​ໂຫຼດ​ຂໍ້​ມູນ​ຫນ່ວຍ​ຄວາມ​ຈໍາ​ພາຍ​ນອກ​ແລະ​ການ​ເກັບ​ຮັກ​ສາ​ຂໍ້​ມູນ​ທີ່​ມາ​ຈາກ​ໂຮງ​ງານ​ຜະ​ລິດ​ຫຼື​ຈາກ​ອຸ​ປະ​ກອນ​ແມ່​ບົດ​ລົດ​ເມ​ອື່ນ​. DCACHE ຄຸ້ມຄອງທັງການອ່ານ ແລະຂຽນການເຮັດທຸລະກໍາ.
DCACHE cacheability traffic

DCACHE ເກັບຄວາມຊົງຈຳພາຍນອກຈາກສ່ວນຕິດຕໍ່ແມ່ແບບພອດຜ່ານລົດເມ AHB. ການຮ້ອງຂໍຫນ່ວຍຄວາມຈໍາທີ່ເຂົ້າມາແມ່ນຖືກກໍານົດເປັນ cacheable ອີງຕາມຄຸນລັກສະນະການລັອກຫນ່ວຍຄວາມຈໍາການເຮັດທຸລະກໍາ AHB ຂອງມັນ. ນະໂຍບາຍການຂຽນ DCACHE ຖືກກໍານົດວ່າເປັນການຂຽນຜ່ານຫຼືຂຽນຄືນໂດຍອີງຕາມຄຸນລັກສະນະຫນ່ວຍຄວາມຈໍາທີ່ຖືກຕັ້ງຄ່າໂດຍ MPU. ເມື່ອພາກພື້ນໃດນຶ່ງຖືກຕັ້ງຄ່າເປັນບໍ່ສາມາດເກັບຂໍ້ມູນໄດ້, DCACHE ຈະຖືກຂ້າມໄປ.

 ຕາຕະລາງ 6. cacheability DCACHE ສໍາລັບທຸລະກໍາ AHB

ຄຸນສົມບັດການຊອກຫາ AHB ຄຸນ​ລັກ​ສະ​ນະ AHB bufferable​ ຄວາມສາມາດໃນການເກັບຂໍ້ມູນ
0 X ອ່ານ​ແລະ​ຂຽນ​: ບໍ່​ແມ່ນ cacheable​
 

1

 

0

ອ່ານ: cacheable

ຂຽນ: (cacheable) ຂຽນຜ່ານ

 

1

 

1

ອ່ານ: cacheable

ຂຽນ: (cacheable) ຂຽນຄືນ

DCACHE ພາກພື້ນທີ່ສາມາດເກັບໄດ້
ສໍາລັບຊຸດ STM32U5, ການໂຕ້ຕອບສໍາລອງ DCACHE1 ແມ່ນເຊື່ອມຕໍ່ກັບ Cortex-M33 ຜ່ານລົດເມ S-AHB ແລະເກັບຂໍ້ມູນ GFXMMU, FMC, ແລະ HSPI/OCTOSPIs. ອິນເຕີເຟດ DCACHE2 slave ແມ່ນເຊື່ອມຕໍ່ກັບ DMA2D ຜ່ານລົດເມພອດ M0, ແລະເກັບຄວາມຊົງຈໍາພາຍໃນແລະພາຍນອກທັງຫມົດ (ຍົກເວັ້ນ SRAM4 ແລະ BRKPSRAM). ສໍາລັບຊຸດ STM32H5, ການໂຕ້ຕອບສໍາລອງ DCACHE ແມ່ນເຊື່ອມຕໍ່ກັບ Cortex-M33 ຜ່ານຄວາມຊົງຈໍາພາຍນອກ S-AHB ຜ່ານ FMC ແລະ OCTOSPI.

ຕາຕະລາງ 7. DCACHE cacheable regions and interfaces

ພາກພື້ນທີ່ຢູ່ຫນ່ວຍຄວາມຈໍາທີ່ສາມາດເກັບໄວ້ໄດ້ DCACHE1 ການໂຕ້ຕອບທີ່ສາມາດເກັບໄວ້ໄດ້ DCACHE2 ການໂຕ້ຕອບທີ່ສາມາດເກັບໄວ້ໄດ້
GFXMMU X X
SRAM1  

 

 

ບໍ່ມີ

X
SRAM2 X
SRAM3 X
SRAM5 X
SRAM6 X
HSPI1 X X
OCTOSPI1 X X
ທະນາຄານ FMC X X
OCTOSPI2 X X

ໝາຍເຫດ

ບາງສ່ວນຕິດຕໍ່ບໍ່ຖືກຮອງຮັບໃນບາງຜະລິດຕະພັນ. ເບິ່ງຮູບທີ 1 ຫຼືຄູ່ມືການອ້າງອີງຜະລິດຕະພັນສະເພາະ.
ປະເພດລະເບີດ
ເຊັ່ນດຽວກັນກັບ ICACHE, DCACHE ສະຫນັບສະຫນູນການລະເບີດທີ່ເພີ່ມຂຶ້ນແລະຫໍ່ (ເບິ່ງພາກ 3.1.3). ສໍາລັບ DCACHE, ປະເພດລະເບີດແມ່ນຖືກຕັ້ງຄ່າຜ່ານບິດ HBURST ໃນ DCACHE_CR.
ການຕັ້ງຄ່າ DCACHE
ໃນລະຫວ່າງການ boot, DCACHE ຖືກປິດໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນເຮັດໃຫ້ການຮ້ອງຂໍຫນ່ວຍຄວາມຈໍາຂອງ slave ຖືກສົ່ງຕໍ່ໂດຍກົງໄປຫາພອດແມ່ແບບ. ເພື່ອເປີດໃຊ້ DCACHE, EN bit ຕ້ອງຖືກຕັ້ງຢູ່ໃນທະບຽນ DCACHE_CR. ຈໍສະແດງຜົນ Hit-and-miss DCACHE ປະຕິບັດສີ່ຕົວຕິດຕາມສໍາລັບການວິເຄາະປະສິດທິພາບ cache:

  • ສອງ 32-bit (R/W) hit monitor: ນັບຈໍານວນເວລາທີ່ CPU ອ່ານຫຼືຂຽນຂໍ້ມູນໃນຫນ່ວຍຄວາມຈໍາ cache ໂດຍບໍ່ມີການສ້າງທຸລະກໍາໃນພອດແມ່ບົດ DCACHE (ຂໍ້ມູນທີ່ມີຢູ່ໃນ cache ແລ້ວ). ເຄົາເຕີຕິດຕາມການຕີ (R/W) ແມ່ນມີຢູ່ໃນທະບຽນ DCACHE_RHMONR ແລະ DCACHE_WHMONR ຕາມລໍາດັບ.
  • ສອງ 16-bit (R/W) miss monitors: ນັບຈໍານວນເວລາທີ່ CPU ອ່ານຫຼືຂຽນຂໍ້ມູນໃນຫນ່ວຍຄວາມຈໍາ cache ແລະສ້າງທຸລະກໍາໃນພອດແມ່ບົດ DCACHE, ເພື່ອໂຫລດຂໍ້ມູນຈາກພື້ນທີ່ຫນ່ວຍຄວາມຈໍາ (ຂໍ້ມູນທີ່ດຶງມາບໍ່ໄດ້. ມີຢູ່ໃນ cache ແລ້ວ). (R/W) miss monitors ແມ່ນມີໃຫ້ຕາມລໍາດັບຢູ່ໃນທະບຽນ DCACHE_RMMONR ແລະ DCACHE_WMMONR.

ໝາຍເຫດ:

ຈໍສະແດງຜົນທັງ 4 ໜ່ວຍນີ້ບໍ່ປິດບັງເມື່ອຮອດຄ່າສູງສຸດ. ຈໍພາບເຫຼົ່ານີ້ຖືກຈັດການຈາກບິດຕໍ່ໄປນີ້ຢູ່ໃນທະບຽນ DCACHE_CR:

  • WHITMAN ບິດ (ຕາມລໍາດັບ WMISSEN bit) ເພື່ອເປີດໃຊ້ / ຢຸດການຕີການຂຽນ (ຕາມລໍາດັບ miss) ຈໍພາບ
  • RHITMEN bit (ຕາມລໍາດັບ RMISSEN bit) ເພື່ອເປີດໃຊ້ / ຢຸດການອ່ານ hit (ຕາມລໍາດັບ miss) ຕິດຕາມກວດກາ
  • ບິດ WHITMRST (ຕາມລໍາດັບ WMISSMRST bit) ເພື່ອຣີເຊັດບັນທຶກການຂຽນ (ຕາມລໍາດັບ miss)
  • ບິດ RHITMRST (ຕາມລໍາດັບ RMISSMRST bit) ເພື່ອຣີເຊັດການອ່ານ (ຕາມລໍາດັບ miss) monitor

ໂດຍຄ່າເລີ່ມຕົ້ນ, ຈໍພາບເຫຼົ່ານີ້ຖືກປິດໃຊ້ງານເພື່ອຫຼຸດຜ່ອນການໃຊ້ພະລັງງານ.

DCACHE ບໍາລຸງຮັກສາ
DCACHE ສະຫນອງການປະຕິບັດການບໍາລຸງຮັກສາຫຼາຍຢ່າງທີ່ສາມາດຕັ້ງຄ່າໄດ້ຜ່ານ CACHECMD[2:0] ໃນ DCACHE_CR.

  • 000: ບໍ່ມີການດໍາເນີນງານ (ຄ່າເລີ່ມຕົ້ນ)
  • 001: ລະດັບຄວາມສະອາດ. ເຮັດຄວາມສະອາດຂອບເຂດທີ່ແນ່ນອນໃນ cache
  • 010: ໄລຍະບໍ່ຖືກຕ້ອງ. ບໍ່ຖືກຕ້ອງຂອບເຂດທີ່ແນ່ນອນໃນ cache
  • 010: ໄລຍະທີ່ສະອາດ ແລະບໍ່ຖືກຕ້ອງ. ເຮັດຄວາມສະອາດແລະບໍ່ຖືກຕ້ອງຂອບເຂດທີ່ແນ່ນອນໃນ cache

ໄລຍະທີ່ເລືອກແມ່ນຖືກຕັ້ງຄ່າຜ່ານ:

  • ລົງທະບຽນ CMDSTARTADDR: ທີ່ຢູ່ເລີ່ມຕົ້ນຄໍາສັ່ງ
  • ລົງທະບຽນ CMDENDADDR: ທີ່ຢູ່ສິ້ນສຸດຄໍາສັ່ງ

ໝາຍເຫດ:

ການລົງທະບຽນນີ້ຕ້ອງຖືກຕັ້ງກ່ອນທີ່ CACHECMD ຈະຖືກຂຽນ. ການຮັກສາຄໍາສັ່ງ cache ເລີ່ມຕົ້ນເມື່ອ STARTCMD bit ຖືກຕັ້ງຢູ່ໃນທະບຽນ DCACHE_CR. DCACHE ຍັງຮອງຮັບ CACHE invalidation ເຕັມຮູບແບບໂດຍການຕັ້ງຄ່າ CACHEINV bit ໃນທະບຽນ DCACHE_CR.

ຄວາມປອດໄພ DCACHE
DCACHE ແມ່ນອຸປະກອນຕໍ່ພ່ວງທີ່ປອດໄພທີ່ສາມາດຕັ້ງຄ່າໄດ້ຢ່າງປອດໄພຜ່ານທະບຽນການຕັ້ງຄ່າທີ່ປອດໄພ GTZC TZC. ເມື່ອມັນຖືກຕັ້ງຄ່າເປັນຄວາມປອດໄພ, ມີພຽງແຕ່ການເຂົ້າເຖິງທີ່ປອດໄພເທົ່ານັ້ນທີ່ຖືກອະນຸຍາດໃຫ້ລົງທະບຽນ DCACHE. DCACHE ຍັງສາມາດຖືກຕັ້ງຄ່າເປັນສິດທິພິເສດໂດຍຜ່ານທະບຽນການຕັ້ງຄ່າສິດທິພິເສດ GTZC TZC. ເມື່ອ DCACHE ຖືກຕັ້ງຄ່າເປັນສິດທິພິເສດ, ມີພຽງແຕ່ການເຂົ້າເຖິງສິດທິພິເສດເທົ່ານັ້ນທີ່ອະນຸຍາດໃຫ້ລົງທະບຽນ DCACHE. ໂດຍຄ່າເລີ່ມຕົ້ນ, DCACHE ແມ່ນບໍ່ປອດໄພ ແລະບໍ່ມີສິດທິພິເສດຜ່ານ GTZC TZC.

ການຈັດການເຫດການແລະການຂັດຂວາງ
DCACHE ຈັດການຄວາມຜິດພາດໃນການເຮັດວຽກເມື່ອກວດພົບ, ໂດຍການຕັ້ງທຸງ ERRF ໃນ DCACHE_SR. ການຂັດຂວາງຍັງສາມາດຖືກສ້າງຂື້ນຖ້າບິດ ERRIE ຖືກຕັ້ງຢູ່ໃນ DCACHE_IER. ໃນ​ກໍ​ລະ​ນີ​ຂອງ​ການ​ບໍ່​ຖືກ​ຕ້ອງ​ຂອງ DCACHE​, ໃນ​ເວ​ລາ​ທີ່ cache busy state ສິ້ນ​ສຸດ​ລົງ​, ທຸງ BSYENDF ຖືກ​ຕັ້ງ​ຢູ່​ໃນ DCACHE_SR​. ການຂັດຂວາງຍັງສາມາດຖືກສ້າງຂື້ນຖ້າບິດ BSYENDIE ຖືກຕັ້ງຢູ່ໃນ DCACHE_IER. ສະຖານະການຄໍາສັ່ງ DCACHE ສາມາດກວດສອບໄດ້ຜ່ານ CMDENF ແລະ BUSYCMDF ຜ່ານ DCACHE_SR ການຂັດຂວາງສາມາດຖືກສ້າງຂື້ນໄດ້ຖ້າບິດ CMDENDIE ຢູ່ໃນ DCACHE_IER. ຕາຕະລາງຂ້າງລຸ່ມນີ້ລາຍຊື່ການຂັດຂວາງ DCACHE ແລະທຸງເຫດການ

ຕາຕະລາງ 8. DCACHE Interrupt ແລະ bits ການຈັດການເຫດການ

ລົງທະບຽນ ລົງທະບຽນ ລາຍລະອຽດເລັກນ້ອຍ ປະເພດການເຂົ້າເຖິງບິດ
 

 

 

DCACHE_SR

ຄາ​ວຽກ Cache ປະຕິບັດການດໍາເນີນການທີ່ບໍ່ຖືກຕ້ອງຢ່າງເຕັມທີ່  

 

 

ອ່ານເທົ່ານັ້ນ

BSYENDF Cache full invalidate ການດໍາເນີນການສິ້ນສຸດລົງ
BUSYCMDF Cache ປະຕິບັດຄໍາສັ່ງໄລຍະ
CMDENDF ສິ້ນສຸດຄໍາສັ່ງໄລຍະ
ERRF ມີຂໍ້ຜິດພາດເກີດຂຶ້ນໃນລະຫວ່າງການດໍາເນີນການເກັບຂໍ້ມູນ
 

DCACHE_IER

ຜິດພາດ ເປີດໃຊ້ການຂັດຂວາງສໍາລັບຄວາມຜິດພາດຂອງ cache  

ອ່ານ/ຂຽນ

CMDENDIE ເປີດໃຊ້ການຂັດຈັງຫວະຢູ່ປາຍຄໍາສັ່ງໄລຍະ
BSYENDIE ເປີດໃຊ້ການຂັດຈັງຫວະໃນການສິ້ນສຸດການດໍາເນີນການທີ່ບໍ່ຖືກຕ້ອງຢ່າງເຕັມທີ່
 

DCACHE_FCR

CERRF ລຶບລ້າງ ERRF ໃນ DCACHE_SR  

ຂຽນເທົ່ານັ້ນ

CCMDENDF ລຶບລ້າງ CMDENDF ໃນ DCACHE_SR
CBSYENDF ລຶບ BSYENDF ໃນ DCACHE_SR

ການປະຕິບັດ ICACHE ແລະ DCACHE ແລະການໃຊ້ພະລັງງານ

ການນໍາໃຊ້ ICACHE ແລະ DCACHE ປັບປຸງການປະຕິບັດຄໍາຮ້ອງສະຫມັກໃນເວລາທີ່ເຂົ້າເຖິງຄວາມຊົງຈໍາພາຍນອກ. ຕາຕະລາງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນຜົນກະທົບຂອງ ICACHE ແລະ DCACHE ໃນການປະຕິບັດ CoreMark® ເມື່ອເຂົ້າເຖິງຄວາມຊົງຈໍາພາຍນອກ.

ຕາຕະລາງ 9. ການປະຕິບັດ ICACHE ແລະ DCACHE ໃນການປະຕິບັດ CoreMark ກັບຄວາມຊົງຈໍາພາຍນອກ

(1)
ລະຫັດ CoreMark ຂໍ້ມູນ CoreMark ການຕັ້ງຄ່າ ICACHE ການຕັ້ງຄ່າ DCACHE ຄະແນນ CoreMark/Mhz
ໜ່ວຍຄວາມຈຳ Flash ພາຍໃນ SRAM ພາຍໃນ ເປີດໃຊ້ (2 ທາງ) ຄົນພິການ 3.89
ໜ່ວຍຄວາມຈຳ Flash ພາຍໃນ ພາຍນອກ Octo-SPI PSRAM (S-bus) ເປີດໃຊ້ (2 ທາງ) ເປີດໃຊ້ແລ້ວ 3.89
ໜ່ວຍຄວາມຈຳ Flash ພາຍໃນ ພາຍນອກ Octo-SPI PSRAM (S-bus) ເປີດໃຊ້ (2 ທາງ) ຄົນພິການ 0.48
ພາຍນອກ Octo-SPI Flash (C-bus) SRAM ພາຍໃນ ເປີດໃຊ້ (2 ທາງ) ຄົນພິການ 3.86
ພາຍນອກ Octo-SPI Flash (C-bus) SRAM ພາຍໃນ ຄົນພິການ ຄົນພິການ 0.24
ໜ່ວຍຄວາມຈຳ Flash ພາຍໃນ SRAM ພາຍໃນ ຄົນພິການ ຄົນພິການ 2.69

ເງື່ອນໄຂການທົດສອບ:

  • ຜະລິດຕະພັນທີ່ໃຊ້ໄດ້: STM32U575/585
  • ຄວາມຖີ່ລະບົບ: 160 MHz.
  • ໜ່ວຍຄວາມຈຳ Octo-SPI PSRAM ພາຍນອກ: 80 MHz (ໂໝດ DTR).
  • ໜ່ວຍຄວາມຈຳແຟລດ Octo-SPI ພາຍນອກ: 80 MHz (ໂໝດ STR).
  • Compiler: IAR V8.50.4.
  • PREFETCH ພາຍໃນ: ເປີດ.

ການນໍາໃຊ້ ICACHE ແລະ DCACHE ຫຼຸດຜ່ອນການໃຊ້ພະລັງງານໃນເວລາທີ່ເຂົ້າເຖິງຄວາມຊົງຈໍາພາຍໃນແລະພາຍນອກ. ຕາຕະລາງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນຜົນກະທົບຂອງ ICACHE ຕໍ່ການບໍລິໂພກພະລັງງານໃນລະຫວ່າງການປະຕິບັດ CoreMark.

ຕາຕະລາງ 10. ການປະຕິບັດ CoreMark ICACHE ຜົນກະທົບຕໍ່ການບໍລິໂພກພະລັງງານ

ການຕັ້ງຄ່າ ICACHE ການໃຊ້ພະລັງງານ MCU (mA)
ເປີດໃຊ້ (2 ທາງ) 7.60
ເປີດໃຊ້ (1 ທາງ) 7.13
ຄົນພິການ 8.89
  1. ເງື່ອນໄຂການທົດສອບ:
    • ຜະລິດຕະພັນທີ່ໃຊ້ໄດ້: STM32U575/585
    • ລະຫັດ CoreMark: ຫນ່ວຍຄວາມຈໍາ Flash ພາຍໃນ.
    • ຂໍ້ມູນ CoreMark: SRAM ພາຍໃນ.
    • ໜ່ວຍຄວາມຈຳ Flash ພາຍໃນ PREFETCH: ເປີດ.
    • ຄວາມຖີ່ລະບົບ: 160 MHz.
    • Compiler: IAR V8.32.2.
    • ສະບັບtage ໄລຍະ: 1.
    • SMPS: ເປີດ.
  2. way set associative configuration ແມ່ນປະຕິບັດຫຼາຍກວ່າ 1-way set associative configuration ສໍາລັບລະຫັດທີ່ບໍ່ສາມາດໂຫຼດໄດ້ເຕັມໃນ cache. ໃນຂະນະດຽວກັນ, 1-way set associative cache ເກືອບຈະມີປະສິດທິພາບຫຼາຍກວ່າ 2-way set associative cache. ແຕ່ລະລະຫັດຕ້ອງໄດ້ຮັບການປະເມີນໃນທັງສອງການຕັ້ງຄ່າສະມາຄົມ, ເພື່ອເລືອກການຊື້ຂາຍທີ່ດີທີ່ສຸດລະຫວ່າງການປະຕິບັດແລະການບໍລິໂພກພະລັງງານ. ການເລືອກແມ່ນຂຶ້ນກັບບູລິມະສິດຂອງຜູ້ໃຊ້.

ສະຫຼຸບ

ຖານຄວາມຈໍາທໍາອິດທີ່ພັດທະນາໂດຍ STMicroelectronics, ICACHE ແລະ DCACHE, ສາມາດເກັບຄວາມຊົງຈໍາພາຍໃນແລະພາຍນອກ, ສະເຫນີການເພີ່ມປະສິດທິພາບສໍາລັບການຈະລາຈອນຂໍ້ມູນແລະການດຶງຂໍ້ມູນຄໍາແນະນໍາ. ເອກະສານນີ້ສະແດງໃຫ້ເຫັນລັກສະນະທີ່ແຕກຕ່າງກັນທີ່ສະຫນັບສະຫນູນໂດຍ ICACHE ແລະ DCACHE, ຄວາມງ່າຍດາຍຂອງການຕັ້ງຄ່າແລະຄວາມຍືດຫຍຸ່ນຂອງພວກມັນເຮັດໃຫ້ຄ່າໃຊ້ຈ່າຍໃນການພັດທະນາຕ່ໍາກວ່າແລະໃຊ້ເວລາຕະຫຼາດໄວຂຶ້ນ.

ປະຫວັດການແກ້ໄຂ

ຕາຕະລາງ 11. ປະຫວັດການແກ້ໄຂເອກະສານ

ວັນທີ ຮຸ່ນ ການປ່ຽນແປງ
10-ຕຸລາ-2019 1 ການປ່ອຍຕົວໃນເບື້ອງຕົ້ນ.
 

 

27-Feb-2020

 

 

2

ອັບເດດ:

• ຕາຕະລາງ 2. ຂົງເຂດຄວາມຈໍາ ແລະທີ່ຢູ່ຂອງພວກມັນ

• ພາກທີ 2.1.7 ການບຳລຸງຮັກສາ ICACHE

• ພາກທີ 2.1.8 ຄວາມປອດໄພ ICACHE

 

 

 

 

7-ທັນວາ-2021

 

 

 

 

3

ອັບເດດ:

• ຊື່ເອກະສານ

• ແນະນໍາ

• ພາກທີ 1 ICACHE ແລະ DCACHE ຫຼາຍກວ່າview

• ບົດສະຫຼຸບ 4 ເພີ່ມ:

• ພາກທີ 2 ລັກສະນະ ICACHE ແລະ DCACHE

• ພາກທີ 3 ການປະຕິບັດ ICACHE ແລະ DCACHE ແລະການໃຊ້ພະລັງງານ

 

 

 

 

 

 

15-Feb-2023

 

 

 

 

 

 

4

ອັບເດດ:

•         ພາກທີ 2.2: STM32U5 ຊຸດສະຖາປັດຕະຍະກຳອັດສະລິຍະ

•         ພາກທີ 2.5: ແຜນວາດຕັນ DCACHE

•         ພາກທີ 3.1.1: Dual masters

•         ພາກທີ 3.1.2: 1-way versus 2-way ICACHE

•         ພາກ​ທີ 3.1.4​: ຂົງ​ເຂດ​ທີ່​ສາ​ມາດ​ຖານ​ຄວາມ​ຈໍາ​ແລະ​ຄຸນ​ສົມ​ບັດ remapping​

•         ພາກທີ 3.2: ຄຸນສົມບັດຂອງ DCACHE

•         ພາກທີ 3.2.2: DCACHE ພາກພື້ນທີ່ສາມາດເກັບໄດ້

•         ພາກທີ 4: ການປະຕິບັດ ICACHE ແລະ DCACHE ແລະການໃຊ້ພະລັງງານ ເພີ່ມ:

•         ພາກທີ 1: ຂໍ້ມູນທົ່ວໄປ

 

11-ມີນາ-2024

 

5

ອັບເດດ:

•         ພາກທີ 2.3: STM32H5 ຊຸດສະຖາປັດຕະຍະກຳອັດສະລິຍະ

•         ພາກທີ 3.1.1: Dual masters

ແຈ້ງການສໍາຄັນ - ອ່ານຢ່າງລະມັດລະວັງ
STMicroelectronics NV ແລະບໍລິສັດຍ່ອຍຂອງຕົນ (“ST”) ສະຫງວນສິດໃນການປ່ຽນແປງ, ການແກ້ໄຂ, ການປັບປຸງ, ການປັບປຸງ, ການແກ້ໄຂ ແລະການປັບປຸງຜະລິດຕະພັນ ST ແລະ/ຫຼື ເອກະສານນີ້ໄດ້ທຸກເວລາໂດຍບໍ່ຕ້ອງແຈ້ງລ່ວງໜ້າ. ຜູ້ຊື້ຄວນໄດ້ຮັບຂໍ້ມູນທີ່ກ່ຽວຂ້ອງຫລ້າສຸດກ່ຽວກັບຜະລິດຕະພັນ ST ກ່ອນທີ່ຈະວາງຄໍາສັ່ງ. ຜະລິດຕະພັນ ST ແມ່ນຂາຍຕາມຂໍ້ກໍານົດແລະເງື່ອນໄຂຂອງ ST ຂອງການຂາຍໃນສະຖານທີ່ໃນເວລາທີ່ຮັບຮູ້ຄໍາສັ່ງ. ຜູ້ຊື້ແມ່ນຮັບຜິດຊອບພຽງແຕ່ສໍາລັບການເລືອກ, ການຄັດເລືອກ, ແລະການນໍາໃຊ້ຜະລິດຕະພັນ ST ແລະ ST ຖືວ່າບໍ່ມີຄວາມຮັບຜິດຊອບສໍາລັບການຊ່ວຍເຫຼືອຄໍາຮ້ອງສະຫມັກຫຼືການອອກແບບຜະລິດຕະພັນຂອງຜູ້ຊື້. ບໍ່ມີໃບອະນຸຍາດ, ສະແດງອອກຫຼືໂດຍຄວາມຫມາຍ, ຕໍ່ກັບສິດທິຊັບສິນທາງປັນຍາໃດໆທີ່ຖືກອະນຸຍາດໂດຍ ST ຢູ່ທີ່ນີ້. ການຂາຍຄືນຂອງຜະລິດຕະພັນ ST ທີ່ມີຂໍ້ກໍານົດທີ່ແຕກຕ່າງຈາກຂໍ້ມູນທີ່ກໍານົດໄວ້ໃນທີ່ນີ້ຈະປະຖິ້ມການຮັບປະກັນໃດໆທີ່ໃຫ້ໂດຍ ST ສໍາລັບຜະລິດຕະພັນດັ່ງກ່າວ. ST ແລະໂລໂກ້ ST ແມ່ນເຄື່ອງໝາຍການຄ້າຂອງ ST. ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບເຄື່ອງຫມາຍການຄ້າ ST, ເບິ່ງ www.st.com/trademarks. ຊື່ຜະລິດຕະພັນ ຫຼືບໍລິການອື່ນໆທັງໝົດແມ່ນເປັນຊັບສິນຂອງເຈົ້າຂອງຂອງເຂົາເຈົ້າ. ຂໍ້ມູນໃນເອກະສານນີ້ແທນທີ່ ແລະແທນທີ່ຂໍ້ມູນທີ່ສະໜອງໃຫ້ໃນເມື່ອກ່ອນໃນສະບັບກ່ອນໜ້າຂອງເອກະສານນີ້. © 2024 STMicroelectronics – ສະຫງວນລິຂະສິດທັງໝົດ

ເອກະສານ / ຊັບພະຍາກອນ

STMicroelectronics STM32H5 Series Microcontrollers [pdf] ຄູ່ມືຜູ້ໃຊ້
STM32H5 Series Microcontrollers, STM32H5, Series Microcontrollers, Microcontrollers

ເອກະສານອ້າງອີງ

ອອກຄໍາເຫັນ

ທີ່ຢູ່ອີເມວຂອງເຈົ້າຈະບໍ່ຖືກເຜີຍແຜ່. ຊ່ອງຂໍ້ມູນທີ່ຕ້ອງການຖືກໝາຍໄວ້ *