Dla wielu wytwórców półprzewodników celem stało się dzisiaj posiadanie uniwersalnego i wyczerpującego portfolio mikrokontrolerów, po to, aby można było dobrać idealnie pasujący model do wymagań narzucanych przez projektowaną aplikację. Stąd czołowi producenci tych układów, pomijając kilka wyjątków, ścigają się w tych samych obszarach aplikacyjnych.
Jest naturalne, że nikt nie będzie oddawał innym przestrzeni do rozwoju biznesu, ale skutek jest taki, że projektując aplikację, na przykład hipotetycznie związaną z systemem pomiarowym, można wybierać pomiędzy wieloma równorzędnymi układami. Coraz częściej są to różne wersje Cortex-M.
Coraz tańsze zestawy ewaluacyjne, nierzadko proste sprzętowo, ale o dużych możliwościach oraz udostępniane za darmo środowiska programistyczne, biblioteki procedur, np. dotyczące obsługi elementów dotykowych, powodują, że zacząć dzisiaj pracę z nową rodziną układów nie jest już tak trudno jak kiedyś i zmiana platformy nie jest tak kosztowna jak dawniej.
Niemniej pytania, który dostawca jest kompetentny, kogo się radzić w sprawach technicznych i czyje wskazówki brać pod uwagę, są cały czas aktualne a nawet zyskują na ważności. Stąd wybór dostawcy mikrokontrolerów i narzędzi staje się jednym z ważniejszych współczesnych problemów związanych z mikrokontrolerami.
Miniaturyzacja i niskie koszty
Złożone i wydajne mikrokontrolery są zaliczane do ważniejszych czynników umożliwiających miniaturyzację elektroniki. Coraz większa integracja zawsze była zaliczana do najważniejszych czynników rozwojowych, przez co powiązanie miniaturyzacji z nowoczesnymi mikrokontrolerami jest bardzo silne.
Zmniejszanie wymiarów dotyczy samego układu, gdyż podobnie jak w wielu innych komponentach nowe obudowy bezwyprowadzeniowe pozwoliły na schowanie tego elementu w maleńkim kawałku plastiku. Wysoki stopień integracji to także połączenie w ramach jednej struktury pamięci o dużej pojemności, zestawu układów peryferyjnych, w tym wysokiej jakości bloków analogowych.
Większe upakowanie elementów ułatwia nawet możliwość elastycznego przypisywania funkcji do wyprowadzeń fizycznych tego elementu, wbudowanie do wnętrza generatora zegarowego i innych drobnych obwodów zewnętrznych. Duża wydajność przetwarzania, rozkazy ukierunkowane na cyfrowe przetwarzanie sygnałów pozwalają dodatkowo realizować niektóre funkcje programowo, bez negatywnego wpływu na parametry.
W efekcie jeden układ mikrokontrolera zastępuje dzisiaj minimum kilka innych chipów i często stanowi całą warstwę sprzętową aplikacji. Procesowi maksymalnej integracji funkcjonalności w mikrokontrolerach sprzyja też to, że są one coraz tańsze.
Mniej widać to w wartościach bezwzględnych, czyli cenach poszczególnych chipów, ale koszt zakupu określonych zasobów (wydajność, pamięć) bardzo szybko maleje.
Ceny wydajnych 32-bitowych jednostek z rdzeniem Cortex-M ze sporą ilością pamięci w hurcie sięgają kilku dolarów, układy o mniejszych możliwościach kosztują odrobinę powyżej dolara za sztukę, a ceny najprostszych mikrokontrolerów 8-bitowych już dawno spadły poniżej granicy jednego dolara. Funkcjonalność, jaką dostaje się za dolara, w cenie jest bardzo wysoka i niemożliwa do osiągnięcia w żaden inny sposób.
Niski pobór mocy
Kolejnym ważnym czynnikiem napędowym rynku mikrokontrolerów jest niski pobór mocy. Wraz z rosnącym znaczeniem elektroniki konsumenckiej i przenośnej, sieci rozproszonych, komunikacji bezprzewodowej oraz na skutek tego, że energia jest coraz droższa, na pierwszy plan w technice wysuwają się aplikacje zużywające do swojego działania minimalną ilość energii.
Producenci co chwila biją w tym obszarze kolejne rekordy, informując o coraz mniejszym poborze prądu w przeliczeniu na jednostkę wydajności lub też o ułamkach ampera pobieranych w którymś z trybów uśpienia w kolejnych wersjach i rodzinach. Zmiany w tym obszarze w porównaniu do tego, co było na rynku pięć lat wcześniej, są duże.
Dawniej wersje energooszczędne zapewniały zwykle małą wydajność przetwarzania, obecnie nie trzeba już dokonywać wyborów między wydajnym a energooszczędnym. Sporą pomoc zapewniają nowe technologie związane z usypianiem działania procesora, szybkim wybudzaniem, automatycznym dopasowaniem wydajności do realizowanych zadań, skalowaniem napięcia zasilania i innymi technikami ograniczającymi pobór mocy.
Szczególnie imponujący postęp widać w technologiach usypiania, gdzie producenci wprowadzili wiele takich trybów różniących się głębokością uśpienia, a dodatkowo zapewnili autonomiczne działanie układów peryferyjnych, które mogą pracować i wymieniać dane bez udziału procesora.
Na rynku są też specjalizowane rodziny układów o niskim poborze mocy - można je odnaleźć u wszystkich większych producentów mikrokontrolerów (np. MSP430), jest też kilku wytwórców mniejszych, jak Energy Micro, którzy wyspecjalizowali się w tym kierunku. Ich dostępność i doskonałe parametry wersji określanych jako ultra-low-power są zalążkiem wielu ciekawych aplikacji związanych z rozproszonymi sieciami akwizycji danych, smartmeteringiem, medycyną i ogólnie elektroniką przenośną.
W zakresie niskiego poboru mocy producenci z pewnością nie powiedzieli jeszcze ostatniego słowa, wraz z kolejnymi rekordami można liczyć na wzrost popularności zasilania energią wolno dostępną (energy harvesting), przed którą widać wielki potencjał.
Tadeusz GórnickiWG Electronics
Jeśli mówimy o rynku aplikacji pozakomputerowych - absolutnie tak. Proszę wskazać poważnego producenta mikrokontrolerów, który nie ma w ofercie ARM-a. Nowatorska przed laty koncepcja biznesowa - oferować tylko know-how, pozostawiając wytwarzanie wszystkim producentom półprzewodników, którzy tylko chcą - wygrała. Wszyscy ci producenci, promując pozornie tylko swoje produkty, promują ARM-a, co daje efekt dodatniego sprzężenia. Inną sprawą jest, czy taka dominacja jest dobra? Co w tym złego? Bazowanie w kolejnych projektach na znanej architekturze jest korzystne dla konstruktorów. Przywiązanie do produktu napędza też sprzedaż, ale skutkuje rutyną i inercją w dążeniu do lepszego. Nowatorskie idee rodzą się wskutek ścierania się poglądów i interesów, czyli konkurencji, a ta przy dominacji zanika. Koncentracja potencjału twórczego wokół ARM-a może zahamować w dłuższej perspektywie rozwój i ograniczyć ofertę na rynku. Może utrwalić wszechobecną tendencję, że produkt kreuje nie wolny rynek, a dominujące korporacje narzucające w formie promocyjnych pakietów to, co możemy w ogóle kupić. Może ograniczyć nam wolność decydowania o tym, jaki mikrokontroler najlepiej pasuje do naszych aplikacji - bo innego niż ARM nie będzie.
Oczywiście, że widzę. Zaletą jest unifikacja rdzenia i oprogramowania, elastyczność wyboru konkretnego mikrokontrolera dowolnego producenta z dopasowanymi do aplikacji układami peryferyjnymi, celowość doposażania się w profesjonalne narzędzia projektowe, skracające czas realizacji projektu.
Stopień skomplikowania mikrokontrolerów i aplikacji stwarza praktycznie konieczność stosowania sprawdzonych, profesjonalnych narzędzi. Płacąc za procesor, chcemy wykorzystać wszystkie wbudowane mechanizmy debugera. Zabiegając o "urzędnicze" certyfikacje, jesteśmy skazani na analizę kodu i przetwarzania. Musimy dekomponować projekt i synchronizować zadania w systemie czasu rzeczywistego. Nie tworzymy sami stosu TCP/IP, systemu plików, driverów USB lub CAN, tylko bierzemy gotowe biblioteki. Potrzebujemy wsparcia w aplikacjach Linuksa i Androida. A przy tym wszystkim nie mamy czasu błądzić po meandrach niesprawdzonego oprogramowania narzędziowego. Dlatego liczą się tylko renomowane marki jak Keil i ARM. |
Wersje specjalizowane pod aplikacje
Wraz z każdą kolejną generacją i nową architekturą mikrokontrolery tracą swój ogólny charakter i uniwersalność aplikacyjną. Nie jest to zjawisko, które należy postrzegać jako negatywne, przeciwnie dzięki temu, że oferta rynku jest szeroka, na rynku pojawiają się jednostki dobrze dopasowane do pracy w określonych aplikacjach, lepsze, w ostatecznym rozrachunku tańsze i wygodniejsze w stosowaniu.
Asortyment mikrokontrolerów większości dużych producentów wynosi zwykle kilkaset sztuk. Są one grupowane w rodziny o określonej wydajności (zegar, rdzeń, szerokość szyny danych) i wielkości pamięci. Tak było praktycznie zawsze, ale teraz podział ten rozszerzył się o specjalizację aplikacyjną, polegającą na wyposażaniu w zestaw układów peryferyjnych kompletny z punktu widzenia zastosowań aplikacyjnych.
Przykładem mogą być mikrokontrolery do pracy w napędach silników - zawierające układy PWM, przetworniki A/C, timery i bloki zapewniające szybkie obliczenia charakterystyczne dla DSP. Inne grupy aplikacyjne to smartmetering (o niskim poborze mocy, z wysokorozdzielczym przetwornikiem A/C, blokiem obliczeniowym do kalkulacji zużycia mediów), komunikacja bezprzewodowa (z wbudowanym transceiverem na pasmo ISM), motoryzacji (ze zdublowanymi blokami obliczeniowymi), dla medycyny (z wysokorozdzielczymi i szybkimi przetwornikami A/C), do aplikacji z interfejsem dotykowym, z interfejsem do wyświetlacza graficznego i wiele innych podobnych.
Po stronie jednostki centralnej pojawiają się wersje z rozbudowanymi możliwościami w zakresie cyfrowego przetwarzania sygnałów, zbliżone w możliwościach do tego, co oferują DSP, jak też układy wyposażone w koprocesor arytmetyczny. W ten sposób producenci umożliwiają wydajną programową emulację wielu funkcji, które dotychczas były realizowane blokami sprzętowymi.
Przykładem mogą być pętle sprzężenia zwrotnego w systemach zasilających i korektorach współczynnika mocy lub regulatorach w automatyce, w których dotychczasowe obwody analogowe zastępuje się mikrokontrolerem. Duża szybkość działania i możliwości obliczeniowe dają potrzebną szybkość reakcji układu mikrokontrolera na zdarzenia i np. fantastyczne możliwości programowego kształtowania charakterystyki sprzężenia zwrotnego.