Diseño Automático de Sistemas Electrónicos Integrados

Curso 2007-2008

Información Descripción Programa Bibliografía Evaluación




Inicio de clases: jueves 6 de Marzo a las 18:00 en el aula C-206.1.


Información general

  • Profesorado:

    Descripción y objetivos

    La utilización de componentes hardware y software en un único sistema electrónico permite combinar las características de flexibilidad y altas prestaciones. Estos sistemas heterogéneos se perfilan como la solución más viable para los problemas planteados por aplicaciones basadas en las nuevas tecnologías de la información, como las comunicaciones móviles, aplicaciones multimedia, o sistemas de control específicos (hogar, automoción, aviación), en lo que ha venido a llamarse sistemas empotrados (embedded systems). El desarrollo de nuevas metodologías de diseño basadas en herramientas CAD (Computer-Aided Design) resulta fundamental para abordar la complejidad de estos sistemas y reducir los tiempos de salida al mercado.

    En este curso se examinan los distintos aspectos a considerar en el diseño de sistemas heterogéneos, incluyendo dominios de aplicación, arquitecturas de sistemas hardware-software, sistemas en un chip, metodologías de diseño, consideraciones de consumo, y una revisión detallada de las tareas asociadas a la especificación, optimización, síntesis y validación de estos sistemas.



    Programa de contenidos

      Introducción . Presentación de la asignatura.

    1. Codiseño Hardware/Software. Dominios de Aplicación (PDF x6, 815 KB). Motivación para el codiseño. Niveles de abstracción. Componentes HW-SW (incluyendo FPGAs e IPs). Introducción a los dominios de aplicación. Sistemas empotrados. Metodología de codiseño e introducción a las tareas de codiseño. El papel del diseño asistido por ordenador (CAD) en codiseño. Estado del arte en codiseño (estándares, herramientas). Se introducen los siguientes dominios de aplicacion:

    2. Modelos de Especificación y Lenguajes (PDF x6, 2377 KB). Necesidad de modelos formales. Modelos de computación y lenguajes. Propiedades. Modelos para sistemas reactivos (FSM, StateCharts, Esterel, ECL, CFSM). Modelos para sistemas gobernados por flujos de datos (Synchronous Dataflow, Dataflow Networks). Redes de Petri. Otros modelos y lenguajes. Formato intermedio, transformaciones y optimizaciones.

    3. Diseño para Bajo Consumo (PDF x6, 973 KB). Importancia del consumo de potencia. Fundamentos teóricos. Herramientas para la evaluación del consumo de potencia. El consumo de potencia en los Sistemas en un Chip: optimización a diferentes niveles de abstracción. Memorias. Gestión dinámica de potencia.

    4. Particionado Hardware/Software (PDF x6, 689 KB). Aplicaciones del particionado (circuitos, FPGAs, HW/SW). Concepto de granularidad. Funciones de coste. Estrategias de particionado y algoritmos.

    5. Síntesis Hardware y Estimación (Parte 1, PDF x6, 1181 KB), (Parte 2, PDF x2, 2171 KB). Síntesis de alto nivel. Tareas de planificación y asignación. Algoritmos en herramientas CAD. Síntesis en FPGAs. Estado del arte (herramientas). Técnicas de estimacion de la síntesis de alto nivel.

    6. Generación de Código (PDF x6, 306 KB). Investigación en compiladores. Compilación guiada por reglas. Compiladores multidestino (retargetables). Modelado de procesadores. Selección del código. Calidad del código. Asignación de memoria y registros. Planificación (flujo de datos, sistemas de tiempo real, cuasi-estática). Análisis de prestaciones. Sistemas operativos en tiempo real.

    7. Comunicaciones HW/SW (PDF x6, 383 KB). Síntesis de interfaces. Asignación de canales. Protocolos insensibles a la latencia. Encapsulado de IPs. Estrategias de síntesis (Waveforms, HDLs, FSMs).

    8. Verificación Formal (PDF x6, 223 KB). Verificación de especificación y de implementación. Verificación de propiedades y equivalencias. Métodos probadores de teoremas.

    9. Validación, Cosimulación, Emulación y Prototipado (Parte 1, PDF x2, 82 KB), (Parte 2, PDF x2, 2090 KB). Tipos de simulación (funcional, prestaciones, implementación). Modelos de tiempo. Simulación lógica. Simulación por eventos. Simulación acelerada por HW. Emulación y placas con FPGAs. Prototipado. Ptolemy: características, clases, comunicaciones y dominios.


    Bibliografía de referencia



    Evaluación

    El curso se evalúa de acuerdo con la realización de un trabajo sobre uno de los temas presentados en la asignatura. Los trabajos, en los que se valora la claridad, la capacidad de síntesis y la calidad general de los mismos, se presentan en clase al final del curso, debiendo adjuntarse una copia del material utilizado (memoria, diapositivas) tanto en papel como en formato electrónico.

    La asistencia a clase también se tiene en cuenta en la evaluación del curso. Aquellos alumnos que no puedan asistir regularmente a clase, deben hablar con el coordinador para la realización de un trabajo especial.



    Actualizada el 4 de Marzo de 2008
    Email: <carreras@die.upm.es>
    © Copyright 2008 DIE. Reservados todos los derechos.