Workshop2_ordenado

35
Metodología de diseño de HW/SW Metodología de diseño de HW/SW basada en la notación UML y basada en la notación UML y SystemC SystemC Blanca Alicia Correa Monte [email protected] Grupo de Microelectrónica y Control Facultad de Ingeniería Universidad de Antiouia

Transcript of Workshop2_ordenado

  • Metodologa de diseo de HW/SW basada en la notacin UML y SystemCBlanca Alicia Correa [email protected] de Microelectrnica y ControlFacultad de IngenieraUniversidad de Antioquia

  • ContenidoObjetivosRevisin de conceptosAvancesProyecto de MaestraConclusionesTrabajo futuro

  • Objetivos del proyectoGeneral: Establecer criterios para una metodologa de modelado HW/SW basada en la notacin UML y SystemC.Especficos:Evaluar la notacin UML para el modelado de Hardware/Software.Analizar semnticamente las relaciones entre la notacin UML y el cdigo SystemC.Definir una estrategia de traduccin de modelos descritos en UML a cdigo SystemC.Realizar una prueba de los criterios establecidos para una metodologa a partir del uso de modelos de hardware concretos.

  • REVISIN DE CONCEPTOS GENERALES

  • Complejidad en el diseo de sistemas HW/SW en diferentes generaciones**D.C Black and J. Donovan. SystemC from Ground Up. Boston. 2004

  • Flujo de diseo con UML y SystemC

  • UML-SystemCPerfil de UML para SystemCElementos de SystemCMdulosCanalesInterfacesPuertosProcesosGrupo en UML de estereotipos,restricciones y valoresetiquetados queadicionan informacinespecfica de dominioal UML.correspondencia

    Blanca - All of the above experiences based on the use ofC/C++/SystemC languages have in common the use ofUML stereotypes for SystemC constructs, but it seems thatthese are not included in an appropriate and standardizedlanguage of something like UML profile for SystemC.

  • AVANCES

  • Estado del arte

    Perfiles de UML para sistemas HW/SWSysML (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)

    Metodologas de transformacinYAML (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)

  • Herramienta de modelado para UML: Enterprise ArchitectEA ofrece soporte para los 13 diagramas de UML 2.1, mecanismos de extensin y plugins.

  • Seleccin de diagramas UMLDiagrama de ClasesPermite describir la estructura de un sistema, y los atributos y las operaciones de las clases.

  • Transformacin de diagramas de clases

  • Seleccin de diagramas UMLComposite Structure DiagramPermite describir la conexin de las partes en de un sistema.

    Blanca - Esta grfica queda mejor despus de explicar los Perfiles de UML?

  • Transformacin de diagramas de estructura compuesta

  • Proceso de transformacin UML-SystemC

  • XMI

    Estndar para el intercambio de modelos entre herramientas de UML

  • Proceso de parsing

  • Template EngineSoftware o componente de software que combina uno o varios templates con un modelo de datos para producir como resultado uno o varios documentos.

  • Herramientas Eclipse: Integrated development environment (IDE)UML: Plugin para enlazarEnterprise Architect con EclipseSystemC: Plugin para EclipseParser y template engine:Libreras de Python

  • Caso de estudio: Cifrador AES (Advanced Encryption Standard)AES: Especifica un algoritmo de encriptacin empleado para proteger datos electrnicos. El algoritmo AES es un esquema de cifrado por bloques que puede encriptar y desencriptar informacin.

  • Diagrama de clases

  • Diagrama de estructura compuesta

  • Perfil de UML para SystemCSe deben definir los estereotipos y las restricciones:Tabla de estereotipos

    Elementos de SystemCElemento en UMLEstereotipoMduloClasesc_moduleCanalClasesc_channelPuertoPuertosc_portInterfazInterfazsc_interfaceConectorConectorsc_connectorProcesoMtodos de las clasessc_methodsc_threadsc_cthread

  • PROYECTO DE MAESTRA

  • Situacin problemticaLas transformaciones de UML a SystemC presentadas hasta el momento no incluyen la verificacin de los diagramas descritos mediante perfiles de UML para SystemC.

    Debido a que UML es un lenguaje de naturaleza informal, los diseos pueden presentar problemas de inconsistencia.

  • Situacin problemticaPropuesta:Plantear un proceso para la verificacin de la consistencia en diseos UML 2.0 orientados al dominio de los SE requierepermite

  • ObjetivosGeneral: Plantear un mtodo de anlisis de la consistencia en el diseo de Sistemas Embebidos (SE) basado en la notacin UML 2.0, sus perfiles y SystemC. Especficos: Analizar los mtodos y herramientas basadas en UML 2.0, sus perfiles y SystemC para el diseo de SE.Plantear un proceso de verificacin de la consistencia para el diseo de SE con la notacin UML 2.0, sus perfiles y SystemC.Validar el proceso de verificacin mediante casos de estudio.

  • EstrategiaSe 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 cdigo.De acuerdo a esta experimentacin 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 informacin sobre el chequeo de las restricciones al modelo en UML.Se transforma el modelo UML a cdigo SystemC.Se prueba que el cdigo no genere errores en la compilacin.

  • Experimento: Problemas de modelado en el proceso de diseo con UML, sus perfiles y SystemC

  • Error en el cdigo generado en SystemC

  • Lista de restricciones para la verificacin de la consistenciaMdulosDos mdulos no pueden tener el mismo nombre. En un mdulo no se pueden dejar puertos desconectados. PuertosUn puerto requiere la definicin de una interfaz.Un puerto de un mdulo hijo contenido en un mdulo padre no se puede conectar a un mdulo externo directamente. Se debe conectar primero al puerto del mdulo padre. No se puede conectar un puerto directamente a un canal. Se debe conectar a travs de una interfaz.

  • Lista de restricciones para la verificacin de la consistenciaInterfacesEn una interfaz slo se pueden definir operaciones. Las interfaces no deben poseer atributos. Las operaciones de una interfaz deben ser pblicas.No se puede realizar la conexin directa de una interfaz entre dos mdulos sin definir los puertos en cada uno.Una interfaz es requerida a travs de puertos.

  • ConclusionesLas metodologas de diseo que emplean UML y SystemC requieren que se defina:Un perfil que agregue estereotipos y restricciones a los diseos en UML para que presenten correspondencia con la notacin SystemC.Un mtodo de transformacin que procese la informacin de la notacin grfica UML y la convierta a cdigo SystemC.

  • Trabajo futuroImplementar el mtodo de transformacin propuesto mediante las herramientas sugeridas (EA, libreras 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 ms casos de estudio con el fin de validar la implementacin del mtodo de transformacin.

    Blan - Definir Trabajo Futuro para el proyecto en general

  • 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, 2000.[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. 2002. pp. 249-254.[Nguyen04] K. Nguyen, Z. Sun, P. Thiagarajan and W.-F. Wong, Model-driven SoC design via executable UML to SystemC. Proc. of RTSS. 2004. pp. 459.[Xi05] C. Xi, L. JianHua, Z. ZuCheng, S. YaoHui. Modeling SystemC design in UML and automatic code generation. Proc. of ASP-DAC. 2005. pp. 932.[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. 00. 2005. pp. 154.[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. 00. 2006. pp. 245.[UML] UML Resource Page. http://www.uml.org.[SystemC] SystemC home page. http://www.systemc.org[OMG] OMG home page. http://www.omg.org[OCL] OMG. UML 2.0 OCL Specification, ptc/03-10-14.[AES] NIST, Federal Information Processing Standards 197, Advanced Encryption Standard, 2001.Disponible online: http://csrc.aist.gov/publications/fipdfips197/fips-1 97. pdf.[SysML] SysML Partners web site. http://www.sysml.org/ [MARTE] INRIA. The UML profile MARTE for Real-Time and Embedded Systems Design. Disponible online: http://ralyx.inria.fr/2006/Raweb/espresso/uid57.html[TUT] P. Kukkala, J. Riihimki, M. Hnnikinen, T. D. Hmlinen, K. Kronlf . UML 2.0 Profile for Embedded System Design. DATE. 2005.[UML for SoC] Fujitsu Limited, IBM, NEC. A UML Extension Profile for SoC. Draft RFC to 0MG, 2005-01-01.[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. 2. 2005. pp. 704.[EA] The Enterprise Architect tool: www.sparxsystems.com.au/[Eclipse] Eclipse home page. http://www.eclipse.org

    *********