Cortex-logo

Mga Cortex-M0 Plus Microcontroller

Cortex-M0-Plus-Microcontrollers-product

Kumusta, at maligayang pagdating sa pagtatanghal na ito ng ARM® Cortex®-M0+ core na naka-embed sa lahat ng produkto ng pamilya ng STM32U0 microcontroller.

Natapos ang processor ng Cortex-M0+view

  • Arkitektura ng ARMv6-M
  • Arkitekturang Von Neuman, 2-stage pipeline
  • Iisang isyu na arkitektura
  • Multiply sa 1-cycle
  • Memory Protection Unit (MPU)
  • Single-cycle na I/O port

Cortex-M0-Plus-Microcontrollers-1

Napakababang disenyo ng kapangyarihan       Napaka compact na code
Mababang pagkonsumo ng kuryente at mataas na kahusayan ng enerhiya Maliban sa control instructions at branch at link, lahat ng instructions ay 16 bits ang haba

Ang Cortex®-M0+ core ay bahagi ng ARM Cortex-M na pangkat ng mga 32-bit na RISC core. Ipinapatupad nito ang arkitektura ng ARMv6-M at nagtatampok ng 2-stage pipeline.
Ang Cortex®-M0+ ay may natatanging AHB-Lite master port, ngunit sumusuporta sa sabay-sabay na pagkuha ng pagtuturo at pag-access ng data kapag tina-target ng access ng data ang hanay ng address ng Fast I/O Port.

Ang pagiging tugma ng mga processor ng Cortex-M

Seamless na arkitektura sa lahat ng application

Cortex-M0-Plus-Microcontrollers-2

Ang mga STM32U0 microcontroller ay nagsasama ng isang ARM® Cortex®-M0+ core upang makinabang mula sa walang kapantay na pagganap sa bawat milliwatt ratio.
Ang lahat ng Cortex®-M CPU ay may 32-bit na arkitektura.
Ang Cortex®-M3 ay ang unang Cortex®-M CPU na inilabas ng ARM.
Pagkatapos ay nagpasya ang ARM na makilala ang dalawang linya ng produkto: mataas na pagganap at mababang kapangyarihan, habang pinapanatili ang pagiging tugma sa pagitan nila.
Ang Cortex®-M0+ ay kabilang sa low power na linya ng produkto. Ito ay dinisenyo para sa mga device na pinapagana ng baterya, napakasensitibo sa paggamit ng kuryente.

Tapos na ang core architectureview

Cortex-M0-Plus-Microcontrollers-3

Ang Cortex®-M0+ core ay naghahatid ng higit na pagganap kaysa sa Cortex®-M0 core salamat sa 2-stage pipeline ng pagtuturo.
Simulan natin ang paglalarawan ng CPU sa pamamagitan ng core ng processor na namamahala sa pagkuha at pagpapatupad ng mga tagubilin.

ARM Cortex-M0+ → 2-stage pipeline

Cortex-M0-Plus-Microcontrollers-4

Karamihan sa mga tagubilin sa V6-M ay 16 bit ang haba. Mayroon lamang anim na 32-bit na mga tagubilin at karamihan sa mga ito ay mga tagubilin sa pagkontrol, na bihirang ginagamit. Gayunpaman, ang pagtuturo ng branch at link, na ginagamit upang tumawag sa isang sub-program ay 32 bits din ang haba, upang suportahan ang isang malaking offset sa pagitan ng pagtuturo na ito at ang label na tumuturo sa susunod na pagtuturo na isasagawa.
Pinakamainam na ang isang 32-bit na access ay naglo-load ng dalawang 16-bit na tagubilin, na nagreresulta sa mas kaunting pagkuha sa bawat pagtuturo.
Sa panahon ng orasan bilang 2, walang pag-fetch ng pagtuturo na nagaganap. Ang AHB Lite port ay available para magsagawa ng data access kapag ang instruction N ay isang load/store instruction.

Pagganap ng sangay

Cortex®-M0+ core
• Pinakamataas na dalawang 16-bit na mga tagubilin sa anino ng sangay

Cortex-M0-Plus-Microcontrollers-5

Sa isang partikular na branch, mas kaunting mga pre-fetch na tagubilin ang nasasayang (salamat sa 2-stage pipeline).
Sa numero 1 ng orasan, kinukuha ng processor ang Inst0 at isang walang kundisyong pagtuturo ng sangay.
Sa orasan numero 2, ito ay nagpapatupad ng Instr0.
Sa numerong 3 ng orasan, isinasagawa nito ang pagtuturo ng sangay habang kinukuha ang dalawang susunod na sunud-sunod na mga tagubilin na Inst1 at Inst2 na tinatawag na mga tagubilin sa anino ng sangay.

Sa numero 4 ng orasan, itinatapon ng processor ang Inst1 at Inst2 at kinukuha ang InstrN at InstN+1.
Ang Cortex-M0, M3 at M4 ay nagpapatupad ng 3-stage pipeline: Kunin, I-decode at Ipatupad. Mas malaki ang bilang ng mga tagubilin sa anino ng sangay: hanggang sa apat na 16-bit na tagubilin.

Tapos na ang core architectureview 

Cortex-M0-Plus-Microcontrollers-6

Ang Cortex®-M0+ ay walang naka-embed na cache o panloob na RAM. Dahil dito, ang anumang transaksyon sa pagkuha ng pagtuturo ay idinidirekta sa interface ng AHB-Lite at ang anumang pag-access sa data ay idinidirekta sa interface ng AHB-Lite o sa Single-cycle na I/O port.
Tandaan na ang STM32U0 ay nagpapatupad ng SoC-level na cache ng pagtuturo, panlabas sa CPU, na matatagpuan sa naka-embed na flash controller.

Ang AHB-Lite master port ay konektado sa isang bus matrix, na nagbibigay-daan sa CPU na ma-access ang mga alaala at peripheral. Dahil ang mga transaksyon ay pipeline sa AHB-Lite, ang pinakamahusay na throughput ay 32 bits ng data o mga tagubilin sa bawat orasan, na may minimum na 2-clock latency.
Nagtatampok din ang Cortex®-M0+ ng Single-cycle I/O Port, na nagbibigay-daan sa CPU na ma-access ang data na may 1-clock latency. Tinutukoy ng panlabas na lohika ng pag-decode ang hanay ng address kung saan ang mga pag-access ng data ay dinadala sa port na ito.
Sa STM32U0, ang Single-cycle I/O Port ay hindi ginagamit para ma-access ang mga GPIO port registers. Ang mga GPIO port ay nakamapa sa AHB sa halip, na nagpapahintulot na ma-access ng DMA.

Unit ng proteksyon ng memorya

  • Tinutukoy ng mga setting ng attribute ng MPU ang mga pahintulot sa pag-access
  • 8 independiyenteng mga rehiyon ng memorya
    • Maaari bang magsagawa ng code?
    • Magsulat ng data?
    • Unprivileged mode access?

Ang MPU sa STM32U0 microcontroller ay nag-aalok ng suporta para sa walong independiyenteng mga rehiyon ng memorya, na may mga independiyenteng maaaring i-configure na mga katangian para sa:

  • pahintulot sa pag-access: pinapayagan o hindi magbasa/magsulat sa privileged/unprivileged mode,
  • pahintulot sa pagpapatupad: executable na rehiyon o rehiyon na ipinagbabawal para sa pagkuha ng pagtuturo.

Mga sanggunian

Para sa higit pang mga detalye, mangyaring sumangguni sa mga tala ng application na ito at sa Cortex®-M0+ programming manual na available sa www.st.com website.
Bisitahin din ang ARM website kung saan makakahanap ka ng higit pang impormasyon tungkol sa Cortex®-M0+ core.

salamat po
© STMicroelectronics – Nakalaan ang lahat ng karapatan.
Ang ST logo ay isang trademark o isang rehistradong trademark ng STMicroelectronics International NV o mga kaakibat nito sa EU at/o ibang mga bansa.
Para sa karagdagang impormasyon tungkol sa mga trademark ng ST, mangyaring sumangguni sa www.st.com/trademarks
Ang lahat ng iba pang mga pangalan ng produkto o serbisyo ay pag-aari ng kani-kanilang mga may-ari.

Mga Dokumento / Mga Mapagkukunan

Mga Microcontroller ng ST Cortex-M0 Plus [pdf] Manwal ng Pagtuturo
Cortex-M0, Cortex-M23, Cortex-M33-M35P, Cortex-M55, Cortex-M85, Cortex-M0 Plus Microcontroller, Cortex-M0 Plus, Microcontrollers

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *