Ingeniería del Software embebido
![Monografias.com](Diapositiva1.png)
Temas principales
Sistemas embebidos (ES) – características
Ingeniería del Software – comparación con programación del software y la ingeniería de sistema
Componentes del Software components de los Sistemas Embebidos (ES)
Principales etapas del desarrollo del software para Sistemas embebidos (ES)
Calidad del Software
Sistemas de tiempo Real embebidos
Lenguajes de programación en Sistemas embebidos (ES)
1
2
¿Qué es un Sistema embebido?
Una definición de uso general de los sistemas embebidos es que son dispositivos que se utilizan para controlar, supervisar o ayudar en la operación de equipos, maquinaria o planta. “Embebido” refleja el hecho de que son una parte integral del Sistema. En muchos casos, su “arraigo” puede ser tal que su presencia está lejos de ser evidente para el observador casual.
Instituto de Ingeniería Eléctrica (IEE)
3
Características de los sistemas embebidos (1)
Características básicas:
Número limitado de funciones predefinidas para ejecutar;
Fuente de alimentación limitada y la administración de energía efectiva;
Disponibilidad de recursos de reserve para situaciones inesperadas.
Funcionamiento en tiempo real (con mayor frecuencia);
Periféricos anchos e interfaces
Interfaces:
Interfaces de operador (Interfaces Máquina-Hombre – HMI) – teclados, monitores, interruptores, botones, indicadores emisores individuales o grupales de los diferentes tipos de señales, motores eléctricos, solenoides y otros.
Interfaces eléctricas (interfaces con otros components y dispositivos) Interno – I2C, SPI, ISA y otros.
Externos – RS232, TTY, Ethernet, Centronics, FlexRay, CAN, LIN, RF y otros
4
Características de los sistemas embebidos (2)
Plataforma de sistemas embebidos:
Microprocesador (MP o ?P) y los microcontroladores (MCU), que tienen menos poder de cómputo, pero varios periféricos;
Arquitecturas – Von Neumann y Harvard;
Utilizan ?P y MCU – CISC (Complex Instruction Set Computer) y más a menudo RISC (Reduced Instruction Set Computer);
Las populares familias de procesadores RISC: ARC (ARC International), ARM (ARM Holdings), AVR (Atmel), PIC (Microchip), MSP430 (TI) y otros;
CISC CPUs: Intel y Motorola;
Por lo general en el interior hay una memoria cache y procesamiento de la canalización de instrucciones;
Memoria para datos e instrucciones: RAM, PROM – OTP (Programable de una sola vez), EEPROM o memoria Flash;
Periféricos: Propósito general Entrada /Salida – GPIO, temporizadores, ADC, DAC y más.
5
Características de los sistemas embebidos (3)
Comunicación:
RS-232, RS-422, RS-485, UART / USART (Receptor / Transmisor universal síncrono y asíncrono);
I2C (Inter-Integrated Circuit – Circuito integrado), SPI (Serial Peripheral Interface Bus – Bus de la interfaz de periféricos serie), SSC and ESSI (Enhanced Synchronous Serial Interface – Interfaz mejorada serie síncrona), USB (Bus Universal en serie);
Protocolos de comunicación de red: Ethernet, CAN (Controller Area Network – Controlador del área de red), LonWorks etc.
Software: Popular OS – QNX4 RIOS, Linux embebido y Linux-based (Android, etc.), iOS, Windows CE, etc.
Herramientas para probar y corregir (depuración)
JTAG (Joint Test Action Group) – una interfaz especializada para la prueba saturada PCB;
ISP (In-System Programming) – Programación de circuito;
ICSP (circuito de programación en serie) – un método para la programación directa del microcontrolador, por ejemplo, de la serie PIC y AVR;
BDM (Modo de depuración de fondo) – utilizado principalmente en productos de Freescale;
IDE (Integrated Development Environment- Entorno de desarrollo integrado) – para el desarrollo de programas.
6
Sistemas embebidos: Ejemplos
Ingeniería del Software
Ingeniería del Software (SE): la aplicación de un enfoque disciplinado cuantificable sistemático, con el diseño, desarrollo, operación y mantenimiento de software, y el estudio de estos enfoques;
Es decir, la aplicación de la ingeniería del software.
El plazo es de 45 años: conferencias de la OTAN
Garmisch, Alemania, 7-11 octubre, 1968
Roma, Italia, 27-31 octubre, 1969
La realidad está finalmente empezando a llegar
La informática como base científica
¿Otras bases científicas?
Muchos aspectos se han hecho sistemáticos:
Métodos / metodologías / técnicas
Lenguajes
Herramientas
Procesos – Instrumentos
7
¿Por qué estas dificultades?
SE es una marca única de la ingeniería
El Software es maleable
La construcción del Software es humano-intensivo
El Software es intangible
Problemas del Software son complejos sin precedentes
El Software depende directamente del hardware.
Está en la parte superior del Sistema de ingeniería “cadena alimentaria”
Las soluciones del software requieren rigor inusual
El software tiene carácter operativo discontinuo
8
Ingeniería del software ? Programación del Software
Programación del Software
Desarrollador individual
Aplicaciones de “juguete”
Esperanza de vida corta
Pocos actores o actores individuales
Arquitecto = Desarrollador = Gerente = Tester = Cliente = Usuario
Uno de un Sistema tipo
Construido desde cero
Mantenimiento mínimo
9
Ingeniería del software ? Programación del Software
Ingeniería del software
Equipos de desarrolladores con multiples funciones.
Sistemas complejos
Vida útil indefinida
Numerosos grupos interesados
Arquitecto ? Desarrollador ? Gerente ? Tester ? Cliente ? Usuario
Las familias del sistema
Reutilizar para amortizar costes
Mantenimiento representa más del 60% de los costos generales de desarrollo
10
Página siguiente ![]() |