Presentación Programación de sistemas y dispositivos - José Manuel Mendías Cuadros - Facultad de Informática
←
→
Transcripción del contenido de la página
Si su navegador no muestra la página correctamente, lea el contenido de la página a continuación
Presentación Programación de sistemas y dispositivos José Manuel Mendías Cuadros Dpto. Arquitectura de Computadores y Automática Universidad Complutense de Madrid
2021 J.M. Mendías José Manuel Mendías Cuadros o Despacho: 3.31 (Facultad de Informática) o Teléfono: 91 394 76 13 o e‐mail: mendias@ucm.es o Web: www.dacya.ucm.es/mendias www.fdi.ucm.es/profesor/mendias (alternativa) Tutorías (on‐line con solicitud de cita previa por email): o Solo se realizarán tutorías presenciales por causas de fuerza mayor Presentación o Lunes y jueves de 10h a 11h; martes de 11:30h a 12:30h PSyD 2
2021 J.M. Mendías Objetivo: o Mostrar las bases del desarrollo integral de aplicaciones empotradas en arquitecturas heterogéneas basadas en un único microcontrolador. o Haciendo énfasis: • Programación de bajo nivel (C/ASM) • Control directo de dispositivos • Tiempo real y métricas de calidad Metodología: o Aprender practicando • Toda la teoría será aplicada en los laboratorios. • La experiencia facilitará la extrapolación de los conceptos a otros entornos. Presentación o Trabajaremos con una máquina desnuda concreta • Sin SO, sin cargador, sin drivers, sin bibliotecas, sin código de terceros... o Aproximación ascendente (botton‐up) PSyD • Partiendo del hardware iremos construyendo sucesivas capas de software. 3
definición 2021 J.M. Mendías Un sistema digital diseñado para cubrir una necesidad específica: o Un consumidor puede interactuar diariamente con más de una centena de sistemas empotrados distintos. Característica Computador de propósito general Sistema empotrado arquitectura HW normalizada heterogénea normalizada arquitectura SW heterogénea (en base a un SO estandarizado) variable funcionalidad (el usuario elige el momento y tipo de fija las aplicaciones a ejecutar) dispositivos de E/S normalizado cualquiera con los que interactúa (teclado, monitor, red, disco,...) Presentación ligaduras físicas débiles fuertes si no tiempo real (garantizan tiempos (hacen todo lo más rápido posible) máximos de respuesta) PSyD memoria disponible virtualmente ilimitada poca 4
¿donde están? 2021 J.M. Mendías Sistema de ignición Robots Automoción Control del motor Control de líneas de producción Industria Sistema de frenado (ABS) Control de plantas de proceso Sistemas de alarma Puntos de venta Consola de instrumentación Sistemas de inventario Riego automático Impresoras Routers Oficinas Fax Redes Fotocopiadoras Hubs Monitores Gateways Scaners Bombas de diálisis Medicina TDT Dispositivos protésicos Electrónica de consumo DVD / VCR / Hi‐Fi Monitores (cardiacos, glucosa...) Electrodomésticos Marcapasos Presentación Juguetes Sistemas de guiado Teléfonos DAT Transporte Control de vuelo Cámaras GPS Controles remotos Sistema de balizamiento PSyD Velocímetros Control de tráfico 5 Relojes Radares
criterios de calidad (i) 2021 J.M. Mendías Relacionados con prestaciones y coste: o Rendimiento: cantidad de información procesada por unidad de tiempo. o Tiempo de respuesta: diferencia de tiempo entre un evento y la ejecución de la acción asociada. o Consumo: cantidad de energía que necesita el dispositivo para operar. o Tamaño y peso: espacio físico requerido por el dispositivo. o Non‐recurring engineering cost: el coste único de diseño y prueba del producto. o Coste por unidad: coste de manufacturar un dispositivo adicional. Relacionados con la seguridad: o Fiabilidad: tiempo medio entre fallos. Presentación o Tolerancia a fallos: posibilidad de recuperación del dispositivo por si mismo tras un fallo. PSyD o Criticidad: riesgo de daño a humanos o al entorno. 6
criterios de calidad (i) 2021 J.M. Mendías Relacionados con el marketing: o Tiempo hasta prototipo: tiempo requerido para diseñar, construir, y probar un prototipo. o Tiempo hasta mercado: tiempo requerido para que el usuario disponga del producto. o Factores humanos: grado de apreciación de los clientes hacia el producto. Relacionados con la vida útil: o Compatibilidad: conformidad del dispositivo con los estándares. o Mantenibilidad: flexibilidad con la que un dispositivo puede ser modificado. Presentación o Testabilidad: facilidad con la que se puede comprobar si el dispositivo funciona adecuadamente. PSyD 7
alternativas de diseño 2021 J.M. Mendías Diseño Automático rendimiento / menor consumo / esfuerzo de diseño de Sistemas custom‐made HW (no SW) Sistemas Empotrados uProcessor + custom‐made HW/SW Programación de Sistemas uProcessor y Dispositivos + off‐the‐shelf HW + otras custom‐made SW asignaturas Presentación uProcessor + off‐the‐shelf HW/SW PSyD productividad / menor tiempo a mercado / compatibilidad / mantenibilidad 8
volumen de ventas 2021 J.M. Mendías Presentación PSyD fuente: IC Insights 9 ASP = average selling price
applications 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 10
capabilities 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 11
job funtions 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 12
circuit boards: custom vs. off‐the shelf 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 13
starting with a development board 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 14
number of processors 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 15
processor bit length 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 16
processor clock rate 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 17
processor vendor 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 18
processor family (32 bits) 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 19
use of OS/RTOS 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 20
open source vs. comercial OS/RTOS 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 21
OS/RTOS vendor 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 22
programming language 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 23
code reuse 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 24
ratio of total resources spent 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 25
sources of information 2021 J.M. Mendías Presentación PSyD fuente: 2019 Embedded Markets Study. AspenCore, 2019 26
punto de partida 2021 J.M. Mendías Especificación del sistema Sistemas empotrados Diseño de la arquitectura hardware Dispositivos Controladores de dispositivos Microprocesador Diseño del PCB punto de partida Sistemas y Dispositivos Diseño de la arquitectura software Programación de Presentación Drivers Sistema operativo Aplicación Integración y test PSyD 27
2021 J.M. Mendías Tema horas 1 El microcontrolador S3C44BOX 4h 2 La placa de prototipado Embest S3CEV40 4h 3 El entorno de desarrollo Eclipse IDE for C/C++ Developers. 2h 4 Programación a bajo nivel en C 4h 5 Firmware y bootstraping 1h 6 Modelos de programación de software empotrado 6h 7 Micro‐kernels de tiempo real 4h Presentación Prácticas: o Desarrollo de firmware (drivers y bootloader). o Portado y configuración de un micro‐kernel de tiempo real. PSyD o Desarrollo de aplicaciones empotradas multihebra. 28
escenario inicial (i) 2021 J.M. Mendías Todas las clases serán presenciales pero con mínimo contacto: o No aplica alternancia o No se realizará streaming ni se grabarán las clases o Para laboratorios y tutorías se habilitará una sala de videoconferencia de respaldo Herramientas on‐line que utilizaremos: o Web (Transparencias y documentación) o Campus virtual (Herramientas, video‐demos y entregas) o Google Meet (Videoconferencia) o Asistencia rápida de Windows 10 (Asistencia remota) Presentación Alternativamente, según las circunstancias, podríamos llegar a usar: o Chrome Remote Desktop (Asistencia remota) PSyD o Microsoft Teams (Entorno unificado de trabajo en equipo) • Requiere activar Microsoft 365 desde la gestión de cuenta UCM 29
escenario inicial (ii) 2021 J.M. Mendías Distribución de clases: o Lunes: Teoría presencial – Aula 12 o Jueves: Laboratorios individuales presenciales – Aula 12 Elementos evaluables: o Asistencia obligatoria (mínimo 70%) repetidores exentos o Prácticas: 30% de la nota • Entrega + defensa en horario de clases de laboratorio • Retraso en la entrega se penaliza. Límite: 16 de diciembre, 13:00h • La nota aplica a ambas convocatorias y se conserva de un curso a otro Presentación o Proyecto: 30% de la nota • Entrega + defensa solo en primera convocatoria. Límite: 19 de enero, 17:00h • La nota aplica a ambas convocatorias PSyD o Examen teórico: 40% de la nota 30
laboratorios 2021 J.M. Mendías Cada estudiante dispondrá de un laboratorio completo en casa o Deberá traerlo a clase los días de laboratorio La Facultad prestará el maletín ARM durante todo el 1er. cuatrimestre o Se recogerá desde el día 16 de septiembre en la sala de técnicos o Se podrá devolver hasta el día 19 de enero inclusive (día del examen de enero) Cada estudiante deberá instalarse el entorno de desarrollo, 2 opciones: o Nativamente sobre Windows 7/10, siguiendo las instrucciones web • Principal problema en W10: instalación de drivers no firmados o Instalando VMWare Player (gratuito) y utilizando la máquina virtual disponible en CV • Incluye una VM de Windows 7 con el entorno preinstalado Presentación De ser necesario, el entorno de desarrollo también está instalado en: o Los laboratorios de la Facultad PSyD o Los puestos de la biblioteca 31 o Los portátiles en préstamo de la Facultad
2021 J.M. Mendías Septiembre 2021 Octubre 2021 30 31 1 2 3 4 5 1 2 3 6 7 8 9 10 11 12 4 5 6 7 8 9 10 13 14 15 16 17 18 19 11 12 13 14 15 16 17 20 21 22 23 24 25 26 18 19 20 21 22 23 24 27 28 29 30 31 25 26 27 28 29 30 31 Noviembre 2021 Diciembre 2021 1 2 3 4 5 6 7 1 2 3 4 5 8 9 10 11 12 13 14 6 7 8 9 10 11 12 15 16 17 18 19 20 21 13 14 15 16 17 18 19 Presentación 22 23 24 25 26 27 28 ¿? 20 21 22 23 24 25 26 29 30 27 28 29 30 31 PSyD 32 TEORIA LABORATORIO
valoraciones 2021 J.M. Mendías Laboratorios Ptos 1 Acceso elemental a dispositivos (i): dispositivos externos mapeados en memoria. 0 2 Acceso elemental a dispositivos (ii): dispositivos externos conectados a puertos de E/S. 0 3 Drivers de dispositivos elementales: salida por leds y displays 7-segmentos. 0.25 4 E/S programada: control de una UART y comunicación con un terminal serie. NEW TEST 1.25 5 Gestión básica de interrupciones: programación de un reloj de tiempo real. NEW TEST 0.75 6 Medida del tiempo: control de temporizadores y entrada por pulsadores y keypads. NEW DRIVER 1.75 7 Salida por un LCD. NEW TEST 1 8 Bus IIC: lectura/escritura de una EEPROM (no se realiza) ‐ 9 E/S por DMA y Bus IIS: reproducción/grabación de sonido con un Audio Codec. NEW TEST 2 10 Conversión analógico-digital: entrada por un touchpad. NEW DRIVER 1.25 11 Autoarranque desde ROM 0.25 Presentación 12 Multitarea cooperativa NEW LAB 0.5 13 Multitarea bajo un kernel de planificación no expropiativo NEW TEST 0.5 PSyD 14 Multitarea bajo RTOS uC/OS-II NEW TEST 0.5 33 Los puntos por prácticas se ponderan por 0.3 en la calificación final
fechas de entrega 2021 J.M. Mendías Septiembre 2021 Octubre 2021 30 31 1 2 3 4 5 1 2 3 6 7 8 9 10 11 12 4 5 6 7 48 9 10 13 14 15 16 17 18 19 11 12 13 14 5 15 16 17 2 11 20 21 22 23 1 24 25 26 18 19 20 21 7 22 23 24 27 28 29 30 3 31 25 26 27 28 29 30 31 Noviembre 2021 Diciembre 2021 1 2 3 4 65 6 7 1 2 123 4 5 8 9 10 11 12 13 14 6 7 8 9 1310 11 12 15 16 17 18 9 19 20 21 13 14 15 16 1417 18 19 Presentación 22 23 24 25 1026 27 28 ¿? 20 21 22 23 24 25 26 29 30 27 28 29 30 31 PSyD 34 TEORIA LABORATORIO
curso 2021‐22 2021 J.M. Mendías Game & Watch (80’s): o Visualizar imágenes y/o textos en un LCD. o Reproducir sonidos a través de un Audio Codec. o Usar un para la interacción con el usuario. o Usar interrupciones. o Tener un mínimo footprint (unos 50 KB) https://www.youtube.com/watch?v=mdWuOhxo4FA Proyectos cursos anteriores: o 2012‐13: Teléfono inalámbrico. o 2013‐14: Reproductor de audio digital (iPod). o 2014‐15: Audioguía con voz sintética. o 2015‐16: Ciclocomputador (velocímetro de bicicleta). Presentación o 2016‐17: Báscula digital. o 2017‐18: Dictáfono digital. o 2018‐19: Gestor de fila única. PSyD o 2019‐20: Launchpad (secuenciador multipista). 35 o 2020‐21: Reloj despertador parlante.
2021 J.M. Mendías Arquitectura ARM: o ARM system developer's guide: designing and optimizing system software Andrew Sloss, Dominic Symes, Chris Wright Elsevier / Morgan Kaufman, 2004 Programación de dispositivos: o S3C44BOX RISC microprocessor: product overview Samsung Electronic o Embedded microcomputer systems: real time interfacing Jonathan W. Valvano Cengage Learning, 3ª edición, 2012 o Embedded Systems Building Blocks, Complete and Ready‐to‐Use Modules in C Presentación Jean J. Labrosse R&D Books, 2ª edición, 2000 PSyD 36
2021 J.M. Mendías Programación en C de sistemas empotrados: o An Embedded Software Primer David E. Simon Addison‐Wesley, 1999 o Embedded C. Michael J. Pont Addison‐Wesley, 2002 o Patterns for time‐triggered embedded systems Michael J. Pont Addison‐Wesley, 2001 Sistemas de tiempo real: o MicroC/OS‐II. The Real‐Time Kernel Presentación Jean J. Labrosse CMP Books, 2ª edición, 2002 o Hard Real Time Computing Systems PSyD Giorgio C. Buttazzo 37 Springer, 3º edición, 2011
2021 J.M. Mendías Licencia CC (Creative Commons) o Ofrece algunos derechos a terceras personas bajo ciertas condiciones. Este documento tiene establecidas las siguientes: Reconocimiento (Attribution): En cualquier explotación de la obra autorizada por la licencia hará falta reconocer la autoría. No comercial (Non commercial): La explotación de la obra queda limitada a usos no comerciales. Compartir igual (Share alike): La explotación autorizada incluye la creación de obras derivadas Presentación siempre que mantengan la misma licencia al ser divulgadas. Más información: https://creativecommons.org/licenses/by‐nc‐sa/4.0/ PSyD 38
También puede leer