Skip to main content

Una introducción al vehículo definido por software

Arquitecturas de hardware para el vehículo definido por software del futuro

Brandon Lewis para Mouser Electronics

  Fuente: kaptn/stock.adobe.com

Los automóviles modernos son una combinación de acero y silicio controlados por más de 100 millones de líneas de código (MLOC). En un vehículo promedio hoy en día, ese software se ejecuta en una red de cientos de controladores en el automóvil llamados unidades de control electrónico (UCE).

Las UCE son subsistemas de procesamiento integrados que gestionan los diversos subsistemas del vehículo, como el motor, la transmisión, la dirección asistida, las bolsas de aire y los frenos. Hoy en día, estos controladores están interconectados mediante cables y alambres que transmiten señales y comunican dependencias. Funciona, pero hay inconvenientes significativos en esta arquitectura:

  • Peso: Los cables y el cableado necesarios para conectar todos estos subsistemas añaden un peso significativo al vehículo, lo que afecta métricas importantes para el consumidor como la economía de combustible.
  • Mantenimiento: Un mayor número de componentes aumenta los posibles puntos de falla adicionales.
  • Vectores de ataque: Las UCE en los autos conectados son particularmente vulnerables a las amenazas cibernéticas, ya que las redes internas de vehículos a menudo carecen de los mecanismos de defensa que esperamos en las redes modernas.
  • Costo: Cada dispositivo lógico adicional con su memoria, interfaces y empaquetado agrega un costo incremental a los diseños automotrices que ya son sensibles al costo.

Mientras tanto, el deseo de agregar más funcionalidades en los vehículos de próxima generación continuará aumentando la cantidad de programación en los automóviles. Por ejemplo, las estimaciones sitúan los requisitos de software para vehículos completamente autónomos en algún lugar entre 300 y 500 millones de líneas de código.

Estas arquitecturas de vehículos definidos por software (SDV) se volverán cada vez más difíciles de gestionar si quinientos millones de líneas de código están distribuidas en cientos de controladores de vehículos interconectados, interdependientes pero separados. Estos sistemas solo serán verdaderamente factibles si las arquitecturas de procesamiento dentro del automóvil se vuelven más similares a los centros de datos con recursos consolidados que a los sistemas integrados.

Consoildación de las arquitecturas de SDV


Para comprender la necesidad de nuevas arquitecturas de vehículos, considere el proceso de actualización de firmware por aire (FOTA) en un vehículo con cientos de UCE (algunas de las cuales están en cadena y muchas de las cuales tienen dependencias estrictas), cada una ejecutando diferentes versiones de firmware. La orquestación y gestión de dicho proceso, incluso para actualizaciones simples, rápidamente se vuelve inmanejable.

Aquí entra en juego la consolidación de UCE, un movimiento para simplificar la cantidad y el tipo de controladores de dominio en los vehículos modernos en menos procesadores multinúcleo de alto rendimiento, particionados, capaces de gestionar múltiples dominios o subsistemas del vehículo simultáneamente. El concepto de consolidación de UCE presenta un enfoque arquitectónico alternativo con varias ventajas convincentes. En primer lugar, el agrupamiento de funcionalidades reduce significativamente la complejidad en comparación con las arquitecturas predominantes actuales. Esto resulta en una pila de hardware y software más manejable, un código más limpio, una integración simplificada y un mantenimiento más fácil a medida que avanzamos hacia la era de los SDV.

En segundo lugar, el modelo de consolidación de las UCE mejora la eficiencia en el desarrollo, ya que los equipos de desarrollo pueden implementar herramientas y procesos estandarizados al concentrarse en dominios o subsistemas de vehículos lógicos en lugar de una serie de funciones específicas. Este enfoque centrado fomenta la colaboración, acelera la innovación y, en última instancia, reduce el tiempo de comercialización de nuevas características y actualizaciones.

A continuación, la arquitectura consolidada promueve las actualizaciones OTA (Over-The-Air), ya que actualizar el software se vuelve más manejable que actualizar cientos de UCE distribuidas en todo un automóvil y los compromisos de eficiencia que conlleva ese enfoque. Además, la superficie de ataque más pequeña proporcionada por el enfoque zonal hace que todo el sistema sea más resistente a las amenazas cibernéticas. Esto permite que una seguridad más sólida se enfoque en un número menor de plataformas, lo que mejora la integridad general del sistema.

Finalmente, el enfoque de consolidación de las UCE contribuye a un rendimiento rentable. Optimizar los requisitos de hardware y software en menos objetivos puede generar ahorros significativos de costos. Estas optimizaciones pueden garantizar que los recursos se utilicen de manera eficiente, lo que proporciona una ventaja económica en el costo total de un vehículo.

Hasta la fecha, han surgido dos enfoques principales para la consolidación de las UCE: la arquitectura centralizada y la arquitectura zonal.

Arquitecturas centralizadas
Imagine procesadores multinúcleo de clase de servidor o chiplets que procesan datos en el núcleo de un vehículo. Esta es una arquitectura centralizada que reemplaza las islas dispersas de las UCE con un centro de comando unificado. Esta arquitectura gestiona todos los dominios y las funciones del vehículo, desde el control del motor hasta los sistemas avanzados de asistencia al conductor (ADAS), desde un punto central.

Este enfoque monolítico ofrece varias ventajas:

  • Actualizaciones y mantenimiento simplificados: Las actualizaciones de software se vuelven mucho más fáciles, y se implementan en todo el sistema en un solo esfuerzo.
  • Rendimiento mejorado: Al agrupar recursos, las arquitecturas centralizadas pueden aumentar considerablemente la potencia de procesamiento y ofrecer un procesamiento de datos de alta velocidad para algoritmos complejos de conducción autónoma.
  • Seguridad fortalecida: Un único concentrador central simplifica las medidas de seguridad y ofrece una defensa unificada contra las amenazas cibernéticas.
  • Reducción de costos y complejidad: Menos UCE se traducen en menos hardware, cableado y complejidad general, lo que genera ahorros de costos y reducción de peso.

Sin embargo, la centralización también conlleva sus desafíos. Agrupar múltiples funciones dispares en un solo sistema requiere un trabajo de integración preciso. Además, existe la posibilidad de un único punto de fallo, donde un problema con un dispositivo principal o dispositivos agrupados podría afectar seriamente a todo el vehículo. Para protegerse contra este riesgo, es necesario implementar redundancias cuidadosas.

Arquitecturas zonales
Las arquitecturas zonales ofrecen una consolidación matizada. Aquí, cada dominio del vehículo es gestionado por su potente controlador zonal. Estos controladores manejan dominios específicos mientras permanecen interconectados con una UCE central que supervisa todas las funciones del automóvil.

Este modelo presenta diversas ventajas:

  • Diseño modular: Las arquitecturas zonales permiten modularidad y aislamiento de diseño. Cada zona opera de forma independiente, lo que simplifica el desarrollo y el mantenimiento.
  • Escalabilidad a demanda: La adición de nuevas funcionalidades mediante actualizaciones FOTA u otros medios se simplifica porque las actualizaciones pueden dirigirse a zonas particulares.
  • Flexibilidad y tolerancia a fallos: Las zonas independientes mejoran la resistencia del sistema. Las zonas permanecen interconectadas pero aisladas, por lo que un fallo en una zona no afectará el funcionamiento del vehículo completo.
  • Reducción de problemas de cableado: La necesidad de arneses de cables complejos y extensos se reduce al agrupar funcionalidades dentro de controladores zonales.

Sin embargo, este enfoque descentralizado no está exento de ventajas y desventajas. Gestionar el software en plataformas de hardware potencialmente heterogéneas en cada zona introduce complejidad. Debido a que esta arquitectura es jerárquica, con controladores zonales que informan a una UCE de orden superior, las actualizaciones de software también se convierten en un proceso de varios pasos que requiere una coordinación cuidadosa entre las zonas.

Elegir la arquitectura adecuada es una ecuación compleja, que equilibra la eficiencia de la centralización con la flexibilidad de la arquitectura zonal.


Virtualización y contenerización


Si bien las arquitecturas centralizadas y zonales ofrecen caminos emocionantes para la consolidación de UCE, enfrentan un desafío inherente: ejecutar y gestionar numerosas cargas de trabajo de software en menos hardware. Aquí es donde entran en juego la virtualización y la contenerización (Figura 1), que actúan como herramientas potentes para liberar todo el potencial de los SDV.
 


Figura 1: Arquitectura de alojamiento de aplicaciones en entornos de virtualización y contenerización. (Fuente: Autor)

Virtualización: Virtualizar procesadores
En una única plataforma de hardware físico multinúcleo, la tecnología de virtualización puede crear uno o más entornos de ejecución aislados. Estos entornos, llamados máquinas virtuales (VM), pueden asignarse sus propios recursos de cómputo, memoria y E/S, y alojar entornos operativos adicionales que coexisten armoniosamente, pero de manera separada, del software que se ejecuta en otras VM.

En un contexto automotriz, cada máquina virtual puede albergar funciones específicas de subsistemas o dominios, como sistemas de asistencia al conductor, infoentretenimiento o controles del tren motriz. Este aislamiento ofrece varios beneficios:

  • Rendimiento mejorado: La virtualización garantiza una asignación suave de recursos que evita que una aplicación monopolice los recursos o provoque el bloqueo del sistema completo.
  • Implementación flexible: Las VM también pueden servir como entornos aislados que permiten que se creen entornos compatibles con el software en un núcleo de procesador disponible.

Contenerización: Virtualización de sistemas operativos
La contenerización, por otro lado, empaqueta el código de la aplicación, las bibliotecas y las dependencias en unidades portátiles y estandarizadas listas para ser desplegadas sobre sistemas operativos virtualizados. Este enfoque ofrece ventajas adicionales:

  • Eficiencia de recursos: A diferencia de las VM, los contenedores pueden compartir un sistema operativo subyacente, lo que minimiza la huella de recursos y maximiza la utilización del hardware.
  • Portabilidad definitiva: Los contenedores también pueden ser implementados en sistemas operativos virtuales, lo que permite una portabilidad masiva y flexibilidad de diseño, ya que el software puede crearse una vez y ejecutarse prácticamente en cualquier lugar.

En resumen, las máquinas virtuales crean entornos de ejecución aislados, y los contenedores permiten el empaquetado y despliegue eficientes de software dentro de estas máquinas virtuales. Esto abre una gran cantidad de posibilidades en torno a la gestión de la criticidad mixta, incluida la capacidad para que las funciones críticas para la seguridad residan en máquinas virtuales dedicadas, mientras que las aplicaciones menos críticas se ejecutan en otras.

La virtualización y la contenerización pueden aprovecharse para promover aún más las ventajas de la consolidación de las UCE mediante mejoras de la escalabilidad y la flexibilidad, y hacer que agregar y eliminar funcionalidades sea más fácil. Con la virtualización y la contenerización que allanan el camino, el proceso hacia los SDV se vuelve más fluido y eficiente.


Conclusión


A medida que el número de líneas de código en los automóviles aumente hasta un estimado de 500 millones, las arquitecturas tradicionales de UCE distribuidas dejarán de ser viables. Las arquitecturas de UCE centralizadas y zonales ofrecen una promesa como alternativas de próxima generación. Sin embargo, su uso probablemente requiera una inversión en capacidades de virtualización y contenerización que garanticen que las cargas de trabajo de software puedan coexistir y mejorar la velocidad, la portabilidad y la eficiencia de los recursos.

Pero sus efectos van mucho más allá de simplemente mantener las cosas en buen estado. La virtualización y la contenerización están cambiando la forma en que se desarrolla e implementa el software en los vehículos. Como parte de las futuras estrategias de actualización FOTA, permitirán a la industria automotriz despedirse de costosas llamadas a revisión y viajes incómodos al mecánico. Imagine agregar nuevas características, solucionar errores críticos e incluso personalizar su experiencia de conducción a través de actualizaciones FOTA que funcionan sin problemas. Esto se correlaciona directamente con clientes más felices, menos tiempo de inactividad y un flujo constante de ingresos por compras y actualizaciones remotas que ocurren cuando los propietarios ya han retirado su automóvil del concesionario.

Al aprovechar el poder transformador de los diseños centralizados y zonales, podemos hacer que el automóvil sea más que una simple máquina. Se convertirá en una plataforma de innovación dinámica y viva.

 

1 "Global Automotive Supplier Study 2018," Roland Berger, diciembre de 2017, 49, https://www.rolandberger.com/publications/publication_pdf/roland_berger_global_automotive_supplier_study_2018.pdf.