Articulo de referencia

Diseñador de ML

MLDesigner es una herramienta integrada de modelado y simulación para el diseño y análisis de sistemas complejos embebidos y en red . [ 1 ] MLDesigner acelera el modelado, la si...

MLDesigner es una herramienta integrada de modelado y simulación para el diseño y análisis de sistemas complejos embebidos y en red . [ 1 ] MLDesigner acelera el modelado, la simulación y el análisis de sistemas de eventos discretos, tiempo discreto y tiempo continuo en lo que respecta a arquitectura, función y rendimiento. La herramienta se basa en las ideas del " Proyecto Ptolomeo ", realizado en la Universidad de California, Berkeley . MLDesigner es desarrollado por MLDesign Technologies Inc., Palo Alto, CA, EE. UU., en colaboración con Mission Level Design GmbH, Ilmenau, Alemania.

Concepto

Los modelos de sistema se componen en un editor gráfico. Estos diagramas de bloques con estructura jerárquica se almacenan en MML (Model Markup Language ), un dialecto de XML . Por lo tanto, los modelos también pueden generarse automáticamente mediante transformaciones XML a partir de descripciones de otros modelos basados ​​en XML, como UML (a través de XML Model Interchange, XMI), BoNES, Cossap o modelos OPD/OPM (Object Process Diagram/Modeling). Los modelos ejecutables (sistemas) se componen de módulos y primitivas, que se conectan mediante puertos de entrada y salida tipados y/o atributos (parámetros, recursos, memorias, eventos). Los módulos pueden estar compuestos por otros módulos y/o primitivas. Las primitivas son las unidades más pequeñas en los modelos de MLDesigner. El comportamiento de las primitivas se codifica en ANSI C/ C++ o se modela mediante máquinas de estados finitos (FSM) y/o puede intercambiar información con otros simuladores, sistemas basados ​​en Internet o hardware. Todos los módulos y primitivos de un modelo de simulación pueden instanciarse dinámicamente (compatibilidad con instancias dinámicas), lo que permite simular con arquitecturas que cambian dinámicamente y optimizar la arquitectura. MLDesigner incluye más de 2000 elementos de biblioteca para el modelado de sistemas, por lo que generalmente no se requiere el desarrollo de nuevos primitivos. [ 1 ]

Operación

Las simulaciones en MLDesigner se basan en modelos de computación (MOC) específicos, dependientes de la materia, denominados dominios. El tipo de dominio determina cómo y en qué orden se realiza el intercambio de estructuras de datos entre los elementos del modelo. Se incluyen dominios de flujo de datos síncrono (SDF) y dinámico (DDF) en tiempo discreto, tiempo continuo y eventos discretos. El núcleo de MLDesigner sincroniza automáticamente los elementos del modelo creados en diferentes dominios dentro de un mismo sistema. Por lo tanto, MLDesigner admite el modelado y la simulación de sistemas discretos en tiempo, continuos en tiempo y de eventos discretos.

Dominios

El simulador multidominio MLDesigner admite, entre otros, los siguientes dominios:

Dominio SDF (Flujo de datos síncrono)

El dominio SDF es un dominio de programación estática y basado en datos en MLDesigner. Se utiliza para modelar sistemas discretos en el tiempo, como por ejemplo el procesamiento de señales digitales y los procesadores de propósito general o especial. En este modelo de dominio , los elementos intercambian síncronamente una cantidad fija de elementos de datos, denominados partículas. La "programación estática" implica que el orden de activación de las primitivas se determina una sola vez durante la fase de inicio, basándose en tasas fijas de generación y consumo de los elementos de datos. Dentro del dominio SDF, el tiempo no existe. Otro dominio basado en datos es el dominio DDF (Dynamic Data Flow). Mientras que en el dominio SDF las tasas de generación y consumo son fijas, en el dominio DDF son variables, lo que permite un cambio dinámico en el procesamiento de datos.

DE-Dominio (Evento Discreto)

El dominio de eventos discretos (DE) en MLDesigner proporciona un entorno general para simulaciones orientadas a eventos de sistemas como redes de colas, redes de comunicación y modelos de alto nivel de arquitecturas informáticas, sistemas organizativos o sistemas de producción. En este dominio, cada partícula representa un evento temporal que corresponde a un cambio en el estado del sistema. El intercambio de datos en sí representa un evento que aparece en una parte del modelo y actúa sobre otro elemento del mismo. Los planificadores del dominio DE procesan los eventos en orden cronológico. Dado que el intervalo de tiempo entre eventos generalmente no es fijo, cada partícula tiene una marca de tiempo asociada. Las marcas de tiempo se generan mediante el bloque que produce la partícula, basándose en las marcas de tiempo de las partículas de entrada y la latencia del bloque. Funcionalidades como eventos especiales o recursos, que representan el uso de cantidades y tiempos de computación del procesador, hacen que el modelado sea intuitivo. El uso de elementos de modelo predefinidos, como el mecanismo de planificación, simplifica significativamente el proceso de modelado. El dominio DE permite modelar una multitud de sistemas, como sistemas de bus , sistemas de controladores digitales, arquitectura de computadoras y sistemas en un chip (SoC), sistemas informáticos en red o procesos organizativos, de producción o de diseño/desarrollo en red. [ 1 ]

FSM-Dominio (Máquina de Estados Finitos)

FSM es un concepto para modelar sistemas basados ​​en eventos con autómatas de estados finitos, una abstracción donde el comportamiento del sistema se representa mediante grafos dirigidos, un conjunto finito de condiciones, llamadas estados, y transiciones entre estos estados. El FSM representa el estado actual del sistema o de una parte del mismo. Un evento conduce a una acción determinada y a un cambio de estado. El dominio FSM es un concepto alternativo para modelar sistemas orientados a eventos. Internamente, los modelos FSM se mapean en modelos DE. Con el dominio FSM, los sistemas se pueden modelar fácilmente mediante uno o varios autómatas de estados. Ejemplos de ello son los autómatas de protocolo en redes de datos, la lógica de control o la lógica general del software. El dominio FSM de MLDesigner incluye un editor gráfico y un lenguaje de acciones para definir y gestionar estados, transiciones y elementos de interfaz. El modelo FSM se puede validar formalmente y generar código a partir de este modelo validado. [ 2 ]

Dominio CTDE (Tiempo Continuo/Evento Discreto)

El dominio CTDE es un dominio temporal adicional para describir sistemas de tiempo continuo, como dispositivos analógicos y de señal mixta . Los dos modelos de computación distintos, tiempo continuo y eventos discretos, se combinan en un solo dominio para permitir modelar sistemas que incluyen eventos temporales y de estado, como la histéresis. Las conexiones entre puertos de diferentes tipos se posibilitan insertando una primitiva para convertir la señal. La descripción de sistemas dentro del dominio CTDE corresponde a la descripción con ecuaciones diferenciales. Las derivadas de estado son entradas a bloques integradores, mientras que la ecuación derivada y las funciones de salida se modelan mediante redes de primitivas que realizan operaciones aritméticas. El dominio CTDE incluye múltiples algoritmos de integración. MLDesigner contiene varios dominios más, por ejemplo, el dominio HOF (High Order Function), que permite un modelado procedimental de sistemas.

El dominio BDF (Flujo de Datos Booleano) puede considerarse una generalización del dominio SDF. Amplía el concepto de dominios orientados al flujo de datos al permitir activar o desactivar partes del modelo según la lógica combinatoria.

Dominio de generación de código

Además de los dominios descritos anteriormente, que se pueden usar para modelar y simular (y por lo tanto se denominan dominios de simulación), MLDesigner cuenta con varios dominios de generación de código. Para un modelo creado en un dominio de simulación, es posible cambiar a un dominio de generación de código, siempre que todos los elementos del modelo utilizados estén incluidos en dicho dominio. De esta forma, se puede generar código objeto en C o VHDL . Además de usar los dominios de generación de código de MLDesigner, es posible generar directamente código ANSI-C, VHDL o SystemC para modelos creados completamente con elementos de los dominios DE y FSM.

Áreas de aplicación

El entorno de simulación multidominio puede utilizarse en las primeras etapas de desarrollo para la validación de especificaciones ejecutables a nivel de aplicación/misión y para realizar la optimización arquitectónica a nivel de sistema general. MLDesigner puede utilizarse para diseñar misiones, sistemas, circuitos integrados, electrónica reconfigurable y otros productos diversos. [ 1 ] Puede aplicarse al modelado, simulación y optimización de sistemas automotrices, de aviónica y espaciales, [ 3 ] sistemas de comunicación por satélite y procesos organizativos, de producción y de desarrollo. [ 2 ] [ 4 ]

Véase también

Referencias

  1. 1 2 3 4 Schorcht, G.; Troxel, I.; Farhangian, K.; Unger, P.; Zinn, D.; Mick, CK; George, A.; Salzwedel, H. (2003). "Modelado de simulación a nivel de sistema con MLDesigner". 11.º Simposio Internacional IEEE/ACM sobre Modelado, Análisis y Simulación de Sistemas de Telecomunicaciones Informáticas, 2003. MASCOTS 2003. págs. 207–212 . doi : 10.1109/MASCOT.2003.1240659 . ISBN  0-7695-2039-1.
  2. 1 2 Salzwedel, H. (2004). "Diseño de aviónica a nivel de misión". XXIII Conferencia de Sistemas de Aviónica Digital (IEEE Cat. No. 04CH37576) . Vol. 2. págs. 9.D.2–91. Bibcode : 2004dasc....2...70S . doi : 10.1109/DASC.2004.1390790 . ISBN   0-7803-8539-X.
  3. Salzwedel, H.; Fischer, N.; Schorcht, G. (2009). "Trasladando la automatización del diseño de sistemas en red a las primeras etapas del diseño a nivel de vehículo". Congreso Mundial SAE 2009. 20-23 de abril de 2009. Detroit, Michigan: SAE International.
  4. Salzwedel, H.; Richter, F.; Kühn, M. (2007). "Modelado y simulación estandarizados de procesos hospitalarios: optimización de un centro de tratamiento oncológico". Actas de la Conferencia Internacional sobre Simulación en Ciencias de la Salud (HSS 2007). 14-18 de enero de 2007. San Diego, California.
  • Página web del desarrollador MLDesign Technologies
  • Página web del Proyecto Ptolomeo
  • Manual de MLDesigner
  • Presentación de MLDesigner