Cortex-M0+ – najbardziej energooszczędny z rdzeni ARM
Micro Trace Buffer
Ostatnia z nowości występujących w rdzeniu Cortex-M0+ dotyczy debugowania. Micro Trace Buffer, bo o nim mowa, jest mechanizmem umożliwiającym śledzenie wykonywania instrukcji. W pamięci SRAM alokowana jest pamięć, która służy jako bufor przechowujący informacje o kolejności wykonywanych instrukcji. Kiedy rdzeń zostaje zatrzymany (np. na skutek pułapki, czyli break pointa), debuger odczytuje dane z bufora przez dwuprzewodowy interfejs SWD ( Serial Wire Debug ) i rekonstruuje historię wykonanych instrukcji (rys. 4).
Rys. 4. Przykład działania Micro Trace Buffer
Podsumowanie
W porównaniu do rdzenia Cortex-M0, rdzeń Cortex-M0+ cechuje się niższym poborem mocy przy jednocześnie większej wydajności i funkcjonalności (tab. 2). Dzięki tym atutom oparte na rdzeniu Cortex-M0+ mikrokontrolery będą mogły stanowić atrakcyjną alternatywę nie tylko dla tanich układów 32-bitowych, ale również dla układów 8- i 16-bitowych. Pierwszymi firmami, które uzyskały licencję na produkowanie mikrokontrolerów z rdzeniem Cortex-M0+ są Freescale i NXP.
Tab. 2. Różnice w cechach rdzeni ARM Cortex-M0+ i ARM Cortex-M0
Cortex-M0+ | Cortex-M0 | |
Pipeline | 2-stopniowy | 3-stopniowy |
Wydajność | 1.77 CoreMark/MHz (0.93 DMIPS/MHz) | 1.62 CoreMark/MHz (0.84 DMIPS/MHz) |
Ochrona pamięci | 8 obszarów | – |
Śledzenie | Micro Trace Buffer | – |
Klienci wykorzystujący dotąd w swoich aplikacjach mikrokontrolery z rdzeniem ARM Cortex-M0 będą mogli używać tych samych narzędzi programistycznych (kompilatorów, IDE, debugerów) do tworzenia oprogramowania dla układów z rdzeniem Cortex-M0+.
Więcej informacji na temat nowego rdzenia Cortex-M0+ można znaleźć na stronie internetowej firmy ARM.