1. Home

Software integrado

El software integrado es una aplicación especializada o firmware que se ejecutan en un clúster de procesamiento integrado en un SoC o CI. Casi cualquier producto electrónico puede contener uno o varios procesadores integrados, habituales en los automóviles, la automatización de fábricas, la aviónica, los dispositivos médicos, etc.

¿Qué clases de software integrado hay?

Las aplicaciones de software integrado son programaciones especializadas dentro de dispositivos que no son PC, ya sea como parte de un microchip o de otra aplicación encima del chip, para controlar determinadas funciones del dispositivo. A diferencia de las aplicaciones para PC, que pueden instalarse en varios sistemas y modificarse a fin de proporcionar distintos niveles de funcionalidad, el software integrado tiene funcionalidades y requisitos fijos de hardware. Se crea exclusivamente para el dispositivo en el que se ejecuta, con restricciones de procesamiento y memoria vinculadas a sus especificaciones. En el contexto al que nos referimos aquí, el software integrado incluye aplicaciones, firmware, middleware y sistemas operativos que se ejecutan en un único microprocesador o un grupo de microprocesadores integrados dentro de una lógica adicional.

Productos relacionados: Capital Embedded AR Classic | Capital Embedded Integrator AR Classic | Capital Embedded Virtualizer AR Classic

embedded-software-is803905696-feature-640x360

Características y funciones de los sistemas integrados

Existen muchas clases de sistemas integrados; sin embargo, comparten las mismas beneficiosas funciones y características de diseño.

Todos los sistemas integrados son específicos de cada tarea

Ejecutan la misma función preprogramada durante su vida útil y no pueden alterarse.

Todos los sistemas integrados son muy eficientes

Los requisitos de recursos del software integrado nunca deben superar la capacidad del hardware en el que se instala. Por su parte, las especificaciones del hardware nunca deben superar los requisitos mínimos del software integrado.

Diseñados para la estabilidad

Todos los sistemas integrados se han diseñado para ser altamente fiables y estables. Deben desempeñar su tarea con tiempos de respuesta y funcionamiento constantes durante la vida útil del dispositivo que los aloja.

¿Qué tipos de software integrado ofrece Siemens?

Siemens brinda soluciones de software integrado de automoción y software integrado de ingeniería. Siemens ha dejado de ofrecer software integrado independiente para SoC. En noviembre de 2023, retiró los productos Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux y Sourcery CodeBench (incluidos los complementos asociados). Los contratos de asistencia en vigor de estos productos se siguen cumpliendo. Ponte en contacto con el Centro de Asistencia Técnica de Siemens para obtener más información.

¿Qué clases de software integrado hay y cuáles son sus propósitos?

  • Sistema operativo: en el sentido más genérico, un sistema operativo (SO) es software que permite a un usuario ejecutar otras aplicaciones en un dispositivo informático. El sistema operativo gestiona los recursos de hardware de un procesador; por ejemplo, los dispositivos de entrada, como el teclado y el ratón, los dispositivos de salida, como las pantallas o las impresoras y las conexiones de red, y los dispositivos de almacenamiento, como los discos duros y la memoria. También proporciona servicios para facilitar la ejecución y gestión eficientes, así como la asignación de memoria para los programas de software.
  • Firmware: tipo de software que se escribe directamente para hardware. Funciona sin pasar por las APIs, el sistema operativo ni los controladores de dispositivos. Proporciona las instrucciones y la orientación necesarias para comunicarse con otros dispositivos, o para ejecutar tareas y funciones básicas según lo previsto.
  • Middleware: capa de software situada entre aplicaciones y sistemas operativos. Suele utilizarse en sistemas distribuidos, en los que simplifica el desarrollo de software al proporcionar lo siguiente:

    • Oculta los entresijos de las aplicaciones distribuidas
    • Enmascara la heterogeneidad del hardware, los sistemas operativos y los protocolos
    • Brinda interfaces uniformes y de alto nivel que sirven para hacer aplicaciones interoperables, reutilizables y portables.
    • Ofrece un conjunto de servicios comunes que minimicen la duplicación de esfuerzos y mejoren la colaboración entre aplicaciones
  • Aplicación: el usuario desarrolla la aplicación de software que se ejecuta en el sistema operativo, utiliza o interactúa con el middleware y el firmware. Es el foco principal de la función objetivo de los sistemas integrados. Cada aplicación es única; por su parte, los sistemas operativos y el firmware pueden ser idénticos entre dispositivos.

Software integrado frente a sistemas integrados

Los componentes de hardware de un dispositivo que ejecuta software integrado se denominan sistemas integrados. Algunos ejemplos de componentes de hardware utilizados en los sistemas integrados son los circuitos de alimentación, las unidades centrales de procesamiento, los dispositivos de memoria flash, los temporizadores y los puertos de comunicación serie. En las primeras fases de diseño de un dispositivo, se decide el hardware que compondrá el sistema integrado y su configuración dentro del dispositivo. A continuación, el software integrado se desarrolla desde cero para que funcione exclusivamente en ese hardware con esa configuración precisa. Por eso, el diseño de software integrado es un ámbito especializado que requiere profundos conocimientos de funcionalidades de hardware y de programación.

Ejemplos de funciones basadas en software integrado

Casi todos los dispositivos con placas de circuitos y chips tienen estos componentes organizados en un sistema de software integrado. En consecuencia, los sistemas de software integrado son omnipresentes en la vida cotidiana. Se encuentran en la tecnología de consumo, industrial, automovilística, aeroespacial, médica, comercial, telecomunicaciones y militar.

Ejemplos habituales de funciones basadas en software integrado:

  • Sistemas de procesamiento de imágenes en equipos médicos de diagnóstico por imagen
  • Sistemas de control fly-by-wire en aeronaves
  • Sistemas de detección de movimiento en cámaras de seguridad
  • Sistemas de control del tráfico en semáforos
  • Sistemas de temporización y automatización en dispositivos domésticos inteligentes

¿Qué clases de sistemas integrados hay?

Teniendo en cuenta requisitos funcionales y de rendimiento, existen cinco clases principales de sistemas integrados:

  • Los sistemas integrados en tiempo real completan las tareas de forma determinista y repetible, lo que se ve afectado por la arquitectura subyacente y la programación de los sistemas operativos, así como por el rendimiento de los hilos, la ramificación y la latencia de interrupción. Los sistemas integrados de propósito general no contienen un requisito de tiempo real. Pueden gestionar interrupciones o bifurcaciones sin depender de un tiempo de finalización. Las pantallas gráficas y la gestión del teclado y el ratón son ejemplos válidos de sistemas generales.
  • Los sistemas integrados autónomos pueden desempeñar tareas sin un sistema host ni recursos de procesamiento externos. Pueden generar o recibir datos de los dispositivos conectados, pero no dependen de ellos para completar su tarea.
  • Los sistemas integrados autónomos pueden desempeñar su tarea sin un sistema host ni recursos de procesamiento externos. Pueden generar o recibir datos de los dispositivos conectados, pero no dependen de ellos para completar su tarea.
  • Los sistemas integrados en red dependen de una red conectada para efectuar las tareas asignadas.
  • Según la complejidad de la arquitectura hardware del sistema, hay tres tipos principales de sistemas integrados: Los sistemas integrados en red dependen de una red conectada para efectuar las tareas asignadas.

Cómo afectan los mercados a los sistemas integrados

Los requisitos y componentes de los sistemas integrados variarán según las exigencias de cada mercado. Estos son algunos ejemplos:

  • Consumo: en aplicaciones como bienes de consumo, por ejemplo lavadoras, dispositivos de tecnología ponible y teléfonos móviles, los sistemas integrados hacen hincapié en el tamaño reducido del sistema en un chip, el bajo consumo, la operación de batería e interfaces gráficas
  • Sistema en un chip, bajo consumo, operación de batería e interfaces gráficas. En estas aplicaciones, se valoran los sistemas operativos configurables y la capacidad de desconectar los dominios no operativos del diseño.
  • Redes: aplicaciones que permiten la conectividad, la comunicación, las operaciones y la gestión de una red empresarial. Proporciona la vía de comunicación y los servicios entre usuarios, procesos, aplicaciones, servicios, redes externas e Internet. Las aplicaciones de red integradas se centran en la velocidad de respuesta, el procesamiento de paquetes y las rutas de hardware periférico.
  • Industrial: para aplicaciones como la gestión de fábricas, motores y molinos de viento, se hace hincapié en la conectividad segura en la nube y el funcionamiento determinista en tiempo real, y puede centrarse mucho en middleware.
  • Medicina, automoción y aeroespacial: estas industrias necesitan sistemas críticos de seguridad mixta en los que partes del diseño están aisladas entre sí para asegurar que solo entran o salen del sistema los datos necesarios (seguridad), al tiempo que se garantiza que no se perjudica al usuario final (seguridad). Por ejemplo, los sistemas de conducción autónoma en automóviles y dispositivos médicos. Estos sistemas integrados pueden presentar una combinación de sistemas operativos en tiempo real deterministas (RTOS) y de código abierto (Linux), y utilizar en gran medida middleware de solvencia contrastada.

¿Por qué es diferente el software integrado de automoción?

En la electrónica de la automoción, se producen complejas interacciones en tiempo real entre varios sistemas integrados que controlan funciones, como el frenado, la dirección, la suspensión, la motopropulsión, etc. La carcasa que contiene cada sistema integrado se denomina unidad de control electrónico (ECU). Cada ECU y su software integrado forman parte de una arquitectura eléctrica compleja conocida como sistema distribuido.

Al comunicarse entre sí, las ECUs que componen el sistema distribuido de un vehículo pueden ejecutar diversas funciones, como el frenado automático de emergencia, el control de crucero adaptativo, el control de estabilidad, los faros adaptativos y mucho más. Una sola función puede necesitar interacciones entre 20 o más aplicaciones de software integrado y distribuido en numerosas ECUs conectadas por diferentes protocolos de red. Los complejos algoritmos de control implementados con el software integrado garantizan la sincronización adecuada de las funciones, las entradas y salidas necesarias y la seguridad de los datos.

Ejemplos habituales de funciones basadas en aplicaciones de software para la industria de la automoción:

  • Funciones de sistemas avanzados de asistencia al conductor (ADAS) como control de crucero adaptativo, frenado automático de emergencia, asistencia para mantenerse en el carril, asistencia de tráfico, avisos de cambio involuntario de carril
  • Gestión de baterías
  • Compensación del par de torsión
  • Control de la tasa de inyección de combustible

Pila de software de ECU

La unidad de control electrónico o ECU se compone de una unidad de cálculo principal con hardware de chip y una pila de software integrado. Sin embargo, los fabricantes de automóviles tienden cada vez más a diseñar ECUs con complejos circuitos integrados que contienen varios núcleos de procesamiento en un solo chip o sistema en un chip (SoC). Estos SoCs pueden alojar muchas abstracciones de ECU para consolidar el hardware. La pila de software de una ECU suele incluir una serie de soluciones, desde firmware de bajo nivel hasta aplicaciones de software integrado de alto nivel.

Pila de ECU

Descripción

Aplicación de software integrado

Algoritmos de control, procesamiento, servicios

Marco de aplicación

Marcos de protección y seguridad

Entorno operativo

AUTOSAR Classic, AUTOSAR Adaptive, canales de entradas/salidas

Virtualizaciones integradas

SO en tiempo real, abstracciones de ECU

Soporte lógico inalterable

Bootloaders, almacenamiento seguro, subprocesos seguros

Hardware

Dispositivos basados en silicio, microcontroladores, placas de una o varias capas

Recursos relacionados con software integrado

Más información

Software integrado y diseño de red

Descubre cómo desarrollar de forma rápida y eficiente un software innovador y seguro para ofrecer funciones vitales de los productos.