ES2374798T3 - Aparato de control para un vehículo y procedimiento para una actualización de datos para un aparato de control para un vehículo. - Google Patents
Aparato de control para un vehículo y procedimiento para una actualización de datos para un aparato de control para un vehículo. Download PDFInfo
- Publication number
- ES2374798T3 ES2374798T3 ES09780184T ES09780184T ES2374798T3 ES 2374798 T3 ES2374798 T3 ES 2374798T3 ES 09780184 T ES09780184 T ES 09780184T ES 09780184 T ES09780184 T ES 09780184T ES 2374798 T3 ES2374798 T3 ES 2374798T3
- Authority
- ES
- Spain
- Prior art keywords
- data
- memory
- zone
- bootloader
- application program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Aparato de control (SG) para un vehículo (FZ) con: - una primera memoria (ROM), que presenta una primera zona (B1), en la que está previsto un Bootloader (B), y que presenta una segunda zona (B2), en la que está previsto al menos un programa de aplicación (AW), - una segunda memoria (EEPROM) , en la que están previstos primeros datos para el al menos un programa de aplicación (AW), - una interfaz (IF), que acondiciona los segundos datos para una actualización de al menos una parte de los primeros datos, - un circuito de control (mC), que llama el Bootloader (B) para la actualización de la al menos una parte de los primeros datos a través de los segundos datos, de manera que el Bootloader (B) toma desde la segunda zona (B2) de la primera memoria (ROM) terceros datos, que indican en qué tercera zona (S1 a S4) de la segunda memoria (EEPROM) deben escribirse los segundos datos para la actualización.
Description
Aparato de control para un vehículo y procedimiento para una actualización de datos para un aparato de control para un vehículo
Estado de la técnica
La invención se refiere a un aparato de control para un vehículo y a un procedimiento para una actualización de datos para un aparato de control para un vehículo del tipo de las reivindicaciones independientes de la patente.
Ya se conoce a partir del documento EP 1 701 262 B1 un procedimiento y un dispositivo para reescribir un sector con software Bootloader en una memoria de reconductores no volátil, que se puede borrar por sectores. En este caso, se indica que en un primer sector de una memoria no volátil estás previsto para un controlador un llamado código Bootloader. Durante el arranque se carga este software Bootloader y se ocupa de la instalación del hardware del controlador, por ejemplo de las interfaces, de manera que un programa de aplicación puede ser utilizado por estas interfaces.
Publicación de la invención
El aparato de control de acuerdo con la invención para un vehículo o bien el procedimiento de acuerdo con la invención para una actualización de datos para un aparato de control para un vehículo con las características de las reivindicaciones independientes de la patente tienen, en cambio, la ventaja de que ahora existe una alta flexibilidad en la sección de zonas de una memoria, en las que se actualizan datos, de manera que los datos son utilizados por un programa de aplicación durante su ejecución. Esto se consigue porque los datos, que indican en qué zonas deben actualizarse los datos, están depositados con el programa de aplicación en la misma zona de otra memoria. De esta manera, a través de una actualización de la aplicación se puede realizar también una actualización de estos datos. A través de esta flexibilidad es posible que no haya que reservar ningún espacio de la memoria para un almacenamiento intermedio, puesto que se pueden seleccionar zonas discrecionales en la memoria, en la que se actualizan los datos. Además, solamente se pueden realizar aquellos procesos de actualización, que actualizar solamente de forma selectiva, lo que también se necesita. En particular, el objeto de las reivindicaciones independientes de la patente posibilita que solamente la segunda memoria sea actualizada con los datos para la aplicación, habitualmente una EEPROM, con respecto a sus datos.
Esto posibilita que cuando están montados ya aparatos de control en vehículos, se puedan realizar posteriormente mejoras de los datos, por ejemplo a través de una estancia en el taller o a través de un mantenimiento remoto. A través de la presente invención se da una gran flexibilidad. A través de la selección flexible de zonas de direcciones en la segunda memoria, es decir, la EEPROM, esta zona de la memoria se puede aprovechar de manera óptima. Como ya se ha descrito, no es necesaria una reserva adicional de zona libre de la memoria. A través de esta flexibilidad es posible actualizar incluso zonas de datos selectivas inesperadas en la segunda memoria. Se posibilita cualquier corrección concebible de este contenido de la memoria.
De esta manera es posible un aparato de control más económico y más flexible y un procedimiento correspondiente.
Un aparato de control es en el presente caso un aparato eléctrico, que procesa señales de sensor y en función de ellas genera señales permanentes. En el presente caso se puede tratar en particular de un aparato de control de airbag, un aparato de control para una regulación dinámica de la marcha o un aparato de control del motor. Pero también son posibles otros aparatos de control dentro o fuera de un vehículo.
La primera memoria presenta a primera zona, en la que está previsto el Bootloader. Esta primera zona está protegida normalmente contra una actualización, para posibilitar siempre de nuevo una nueva programación de las memorias habituales. El instrumento para esta nueva programación o actualización de datos es el Bootloader, por lo tanto un software. Esta primera memoria está configurada, por ejemplo, como una ROM (Memoria Sólo de Lectura) y en este caso está realizada como una memoria de semiconductores no volátil. No obstante, también son posibles todas las demás tecnologías de memorias adecuadas. Esta primera memoria presenta una segunda zona, que se diferencia de la primera zona y en esta zona está memorizado al menos un programa de aplicación. Este programa de aplicación es, por ejemplo, en el aparato de control de airbag un algoritmo de airbag. En otro aparato de control se puede tratar de otros programas como una regulación dinámica de la marcha o un control de motor o se puede tratar del funcionamiento de un aparato de comunicaciones. En el presente caso son posibles otras posibilidades de aplicación.
La segunda zona de esta primera memoria se puede actualizar con datos nuevos. A tal fin, en el caso de memorias de semiconductores no volátiles, se puede utilizar la llamada memorización Flash. En memorias Flash solamente se pueden borrar con frecuencia una vez sectores enteros. De ahí procede también el nombre de Flash, que recuerda el borrado de la memoria que tiene lugar en bloques. También la memorización tiene lugar en bloques mayores.
En el presente caso, es característico de la invención que en el programa de aplicación están registrados los datos
que indican al Bootloader en qué zona de otra memoria, por ejemplo de una EEPROM, deben registrarse los datos que deben actualizarse. Como se deduce a partir de las reivindicaciones dependientes, también se puede actualizar el propio programa de aplicación y, por lo tanto, estos datos, que indican por indización dónde deben actualizarse los datos en la otra memoria. No obstante, estos datos están presentes en la primera zona de la primera memoria y, por lo tanto, no son flexibles.
La segunda memoria se puede actualizar de la misma manera, por ejemplo, a través de una memorización Flash, en el presente caso se trata con preferencia de una EEPROM. En esta segunda memoria se registran los primeros datos, que el programa de aplicación necesita para su funcionamiento. En el caso de un algoritmo de airbag, se trata, por ejemplo, de los parámetros del algoritmo o también de características de equipamiento, es decir, qué hardware está presente en este caso, datos de diagnosis, números de variantes, designaciones de la versión, etc. Estos datos pueden estar previstos entonces en esta segunda memoria en las llamadas secciones, que comprenden datos coherentes.
La primera y la segunda memoria pueden estar realizadas en diferentes módulos de semiconductores o en módulos de semiconductores comunes. Solamente es necesario que las dos memorias estén separadas lógicamente una de la otra.
En la interfaz se trata, por ejemplo, se hardware y/o software, que acondiciona los datos, que son alimentados desde el exterior, para la actualización, al menos de una parte de los primeros datos. Es decir, que no todos los primeros datos en la segunda memoria, es decir, EEPROM, deben actualizarse sino que se puede actualizar también sólo una parte de ellos o partes, que están separadas unas de las otras. La interfaz puede estar configurada en este caso, por ejemplo, por decirlo así, como transceptor CAN u otra interfaz de transmisión de datos. La interfaz transmite entonces estos datos, por ejemplo, para un procesador, que en el presente caso se designa como circuito de control.
El circuito de control puede ser de todas las formas posibles de procesadores, en particular también microcontroladores, que presentan al menos uno o también varios núcleos de cálculo. El circuito de control llama este Bootloader al principio para realizar la actualización de al menos una parte de los primeros datos, cuando los datos son acondicionados desde el exterior a través de la interfaz, a través de estos segundos datos, que son acondicionados desde el exterior. La actualización del circuito de control se asegura la mayoría de las veces a través de una interfaz de control en forma de una zona protegida en la EEPROM o en una zona RAM no borrable.
El Bootloader, que está definido ya, por ejemplo en el estado de la técnica, es un programa que lleva a cabo al menos esta actualización y está previsto en la primera zona de memoria de la primera memoria. A tal fin, el Bootloader recibe desde la segunda zona de la primera memoria, es decir, desde el programa de aplicación, los terceros datos, que indican en qué tercera zona de la segunda memoria deben escribirse los segundos datos para una actualización. Esta tercera zona en la segunda memoria, es decir, en la EEPROM puede ser coherente o puede comprender también varias zonas parciales. En el caso extremo, toda la zona de la segunda memoria puede ser común. En este caso, una actualización lleva a cabo una sobre-escritura de los datos antiguos a través de los datos nuevos, que han sido preparados desde el exterior.
A través de las memorias y desarrollos indicados en las reivindicaciones dependientes son posibles mejoras ventajosas del aparato de control indicado en las reivindicaciones independientes de la patente para un vehículo o bien para una actualización de datos para un aparato de control para un vehículo.
Es ventajoso que los terceros datos indiquen al menos una primera zona coherente de direcciones de la memoria en la segunda memoria. Como se ha indicado anteriormente, los terceros datos indican dónde deben escribirse los datos nuevos en la segunda memoria. Esta escritura puede significar en este caso borrar y escribir de nuevo. Esta zona coherente de la memoria posibilita la definición de una zona lógicamente coherente de direcciones de la memoria. Esto reduce la incidencia de los fallos en comparación con la utilización de direcciones directas de la memoria. Las direcciones de la memoria direccional en este caso celdas individuales, por ejemplo, de una memoria de semiconductores.
Además, es ventajoso que el Bootloader actualice con los segundos datos, es decir, los datos de actualización, el al menos un programa de aplicación y, por lo tanto, los terceros datos. Ya se ha descrito anteriormente que el programa de aplicación, en sí por ejemplo el algoritmo de airbag. Puede ser actualizado a través del modo de proceder descrito, estando previstas, sin embargo, entonces las zonas de la memoria, que deben sobrescribirse en este caso, en la primera zona de la primera memoria, donde está dispuesto también el Bootloader, por ejemplo en forma de una lista o matriz. Es decir, que esta primera zona de la primera memoria ROM está prevista de forma duradera y no se puede sobrescribir. No obstante, de esta manera ahora es posible actualizar solamente los terceros datos a través del método descrito. De esta manera entonces las zonas de la dirección en la segunda memoria EEPROM se pueden dividir de nuevo, para corresponder con ello de manera flexible a las nuevas circunstancias. Por ejemplo, si se comprueba que una cierta zona de la memoria en la segunda memoria EEPROM deben contener un conjunto de datos nuevo, pero esta zona de la memoria no estaba descrita o bien no estaba
indexada hasta ahora en el programa de aplicación con respecto a su zona de direcciones, entonces esto se puede reparar a través de la presente medida, de manera que ahora es posible hacer reactivar de forma selectiva cualquier zona de la dirección en la segunda memoria.
Además, es ventajoso que en la primera zona de la primera memoria estén previstos cuartos datos, que indican al menos una segunda zona coherente de direcciones de memoria en la primera memoria. Ya se ha descrito anteriormente, que en la primera zona la zona de direcciones está fijada en la primera memoria en la segunda zona, en la que debe actualizarse el programa de aplicación, a través de los segundos datos.
Además, es ventajoso que el Bootloader presente un módulo de verificación de la consistencia, en el que el módulo de verificación de la consistencia verifica al menos una parte de los primeros datos, que están reservados en la segunda memoria, en las primeras zonas de direcciones respectivas, para determinar si el al menos un programa de aplicación espera esta parte de los primeros datos en estas zonas de direcciones respectivas. La verificación de la consistencia es necesaria para que se puedan determinar procesos de carga erróneos en la segunda memoria antes de una utilización del programa de aplicación para evitar una función errónea, por ejemplo, también de un programa de aplicación sensible. Esto tiene una importancia máxima, por ejemplo, en el caso de un algoritmo de activación de un airbag. En este caso entonces el módulo de verificación de la consistencia puede verificar al menos una parte de estos primeros datos en la segunda memoria, para determinar si estos primeros datos han sido memorizados, respectivamente en las zonas correctas de la memoria. Esto se puede realizar a través de la verificación de una marca, por ejemplo al comienzo de las zonas de direcciones respectivas y/o de una suma de prueba, a cuyo fin, por ejemplo, se puede utilizar el método CRC conocido y/o se puede investigar una dirección de formato en las primeras zonas de direcciones respectivas. En la verificación del formato se puede verificar, por ejemplo, una longitud de los datos memorizados, que se conoce en el programa de aplicación. De la misma manera se pueden utilizar informaciones de diseño y seguros CRC, que aprovecha la aplicación, también en el Bootloader para la verificación de la consistencia. En las informaciones de diseño se introduce típicamente una ID de diseño, que se eleva en número cada vez que se modifica el formato de una zona. Solamente es posible un retorno a la aplicación cuando esta verificación es positiva.
De manera ventajosa, como ya se ha indicado anteriormente, la primera memoria es una llamada ROM y la segunda memoria es una EEPROM, que están configuradas ambas con preferencia como memorias de semiconductores no volátiles.
Los ejemplos de realización de la invención se representan en el dibujo y se explican en detalle en la siguiente descripción.
La figura 1 muestra un diagrama de bloques del aparato de control de acuerdo con la invención con componentes conectados.
La figura 2 muestra un diagrama de bloques sobre el procedimiento de acuerdo con la invención.
La figura 3 muestra un primer diagrama de flujo del procedimiento de acuerdo con la invención.
La figura 4 muestra un segundo diagrama de flujo del procedimiento de acuerdo con la invención, y
La figura 5 muestra un tercer diagrama de flujo del procedimiento de acuerdo con la invención.
La figura 1 muestra en un diagrama de bloques el aparato de control SG de acuerdo con la invención en un vehículo FZ con un componente conectado, un aparato de diagnosis D, que se conecta desde fuera del vehículo FZ a través de un bus-CAN CAN. En el presente caso, solamente se describen los componentes del aparato de control y de su periferia conectada que son necesarios para la comprensión de la invención. Otros componentes necesarios para el funcionamiento del aparato de control SG han sido omitidos para mayor claridad.
El aparato de diagnosis D, por ejemplo un ordenador en un taller o también un ordenador a través de un mantenimiento remoto, en el que, por ejemplo, a través de una conexión por radio se establece una comunicación con el bus-CAN CAN, transmite datos de actualización hacia el aparato de control SG y en este caso hacia un transceptor-CAN IF como la interfaz. El transceptor-CAN IF formatea los datos para un formato de transmisión adecuado en el aparato de control para transmitirlos al microcontrolador µC. El microcontrolador µC reconoce los datos nuevos, que están previstos para una actualización de datos en la ROM bien en la otra memoria EEPROM. Estos datos son reproducidos y verificados en su ejecución. Adicionalmente se introduce una verificación de la consistencia para asegurar que zonas, que no han sido descritas explícitamente, están todavía en orden y están adaptadas para la aplicación. Esto debe cumplirse para que la aplicación se pueda iniciar de nuevo.
El microcontrolador µC llama el Bootloader para la actualización desde la primera zona B1 no borrable de la primera memoria ROM y lo carga, por ejemplo, en la memoria de trabajo RAM. El Bootloader actualiza los contenidos de la primera memoria ROM con los datos nuevos, tomando para la actualización de la primera memoria ROM desde la primera zona B1 las zonas de la memoria, que se pueden actualizar, a saber, la zona B2, en la que está dispuesto el
programa de aplicación y también los datos, que indican qué zonas deben actualizarse en la segunda memoria EEPROM.
Después de la actualización de la primera memoria ROM se actualiza ahora la segunda memoria EEPROM. A tal fin, el Bootloader toma desde la segunda zona B2 las zonas de la memoria que deben actualizarse en la segunda memoria EEPROM. Por ejemplo, en el presente caso se representan cuatro secciones S1, S2, S3 y S4 de la segunda memoria EEPROM, que se pueden actualizar en bloque según los datos de la segunda zona B2 de la primera memoria EOM. El Bootloader actualiza, por lo tanto, los datos en la segunda memoria EEPROM según los datos de direcciones desde la segunda zona B2. La segunda memoria EEPROM presenta los datos, que necesita el programa de aplicación en la zona B2 para su ejecución. Estos datos son, por ejemplo, parámetros del algoritmo, características del equipamiento, números de variantes, etc.
Al término de esta actualización, el Bootloader lleva a cabo ahora una verificación de la consistencia de los datos actualizados en la primera memoria ROM y en la segunda memoria EEPROM. Esta verificación de la consistencia se puede realizar a través de medidas individuales o a través de una combinación de las siguientes medidas:
- 1.
- Verificación de una marca. En este caso, se lee y se verifica una marca, que está dispuesta al comienzo de cada zona de la memoria S1, S2, S3 y S4 para determinar si esta marca se espera en este lugar de la memoria. Estos datos relacionados con si se espera esta marca, están contenidos en la segunda zona de memoria de la primera memoria ROM. Esta verificación de la consistencia se puede realizar también para la segunda zona B2 de la primera memoria ROM. Entonces estos datos están contenidos en la primera zona y tienen aproximadamente un byte de largo.
- 2.
- Verificación de la suma de control a través de una llamada Verificación de Redundancia Cíclica (CRC), que se puede realizar para verificar la consistencia de los datos en las zonas individuales S1, S2, S3 y S4 o bien en la segunda zona B2. Las CRCs son verificadas de forma explícita a través de un ciclo Flash. Además, se pueden verificar todas las CRCs como verificación final.
- 3.
- Verificación del formato.
Además, es posible verificar la longitud de las zonas individuales de la memoria S1, S2, S3 y S4, de manera que estas longitudes están contenidas entonces en la segunda zona de la primera memoria ROM. Esto se puede realizar de manera similar para la segunda zona de memoria B2 de la memoria ROM. Entonces las longitudes están contenidas en la primera zona de la memoria B1.
Si esta verificación de la consistencia se realiza con éxito, entonces se puede comenzar con la ejecución del programa de aplicación.
La figura 2 muestra en un diagrama de bloques la ejecución del programa de acuerdo con la invención y la disposición de los datos correspondientes. La ROM presenta la primera zona B1 y la segunda zona B2. En la segunda zona B2 está contenido el programa de aplicación AW. De la misma manera, en el programa de aplicación AW están contenidos los datos I2, que indican las zonas de la memoria, por lo tanto la indización en la segunda memoria EEPROM, a saber, S1, S2, S3 y S4. En la primera zona de la memoria B1 está contenida la indización I1 para la segunda zona de la memoria B2 y de la misma manera el Bootloader B. Se pueden prever otros programas. Puesto que la segunda zona de la memoria B2 se puede actualizar, se puede actualizar también la indización IC para definir de esta manera nuevas zonas de memoria en la EEPROM, que deben actualizarse.
Las zonas individuales de la memoria B1, B2, B3 y B4 comienzan con las llamadas IDs de diseño, que sirven como marca. Estas IDs de diseño, que tienen normalmente un byte de largo, indican de qué se trata en este caso en una zona de la memoria. Esto se puede utilizar entonces posteriormente en la verificación de la consistencia. Una zona individual de la memoria puede presentar una longitud diferente, por ejemplo 10 bytes. Además, es posible depositar también una lista de dependencias, que indica qué sección de la modificación del formato a qué secciones S1, S2, S2 y S4 se refiere.
La figura 3 muestra en un diagrama de flujo el procedimiento de acuerdo con la invención. De acuerdo con la etapa del procedimiento 300 se importan los datos nuevos a través de la interfaz IF. El microcontrolador llama a continuación en la etapa del procedimiento 301 el Bootloader para poder realizar la actualización con estos datos. En la etapa del procedimiento 302, el Bootloader carga a tal fin desde la ROM y, en concreto, de la segunda zona de la memoria B2, la indización para los datos nuevos en la segunda memoria EEPROM. En la etapa del procedimiento 303 se lleva a cabo entonces la actualización de las zonas indexadas con los nuevos datos en la segunda memoria EEPROM.
La figura 4 muestra otro diagrama de flujo del procedimiento de acuerdo con la invención. En la etapa del procedimiento 400 se inicia la verificación de la consistencia. Esta verificación de la consistencia se realiza después de la actualización, como se indica en la figura 3. En la etapa del procedimiento 401 se verifica la marca para determinar si esta marca se espera en este lugar de la memoria. Si éste no es el caso, se salta a la etapa del procedimiento 405 y se emite un error. Entonces no se puede iniciar de nuevo el programa de aplicación.
Si se ha reconocido la marca, se verifica en la etapa del procedimiento 402 la suma de control. Si la prueba de la suma de control es errónea, se salta a la etapa del procedimiento 405. Si se pasa la prueba de la suma de control, se salta a la etapa del procedimiento 403. Aquí se verifica el formato, por ejemplo la longitud de la zona existente de
5 la memoria, que está definida por la marca. Si no se pasa esta prueba, se salta a la etapa del procedimiento 405. Si se ha pasado la prueba del formato, se salta a la etapa del procedimiento 404 y se establece que existe la consistencia, de manera que ahora se puede iniciar el programa de aplicación AW.
La figura 5 muestra otro diagrama de flujo del procedimiento de acuerdo con la invención. En la etapa del procedimiento 500 se importan datos nuevos a través de la interfaz IF. Continuación se realiza, como se ha indicado
10 anteriormente, la llamada del Bootloader. En la etapa del procedimiento 502 se carga la indización desde la ROM y, en concreto, ahora desde la primera zona, para poder realizar los nuevos datos para la actualización de la segunda zona, por lo tanto, del programa de aplicación y de la indización para la segunda memoria. Esta actualización se realiza en la etapa del procedimiento 503.
En la etapa del procedimiento 504, el Bootloader toma desde la segunda zona de la primera memoria, es decir,
15 desde la ROM, la indización para la actualización de la segunda memoria, por lo tanto de la EEPROM. En la etapa del procedimiento 505 se realiza la actualización de estas zonas indexadas. En la etapa del procedimiento 506 se realiza entonces la verificación de la consistencia, como se ha representado anteriormente.
Claims (7)
- REIVINDICACIONES1.- Aparato de control (SG) para un vehículo (FZ) con:
- -
- una primera memoria (ROM), que presenta una primera zona (B1), en la que está previsto un Bootloader
5 (B), y que presenta una segunda zona (B2), en la que está previsto al menos un programa de aplicación (AW),- -
- una segunda memoria (EEPROM) , en la que están previstos primeros datos para el al menos un programa de aplicación (AW),
- -
- una interfaz (IF), que acondiciona los segundos datos para una actualización de al menos una parte de los 10 primeros datos,
- -
- un circuito de control (µC), que llama el Bootloader (B) para la actualización de la al menos una parte de los primeros datos a través de los segundos datos, de manera que el Bootloader (B) toma desde la segunda zona (B2) de la primera memoria (ROM) terceros datos, que indican en qué tercera zona (S1 a S4) de la segunda memoria (EEPROM) deben escribirse los segundos datos para la actualización.
15 2.- Aparato de control de acuerdo con la reivindicación 1, caracterizado porque los terceros datos indican al menos una primera zona coherente de direcciones de memoria en la segunda memoria (EEPROM). - 3.- Aparato de control de acuerdo con la reivindicación 1 ó 2, caracterizado porque el Bootloader (B) actualiza con los segundos datos el al menos un programa de aplicación (AW) y, por lo tanto, los terceros datos.20 4.- Aparato de control de acuerdo con la reivindicación 3, caracterizado porque en la primera zona (B1) de la primera memoria (ROM) están previstos cuartos datos, que indican al menos una segunda zona coherente de las direcciones de la memoria en la primera memoria (ROM).
- 5.- Aparato de control de acuerdo con una de las reivindicaciones anteriores, caracterizado porque el Bootloader (B) presenta un módulo de verificación de la consistencia, de manera que el módulo de verificación de la consistencia25 verifica al menos una parte de los primeros datos en la primera zona respectiva de la memoria para determinar si el al menos un programa de aplicación (AW) espera esta parte de los primeros datos en estas zonas respectivas de direcciones.
- 6.- Aparato de control de acuerdo con la reivindicación 5, caracterizado porque para la verificación se investigan una marca y/o una suma de control y/o un formato en las primeras zonas respectivas de direcciones,30 7.- Aparato de control de acuerdo con una de las reivindicaciones anteriores, caracterizado porque la primera memoria (ROM) es una memoria y la segunda memoria es una EEPROM.
- 8.- Procedimiento para una actualización para un aparato de control para un vehículo con las siguientes etapas del procedimiento:
- -
- preparación de una primera memoria con una primera zona (B1), en la que está previsto un Bootloader (B) y con una segunda zona (B2), en la que está previsto al menos un programa de aplicación (AW),
- -
- preparación de una segunda memoria (EEPROM), en la que están previstos primeros datos pata el al menos un programa de aplicación (AW),
40 -preparación de segundos datos a través de una interfaz (IF) para una actualización de al menos una parte de los primeros datos,- -
- llamada del Bootloader (B) a través de un circuito de control (µC) para la actualización de la al menos una parte de los primeros datos a través de los segundos datos,
- -
- extracción de terceros datos desde la segunda zona (B2) de la primera memoria (ROM) a través del
45 Bootloader (B), de manera que los terceros datos indican en qué tercera zona (S1 a S4) de la segunda memoria (EEPROM) deben escribirse los segundos datos para la actualización. - 9.- Procedimiento de acuerdo con la reivindicación 8, caracterizado porque los terceros datos indican al menos una primera zona coherente de direcciones de la memoria en la segunda memoria (EEPROM).
- 10.- Procedimiento de acuerdo con la reivindicación 8 ó 9, caracterizado porque el Bootloader (B) actualiza los 50 segundos datos el al menos un programa de aplicación (AW) y, por lo tanto los terceros datos.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102008041360 | 2008-08-20 | ||
DE102008041360A DE102008041360A1 (de) | 2008-08-20 | 2008-08-20 | Steuergerät für ein Fahrzeug und Verfahren für eine Datenaktualisierung für ein Steuergerät für ein Fahrzeug |
PCT/EP2009/058503 WO2010020465A1 (de) | 2008-08-20 | 2009-07-06 | Steuergerät für ein fahrzeug und verfahren für eine datenaktualisierung für ein steuergerät für ein fahrzeug |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2374798T3 true ES2374798T3 (es) | 2012-02-22 |
Family
ID=41543676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES09780184T Active ES2374798T3 (es) | 2008-08-20 | 2009-07-06 | Aparato de control para un vehículo y procedimiento para una actualización de datos para un aparato de control para un vehículo. |
Country Status (7)
Country | Link |
---|---|
US (1) | US8412921B2 (es) |
EP (1) | EP2318920B1 (es) |
CN (1) | CN102124447B (es) |
AT (1) | ATE532132T1 (es) |
DE (1) | DE102008041360A1 (es) |
ES (1) | ES2374798T3 (es) |
WO (1) | WO2010020465A1 (es) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013220523B4 (de) | 2013-10-11 | 2023-05-25 | Continental Automotive Technologies GmbH | Verfahren zum Aktualisieren einer Betriebsfunktion eines Sensors und ein Sensormodul |
DE102014208609A1 (de) * | 2014-05-08 | 2015-11-26 | Robert Bosch Gmbh | Refresh eines Speicherbereichs einer nichtflüchtigen Speichereinheit |
JP6227794B2 (ja) * | 2014-09-26 | 2017-11-08 | 日立オートモティブシステムズ株式会社 | 車両制御装置、リプログラミングシステム |
CN104898637B (zh) * | 2015-03-27 | 2017-11-10 | 北京经纬恒润科技有限公司 | 一种汽车控制器的自刷新方法及*** |
CN106200423B (zh) * | 2015-05-06 | 2018-08-21 | 上海汽车集团股份有限公司 | 零件的控制器的可变参数初始化方法及装置 |
DE102015120314A1 (de) * | 2015-11-24 | 2017-05-24 | Pilz Gmbh & Co. Kg | Verfahren zum Programmieren einer Sicherheitssteuerung |
JP6754622B2 (ja) * | 2016-06-13 | 2020-09-16 | クラリオン株式会社 | ソフトウェア更新装置およびソフトウェア更新システム |
CN106250196A (zh) * | 2016-08-12 | 2016-12-21 | 上海金脉电子科技有限公司 | 通过can通讯更新车载启动加载程序的方法 |
DE102016013669A1 (de) | 2016-11-16 | 2017-05-24 | Daimler Ag | Verfahren zum Betrieb eines Datenkommunikationssystems |
DE102016224198A1 (de) | 2016-12-06 | 2018-06-07 | Audi Ag | Abgesichertes Kommunikationsprotokoll für sicherheitsrelevante Funktionen eines Steuergeräts |
DE102017209468A1 (de) | 2017-06-06 | 2018-12-06 | Robert Bosch Gmbh | Verfahren zum Zurücksetzen einer Software eines Fahrzeugsteuergeräts eines Fahrzeugs in einen ursprünglichen Zustand |
CN109094506B (zh) * | 2017-06-20 | 2021-04-23 | 大陆汽车电子(连云港)有限公司 | 安全气囊控制器的监控装置以及安全气囊*** |
JP7047444B2 (ja) * | 2018-02-16 | 2022-04-05 | トヨタ自動車株式会社 | 車両制御装置、電子制御ユニット、制御方法、制御プログラム、車両、otaマスタ、システム及びセンタ |
US10755506B2 (en) | 2018-06-26 | 2020-08-25 | Ikeyless, Llc | System and method for pairing a key with a vehicle via a vehicle communications port by a dongle |
DE102018217969A1 (de) | 2018-10-19 | 2020-04-23 | Robert Bosch Gmbh | Recheneinrichtung und Betriebsverfahren hierfür |
CN109857426A (zh) * | 2018-12-27 | 2019-06-07 | 百度在线网络技术(北京)有限公司 | Bootloader程序更新方法、装置、电子设备及存储介质 |
WO2020170407A1 (ja) * | 2019-02-22 | 2020-08-27 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
GB2582000A (en) * | 2019-03-07 | 2020-09-09 | Delphi Tech Ip Ltd | Automotive bootloader |
JP7128763B2 (ja) * | 2019-03-18 | 2022-08-31 | 日立Astemo株式会社 | 電子制御装置及び制御データの設定方法 |
JP7501545B2 (ja) * | 2022-01-11 | 2024-06-18 | トヨタ自動車株式会社 | 制御システム、および、制御システムの制御方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5210854A (en) * | 1989-06-14 | 1993-05-11 | Digital Equipment Corporation | System for updating program stored in eeprom by storing new version into new location and updating second transfer vector to contain starting address of new version |
DE9313005U1 (de) * | 1993-08-30 | 1995-01-05 | Siemens AG, 80333 München | Elektronische Baugruppe mit wenigstens einer dezentralen Prozessoreinrichtung eines mehrprozessorgesteuerten Systems |
DE4425388B4 (de) | 1994-07-19 | 2005-07-21 | Robert Bosch Gmbh | Steuergerät |
US6040829A (en) * | 1998-05-13 | 2000-03-21 | Croy; Clemens | Personal navigator system |
US7293115B2 (en) * | 2001-02-28 | 2007-11-06 | Sony Corporation | Internet-aware agent for automatically updating applications without executing the application |
US7299463B2 (en) * | 2001-09-28 | 2007-11-20 | Intel Corporation | Method for atomically updating a plurality of files |
DE10251839A1 (de) * | 2002-11-07 | 2004-05-19 | Robert Bosch Gmbh | Verfahren zur sicheren Überprüfung eines Speicherbereiches eines Mikrocontrollers in einem Steuergerät und Steuergerät mit einem geschützten Mikrocontroller |
US6937152B2 (en) * | 2003-04-08 | 2005-08-30 | Shoot The Moon Products Ii, Llc | Wireless interactive doll-houses and playsets therefor |
EP1701262B1 (en) | 2005-03-08 | 2007-12-12 | Robert Bosch Gmbh | Method and device of rewriting a sector storing the bootloader code in a sector erasable semiconductor memory means |
-
2008
- 2008-08-20 DE DE102008041360A patent/DE102008041360A1/de not_active Withdrawn
-
2009
- 2009-07-06 WO PCT/EP2009/058503 patent/WO2010020465A1/de active Application Filing
- 2009-07-06 US US12/737,711 patent/US8412921B2/en active Active
- 2009-07-06 CN CN200980132177.4A patent/CN102124447B/zh active Active
- 2009-07-06 ES ES09780184T patent/ES2374798T3/es active Active
- 2009-07-06 AT AT09780184T patent/ATE532132T1/de active
- 2009-07-06 EP EP09780184A patent/EP2318920B1/de active Active
Also Published As
Publication number | Publication date |
---|---|
ATE532132T1 (de) | 2011-11-15 |
CN102124447B (zh) | 2015-02-25 |
US8412921B2 (en) | 2013-04-02 |
EP2318920A1 (de) | 2011-05-11 |
US20110208956A1 (en) | 2011-08-25 |
CN102124447A (zh) | 2011-07-13 |
EP2318920B1 (de) | 2011-11-02 |
WO2010020465A1 (de) | 2010-02-25 |
DE102008041360A1 (de) | 2010-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2374798T3 (es) | Aparato de control para un vehículo y procedimiento para una actualización de datos para un aparato de control para un vehículo. | |
JP3726663B2 (ja) | 電子制御装置の制御データ記憶装置 | |
US8694855B1 (en) | Error correction code technique for improving read stress endurance | |
US8176387B2 (en) | Error detection control system | |
US8140216B2 (en) | Method of detecting manipulation of a programmable memory device of a digital controller | |
US20050013154A1 (en) | Non-volatile storage device control method | |
US7404028B2 (en) | ECU identification retention across reprogramming events | |
US7450436B2 (en) | Device recoverable purge for flash storage device | |
US20060285398A1 (en) | Semiconductor device | |
WO2009078285A1 (ja) | 無線端末、無線端末の不揮発性メモリ、および診断情報のフェイルセーフ保存方法 | |
JP4880105B2 (ja) | 制御装置のメモリ機能保護方法及び制御装置 | |
US9142301B2 (en) | Data writing method and system | |
US20080140920A1 (en) | Microcomputer for flash memory rewriting | |
JP2000516367A (ja) | メモリプログラミング可能な制御部をオーバーライトから保護するための方法 | |
CN101533376B (zh) | 保护安全关键变量 | |
US11573857B2 (en) | Method for the secured storing of a data element in an external memory and interface module | |
US20100083073A1 (en) | Data processing apparatus, memory controlling circuit, and memory controlling method | |
US6973530B2 (en) | Method for writing and erasing a non-volatile memory area | |
US20070101049A1 (en) | Redundant purge for flash storage device | |
JP2006063939A (ja) | プログラム書き換え可能な電子制御装置 | |
US20230252153A1 (en) | Electronic control device and updating method for control software | |
ES2371017T3 (es) | Procedimiento y aparato de control para el funcionamiento de una memoria no volátil, en particular para el empleo en automóviles. | |
US20220027238A1 (en) | Method for the secured storing of a data element to be stored by a computer program in an external memory | |
CN113094067A (zh) | Io模块的固件更新方法及io模块 | |
CN113961381A (zh) | 用于将要由计算机程序存储的数据元素安全存储在外部存储器中的方法 |