Cortex'y od A do R. Nowe mikrokontrolery i mikroprocesory z rdzeniami firmy ARM
Środa, 01 Wrzesień 2010
Mikrokontrolery z rdzeniami firmy ARM należą do najpopularniejszych 32-bitowych jednostek
obliczeniowo-sterujących stosowanych w urządzeniach embedded. Jednym z najnowszych osiągnięć
firmy ARM jest niezwykle udana rodzina rdzeni Cortex, na które licencję wykupiła duża liczba firm
półprzewodnikowych. Nowe mikrokontrolery i mikroprocesory z tymi rdzeniami pojawiają się praktycznie
co miesiąc i jak na razie ich ofensywa jest niezwykle silna. W artykule przedstawiono nowe układy
z rdzeniami z rodziny Cortex.
80 ELEKTRONIKA PRAKTYCZNA 9/2010
WYBÓR KONSTRUKTORA
Dodatkowe materiały
na CD i FTP
Nowe mikrokontrolery
i mikroprocesory z rdzeniami
firmy ARM
Cortex?y od A do R
WYBÓR KONSTRUKTORA
Z doniesień o najnowszych mikrokontrolerach i mikroproceso-
rach wynika, że rozpoczęta w 2004 roku ekspansja rdzeni ARM nie
słabnie. Do układów wyposażonych w popularny rdzeń ARM7TDMI
dołączają kolejne, wyposażane głównie w rdzenie z bardzo udanej ro-
dziny Cortex. Konstruktorzy zamierzający użyć w swoich projektach
układy z nowymi rdzeniami Cortex (-M0, -M1, -M3 oraz -R i -A) mają
do wyboru produkty kilkunastu producentów. W artykule przedsta-
wiono przede wszystkim oferty firm mających w Polsce dystrybuto-
rów (w kolejności alfabetycznej). Zostały opisane zarówno mikrokon-
trolery jak i mikroprocesory z rdzeniami Cortex.
Mikrokontroler a mikroprocesor
Przy takim rozróżnieniu przyjęto kryterium przeznaczenia i reali-
zowanych zadań. Przyjęto więc, że mikrokontrolerami są jednoukła-
dowe systemy cyfrowe z procesorem, zestawem wbudowanych pery-
ferii oraz pamięci. Mikrokontrolery są przede wszystkim stosowane
tam, gdzie nie jest wymagana duża moc obliczeniowa, a realizują tyl-
ko ściśle określone zadania, czyli są używane m.in. w sterownikach
sprzętu AGD/RTV, kontrolerach konsol gier, centralach, pilotach zdal-
nego sterowania, itp. Program sterujący pracą mikrokontrolera jest
Mikrokontrolery z rdzeniami firmy ARM należą do najpopularniejszych 32-bitowych jednostek
obliczeniowo-sterujących stosowanych w urządzeniach embedded. Jednym z najnowszych osiągnieć
firmy ARM jest niezwykle udana rodzina rdzeni Cortex, na które licencję wykupiła duża liczba firm
półprzewodnikowych. Nowe mikrokontrolery i mikroprocesory z tymi rdzeniami pojawiają się praktycznie
co miesiąc i jak na razie ich ofensywa jest niezwykle silna. W artykule przedstawiono nowe układy
z rdzeniami z rodziny Cortex.
więc przygotowany dla konkretnej aplikacji. W grupie mikrokontrole-
rów znajdują się na przykład układy z rdzeniami Cortex-M.
Mikroprocesory charakteryzują się większą mocą obliczenio-
wą, a także potrzebą dołączania zewnętrznych pamięci. W wielu
przypadkach pracują pod kontrolą rozbudowanego systemu opera-
cyjnego, np. z grupy Windows lub Linux. Ich głównym obszarem
zastosowań są m.in. telefony komórkowe, palmfony, netbooki, apa-
raty cyfrowe, urządzenia do odbioru telewizji cyfrowej, routery. Są
z reguły taktowane sygnałem zegarowym o częstotliwości większej
niż 100...200 MHz. Do grupy mikroprocesorów zaliczane są m.in.
układy z rdzeniem Cortex-A8.
Wysyp nowości
Ostatnie miesiące obfitowały w doniesienia o nowych rodzinach
mikrokontrolerów i mikroprocesorów z rdzeniami ARM. Przytoczy-
my skrót takich informacji w zestawieniu alfabetyczny producen-
tów:
Actel ? firma ta nie jest producentem mikrokontrolerów, jednak
umieściliśmy ją w zestawieniu, gdyż w jej ofercie pojawiły się nowe
układy FGPA z rodziny SmartFusion z wbudowanymi rdzeniami Cor-
TEMAT
NUMERU
81ELEKTRONIKA PRAKTYCZNA 9/2010
Nowe mikrokontrolery i mikroprocesory z rdzeniami firmy ARM
Rysunek 1. Schemat blokowy rdzenia Cortex-M3
tex-M3. W układach tej firmy (IGLOO, ProASIC, Fusion, SmartFusion)
mogą być również stosowane bloki IP-core Cortex-M1.
Analog Devices oferuje rodzinę ?analogowych mikrokontrolerów?
wyposażonych w rdzenie ARM7TDMI. Wśród nowości tej firmy znaj-
dują się układy ADUC7122, ADUC7023 i ADUC7029 z 12-bitowymi
przetwornikami A/C i C/A oraz AUDC706x z podwójnymi przetworni-
kami A/C typu sigma-delta.
Atmel wprowadził do oferty kolejne układy z rodziny SAM3S
i SAM3U z rdzeniami Cortex-M3. Rodzina SAM3S charakteryzuje się
małymi wymiarami i niskim poborem energii. Układy SAM3U mają
dodatkowo wbudowany interfejs USB. Oprócz układów z rdzeniami
Cortex-M3 firma Atmel opracowała również układy z rdzeniem AR-
M926EJ oznaczone symbolem SAM9M10/SAM9GM910, przeznaczo-
ne do zastosowań multimedialnych, w szczególności do dekodowania
sygnału wideo.
Cypress Semiconductor poszerzył ofertę programowalnych sys-
temów PSoC o układy z rodziny PSoC 5 wyposażone w rdzeń Cor-
tex-M3 oraz blok programowalnych peryferii analogowo-cyfrowych.
Firma Energy Micro oferuje nowe mikrokontrolery, o bardzo ni-
skim poborze energii, w rodzinie Gecko (EFM32G8xx i EFM32G2xx)
oraz Tiny Gecko (EFM32TG8xx i EFM32TG2xx). Mikrokontrolery
EFM32 zawdzięczają swoją energooszczędność zoptymalizowanym
pod tym względem peryferiom (UART w trybie odbioru pobiera tylko
100 nA) oraz 5-stopniowemu mechanizmowi oszczędzania energii.
Freescale jest pierwszą i jak na razie jedyną firmą, która ma
w ofercie mikrokontrolery DSC z nowym rdzeniem Cortex-M4 prze-
znaczone do prostych aplikacji DSP.
Firma Nuvoton ma w ofercie mikrokontrolery z rdzeniem Cortex
-M0, w tym układy z interfejsem USB, CAN, LIN oraz Ethernet MAC.
Firma NXP jako jedna z pierwszych oferuje układy z rdzeniem
Cortex-M0 (rodzina LPC1100), które mają konkurować, pod względem
ceny i wydajności, z mikrokontrolerami 8/16-bitowymi. Mikrokontro-
lery z rdzeniem Cortex-M3 występują w dwóch rodzinach: LPC1300 ?
mikrokontrolery ogólnego przeznaczenia z podstawowymi peryferie-
mi i LPC1700, wśród których znalazły się układy taktowane sygnałem
zegarowym o częstotliwości 120 MHz. Firma NXP zapowiada również
mikrokontrolery sygnałowe (DSC) z rdzeniem Cortex-M4.
Samsung oferuje mikroprocesory przeznaczone do aplikacji wy-
magających dużej wydajności obliczeniowej. Do nowych układów
tej firmy należą S5PC110 i S5PV210 z rdzeniem Cortex-A8 takto-
wanym sygnałem o częstotliwości 1 GHz i o obniżonym poborze
energii. W zapowiedziach Samsung wymienia układy z rdzeniami
Cortex-M0 i Cortex-M3, które mają być wyposażone m.in. w sterow-
niki LCD, wzmacniacze operacyjne, interfejsy CAN, USB, a niektóre
mają mieć do 6 interfejsów SPI i do 40 kanałów 10-bitowego prze-
twornika A/C.
Firma STMicroelectronics poszerza ofertę mikrokontrolerów
z rdzeniem Cortex-M3 z rodziny STM32 o nowe układy: STM32L
o obniżonym poborze energii, z 6-stopniowym mechanizmem jeje
oszczędzania oraz STM32W z transceiverem IEEE 802.15.4 (m.in.
ZigBee) pracującym w paśmie 2,4 GHz. Do wcześniejszych mikro-
kontrolerów rodziny STM32F dołączyły układy serii Value Line, które
mają konkurować cenowo z mikrokontrolerami 16-bitowymi. Dodat-
kowo pojawiły się nowe układy Access Line i Performance (STM32F),
z przyrostkiem XL z 768 kB lub 1 MB pamięci Flash.
Texas Instuments kontynuuje rozwój włączonych do swojej oferty
mikrokontrolerów Stellaris (dawniej produkowane przez Luminary
Micro). W ofercie tej firmy pojawiło się 29 nowych mikrokontrole-
rów w rodzinach: 1000, 3000, 5000 i 9000. Na uwagę zasługuje układ
LM3S9B96, który ma wpisany system operacyjny SafeRTOS do pa-
mięci ROM. Wśród nowości znalazły się również mikroprocesory z ro-
dziny Sitara wyposażone w rdzeń Cortex-A8 lub ARM9, taktowane
sygnałem zegarowym od 375 MHz do 1 GHz oraz układy TMS570LS
z rdzeniem Cortex-R4F przeznaczone do aplikacji wymagających nie-
zawodności działania.
Code
interface
Bus Matrix
SRAM&
Peripheral I/F
DAP
Memory
protection unit
Serial wire
viewer
Data
watchpoints
Flash
patch
WIC NVIC ETM
ARM core
ARM
POWERED
Cortex?M3
Toshiba wprowadza do oferty kolejne układy z rdzeniem Cortex
-M3. Wśród nich są mikrokontrolery z rodziny TMPM360 (z 2 MB pa-
mięci Flash) oraz TMPM380FY zasilane napięciem 5 V.
Jak można zauważyć, nowości jest więc sporo. Wyraźnym tren-
dem u producentów układów z rdzeniem Cortex-M3 jest zwiększanie
pojemności pamięci Flash oraz częstotliwości sygnału zegarowego.
Coraz odważniej na rynku zaznaczają swoją obecność inne rdzenie
Cortex. Obok układów z rdzeniem Cortex-M3 pojawiają się mikrokon-
trolery z rdzeniem Cortex-M0, które mają być tanią alternatywą dla
mikrokontrolerów 8-/16-bitowych.
Przegląd Cortex?owych nowości otwierają układy z najpopular-
niejszym, jak do tej pory, rdzeniem Cortex-M3.
Cortex-M3
Rdzeń Cortex-M3 (rysunek 1) został opracowany jako następ-
ca jednego z najpopularniejszych rdzeni firmy ARM ? ARM7TDMI.
Główne założenia, jakie przyjęto do jego opracowania, to: zwiększe-
nie prędkości wykonywania programu, zmniejszenie wymaganej po-
jemności pamięci Flash dla kodu programu, zminimalizowanie po-
wierzchni zajmowanej przez rdzeń w krzemie. Aby osiągnąć zamie-
rzone cele, inżynierowie firmy ARM zastosowali wiele zaawansowa-
nych rozwiązań, takich jak na przykład: 3-poziomowe przetwarzanie
potokowe z przewidywaniem rozgałęzień kodu oraz zwiększenie licz-
by instrukcji wykonywanych w jednym takcie zegarowym. Dla rdze-
nia Cortex-M3 zastosowano nową listę instrukcji o nazwie Thumb 2.
W porównaniu do ARM7TDMI, rdzeń Cortex-M3 jest znacznie szyb-
szy, gdyż osiąga prędkość wykonywania instrukcji do 1,25 DMIPS/
MHz (ARM7TDMI tylko 0,96 DMIPS/MHz) i pobiera ok. 35% mniej
energii. Kolejną zmianą, w porównaniu do wcześniejszych rdzeni,
było zastosowanie kontrolera przerwań NVIC, który charakteryzuje
się krótkim i przewidywalnym czasem obsługi przerwań.
W zestawieniu układów z rdzeniem Cortex-M3 znalazła się fir-
ma Actel, która jest znana z produkcji układów programowalnych.
W ofercie tej firmy, poza syntezowalnymi rdzeniami Cortex-M1, znaj-
dują się układy FPGA z rodziny SmartFusion z wbudowanym rdze-
niem Cortex-M3. Jak do tej pory, jest to jedyny na rynku tego typu
układ z rdzeniem Cortex. Układy SmartFusion są wyposażone w blok
programowalny z 60, 200 lub 500 tysiącami bramek logicznych oraz
8 lub 24 blokami pamięci po 4608 bitów. Wbudowany rdzeń Cortex
-M3 ma do swojej dyspozycji pamięć Flash o pojemności 128, 256 lub
512 kB oraz pamięć SRAM o pojemności 16 lub 64 kB.
Jak można zauważyć na schemacie blokowym (rysunek 2), ukła-
dy te mają typowy dla mikrokontrolerów zestaw peryferii, wśród któ-
rych znajdują się: jednostka ochrony pamięci (MPU), Ehternet MAC
82 ELEKTRONIKA PRAKTYCZNA 9/2010
WYBÓR KONSTRUKTORA
Tabela 1. Porównanie parametrów układów PSoC 5
Taktowanie
[MHz]
Flash
[kB]
SRAM
[kB] A/C D/C Bloki analogowe Bloki cyfrowe
CY8C52 80 32...256 8...64 1 1 0 20...24
CY8C53 80 32...256 8...64 1 2 2 20...24
CY8C54 80 32...256 8...64 2 4 4 20...24
CY8C55 80 32...256 8...64 2 4 4 20...24
Rysunek 2. Schemat blokowy układów SmartFusion firmy Actel
Mogą być taktowane sygnałem zegarowym o maksymalnej częstotli-
wości 64 MHz. Mają 64, 128 lub 256 kB pamięci Flash oraz 16, 32 lub
48 kB pamięci SRAM (obecnie dostępne są jedynie wersje z 256 kB
Flash i 48 kB SRAM). Układy SAM3S mają również kontroler inter-
fejsu USB, ale w odróżnieniu od układów SAM3U może on pracować
wyłącznie w trybie FullSpeed (12 Mb/s). W projekcie mikrokontrole-
rów SAM3S główny nacisk położono na obniżenie poboru mocy, tak
aby mogły jak najdłużej pracować przy zasilaniu bateryjnym. Mogą
być zasilane napięciem z przedziału 1,62...3,6 V, jednakże przy na-
pięciu mniejszym od 2,4 V nie można używać przetworników A/C
i C/A, a przy mniejszym od 3 V interfejsu USB. Układy mają oddziel-
ne wyprowadzenia zasilania dla przetworników A/C i C/A, kontrolera
USB oraz rdzenia. Dostępnych jest kilka trybów obniżonego poboru
energii, przy czym w trybie backup (przy wyłączonym rdzeniu i więk-
szości peryferii) pobiera prąd o natężeniu około 1,6 mA. Producent
podaje, że podczas normalnej pracy mikrokontroler pobiera około
1,45 mW mocy w przeliczeniu na 1 MHz.
Układy SAM3U mają podobny zestaw peryferii jak układy
SAM3S. Dodatkowo mają wbudowany kontroler interfejsu USB, który
może pracować w trybie HighSpeed (transfer 480 Mb/s). W SAM3U
jest też więcej o 4 kB pamięci SRAM, czyli 20, 36 lub 52 kB. Obie ro-
dziny układów, SAM3S i SAM3U, są w zależności od modelu wyposa-
żone w interfejsy komunikacyjne: USART (SAM3S do 4, a SAM3U do
5), SPI (SAM2S do 3, a SAM3U do 5), do 2×TWI, 1×I2
S oraz interfejs
HSMCI do obsługi kart SDIO/SD/MMC. Obie rodziny mają 12-bitowe
przetworniki A/C i C/A o częstotliwości próbkowania 1 MS/s, 16-bito-
we timery i 16-bitowe modulatory PWM.
W 2009 roku dołączyły, do znanych wielu elektronikom progra-
mowalnych systemów cyfrowych PSoC z rdzeniem M8C, dwie nowe
rodziny PSoC 3 z rdzniem 8051 i PSoC 5 z rdzeniem Cortex-M3. W ra-
mach rodziny PSoC 5 oferowane są 4 typy układów: CY8C52, CY8C53,
CY8C54 i CY8C55. Różnią się one liczbą wbudowanych przetworni-
ków A/C i C/A oraz liczbą dostępnych bloków analogowych (tabe-
la 1). Układy CY8C52...52 mają 12-bitowe przetworniki A/C typu SAR
(1 MS/s), natomiast układy CY8C55 mają jeden 12-bitowy przetwornik
A/C typu SAR oraz jeden 20-bitowy typu delta-sigma (180 S/s). Ce-
chą wspólną tych układów jest pojemność wbudowanej pamięci Flash
(32...256 kB), pamięci SRAM (8...64 kB) oraz EEPROM (0,5...2 kB).
Z pozostałych peryferii do dyspozycji użytkownika są interfejsy LIN,
CAN, I2
C, SPI, UART i USB (FullSpeed ? 12 Mb/s), sterownik wyświet-
lacza LCD, kontroler klawiatury dotykowej CapSense oraz 24-kanało-
wy kontroler DMA. W blokach analogowych znajdują się przetworniki
A/C i C/A, komparatory oraz wzmacniacze operacyjne.
Układy PSoC 5 są zasilane napięciem 0,5...5 V. Uzyskanie tak ma-
łego napięcia zasilania jest możliwe dzięki użyciu wbudowanej prze-
twornicy DC-DC podwyższającej napięcie, której napięcie wyjściowe
wynosi 1,8...5 V. Układy PSoC 5 mają cztery tryby pracy: active, alter-
native active, sleep i hibernate. W alternatywnym trybie pracy (alter-
native active) możliwe jest wyłączenie zasilania rdzenia oraz pamięci
Flash przy pozostawieniu aktywnych peryferii. W normalnym trybie
pracy (active) układy PSoC pobierają prąd o natężeniu 2 mA (rdzeń
taktowany sygnałem o częstotliwości 6 MHz, peryferie wyłączone),
natomiast w trybie uśpienia (sleep) i hibernacji (hibernate) odpowied-
nio 2 mA i 300 nA.
Do konfigurowania mikrokontrolerów PSoC 5 służy program
PSoC Creator, który umożliwia wprowadzenie ustawień konfiguracyj-
nych w edytorze graficznym. Wybór peryferii dostępny jest poprzez
(oprócz A2F060), 8-kanałowe DMA, dwa 32-bitowe liczniki, pętle
PLL, oscylatory (32 kHz, 10 MHz RC, główny 20 MHz) oraz interfejsy
komunikacyjne: UART, I2
C i SPI. Należy też zwrócić uwagę na rozbu-
dowany blok peryferii analogowych: 12-bitowe przetworniki A/C typu
SAR, 12-bitowe przetworniki C/A, bloki do kondycjonowania sygna-
łów, komparatory oraz obwody monitorujące temperaturę i napięcie.
Wprawdzie układy SmartFusion są droższe od standardowych mi-
krokontrolerów z rdzeniem Cortex-M3, jednakże cena poniżej 50 euro
za układ typu system-on-chip z programowalnym blokiem analogo-
wym, mikrokontrolerem oraz układem FPGA nie jest wygórowana.
Od jakiegoś czasu Atmel promuje swoje rozwiązania mikrokon-
trolerów z rdzeniem od ARM. Najwcześniej w ofercie tej firmy poja-
wiły się mikrokontrolery z rdzeniem ARM7TDMI oraz mikroproce-
sory z wysoko wydajnymi rdzeniami ARM9. Obecnie Atmel oferuje
nową rodzinę SAM3 z rdzeniem Cortex-M3. W tej rodzinie dostępne
są dwie grupy produktów: SAM3S charakteryzujące się małymi wy-
miarami obudowy i małym poborem energii oraz SAM3U, w których
zastosowano interfejs HighSpeed USB (wraz z warstwą sprzętową
PHY).
Układy SAM3S są mikrokontrolerami ogólnego przeznaczenia, in-
spirowanymi wcześniejszymi mikrokontrolerami SAM7S z rdzeniem
ARM7TDMI. Mikrokontrolery SAM3S mają taki sam rozkład funk-
cji wyprowadzeń jak układy SAM7S (wersje 48- i 64-końcówkowe).
83ELEKTRONIKA PRAKTYCZNA 9/2010
Nowe mikrokontrolery i mikroprocesory z rdzeniami firmy ARM
Rysunek 3. 5-stopniowy mechanizm oszczędzania energii
w mikrokontrolerach EFM32
bibliotekę kilkudziesięciu komponentów. Program umożliwia też mi-
grację projektu między różnymi układami PSoC. Do kompilowania
kodu programu dla mikrokontrolera PSoC można użyć bezpłatnego
kompilatora GCC lub kompilatora komercyjnego.
Kolejnym producentem mikrokontrolerów z rdzeniem Cortex-M3
jest firma Energy Micro, powstała na przełomie 2007 i 2008 roku. Jej
główną działalnością jest projektowanie i produkcja energooszczęd-
nych mikrokontrolerów. Firma wybrała rdzeń Cortex-M3 firmy ARM
do swoich mikrokontrolerów Gecko (EFM32G8xx i EFM32G2xx) i Ti-
nyGecko (EFM32TG8xx i EFM32TG2xx). Obie rodziny mikrokontro-
lerów EFM32 bazują na tej samej technologii redukcji pobieranego
przez układ prądu. Zastosowane w nich peryferie są zoptymalizowa-
ne pod względem poboru prądu. Mikrokontrolery te mają 5-stopnio-
wy mechanizm oszczędzania energii (rysunek 3). W zależności od
trybu pracy, tylko wybrane peryferie pozostają zasilane:
? EM0 ? tryb aktywny, w którym zasilany jest rdzeń Cortex-M3 oraz
wybrane przez użytkownika peryferie,
? EM1 ? wyłączony jest rdzeń oraz zasilanie pamięci Flash, a pozo-
stałe układy peryferyjne, w tym kontroler DMA, mogą pozostać
włączone i przetwarzać dane,
? EM2 ? w tym trybie mikrokontroler jest taktowany sygnałem ze-
garowym o częstotliwości 32 kHz i dostępne są tylko wybrane
peryferie o obniżonym poborze mocy: kontroler LCD, zegar RTC,
timer LETIMER, licznik impulsów, watchdog, UART (LEUART
o poborze prądu ok. 100 nA), GPIO, komparator analogowy oraz
kontroler DMA ? pobór prądu wynosi ok. 0,9 mA,
? EM3 ? w tym trybie dostępne są tylko: komparator analogowy,
watchdog, GPIO,
? EM4 ? w trybie uśpienia wszystkie źródła sygnału zegarowego są
wyłączone, pamięć RAM i zawartość rejestrów nie jest podtrzy-
mywana, wybudzenie z tego trybu następuje wyłącznie po wystą-
pieniu zerowania (reset).
Mikrokontrolery Gecko EFM32Gxxx mają od 16...128 kB pamięci
Flash, 8 lub 16 kB pamięci SRAM, natomiast mikrokontrolery TinyGecko
EFM32TGxxx mają od 4...32 kB pamięci Flash oraz 1,2 lub 4 kB pamięci
SRAM. TinyGecko nie mają jednostki ochrony pamięci MPU. Wśród po-
zostałych peryferii obu rodzin należy wymienić jednostkę szyfrującą AES
(klucz o długości 128/256-bitów), kontroler DMA, 12-bitowy przetwornik
A/C (1 MS/s), 12-bitowy przetwornik C/A (500 kS/S), 16-bitowy układ
licznika/timera, timer o obniżonym poborze prądu LETIMER, zegar RTC,
licznik impulsów, komparatory analogowe oraz interfejsy komunikacyjne:
USART (z trybem pracy SPI do 16 Mb/s), LEUART, I2
C. Mikrokontrole-
ry oznaczone symbolem EFM32G8xx i EFM32TG82xx są wyposażone
w sterownik wyświetlacza LCD 4×24 lub 4×40 segmentów (TinyGecko
? EFM32TG tylko 4×24).
Firma NXP oferuje dwie rodziny mi-
krokontrolerów z rdzeniem Cortex-M3:
LPC1300 i LPC1700. LPC1300 są mikro-
kontrolerami o małym poborze energii
i niskiej cenie. Według danych produ-
centa, w trybie aktywnym pobierają prąd
o natężeniu ok. 17 mA (3,3 V i 72 MHz,
peryferie wyłączone) lub 4 mA przy
mniejszej częstotliwości sygnału zegarowego (3,3 V i 12 MHz). Mają one
8...16 kB pamięci Flash oraz 2...8 kB pamięci SRAM, interfejsy komunika-
cyjne UART, I2
C FM+, SSP oraz 10-bitowy przetwornik A/C (8 kanałów).
Układy oznaczone symbolem LPC134x mają dodatkowo interfejs USB
Full-Speed Device (z warstwą PHY). Należy dodać, że mikrokontrolery
LPC134x mają dodatkowo pamięć ROM ze sterownikami programowy-
mi USB, z obsługą urządzeń klasy HID (interfejs użytkownika, np. mysz)
i MSC (pamięć masowa).
Mikrokontrolery LPC1700 mają, w porównaniu do LPC1300, większą
pojemność pamięci (32...256 kB Flash i 8...64 SRAM) oraz mogą być tak-
towane sygnałem zegarowym o częstotliwości do 100 MHz (120 MHz dla
układów LPC1759 i LPC1769). W zależności od wersji mogą być wyposa-
żone w dodatkowe interfejsy komunikacyjne: Ethernet, USB Device/Host/
OTG, CAN 2.0B, I2
S oraz w 10-bitowy przetwornik C/A.
Mikrokontrolery STM32 są dobrze znane konstruktorom, gdyż były to
jedne z pierwszych układów z rdzeniem Cortex-M3 dostępnych w sprze-
daży detalicznej na szeroką skalę. Układy STM32 są oferowane w 3 ro-
dzinach. Do klasycznych mikrokontrolerów z bogatym wyposażeniem
z rodziny STM32F dołączyły dwie nowe: STM32W (kompletny transce-
iver radiowy z rdzeniem Cortex-M3) oraz STM32L ? obniżone napięcie
zasilania.
MikrokontrolerySTM32WsąwyposażonewtransceiverIEEE802.15.4
pracujący w paśmie 2,4 GHz. Oprócz transceivera radiowego mają wbu-
dowany MAC (warstwa sprzętowa) oraz jednostkę implementującą algo-
rytm AES (klucz 128-bitowy). Rdzeń Cortex-M3 ma do swojej dyspozycji
84 ELEKTRONIKA PRAKTYCZNA 9/2010
WYBÓR KONSTRUKTORA
1000 ? przeznaczone do aplikacji z zasilaniem bateryjnym,
2000 ? rodzina układów z interfejsem CAN,
3000 ? mikrokontrolery z interfejsem USB OTG,
5000 ? łączące komunikację poprzez interfejsy CAN i USB OTG,
6000 ? przeznaczone do aplikacji sieciowych, zawierają wbudowany in-
terfejs Ethernet MAC oraz PHY,
8000 ? rozszerzenie rodziny 6000 o możliwość komunikacji CAN,
9000 ? najbardziej rozbudowana i najmłodsza rodzina układów, łącząca
możliwości komunikacyjne CAN, USB OTG oraz Ethernet (MAC + PHY).
Mikrokontrolery Stellaris, w zależności od wersji, mają do 256 kB pa-
mięci Flash, do 96 kB pamięci RAM, interfejsy komunikacyjne: UART,
I2
C, SPI, przetworniki A/C, timery z modulatorami PWM, enkodery kwa-
draturowe, kontroler DMA. Stellarisy mogą być taktowane sygnałem ze-
garowym o częstotliwości do 50 MHz (rodzina 9000 do 100 MHz). Zaletą
układów Stellaris z rodziny 6000, 8000 i 9000 jest wbudowana warstwa
fizyczna Ethernet PHY oraz sprzętowa warstwa MAC.
Interesujące i użyteczne jest zaimplementowanie w dodatkowej
pamięci ROM mikrokontrolera LM3S9B96 systemu operacyjnego Sefe-
RTOS. Jest to system operacyjny czasu rzeczywistego opracowany na
bazie bezpłatnego systemu FreeRTOS (www.freertos.org). System Safe-
RTOS, w odróżnieniu od FreeRTOS, ma certyfikaty (m.in. IEC61508 SIL3)
uprawniające do stosowania go w urządzeniach przemysłowych i me-
dycznych. Wraz z zakupem mikrokontrolera LM3S9B96 otrzymuje się
licencję na system SefeRTOS w urządzeniu, w którym będzie on zamon-
towany. Jest to dobre rozwiązanie, gdyż nie trzeba kupować osobnej licen-
cji na ten system operacyjny. Wszystkie mikrokontrolery z rodziny 9000
mają w dodatkowej pamięci ROM zapisaną bibliotekę programistyczną
StellarisWare, m.in. z funkcjami obsługi peryferii.
W ofercie Toshiby są mikrokontrolery z rdzeniem Cortex-M3 zgrupo-
wane w pięciu rodzinach: TMPM330, TMPM360, M370, M380 i M390.
Mikrokontrolery TMPM330 mają 8..32 kB pamięci RAM oraz
128...256 kB pamięci Nano Flash. Jest to nazwa technologii produk-
cji pamięci Flash o małym poborze energii, opracowana przez Toshibę.
Mikrokontrolery TMPM330 są tanimi mikrokontrolerami ogólnego prze-
znaczenia. Mają 12-kanałowy 10-bitowy przetwornik A/C, 10-kanało-
wy 16-bitowy timer, 3×UART, 3×I2
C, watchdog. Zasilane są napięciem
2,7...3,6 V i taktowane sygnałem zegarowym o maksymalnej częstotliwo-
ści 32...40 MHz. Do nietypowych peryferii tych mikrokontrolerów należy
zaliczyć sterowniki CEC (Consumer Electronics Control), który jest uży-
wany m.in. do sterowania urządzeniami multimedialnymi poprzez inter-
fejs HDMI.
Układy z rodziny TMPM360 są przeznaczone do aplikacji przemysło-
wych. Jako jedne z nielicznych mają aż 1 lub 2 MB pamięci Nano Flash
oraz 64 lub 128 kB pamięci RAM. Są zasilane napięciem 2,7...3,6 V i tak-
towane sygnałem o maksymalnej częstotliwości 64 MHz. Mikrokontro-
lery TMPM360 mają rozbudowane peryferie komunikacyjne: 12×UART,
5×I2
C, 1×SPI, 1×CEC, USB 2.0 Host/Device (tyko TMPM363/364) i CAN
2.0B (tylko TMPM363/364).
pamięć Flash o pojemności 128 kB i 8 kB pamięci RAM. Jest on taktowany
sygnałem zegarowym o częstotliwości 6, 12 lub 24 MHz. Mikrokontrolery
STM32W są zasilane napięciem 2,1...3,6 V (mają wbudowane przetwor-
nice DC/DC 1,8 i 2,5 V). W trybie odbioru układy te pobierają prąd o na-
tężeniu ok. 27 mA (z włączonym rdzeniem Cortex-M3) oraz ok. 31 mA
w trybie nadawania (sygnał +3 dBm). W mikrokontrolerach STM32W
jest również 12-bitowy przetwornik A/C, 18...25 portów GPIO, 2×16-bi-
towy timer, watchdog, zegar RTC oraz interfejsy UART, SPI i I2
C. Są ofero-
wane w obudowach QFN48 i QFN40.
STM32L to nowa rodzina mikrokontrolerów STM32 z obniżonym zu-
życiem energii. STM32L są zasilane napięciem z przedziału 1,65...3,6 V.
Według danych producenta, mikrokontrolery STM32L pobierają w zależ-
ności od napięcia zasilania i częstotliwości sygnału zegarowego 290 mA/
MHz dla VDD
2...3,6 V i fCLK
>= 32 MHz, 265 mA/MHz dla VDD
1,65..3,6 V
i fCLK
>= 16 MHz oraz 230 mA/MHz dla VDD
2...3,6 V i fCLK
<= 4 MHz
(wewnętrzny oscylator RC). Układy STM32L mają 5 trybów energoosz-
czędnej pracy. W trybie Sleep (CPU wyłączony) mikrokontroler pobiera
prąd o natężeniu 2,5 mA, jeżeli wszystkie układy peryferyjne są włą-
czone. W trybie Low power run, gdy wyłączone są peryferie, a rdzeń
Cortex-M3 wykonuje kod programu z pamięci Flash lub RAM, układ
pobiera zaledwie 10,4 mA (wewnętrzny oscylator ustawiony na 64 kHz).
Najmniejsze zużycie prądu jest natomiast w trybie czuwania (standby),
w którym pobierany prąd wynosi 1 mA (VDD
=1,8 V, zegar RTC włączony),
1,3 mA (VDD
=3 V, zegar RTC włączony) lub 270 nA (zegar RTC wyłączo-
ny). Mikrokontrolery STM32L mają 64...128 kB pamięci Flash (w opraco-
waniu są układy z pamięcią o pojemności 32...384 kB) do 16 kB pamięci
RAM oraz peryferie: 12-bitowy przetwornik A/C, 12-bitowy przetwornik
C/A, 16-bitowe timery z modulatorami PWM, UART, I2
C, SPI i USB Full-
Speed (12 Mb/s). Mają takie samo rozmieszczenie wyprowadzeń jak od-
powiadające im układy z rodziny STM32F. Mikrokontrolery STM32L są
także oferowane w wersji ze sterownikiem LCD.
Do najstarszej rodziny STM32F wprowadzono układy z linii Value
Line (STM32F100). Mają one konkurować pod względem ceny z mikro-
kontrolerami 16-bitowymi. Układy Value Line są taktowane sygnałem
zegarowym o częstotliwości do 24 MHz, mają do 8 kB pamięci RAM i do
128 kB pamięci Flash, przetwornik A/C, trójfazowy timer Motor Control
oraz sterownik interfejsu CEC.
W układach STM32F z linii Access (STM32F101) i Performance
(STM32F103) pojawiły się układy z dodatkowym oznaczeniem XL. Ukła-
dy te mają powiększoną, w stosunku do pozostałych układów z danej li-
nii, pojemność pamięci RAM do 768 kB lub 1 MB.
Oferta mikrokontrolerów Texas Instruments z rdzeniem Cortex-M3
jest bardzo szeroka, znajduje się w niej aż 9 rodzin układów Stellaris:
x000 ? należą do niej układy z serii 800, 600, 300, 100 ? to proste układy
mające do 64 kB pamięci Flash, 8 kB pamięci RAM i częstotliwości sy-
gnału zegarowego do 50 MHz (sprzedawane są w cenie poniżej 2 dolarów
w obudowach 48-końcówkowych),
85ELEKTRONIKA PRAKTYCZNA 9/2010
Nowe mikrokontrolery i mikroprocesory z rdzeniami firmy ARM
Rysunek 4. Blok Vector Engine wspomagający sterowanie pracą
silników elektrycznych zaimplementowany w mikrokontrolerach
Toshiby
Rysunek 5. Schemat blokowy rdzenia Cortex-M0
Bus Matrix
WIC
ARM core
ARM
POWERED
Cortex?M0
AMBA AHB-lite Interface
Debug
NVIC Debugger
interface
Mikrokontrolery TMPM370 są przeznaczone do sterowania elek-
trycznymi silnikami bezszczotkowymi (BLDC). W odróżnieniu od opisa-
nych powyżej są zasilane napięciem 4,5...5,5 V (są to jedne z nielicznych
mikrokontrolerów z rdzeniem Cortex-M3 zasilanych takim napięciem).
Są taktowane sygnałem zegarowym o częstotliwości do 80 MHz, mają
do 256 kB pamięci Nano Flash i 10 kB pamięci RAM. Układy z rodziny
TMPM370 mają dedykowany blok programowalnego sterownika silni-
ków PDM3+ oraz dwa 12-bitowe przetworniki A/C (każdy 11-kanałowy).
W bloku PDM3+ zawarto 2-kanałowy timer, zaawansowany blok wspo-
magający sterowanie silników elektrycznych VE ? Vector Engine (rysu-
nek 4), enkoder i 4 wzmacniacze operacyjne.
Podobnie do układów z rodziny TMPM370, układy TMPM380 są
zasilane napięciem 4,5...5,5 V. Są one przeznaczone do aplikacji prze-
mysłowych i automatyki domowej. Mają 128 lub 256 kB pamięci Nano
Flash, do 16 kB pamięci RAM i są taktowane sygnałem o częstotliwości do
40 MHz. W odróżnieniu od innych rodzin, zastosowano w nich 16-bitowy
timer MPT o 3 kanałach, który może pracować jako trójfazowy modulator
PWM lub jako sterownik tranzystorów IGBT.
Mikrokontrolery TMPM390 są zasilane napięciem z przedziału
1,7...3,3 V i są przeznaczona dla aplikacji z zasilaniem bateryjnym. Mogą
być taktowana sygnałem zegarowym o częstotliwości do 20 MHz. Mają
128 kB pamięci Flash i 8 kB pamięci RAM oraz bogaty zestaw peryferii:
3×UART, 4×SSP, 2×I2
C i CEC.
Cortex-M0
Rdzenie Cortex-M0 (rysunek 5) są przeznaczone do mikrokontro-
lerów stosowanych w prostych urządzeniach o małym zużyciu energii.
86 ELEKTRONIKA PRAKTYCZNA 9/2010
WYBÓR KONSTRUKTORA
Rysunek 6. Schemat blokowy rdzenia Cortex-M4
Rysunek 7. Schemat blokowy rdzenia Cortex-M1
Rysunek 8. Schemat blokowy rdzenia Cortex-R4F
Są to m.in. inteligentne czujniki, małe urządzenia medyczne, urządze-
nie telemetrii, akcesoria konsol do gier, a także urządzenia z łącznością
bezprzewodową. Zostały one więc zaprojektowane do aplikacji, w któ-
rych obecnie dominują mikrokontrolery 8- i 16-bitowe. Rdzenie Cor-
tex-M0 mają mniejsze zużycie prądu niż Cortex-M3, ale mają od nich
mniejszą moc obliczeniową. Prędkość wykonywania kodu programu
w teście Dhrystone dochodzi do 0,9 DMIPS/MHz, co jest porównywal-
ne ze starszym rdzeniem ARM7TDMI (0,95 DMIPS/MHz). Zmniejsze-
nie zużycia energii uzyskano poprzez zmniejszenie liczby tranzysto-
rów użytych do ich budowy (poniżej 12 tysięcy bramek). Uzyskują one
korzystny stosunek zużywanej mocy w przeliczeniu na częstotliwość
sygnału zegarowego ? nawet do 0,085 mW/MHx). Rdzenie Cortex-M0
mają również skróconą do 56 instrukcji listę rozkazów.
Jednym z pierwszych producentów stosujących rdzeń Cortex-M0 jest
firma NXP. W rodzinie LPC1100 i LPC11C00 są układy z tym rdzeniem.
Układy LPC1100 są taktowane sygnałem zegarowym o częstotliwości do
50 MHz, mają 8, 16, 24 lub 32 kB pamięci Flash oraz 2, 4 lub 8 kB pamięci
RAM. Rdzeń ARM Cortex-M0 został zaprojektowany z założeniem konku-
rowania pod względem wymiarów, ceny, poboru energii oraz wydajności
z mikrokontrolerami 8-bitowymi. Mikrokontrolery z rodziny LPC1100 są
więc dostępne w niewielkich obudowach LQFP48 i HVQFN33. W zależ-
ności od zastosowanej obudowy, do dyspozycji użytkownika są 28 lub 42
wyprowadzenia GPIO. Użyte w układach peryferie można nazwać stan-
dardowymi, bowiem znajdują się w nich: 8-kanałowy przetwornik A/C
o rozdzielczości 10 bitów, 5 timerów, modulatory PWM (do 13 kanałów)
oraz kontrolery interfejsów: 1×UART, 1×I2
C, 1...2×SSP. W porównaniu
do LPC1100 układy LPC11C00 różnią się zastosowaniem interfejsu CAN.
Co więcej, układy LPC11C00 mają programowe sterowniki CAN i CANo-
pen, zapisane w dedykowanej pamięci nieulotnej (nie zajmują miejsca na
kod programu w pamięci Flash). Sterowniki dostępne są dla programisty
poprzez komendy API. Mikrokontrolery LPC1100 i LPC11C00 są zasila-
ne pojedynczym napięciem z przedziału 1,8...3,3 V. W trybie aktywnym
pobierają prąd o natężeniu 9 mA (3,3 V i 50 MHz, wyłączone peryferie),
natomiast w trybach sleep, deep-sleep oraz deep power-down odpowied-
nio 2 mA (12 MHz), 6 mA oraz 220 nA.
Mikrokontrolery z rdzeniem Cortex-M0 ma w ofercie również fir-
ma Nuvoton. Układy NuMicro mają 64 lub 128 kB pamięci Flash oraz
4...16 kB pamięci RAM i są taktowany sygnałem zegarowym o mak-
symalnej częstotliwości 50 MHz. Są produkowane w obudowach
LQFP o 48, 64 lub 100 wyprowadzeniach. W zależności od wielkości
obudowy układy te mają do 31...76 końcówek I/O. Wszystkie układy
NuMico mają cztery 24-bitowe timery, 12-bitowy przetwornik A/C (8
kanałów), kontroler DMA, komparator analogowy, modulatory PWM
Cortex?M1
ITCM
I/F
ARM core
DTCM
I/F
AHB Live bus matrix
BPU DW CTL SWJ-DP AHB-AP
NVIC
AHB I/F
core
ARM
POWERED
Cortex?R4F
Debug
Interface VIC Port ETM Interface
Prefetch
& Branch
Prediction
Unit
FPU
TCM
Arbiter
and
Interface
Memory
Protection
Unit
Data
Cache
AXI Slave InterfaceAXI Master Interface
Instruction
Cache
(4...8 kanałów), zegar RTC, watchdog oraz interfejsy: UART, SPI, I2
C
i I2
S. Mikrokontrolery NuMicro są podzielone na 4 serie różniące się
wyposażeniem wewnętrznym oraz obszarem zastosowań:
? NUC100 Advanced Line ? podstawowa podrodzina układów Nu-
Micro
? NUC120 USB Line ? podrodzina mikrokontrolerów wyposażo-
nych w interfejs USB 2.0 Full-Speed
? NUC130 Automotive Line ? podrodzina układów przeznaczona
do aplikacji samochodowych, wyposażona w interfejsy LIN oraz
CAN 2.0B
? NUC140 Connectivity Line ? podrodzina mikrokontrolerów wy-
posażonych w interfejsy USB, LIN oraz CAN 2.0B.
Cortex-M4
Najnowszy i najbardziej rozbudowany rdzeń rodziny Cortex-M ?
Cortex-M4 ? jest przeznaczony do stosowania w mikrokontrolerach DSC
(Digital Signal Controller), czyli realizujących cyfrowe przetwarzanie sy-
Code
interface
Bus Matrix
SRAM&
Peripheral I/F
DAP
Memory
protection unit
Serial wire
viewer
Data
watchpoints
Flash
patch
WIC NVIC
ETM
Cortex?M4
Cortex-M4 CPU
ARM
POWERED
DSP
Debug and Trace
Floating
Point Unit
87ELEKTRONIKA PRAKTYCZNA 9/2010
Nowe mikrokontrolery i mikroprocesory z rdzeniami firmy ARM
Rysunek 10. Schemat blokowy rdzenia Cortex-A8
Rysunek 9. Równoległa praca rdzeni Cortex-R4F podnosząca
niezawodność działania mikrokontrolera TMS570LS
CCM-R4
1.5 cycle delay
CPU 1 CPU 2
CPU2CLK
Compare
Error
CCM-R4
Compare
1.5 cycle delay
CPU1CLK
IFetch
L1 cache
interface
TLB
Prefetch
and
branch
prediction
I-side
L1
RAM
IDecode IExecute
Decode &
sequencer
Dependency
check and
issue
Flags
RegBank
ALU1
ALU2
MAC
Laod store
Level 2
cache
NEON unitInstruction and Data DMA arbitration
L2 cache and preload engine
Fill and eviction queue
BIU
Write
buffer
L2 cache
data RAM
L2 cache
tag RAM
AXI
NEON
instruction
queue
Decode
control
Issue and
forward
control
NEON load
data queue
NEON
Floating
Point
VFPLite
NEON
Reg Bank
NEON
Integer
NEON
Load
Store
DFT/Test Debug ETM
Load
store
L1 cache
interface
TLB
D-side
L1
RAM
Cortex ?A8
wych paneli użytkownika, timery z modulatorami PWM, kontroler DMA,
interfejs kart SDHC oraz interfejsy komunikacyjne: I2
C, I2
S, SPI, UART.
Najlepiej wyposażone (mikrokontrolery Kinetis K60) mogą być taktowane
sygnałem o maksymalnej częstotliwości 100...180 MHz. Są wyposażone
dodatkowo w sprzętowy blok kryptograficzny (obsługujący algorytmy
3DES, DES, AES, MD5, SHA-1 i SHA-256), interfejs Ethernet MAC oraz
kontroler pamięci SDRAM.
Cortex-M1
Przy okazji opisywania nowości podzespołowych należy wspomnieć
o rdzeniu Cortex-M1 (rysunek 7). W odróżnieniu od opisywanych wy-
żej Cortex?ów rdzeń ten jest przeznaczony do implementacji w układach
FPGA. Jest on oferowany jako blok IP-core przez większość producentów
układów programowalnych. Wśród firm, których układy programowalne
wspierają rdzeń Cortex-M0, znajdują się m.in.: Actel, Altera oraz Xilinx.
W zależności od zastosowanego układu FPGA, rdzenie Cortex-M1 mogą
być taktowane sygnałem zegarowym o częstotliwości nawet 200 MHz. Ta-
kie parametry Cortex-M1 uzyskuje w układach FPGA, wykonanych w tech-
nologii 65 nm Stratix III (Altera) lub Virtex-5 (Xilinx), przy czym rdzeń Cor-
tex jest bez pamięci TCM dla danych i instrukcji oraz interfejsu debuggera.
Cortex-R4F
Rdzenie Cortex-R4F (rysunek 8) zostały zaprojektowane z myślą
o systemach operacyjnych czasu rzeczywistego, w których krytycznym
parametrem jest czas reakcji, oraz wymagających zapewnienia bezpie-
czeństwa (pewności i niezawodności) działania. Mają one rozszerzoną
listę instrukcji względem Cortex-M3 o instrukcje DSP oraz opcjonalnie
o instrukcje operacji na liczbach zmiennoprzecinkowych, przy zastoso-
waniu w mikrokontrolerze dedykowanej jednostki FPU. Rdzenie Cortex-
R4F obsługują też kontrolę parzystości dla pamięci (Flash i RAM) oraz dla
buforów peryferii.
gnałów (DSP). Mikrokontrolery z tym rdzeniem (rysunek 6) mogą znaleźć
zastosowanie na przykład w sterowaniu pracą silników. Zestaw instruk-
cji rdzeni Cortex-M4 został powiększony w porównaniu do Cortex-M3
o stałoprzecinkowe instrukcje DSP oraz 8- i 16-bitowe instrukcje SIMD,
a instrukcja Multiply and Accumulate (MAC) jest wykonywana w jednym
takcie zegara. Dodatkowo mogą być one wyposażone w jednostkę wspo-
magającą obliczenia zmiennoprzecinkowe FPU.
Firma Freescale ogłosiła w połowie roku włączenie do swojej oferty
nowych mikrokontrolerów Kinetis z rdzeniem Cortex-M4. W skład rodzi-
ny Kinetis wchodzi 5 serii oznaczonych symbolami K10, K20, K30, K40
i K60. Mikrokontrolery serii K10 i K20 mają identyczny zestaw peryferii,
z jedną różnicą ? układy z serii K20 mają dodatkowo interfejs USB-OTG.
Są one taktowane sygnałem zegarowym o maksymalnej częstotliwości
50...150 MHz. Podobnie jak najbardziej rozbudowane układy serii K60,
są wyposażone w kontroler pamięci NAND Flash oraz zmiennoprzecin-
kową jednostkę obliczeniową (FPU). Układy serii K30 i K40 wyposażo-
no w kontroler LCD (K40 ma dodatkowo USB OTG). Wszystkie mikro-
kontrolery Kinetis mają m.in.: podwójny interfejs CAN 2.0B, 16-bitowy
przetwornik A/C, 12-bitowy przetwornik C/A, wzmacniacze o programo-
walnym wzmocnieniu (PGA), komparatory analogowe, interfejsy dotyko-
R E K L A M A
88 ELEKTRONIKA PRAKTYCZNA 9/2010
WYBÓR KONSTRUKTORA
Jak na razie jedyną firmą oferującą mikrokontrolery z rdzeniem
Cortex-R4F jest Texas Intstruments. Mikrokontrolery TMS570LS tej
firmy są przeznaczone przede wszystkim do urządzeń samochodo-
wych. Są one taktowane sygnałem zegarowym o częstotliwości 140
lub 160 MHz, mają 1 lub 2 MB pamięci Flash oraz 128 lub 160 kB
pamięci RAM. Są wyposażone w interfejsy: 2/3×CAN, 3×SPI oraz
opcjonalnie Flexray. Mają dwa 12-bitowe przetworniki A/C o 20 lub
24 kanałach oraz 68 lub 115 wyprowadzeń GPIO. Są zasilane napię-
ciem 1,5 V (dla rdzenia) oraz 3,3 V (dla układów I/O).
Mikrokontrolery TMS570LS mają liczne obwody poprawiające
pewność i niezawodność działania. Głównym zabiegiem podnoszą-
cym niezawodność działania jest zastosowanie dwóch pracujących
równolegle rdzeni Cortex-R4F. Przetwarzają one ten sam strumień
danych, tak więc od strony programistycznej są widziane jako jeden
procesor. Wynik działania instrukcji z obu rdzeni jest porównywa-
ny w module CCM-R4 (rysunek 9), a niezgodności są sygnalizowa-
ne błędem porównania. W celu zminimalizowania wpływu sygnału
wspólnego na wynik obliczeń rdzeni, dane podawane na rdzeń 2 są
opóźnione o 1,5 cyklu zegarowego, natomiast wyniki obliczeń rdzenia
1 są również opóźniane o 1,5 cyklu zegarowego, aby wyniki obliczeń
z obu rdzeni były podawane do modułu CCM-R4 w tym samym czasie
(rysunek 9). Pamięci Flash i RAM są zabezpieczone kodami korekcji
błędów (ECC), co pozwala na naprawianie pojedynczego nieprawdło-
wego bitu lub wykrycie przekłamania dwóch bitów w odczytywanym
z pamięci słowie. Pamięć RAM peryferii jest również zabezpieczona
bitem parzystości. Mikrokontroler ma też możliwość przeprowadze-
nia testu poprawności funkcji logicznych rdzenia poprzez wykonanie
testu LBIST (Logic Built-In Self-Test) oraz pamięci ? test PBIST (Pro-
grammable Built-In Self-Test).
Cortex-A8
Rdzenie Cortex-A8 (rysunek 10) są przeznaczone dla złożonych
funkcjonalnie aplikacji w urządzeniach o niskim poborze energii (po-
niżej 300 mW). Architektura ARMv7-A umożliwia uzyskania prędko-
ści wykonywania instrukcji 2 DMIPS/MHz. Zbudowane na ich bazie
mikroprocesory mogą być taktowane sygnałem o dużej częstotliwości
? nawet 100 MHz. Rdzenie Cortex-A8 są wyposażone w dwupozio-
mową pamięć cache, która przyczynia się do skrócenia czasu odczytu
danych. Rdzenie te interpretują instrukcje ARM, Thumb-2, zmienno-
przecinkowe oraz NEON. Jednostka NEON ma 128-bitową architektu-
rę SIMD. Jest to przetwarzanie wielu strumieni danych przy użyciu
pojedynczego strumienia instrukcji. Instrukcje tego typu są stosowane
w aplikacjach, w których wymagane jest przetwarzanie dużych blo-
ków danych przy użyciu takiej samej funkcji, np. w przetwarzaniu
multimediów. Mikroprocesory z rdzeniem Cortex-A8 mogą pracować
pod kontrolą dużych systemów operacyjnych wymagających stosowa-
nia jednostek zarządzania pamięcią MMU.
Samsung ma w swojej ofercie mikroprocesory o bardzo dużej wy-
dajności. Jednym z pierwszych układów w ofercie tej firmy z rdze-
niem Cortex-A8 jest S5PC100. Jest on przeznaczony do aplikacji wy-
magających dużej mocy obliczeniowej, jak na przykład telefony ko-
mórkowe, multimedia, urządzenia komunikacyjne. Jest on taktowany
sygnałem zegarowym o częstotliwości 667 MHz i jest zasilany napię-
ciem 1,2 V. Wśród multimedialnych peryferii tego mikroprocesora na-
leży wymienić: 8-bitowy interfejs czujnika optycznego zgodny z zale-
ceniem ITU 601/656, wieloformatowy kodek (m.in. MPEG-4, H.263/4,
Xvid), kodek JPEG, akcelerator graficzny 2D/3D, sterownik wyświetla-
cza TFT LCD o rozdzielczości 1024×768 pikseli oraz interfejs S/PDIF.
Mikroprocesor S5PC100 obsługuje pamięci zewnętrzne NAND/NOR
FLASH, DDR/DDR 2 DRAM (do 333 Mb/s dla każdej końcówki portu).
Samsung ma w planach wyprodukowanie dwóch nowych ukła-
dów z rdzeniem Cortex-A8 oznaczonych symbolami: S5PC110
i S5PV210. SP5PC110 jest przeznaczony dla urządzeń mobilnych
z funkcjami multimedialnymi (jak na przykład telefony komórkowe),
natomiast S5PV210 do urządzeń typu netbook. Oba mikroprocesory
mają być taktowane sygnałem zegarowym o częstotliwości 1 GHz.
Mają być też wyposażone w kodek wideo umożliwiający kodowanie
i dekodowanie sygnału wideo w formacie 720p, z częstotliwością od-
świeżania 30 kl/s.
Texas Instruments opracował nowe mikroprocesory Sitara z rdze-
niem ARM9 oraz z nowym rdzeniem Cortex-A8. Mikroprocesory Si-
tara są przeznaczone przede wszystkim do aplikacji wymagających
dużych mocy obliczeniowych oraz niskiego poboru mocy, jak na przy-
kład przenośne urządzenia medyczne, systemy nawigacji satelitarnej,
przemysłowe wyświetlacze HMI. W ramach rodziny Sitara oferowane
są cztery linie produktowe: AM37x, AM35x, AM18x i AM17x.
Mikroprocesory AM18x i AM17x są wyposażone w rdzeń ARM9
taktowany sygnałem zegarowym o częstotliwości 375 lub 456 MHz.
Mają 32 kB pamięci cache L1, 128 kB cache L2 oraz 64 kB pamięci
ROM.
Mikroprocesory AM37x i AM35x są natomiast wyposażone
w rdzeń Cortex-A8 taktowany sygnałem zegarowym o częstotliwości
600, 800 lub 1000 MHz. Mają większą pojemność pamięci cache L1
i L2, odpowiednio 64 kB i 256 kB.
Mikroprocesory Sitara mają bogaty zestaw peryferii: USB Host,
USB OTG, interfejs kart MMC/SD, sterownik LCD, port wideo, inter-
fejsy UART, I2
C, SATA, kontroler DMA, 10-bitowe przetworniki A/C
oraz opcjonalnie interfejsy Ethernet MAC i CAN. Wybrane układy
z rdzeniem Cortex-A8 (AM3517, AM3715) mają wbudowany kopro-
cesor graficzny.
Inne rdzenie ARM
Pomimo że mikrokontrolery z rdzeniami Cortex-M powoli wy-
pierają z rynku układy z rdzeniami wcześniejszych generacji, nie-
które firmy oferują nowe rozwiązania ze sprawdzonymi rdzeniami
ARM7TDMI. Jedną z takich firm jest firma Analog Devices, która ma
w ofercie interesujące rozwiązania ?analogowych mikrokontrolerów?,
czyli mikrokontrolerów z wielokanałowymi przetwornikami A/C
i przetwornikami C/A. W rodzinie ADUC7xxx pojawiły się nowe ukła-
dy, wśród których warto odnotować ADUC7039 z 16-bitowymi prze-
twornikami A/C typu sigma-delta przeznaczony do monitorowania
napięcia akumulatorów samochodowych oraz ADUC7122 z 12-bito-
wymi przetwornikami A/C (1 MS/s) i C/A oraz wzmacniaczami o pro-
gramowalnym wzmocnieniu (PGA). Wśród interesujących nowości
należy wymienić również ADUC706x. Układy te mają dwa 24-bito-
we przetworniki A/C typu sigma-delta o częstotliwości próbkowania
8 kS/s. Główny przetwornik A/C ma 4 kanały (z możliwością pracy
różnicowej), a dodatkowy ma do 7 kanałów (do 4 par różnicowych).
Atmel opracował też nowe mikroprocesory z rdzeniem ARM926:
AT91SAM9G10,20, AT91SAM9M10,1 oraz AT91SAM9G45,6. Mikro-
procesory AT91SAM9G10 jest taktowany sygnałem zegarowym o czę-
stotliwości do 266 MHz. Mają wbudowany kontroler wyświetlacza
LCD. AT91SAM9G20 jest taktowany sygnałem zegarowym o częstot-
liwości do 400 MHz, ma liczne interfejsy komunikacyjne (w tym USB
Full-Speed i Ethernet MAC).
Mikroprocesory AT91SAM9M10,1 są przeznaczone do aplikacji
multimedialnych. Są wyposażone w kontroler wyświetlacza LCD, ak-
celerator operacji graficznych (2D) oraz sprzętowy dekoder sygnału
wideo. Układ AT91SAM9M11 ma dodatkowo jednostkę szyfrującą
(możliwa praca z algorytmem m.in. AES i 3DES) oraz generator liczb
pseudolosowych.
Mikroprocesory AT91SAM9G45,6 odznaczają się dużą pojemno-
ścią wbudowanej pamięci SRAM (64 kB) oraz interfejsem do obsługi
czujników obrazów. AT91SAM9G46 ma dodatkowo wbudowaną jed-
nostkę szyfrującą oraz generator liczb pseudolosowych. Układy AT-
91SAM9M11 i AT91SAM9G46 mają być w produkcji pod koniec 2010
roku.
Maciej Gołaszewski, EP
maciej.golaszewski@ep.com.pl
Zobacz więcej w kategorii Wybór konstruktora