MLDesigner és una eina integrada de modelització i simulació per al disseny i l'anàlisi de sistemes integrats i en xarxa complexos. MLDesigner accelera el modelatge, la simulació i l'anàlisi d'esdeveniments discrets, temps discrets i sistemes de temps continu pel que fa a l'arquitectura, la funció i el rendiment. L'eina es basa en idees del "Projecte Ptolemeu", fet a la Universitat de Califòrnia Berkeley. MLDesigner està desenvolupat per MLDesign Technologies Inc. Palo Alto, CA, EUA en col·laboració amb Mission Level Design GmbH, Ilmenau, Alemanya.

Concepte Els models del sistema es componen en un editor gràfic. Aquests diagrames de blocs estructurats jeràrquicament s'emmagatzemen en MML (Model Markup Language), un dialecte de XML. Per tant, els models també es poden generar automàticament mitjançant transformacions XML a partir d'altres descripcions de models basats en XML, per exemple, models UML (mitjançant XML Model Interchance, XMI), BoNES, Cossap o OPD/OPM (Object Process Diagram/Modeling). Els models executables (sistemes) es componen de mòduls i primitius, que es connecten mitjançant ports d'entrada i sortida i/o atributs escrits (paràmetres, recursos, memòries, esdeveniments). Els mòduls poden estar compostos per altres mòduls i/o primitius. Les primitives són les unitats més petites dels models MLDesigner. El comportament de les primitives es codifica en ANSI C/C++ o es modela mitjançant màquines d'estats finits (FSM) i/o pot intercanviar informació amb altres simuladors, sistemes basats en Internet o maquinari. Tots els mòduls i primitives d'un model de simulació es poden instanciar dinàmicament (suport d'instàncies dinàmiques), permetent la simulació amb arquitectures canviants dinàmicament i optimització arquitectònica. MLDesigner inclou més de 2000 elements de biblioteca. Per a la modelització de sistemes, per tant, generalment no es requereix el desenvolupament de noves primitives.

Funcionament Les simulacions a MLDesigner es basen en models de càlcul (MOC) específics que depenen de la matèria, anomenats dominis. El tipus de domini determina com i en quin ordre es fa l'intercanvi d'estructures de dades entre els elements del model. S'inclouen els dominis de flux de dades sincrònics en temps discret (SDF) i dinàmics (DDF), temps continu i esdeveniments discrets. El nucli MLDesigner sincronitza automàticament els elements del model creats en diferents dominis dins d'un sol sistema. Per tant, MLDesigner admet el modelatge i la simulació de sistemes discrets de temps, continus i d'esdeveniments.

Dominis El Multi-Domain-Simulator MLDesigner admet, entre d'altres, els dominis següents:

SDF-Domain (flux de dades sincrònic) El domini SDF és un domini programat estàticament basat en dades a MLDesigner. S'utilitza per modelar sistemes discrets de temps, com per exemple processadors de senyals digitals, processadors de propòsit general o especial. En aquest domini, els elements del model intercanvien sincrònicament una quantitat fixa d'elements de dades, les anomenades partícules. "Programat estàticament" significa que l'ordre d'activació de les primitives es determina una vegada durant la fase d'arrencada sobre la base de taxes fixes de generació i consum dels elements de dades. Dins del domini SDF el temps no existeix. Un altre domini basat en dades és el domini DDF (Dynamic Data Flow). Mentre que en el domini SDF les tarifes de generació i consum són fixes, les tarifes en el domini DDF són variables, la qual cosa permet un canvi dinàmic del processament de dades.

Domini DE (esdeveniment discret) El domini d'esdeveniments discrets (DE) a MLDesigner proporciona un entorn general per a simulacions orientades a esdeveniments de sistemes com ara xarxes de cua, xarxes de comunicació i models d'alt nivell d'arquitectures d'ordinadors, sistemes organitzatius o sistemes de producció. En aquest domini, cada partícula representa un esdeveniment temporal que correspon a un canvi de l'estat del sistema. El propi intercanvi de dades representa un esdeveniment que apareix en una part del model i actua sobre un altre element del model. Els programadors del domini DE processen els esdeveniments en ordre cronològic. Com que l'interval de temps entre esdeveniments generalment no és fix, cada partícula té una marca de temps associada. Els segells de temps són generats pel bloc que produeix la partícula en funció dels segells de temps de les partícules d'entrada i la latència del bloc. Característiques com esdeveniments o recursos especials, que representen l'ús de quantitats i temps de càlcul del processador, fan que el modelatge sigui intuïtiu. L'ús d'elements de model preparats com el mecanisme de programació simplifica significativament el procés de modelització. El domini DE permet el modelatge d'una multitud de sistemes, com ara sistemes de bus, sistemes de controlador digital, arquitectura informàtica i sistema en xip (SoC), sistemes informàtics en xarxa o processos d'organització, producció o disseny/desenvolupament en xarxa.

Domini FSM (màquina d'estats finits) FSM és un concepte per modelar sistemes basats en esdeveniments amb autòmats d'estats finits, una abstracció on el comportament del sistema es representa mitjançant gràfics dirigits, un conjunt finit de condicions, anomenats estats, i transicions entre aquests estats. El FSM representa l'estat actual del sistema o d'una part del sistema. Un esdeveniment porta a una determinada acció i a un canvi d'estat. El domini FSM és un concepte alternatiu per modelar sistemes orientats a esdeveniments. Internament, els models FSM es mapegen en models DE. Amb el domini FSM, els sistemes es poden modelar fàcilment per un o diversos autòmats estatals. Alguns exemples són els autòmats de protocol en xarxes de dades, la lògica de control o la lògica general del programari. El domini MLDesigner FSM inclou un editor gràfic i un llenguatge d'acció per definir i gestionar estats, transicions i elements d'interfície. El model FSM es pot validar formalment i generar codi a partir d'aquest model validat.

Codi-Generació-Domini A més dels dominis descrits anteriorment, que es poden utilitzar per modelar i simular i, per tant, s'anomenen dominis de simulació, hi ha diversos dominis de generació de codi a MLDesigner. Per a un model creat en un dels dominis de simulació, és possible canviar el domini en un domini de generació de codi sempre que tots els elements del model utilitzats estiguin al domini de generació de codi inclòs. Aleshores és possible crear codi objecte en C o VHDL. A més d'utilitzar dominis de generació de codi MLDesigner, és possible generar directament codi ANSI-C, codi VHDL o codi SystemC per a models completament creats amb elements del domini DE i FSM.

Àmbits d'aplicació L'entorn de simulació multidomini es pot utilitzar en les primeres etapes de desenvolupament per validar les especificacions executables a nivell d'aplicació/missió i realitzar una optimització arquitectònica a nivell global del sistema. MLDesigner es pot utilitzar per dissenyar missions, sistemes, circuits integrats, electrònica reconfigurable i altres productes diversos. Es pot aplicar per a la modelització, simulació i optimització de sistemes d'automoció, aviònica i espacial, sistemes de comunicació per satèl·lit i processos d'organització, producció i desenvolupament.

Referències

Categoria:Programari científic