Sistemas empotrados
(200595)

 Este curso requiere una contraseña de acceso

Profesor: Sebastián Sánchez Prieto
Profesor: Óscar Rodríguez Polo




OBJETIVO:

El objetivo de la asignatura es capacitar al alumno para el desarrollo de sistemas empotrados. Se estudiarán las distintas alternativas de diseño basadas en microcontroladores, microprocesadores y procesadores de señal, y se formará al alumno en el manejo de los entornos de desarrollo propios de los sistemas empotrados tales como compiladores cruzados, emuladores “on-chip”, simuladores, etc. Se tratarán también los aspectos generales de la programación de las interfaces características de este tipo de sistemas. Finalmente se estudiarán las distintas topologías de interconexión de dispositivos en el ámbito de los sistemas empotrados y los buses más empleados para ello.

CRÉDITOS ECTS: 6

CONTENIDOS:
  • Presentación
  • Introducción
  • Alternativas de diseño de sistemas empotrados
  • Arquitecturas
  • Entornos de desarrollo y programación de interfaces
  • Buses
BIBLIOGRAFÍA:

1. An Embedded Software Primer
Autor: David E. Simon.
Editorial: Addison-Wesley
Año: 1999.
El libro presenta los fundamentos hardware y software  necesarios par desarrollar un sistema empotrado. En él se describen las distintas técnicas empleadas en su resolución, profundizando en aquellas basadas en la utilización de un sistema operativo de tiempo real. Los contenidos son adecuados para tener una visión de conjunto de este tipo de sistemas e introduce nociones básicas sobre herramientas de desarrollo y depuración.

2. Embedded Systems Design: An Introduction to Processes, Tools and Techniques
Autor: Arnold S. Berger.
Editorial: CMP Books; 1st edition
Año: 2001
El libro aborda desde el  punto de vista práctico el diseño de sistemas empotrados. Centra sus contenidos en las características técnicas de las distintas alternativas y herramientas, tanto hardware como software, que se emplean en el desarrollo y depuración de este tipo de sistemas.

3. Embedded System Design: A Unified Hardware/Software Introduction
Autores: Frank Vahid and Tony Givargis..
Editorial: John Wiley & Sons;
Año: 2002
El libro describe la arquitectura de un sistema empotrado en la que se integra el hardware de procesamiento, el software, los periféricos, la memoria, etc. Se tratan algunos ejemplos de estudio y se presentan soluciones de diseño de alto nivel basadas en tareas concurrentes y en la especificación del comportamiento mediante máquinas de estados.

4. The Art of Designing Embedded Systems.
Autor: Jack Ganssle.
Editorial: Newnes.
Año: 1999
Libro que refleja la experiencia de un desarrollador de sistemas empotrados. Resulta de especial utilidad una vez que se han adquirido los fundamentos teóricos y comienzan los primeros trabajos prácticos del alumno.

5. Hierarchical Modeling and Analysis of Embedded Systems
Autores: Alur et al.
Revista: Proceedings of the IEEE, Octubre 2002.
Artículo que muestra como modelar un sistema empotrado empleando el lenguaje de modelado CHARON. Este lenguaje permite un diseño modular y jerárquico que posibilita el análisis formal de los modelos.

6. galsC: A Language for Event-Driven Embedded Systems
Autores: Cheong Elaine, Liu Jie
In proceedings of DATE, 2005.
Artículo que presenta el lenguaje galsC que permite modelar sistemas empotrados basados en eventos. A partir de los modelos puede generarse código soportado por el kernel TinyOS, por lo que resultan totalmente ejecutables.

7. Overview of Ptolemy Project. Technical Memorandum ICB/ERL M03/25
Autores: Hylands et al.
Este informe describe el proyecto Ptolemy, consistente en el desarrollo de una herramienta de modelado de sistemas heterogéneos y co-diseño hardware y software, que resulta muy adecuada para la especificación y diseño de sistemas empotrados.

8. Component-Based Approach for Embedded Systems.
Autor: Ivica Crnkovic.
Ninth International Workshop on Component-Oriented Programming, 2004.
El artículo presenta un resumen de las características generales de los sistemas empotrados, sus requisitos y restricciones y las implicaciones sobre los modelos basados en componentes de este tipo de sistemas.


METODOLOGÍA DE ENSEÑANZA Y APRENDIZAJE

La metodología general de enseñanza y aprendizaje del master puede consultarse en éste enlace.

CRITERIOS Y PROCEDIMIENTOS DE EVALUACIÓN

La evaluación de la asignatura se llevará a cabo de acuerdo con los siguientes porcentajes:
  • Examen: 20%
  • Proyecto: 40%
  • Trabajos: 35%
  • Asistencia y participación en clase: 5%
  • Exámenes 20%: A lo largo del curso se realizarán entre 2 y 3 exámenes objetivos cuyo contenido versará sobre los temas tratados en clase o en conferencias.
  • Proyecto:25% resultados/esfuerzo, 7.5% informe, 7.5% presentación = 40% total
    • Diseño hardware/software, herramientas, análisis, simulación
    • Se recomiendan proyectos con implementación
    • No se aceptarán trabajos de revisión
    • Grupos de entre 1-3 alumnos
    • Presentación de hasta 30 minutos a lo largo de las últimas semanas con demo
    • Informe de hasta 12 hojas del estilo de paper para congreso
    • Estilo ACM http://www.acm.org/sigs/pubs/proceed/template.html
  • Trabajos: 35% total
    • Grupos de 2-3 alumnos
    • Revisión de un área: análisis, simulación, programación, búsqueda en web, revisión de artículos (pueden ser temas propuestos por los profesores o por los alumnos)
    • Presentación en clase entre 30-35 minutos con transparencias preparadas conjuntamente
    • Presentación en conjunto o decidida aleatoriamente en el momento de la exposición
    • Preparación de una web con informe, bibliografía, enlaces y las transparencias
  • Participación en clase: 5%
    • Preguntas realizadas en clase y durante las presentaciones de alumnos
    • Asistencia a tutorías relacionadas con el proyecto