MLDesigner

MLDesigner
Deweloperzy MLDesign Technologies, Inc, Palo Alto, Kalifornia, USA
Wersja stabilna
3.1 / 2 grudnia 2015 ( 02.12.2015 )
System operacyjny Linuks , Microsoft Windows
Typ Symulacja , Modelowanie
Licencja prawnie zastrzeżony
Strona internetowa www.mldesigner.com

MLDesigner to zintegrowane narzędzie do modelowania i symulacji do projektowania i analizy złożonych systemów wbudowanych i sieciowych . MLDesigner przyspiesza modelowanie, symulację i analizę systemów zdarzeń dyskretnych, czasu dyskretnego i czasu ciągłego pod względem architektury, funkcji i wydajności. Narzędzia opierają się na pomysłach „Projektu Ptolemeusza”, wykonanych na Uniwersytecie Berkeley w Kalifornii. MLDesigner jest rozwijany przez MLDesign Technologies Inc. Palo Alto, Kalifornia, USA we współpracy z Mission Level Design GmbH, Ilmenau, Niemcy.

Pojęcie

Modele systemu składają się w edytorze graficznym. Te hierarchicznie ustrukturyzowane schematy blokowe są przechowywane w MML (Model Markup Language), dialekcie języka XML . Modele mogą zatem być generowane automatycznie przez transformacje XML z innych opisów modeli opartych na XML, np. UML (poprzez XML Model Interchance, XMI), modele BoNES, Cossap lub OPD/OPM (Object Process Diagram/Modeling). Wykonywalne modele (systemy) składają się z modułów i prymitywów, które są połączone za pomocą wpisanych portów wejściowych i wyjściowych i/lub atrybutów (parametry, zasoby, pamięci, zdarzenia). Moduły mogą składać się z innych modułów i/lub prymitywów. Prymitywy to najmniejsze jednostki w modelach MLDesigner. Zachowanie prymitywów jest albo kodowane w ANSI C/ C++ , albo modelowane przy użyciu maszyn skończonych (FSM) i/lub może wymieniać informacje z innymi symulatorami, systemami internetowymi lub sprzętem. Wszystkie moduły i prymitywy modelu symulacyjnego mogą być dynamicznie tworzone (obsługa dynamicznych instancji), umożliwiając symulację z dynamicznie zmieniającymi się architekturami i optymalizacją architektury. MLDesigner zawiera ponad 2000 elementów bibliotecznych. W przypadku modelowania systemów tworzenie nowych prymitywów nie jest zatem na ogół wymagane.

Operacja

Symulacje w MLDesigner oparte są na specyficznych, zależnych od materii modelach obliczeniowych (MOC), zwanych domenami. Typ domeny określa, w jaki sposób iw jakiej kolejności odbywa się wymiana struktur danych pomiędzy elementami modelu. Obejmuje to synchroniczny przepływ danych w czasie dyskretnym (SDF) i dynamiczny (DDF), czas ciągły i domeny zdarzeń dyskretnych. Jądro MLDesigner automatycznie synchronizuje elementy modelu utworzone w różnych domenach w ramach jednego systemu. Dlatego MLDesigner obsługuje modelowanie i symulację systemów dyskretnych w czasie, ciągłych w czasie i dyskretnych zdarzeń.

Domeny

Multi-Domain-Simulator MLDesigner obsługuje między innymi następujące domeny:

Domena SDF (synchroniczny przepływ danych)

Domena SDF jest sterowaną danymi, statycznie zaplanowaną domeną w MLDesigner. Służy do modelowania układów dyskretnych w czasie, takich jak np. cyfrowe przetwarzanie sygnałów, procesory ogólnego lub specjalnego przeznaczenia. W tej domenie elementy modelu wymieniają synchronicznie ustaloną ilość elementów danych, tzw. cząstek. „Statycznie zaplanowane” oznacza, że ​​kolejność odpalania prymitywów jest ustalana raz podczas fazy początkowej na podstawie ustalonych szybkości generowania i zużywania elementów danych. W domenie SDF czas nie istnieje. Inną domeną sterowaną danymi jest domena DDF (Dynamic Data Flow). Podczas gdy w domenie SDF stawki generowania i zużywania są stałe, w domenie DDF stawki są zmienne, co pozwala na dynamiczną zmianę przetwarzania danych.

Domena DE (zdarzenie dyskretne)

Domena zdarzeń dyskretnych (DE) w MLDesigner zapewnia ogólne środowisko dla zorientowanych na zdarzenia symulacji systemów, takich jak sieci kolejek, sieci komunikacyjne i wysokopoziomowe modele architektur komputerów, systemów organizacyjnych lub systemów produkcyjnych. W tej dziedzinie każda cząsteczka reprezentuje zdarzenie czasowe, które odpowiada zmianie stanu systemu. Sama wymiana danych reprezentuje zdarzenie pojawiające się w jednej części modelu i oddziałujące na inny element modelu. Harmonogramy domeny DE przetwarzają zdarzenia w porządku chronologicznym. Ponieważ odstęp czasowy między zdarzeniami na ogół nie jest ustalony, każda cząsteczka ma powiązany znacznik czasu. Znaczniki czasu są generowane przez blok wytwarzający cząstkę na podstawie znaczników czasu cząstek wejściowych i latencji bloku. Funkcje, takie jak specjalne zdarzenia lub zasoby, które odzwierciedlają wykorzystanie ilości i czasu obliczeń procesora, sprawiają, że modelowanie jest intuicyjne. Wykorzystanie gotowych elementów modelu, takich jak mechanizm szeregowania, znacznie upraszcza proces modelowania. Domena DE umożliwia modelowanie wielu systemów, takich jak systemy magistralowe , systemy kontrolerów cyfrowych, architektura komputerów i układy scalone (SoC), sieciowe systemy komputerowe lub sieciowe procesy organizacyjne, produkcyjne lub projektowe/rozwojowe.

Dziedzina FSM (maszyna skończona)

FSM to koncepcja modelowania systemów opartych na zdarzeniach z automatami o skończonych stanach, abstrakcją, w której zachowanie systemu jest reprezentowane przez ukierunkowane grafy, skończony zestaw warunków, zwanych stanami, oraz przejścia między tymi stanami. FSM reprezentuje bieżący stan systemu lub części systemu. Zdarzenie prowadzi do określonej akcji i do zmiany stanu. Domena FSM jest koncepcją alternatywną do modelowania systemów zorientowanych na zdarzenia. Wewnętrzne modele FSM są mapowane na modele DE. Systemy domenowe FSM mogą być łatwo modelowane przez jeden lub wiele automatów stanowych. Przykładami są automaty protokołów w sieciach danych, logika sterowania lub ogólna logika oprogramowania. Domena MLDesigner FSM zawiera edytor graficzny i język akcji do definiowania i zarządzania stanami, przejściami i elementami interfejsu. Model FSM można formalnie zweryfikować i wygenerować kod na podstawie tego zweryfikowanego modelu.

CTDE-Domain (czas ciągły/zdarzenie dyskretne)

Domena CTDE jest kolejną dziedziną zorientowaną na czas do opisywania systemów czasu ciągłego, jako urządzeń analogowych i sygnałów mieszanych . Dwa różne modele obliczeń, czas ciągły i zdarzenie dyskretne, są połączone w jedną dziedzinę, aby umożliwić modelowanie systemów obejmujących zdarzenia czasowe i zdarzenia stanowe, takie jak histereza. Połączenia między portami różnych typów są możliwe dzięki wstawieniu prymitywu do konwersji sygnału. Opis układów w dziedzinie CTDE odpowiada opisowi równań różniczkowych. Pochodne stanu są danymi wejściowymi do bloków integratora, podczas gdy równanie pochodne i funkcje wyjściowe są modelowane przez sieci prymitywów, które wykonują operacje arytmetyczne. Domena CTDE zawiera wiele algorytmów integracji. MLDesigner zawiera jeszcze kilka domen, na przykład domenę HOF (High Order Function), która umożliwia proceduralne modelowanie systemów.

Domena BDF (Boolean Data Flow) może być traktowana jako uogólnienie domeny SDF. Rozszerza koncepcję domen zorientowanych na przepływ danych o możliwość aktywacji lub dezaktywacji części modelu zgodnie z logiką kombinatoryczną.

Domena generowania kodu

Oprócz wyżej opisanych domen, które mogą być używane do modelowania i symulacji i dlatego są nazywane domenami symulacji, istnieje kilka domen generowania kodu w MLDesigner. Dla modelu utworzonego w jednej z dziedzin symulacji możliwa jest zmiana domeny w domenie generowania kodu, o ile wszystkie użyte elementy modelu znajdują się w domenie generowania kodu. Możliwe jest wtedy tworzenie kodu obiektowego w C lub VHDL . Oprócz korzystania z domen generowania kodu MLDesigner, możliwe jest bezpośrednie generowanie kodu ANSI-C, VHDL -Code lub SystemC -Kod dla modeli całkowicie utworzonych z elementami domeny DE i FSM.

Obszary zastosowania

Wielodomenowe środowisko symulacyjne może być wykorzystywane na wczesnych etapach rozwoju do walidacji wykonywalnych specyfikacji na poziomie aplikacji/misji i przeprowadzania optymalizacji architektury na poziomie całego systemu. MLDesigner może być używany do projektowania misji, systemów, układów scalonych, rekonfigurowalnej elektroniki i różnych innych produktów. Może być stosowany do modelowania, symulacji i optymalizacji systemów motoryzacyjnych, lotniczych i kosmicznych, systemów komunikacji satelitarnej oraz procesów organizacyjnych, produkcyjnych i rozwojowych.

Zobacz też

Linki zewnętrzne