Przegląd oraz analiza funkcjonalności programatorów rdzeni ARM

Na rynku systemów wbudowanych istnieje obecnie co najmniej kilka rozwiązań służących do komunikacji pomiędzy komputerami PC a mikroprocesorami. Urządzenia te, zwane adapterami, debuggerami lub programatorami, służą przede wszystkim do wgrywania kodu w języku zrozumiałym dla mikroprocesora, jak również do analizy jego pracy. Debuggery stanowią element łączący pomiędzy komputerem PC a sprzętem docelowym.

Dodaj do ulubionych źródeł w Google
Posłuchaj
00:00

Urządzenia komunikują się ze sobą za pomocą interfejsu USB po stronie PC, a JTAG lub SWD po stronie docelowego układu. Komunikacja ta umożliwia z jednej strony wgranie programu, z drugiej analizę i kontrolę kodu pod względem występujących błędów oraz jego optymalizację. Najbardziej wszechstronnymi i uniwersalnymi urządzeniami dedykowanymi do największej grupy odbiorców są urządzenia typu ULINK firmy ARM.

W ofercie firmy ARM możemy wyróżnić kilka typów programatorów/debuggerów serii ULINK, znajdujących zastosowanie w obsłudze rdzeni ARM różnych producentów. W zależności od oczekiwanej funkcjonalności oraz procesorów, z którymi będą współpracowały, należy dokonać wyboru spośród dostępnego asortymentu.

W artykule przedstawiona zostanie analiza funkcjonalności urządzeń ULINK wraz z ich przeznaczeniem, mająca na celu wspomóc użytkownika przy wyborze odpowiedniego rozwiązania.

Pod względem funkcjonalności urządzenia ULINK mają wiele cech, pozwalających deweloperom na bardziej kreatywną i wydajną pracę. Wszystkie umożliwiają wgranie programów do sprzętu docelowego opartego na technologii ARM.

Poza tym pozwalają na analizę zawartości pamięci i rejestrów oraz testowanie programów w czasie rzeczywistym. Potrafią także zaprogramować pamięć Flash. Przy wyborze ULINK-a warto jednak zapoznać się z różnicami pomiędzy poszczególnymi modelami, mając na uwadze dodatkową funkcjonalność, interfejsy czy prędkości wymiany danych (patrz tabela).

ULINK2 i ULINK Pro

Tabela porównawcza debuggerów ULINK

ULINK 2 używa połączenia USB do komputera PC, natomiast drugą stronę interfejsu stanowią łącza JTAG, Cortex i OCDS. ULINK 2 bardzo dobrze współpracuje z Corteksami serii M poprzez SWD (Serial Wire Debug) oraz SWV (Serial Wire Viewer).

Poprzez interfejs JTAG natomiast współpracuje z ARM7 i ARM9 (Real Time Agent). Jego słabą stroną jest prędkość pracy i wymiany danych. Debuggery ULINK 2 mają jednak wiele zalet wynikających ze współpracy z popularnymi rdzeniami mikrokontrolerów Cortex M, a także zapewniają obsługę rdzeni serii 8051 oraz C166.

Podsumowując, ULINK 2 jest urządzeniem, które może być doskonałym wyborem dla programistów, którzy korzystają z szerszej gamy procesorów, również starszej technologii. W połączeniu z niewysoką ceną zakupu ULINK2 może stać się tańszą alternatywą dla wersji Pro, która ma dodatkowo złożone funkcje analizy.

ULINKpro ma funkcje debugowania i śledzenia przy użyciu interfejsu USB PC, a z systemem docelowym poprzez JTAG, Cortex Debug lub Cortex Debug + złącze ETM. Wyróżnia się na tle pozostałych urządzeń tym, że obsługuje mechanizmy CoreSight, w tym blok ETM oraz realizuje streaming trace, czyli "ślad strumieniowy".

Dzięki unikalnym możliwościom ULINKpro w zakresie przesyłania strumieniowego, zapewnione zostały zaawansowane funkcje analityczne, w tym kompletne informacje o wykonaniu programu oraz weryfikacja aplikacji.

Funkcja śledzenia strumieniowego umożliwia rejestrację danych, które zapisywane są bezpośrednio na dysku twardym komputera z dużą prędkością (do 800 Mb/s). Ograniczenia związane są tylko z wielkością dysku w komputerze z programem μVision MDK.

Śledzenie instrukcji przesyłania strumieniowego możliwe jest do realizacji debuggerem ULINKpro, tylko gdy urządzenie docelowe ma ETM (Embedded Trace Macrocell). Z kolei analiza wydajności za pomocą programu ProfiExecution i Performance Analyzer umożliwia identyfikację wąskich gardeł programów oraz optymalizację aplikacji.

Funkcja ULINKpro, jaką jest śledzenie instrukcji, umożliwia MDK wykonywanie pełnego zabezpieczenia kodu programu. Pokrycie kodu (code coverage) identyfikuje wykonanie całego programu, instrukcja po instrukcji, zapewniając dokładne testowanie aplikacji. Takie dokładne testowanie programu jest niezbędnym warunkiem do weryfikacji i certyfikacji oprogramowania.

Podsumowując, ULINKpro jest profesjonalnym narzędziem umożliwiającym obsługę zawansowanych funkcji analizy, co pozwala w pełni wykorzystać mechanizmy debuggera technologii CoreSight oraz oprogramowania MDK ARM Keil. ULINKpro przeznaczony jest do pracy z rdzeniami Cortex-M oraz ARM7 i ARM9.

W ofercie firmy ARM występuje także ULINKproD, który znalazł głównie zastosowanie w aplikacjach DS-5 i stanowi tańsze rozwiązanie w stosunku do wersji PRO, gdyż nie został wyposażony w funkcjonalność ETM trace.

Adapter izolujący to opcjonalne akcesorium, które zapewnia izolację elektryczną między systemem docelowym a urządzeniem do debugowania i śledzenia ULINKpro. Izolacja elektryczna jest niezbędna podczas pracy z systemami, które mogą generować impulsy wysokiego napięcia (na przykład układy sterowania silnikiem) lub gdy nie ma wspólnego uziemienia. Adapter wykorzystuje technologię cyfrowej izolacji sygnału, która umożliwia obsługę szybkiego debugowania i śledzenia, a także obsługuje szeroki zakres napięcia docelowego.

Za miesiąc w drugiej części artykułu przedstawione zostaną ULINKplus oraz DSTREAM.

Grzegorz Cuber FAE
Computer Controls Sp. z o.o.

Więcej na www.ccontrols.pl
Chcesz częściej widzieć nasze artykuły w Google? Dodaj ElektronikaB2B do ulubionych źródeł
Powiązane treści
We Francji darmowe ładowanie pojazdów elektrycznych do Dnia bez Samochodu
Przegląd oraz analiza funkcjonalności programatorów rdzeni ARM, cz. 2
ARM przejmuje Stream Technologies, by zapewnić lepszą łączność urządzeń IoT
WB Electronics realizuje zamówienie na amunicję krążącą Warmate
ARM zezwala na indywidualne modyfikacje listy instrukcji rdzenia Cortex-M na potrzeby klientów
W przemyśle półprzewodnikowym nastał czas harmonijnego wzrostu
Bezpieczeństwo funkcjonalne - korzyści zapewniane przez ARM
Zobacz więcej w kategorii: Technika
Elektromechanika
Miniaturyzacja w przekaźnikach - odpowiedź na rosnące ceny surowców
Projektowanie i badania
Wydajne projektowanie elektroniki mocy dzięki InfineonSPICE i IPOSIM
Mikrokontrolery i IoT
Czy każde urządzenie AI musi być połączone z chmurą?
Zasilanie
Chroń instalacje WN za pomocą bezpiecznika E-Fuse na bazie SiC
Mikrokontrolery i IoT
Układy analogowe od 3PEAK
Projektowanie i badania
Badania Kompatybilności Elektromagnetycznej w Laboratoriach OBR CTM SAC 10 - normy ogólne i obronne oraz nowe metody EMC dla urządzeń trójfazowych, medycznych i laboratoryjnych
Zobacz więcej z tagiem: Komponenty
Gospodarka
Altera przygotowuje się do IPO. Może pozyskać ponad 2 mld dolarów
Gospodarka
Qualcomm i Amazon zawierają umowę na dostawy chipów AI za nawet 60 mld dolarów
Gospodarka
Infineon przejmuje C2i Semiconductors. Cel: zasilanie centrów danych AI

Kompatybilność elektromagnetyczna

Historia EMC (electromagnetic compatibility) zaczyna się od potrzeby opanowania problemu: co zrobić, gdy jedno urządzenie zaczyna zakłócać pracę drugiego. Miała swój początek wraz z pojawianiem się coraz większej liczby urządzeń elektrycznych wykonujących bardziej złożone zadania. Początkowo problem ten miał charakter niemal przypadkowy, a przybrał rolę istotnego wyzwania technicznego wymagającego systematycznego podejścia. Aktualnie jest to obowiązkowy punkt w produkcji urządzeń elektrycznych oraz elektronicznych.
Zapytania ofertowe
Unikalny branżowy system komunikacji B2B Znajdź produkty i usługi, których potrzebujesz Katalog ponad 7000 firm i 60 tys. produktów