Изображение 2-1 показывает структуру процессора семейства Cortex M3®:
2-1. Блок-диаграмма процессора
Процессор имеет следующие функциональные преимущества:
Процессорное ядро, с механизмами поддержки ускоренной обработки прерываний, которое имеет:
SP);
SDIV и UDIV;
LDM, STM, PUSH и POP с минимальными задержками исполнения;
ISR);
Вкладываемый(комбинированный) векторизированный контроллер прерываний NVIC, плотно итегрированный с процессорным ядром для снижения задержек при обработке прерываний:
WIC), предоставляющий возможность использовать режим сверхнизкого потребления электроэнергии.
Устройство защиты памяти (Memory Protection Unit (MPU). Вспомогательный модуль MPU предоставляет:
SRD) — свойство, позволяющее эффективно использовать под-области памяти;
Шинные интерфейсы:
ICode, DCode, и System bus;
PPB) основанная на интерфейсе Advanced Peripheral Bus (APB);
Bit-band) технология доступа к памяти с поддержкой атомарных операций bit-band write и read. Это важная функция, позволяющая отразить отдельные биты периферии на байтовые адреса в памяти. Такой подход существенно упрощает разработку и переносимость программ;
Поддержку технологий доступной и недорогой отладки:
SW-DP) или Последовательного Проводного Порта JTAG (SWJ-DP) или сразу оба этих порта;
FPB) модуль для реализации точек останова и накладывания патчей на исполняющийся код;
DWT) модуль для реализации контрольных точек (watchpoints), трассировки данных (data tracing) и профилировки системы;
ITM) для поддержки отладки в стиле printf;
TPIU) для переброски данных в Trace Port Analyzer (TPA), включая режим вывода отладочной информации по одному проводу (Single Wire Output (SWO).
Процессор реализует подмножество совместимых с другими семействами Cortex-M инструкций и функций. Вы можете перемещать своё программное обеспечение, включая системный уровень с Cortex-M3® на другие семейства.
Для обеспечения гладкого переноса, ARM рекомендует, чтобы разрабатываемый код не только на этой, но и на других Cortex-M процессоных архитектурах соответствовал следующим правилам и соответствующи образом сконфигурировал Configuration Control Register (CCR):
NVIC и System Control Space (SCS).
конфигурируется эти поля в регистре CCR:
STKALIGN бит в 1
UNALIGN_TRP бит в 1
CCR в их оригинальных значениях.| Функциональное описание | Пространство адресов |