Kinetis L – ile o nich wiemy w czerwcu 2012

 

 

 

Freescale to jeden z największych producentów układów półprzewodnikowych na świecie, w ofercie którego znajdują się mikrokontrolery, mikroprocesory, kontrolery sygnałowe, czujniki, układy dla systemów komunikacji radiowej oraz układy zarządzania zasilaniem. O wiodącej na rynku roli tej firmy świadczy wysoka pozycja, jaką zajmuje ona co roku i od wielu już lat w rankingu Semiconductor sales leaders. Silną pozycję na rynku Freescale zawdzięcza między innymi wysokiej sprzedaży mikrokontrolerów, których oferta skierowana jest do szerokiej gamy zastosowań – różnorodnych aplikacji z branż: motoryzacyjnej, produktów konsumenckich, przemysłowych i sieciowych.  W portfolio producenta znajdują się zróżnicowane rodziny mikrokontrolerów 8-, 16- i 32-bitowych, jak również bogaty zestaw dostępnych dla nich narzędzi projektowych, programistycznych i sprzętowych, z których Freescale słynie (warto tu wymienić chociażby sławną już platformę ewaluacyjną Tower System, czy system operacyjny MQX).

 

 

Nawet najlepsza jednak oferta mikrokontrolerów musi być nieustannie rozwijana i rozbudowywana, aby znajdujące się w niej układy nie tylko mogły spełniać coraz bardziej wymagające oczekiwania klientów wobec wydajności, zużycia energii i zintegrowanych zasobów, ale również aby były atrakcyjne cenowo w porównaniu z produktami konkurencji. Z pewnością te kryteria były jednymi z kluczowych, które przyświecały projektantom nowej w ofercie Freescale serii układów Kienetis L – pierwszej dostępnej na rynku rodzinie mikrokontrolerów z rdzeniem ARM Cortex-M0+ (oprócz firmy Freescale jedynymi obecnie znanymi producentami, którzy zamierzają opracować własne mikrokontrolery z tym rdzeniem są NXP, o czym informowaliśmy tutaj, oraz Energy Micro). Do niedawna o układach Kientis L przeczytać można było tylko zdawkowo w zapowiedziach producenta. Od czerwcowej premiery tych układów  na stronie internetowej producenta dostępnych jest więcej informacji, które postanowiliśmy zebrać i przedstawić w niniejszym artykule.

Rdzeń ARM Cortex-M0+

ARM Cortex-M0+, na którym oparte zostały wszystkie mikrokontrolery Kinetis L nie jest rdzeniem, który projektanci firmy ARM stworzyli od zera. Jak sama nazwa wskazuje, jest efektem ewolucji rdzenia Cortex-M0, a więc mówiąc wprost, jest to rdzeń Cortex-M0 z modyfikacjami.

Zanim jednak opisane zostaną wspomniane modyfikacje, warto przypomnieć jakim rdzeniem jest Cortex-M0. Jest to najmniejszy i o najprostszej budowie (17 rejestrów, 56 instrukcji) rdzeń w całej gamie rdzeni ARM Cortex-M, do których należą jeszcze (nie licząc już wymienionego Cortex-M0+): Cortex-M1 (rdzeń do implementacji w układach FPGA), Cortex-M3 i Cortex-M4 (Cortex-M3 z dodatkowym blokiem DSP i opcjonalnie FPU). Rdzeń Cortex-M0 (architektura ARMv6-M) został zaprojektowany z myślą o zastosowaniu w układach SoC (System on Chip) (np. NCN49597 firmy ON Semiconductor i ASM211 firmy Accent) oraz niedrogich i energooszczędnych mikrokontrolerach 32-bitowych (przykładowo są to rodziny LPC11xx i LPC12xx firmy NXP, rodzina STM32F0 firmy STMicroelectronics, rodzina NuMicro firmy Nuvoton), które mają stanowić konkurencję dla mikrokontrolerów 8-bitowych.

Inżynierowie z firmy ARM projektując rdzeń ARM Cortex-M0+ starali się tak przeprojektować rdzeń Cortex-M0, aby osiągnąć trzy cele: zmniejszyć zużycie energii, zwiększyć wydajność i zwiększyć funkcjonalność rdzenia. Aby to osiągnąć, następujące modyfikacje zostały wprowadzone do rdzenia ARM Cortex-M0:

  • zredukowano przetwarzanie potokowe (pipeline) z 3- do 2-stopniowego, co umożliwia szybsze wykonywanie instrukcji,
  • wprowadzono dostęp do portów I/O i krytycznych zasobów w jednym cyklu,
  • zoptymalizowano dostęp do pamięci,
  • wprowadzono jednolitą przestrzeń pamięci 4 GB,
  • dodano bufor “micro trace” pozwalający na śledzenie wykonywania instrukcji,
  • dodano blok MPU (Memory Protection Unit).

 

 

Na rysunku 1 przedstawiono budowę wewnętrzną rdzeni ARM Cortex-M0 oraz ARM Cortex-M0+.

 

Rys. 1.

Rys. 1.

 

 

Szczegółowe porównanie tych rdzeni opisane zostało w osobnym artykule.

Do pobrania

O autorze

Szymon Panecki

SZYMON PANECKI urodził się 17 lutego 1985 roku w Milanówku. Tytuł inżyniera Elektroniki i Telekomunikacji, a następnie magistra inżyniera na Wydziale Elektroniki Politechniki Wrocławskiej uzyskał kolejno w roku 2008 i 2010. Ponadto tytuł inżyniera Informatyki na Wydziale Elektroniki Politechniki Wrocławskiej uzyskał w roku 2011.

Szymon Panecki jest doświadczonym elektronikiem-konstruktorem, który w trakcie swojej zawodowej kariery koncentruje się na definiowaniu i projektowaniu (zarówno w warstwie sprzętowej jak i programowej) systemów wbudowanych opartych na mikrokontrolerach z rdzeniem ARM od różnych producentów, w tym przede wszystkim Infineon Technologies (rodzina XMC1000 i XMC4000), STMicroelectronics (STM32 i STR7), Freescale Semiconductor (Kinetis L) oraz Silicon Labs (EFM32 i Precision32). Obszarem jego szczególnego zainteresowania są systemy wykorzystujące czujniki środowiskowe (wilgotności, ciśnienia, temperatury) oraz przemysłowe i motoryzacyjne interfejsy komunikacyjne, głównie CAN.

Szymon Panecki od wielu lat współpracuje z czasopismem “Elektronika Praktyczna” oraz portalem Mikrokontroler.pl, na łamach których publikuje liczne artykuły dotyczące swoich projektów, jak również nowości produktowych firm z branży półprzewodnikowej.