1 / 35

Metodología de diseño de HW/SW basada en la notación UML y SystemC

Metodología de diseño de HW/SW basada en la notación UML y SystemC. Blanca Alicia Correa Montes blanca@microe.udea.edu.co Grupo de Microelectrónica y Control Facultad de Ingeniería Universidad de Antioquia. Contenido. Objetivos Revisión de conceptos Avances Proyecto de Maestría

sarai
Download Presentation

Metodología de diseño de HW/SW basada en la notación UML y SystemC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Metodología de diseño de HW/SW basada en la notación UML y SystemC Blanca Alicia Correa Montes blanca@microe.udea.edu.co Grupo de Microelectrónica y Control Facultad de Ingeniería Universidad de Antioquia

  2. Contenido Objetivos Revisión de conceptos Avances Proyecto de Maestría Conclusiones Trabajo futuro

  3. Objetivos del proyecto • General: Establecer criterios para una metodología de modelado HW/SW basada en la notación UML y SystemC. • Específicos: • Evaluar la notación UML para el modelado de Hardware/Software. • Analizar semánticamente las relaciones entre la notación UML y el código SystemC. • Definir una estrategia de traducción de modelos descritos en UML a código SystemC. • Realizar una prueba de los criterios establecidos para una metodología a partir del uso de modelos de hardware concretos.

  4. Revisión de conceptos generales

  5. Complejidad en el diseño de sistemas HW/SW en diferentes generaciones* *D.C Black and J. Donovan. SystemC fromGround Up. Boston. 2004

  6. Flujo de diseño con UML y SystemC Lenguaje gráfico de modelado para la especificación, visualización, construcción y documentación de sistemas. Lenguaje de modelado Unificado (UML) Proceso de transformación Librería de C++ para el diseño y la simulación de sistemas HW/SW. SystemC

  7. UML-SystemC Grupo en UML de estereotipos, restricciones y valores etiquetadosque adicionan información específica de dominio al UML. Perfil de UML para SystemC correspondencia • Módulos • Canales • Interfaces • Puertos • Procesos Elementos de SystemC

  8. Avances

  9. Estado del arte, estudio de UML y SystemC Selección de diagramas UML Avances Proceso de transformación UML-SystemC Elaboración de casos de estudio Perfil de UML para SystemC

  10. Estado del arte

  11. Herramienta de modelado para UML: Enterprise Architect EA ofrece soporte para los 13 diagramas de UML 2.1, mecanismos de extensión y plugins.

  12. Selección de diagramas UML • Diagrama de Clases • Permite describir la estructura de un sistema, y los atributos y las operaciones de las clases.

  13. Transformación de diagramas de clases

  14. Selección de diagramas UML Definición de puertos Definición de canales Definición de Módulos Definición de Interfaces • Composite Structure Diagram • Permite describir la conexión de las partes en de un sistema.

  15. Transformación de diagramas de estructura compuesta

  16. Proceso de transformación UML-SystemC Modelo UML XMI Parser Estructura de datos SystemC Template TemplateEngine SystemC SkeletonCode

  17. XMI Modelo UML <uml:Model xmi:type="uml:Model" name="EA_Model" visibility="public"> <packagedElementxmi:type="uml:Class" xmi:id="EAID_9C167732_1B1E_4716_8679_DBB61F5927DB" name="Counter" visibility="public"> <ownedOperationxmi:id="EAID_7B4C8906_2F20_4cf3_AFB3_11E8E3A9700E" name="do_inc" visibility="public" concurrency="sequential"/> </packagedElement> <thecustomprofile:sc_modulebase_Class="EAID_9C167732_1B1E_4716_8679_DBB61F5927DB"/> </uml:Model> XMI Estándar para el intercambio de modelos entre herramientas de UML

  18. Proceso de parsing <uml:Model xmi:type="uml:Model" name="EA_Model" visibility="public"> <packagedElementxmi:type="uml:Class" xmi:id="EAID_9C167732_1B1E_4716_8679_DBB61F5927DB" name="Counter" visibility="public"> <ownedOperationxmi:id="EAID_7B4C8906_2F20_4cf3_AFB3_11E8E3A9700E" name="do_inc" visibility="public" concurrency="sequential"/> </packagedElement> <thecustomprofile:sc_modulebase_Class="EAID_9C167732_1B1E_4716_8679_DBB61F5927DB"/> </uml:Model> Parser Estructura de datos Parser Estructura de datos

  19. TemplateEngine Estructura de datos SystemC Template Software o componente de software quecombinauno o variostemplates con un modelo de datosparaproducircomoresultadouno o variosdocumentos. TemplateEngine SystemC SkeletonCode

  20. Herramientas UML: Plugin para enlazar Enterprise Architect con Eclipse SystemC: Plugin para Eclipse Parser y templateengine: Librerías de Python Eclipse: Integrateddevelopmentenvironment (IDE)

  21. Caso de estudio: Cifrador AES (AdvancedEncryption Standard) AES: Especifica un algoritmo de encriptación empleado para proteger datos electrónicos. El algoritmo AES es un esquema de cifrado por bloques que puede encriptar y desencriptar información.

  22. Diagrama de clases

  23. Diagrama de estructura compuesta

  24. Perfil de UML para SystemC • Se deben definir los estereotipos y las restricciones: • Tabla de estereotipos

  25. Proyecto de Maestría

  26. Situación problemática Las transformaciones de UML a SystemC presentadas hasta el momento no incluyen la verificación de los diagramas descritos mediante perfiles de UML para SystemC. Debido a que UML es un lenguaje de naturaleza informal, los diseños pueden presentar problemas de inconsistencia.

  27. Situación problemática Propuesta: Plantear un proceso para la verificación de la consistencia en diseños UML 2.0 orientados al dominio de los SE requiere La definición de restricciones en el perfil de UML para SystemC permite Modelos adecuados para la generación de código SystemC

  28. Objetivos • General: Plantear un método de análisis de la consistencia en el diseño de Sistemas Embebidos (SE) basado en la notación UML 2.0, sus perfiles y SystemC. • Específicos: • Analizar los métodos y herramientas basadas en UML 2.0, sus perfiles y SystemC para el diseño de SE. • Plantear un proceso de verificación de la consistencia para el diseño de SE con la notación UML 2.0, sus perfiles y SystemC. • Validar el proceso de verificación mediante casos de estudio.

  29. Experimento: Problemas de modelado en el proceso de diseño con UML, sus perfiles y SystemC

  30. Error en el código generado en SystemC

  31. Lista de restricciones para la verificación de la consistencia • Módulos • Dos módulos no pueden tener el mismo nombre. • En un módulo no se pueden dejar puertos desconectados. • Puertos • Un puerto requiere la definición de una interfaz. • Un puerto de un módulo hijo contenido en un módulo padre no se puede conectar a un módulo externo directamente. Se debe conectar primero al puerto del módulo padre. • No se puede conectar un puerto directamente a un canal. Se debe conectar a través de una interfaz.

  32. Lista de restricciones para la verificación de la consistencia • Interfaces • En una interfaz sólo se pueden definir operaciones. Las interfaces no deben poseer atributos. • Las operaciones de una interfaz deben ser públicas. • No se puede realizar la conexión directa de una interfaz entre dos módulos sin definir los puertos en cada uno. • Una interfaz es requerida a través de puertos.

  33. Conclusiones • Las metodologías de diseño que emplean UML y SystemC requieren que se defina: • Un perfil que agregue estereotipos y restricciones a los diseños en UML para que presenten correspondencia con la notación SystemC. • Un método de transformación que procese la información de la notación gráfica UML y la convierta a código SystemC.

  34. Trabajo futuro Implementar el método de transformación propuesto mediante las herramientas sugeridas (EA, librerías de Python, plugins para Eclipse). Expresar las reglas para el chequeo de la consistencia en OCL (Object Constraint Languaje) y aplicarlas a los modelos en UML. Desarrollar más casos de estudio con el fin de validar la implementación del método de transformación.

  35. Gracias

More Related