그라운드 임베디드 유튜브 구독

노트 / 컴퓨터구조

ARM Cortex-M 개요: M0부터 M7까지

Cortex-M 코어별 차이와, ARM이 설계한 코어에 ST, NXP 같은 회사가 주변장치를 붙여 MCU 제품군을 만드는 방식.

GROUND EMBEDDED · 정리 노트컴퓨터구조 10ARM Cortex-M 개요코어특징대표 MCUM0 / M0+가장 작고 저전력, 명령…STM32G0, RP20…M3하드웨어 나눗셈, 균형STM32F1

ARM은 CPU 코어 설계를 팔고, ST·NXP·Infineon 같은 반도체 회사가 그 코어에 Flash, SRAM, 주변장치를 붙여 MCU로 만듭니다. 그래서 STM32와 NXP의 칩은 코어 명령어는 같지만 GPIO, 타이머 레지스터는 완전히 다릅니다.

코어 특징 대표 MCU
M0 / M0+ 가장 작고 저전력, 명령어 적음 STM32G0, RP2040
M3 하드웨어 나눗셈, 균형 STM32F1
M4 DSP 명령어 + 단정밀도 FPU STM32F4, STM32G4
M7 6단 파이프라인, 캐시, 배정밀도 FPU STM32F7, H7
M33 M4급 + 보안(TrustZone) STM32L5, U5

코어가 공통으로 주는 것

  • NVIC: 인터럽트 컨트롤러
  • SysTick: RTOS 틱에 쓰는 24비트 타이머
  • 디버그 인터페이스: SWD
  • CMSIS: 코어 레지스터를 다루는 표준 헤더

고르는 기준

모터 제어처럼 실수 계산이 많으면 FPU가 있는 M4 이상, 배터리 센서 노드라면 M0+, 그래픽과 고속 연산이 필요하면 M7입니다. 코어보다 더 중요한 것은 필요한 주변장치(고급 타이머, ADC 개수, CAN FD)가 칩에 들어 있는지입니다.