CN103339603B - 计算机重新编程方法、数据存储介质和机动车辆计算机 - Google Patents

计算机重新编程方法、数据存储介质和机动车辆计算机 Download PDF

Info

Publication number
CN103339603B
CN103339603B CN201280008130.9A CN201280008130A CN103339603B CN 103339603 B CN103339603 B CN 103339603B CN 201280008130 A CN201280008130 A CN 201280008130A CN 103339603 B CN103339603 B CN 103339603B
Authority
CN
China
Prior art keywords
software
computer
software part
memory
task
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
Application number
CN201280008130.9A
Other languages
English (en)
Other versions
CN103339603A (zh
Inventor
R.拉富恩特
J-C.塞吉
G.席尔姆贝克
A.格贝尔
J.库尔策
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vitesco Technologies GmbH
Original Assignee
Continental Automotive GmbH
Continental Automotive France SAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Continental Automotive GmbH, Continental Automotive France SAS filed Critical Continental Automotive GmbH
Publication of CN103339603A publication Critical patent/CN103339603A/zh
Application granted granted Critical
Publication of CN103339603B publication Critical patent/CN103339603B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44573Execute-in-place [XIP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种通过使用可重写非易失性存储器(104)中存储的重新编程软件修改计算机(10)的可重写非易失性存储器(104)的内容来对计算机重新编程的方法(50)。重新编程软件包括任务调度器和已经预先划分成至少两个集合的多个软件部件、即:(i)第一集合,包括将与涉及对可重写非易失性存储器(104)的内容进行修改的操作同时执行的每个软件部件;以及(ii)第二集合,包括重新编程软件的其他软件部件中的全部或者部分。在计算机(10)的重新编程期间,从可重写非易失性存储器(104)执行第二集合的软件部件,并且先在计算机(10)的易失性存储器(106)中复制并且然后从所述易失性存储器执行任务调度器和将从第一集合执行的软件部件。

Description

计算机重新编程方法、数据存储介质和机动车辆计算机
技术领域
本发明涉及机动车辆计算机的领域;更具体地,它涉及一种对机动车辆计算机重新编程的方法、其中存储重新编程软件的数据存储介质和包括这一类型的数据存储介质的机动车辆计算机。
背景技术
以已知方式,机动车辆计算机采用除了一个或者多个微处理器之外还包括电子存储器(闪存、EEPROM、RAM等)、接口外设等的微控制器的形式。
在计算机的非易失性存储器中存储由程序代码中的指令集组成的计算机程序产品或者“软件”,微处理器将执行该指令集以便执行所述计算机的各种任务。作为一般规则,在计算机的非易失性存储器中存储三个主要类型的软件如下:
- 在英语文献中称为“引导软件”的软件,将特别在启动计算机时执行用于初始化计算机,
- 在文献中称为“应用软件”的软件,将执行以便执行计算机的具体任务,
- 在英语文献中也称为“加载器软件”的重新编程软件,用于加载新软件,该新软件旨在于替换计算机的可重写非易失性存储器中存储的软件中的一些或所有软件。
也可以在这一情况下称为“引导加载器”的同一款软件中组合引导软件和重新编程软件。
当前,一般在相同的可重写非易失性电子存储器、例如闪存中存储引导软件、重新编程软件和应用软件。
清楚地,如果微处理器从所述闪存直接执行重新编程软件以便修改应用软件和/或引导软件,则这将施加针对闪存的约束,因为所述处理器将需要对所述闪存的内容的同时读取和写入访问。
然而,当前闪存具有用于同时读取和写入访问的有限容量。存在以有限数量的不同分段组织的已知闪存,在这些分段中有可能具有对一个分段的读取访问而具有对另一分段的写入访问。然而写入和读取两者所需的对闪存的相同分段的同时访问并不少见。
为了克服当前闪存的有限同时读取和写入访问容量,存在一种在执行重新编程软件之前从闪存向易失性电子存储器、诸如RAM存储器复制它的已知方式。
然后以微处理器具有对RAM存储器的内容的读取访问和对闪存的内容的写入访问这样的方式从RAM存储器执行重新编程软件。这使得不必具有对闪存的内容的同时写入和读取访问。
然而难以在机动车辆计算机中实施这一方式,因为一般仅提供有限量的RAM存储器以便保持计算机的成本尽可能低。
发明内容
本发明的目的特别是提供一种实现减少RAM存储器要求的技术方案。
在第一方面中,本发明涉及一种通过修改机动车辆计算机的非易失性可重写存储器的内容来对所述计算机重新编程的方法,借助非易失性可重写存储器中存储的重新编程软件执行所述重新编程,将重新编程软件组织成向为了对计算机重新编程而将执行的任务分配的多个软件部件,这些任务的执行由任务定序器(sequencer)启动。根据本发明,将重新编程软件的软件部件预先划分成至少两个集合、即:
- 第一集合,包括将与对非易失性可重写存储器的内容进行修改的操作同时执行的每个软件部件,
- 第二集合,包括重新编程软件的其他软件部件中的一些或者所有软件部件。
此外,在计算机的重新编程期间:
- 计算机的微处理器从非易失性可重写存储器执行第二集合的软件部件,
- 向计算机的易失性存储器中预先复制并且微处理器从所述易失性存储器执行任务定序器和待执行的第一集合的软件部件。
优选地,在两个不同操作模式中执行任务定序器、两个不同操作模式即:称为“标准模式”的第一操作模式,在第一操作模式中执行第一和第二集合的软件部件;以及在对非易失性可重写存储器的内容进行修改的操作中使用的称为“重新编程模式”的第二操作模式,在第二操作模式中仅执行第一集合的软件部件。
优选地,该方法包括:
- 向计算机的易失性存储器中复制任务定序器和待执行的第一集合的软件部件的步骤,
- 从易失性存储器以标准模式执行任务定序器的步骤,
- 确定是否已经接收用于修改非易失性可重写存储器的内容的请求的步骤,
- 如果已经接收用于修改非易失性可重写存储器的内容的请求,则以重新编程模式执行任务定序器的步骤,在该步骤期间执行在请求中标识的修改操作,
- 确定是否有用于修改非易失性可重写存储器的内容的任何未尽(outstanding)操作的步骤,
- 如果无待执行的用于修改非易失性可重写存储器的内容的更多操作,则该方法返回到以标准模式执行任务定序器的步骤。
优选地,如果已经接收用于对非易失性可重写存储器的内容进行修改的请求,则:
- 在标准模式中运行的任务定序器执行用于虚拟修改的软件部件,用于虚拟修改的软件部件向易失性缓冲存储器中复制请求并且将任务定序器切换到重新编程模式,
- 在重新编程模式中运行的任务定序器执行用于实际修改的软件部件,用于实际修改的软件部件的从易失性缓冲存储器读取请求并且执行在请求中标识的修改操作。
优选地,将第一集合的软件部件组织成多个组,每个都与不同的重新编程上下文关联,所述方法包括检测待执行的重新编程的上下文的步骤,向易失性存储器仅复制与检测到的上下文关联的组的第一集合的软件部件。
优选地,用于任务定序器的配置的具体数据与每个重新编程上下文关联,向易失性存储器复制与检测到的上下文关联的所述配置数据,所述方法包括根据所述配置数据配置任务定序器的标准和重新编程模式的步骤。
优选地,重新编程上下文对应于在重新编程期间将在计算机与外部重新编程设备之间使用的不同通信协议。
在第二方面中,本发明涉及一种非易失性可重写电子存储器类型的数据存储介质,该数据存储介质包括重新编程软件指令,重新编程软件指令在由机动车辆计算机的微处理器执行时按照根据本发明的方法执行所述计算机的重新编程。
在第三方面中,本发明涉及一种包括根据本发明的数据存储介质的机动车辆计算机。
附图说明
将从参照附图的仅通过非限制示例提供的以下描述更清楚地理解本发明,在附图中:
- 图1示出机动车辆计算机10的示意性表示,
- 图2示出示意地表示根据本发明的重新编程方法的一个优选实施例的主要步骤的图,
- 图3示出示意地表示图2中所示重新编程方法的一个变化实施例的图,并且
- 图4a和4b示出与根据本发明的计算机的重新编程相关的所述计算机的闪存和RAM存储器的内容的组织的示意表示。
具体实施方式
图1以高度地示意的方式示出机动车辆计算机10。
以已知方式,机动车辆计算机10包括通过数据总线连接到电子存储器104、106的微处理器102。计算机10包括至少一个非易失性可重写存储器104,在该至少一个非易失性可重写存储器中存储将出于执行向所述计算机分配的各种任务的目的而执行的程序代码指令或者软件。计算机10也包括称为“RAM存储器”的至少一个易失性存储器106,在计算机10的操作期间向该RAM存储器中临时地复制数据。应当注意,在某些实施例中向称为微控制器的单个集成电路中集成微处理器102以及闪存104和RAM存储器106。
在本发明的上下文中,借助非易失性可重写存储器104中存储的重新编程软件修改所述非易失性可重写存储器的内容来对计算机10重新编程。术语“修改非易失性可重写存储器的内容”表示向所述非易失性可重写存储器中写入待执行的新软件和/或擦除所述非易失性可重写存储器的部分。
可以在具有用于同时读取和写入(或者擦除)访问的有限容量的非易失性可重写存储器104的情况中看到本发明的特别有利但非限制性应用,非易失性可重写存储器104诸如闪存。在说明书的剩余部分中,将假设讨论的非易失性可重写存储器104是闪存,但是这一假设并非限制。
重新编程软件特别包括任务定序器和软件部件,所述软件部件的执行由所述任务定序器启动。
任务定序器类似于操作系统。然而在实践中,机动车辆计算机10的重新编程软件的任务定序器可以是简单程序,该简单程序仅以依序和递归执行向为了重新编程计算机10而将执行的任务分配的某一数量的软件部件。
在原理上,根据本发明的重新编程方法50基于将软件部件初步划分成至少两个子集:
- 第一集合,包括将与对闪存104的内容进行修改的操作同时执行的每个软件部件,以及
- 第二集合,包括重新编程软件的其他软件部件中的一些或者所有软件部件。
在计算机10的重新编程期间,重新编程软件由计算机10的微处理器102执行。
从闪存104执行第二集合的软件部件。向计算机10的RAM存储器106中预先进入并且从所述RAM存储器执行任务定序器和待执行的第一集合的软件部件。
应当注意,第一集合的软件部件未必是在对闪存104的内容进行修改的操作期间唯一执行的软件部件。必须在第一集合中放置并且必须从RAM存储器106执行将与对闪存104的内容进行修改的操作同时执行的每个软件部件。
这样将软件部件划分成两个集合——从RAM存储器106仅执行这些集合中的第一集合——使得有可能减少为了执行计算机10的重新编程而将向RAM存储器106中复制的数据量。这是因为向RAM存储器106中复制重新编程软件的软件部件中的仅一些软件部件而不是所有软件部件。
应当注意,在重新编程方法50的某些实施例中,对于从未与向将从RAM存储器106执行的软件部件的第三集合分配的对闪存104的内容进行修改的操作同时执行的某些软件部件而言是理想地可行的。换而言之,即使某些软件部件从未与对闪存104的内容进行修改的操作同时执行,仍然有可能从RAM存储器106执行它们。
优选地,所有软件部件属于第一和第二集合两者。换而言之,第二集合包括未被标识为需要与对闪存104的内容进行修改的操作同时执行的所有软件部件。因此显然最小化向RAM存储器106中暂时复制的数据量并且将该数据量将减少至仅第一集合的软件部件。
在说明书的剩余部分中,将假设所有软件部件属于第一和第二集合两者,但是这一假设并非限制。
优选地,任务定序器包括两个不同操作模式,如下:
- 称为“标准模式”的第一操作模式,在该模式中执行第一和第二集合的软件部件,以及
- 在对闪存104的内容进行修改的操作中使用的称为“重新编程模式”的第二操作模式,在该模式中仅执行第一集合的软件部件。
由于这两个不同操作模式,并且由于从RAM存储器106执行任务定序器本身,所以保证没有对闪存104的用于读取和写入(或者擦除)的同时访问将是必需的。这清楚地是因为如果在对闪存104的内容进行修改的操作在进行中之时以重新编程模式执行任务定序器,则将无需对闪存104的读取访问,因为将从RAM存储器106仅执行第一集合的软件部件。
图2示出重新编程方法50的一个优选实施例的主要步骤,这些步骤使用任务定序器的标准和重新编程模式。
如图2中所示,方法50包括向计算机10的RAM存储器106中复制任务定序器和待执行的第一集合的软件部件的初步步骤52。
随后,方法50包括:
- 从RAM存储器106以标准模式执行任务定序器的步骤54,
- 确定是否已经接收用于修改闪存104的内容的请求的步骤55;如果尚未检测到修改请求(标号550),则方法50继续以标准模式执行任务定序器的步骤54,
- 如果已经检测到修改闪存104的内容的请求(标号552),则执行以重新编程模式执行任务定序器的步骤56,在该步骤期间执行在请求中标识的修改操作,
- 确定是否已经执行对闪存104的内容进行修改的所有操作的步骤57;如果有未尽操作(标号570),则方法50继续以重新编程模式执行任务定序器的步骤56,
- 如果无用于对闪存104的内容进行修改的未尽操作(标号572),则方法50返回到以标准模式执行任务定序器的步骤54。
优选地,重新编程软件包括闪存104中的向软件部件的第二集合中并入的虚拟修改软件部件。
在检测到用于修改闪存104的内容的请求时,任务定序器以标准模式执行虚拟修改软件部件。虚拟修改软件部件未根据在请求中指定的内容修改闪存104的内容(定序任务器在标准模式中,并且所述虚拟修改软件部件属于软件部件的第二集合)。取而代之,虚拟修改软件部件向易失性缓冲存储器、例如RAM存储器106复制请求。
如果已经向易失性缓冲存储器中复制请求,则虚拟修改软件部件向重新编程模式切换任务定序器。
在重新编程模式中,任务定序器特别执行将根据在易失性缓冲存储器(虚拟修改软件部件已经向该易失性缓冲存储器复制所述请求)中存储的请求中指定的内容修改闪存104的内容的实际修改软件部件。如果已经执行在请求中指定的所有修改操作,则实际修改软件部件向标准模式切换任务定序器。
基于一个实际并且另一个虚拟的用于修改闪存104的内容的两个软件部件的使用,这一类型的技术方案具有在防止对闪存104的用于读取和写入(或者擦除)的同时访问方面特别鲁棒的优点。
在方法50的与以上描述的实施例中的任何实施例兼容的变化中,将第一集合的软件部件预先组织成每个都与不同重新编程上下文关联的多个组。
图3示出这一变化的使用的示例,在该示例中,方法50包括与参照图2描述的实施例相同的步骤并且也包括检测待执行的重新编程的上下文的初步步骤51。
在复制待执行的软件部件的步骤52期间,向RAM存储器106仅复制与检测到的上下文关联的组的软件部件。
例如重新编程上下文对应于在重新编程期间将在计算机10与外部设备(在附图中未示出)之间使用的不同通信协议。这是因为一般通过将外部设备连接到计算机10来执行对所述计算机的重新编程。为了交换数据,例如为了向闪存104传送待写入的新软件,外部设备和计算机10必须支持相同通信协议。在实践中,一般需要机动车辆计算机10支持多个不同通信协议(CAN、FlexRay、以太网等),并且因此将软件部件组织成与这些不同通信协议关联的组是有利的。通过防止计算机10使用两个不同通信协议来与两个外部设备同时通信,有可能保证将向RAM存储器106仅复制与待使用的通信协议关联的软件部件的组。因此减少将在RAM存储器106中暂时存储的数据量并且也减少RAM存储器106的必需大小。
在实践中,根据重新编程上下文配置任务定序器可以证实是必要的,因为待执行的任务可以从一个重新编程上下文到另一重新编程上下文变化。
在方法50的与以上描述的实施例中的任何实施例兼容的变化中,用于任务定序器的具体配置数据与每个重新编程上下文关联。与重新变成上下文关联的配置数据可以用来配置任务定序器,使得它执行针对这一上下文而指定的任务。
也从闪存104向RAM存储器106复制与检测到的上下文关联的所述配置数据。在这一情况下,重新编程方法50包括根据RAM存储器106中存储的所述配置数据配置任务定序器的标准和重新编程模式的步骤53。
由于向存储器106仅复制检测到的重新编程上下文的配置数据,所以仍然可以向存储器106的涉及任务定序器的相同地址复制这些数据。因此可以预配置所述任务定序器以从预定义的地址读取控制数据。在另一方面,将理解如果任务定序器将从闪存104读取控制数据,则控制数据在闪存104中的地址将依赖于重新编程上下文并且可以未被预定义。
图4a以高度地示意方式示出闪存104的内容的组织。在这一图中,仅示出一个重新编程软件LR。
如以上提到的那样,将重新编程软件LR组织成任务定序器ST以及软件部件的第一集合E1和第二集合E2。
如以上描述的那样,第一集合E1包括与对闪存104的内容进行修改的操作同时执行的软件部件。
第二集合E2包括软件部件COMP_E2_1和COMP_E2_2。
也将第一集合E1组织成与不同重新编程上下文关联的软件部件的组。在图4a的非限制示例中,考虑两个重新编程上下文,并且这些重新编程上下文与G1和G2分别指示的软件部件的两个组关联。
组G1包括软件部件COMP_G1_1和COMP_G1_2。组G2包括软件部件COMP_G2_1和COMP_G2_2。
也在闪存104中存储重新编程软件LR的其他数据,具体为IC1和IC2分别指示的与两个重新编程上下文关联的配置数据。
图4b示意性地示出RAM存储器106的内容在已经检测到重新编程上下文(在图4b所示示例中,这是与组G1并且与配置数据IC1关联的重新编程上下文)之后并且在已经向RAM存储器106复制任务定序器ST、软件部件的组G1和配置数据IC1之后的组织。
下一步骤然后是用于用RAM存储器106中存储的配置数据IC1配置任务定序器ST的步骤53。
本发明也涉及在其中存储重新编程软件指令的闪存104,这些重新编程软件指令在由机动车辆计算机10的微处理器102执行时通过按照根据本发明的实施例中的任何实施例的重新编程方法50来执行所述计算机的重新编程。本发明也涉及包括这一类型的闪存104的机动车辆计算机10。
以上说明书清楚地示出本发明由于它的不同特征及其优点而实现它的声明的目的。
具体而言,将理解由于向RAM存储器106暂时复制软件部件中的仅一些软件部件(第一集合的软件部件,这些软件部件被标识为将与对闪存104的内容进行修改的操作同时执行的那些软件部件),所以RAM存储器106的必需大小比现有技术技术方案的必需大小小得多。另外,通过使用具有两个操作模式的任务定序器,这些操作模式之一在对闪存104的内容进行修改的操作中使用仅使用RAM存储器106中存储的第一集合的软件部件,所以有可能保证无对闪存104的读取访问将与对闪存104的写入(或者擦除)访问同时发生。

Claims (12)

1.一种通过修改机动车辆计算机(10)的非易失性可重写存储器(104)的内容来对所述计算机重新编程的方法(50),借助所述非易失性可重写存储器(104)中存储的重新编程软件执行所述重新编程,将所述重新编程软件组织成向为了对所述计算机(10)重新编程而将执行的任务分配的多个软件部件,这些任务的执行由任务定序器启动,其特征在于将所述重新编程软件的软件部件预先划分成至少两个集合,即:
- 第一集合,包括将与对所述非易失性可重写存储器(104)的内容进行修改的操作同时执行的每个软件部件,
- 第二集合,包括所述重新编程软件的其他软件部件中的一些或者所有软件部件,
并且其特征在于,在所述计算机(10)的重新编程期间:
- 所述计算机(10)的微处理器(102)从所述非易失性可重写存储器(104)执行所述第二集合的软件部件,
- 向所述计算机(10)的易失性存储器(106)中预先复制并且所述微处理器(102)从所述易失性存储器执行所述任务定序器和待执行的所述第一集合的软件部件,
其特征在于在两个不同操作模式中执行所述任务定序器,即:
- 称为“标准模式”的第一操作模式,在所述第一操作模式中执行所述第一和第二集合的软件部件,
- 在对所述非易失性可重写存储器(104)的内容进行修改的操作中使用的称为“重新编程模式”的第二操作模式,在所述第二操作模式中仅执行所述第一集合的所述软件部件。
2.如权利要求1所述的方法(50),其特征在于其包括:
- 向所述计算机(10)的所述易失性存储器(106)中复制所述任务定序器和待执行的所述第一集合的软件部件的步骤(52),
- 从所述易失性存储器(106)以标准模式执行所述任务定序器的步骤(54),
- 确定是否已经接收用于修改所述非易失性可重写存储器(104)的内容的请求的步骤(55),
- 如果已经接收用于修改所述非易失性可重写存储器(104)的内容的请求,则以所述重新编程模式执行所述任务定序器的步骤(56),在所述步骤(56)期间执行在所述请求中指定的修改操作,
- 确定是否有用于修改所述非易失性可重写存储器(104)的内容的任何未尽操作的步骤(57),
- 如果无用于修改所述非易失性可重写存储器(104)的内容的未尽操作,则所述方法返回到以所述标准模式执行所述任务定序器的所述步骤(54)。
3.如权利要求2所述的方法(50),其特征在于如果已经接收用于对非易失性可重写存储器(104)的内容进行修改的请求,则:
- 在标准模式中运行的所述任务定序器执行用于虚拟修改的软件部件,所述用于虚拟修改的软件部件向易失性缓冲存储器中复制请求并且向所述重新编程模式切换所述任务定序器,
- 在重新编程模式中运行的所述任务定序器执行用于实际修改的软件部件,所述用于实际修改的软件部件从所述易失性缓冲存储器读取请求并且执行在所述请求中标识的修改操作。
4.如任一前述权利要求所述的方法(50),其特征在于将所述第一集合的软件部件组织在多个组中,每个组与不同的重新编程上下文关联,所述方法包括检测待执行的重新编程的上下文的步骤(51),向所述易失性存储器(106)仅复制与检测到的上下文关联的组的所述第一集合的软件部件。
5.如权利要求4所述的方法(50),其特征在于用于配置所述任务定序器的具体数据与每个重新编程上下文关联,向所述易失性存储器(106)复制(52)与检测到的上下文关联的所述配置数据,所述方法(50)包括根据所述配置数据配置所述任务定序器的标准和重新编程模式的步骤(53)。
6.如权利要求4所述的方法(50),其中所述重新编程上下文对应于在重新编程期间将在所述计算机(10)与外部重新编程设备之间使用的不同通信协议。
7.一种通过修改机动车辆计算机(10)的非易失性可重写存储器(104)的内容来对所述计算机重新编程的设备,借助所述非易失性可重写存储器(104)中存储的重新编程软件执行所述重新编程,将所述重新编程软件组织成向为了对所述计算机(10)重新编程而将执行的任务分配的多个软件部件,这些任务的执行由任务定序器启动,其特征在于将所述重新编程软件的软件部件预先划分成至少两个集合,即:
- 第一集合,包括将与对所述非易失性可重写存储器(104)的内容进行修改的操作同时执行的每个软件部件,
- 第二集合,包括所述重新编程软件的其他软件部件中的一些或者所有软件部件,
并且其特征在于,在所述计算机(10)的重新编程期间:
- 所述计算机(10)的微处理器(102)从所述非易失性可重写存储器(104)执行所述第二集合的软件部件,
- 向所述计算机(10)的易失性存储器(106)中预先复制并且所述微处理器(102)从所述易失性存储器执行所述任务定序器和待执行的所述第一集合的软件部件,
其特征在于在两个不同操作模式中执行所述任务定序器,即:
- 称为“标准模式”的第一操作模式,在所述第一操作模式中执行所述第一和第二集合的软件部件,
- 在对所述非易失性可重写存储器(104)的内容进行修改的操作中使用的称为“重新编程模式”的第二操作模式,在所述第二操作模式中仅执行所述第一集合的所述软件部件。
8.如权利要求7所述的设备,其特征在于其包括:
- 用于向所述计算机(10)的所述易失性存储器(106)中复制所述任务定序器和待执行的所述第一集合的软件部件的装置,
- 用于从所述易失性存储器(106)以标准模式执行所述任务定序器的装置,
- 用于确定是否已经接收用于修改所述非易失性可重写存储器(104)的内容的请求的装置,
- 用于如果已经接收用于修改所述非易失性可重写存储器(104)的内容的请求,则以所述重新编程模式执行所述任务定序器的装置,在此期间执行在所述请求中指定的修改操作,
- 用于确定是否有用于修改所述非易失性可重写存储器(104)的内容的任何未尽操作的装置,
- 用于如果无用于修改所述非易失性可重写存储器(104)的内容的未尽操作,则以所述标准模式执行所述任务定序器的装置。
9.如权利要求8所述的设备,其特征在于如果已经接收用于对非易失性可重写存储器(104)的内容进行修改的请求,则:
- 在标准模式中运行的所述任务定序器执行用于虚拟修改的软件部件,所述用于虚拟修改的软件部件向易失性缓冲存储器中复制请求并且向所述重新编程模式切换所述任务定序器,
- 在重新编程模式中运行的所述任务定序器执行用于实际修改的软件部件,所述用于实际修改的软件部件从所述易失性缓冲存储器读取请求并且执行在所述请求中标识的修改操作。
10.如任一前述权利要求所述的设备,其特征在于将所述第一集合的软件部件组织在多个组中,每个组与不同的重新编程上下文关联,所述设备包括用于检测待执行的重新编程的上下文的装置,向所述易失性存储器(106)仅复制与检测到的上下文关联的组的所述第一集合的软件部件。
11.如权利要求10所述的设备,其特征在于用于配置所述任务定序器的具体数据与每个重新编程上下文关联,向所述易失性存储器(106)复制(52)与检测到的上下文关联的所述配置数据,所述设备包括用于根据所述配置数据配置所述任务定序器的标准和重新编程模式的装置。
12.如权利要求10所述的设备,其中所述重新编程上下文对应于在重新编程期间将在所述计算机(10)与外部重新编程设备之间使用的不同通信协议。
CN201280008130.9A 2011-02-09 2012-02-03 计算机重新编程方法、数据存储介质和机动车辆计算机 Active CN103339603B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1100395A FR2971349B1 (fr) 2011-02-09 2011-02-09 Procede de reprogrammation d'un calculateur, support de memorisation de donnees et calculateur de vehicule automobile
FR11/00395 2011-02-09
PCT/EP2012/000493 WO2012107189A2 (fr) 2011-02-09 2012-02-03 Procede de reprogrammation d'un calculateur, support de memorisation de donnees et calculateur de vehicule automobile

Publications (2)

Publication Number Publication Date
CN103339603A CN103339603A (zh) 2013-10-02
CN103339603B true CN103339603B (zh) 2017-10-13

Family

ID=44314208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280008130.9A Active CN103339603B (zh) 2011-02-09 2012-02-03 计算机重新编程方法、数据存储介质和机动车辆计算机

Country Status (4)

Country Link
US (1) US9223697B2 (zh)
CN (1) CN103339603B (zh)
FR (1) FR2971349B1 (zh)
WO (1) WO2012107189A2 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016200711A1 (de) * 2016-01-20 2017-07-20 Robert Bosch Gmbh Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug
DE102016201769A1 (de) * 2016-01-20 2017-07-20 Robert Bosch Gmbh Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug
US10359971B2 (en) * 2017-07-17 2019-07-23 Hewlett Packard Enterprise Development Lp Storing memory profile data of an application in non-volatile memory
US20220229910A1 (en) * 2021-01-19 2022-07-21 Vitesco Technologies GmbH Automobile method for securing a motor vehicle computer
CN113805817B (zh) * 2021-10-09 2024-09-24 深圳百瑞互联技术有限公司 增强flash存储器随机读写能力的方法、装置、系统及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013405A (zh) * 2005-07-20 2007-08-08 株式会社电装 数据改编方法和系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881327A (en) * 1994-03-23 1999-03-09 Fuji Photo Film Co., Ltd. Camera and input/output device for camera
SE518232C2 (sv) * 1999-03-16 2002-09-10 Wm2M Comm Ab Mobilstation med CPU-minne som gränssnitt mot en mångfald, för mobilstationen, externa applikationer
DE10128305A1 (de) * 2001-06-12 2002-12-19 Giesecke & Devrient Gmbh Steuereinheit
US20040192373A1 (en) * 2002-12-05 2004-09-30 Galetti Ralph R. Method and circuit for initializing non-volatile memory
US7337317B2 (en) * 2003-07-03 2008-02-26 Hand Held Products, Inc. Memory data copying system for devices
SE528566C2 (sv) * 2005-12-13 2006-12-19 Scania Cv Abp Adaptivt farthållarsystem
DE102007059355A1 (de) * 2007-12-10 2009-06-18 Continental Automotive Gmbh Verfahren zum Betreiben eines Steuergerätes und Steuergerät
EP2509334B1 (en) * 2009-11-30 2018-09-12 Sun Patent Trust Communication apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013405A (zh) * 2005-07-20 2007-08-08 株式会社电装 数据改编方法和系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Flexible Flash Solution for Every Job - Open standards enable use of generic tool chains;Andreas Patzer;《http://vector.com/portal/medien/cmc/press/Vector/Flashen_DesignElektronik_200707_PressArticle_EN.pdf》;20080303;第1-8页 *
Volcano Bootloader;Mentor Graphics;《http://s3.mentor.com/public_documents/datasheet/products/vnd/VolcanoBootloader_DS.pdf》;20070101;第1-2页 *
基于飞思卡尔微控制器的CAN Bootloader的实现与应用;刘矗 等;《苏州大学学报(工科版)》;20100430;第30卷(第2期);第57-61页 *

Also Published As

Publication number Publication date
FR2971349B1 (fr) 2015-12-04
US20140025870A1 (en) 2014-01-23
WO2012107189A2 (fr) 2012-08-16
US9223697B2 (en) 2015-12-29
FR2971349A1 (fr) 2012-08-10
CN103339603A (zh) 2013-10-02
WO2012107189A3 (fr) 2012-10-26

Similar Documents

Publication Publication Date Title
JP3892851B2 (ja) メモリカード及び半導体装置
CN104885062B (zh) 使用逻辑到物理映射以与数据存储装置进行直接用户空间通信
US7340581B2 (en) Method of writing data to non-volatile memory
JP4828816B2 (ja) メモリカード、半導体装置、及びメモリカードの制御方法
CN103339603B (zh) 计算机重新编程方法、数据存储介质和机动车辆计算机
US8812776B2 (en) Data writing method, and memory controller and memory storage device using the same
US6370456B2 (en) Method for applying control data for an electronic motor vehicle control unit
CN102999431A (zh) 用于非易失性存储器系统的编织序列计数器
CN104246707A (zh) 存储系统和存储装置
CN101535963A (zh) 具有可编程耐久性的快闪存储器
JP2007199905A (ja) 半導体記憶装置の制御方法
US20120131262A1 (en) Method and Apparatus for EEPROM Emulation for Preventing Data Loss in the Event of a Flash Block Failure
JP4460967B2 (ja) メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
CN101246429B (zh) 将闪存模块用作主存储器的电子系统和相关系统引导方法
CN112992231B (zh) 数据储存装置以及参数改写方法
EP1614034B1 (en) Initialization and update of software and/or firmware in electronic devices
JP2006011533A (ja) メモリカード、半導体装置、及び半導体メモリの制御方法
CN106325764A (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
US7979606B2 (en) Method for storing data
CN112199238B (zh) 存储器固件更新方法、装置、存储介质及电子设备
JP4127307B2 (ja) データ記憶装置、データ処理システム、データ処理方法及びデータ処理装置
CN103176910B (zh) 用于非易失性存储器的数据合并方法、控制器与储存装置
EP4092539B1 (en) Re-partitioning of a flash memory device
CN102880561A (zh) 闪存装置
JP4498341B2 (ja) メモリシステム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221129

Address after: Regensburg, Germany

Patentee after: WeiPai Technology Co.,Ltd.

Patentee after: CONTINENTAL AUTOMOTIVE GmbH

Address before: Toulouse, France

Patentee before: CONTINENTAL AUTOMOTIVE FRANCE

Patentee before: CONTINENTAL AUTOMOTIVE GmbH

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230426

Address after: Regensburg, Germany

Patentee after: WeiPai Technology Co.,Ltd.

Address before: Regensburg, Germany

Patentee before: WeiPai Technology Co.,Ltd.

Patentee before: CONTINENTAL AUTOMOTIVE GmbH

TR01 Transfer of patent right