La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Metodología de diseño de HW/SW basada en la notación UML y SystemC Blanca Alicia Correa Montes Grupo de Microelectrónica y Control.

Presentaciones similares


Presentación del tema: "Metodología de diseño de HW/SW basada en la notación UML y SystemC Blanca Alicia Correa Montes Grupo de Microelectrónica y Control."— Transcripción de la presentación:

1 Metodología de diseño de HW/SW basada en la notación UML y SystemC Blanca Alicia Correa Montes 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: 1.Evaluar la notación UML para el modelado de Hardware/Software. 2.Analizar semánticamente las relaciones entre la notación UML y el código SystemC. 3.Definir una estrategia de traducción de modelos descritos en UML a código SystemC. 4.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 from Ground 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. Librería de C++ para el diseño y la simulación de sistemas HW/SW. Lenguaje de modelado Unificado (UML) Lenguaje de modelado Unificado (UML) SystemC Proceso de transformación

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

8 AVANCES

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

10 Estado del arte Perfiles de UML para sistemas HW/SW SysML (OMG) MARTE (THALES; INRIA; CEA) TUT (Tampere University of Technology, Finland; Nokia Research Center) UML for SoC (Fujitsu; IBM) UML 2.0 for SystemC (STMicroelectronics; University of Catania, Italia) Metodologías de transformación YAML (Sinha00) SLOOP (Zhu02) RT2SystemC (Tan04) Rhapsody (Nguyen04) UMLSC (Xi05) Using UML 2.0 for System Level Design of Real Time SoC Platforms for Stream Processing (Zhu05) A MDA based SoC Modeling Approach using UML and SystemC (Wang06)

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 Composite Structure Diagram Permite describir la conexión de las partes en de un sistema. Definición de puertos Definición de MódulosDefinición de Interfaces Definición de canales

15 Transformación de diagramas de estructura compuesta

16 Proceso de transformación UML-SystemC Modelo UML XMI Parser Template Engine Estructura de datosSystemC Template SystemC Skeleton Code SystemC Skeleton Code

17 XMI Modelo UML XMI Estándar para el intercambio de modelos entre herramientas de UML

18 Proceso de parsing Estructura de datos Parser Parser Estructura de datos

19 Template Engine Software o componente de software que combina uno o varios templates con un modelo de datos para producir como resultado uno o varios documentos. Estructura de datos SystemC Template Template Engine SystemC Skeleton Code SystemC Skeleton Code

20 Herramientas Eclipse: Integrated development environment (IDE) UML: Plugin para enlazar Enterprise Architect con Eclipse SystemC: Plugin para Eclipse Parser y template engine: Librerías de Python

21 Caso de estudio: Cifrador AES (Advanced Encryption 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 Elementos de SystemCElemento en UMLEstereotipo MóduloClasesc_module CanalClasesc_channel Puerto sc_port Interfaz sc_interface Conector sc_connector ProcesoMétodos de las clases sc_method sc_thread sc_cthread

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 La definición de restricciones en el perfil de UML para SystemC Propuesta: Plantear un proceso para la verificación de la consistencia en diseños UML 2.0 orientados al dominio de los SE Modelos adecuados para la generación de código SystemC requiere permite

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 Estrategia Se plantean diferentes tipos de configuraciones en los diagramas de clases y de estructura compuesta. Se hacen pruebas en SystemC para determinar si estas configuraciones generan errores al compilar el código. De acuerdo a esta experimentación se define un conjunto de reglas en lenguaje natural para el modelado de SE con los diagramas de clases y de estructura compuesta. Las reglas establecidas se expresan mediante OCL, el cual es un lenguaje formal para describir las restricciones en los modelos de UML. Las restricciones en OCL se chequean mediante una herramienta que chequee restricciones OCL. Se realimenta la información sobre el chequeo de las restricciones al modelo en UML. Se transforma el modelo UML a código SystemC. Se prueba que el código no genere errores en la compilación.

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

31 Error en el código generado en SystemC

32 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.

33 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.

34 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.

35 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.

36

37 Referencias [Sinha00] V. Sinha, F. Doucet, C. Siska, R. Gupta, S. Liao and A. Ghosh, YAML: a tool for hardware design visualization and capture, System Synthesis, [Zhu02] Q. Zhu, A. Matsuda, N. Kuwamura, T. Nakata and M. Shoji, "An object-oriented design process for System-on-Chip using UML", Proc. of the 15 th Int. Symposium on System Synthesis pp [Nguyen04] K. Nguyen, Z. Sun, P. Thiagarajan and W.-F. Wong, Model-driven SoC design via executable UML to SystemC. Proc. of RTSS pp [Xi05] C. Xi, L. JianHua, Z. ZuCheng, S. YaoHui. Modeling SystemC design in UML and automatic code generation. Proc. of ASP-DAC pp [Zhu05] Y. Zhu, Z. Sun, A. Maxiaguine and W. Wong. Using UML 2.0 for System Level Design of Real Time SoC Platforms for Stream Processing. Proc. of RTCSA. Vol pp [Wang06] Y. Wang, X. Zhou, B. Zhou, L. Liang and C. Peng. A MDA based SoC Modeling Approach using UML and SystemC. Proc. of CIT. Vol pp [UML] UML Resource Page. [SystemC] SystemC home page. [OMG] OMG home page. [OCL] OMG. UML 2.0 OCL Specification, ptc/ [AES] NIST, Federal Information Processing Standards 197, Advanced Encryption Standard, 2001.Disponible online: 97. pdf pdf. [SysML] SysML Partners web site. [MARTE] INRIA. The UML profile MARTE for Real-Time and Embedded Systems Design. Disponible online: [TUT] P. Kukkala, J. Riihimäki, M. Hännikäinen, T. D. Hämäläinen, K. Kronlöf. UML 2.0 Profile for Embedded System Design. DATE [UML for SoC] Fujitsu Limited, IBM, NEC. A UML Extension Profile for SoC. Draft RFC to 0MG, [UML 2.0 for SystemC] E. Riccobene, P. Scandurra, A. Rosti and S. Bocchio. A SoC Design Methodology Involving a UML 2.0 Profile for SystemC. DATE. Vol pp [EA] The Enterprise Architect tool: [Eclipse] Eclipse home page.


Descargar ppt "Metodología de diseño de HW/SW basada en la notación UML y SystemC Blanca Alicia Correa Montes Grupo de Microelectrónica y Control."

Presentaciones similares


Anuncios Google