ARMia nowości. Przegląd nowych mikrokontrolerów z rdzeniem ARM

ARMia nowości. Przegląd nowych mikrokontrolerów z rdzeniem ARM
Pobierz PDF Download icon
Nie ma chyba wśród Czytelników EP nikogo, kto nie słyszałby o mikrokontrolerach z rdzeniem ARM. Są one stosowane w mikrokontrolerach wielu firm, a nowe układy z tym rdzeniem pojawiają się praktycznie co tydzień. Oferta z rdzeniem ARM jest naprawdę szeroka, dlatego w artykule zostaną przedstawione tylko nowości z ostatnich miesięcy.
56 ELEKTRONIKA PRAKTYCZNA 7/2009 Wybór konstruktora Dodatkowe materiały na CD Rdzenie ARM należą do grupy proceso- rów 32-bitowych. Mikrokontrolery 32-bitowe coraz częściej pojawiają się w aplikacjach, w których do tej pory były stosowane mikro- kontrolery 8-bitowe. Dzieje się tak, gdyż 32- bitowe układy są na tyle tanie, że mogą być stosowane w wielu aplikacjach ?budżeto- wych?. W porównaniu do mikrokontrolerów 8-bitowych są wydajniejsze, ale ich opro- gramowanie jest trudniejsze dla programi- stów. Ponadto zmiana mikrokontrolera z tym rdzeniem nie jest tak trudna jak ?przesiadka? z układu 8-bitowego na 32-bitowy, czy też pomiędzy mikrokontrolerami 32-bitowymi o różnej architekturze. W związku z faktem produkowania ukła- dów z rdzeniem ARM przez wielu producen- tów, trudno jest śledzić wszystkie nowości w tak szerokiej ofercie produktowej. Specjal- nie dla czytelników Elektroniki Praktycznej przygotowaliśmy przegląd mikrokontrolerów z tym rdzeniem, zarówno nowych, dostęp- nych już na rynku, jak i anonsowanych przed ich premierą rynkową. W tab. 1 zestawiono opis najpopularniejszych rdzeni ARM. Na przestrzeni lat powstało kilka rodzin ARMów. Niniejszy przegląd rozpoczniemy od układów z rdzeniem ARM7TDMI-S. ARM7 Dobrze znane rdzenie serii ARM7TDMI są właściwie wypierane przez nowe układy Cortex-M3. Pomimo zbliżającej się ery pano- wania Cortexów, są jednak nadal stosowa- ARMia nowości Przegląd nowych mikrokontrolerów z rdzeniem ARM Nie ma chyba wśród Czytelników EP nikogo, kto nie słyszałby o mikrokontrolerach z rdzeniem ARM. Są one stosowane w mikrokontrolerach wielu ?rm, a nowe układy z tym rdzeniem pojawiają się praktycznie co tydzień. Oferta z rdzeniem ARM jest naprawdę szeroka, dlatego w artykule zostaną przedstawione tylko nowości z ostatnich miesięcy. ne i chyba warto wspomnieć o nowościach z tym rdzeniem. Jednym z nowszych mikrokontrolerów z rdzeniem ARM7TDMI są w ofercie firmy Atmel układy oznaczone symbolem AT91- SAM7L, które charakteryzują się niskim po- borem energii w trybie power-down (pobór prądu to 100 nA) i mogą być zasilane poje- dynczym napięciem 1,8...3,6 V. Układy z tej serii dostępne są z pamięcią Flash o pojem- 57ELEKTRONIKA PRAKTYCZNA 7/2009 Przegląd nowych mikrokontrolerów z rdzeniem ARM Tab. 1. Rdzenie procesorów ARM Oznaczenie Rodzi- na Architek- tura potok Jazele NVIC Instrukcje Pamięć Debug int. Tryby pracyARM Thumb Thumb2 DSP SIMD Cache TCM MMU MPU ARM720T ARM7 ARMv4T 3 ? ? 8 K ? ETM7, Embed- ded ICE ARM7TDMI-S ARM7 ARMv4T 3 ? ? ETM7, Embed- ded ICE ARM7EJ-S ARM7 ARMv5TEJ 5 ? ? ? ? ETM, Embed- ded ICE ARM920T ARM9 ARMv4T 5 ? ? 16 K/16 K ETM9, Core- Sight, Embed- ded ICE ARM922T ARM9 ARMv4T 5 ? ? 8 K/8 K ETM9, Embed- ded ICE ARM946E-S ARM9 ARMv5TE 5 ? ? ? 0...1 MB 0...1 MB ? ETM9, CoreSight ARM966E-S ARM9 ARMv5TE 5 ? ? ? 0...64 MB ETM9, Core- Sight, Embed- ded ICE ARM968E-S ARM9 ARMv5TE 5 ? ? ? 0...4 MB ETM9, Core- Sight, Embed- ded ICE ARM926EJ-S ARM9 ARMv5TEJ 5 ? ? ? ? 4...128 kB 0...1 MB ? ETM9, Core- Sight, Embed- ded ICE ARM1136J(F)-S ARM11 ARMv6K 8 ? ? ? ? ? 4...64 kB 0...64 kB ETM11RV, Core- Sight, Embed- ded ICE Run, Do- rmant, Stand- by, Shut- down Cortex-M0 Cortex ARMv6-M 3 ? ? CoreSight Stand- by, Sleep Cortex-M1 Cortex ARMv6-M 3 ? ? 0...1 MB CoreSight Cortex-M3 Cortex ARMv7-M 3 ? ? ? CoreSight Do- rmant, Deep Sleep, Sleep Now, Sleep on Exit Cortex-R4 Cortex ARMv7-R 8 ? ? ? 4...64 kB 0...8 MB ? ETM-R4, CoreSight Run, Stand- by, Shut- down ności 64 lub 128 kB oraz z pamięcią SRAM 6 kB. Ma on również wiele ukła- dów peryferyjnych, takich jak: interfejsy SPI, USART, TWI, zegar RTC i kontro- ler DMA. W urządzeniach o niskim poborze energii stosowane są często wy- świetlacze LCD, dlatego też mikrokontroler AT91- SAM7L wyposażono w ste- rownik takiego wyświe- tlacza. Może on sterować wyświetlaczem o maksy- malnej liczbie 40 segmen- tów i 10 linii wspólnych (common terminal). Układy z rdzeniem ARM7TDMI są również w ofercie firmy Analog Devices, z rodziny pre- cyzyjnych mikrokontrolerów analogowych ADuC7000. Mikrokontrolery ADuC charak- teryzują się rozbudowanymi analogowymi układami peryferyjnymi, w tym m.in.: prze- twornikami A/C i C/A wysokiej rozdzielczo- ści, źródłami napięcia odniesienia i czujni- kami temperatury. Nowszymi układami z tej serii są mikro- kontrolery oznaczone symbolem ADuC706x. Głównym wyróżnikiem tych układów jest precyzyjny, 24-bitowy przetwornik A/C typu 58 ELEKTRONIKA PRAKTYCZNA 7/2009 Wybór konstruktora sigma-delta, którego szumy własne wyno- szą zaledwie 20  nV). Na rys.  1 przedsta- wiono schemat blokowy mikrokontrolerów ADuC706x. Układy z tej serii są przeznaczo- ne przede wszystkim do sterowania w syste- mach automatyki przemysłowej oraz do pre- cyzyjnych przyrządów pomiarowych. Mają one 32 kB pamięci Flash oraz 4 kB SRAM, wzmacniacz o programowalnym wzmocnie- niu, multipleksery i  bufory analogowe, 16- bitowy modulator PWM oraz interfejsy: SPI, UART i  I2 C. Należy podkreślić niski pobór prądu układów ADuC7000. Przy włączonych wszystkich układach peryferyjnych, mikro- kontroler pobiera zaledwie 2,6 mA. Starsze układy, o  mniejszej rozdziel- czości przetwornika A/C, jak np. układy ADuC702x o 12-bitowej rozdzielczości, mają większą częstotliwość próbkowania 1  MS/s (ADuC706x ? 8 kS/s). ARM9 i ARM11 Wśród układów starszych rodzin, rdzenie ARM9 i ARM11 należą do zaawansowanych odmian ARMów. Są one przeznaczone do zastosowania w  przenośnych urządzeniach multimedialnych, urządzeniach sieciowych, bramkach VoIP czy samochodowych sys- temach sterowania ABS. Większość z  nich ma możliwość wykonywania instrukcji DSP, a  rdzenie z  końcówką J w  symbolu, mogą wykonywać instrukcje bytecode maszyny wirtualnej Javy (technologia Jazelle). Rdze- nie są wyposażone w jednostkę MMU, dzięki czemu możliwe jest uruchamianie dużego systemu operacyjnego jak Linux czy Sym- bian, oraz pamięć cache danych i instrukcji 4...128 kB. Mikrokontrolery z rdzeniem ARM9 znaj- dują się np. w ofercie firmy Toshiba. Wszyst- kie układy tej serii TX09 (rdzeń ARM926EJ) są kompatybilne pod względem wyprowadzeń, a różnią się możliwościami układów peryfe- ryjnych i wielkością zastosowanej pamięci. Wyróżniającą cechą mikrokontrolerów TMPM9xx jest sterownik ekranu LCD, sprzę- towy akcelerator graficzny oraz interfejs pa- nelu dotykowego. Sterownik LCD może wy- świetlać grafikę w maksymalnej rozdzielczo- ści 1024×768 pikseli, jednak akcelerator gra- ficzny może pracować tylko przy maksymal- nej rozdzielczości WVGA (800×400). W celu zwiększenia wydajności, w  mikrokontrole- rach serii TX09 zastosowano 7 warstwową magistralę (magistrale dla: danych, instruk- cji, sterownika LCD, akceleratora graficzne- go, 2×DMA i  USB). Mikrokontrolery mają do 512  Mb pamięci SDRAM, 256  Mb NOR Flash oraz 2 Gb NAND Flash. Mogą praco- wać z  maksymalną częstotliwością sygnału zegarowego 200 MHz (temperatura otoczenia 0...70o C) lub 150 MHz (?20...85o C ). Najnowszym układem z tej serii jest mi- krokontroler TMPA913CHXBG. W odróżnie- niu od innych układów nie ma on sterow- nika LCD i interfejsu do dołączenia kamery CMOS, ma też zmniejszoną z 32 do 16 bitów szerokość magistrali danych. Jednym z nowszych układów z rdzeniem ARM926EJ-S jest w ofercie firmy Atmel jest AT91SAM9G20 (kompatybilny pod wzglę- dem wyprowadzeń z  wcześniejszym AT91- SAM9260), który ma czterokrotnie większą niż poprzednicy pamięć cache i SRAM (po 32  kB dla pamięci cache danych i  instruk- cji, 32 kB SRAM). Układ pobiera stosunko- wo niewiele, bo 80 mW w aktywnym trybie pracy, ze wszystkimi włączonymi układami peryferyjnymi. Jest to układ przeznaczony do aplikacji, w których istotny jest zarówno niski pobór energii, jak i duża wydajność ob- liczeniowa, czyli m.in. automaty sprzedażo- we, systemy automatyki budynków, kamery przemysłowe i czytniki kodów. Mikrokontro- ler AT91SAM9G20 ma rdzeń ARM926EJ-S taktowany sygnałem zegarowym o częstotli- wości 400  MHz. Do komunikacji z  innymi układami cyfrowymi ma interfejsy: USB Full Speed Host/Device, 10/100 Ethernet MAC, interfejs czujnika akwizycji obrazu, interfejs kart MC, SSC, USART, SPI, TWI. Oprócz tego mikrokontroler ma trzy 16-bitowe licz- niki, i  czterokanałowy 10-bitowy przetwor- nik A/C. AT91SAM9G20 może pracować pod kontrolą zarówno systemu operacyjnego Li- nux jak i Windows CE. Kolejnym, z  nowych mikrokontrolerów rdzeniem ARM926EJ-S jest w ofercie Atme- la mikrokontroler AT91SAM9R. Jego główną zaletą są duże zasoby pamięci operacyjne. Ma 64 kB wewnętrznej pamięci SRAM (sin- gle-cycle) podzielonej na 4 bloki po 16  kB, które mogą być skonfigurowane jako pamięci o szybkim dostępie (TCM) lub jako pamięć SRAM ogólnego przeznaczenia. Ma również 24-kanałowy kontroler DMA, interfejs USB 2.0, SPI, 5×UART, SSC, TWI, 6 timerów oraz 4 modulatory PWM. W ostatnich miesiącach wiele linii pro- duktowych zmieniło właściciela. Jedną z nich są mikrokontrolery Zatara będące do niedawna w  ofercie firmy Zilog. Obecnie sprzedawane pod marką firmy Atmel, mi- krokontrolery Zatara przystosowane są do bezpiecznej obsługi operacji finansowych. Mikrokontrolery ZA9Lx są w  istocie ukła- dami typu SoC (System-on-Chip), gdyż mają Rys. 1. Schemat blokowy mikrokontrolerów serii ADuC706x 59ELEKTRONIKA PRAKTYCZNA 7/2009 Przegląd nowych mikrokontrolerów z rdzeniem ARM wbudowany system obsługi bezpiecznych transakcji z  procesorem ARM922T. Układy Zatara są tak zaprojektowane, aby sprostały wymaganiom Przemysłu Kart Płatniczych PCI stawianym urządzeniom sprzedażowym POS (point-of-sale). Aby spełnić wymagania stawiane tego rodzaju urządzeniom, mikro- kontrolery Zatara mają fizyczne i  logiczne mechanizmy zabezpieczające, wliczając w to czujniki warunków środowiskowych (tempe- ratury, napięcia i częstotliwości), sprzętowy generator liczb losowych (RNG) zgodny z za- leceniami NIST 800-22, jednostkę oblicza- jącą funkcję skrótu SHA-1, zegar RTC oraz 4 kB bezpiecznej pamięci nieulotnej SRAM z  możliwością szybkiego wykasowania da- nych przy próbie nieautoryzowanego dostę- pu do urządzenia. Interesującym rozwiąza- niem, jest uwierzytelnianie kodu programu uruchamianego po włączeniu zasilania, w celu uniemożliwienia jego podmienienia. Mikrokontrolery Zatara mogą komunikować się poprzez interfejsy: USB 2.0 OTG, UART, SPI. Wśród wbudowanych sterownik układy ZA9Lx mają interfejsy do dołączania PIN- padów i ekranów LCD. Dodatkowo mają one układ watchdog, 4-kanałowy 10-bitowy prze- twornik A/C, dwa UARTy zgodne z ISO7816 (Smart Card) oraz trójścieżkowy czytnik kart magnetycznych. Firma Freescale ma w  ofercie multime- dialne mikrokontrolery i.MX zarówno z rdze- niem ARM9 jak i ARM11. Do nowości w ro- dzinie mikrokontrolerów i.MX należą układy i.MX353/357. Są przeznaczone do aplikacji wymagających zaawansowanych możliwości graficznych, np. urządzenia HMI, czytniki e- booków czy przyrządy do nawigacji. Oprócz rdzenia ARM1136JF-S, mają wbudowany mo- duł graficzny OpenVG (i.MX357), który wspo- maga m.in. wyświetlanie filmów Adobe Flash. Układy i.MX35 taktowane są sygnałem zega- rowym o  częstotliwości do 532  MHz, mają wektorową jednostkę zmiennoprzecinkową, wielopoziomową pamięć cache oraz kontroler DMA. Mogą współpracować z  różnymi ze- wnętrznymi pamięciami, jak: SDRAM, DDR i DDR2, NOR i NAND Flash oraz SRAM. Oba układy mają wbudowany moduł obróbki obra- zu (IPU) z interfejsem dla kamery oraz ekranu LCD (24-bitowe wyświetlacze rozdzielczo- ścią WVGA). Moduł IPU jest odpowiedzialny za obsługę wyświetlanego obrazu i nie obcią- ża zbytnio CPU. Do mikrokontrolerów z rdzeniem ARM9 w  ofercie firmy NXP należą rodziny nowe LPC3130/1 i  LPC29xx. Mikrokontrolery LPC313x mają rdzeń ARM926EJ-S pracujący z  częstotliwością 180  MHz oraz do 192  kB pamięci SRAM, kontroler pamięci NAND Flash, interfejs pamięci zewnętrznych oraz interfejs USB OTG. Mikrokontrolery LPC291x mają natomiast rdzeń ARM968 tak- towanym sygnałem zegarowym 125 MHz. Na temat nowości w ofercie firmie NXP piszemy więcej w tym numerze EP na str. 92. Era Cortex?ów Najmłodszą rodziną procesorów ARM są procesory z rdzeniem Cortex o architekturze ARMv6 i  ARMv7. Pierwszymi przedstawi- cielami tej rodziny były układy Cortex-M3 (ARMv7), opracowane przez firmę ARM w 2006 roku. Należą one do grupy M rodziny Cortex, która oferuje bardzo korzystny stosu- nek ceny do możliwości i jest przeznaczona do zastosowań konsumenckich i przemysło- wych. Pozostałymi grupami są: ? grupa A ? przeznaczona dla wymagają- cych aplikacji z zastosowaniem systemu operacyjnego, np. Symbian, Linux i Win- dows Embedded, które wymagają dużych mocy obliczeniowych, obsługi pamięci wirtualnej (MMU), czy też obsługi Javy. ? grupa R ? stworzona z  myślą o  syste- mach czasu rzeczywistego, których kry- tycznym parametrem jest czas reakcji, jak np. system ABS. Najpopularniejszy obecnie, rdzeń Cortex -M, ma architekturę harvardzką, czyli o  roz- dzielonych magistralach danych i  instrukcji. Podejście takie pozwala na jednoczesny dostęp do pamięci danych i instrukcji. Zwiększa się przez to efektywność systemu, gdyż dostęp do pamięci danych nie spowalnia wykonywania programu (pobierania kolejnych instrukcji). W rdzeniach tych akceptowana jest lista instrukcji Thumb-2, które mogą być zarówno 16- jak i 32-bitowe. Mikrokontrolery z  tym rdzeniem są w ofercie wielu firm. W ich gronie pojawiła się dosyć niespodziewanie firma Texas In- struments z szeroką gamą mikrokontrolerów Stellaris, przejętych w połowie mają od firmy Luminary Micro. W  ofercie Luminary Micro znajdowało się wiele układów z rdzeniem Cortex-M3. Do głównych rodzin układów z rdzeniem ARM należą układy: ? 1000 ? przeznaczone do aplikacji z zasi- laniem bateryjnym; ? 2000 ? przeznaczone do aplikacji z inter- fejsem CAN; ? 3000 ? zoptymalizowane dla aplikacji USB OTG; ? 5000 ? łączące komunikację poprzez in- terfejsy CAN i USB OTG; ? 6000 ? przeznaczone do aplikacji siecio- wych, zawiera Ethernet MAC oraz PHY; ? 8000 ? zaprojektowane dla aplikacji CAN oraz obsługi sieci; Ethernet (MAC + PHY); ? 9000 ? najbardziej rozbudowana i  naj- nowsza rodzina układów z możliwością komunikacji poprzez CAN, USB OTG oraz Ethernet. W ofercie firmy Luminary Micro są rów- nież rodziny mikrokontrolerów o mniejszych możliwościach: ? 100 ? mikrokontrolery z  rdzeniem Cor- tex-M3 są w 28-pinowej obudowie SOIC. Mają one 8 kB pamięci Flash i 2 kB SRAM, interfejs UART oraz SSI (LM3S102 ma I2 C). Układy mogą pracować z sygnałem zegarowym o częstotliwości 20 MHz. Ich zaletą jest niska cena. ? 300 ? przeznaczone do aplikacji przemy- słowych, na przykład terowaniem silni- kiem, mają do 6 modulatorów PWM (nie wszystkie) oraz zwiększoną pojemność pamięci Flash i SRAM (16 i 2...4 kB). ? 600 ? mikrokontrolery Stellaris LM3S600 mają do 32 kB pamięci Flash i  8  kB SRAM. Taktowane są sygnałem o często- tliwości do 50 MHz. Mogą być również stosowane w  aplikacjach sterowania silnikiem, gdyż niektóre układy z tej ro- dziny mają do 6 modulatorów PWM. Po- nadto mają do 3 komparatorów oraz do 8 kanałów 10-bitowego przetwornika A/C o częstotliwości próbkowania do 1 MS/s. ? 800 ? Wśród mniejszych mikrokontro- lerów Stellaris, te są największe. Mają bowiem do 64  kB pamięci Flash (8  kB SRAM). Wśród nowości w rodzinie należy zwró- cić uwagę na mikrokontroler LM3S9B96 z  rodziny 9000. Ma on dużą pamięć Flash (256 kB) oraz SRAM (96 kB) i może być tak- towany sygnałem zegarowym o częstotliwo- ści do 80 MHz (mikrokontroler ma wbudo- wany generator o  częstotliwości 16  MHz). Interesującą właściwością tych mikrokontro- lerów jest pamięć ROM z wpisaną biblioteką sterowników StellarisWare, bootloaderem, tablicami dla szyfrowania AES, funkcję ob- liczającą sumę kontrolną CRC oraz jądrem systemu operacyjnego typu RTOS SafeRTOS. Na rys. 2 przedstawiono schemat tego mikro- kontrolera. LMS3S9B96 może być stosowany w  aplikacjach wymagających bezpieczne- 60 ELEKTRONIKA PRAKTYCZNA 7/2009 Wybór konstruktora go połączenia z  szyfrowaniem danych. Co więcej, mikrokontroler LM3S9B96 ma dwa układy watchdog ? jeden taktowany systemo- wym sygnałem zegarowym, drugi taktowany z wewnętrznego generatora 16 MHz. Mikro- kontroler ma też wiele interfejsów komuni- kacyjnych, takich jak: 10/100 Ethernet MAC/ PHY, 2 CAN, USB 2.0 Full Speed OTG/Host/ Device, 2 SSI /SPI, 2 I2 C, I2 S oraz 3 UARTy. Kontroler Ethernetu ma zaimplementowaną sprzętową obsługę protokołu IEEE 1588 PTP, który służy do synchronizacji sieci Ethernet z  precyzją rzędu nanosekund. LM3S9B96 może też być sterownikiem silników, gdyż ma 8 wyjść modulatora PWM i dwa wejścia dla enkodera czteroćwiartkowego. Należy zwrócić uwagę, że nie są to jedyne mikrokontrolery Stellaris z wbudowanymi ta- blicami AES, bo mają je także układy rodzin: 2700, 2B00, 5700 i 5B00. Więcej na temat mi- krokontrolerów Stellaris piszemy na str. 106. Do niedawna firma Atmel nie miała w ofercie mikrokontrolerów z rdzeniem Cor- tex-M3, jednak pod koniec maja ogłoszono wprowadzenie rodziny AT91SAM3 z  tym rdzeniem. Nowe układy mają podobne moż- liwości jak inne układy z rodziny AT91SAM, włączając w to: wielowymiarowy system ma- gistral, kontroler DMA dla układów peryfe- ryjnych (PDC) oraz dużą pojemność pamięci wewnętrznych. Mikrokontrolery AT91SAM3 mają mieć zunifikowany dostęp do rejestrów układów peryferyjnych, dzięki czemu zwięk- szona jest możliwość przenoszenia kodu pro- gramu pomiędzy różnymi mikrokontrolerami tej rodziny. Na rys. 3 przedstawiono schemat blokowy nowych układów AT91SAM3U. Rdzeń ARM Cortex-M3 w  zapowiada- nych mikrokontrolerach AT91SAM3U ma być taktowany sygnałem zegarowym o  częstotli- wości do 96 MHz. Mikrokontrolery będą miały 64...256 kB pamięci Flash (128-bitowy dostęp, sprzętowy akcelerator, dwa banki), 16...48 kB SRAM (dwa banki) oraz 16 kB pamięci ROM z bootloaderem kodu (przez USART i USB). AT91SAM3U mają wbudowany stabilizator napięcia i  oscylatory: główny (3...20  MHz), zegara RTC 32,768  kHz, fabrycznie kalibro- wany generator RC 4/8/12 MHz oraz pętlę PLL dla interfejsu USB. Układy Atmela z  rdzeniem Cortex-M3 mają charakteryzować się niskim poborem prądu. W  trybie zasilania backup (zasilane są wyłącznie obwody kontrolera zasilania, zegar RTC, rejestry zapasowe oraz oscy- lator 32.768  kHz) układ pobiera zaledwie 2,5  mA  (zegar RTC pobiera 0,6  mA). Z  po- zostałych układów peryferyjnych, mikro- kontrolery AT91SAM3U mają: interfejs USB 2.0 Device, do czterech interfejsów USART (obsługa IrDA, SPI i kodowania Manchester), 1×UART, 2×TWI/I2 C, 1×SPI, 1×SSC(I2 S), 1×HSMCI(SDIO/SD/MMC) oraz do 8 kana- łów 12-bitowego przetwornika A/C o prędko- ści próbkowania 1 MS/s. W  ofercie firmy Toshiba Electronics są również mikrokontrolery z rdzeniem Cortex- M3 oznaczone symbolami TMPM3xx (seria TX03). Wśród nich w  ofercie tej firmy są trzy rodziny układów TMPM330, TMPT370 i TMP380. TMP330 jest grupą mikrokontrolerów ogólnego przeznaczenia z  12-kanałowym przetwornikiem A/C (10-bitowy), 10- kanałowym modulatorem PWM o  rozdziel- czości 16-bitów oraz standardowymi interfej- sami komunikacyjnymi jak UART, I2 C i mniej standardowymi jak CEC (Consumer Electro- nics Control) oraz układami peryferyjnymi, jak zegar RTC czy układ watchdog. Układy TMP330 mają 128, 256 lub 512 kB pamięci Flash oraz 8, 16 lub 32 kB pamięci SRAM. Częstotliwość sygnału zegarowego wynosi 32...40 MHz. Projektantów układów do sterowania silnikami powinna zainteresować rodzina TMPM370 z układem TMPM370FY. Ten mi- krokontroler ma rdzeń Cortex-M3 taktowa- ny sygnałem o  częstotliwości 80  MHz oraz opracowany przez firmę Toshiba wbudowa- ny układ PMD3+, programowalny sterownik silnika wraz z  12-bitowym przetwornikiem A/C. Układ jest przewidziany do sterowania trójfazowymi silnikami bezszczotkowymi prądu stałego lub indukcyjnymi. Kontroler PMD3+ ma również wbudowane 4 wzmac- niacze operacyjne, dwukanałowy enkoder oraz dwa komparatory analogowe. Dwukana- łowy kontroler PMD3+ oraz jednostka wek- torowa sterują trójfazowym modulatorem PWM o 16-bitowej rozdzielczości. Mikrokon- troler TMPM370FY jest zasilany napięciem 4,5...5,5  V. Ma 256  KB pamięci Flash oraz 10 kB pamięci RAM. Układy z serii TMPM370 i TMP380 mają układ OFD (rys. 4), którego zadaniem jest kontrola częstotliwości sygnału taktującego. W razie wykrycia odstępstw jest generowany sygnał zerowania. Układ jest zgodny z regu- lacją IEC60730 class B bezpieczeństwa urzą- dzeń elektronicznych. Rys. 2. Schemat blokowy mikrokontrolerów AT91SAM3U 61ELEKTRONIKA PRAKTYCZNA 7/2009 Przegląd nowych mikrokontrolerów z rdzeniem ARM czenia są konfigurowane na etapie produkcji w zależności od potrzeb odbiorcy. W ofercie firmy Triad Semiconductor są układy VCA z  rdzeniem Cortex-M0 (może on pracować z częstotliwością 50 MHz). Schemat blokowy układu VCA z rdzeniem ARM przedstawiono na rys. 5. Ten układ ma oprócz interfejsów UART, SPI, I2 C, pamięci Flash i RAM konfi- gurowalne bloki analogowe i cyfrowe, dzięki czemu możliwe jest ?skrojenie? jego możli- wości pod specyficzne potrzeby. Podobne układy oferuje Atmel. Mają one blok bramek logicznych, których połączenia (metal 3 warstwy) mogą być konfigurowane na etapie produkcji układów. Pozwala to na dostosowanie do potrzeb klienta specyficz- nych dla danej aplikacji, układów peryferyj- nych. Mikrokontrolery z  rodziny AT91CAP Rys. 3. Schemat blokowy mikrokontrolerów LMS3S9B96 Rys. 4. Schemat blokowy działania układu OFD w mikrokontrolerach firmy Toshiba Wśród producentów mikrokontrole- rów z  rdzeniem Cortex-M3 jest też firma NXP z  mikrokontrolerami rodzin LPC1300 i  LPC1700. Opis nowości w  ofercie firmy NXP jest w tym numerze EP na str. 92. Wyliczając producentów mikrokontro- lerów z rdzeniem Cortex-M3 nie można nie wspomnieć o  firmie STMicroelectronics, która jako jedna z  pierwszych rozpoczęła produkcję układów STM32 właśnie z  tym rdzeniem. Nowe układy z grupy Connectivity opisane zostały w artykule na str. 103 w tym numerze EP. Do grona producentów mikrokontrole- rów z rdzeniem Cortex dołączają nowe firmy. Jedna z takich firm jest Energy Micro, która oferuje mikrokontrolery z  rodziny EFM32 zoptymalizowane pod kątem niskiego zuży- cia energii. Układy te mają 5 trybów pracy, przy czym w  o najniższym zużyciu energii pobierają prąd o natężeniu 0,1 mA, natomiast w  trybie ?wyższym?, w  którym podtrzymy- wana jest zawartość pamięci RAM 0,3  mA. Pomysłem firmy Energy Micro na zmniejsze- nie zużycia energii przez system mikroproce- sorowy, jest krótka praca w trybie aktywnym z  długim oczekiwaniem na wykonywanie zadania w trybie o obniżonym poborze ener- gii. Mikrokontrolery EFM32 mają krótki czas przejścia pomiędzy trybami pracy wynoszą- cy mniej niż 2 ms. Mikrokontrolery mają też dodatkowe układy peryferyjne o mniejszym poborze energii: UART i timer. Mikrokontro- lery EFM32 mają 16...128 kB pamięci Flash i 8...16 kB pamięci SRAM. Większość z nich, oprócz standardowych układów peryferyj- nych jak interfejsy: UART, I2 C, zegar RTC czy przetworniki A/C, jest wyposażona w  blok szyfrowania AES. Najlepsze układy z rodzi- ny EFM32 mają również kontroler ekranu LCD (do 4×40). ARMy w układach specjalnych Firma ARM oprócz rdzenia M3 przygo- towała kilka innych, nowych rdzeni. Jednym z nich jest Cortex-M0, który ma być najmniej- szym rdzeniem ARM i o najmniejszym zapo- trzebowaniu na energię. Jedną z firm, która ma w  ofercie mikrokontrolery z  tym rdze- niem jest Triad Semiconductor. Oferuje ona konfigurowalne układy ASIC VCA (Via Con- figurable Array). Układy VCA są oferowane jako gotowe zestawy bloków analogowych (wzmacniacze operacyjne, przetworniki C/A i C/A) i cyfrowych (bramki logiczne, pa- mięć, układy wejścia-wyjścia), których połą- Rys. 5. Układy VCA z oferty Triad Semiconductor 62 ELEKTRONIKA PRAKTYCZNA 7/2009 Wybór konstruktora są dostępne zarówno z rdzeniem ARM7TD- MI jak i  ARM926EJ-S. Nowością w  rodzi- nie AT91CAP są układy CAP7L z rdzeniem ARM7TDMI taktowanym sygnałem zega- rowym o  częstotliwości 80  MHz. Mają one blok logiczny o 200 tys. bramek. Oprócz tego bloku logicznego, mikrokontrolery AT91CAP są wyposażone w kontroler DMA, interfejsy USB Device, SPI, USART, Ethernet MAC. Mają 256 kB pamięci ROM oraz 160 kB pa- mięci SRAM. Nieco starszymi układami są mikrokon- trolery z  serii AT91CAP9S z  rdzeniem AR- M926EJ-S taktowanym zegarem o  częstotli- wości 400 MHz. Są to bardziej rozbudowane mikrokontrolery z rodziny CAP. Mają w za- leżności od wersji 250 lub 500 tys. bramek logicznych. W  porównaniu do AT91CAP7L mają też bogatsze peryferia, gdyż zawierają dodatkowo m.in.: interfejs USB host, TWI, CAN oraz sterownik LCD. Rdzeń ARM oferowany jest innym fir- mom jako blok IP, który może zostać użyty we własnych projektach układów specjali- zowanych ASIC. Dlatego wielu producen- tów układów półprzewodnikowych stosuje rdzenie ARM we własnych mikrokontrole- rach. W 2007 roku pojawił się rdzeń Cortex- M1 dostosowany do stosowania w układach programowalnych FPGA. Wiele firm oferuje więc te rdzenie dla swoich układów. Jedną z  firm, która rozpoczęła sprze- daż tego rdzenia jest firma Actel. Co cieka- we firma nie pobiera opłat licencyjnych od liczby stosowanych rdzeni w  swoich ukła- dach programowalnych Fusion i  ProASIC3. W układach FPGA tej firmy rdzeń Cortex-M1 może być taktowany sygnałem zegarowym o częstotliwości do 72 MHz i zajmuje on ok. 4300 bloków logicznych (tiles) tych układów. Rdzenie te są już obsługiwane przez środowi- sko projektowe Actel Libero IDE, jak również przez programy narzędziowe ARM RealView Development Suite, RealView Microcontrol- ler Development Kit oraz programy innych producentów. Cena układów FPGA zopty- malizowanych dla rdzenia M1, czyli IGLOO (M1AGL), ProASIC3 (serie M1A3P/M1A3PE), ProASIC3L (M1A3PL) i Fusion (M1AFS), za- czyna się już od 3-4 dolarów. Do rdzeni M1 Actel dołącza bibliotekę układów peryferyj- nych, m.in. GPIO, I2 C, PWM i watchdog. Do implementacji systemu cyfrowego z  rdzeniem procesora ARM Cortex-M1 jest środowisko Libero IDE wraz z  komponen- tami SmartDesign (graficzne środowisko do projektowania systemów SoC) i CoreConso- le (program wspomagający obsługę i imple- mentację bloków IP). Program SoftConsole służy natomiast do przygotowywania apli- kacji w języku C/C++ dla procesorów Cor- tex-M1. Zawiera kompilator GNU, debugger GDB oraz symulator. Cortex-A8 Rdzenie Cortex-A8 należą do najbardziej zaawansowanych i wydajnych rdzeni ARM. Mikrokontrolery multimedialne OMAP35x z tymi rdzeniami oferuje m.in Texas Instru- ments. Znajdują się w niej zarówno układy z  rdzeniem DSP TMS320C64x, jak i  z  sa- mym rdzeniem Cortex-A8. Układy te mogą być stosowane w  zaawansowanych aplika- cjach multimedialnych. Mają dedykowane wejścia-wyjścia wideo, akcelerator audio-vi- deo (IVA2.2), dwupoziomową pamięć cache oraz wszelkie układy peryferyjne wymagane w tego rodzaju aplikacjach. Akcelerator gra- ficzny jest w stanie obsłużyć bibliotekę gra- ficzną OpenGL ES 2.0. Mikrokontrolery z  rdzeniem Cortex-A8 znajdziemy również w procesorach multime- dialnych i.MX515 firmy Freescale. Podobnie jak układy firmy Texas Instruments, układy i.MX515 mogą obsłużyć biblioteki graficzne OpenGL ES 2.0 oraz mają koprocesor zmien- noprzecinkowy. Mają też możliwość genero- wania analogowego sygnału telewizji wyso- kiej rozdzielczości 720 p. Podsumowanie Wybór mikrokontrolera do zastosowa- nia we własnej aplikacji nie jest zadaniem łatwym. Oprócz możliwości układów pe- ryferyjnych i  wydajności rdzenia należy wziąć pod uwagę jego cenę. Można zauwa- żyć wyraźny trend w zmniejszaniu się ceny układów 32-bitowych, które mogą być z po- wodzeniem stosowane w aplikacjach, w któ- rych do niedawna korzystniejszym wyborem zdawały się 8-bitowce. Wśród mikrokontro- lerów, które oferują korzystny stosunek ceny do możliwości należy wskazać rodziny mi- krokontrolerów z  rdzeniem Cortex-M3. Co prawda rdzenie ARM7TDMI-S są nadal po- pularne i stosunkowo niedrogie, jednak przy wyborze tych układów należy wziąć pod uwagę fakt, że jest to rodzina starsza tech- nologicznie i  w  niedługim czasie zostanie najprawdopodobniej zastąpiona przez wy- dajniejsze układy Cortex-M3. Są jednak takie układy, jak na przykład seria ADuC firmy Analog Devices, która pomimo ?starszego? rdzenia są bardzo atrakcyjne, ze względu na zastosowane układy peryferyjne, jak analo- gowe układy peryferyjne mikrokontrolerów ADuC70xx. Poza mikrokontrolerami ogólnego prze- znaczenia, są interesujące grupy układów specjalnych. W  aplikacjach wymagających wysokiego stopnia poufności czy ochrony danych, należy wskazać m.in. układy Zatara (obecnie Atmela), niektóre układy Stellaris z blokiem tablic lookup dla algorytmu AES oraz układy nowej firmy Energy Micro. Do zadań multimedialnych, wymagają- cych większych mocy obliczeniowych CPU, warto przyjrzeć się układom z  rdzeniem ARM9 lub ARM11, które są zaprojektowane do tego rodzaju zadań. W przypadku nietypowych aplikacji, wy- magających zastosowania niestandardowych układów peryferyjnych lub własnych akcele- ratorów obliczeń, należy przyjrzeć się ofercie firm z konfigurowalnymi układami lub ofercie producentów układów FPGA. Oprócz opisy- wanych konfigurowalnych mikrokontrolerów Atmela czy układów specjalizowanych firmy Triad Semiconductor, interesującą gałęzią roz- woju mikroprocesorów są rdzenie oferowane jako bloki IP implementowane w  układach FPGA. Po układach takich jak Nios II firmy Altera i Microblaze i Picoblaze firmy Xilinx, również firma ARM wprowadziła do oferty rdzenie Cortex-M1. W  przypadku układów typu ASIC i FPGA należy wziąć pod uwagę dłuższy oraz bardziej skomplikowany proces projektowania systemu. Maciej Gołaszewski, EP maciej.golaszewski@ep.com.pl
Artykuł ukazał się w
Lipiec 2009
DO POBRANIA
Pobierz PDF Download icon