MLDesigner
Deweloperzy | MLDesign Technologies, Inc, Palo Alto, Kalifornia, USA |
---|---|
Wersja stabilna | 3.1 / 2 grudnia 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ż
- G. Schorcht, P. Unger, A. George, I. Troxel, D. Zinn, H. Salzwedel, K. Farhangian, CK Mick: „System-Level Simulation Modeling with MLDesigner”, IEEE / ACM MASCOT 2003 - 11th ACM / Międzynarodowe Sympozjum IEEE na temat modelowania, analizy i symulacji systemów komputerowych i telekomunikacyjnych, 12.-15. Październik 2003, Orlando, Floryda, USA
- G. Schorchta. Entwurf integrierter Mobilkommunikationssysteme auf Missionsebene. Logos-Verlag, 2000, ISBN 3-89722-462-3
- H. Salzwedel: „Projektowanie awioniki na poziomie misji”, AIAA-IEEE DASC 04 - 23. konferencja cyfrowych systemów awioniki 2004, 24.-28. Październik 2004, Salt Lake City, Utah, USA.
- H. Salzwedel, F. Richter, M. Kühn: "Standardowe modelowanie i symulacja procesów szpitalnych - optymalizacja Centrum Leczenia Nowotworów", Międzynarodowa Konferencja Symulacji Nauk o Zdrowiu, HSS '07, 14.-18. Styczeń 2007, San Diego, Kalifornia, USA
- Horst Salzwedel, Nils Fischer, Gunar Schorcht: „Moving Design Automation Of Networked Systems To Early Vehicle Level Design Stages”, Światowy Kongres SAE 2009, 20–23 kwietnia 2009 r., Detroit, Michigan, USA
Linki zewnętrzne
- Strona internetowa Developer MLDesign Technologies
- Strona internetowa projektu Ptolemeusz
- Podręcznik MLDesignera
- Prezentacja MLDesignera