La Mejor Herramienta de Análisis Estático para Desarrollar Software de Vehículos Autónomos

Creado: April 28, 2017
Actualizado: December 8, 2020

 

 

Si fuera así de fácil.

Los diseñadores a menudo se centran en la evaluación comparativa de su recopilador, solo para que sus programas se ralenticen después por consideraciones de seguridad. El uso de un recopilador que tiene características de seguridad integradas, especialmente herramientas de análisis estático, puede hacer que tu programa cumpla rápidamente con la norma ISO 26262. El uso de una herramienta de seguridad con un excelente análisis estático puede ahorrarte tiempo en la depuración, evitar las funciones de corte y permitirte aprovechar al máximo tu recompilador.

¿Alguna vez has estado esquiando o haciendo snowboard? En cada montaña, siempre hay personas que piensan que es una competencia llegar al final de una pista. Volar cuesta abajo a toda velocidad sin técnica es una receta para el desastre. La patrulla de esquí estaría sin trabajo si no fuera por estos tipos que se estrellan y chocan con otros esquiadores. La moraleja de la historia es que cuando te apresuras corres el riesgo de hacerte daño a ti mismo y a los que te rodean. Siempre debes tomarte tu tiempo y usar la técnica adecuada para bajar la montaña de manera segura y conveniente.

Los recopiladores de vehículos autónomos son sorprendentemente similares. Los diseñadores a menudo se centran en la evaluación comparativa de su recopilador, solo para que sus programas se ralenticen después por consideraciones de seguridad. El uso de un recopilador con características de seguridad integradas, especialmente herramientas de análisis estático, puede hacer que tu programa cumpla rápidamente con la norma ISO 26262. El uso de una herramienta de seguridad con un excelente análisis estático puede ahorrarte tiempo en la depuración, evitar las funciones de corte y permitirte aprovechar al máximo tu compilador.

Skier wiping out

No termines como este chico. Crédito editorial: Mitch Gunn / Shutterstock.com 

Ahorra Tiempo en la Depuración

Desde el cambio de unidades de control electrónico (ECU) individuales a ECU integradas, las preocupaciones de seguridad se han vuelto un poco más complicadas. Certificar cada característica al más alto nivel ASIL lleva mucho tiempo. Esto hace que el uso de una unidad de protección de memoria (MPU) sea una opción atractiva para ahorrarte tiempo en el desarrollo. Dicho esto, el mal uso de la MPU puede dar lugar a fuertes repercusiones financieras y legales y puede llevar mucho tiempo solucionarlo manualmente. Una herramienta de análisis estático en línea puede salvarte de perder toneladas de tiempo trabajando a través de violaciones de acceso a MPU.

Como sabes, la mayoría de los desarrolladores se centran primero en la velocidad y en la seguridad. Esto significa que escribes un montón de código y solo te enteras después si cumple con los requisitos de seguridad. Espera demasiado y podrás encontrar tu código lleno de tantas violaciones de seguridad que tomará días solucionarlo. Para ser pro-activo, una herramienta de análisis estático bien asimilada te permitirá cortar las violaciones de MPU de raíz antes de que se conviertan en una avalancha.

Una buena herramienta de análisis estático también mostrará análisis de causa para errores de MPU. El análisis de causa te permitirá eliminar la causa del problema en lugar de perseguir un hilo de errores a través de todo tu programa. Además del análisis de causa, las mejores herramientas de análisis estático te permitirán ejecutar comprobaciones exhaustivas sin hardware. No ahorrarás tiempo si tienes que esperar a que el hardware entre para configurar los casos de prueba. Obtén una herramienta de análisis estático que pueda verificar tu código antes de tener el hardware interno.

MPU on a traffic sign

Precaución: errores de MPU por delante

Reducir Cortes de Funciones

Emplear demasiado tiempo durante la depuración puede hacer que se corten las funciones no esenciales. El tiempo es dinero y ambos son limitados. Si los errores de MPU en tus características tardan demasiado en corregirse, podrían terminar en la tabla de picar. Usar una buena herramienta de análisis estático puede ahorrarte tiempo y dinero. Una estática con comprobación automática de errores lleva el 1% del tiempo que lleva la comprobación manual de errores. Eso se traduce en un 15% de ahorro en la comprobación de errores.

Las herramientas de análisis de causa también pueden ahorrarte segundos y centavos. Si bien es tentador esperar hasta que haya completado tu programa para verificar el cumplimiento de la seguridad; si esperas demasiado, algunos errores pueden estar arraigados en tu código. El análisis de causa puede decirte dónde comenzó el problema y evitar que te pierdas en el bosque persiguiendo un error. Un análisis estático de causa lleva un 95% menos de tiempo para encontrar orígenes de error que una comprobación manual. Eso podría ahorrarte otro 5% en costos de verificación de errores.

Aprovecha al Máximo tus Herramientas

Algunos desarrolladores eligen el recopilador más rápido para su aplicación, y luego se ven obligados a abandonar algunas optimizaciones porque sus herramientas de seguridad de terceros no pueden integrar esas optimizaciones. No tiene sentido comprar esquís súper rápidos si no tienes la habilidad suficiente para usarlos. Una excelente herramienta de análisis estático podrá ayudarte a solucionar cualquier contradicción entre tu software de seguridad y tu recopilador.

Elegir el Desarrollador Adecuado

Si estás pensando comprar un par de esquís en Walmart por $10, es posible que no termines de esquiar entero. Necesitas el equipo adecuado y la técnica adecuada. Una herramienta de análisis estático totalmente equipada te permitirá depurar a medida que avanzas y resolver los principales errores rápidamente. Las herramientas suelen ser tan buenas como la empresa que las fabricó. Es importante saber que tu desarrollador estático es el verdadero negocio. Por eso recomiendo que tu desarrollador tenga al menos una certificación ASPICE L2. Eso garantizará que el desarrollador estará disponible para ayudarte en caso de que tengas algún problema. Sucede que TASKING®, de Altium, recibió recientemente su certificación ASPICE nivel 2.

Como dije anteriormente, la mejor herramienta de análisis estático te permitirá depurar a medida que avanzas, te dará un análisis de la causa, no te hará esperar por el hardware y se integrará bien con tu recopilador. El Comprobador de Seguridad hace todo esto y más.

¿Tienes más preguntas sobre las herramientas de análisis estático? Llama a un experto al.

Echa un vistazo a Altium en acción...

 

Recursos Relacionados

Volver a la Pàgina de Inicio
Thank you, you are now subscribed to updates.