Cortex-logo

Microcontroladores Cortex-M0 Plus

Produto de microcontroladores Cortex-M0-Plus

Ola e benvido a esta presentación do núcleo ARM® Cortex®-M0+ que está integrado en todos os produtos da familia de microcontroladores STM32U0.

Procesador Cortex-M0+ rematadoview

  • Arquitectura ARMv6-M
  • Arquitectura Von Neuman, 2-stage gasoduto
  • Arquitectura de un único tema
  • Multiplicar en 1 ciclo
  • Unidade de protección de memoria (MPU)
  • Porto de E/S de ciclo único

Cortex-M0-Plus-Microcontroladores-1

Deseño de potencia ultra baixa       Código moi compacto
Baixo consumo de enerxía e alta eficiencia enerxética Excepto as instrucións de control e ramificación e ligazón, todas as instrucións teñen unha lonxitude de 16 bits

O núcleo Cortex®-M0+ forma parte do grupo ARM Cortex-M de núcleos RISC de 32 bits. Implementa a arquitectura ARMv6-M e presenta un 2-stage gasoduto.
O Cortex®-M0+ ten un porto mestre único AHB-Lite, pero admite a obtención de instrucións e o acceso a datos simultáneos cando o acceso a datos se dirixe ao intervalo de enderezos do porto de E/S rápida.

Compatibilidade con procesadores Cortex-M

Arquitectura perfecta en todas as aplicacións

Cortex-M0-Plus-Microcontroladores-2

Os microcontroladores STM32U0 integran un núcleo ARM® Cortex®-M0+ para beneficiarse da incomparable relación de rendemento por miliwatt.
Todas as CPU Cortex®-M teñen unha arquitectura de 32 bits.
A Cortex®-M3 foi a primeira CPU Cortex®-M lanzada por ARM.
Entón ARM decidiu distinguir dúas liñas de produtos: alto rendemento e baixa potencia, mantendo a compatibilidade entre elas.
O Cortex®-M0+ pertence á liña de produtos de baixa potencia. Está deseñado para dispositivos que funcionan con batería, moi sensibles ao consumo de enerxía.

Arquitectura básica terminadaview

Cortex-M0-Plus-Microcontroladores-3

O núcleo Cortex®-M0+ ofrece máis rendemento que o núcleo Cortex®-M0 grazas ao 2-stage canalización de instrucións.
Comecemos a nosa descrición da CPU polo núcleo do procesador encargado de buscar e executar as instrucións.

ARM Cortex-M0+ → 2 stage gasoduto

Cortex-M0-Plus-Microcontroladores-4

A maioría das instrucións V6-M teñen 16 bits de lonxitude. Só hai seis instrucións de 32 bits e a maioría delas son instrucións de control, raramente usadas. Non obstante, a instrución de ramificación e ligazón, que se usa para chamar a un subprograma, tamén ten 32 bits de lonxitude, co fin de soportar un gran desfase entre esta instrución e a etiqueta que apunta á seguinte instrución que se vai executar.
Idealmente, un acceso de 32 bits carga dúas instrucións de 16 bits, o que resulta en menos recuperacións por instrución.
Durante o reloxo número 2, non se produce ningunha obtención de instrucións. O porto AHB Lite está dispoñible para executar un acceso a datos cando a instrución N é unha instrución de carga/almacenamento.

Rendemento da rama

Núcleo Cortex®-M0+
• Máximo dúas instrucións de sombra de ramas de 16 bits

Cortex-M0-Plus-Microcontroladores-5

Nunha rama determinada, desperdiciáronse menos instrucións precargadas (grazas ao 2-stage gasoduto).
No reloxo número 1, o procesador obtén Inst0 e unha instrución de rama incondicional.
No reloxo número 2, executa Instr0.
No reloxo número 3, executa a instrución de rama mentres obtén as dúas seguintes instrucións secuenciais Inst1 e Inst2 chamadas instrucións de sombra de rama.

No reloxo número 4, o procesador descarta Inst1 e Inst2 e obtén InstrN e InstN+1.
Cortex-M0, M3 e M4 implementan un 3-stage pipeline: Fetch, Decode and Execute. O número de instrucións de sombra de rama é maior: ata catro instrucións de 16 bits.

Arquitectura básica terminadaview 

Cortex-M0-Plus-Microcontroladores-6

O Cortex®-M0+ non ten nin caché incorporada nin RAM interna. En consecuencia, calquera transacción de obtención de instrucións envíase á interface AHB-Lite e calquera acceso aos datos diríxese á interface AHB-Lite ou ao porto de E/S de ciclo único.
Teña en conta que o STM32U0 implementa unha caché de instrucións de nivel SoC, externa á CPU, situada no controlador flash incorporado.

O porto mestre AHB-Lite está conectado a unha matriz de bus, o que permite que a CPU acceda a memorias e periféricos. Dado que as transaccións están canalizadas en AHB-Lite, o mellor rendemento é de 32 bits de datos ou instrucións por reloxo, cunha latencia mínima de 2 reloxos.
O Cortex®-M0+ tamén presenta un porto de E/S de ciclo único, que permite que a CPU acceda aos datos cunha latencia de 1 reloxo. Unha lóxica de decodificación externa determina o intervalo de enderezos no que os accesos aos datos son dirixidos a este porto.
No STM32U0, o porto de E/S de ciclo único non se usa para acceder aos rexistros de portos GPIO. Os portos GPIO están mapeados para AHB, o que permite que DMA acceda.

Unidade de protección da memoria

  • A configuración dos atributos MPU define os permisos de acceso
  • 8 rexións de memoria independentes
    • Pode executar código?
    • Pode escribir datos?
    • Acceso ao modo sen privilexios?

O MPU do microcontrolador STM32U0 ofrece soporte para oito rexións de memoria independentes, con atributos configurables independentes para:

  • permiso de acceso: permitido ou non ler/escritura en modo privilexiado/sen privilexiados,
  • permiso de execución: rexión ou rexión executable prohibida para obter instrucións.

Referencias

Para obter máis detalles, consulte estas notas de aplicación e o manual de programación Cortex®-M0+ dispoñible en www.st.com websitio.
Visita tamén o ARM websitio onde atoparás máis información sobre o núcleo Cortex®-M0+.

Grazas
© STMicroelectronics – Todos os dereitos reservados.
O logotipo de ST é unha marca comercial ou unha marca rexistrada de STMicroelectronics International NV ou das súas filiales na UE e/ou noutros países.
Para obter información adicional sobre as marcas rexistradas ST, consulte www.st.com/trademarks
Os demais nomes de produtos ou servizos son propiedade dos seus respectivos propietarios.

Documentos/Recursos

Microcontroladores ST Cortex-M0 Plus [pdfManual de instrucións
Cortex-M0, Cortex-M23, Cortex-M33-M35P, Cortex-M55, Cortex-M85, Cortex-M0 Plus Microcontroladores, Cortex-M0 Plus, Microcontroladores

Referencias

Deixa un comentario

O teu enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados *