Nowe funkcje Arm Keil MDK v6, w tym FuSa w wersji Professional

Nowe funkcje Arm Keil MDK v6, w tym FuSa w wersji Professional

Arm Keil Microcontroller Development Kit (Keil MDK) to najbardziej kompleksowe rozwiązanie programistyczne umożliwiające tworzenie aplikacji systemów wbudowanych, IoT oraz uczenia maszynowego (ML), opartych na architekturze Arm Cortex-M. Obecnie środowisko MDK obsługuje ponad 10 000 różnych mikrokontrolerów od 38 dostawców układów krzemowych. Narzędzie to od dawna cieszy się dużym (i w pełni zasłużonym) uznaniem wśród deweloperów, stanowiąc niezbędne wyposażenie programistów pracujących w wielu obszarach aplikacyjnych współczesnej technologii.

Aby sprostać rosnącym wymaganiom, po latach rynkowej obecności Keil MDK 5 nadszedł czas na zmiany. Arm opracował środowisko MDK w wersji 6, które zostało zoptymalizowane pod kątem wsparcia pełnego portfolio procesorów Arm Cortex-M i Ethos-U. W ten sposób powstało oprogramowanie korzystające z najważniejszych cech poprzedniego IDE oraz wprowadzające wiele nowych rozwiązań.

Licencje UBL (ang. User-based License)

Podstawową zaletą ekosystemu MDK v6 jest możliwość pracy w chmurze oraz zmieniony sposób licencjonowania. Nowością jest licencja UBL, która umożliwia pracę użytkownikom z dowolnego miejsca na świecie, bez ograniczeń sprzętowych, jakie występowały w przypadku korzystania z wcześniejszych wersji narzędzia.

Środowisko Keil Studio

Najważniejszą zmianą w wersji 6 jest wprowadzenie środowiska Keil Studio IDE. Programiści mogą wybierać pomiędzy sprawdzonym μVision a Keil Studio, które obsługuje nowoczesne technologie CMSIS oraz wspiera innowacyjne przepływy pracy w projektowaniu systemów wbudowanych.

MDK v6 umożliwia bezproblemowe przełączanie się między wymienionymi powyżej środowiskami. Keil Studio rozszerza również wsparcie o systemy Linux i macOS, co stanowi istotne ulepszenie w porównaniu do μVision, dostępnego jedynie na system Windows. Dzięki integracji z Visual Studio wszystkie popularne systemy operacyjne są teraz obsługiwane, a to otwiera drogę do stosowania tego wydajnego środowiska deweloperskiego także tym programistom, którzy w ciągu wielu lat pracy zawodowej silnie przywiązali się do systemów linuksowych bądź macOS.

Nowe funkcje w MDK v6

Więcej niż toolchain

Obsługując wszystkie główne systemy operacyjne, Keil MDK oferuje wszechstronne Keil Studio i łączy się z Arm Virtual Hardware w celu programowania opartego na testach z zastosowaniem symulacji. Dzięki systemowi operacyjnemu czasu rzeczywistego Keil RTX5 i bezpłatnemu oprogramowaniu pośredniczącemu (middleware) systemy wbudowane można teraz tworzyć w krótszym czasie, zwiększając efektywność działań. Ekosystem od firmy Arm to nie tylko doskonały toolchain (łańcuch narzędzi), ale także kompletne „otoczenie” narzędziowe pozwalające na stosowanie najnowocześniejszych metod pracy o wydajności nieporównanie większej niż klasyczne debugowanie kodu bezpośrednio na docelowej platformie sprzętowej.

Wszechstronne generowanie kodu

Keil MDK obsługuje różne zestawy narzędzi, w tym Arm Compiler for Embedded, GCC lub LLVM. Umożliwia łatwe przełączanie między kompilatorami, co umożliwia programiście wybór narzędzia o najlepszej wydajności do danego zastosowania.

Opcje, które wcześniej były dostępne jedynie w drogich rozwiązaniach z najwyższej półki, teraz są oferowane w wersjach korzystniejszych ekonomicznie. Przykładem jest Middleware, przeniesione już do wersji Community oraz FuSa, której licencjonowanie jest teraz wspólne z edycją Professional.

FuSa w cenie – wersja Professional MDK v6

Arm FuSa Run-Time System (RTS) to certyfikowane środowisko uruchomieniowe, zaprojektowane z myślą o aplikacjach bazujących na mikrokontrolerach i spełniające wymogi norm bezpieczeństwa funkcjonalnego (między innymi ISO 26262 i IEC 61508). System jest zintegrowany z platformą Keil MDK i wspiera rozwój systemów wbudowanych dla kluczowych sektorów, w tym motoryzacji, medycyny oraz przemysłu. FuSa RTS oferuje szereg zaawansowanych funkcji, w tym ochronę pamięci, obsługę błędów oraz wsparcie architektur bezpieczeństwa.

Awaria systemów o krytycznym znaczeniu może wiązać się z zagrożeniem życia i zdrowia, a także wysokimi kosztami, związanymi m.in. z usuwaniem skutków awarii drogiej infrastruktury. Bezpieczeństwo funkcjonalne zatem odgrywa kluczową rolę w różnych sektorach i branżach współczesnej techniki. Wraz z rosnącą złożonością oprogramowania i zwiększaniem się wymogów dotyczących łączności, szczególnie w zakresie chmury, rośnie także liczba wyzwań związanych z zapewnieniem bezpiecznych metod funkcjonowania systemów. Aby zapobiegać awariom, niezbędne jest podjęcie trzech kroków:

  • korzystanie z oprogramowania zakwalifikowanego do systemów krytycznych,
  • używanie zweryfikowanego kompilatora

oraz

  • przestrzeganie rygorystycznych wytycznych dotyczących kodowania.

Wymogi te określane są przez standardy bezpieczeństwa, opisane między innymi w międzynarodowej normie IEC 61508. Dokumenty te definiują tzw. poziomy integralności bezpieczeństwa (SIL) – im wyższy poziom, tym większa jest oczekiwana niezawodność działania systemu.

Arm dostarcza najważniejsze komponenty systemów wbudowanych, które ze względu na docelowe zastosowanie wymagają zgodności z zasadami bezpieczeństwa funkcjonalnego, w tym:

  • kompilator Arm dla systemów o podwyższonym bezpieczeństwie,
  • bibliotekę FuSa C,
  • system uruchomieniowy bezpieczeństwa funkcjonalnego (FuSa RTS).

Edycje Keil MDK v6

Pakiet MDK v6 dostępny jest w trzech edycjach:

  • Community (bezpłatna do użytku niekomercyjnego),
  • Essential (obsługująca wszystkie rdzenie Cortex-M, do użytku komercyjnego),
  • Professional (z narzędziami AVH i FuSa, do użytku komercyjnego).

Każda z edycji oferuje różne funkcje oraz wsparcie dla narzędzi do debugowania i symulacji sprzętu.

Podsumowanie

Najnowsza wersja Arm Keil MDK v6 z czasem zastąpi wersję 5, która wyznaczyła kierunki rozwoju współczesnego oprogramowania wbudowanego. Nowy model licencjonowania eliminuje bariery sprzętowe, a licencje są przypisane do użytkowników, co zwiększa elastyczność ich pracy. Dodatkowo funkcje takie jak praca w chmurze i wsparcie dla systemów Linux i macOS czynią tę wersję wyjątkowo wszechstronną.

Mało tego, oprogramowanie FuSa, które wcześniej było dostępne tylko za wysoką opłatą, teraz stanowi część wersji Professional. Dzięki temu zaawansowane narzędzia deweloperskie są obecnie dostępne dla szerszej grupy użytkowników i to bez konieczności ponoszenia przez nich dodatkowych kosztów.

Grzegorz Cuber
Technical Manager Arm Keil
Computer Controls Sp. z o. o.

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2024
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik listopad 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje październik 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna listopad 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich listopad 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów