CN110494845A - 控制装置、程序更新系统、程序更新方法 - Google Patents

控制装置、程序更新系统、程序更新方法 Download PDF

Info

Publication number
CN110494845A
CN110494845A CN201880024460.4A CN201880024460A CN110494845A CN 110494845 A CN110494845 A CN 110494845A CN 201880024460 A CN201880024460 A CN 201880024460A CN 110494845 A CN110494845 A CN 110494845A
Authority
CN
China
Prior art keywords
data
update
program
new
mode
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.)
Granted
Application number
CN201880024460.4A
Other languages
English (en)
Other versions
CN110494845B (zh
Inventor
浦胁浩二
寺冈秀敏
中原章晴
黑泽宪一
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
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 Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Publication of CN110494845A publication Critical patent/CN110494845A/zh
Application granted granted Critical
Publication of CN110494845B publication Critical patent/CN110494845B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3097Grammar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6005Decoder aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Stored Programmes (AREA)

Abstract

控制装置,具备:接收部,接收分发数据,所述分发数据包含具有指定多个更新方式中的某一个的信息的标头、以及压缩后的更新数据;解压部,根据通过所述接收部接收到的所述分发数据来解压所述更新数据;以及恢复部,使用通过所述解压部解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序,所述解压部,基于在所述标头中指定的更新方式,切换解压所述更新数据时的解压方法。

Description

控制装置、程序更新系统、程序更新方法
技术领域
本发明涉及控制装置、程序更新系统以及程序更新方法。
背景技术
在近年的汽车中搭载有各种电子控制装置(ECU:Electronic Control Unit)。各ECU通过执行各种程序、且经由CAN(Controller Area Network:控制器局域网)等的车载网络进行通信,从而实现与汽车的工作有关的各种功能。
以往,作为更新这些ECU的程序的再编程方法,提出有经由CAN向各ECU发送新的程序,并保持在各ECU内的非易失性存储器中。然而,在搭载于汽车的各种ECU中,伴随汽车的多功能化、搭载于汽车的各种传感器的增加等,程序逐渐增大化。对于这样的ECU,存在再编程所需时间(以下称作“再编时间”)变长的问题。
关于ECU的再编时间的缩短,在专利文献1中,研究出根据各ECU能够对应的程序的更新方式的不同、或各ECU的状况,切换在各ECU的再编程中适用的更新方式的方法。作为更新方式,有按一定的大小分割新程序的数据、将分割后的各数据压缩并向ECU发送的“压缩更新方式”,以及将已经在ECU中保存的旧程序与新程序的差分数据压缩并向ECU发送的“差分更新方式”等。在专利文献1的方法中,适用这些更新方式来削减向ECU发送的数据的总量,从而获得缩短ECU的再编时间的效果。
此外,关于ECU的再编时间的缩短,在专利文献2中,也提出有提高发送数据的压缩率的方案。在基于LZ77等所谓的字典式压缩法的数据压缩中,通常,通过扩大用于发现数据流中的已出现的模型而供参照的参照字典的尺寸,来提高数据的压缩率。在专利文献2的方法中,将数据流分割为一系列的块组,将压缩的对象块与该对象块前方的块组的压缩结果作为参照字典来对该对象块进行压缩,从而获得提高压缩率的效果。
现有技术文献
专利文献
专利文献1:日本特开2016-170740号公报
专利文献2:日本专利第4888566号
发明内容
发明所要解决的课题
在接收到压缩数据的装置中,为了将该压缩数据解压,需要在易失性存储器上设置用于暂时保存解压后的数据的解压缓存区。在专利文献2所述的以往的方法中,与该解压缓存区的容量相符地设定压缩时所使用的参照字典的尺寸。然而,在ECU那样搭载于汽车的装置中,通常硬件资源不充裕,能够作为解压缓存区使用的易失性存储器的容量较少。因此,基本不能增大参照字典的尺寸,难以提高压缩率。这样在以往的方法中,如专利文献1那样切换多个更新方式来进行程序更新时,程序更新不够高速化。
用于解决课题的手段
本发明的第1方式的控制装置具备:接收部,接收分发数据,所述分发数据包含具有指定多个更新方式中的某一个的信息的标头、以及压缩后的更新数据;解压部,根据通过所述接收部接收到的所述分发数据来解压所述更新数据;以及恢复部,使用通过所述解压部解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序,所述解压部,基于在所述标头中指定的更新方式,切换解压所述更新数据时的解压方法。
本发明的第2方式的程序更新系统,具备经由网络相互连接的服务器与控制装置,所述服务器具备:数据压缩部,按照多个更新方式中的某一个,生成压缩后的更新数据;以及发送部,经由所述网络向所述控制装置发送分发数据,所述分发数据包含具有指定所述更新数据的生成所使用的更新方式的信息的标头、以及所述更新数据,所述控制装置具备:接收部,接收所述分发数据;解压部,根据通过所述接收部接收到的所述分发数据来解压所述更新数据;以及恢复部,使用通过所述解压部解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序,所述解压部基于在所述标头中指定的更新方式,切换解压所述更新数据时的解压方法。
本发明的第3方式的程序更新方法是更新控制装置的程序,通过所述控制装置接收分发数据,所述分发数据包含具有指定多个更新方式中的某一个的信息的标头、以及压缩后的更新数据,通过所述控制装置,基于在所述标头中指定的更新方式来切换解压方法,根据接收到的所述分发数据来解压所述更新数据,通过所述控制装置,使用解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序。
发明效果
根据本发明,即使是易失性存储器的容量较少的控制装置,也能够使程序更新高速化。
附图说明
图1是表示本发明的第1实施方式的程序更新系统的构成例的框图。
图2是表示服务器的硬件构成例的框图。
图3是表示在服务器的CPU上工作的程序分发软件的功能构成例的框图。
图4是表示在服务器中工作的数据压缩部的软件内部构成例的框图。
图5是表示程序更新装置的硬件构成例的框图。
图6是表示在程序更新装置的微型计算机上工作的程序更新管理软件的功能构成例的框图。
图7是表示ECU的硬件构成例的框图。
图8是表示在ECU的微型计算机上工作的本发明的第1实施方式的程序恢复软件的功能构成例的框图。
图9是表示本发明的第1实施方式的程序更新系统中的程序更新处理整体的流程的序列图。
图10是表示服务器执行的更新数据生成处理的流程的流程图。
图11是说明数据压缩部中的数据压缩的说明图。
图12是表示从服务器分发的分发数据的构造例的图。
图13是表示程序更新装置以及ECU执行的分发数据传输准备处理、分发数据传输处理以及分发数据传输完成处理的流程的序列图。
图14是表示在程序更新装置与ECU之间收发的指令的数据构造例的图。
图15是表示将分发数据分割发送情况下的构成例的图。
图16是表示ECU执行的解压恢复处理的流程的流程图。
图17是说明基于差动更新方式的解压恢复处理的说明图。
图18是说明基于压缩更新方式的解压恢复处理的说明图。
图19是表示本发明的第2实施方式的程序更新系统的构成例的框图。
图20是表示本发明的第2实施方式的程序恢复软件的功能构成例的框图。
图21是表示本发明的第2实施方式的程序更新系统中的程序更新处理整体的流程的序列图。
具体实施方式
以下,使用附图对本发明的实施方式进行说明。另外,在附图中,相同附图标记表示相同或者相当部分。此外,本发明不限于图示例。
(第1实施方式)
对于本发明中的车辆搭载ECU的程序更新方法,说明第1实施方式。另外,以下,对于更新ECU的程序的情况进行说明,但本技术能够适用于各种参数、数据等包含程序的控制ECU所需的全部信息。
图1是表示本发明的第1实施方式的程序更新系统的构成例的框图。
图1所示的程序更新系统由服务器10、分别搭载于车辆1的程序更新装置11以及多个ECU12、13、14等构成。服务器10与程序更新装置11经由车外网络20(例如英特网等)相互连接,程序更新装置11与各ECU经由车内网络21(例如CAN等)相互连接。即,服务器10与各ECU经由由车外网络20、程序更新装置11以及车内网络21构成的网络(以下,称作分发网络)相互连接。
服务器10对车辆1内的各ECU,分发对各个ECU的控制程序进行更新所需的数据即分发数据DT10。程序更新装置11是服务器10与各ECU间的网络中继装置,作为分发网络的一部分发挥功能。程序更新装置11接收从服务器10经由车外网络20分发来的分发数据DT10,并暂时保存。然后,对作为分发数据DT10的分发对象的各ECU,经由车内网络21传输所保存的分发数据DT10。各ECU接收从程序更新装置11传输来的分发数据DT10,并在自身的存储装置中保存,从而在更新控制程序后,在再启动时等的规定的定时,应用更新完毕的程序。
图2是表示服务器10的硬件构成例的框图。如图2所示,服务器10具备CPU31、存储部32、显示部33、操作输入部34、以及WAN通信装置35。
CPU31是用于使程序分发软件40工作的运算处理装置。存储部32由易失性存储器或非易失性存储器构成,存储程序分发软件40的处理所需的各数据。显示部33与操作输入部34是用户操作服务器10时使用的显示器与输入接口。WAN通信装置35经由车外网络20与车辆1进行通信。
另外,服务器10并非一定需要用户操作,也可以使程序分发软件40自动地运行,对车辆1的各ECU制作并分发程序更新用的分发数据DT10。此外,服务器10既可以由1台构成,也可以由多台合作实现相同的功能。
图3是表示在服务器10的CPU31上工作的程序分发软件40的功能构成例的框图。另外,本框图作为将程序分发软件40具有的功能按其种类分割后的功能模块进行记载,但也可以进一步分割各功能模块或将多个功能模块统一。此外,程序分发软件40无需由一个程序实现,也可以由两个以上的程序的组合来实现。
程序分发软件40具有分发控制部41、差分数据生成部42、数据压缩部43、数据分发部44、数据收发部45的各功能模块。若在服务器10中,由CPU31执行程序分发软件40的话,则这些功能模块由CPU31实现。即,服务器10通过在CPU31中执行程序分发软件40,从而能够作为具备分发控制部41、差分数据生成部42、数据压缩部43、数据分发部44、以及数据收发部45的机构工作。
作为程序分发软件40处理的数据,在存储部32中存储有更新管理数据DT400、ECU功能数据DT401、程序数据DT402、差分数据DT403、以及更新数据DT100。此外,作为数据压缩时所使用的作业区域,设置有压缩输入缓存区BF101以及压缩输出缓存区BF102。程序数据DT402由新程序数据DT4021以及旧程序数据DT4022构成。程序分发软件40的各功能模块对存储部32进行上述数据的读写。
更新管理数据DT400是用于管理各ECU的程序更新状况的信息。更新管理数据DT400例如包含各ECU的更新数据的生成状况、分发预定、分发完成状况等的信息。程序分发软件40基于更新管理数据DT400,进行差分数据DT403的生成、更新数据DT100的生成、以及分发数据DT10的分发等的执行判断。
ECU功能数据DT401包含与各ECU对应的更新方式、各ECU解压更新数据时所能够使用的RAM容量、ROM容量等,与各ECU的资源有关的信息。通过掌握这些资源,能够从服务器10高效地对分发数据DT10进行分发。
另外,在本实施方式的程序更新系统中,各ECU设为与“全更新方式”、“差分更新方式”、“压缩更新方式”这三种更新方式中的至少某一个更新方式对应。全更新方式是指,不压缩新程序数据DT4021而是直接用作更新数据DT100,并将基于该更新数据DT100的分发数据DT10从服务器10向各ECU分发的更新方式。差分更新方式是指,通过将基于旧程序数据DT4022与新程序数据DT4021的差分的差分数据DT403压缩,来生成更新数据DT100,并将基于该更新数据DT100的分发数据DT10从服务器10向各ECU分发的更新方式。压缩更新方式是指,通过压缩新程序数据DT4021来生成更新数据DT100,并将基于该更新数据DT100的分发数据DT10从服务器10向各ECU分发的更新方式。对于差分更新方式以及压缩更新方式,在后详细进行说明。
程序数据DT402包含预定向各ECU分发的新的程序数据即新程序数据DT4021、以及已经在各ECU运行的更新前的程序数据即旧程序数据DT4022。这些程序数据既可以是每个ECU的单独的数据,也可以是多个ECU共用的数据。此外,也可以包含程序以外的数据,例如各种参数数据、设定数据等。
差分数据DT403是在进行基于差分更新方式的程序更新时,提取出的旧程序数据DT4022与新程序数据DT4021之间的数据差异。对这些程序数据进行比较,若仅特定的数据列存在差异,则该差异作为差分数据DT403被抽出,并与产生差异的数据列的位置信息(例如开始位置及数据长)一并被记录。在旧程序数据DT4022与新程序数据DT4021的差异较少的情况下,与通过压缩更新方式向更新对象的ECU发送全部的新程序数据DT4021相比,通过差分更新方式向更新对象的ECU仅发送差分数据DT403,并对已在该ECU中保存的旧程序数据DT4022适用其差异,能够高效地恢复新程序数据DT4021。
更新数据DT100是作为从服务器10向各ECU分发的分发数据DT10的源的数据。如上所述,在全更新方式的情况下,新程序数据DT4021不被压缩地直接被设为更新数据DT100。另一方面,在压缩更新方式的情况下,新程序数据DT4021被压缩后的数据作为更新数据DT100被生成。此外,在差分更新方式的情况下,差分数据DT403被压缩后的数据作为更新数据DT100被生成。
接着,对由程序分发软件40实现的服务器10的各功能模块进行说明。
分发控制部41控制程序分发软件40中的各功能模块的工作。通过其他各功能模块与该分发控制部41的控制相应地工作,从而生成差分数据DT403、更新数据DT100,并从服务器10经由分发网络向各ECU分发分发数据DT10。
差分数据生成部42根据在存储部32中储存的新程序数据DT4021与旧程序数据DT4022,生成差分数据DT403。
数据压缩部43压缩从存储部32中读出的新程序数据DT4021或者差分数据DT403,生成更新数据DT100。此时数据压缩部43将压缩输入缓存区BF101以及压缩输出缓存区BF102用作作业区域,进行新程序数据DT4021或者差分数据DT403的压缩。另外,在后参照图12说明基于数据压缩部43的数据压缩处理的详细情况。
数据分发部44读出在存储部32中储存的更新数据DT100,并基于该更新数据DT100生成分发数据DT10,向数据收发部45输出。
若从数据分发部44输出分发数据DT10,则数据收发部45将该分发数据DT10向WAN通信装置35输出、使其发送。由此,数据收发部45使用WAN通信装置35经由车外网络20向车辆1发送分发数据DT10。
图4是表示在服务器10中工作的数据压缩部43的软件内部构成例的框图。数据压缩部43由压缩方法切换部71、差分更新编码部72、压缩更新编码部73、以及更新数据保存部74构成。
压缩方法切换部71是基于更新方式切换压缩方法的判断部。若从分发控制部41接受到数据压缩的指示,则压缩方法切换部71从存储部32读出ECU功能数据DT401,确认与更新对象的ECU对应的更新方式是否是差分更新方式与压缩更新方式中的某一个。然后,基于确认到的更新方式,选择使用差分更新编码部72或者压缩更新编码部73中的哪一个,由此进行压缩方法的切换。另外,在更新对象的ECU对应的更新方式为全更新方式的情况下,由于在更新数据DT100的生成中不需要压缩,因此不从分发控制部41输出数据压缩的指示。因此,差分更新编码部72以及压缩更新编码部73均不被选择。
差分更新编码部72在更新方式为差分更新方式时,被压缩方法切换部71选择并接受压缩编码的指示。若接受到压缩编码的指示,则差分更新编码部72从存储部32中读出差分数据DT403,进行数据的压缩以及编码。
压缩更新编码部73在更新方式为压缩更新方式时,被压缩方法切换部71选择并接受压缩编码的指示。若接受到压缩编码的指示,则压缩更新编码部73从存储部32中读出新程序数据DT4021,进行数据的压缩以及编码。
更新数据保存部74将由差分更新编码部72压缩编码后的差分数据DT403、或者由压缩更新编码部73压缩编码后的新程序数据DT4021作为更新数据DT100保持在存储部32中。
在数据压缩部43中,通过以上说明的各功能模块的工作,生成根据更新方式压缩后的更新数据DT100。
图5是表示程序更新装置11的硬件构成例的框图。如图5所示,程序更新装置11具备微型计算机91、车外通信装置92、以及车内通信装置93。
微型计算机91是用于使程序更新管理软件1000工作的运算处理装置。微型计算机91内置有作为易失性存储器的SRAM9101、以及作为非易失性存储器的FROM9102。车外通信装置92经由车外网络20与服务器10连接,接收从服务器10分发的分发数据DT10并向微型计算机91输出。车内通信装置93经由车内网络21与各ECU连接,将从服务器10分发并从微型计算机91输出的分发数据DT10向各ECU传输。由此,程序更新装置11作为服务器10与各ECU间的网络中继装置发挥功能。
图6是表示在程序更新装置11的微型计算机91上工作的程序更新管理软件1000的功能构成例的框图。另外,本框图作为将程序更新装置11具有的功能按其种类分割后的功能模块进行记载,但也可以将各功能模块进一步分割,或将多个功能模块统一。此外,程序更新管理软件1000无需由一个程序实现,也可以通过两个以上的程序的组合来实现。
程序更新管理软件1000具有更新控制部1001、车外数据收发部1002、分发数据接收管理部1003、分发数据传输部1004、车内数据收发部1005的各功能模块。在程序更新装置11中,若由微型计算机91执行程序更新管理软件1000,则这些功能模块通过微型计算机91实现。即,程序更新装置11通过在微型计算机91中执行程序更新管理软件1000,从而能够作为具备更新控制部1001、车外数据收发部1002、分发数据接收管理部1003、分发数据传输部1004、以及车内数据收发部1005的机构工作。
对通过程序更新管理软件1000实现的程序更新装置11的各功能模块进行说明。
更新控制部1001控制程序更新管理软件1000中的各功能模块的工作。通过其他的各功能模块根据该更新控制部1001的控制而工作,从而使从服务器10分发的分发数据DT10被中继、向各ECU传输。
车外数据收发部1002接收从经由车外通信装置92连接的服务器10朝向各ECU(ECU12等)发送的分发数据DT10。
分发数据接收管理部1003将车外数据收发部1002接收到的各ECU的分发数据DT10记录在FROM9102中。
分发数据传输部1004读出在FROM9102中储存的分发数据DT10,向车内数据收发部1005输出并发出数据传输指示。
若从分发数据传输部1004输出分发数据DT10,则车内数据收发部1005将该分发数据DT10向车内通信装置93输出、使其被发送。由此,车内数据收发部1005使用车内通信装置93,经由车内网络21向作为更新对象的ECU目标传输分发数据DT10。
图7是表示ECU12的硬件构成例的框图。如图7所示,ECU12具备微型计算机111、专用IC112、以及CAN通信装置113,并与传感器114以及促动器115连接。另外,其他的ECU13以及14也与ECU12是相同的构成,故以下以ECU12为代表例说明各ECU的构成。
微型计算机111是用于使程序恢复软件1200工作的运算处理装置。微型计算机111内置作为易失性存储器的SRAM1111、以及作为非易失性存储器的FROM1112。专用IC112是与微型计算机111协同进行用于实现ECU12的功能的各种的处理、工作的电路,例如使用ASIC(Application Specific Integrated Circuit:特殊应用集成电路)等构成。传感器114取得用于实现ECU12的功能的传感器信息并向微型计算机111输出。促动器115例如使用马达等构成,根据微型计算机111的控制工作。另外,ECU12也可以不搭载专用IC112,也可以不与传感器114、促动器115连接。CAN通信装置113经由车内网络21与程序更新装置11、其他的ECU连接,接收从程序更新装置11传输来的分发数据DT10,或在与其他的ECU之间收发与车辆1的工作有关的各种信息。
图8是表示在ECU12的微型计算机111上工作的本发明的第1实施方式的程序恢复软件1200的功能构成例的框图。另外,本框图作为将ECU12具有的功能按其种类分割后的功能模块进行记载,但也可以将各功能模块进一步分割,或将多个功能模块统一。此外,程序恢复软件1200无需由一个程序实现,也可以由两个以上的程序的组合实现。
程序恢复软件1200具有恢复控制部1201、数据收发部1202、分发数据接收管理部1203、更新数据解压部1204、以及新程序恢复部1205的各功能模块。在ECU12中,若由微型计算机111执行程序恢复软件1200,则这些功能模块通过微型计算机111实现。即,ECU12通过在微型计算机111中执行程序恢复软件1200,从而能够作为具备恢复控制部1201、数据收发部1202、分发数据接收管理部1203、更新数据解压部1204、以及新程序恢复部1205的机构工作。
对通过程序恢复软件1200实现的ECU12的各功能模块进行说明。
恢复控制部1201控制程序恢复软件1200中的各功能模块的工作。通过其他的各功能模块根据该恢复控制部1201的控制而工作,从而使用从服务器10分发并通过程序更新装置11中继的分发数据DT10,来更新ECU12的程序。
数据收发部1202按照来自恢复控制部1201的指示操作CAN通信装置113,在与经由车内网络21连接的其他的设备、即与程序更新装置11、ECU13、14之间进行数据收发。若从程序更新装置11向ECU12发送分发数据DT10,则该分发数据DT10使用CAN通信装置113被数据收发部1202接收。
分发数据接收管理部1203将数据收发部1202接收到的分发数据DT10保持在设置于SRAM1111上的接收缓存区BF120中。
更新数据解压部1204根据在接收缓存区BF120中储存的分发数据DT10解压更新数据DT100,并储存在设置于SRAM1111上的解压缓存区BF121中。
新程序恢复部1205使用由更新数据解压部1204解压后的更新数据DT100,进行更新后的新程序数据DT123的恢复。此时,根据需要,使用已在FROM1112中储存的更新前的旧程序数据DT122。并且,通过将恢复后的新程序数据DT123保持在FROM1112中,来更新ECU12的程序。
图9是表示本发明的第1实施方式的程序更新系统中的程序更新处理整体的流程的序列图。另外,以下以更新ECU12的程序的情况为代表例进行说明,但更新其他的ECU13、ECU14的程序的情况也相同。
首先,服务器10在步骤ST21中,进行更新数据生成处理,该更新数据生成处理用于生成作为向ECU12分发的分发数据DT10的源的更新数据DT100。另外,在后参照图10说明该更新数据生成处理的详细情况。
接下来,服务器10在步骤ST22中,通过数据分发部44,基于在步骤ST21中生成并储存在存储部32中的更新数据DT100,生成分发数据DT10。然后,通过数据收发部45,向车辆1发送分发数据DT10。程序更新装置11从服务器10下载分发数据DT10,并保持在程序更新装置11的FROM9102中。
之后,程序更新装置11在步骤ST23中,作为向ECU12传输在步骤ST22中下载的分发数据DT10的预处理,进行分发数据传输准备处理。若步骤ST23的分发数据传输准备处理完成,则程序更新装置11在后续的步骤ST24中,对ECU12进行用于传输分发数据DT10的分发数据传输处理。若在步骤ST24中全部的分发数据DT10的传输完成,则程序更新装置11在步骤ST25中,实施作为后处理的分发数据传输完成处理。若步骤ST25的处理结束,则ECU12的程序更新处理完成。另外,在后参照图13说明步骤ST23~ST25的各处理的详细情况。
这里,说明在图9的步骤ST21中进行的更新数据生成处理的详细情况。图10是表示在步骤ST21中由服务器10执行的更新数据生成处理的流程的流程图。
在步骤ST501中,分发控制部41进行作为压缩对象的数据的确认。具体而言,分发控制部41读出预先在存储部32中储存的更新管理数据DT400,对更新对象的ECU为ECU12、以及ECU12所对应的更新方式进行确认。
在步骤ST502中,分发控制部41对在步骤ST501中确认的更新方式是否是上述的差分更新方式与压缩更新方式中的某一个进行判定。其结果,在更新方式为差分更新方式的情况下,对差分数据生成部42指示差分数据DT403的生成,将处理前进至步骤ST503。另一方面,在为压缩更新方式的情况下,对数据压缩部43指示新程序数据DT4021的压缩,将处理前进至步骤ST505。另外,在更新方式既不是差分更新方式也不是压缩更新方式的情况下,例如为全更新方式时,由于无需数据压缩,故直接将新程序数据DT4021保存为更新数据DT100,结束图10的更新数据生成处理即可。此外,在ECU12与差分更新方式及压缩更新方式的任一方均对应的情况下,预先决定使用哪一个更新方式,并与该更新方式相符地进行步骤ST502的判定即可。
在步骤ST503中,差分数据生成部42接受分发控制部41的指示,基于在存储部32中储存的ECU12的新程序数据DT4021与旧程序数据DT4022的差分,生成差分数据DT403。接着,分发控制部41对数据压缩部43,指示差分数据生成部42生成的差分数据DT403的数据压缩。在步骤ST504中,数据压缩部43接受来自分发控制部41的指示,进行在存储部32中储存的差分数据DT403的数据压缩。此时数据压缩部43使用图4的差分更新编码部72,对差分数据DT403进行压缩。若差分数据DT403的压缩完成,则将处理前进至步骤ST506。
在步骤ST505中,数据压缩部43接受来自分发控制部41的指示,进行在存储部32中储存的新程序数据DT4021的数据压缩。此时数据压缩部43使用图4的压缩更新编码部73,对新程序数据DT4021进行压缩。若新程序数据DT4021的压缩完成,则将处理前进至步骤ST506。
在步骤ST506中,数据压缩部43使用图4的更新数据保存部74,将在步骤ST504或者ST505中压缩的数据作为更新数据DT100保存在存储部32中。若在步骤ST506中完成更新数据DT100的保存,则结束图10的更新数据生成处理。
图11是说明数据压缩部43中的数据压缩的图。图11的(a)是说明在更新方式为差分更新方式的情况下,在图10的步骤ST504中进行的差分数据DT403的压缩编码的图。在该情况下,在数据压缩部43中,首先差分更新编码部72从存储部32中读出成为压缩源的差分数据DT403的一部分数据列(参照部AR801与编码对象部AR802),并储存在压缩输入缓存区BF101中。另外,这里将供储存于压缩输入缓存区BF101的数据列的范围在以下称作“滑动窗”。图11的(a)的滑动窗WD10表示该数据列的范围。即,滑动窗WD10内的区域被分为参照部AR801与编码对象部AR802。
在基于差分更新方式的数据压缩中,滑动窗WD10的尺寸与在ECU12中设置于SRAM1111上的解压缓存区BF121的容量相符地设定。即,差分更新编码部72以滑动窗WD10的尺寸成为ECU12能够作为解压缓存区BF121使用的SRAM1111的区域的尺寸以内的方式,决定滑动窗WD10的尺寸。另外,解压缓存区BF121的容量能够通过参照预先在存储部32中储存的ECU功能数据DT401进行确认。
差分更新编码部72例如使用LZ77等的编码算法,对编码对象部AR802的数据列进行压缩编码。此时,参照部AR801的数据列被用作用于对编码对象部AR802的数据列进行压缩编码的字典。具体而言,差分更新编码部72从参照部AR801中,探索与编码对象部AR802的数据列最长地一致的数据列(称作最长一致列)。若找到最长一致列,则差分更新编码部72将编码对象部AR802中的与最长一致列对应的数据列置换为针对最长一致列的指针来进行压缩编码。该指针包含参照部AR801中的最长一致列的位置信息、数据长等的信息。最长一致列越长,则通过压缩编码使数据量越被削减、压缩率越高。通过上述这样将编码对象部AR802压缩编码从而生成的数据列,作为编码数据列AR804储存在压缩输出缓存区BF102中。另外,在压缩输出缓存区BF102中,已经储存有在编码数据列AR804之前被压缩编码的编码数据列AR803。
更新数据保存部74例如在压缩输出缓存区BF102的容量已满时等的规定的定时中,将至此已在压缩输出缓存区BF102中积蓄的数据列(编码数据列AR803以及AR804)作为更新数据DT100的一部分即部分更新数据AR806保存在存储部32中。另外,在存储部32中已储存有在部分更新数据AR806之前生成的部分更新数据AR805。
差分更新编码部72首先将滑动窗WD10设置于差分数据DT403的前端,进行上述那样的压缩编码处理以及保存处理。之后使滑动窗WD10移动且相同地进行压缩编码处理以及保存处理。这样,从差分数据DT403的前端至终端,重复滑动窗WD10的移动与压缩编码处理及保存处理。由此,能够将全部的差分数据DT403压缩编码来生成更新数据DT100。
图11的(b)是说明在更新方式为压缩更新方式的情况下,在图10的步骤ST505中进行的新程序数据DT4021的压缩编码的图。在该情况下,在数据压缩部43中,首先压缩更新编码部73从存储部32中读出成为压缩源的新程序数据DT4021的一部分数据列(参照部AR811、参照部AR812以及编码对象部AR813),并储存在压缩输入缓存区BF101中。图11的(b)的滑动窗WD20表示此时在压缩输入缓存区BF101中储存的数据列的范围。即,滑动窗WD20内的区域被分为参照部AR811、参照部AR812以及编码对象部AR813。
在基于压缩更新方式的数据压缩中,滑动窗WD20的尺寸设定地大于在ECU12中设置于SRAM1111上的解压缓存区BF121的容量。即,压缩更新编码部73与ECU12能够作为解压缓存区BF121使用的SRAM1111的区域的尺寸无关地,以比由差分更新编码部72设定的滑动窗WD10大的尺寸决定滑动窗WD20的尺寸。
参照部AR811是与已被压缩编码且保持在存储部32中的部分更新数据AR816对应的数据列。参照部AR812是与已压缩编码完毕且未保存在存储部32中的编码数据列AR814对应的数据列。这些数据列均被用作用于对编码对象部AR813的数据列进行压缩编码的字典。即,在压缩更新编码部73按照压缩更新方式生成更新数据DT100的情况下,与差分更新编码部72按照差分更新方式生成更新数据DT100的情况相比,压缩编码所使用的字典数据的范围扩大。
压缩更新编码部73与差分更新编码部72进行的压缩编码处理同样地,例如使用LZ77等的编码算法对编码对象部AR813的数据列进行压缩编码。具体而言,压缩更新编码部73从滑动窗WD20内的参照部AR811以及参照部AR812中探索针对编码对象部813的数据列的最长一致列。然后,将编码对象部813中的与最长一致列对应的数据列置换为针对最长一致列的指针来进行压缩编码。通过上述这样将编码对象部AR813压缩编码从而生成的数据列作为编码数据列AR815储存在压缩输出缓存区BF102中。另外,在压缩输出缓存区BF102中已储存有在编码数据列AR815之前压缩编码的编码数据列AR814。
压缩更新编码部73与更新数据保存部74相同地在规定的定时中,将至此在压缩输出缓存区BF102中积蓄的数据列(编码数据列AR814以及AR815)作为更新数据DT100的一部分即部分更新数据AR817保持在存储部32中。另外,在存储部32中已储存有在部分更新数据AR817之前生成的部分更新数据AR816。
压缩更新编码部73首先将滑动窗WD20设置于新程序数据DT4021的前端,进行上述那样的压缩编码处理以及保存处理。之后使滑动窗WD20移动且相同地进行压缩编码处理以及保存处理。这样,从新程序数据DT4021的前端至终端,重复滑动窗WD20的移动与压缩编码处理及保存处理。由此,能够将全部的新程序数据DT4021压缩编码来生成更新数据DT100。
这里,在新程序数据DT4021的数据尺寸比ECU12的解压缓存区BF121的容量大的情况下,在压缩更新编码部73按照压缩更新方式进行的压缩编码中,滑动窗WD20的尺寸大于解压缓存区BF121的容量。其结果,在压缩编码中,最长一致列的检测率提高且能够检测更长的最长一致列,因此与基于差分更新方式的压缩编码相比,能够相对提高压缩率。
图12是表示在图9的步骤ST22中从服务器10分发的分发数据DT10的构造例的图。
在图12中,压缩源数据DT60表示服务器10的数据压缩部43进行压缩编码处理前的源数据。该压缩源数据DT60的内容根据更新方式而不同。具体而言,在数据压缩部43按照差分更新方式进行压缩编码的情况下,差分数据DT403相当于压缩源数据DT60。另一方面,在数据压缩部43按照压缩更新方式进行压缩编码的情况下,新程序数据DT4021相当于压缩源数据DT60。
更新数据DT100例如是通过LZ77等的编码压缩算法将压缩源数据DT60进行压缩编码而成。通过对更新数据DT100附加标头DT101,来构成分发数据DT10。标头DT101例如包含更新方式DT621、恢复后尺寸DT622等的数据。更新方式DT621是表示在生成更新数据DT100时使用的更新方式的识别信息,具体而言,是指定差分更新方式或者压缩更新方式中的某一个的信息。另外,也可以进一步设为能够指定全更新方式。恢复后尺寸DT622是表示从更新数据DT100恢复的新程序数据DT4021的数据尺寸的信息。另外,在也可以在标头DT101中包含更新方式DT621、恢复后尺寸DT622以外的信息。
接下来,说明在图9的步骤ST23~ST25中分别进行的分发数据传输准备处理、分发数据传输处理以及分发数据传输完成处理的详细情况。图13是表示在步骤ST23~ST25中程序更新装置11以及ECU12执行的分发数据传输准备处理、分发数据传输处理以及分发数据传输完成处理的流程的序列图。
<ST23:分发数据传输准备处理>
首先,程序更新装置11的分发数据传输部1004在步骤ST1301中,经由车内数据收发部1005对ECU12发送数据传输开始请求。该数据传输开始请求中包含数据格式、发送预定的数据尺寸、表示发送了的数据的写入目的地的写入目的地地址等的信息。
ECU12的数据收发部1202若从程序更新装置11接收数据传输开始请求,则向分发数据接收管理部1203通知该主旨。若接受到该通知,则分发数据接收管理部1203在步骤ST1302中,经由数据收发部1202向程序更新装置11发送接受响应。该接受响应中包含程序更新装置11一次能够传输的分发数据DT10的数据尺寸(块尺寸)等的信息。由此,分发数据传输准备处理完成。
<ST24:分发数据传输处理>
若程序更新装置11的分发数据传输部1004从ECU12接收到接受响应,则将分发数据DT10分割为该接受响应指定的块尺寸。然后,在步骤ST1303中,经由车内数据收发部1005对ECU12发送分割后的分发数据DT10。
若ECU12的数据收发部1202从程序更新装置11接收到分割后的分发数据DT10,则在步骤ST1304中,将该分发数据DT10中包含的更新数据DT100解压并执行用于恢复新程序数据DT4021的解压恢复处理。另外,在后参照图16说明在步骤ST1304中执行的解压恢复处理的详细情况。通过解压恢复处理恢复后的新程序数据DT4021记录在FROM1112中。
若新程序数据DT4021向FROM1112的写入完成,则ECU12的分发数据接收管理部1203在步骤ST1305中,经由数据收发部1202向程序更新装置11发送接收响应。
程序更新装置11与ECU12反复执行上述的步骤ST1303至步骤ST1305的一系列的处理直至将分发数据DT10全部传输结束(步骤ST1306)。由此,分发数据传输处理完成。
<ST25:分发数据传输完成处理>
若将分发数据DT10全部传输结束,则程序更新装置11的分发数据传输部1004在步骤ST1307中,经由车内数据收发部1005向ECU12发送传输完成通知。
若ECU12的分发数据接收管理部1203从程序更新装置11接收传输完成通知,则在步骤ST1308中经由数据收发部1202向程序更新装置11发送接受响应。由此,分发数据传输完成处理完成。
图14是表示在图13说明的各处理中,在程序更新装置11与ECU12之间收发的指令的数据构造例的图。
<分发数据传输准备处理的指令>
CMD141是在图13的步骤ST1301中,从程序更新装置11向ECU12发送的数据传输开始请求指令。数据传输开始请求指令CMD141具有CMD1411~CMD1414的各指令数据。指令数据CMD1411是用于识别该指令的指令ID,这里被设定为表示数据传输开始请求指令的标识符。指令数据CMD1412是表示更新数据DT100被压缩时的更新方式的信息,示出更新数据DT100是通过差分更新方式进行压缩、还是通过压缩更新方式进行压缩等。指令数据CMD1413是表示后续的指令数据CMD1414以及指令数据CMD1415的数据长的信息。指令数据CMD1414是表示写入发送的数据的更新对象块的起始地址的信息。指令数据CMD1415是表示从程序更新装置11向ECU12发送的分发数据DT10的尺寸的信息。
CMD142是在图13的步骤ST1302中、从ECU12向程序更新装置11发送的针对数据传输开始的接受响应指令。接受响应指令CMD142具有CMD1421~CMD1423的各指令数据。指令数据CMD1421是用于识别该指令的指令ID,这里被设定为表示针对数据传输开始请求的接受响应指令的标识符。指令数据CMD1422是表示指令数据CMD1423的数据长的信息。指令数据CMD1423是表示从程序更新装置11向ECU12一次能够连续发送的数据的尺寸(块尺寸)的信息。
<分发数据传输处理的指令>
CMD143是在图13的步骤ST1303中、从程序更新装置11向ECU12发送的分发数据传输指令。分发数据传输指令CMD143具有CMD1431~CMD1433的各指令数据。指令数据CMD1431是用于识别该指令的指令ID,这里被设定为表示分发数据传输指令的标识符。指令数据CMD1432是表示分发数据传输指令CMD143的发送次数的指令计数器,被设定有在每次发送指令时增加的值。指令数据CMD1433是传输的数据的主体部分,这里将由接受响应指令CMD142的指令数据CMD1423指定的块尺寸的值作为上限尺寸,被设定有分发数据DT10被分割而成的数据。
CMD144是在图13的步骤ST1305中、从ECU12向程序更新装置11发送的接收响应指令。接收响应指令CMD144具有CMD1441~CMD1442的各指令数据。指令数据CMD1441是用于识别该指令的指令ID,这里被设定为表示针对数据传输的接收响应指令的标识符。指令数据CMD1442是表示分发数据传输指令CMD143的接收次数的指令计数器,这里被设定有与在接收到的分发数据传输指令CMD143中、设定于指令数据CMD1432的值相同的值。
另外,如在图13中说明的那样,在步骤ST1306中,分割后的分发数据DT10全部从程序更新装置11传输至ECU12为止,在程序更新装置11与ECU12之间,分发数据传输指令CMD143与接收响应指令CMD144被多次反复收发。
<分发数据传输完成处理的指令>
CMD145是在图13的步骤ST1307中,从程序更新装置11向ECU12发送的传输完成通知指令。传输完成通知指令CMD145具有指令数据CMD1451。指令数据CMD1451是用于识别该指令的指令ID,这里被设定为表示传输完成通知指令的标识符。
另外,在图13的步骤ST1308中从ECU12向程序更新装置11发送的接受响应指令,具有与在步骤ST1307中从程序更新装置11向ECU12发送的传输完成通知指令CMD145相同的指令构造。在该情况下,在指令数据CMD1451中,被设定为表示传输完成接受响应指令的标识符。
图15是表示将分发数据DT10分割发送的情况的构成例的图。分发数据DT10的数据尺寸例如为2MB,如图15所示,例如按每256比特进行分割,作为传输数据DT1501、传输数据DT1502,从程序更新装置11向ECU12发送。在该情况下,例如传输数据D1501是包含分发数据DT10中的标头DT101与更新数据DT100的至中途为止的分割数据。另外,在能够不分割分发数据DT10地从程序更新装置11向ECU12发送的情况下,也可以不必分割。
接下来,说明在图13的步骤ST1304中进行的解压恢复处理的详细情况。图16是表示在步骤ST1304中由ECU12执行的解压恢复处理的流程的流程图。
在步骤ST1601中,数据收发部1202经由CAN通信装置113,接收通过图15的传输数据D1501、传输数据D1502等从程序更新装置11分割发送来的分发数据DT10。若通过数据收发部1202接收到分发数据DT10,则分发数据接收管理部1203向接收缓存区BF120中储存分发数据DT10,并向恢复控制部1201通知分发数据DT10的接收。若接受到该通知,则恢复控制部1201对更新数据解压部1204指示更新数据DT100的解压。
若从恢复控制部1201接受到更新数据DT100的解压指示,则在步骤ST1602中,更新数据解压部1204读入在接收缓存区BF120中储存的分发数据DT10,确认在标头DT101中指定的更新方式是差分更新方式或者压缩更新方式中的哪一个。其结果,在更新方式为差分更新方式的情况下,处理向步骤ST1603前进,在为压缩更新方式的情况下,处理向步骤ST1606前进。
在步骤ST1603中,更新数据解压部1204在SRAM1111上设定解压缓存区BF121,并向该解压缓存区BF121中储存更新数据DT100。另外,在SRAM1111中设定的解压缓存区BF121的容量与在图10的步骤ST504中将差分数据DT403压缩编码时,服务器10的差分更新编码部72设定的滑动窗WD10的尺寸同等,或为其以上。并且,在储存在解压缓存区BF121中的更新数据DT100中设定解压所使用的参照部,基于参照部的数据列进行更新数据DT100的解压。若更新数据DT100的解压结束,则恢复控制部1201对新程序恢复部1205指示解压后的更新数据DT100即使用了差分数据DT403的新程序数据DT123的恢复。
若从恢复控制部1201接受到新程序数据DT123的恢复指示,则在步骤ST1604中,新程序恢复部1205进行基于差分更新方式的新程序数据DT123的恢复处理。具体而言,新程序恢复部1205从FROM1112读出旧程序数据DT122,并对其应用差分数据DT403,从而将旧程序数据DT122变换为新程序数据DT123,恢复新程序数据DT123。在后续的步骤ST1605中,新程序恢复部1205将在步骤ST1604中恢复后的新程序数据DT123保持在FROM1112中。
在步骤ST1606中,更新数据解压部1204与步骤ST1603相同地,在SRAM1111上设定解压缓存区BF121,并向该解压缓存区BF121储存更新数据DT100。并且,分别在储存在解压缓存区BF121中的更新数据DT100、以及已恢复完毕且保持在FROM1112中的新程序数据DT123中,设定解压所使用的参照部,基于各参照部的数据列进行更新数据DT100的解压。若更新数据DT100的解压结束,则新程序恢复部1205将解压后的更新数据DT100即新程序数据DT4021作为恢复后的新程序数据DT123保存在FROM1112中。
若在步骤ST1605或者ST1607中新程序数据DT123保持在FROM1112中,则在步骤ST1608中,恢复控制部1201确认是否将全部的新程序数据DT123恢复完毕。其结果,存在恢复未完成的新程序数据DT123的情况下,返回步骤ST1601,接收其次的分发数据DT10,反复更新数据DT100的解压处理以及新程序数据DT123的恢复处理。另一方面,在将全部的新程序数据DT123恢复完毕的情况下,结束图16的解压恢复处理。
图17是说明在图16的步骤ST1603以及ST1604中进行的基于差动更新方式的解压恢复处理的图。此时在ECU12中,在程序更新装置11中保存的更新数据DT100的一部分作为传输数据AR1701被接收,并被储存在接收缓存区BF120中。另外,在接收缓存区BF120中,已储存有在传输数据AR1701之前接收到的传输数据AR1702。
在基于差动更新方式的解压恢复处理中,更新数据解压部1204将在接收缓存区BF120中储存的传输数据AR1701以及传输数据AR1702解码来生成差分数据AR1703,并向在SRAM1111上设定的解压缓存区BF121中储存。此时更新数据解压部1204将已储存在解压缓存区BF121中的差分数据AR1704设定为参照部。并且,根据传输数据AR1701以及传输数据AR1702的指针中包含的位置信息与数据列的长度的信息,复制差分数据AR1704中对应的数据列(最长一致列AR1705),并与指针进行置换从而进行解码。另外,在解压缓存区BF121中,已储存有在差分数据AR1703之前生成的差分数据AR1704。
在进行基于差动更新方式的解压恢复处理的情况下,更新数据解压部1204像这样将已在SRAM1111上的解压缓存区BF121中储存的差分数据AR1704设定为参照部,进行传输数据AR1701以及传输数据AR1702的解压。由此,能够不使用FROM1112而是使用RAM1111而解压更新数据DT100。
若通过更新数据解压部1204生成了差分数据AR1703,则新程序恢复部1205使用在解压缓存区BF121中储存的差分数据AR1703以及差分数据AR1704、在FROM1112中储存的旧程序数据DT122,来恢复新程序数据DT123。此时新程序恢复部1205从旧程序数据DT122中读取与差分数据AR1703以及差分数据AR1704的范围相当的数据列,并与这些差分数据结合,从而恢复新程序数据DT123。若新程序数据DT123的恢复完成,则将该数据保持在FROM1112中。
图18是说明在图16的步骤ST1606中进行的基于压缩更新方式的解压恢复处理的图。此时在ECU12中,在程序更新装置11中保存的更新数据DT100的一部分作为传输数据AR1711被接收,并被储存在接收缓存区BF120中。另外,在接收缓存区BF120中已储存有在传输数据AR1711之前接收到的传输数据AR1712。
在基于压缩更新方式的解压恢复处理中,更新数据解压部1204将在接收缓存区BF120中储存的传输数据AR1711以及传输数据AR1712解码,来生成作为新程序数据DT123的一部分的解码数据AR1713,并储存在设定于SRAM1111上的解压缓存区BF121中。此时更新数据解压部1204将已储存在解压缓存区BF121中的解码数据AR1714、以及已保存在FROM1112中的解码数据AR1715设定为参照部。另外,解码数据AR1714以及解码数据AR1715也与解码数据AR1713相同,是新程序数据DT123的一部分。并且,根据传输数据AR1711以及传输数据AR1712的指针中包含的位置信息与数据列的长度的信息,复制解码数据AR1714以及解码数据AR1715中对应的数据列(第1指针表示的解压缓存区BF121上的最长一致列AR1716、第2指针表示的FROM1112上的最长一致列AR1717、第3指针表示的FROM1112上的AR1718),并与各指针进行置换从而进行解码。另外,在解压缓存区BF121中已储存有在解码数据AR1713之前生成的解码数据AR1714。
在进行基于压缩更新方式的解压恢复处理的情况下,更新数据解压部1204像这样将已在SRAM1111上的解压缓存区BF121中储存的解码数据AR1714、以及已在FROM1112中保存的解码数据AR1715设定为参照部,进行传输数据AR1711以及传输数据AR1712的解压。由此,能够使用SRAM1111以及FROM1112来解压更新数据DT100。即,通过将已恢复并保存的FROM1112的数据也设为解压时的参照部,能够不增大解压缓存区BF121的尺寸地、对与基于差分更新方式的解压恢复处理相比以较高的压缩率被压缩编码后的更新数据DT100进行解压。
若通过更新数据解压部1204生成了解码数据AR1713,则新程序恢复部1205将在解压缓存区BF121中储存的解码数据AR1713以及解码数据AR1714,作为新程序数据DT123的一部分保存在FROM1112中。
更新数据解压部1204与新程序恢复部1205如图17、18分别说明的那样,反复执行更新数据DT100的解压与新程序数据DT123的恢复。由此,在基于差分更新方式的解压恢复处理与基于压缩更新方式的解压恢复处理的各自中,能够恢复全部的新程序数据DT123。
根据以上说明的本发明的第1实施方式,能够起到以下的作用效果。
(1)本实施方式的程序更新系统具备车外网络20、经由车内网络21相互连接的服务器10与ECU12。服务器10具备按照多个更新方式中的某一个,生成压缩后的更新数据DT100的数据压缩部43,以及经由分发网络向ECU12发送分发数据DT10的数据收发部45。分发数据DT10包含具有指定更新数据DT100的生成所使用的更新方式的信息的标头DT101,以及更新数据DT100。ECU12具备接收分发数据DT10的数据收发部1202,根据由数据收发部1202接收到的分发数据DT10来解压更新数据DT100的更新数据解压部1204,以及使用由更新数据解压部1204解压后的更新数据DT100、按照在标头DT101中指定的更新方式来恢复更新后的新程序数据DT123的新程序恢复部1205。在该程序更新系统中,ECU12的更新数据解压部1204基于在标头DT101中指定的更新方式,切换解压更新数据DT100时的解压方法。由于这样构成,因此在与多个更新方式对应的ECU12的程序更新中,即使在作为易失性存储器的SRAM1111中解压处理所使用的解压缓存区BF121的容量较少,也能够提高更新数据DT100的压缩率,能够削减从服务器10向ECU12发送的更新数据DT100的数据量。其结果,即使在易失性存储器的容量较少的ECU12,也能够实现程序更新的高速化。
(2)在服务器10中更新数据DT100的生成所使用的更新方式包含,将基于更新前的旧程序数据DT4022与新程序数据DT4021的差分的差分数据DT403压缩来生成更新数据DT100的差分更新方式,以及将新程序数据DT4021压缩来生成更新数据DT100的压缩更新方式。ECU12的更新数据解压部1204在由标头DT101指定的更新方式为差分更新方式的情况下,使用第1解压方式来解压更新数据DT100(图16的步骤ST1602、ST1603)。另一方面,在由标头DT101指定的更新方式为压缩更新方式的情况下,使用与第1解压方式不同的第2解压方式来解压更新数据DT100(图16的步骤ST1602、ST1606)。由于这样构成,因此能够分别对于差分更新方式与压缩更新方式,使用适当的解压方式进行更新数据DT100的解压。
(3)ECU12具备作为易失性存储器的SRAM1111以及作为非易失性存储器的FROM1112。在第1解压方式中,如图17说明的那样,不使用FROM1112而是使用SRAM1111来解压更新数据DT100。另一方面,在第2解压方式中,如图18说明的那样,使用SRAM1111以及FROM1112来解压更新数据DT100。另一方面,服务器10的数据压缩部43如图11说明的那样,在按照压缩更新方式生成更新数据DT100的情况下,与按照差分更新方式生成更新数据DT100的情况相比,使压缩所使用的字典数据的范围扩大。由于这样构成,因此即使SRAM1111中解压处理所使用的容量较少,也能够在ECU12中对通过压缩更新方式以高压缩率压缩后的更新数据DT100进行解压。
(4)对分发数据DT10进行发送的分发网络包含设置于车辆1的车内网络21、以及设置于车辆1的外部的车外网络20。ECU12搭载于车辆1、与车内网络21连接。服务器10能够经由车外网络20与车内网络21通信,服务器10的数据收发部45经由车外网络20以及车内网络21向ECU12发送分发数据DT10。ECU12经由车内网络21接收分发数据DT10。由于这样构成,因此对于搭载于车辆1的ECU12,能够在任意的定时容易地发送分发数据DT10。
(第2实施方式)
对于本发明中的车辆搭载ECU的程序更新方法,说明第2实施方式。另外,在本实施方式中,对于与第1实施方式共通的部分,只要无特殊需要则省略说明。
图19是表示本发明的第2实施方式的程序更新系统的构成例的框图。本实施方式的程序更新系统代替在第1实施方式中说明的ECU12、13以及14而具有ECU15、16以及17。这些ECU与第1实施方式中的ECU12、13以及14相比,进一步执行在传输分发数据DT10前经由程序更新装置11,向服务器10上传表示各ECU的状态的ECU状态数据DT180的处理。
ECU状态数据DT180是作为各ECU的状态而包含各ECU中的SRAM1111的状态,例如在SRAM1111中在程序的更新时能够用作解压缓存区BF121的容量等的信息的数据。在第1实施方式中,各ECU在程序更新处理时能够用作解压缓存区BF121的SRAM1111的容量作为固定值被预先决定,与该解压缓存区BF121的容量相符地决定在基于差分更新方式的压缩编码中使用的滑动窗WD10的尺寸。然而,在本实施方式中,鉴于每个ECU的SRAM1111的容量的不同、以及根据ECU的状况SRAM1111的能够使用的容量不同,在传输分发数据DT10前,将各ECU的SRAM1111的能够使用的容量包含在ECU状态数据DT180中,向服务器10通知。在服务器10中,根据从各ECU通过ECU状态数据DT180通知的SRAM1111的能够使用的容量,来决定滑动窗WD10的尺寸,并与之相符地决定压缩输入缓存区BF101的尺寸。
ECU15、16以及17分别具有与在第1实施方式中图7示出的ECU12相同的构成,微型计算机111执行与在第1实施方式中说明的程序恢复软件1200不同的软件。以下,将在本实施方式中微型计算机111执行的软件作为程序恢复软件2000进行说明。
图20是表示本发明的第2实施方式的程序恢复软件1200的功能构成例的框图。程序恢复软件2000与在图8中说明的第1实施方式的程序恢复软件1200相比,还具有ECU状态发送部2001。此外,代替更新数据解压部1204而具有更新数据解压部2002。除此以外的点具有与第1实施方式中说明的程序恢复软件1200相同的功能构成。
ECU状态发送部2001按照来自恢复控制部1201的指示操作CAN通信装置113,并向程序更新装置11发送ECU状态数据DT180。另外,向程序更新装置11发送的ECU状态数据DT180通过程序更新装置11向服务器10传输。
更新数据解压部2002与在第1实施方式中说明的更新数据解压部1204相同,根据在接收缓存区BF120中储存的分发数据DT10来解压更新数据DT100,并向设置于SRAM1111上的解压缓存区BF121中储存。此时,基于在分发数据DT10的标头DT101中指定的更新方式,来切换解压方法。并且更新数据解压部2002具有根据在服务器10进行更新数据DT100的压缩编码时使用的算法、参数,设定解压处理所使用的算法、参数的功能。另外,从服务器10针对各ECU的压缩编码的算法、参数的通知,能够通过将上述信息包含在标头DT101中来进行。
图21是表示本发明的第2实施方式的程序更新系统中的程序更新处理整体的流程的序列图。另外,以下以更新ECU15的程序的情况为代表例进行说明,但更新其他的ECU16、ECU17的程序的情况也相同。
首先,ECU15在步骤ST190中,对服务器10上传ECU状态数据DT180。从ECU15上传的ECU状态数据DT180在服务器10中向存储部32中储存。
接下来,服务器10在步骤ST201中,基于在存储部32中储存的ECU状态数据DT180,进行更新数据生成处理,该更新数据生成处理用于生成成为向ECU15分发的分发数据DT10的源的更新数据DT100。在该更新数据生成处理中,服务器10的分发控制部41读出ECU状态数据DT180,确认ECU15中的SRAM1111的能够使用的容量,设定压缩编码中的压缩输入缓存区BF101的尺寸。根据这样设定的压缩输入缓存区BF101的尺寸,数据压缩部43设定滑动窗WD10的尺寸,并将作为压缩源数据的差分数据DT403压缩编码,从而进行基于差分更新方式的数据压缩来生成更新数据DT100。此时,除了在第1实施方式中例示的LZ77等的编码算法外,例如还可以使用LZ78等、压缩率更高的其他的编码算法。另外,在基于压缩更新方式的数据压缩的情况下,通过与第1实施方式中说明的方法相同的方法生成更新数据DT100即可。
若在步骤ST201中生成更新数据DT100,则基于该更新数据DT100,与第1实施方式相同地从服务器10向程序更新装置11下载分发数据DT10。此时,在分发数据DT10的标头DT101中,作为更新方式DT621而包含在服务器10侧生成更新数据DT100所使用的压缩编码的算法、参数等的信息。由此,在ECU15中,能够根据分发数据DT10将更新数据DT100解压。
在步骤ST23以后,程序更新装置11以及ECU15分别进行与在第1实施方式中说明的处理相同的处理。由此,使用分发数据DT10进行ECU15的程序更新。
根据以上说明的本发明的第2实施方式,ECU15还具备ECU状态发送部2001,其通过对于作为分发数据DT10的发送源的服务器10发送ECU状态数据DT180从而通知作为易失性存储器的SRAM1111的状态。服务器10的数据压缩部43基于由ECU状态发送部2001通知的SRAM1111的状态,设定作为压缩编码时的字典数据的滑动窗WD10的范围。由于这样构成,因此除了与第1实施方式中说明的效果相同的作用效果外,还能够根据ECU15中的SRAM1111的使用状况,使更新数据100的压缩率灵活地变化。
另外,在上述的各实施方式中,也可以不设置程序更新装置11,而是从服务器10对各ECU直接发送分发数据DT10。这样也能够起到与各实施方式中说明的效果相同的作用效果。
此外,在上述的各实施方式中,说明了进行搭载于车辆的ECU的程序更新的程序更新系统的例子,但本发明不限于此。在网络连接的各种控制装置的程序更新中,也能够适用本发明。
本发明的技术范围不限于上述的各实施方式,在本发明的技术思想的范围内,自然能够实施各种的变形例。
下列优先权基础申请的公开内容作为引用文献组入本申请。
日本专利申请2017年第079821号(2017年4月13日提出申请)
附图标记说明
1:车辆,10:服务器,11:程序更新装置,12、13、14、15、16、17:ECU,20:车外网络,21:车内网络,31:CPU,32:存储部,33:显示部,34:操作输入部,35:WAN通信装置,40:程序分发软件,41:分发控制部,42:差分数据生成部,43:数据压缩部,44:数据分发部,45:数据收发部,91:微型计算机,9101:SRAM,9102:FROM,92:车外通信装置,93:车内通信装置,1000:程序更新管理软件,1001:更新控制部,1002:车外数据收发部,1003:分发数据接收管理部,1004:分发数据传输部,1005:车内数据收发部,111:微型计算机,1111:SRAM,1112:FROM,112:专用IC,113:CAN通信装置,114:传感器,115:促动器,1200:程序恢复软件,1201:恢复控制部,1202:数据收发部,1203:分发数据接收管理部,1204、2002:更新数据解压部,1205:新程序恢复部,2001:ECU状态发送部。

Claims (14)

1.一种控制装置,具备:
接收部,接收分发数据,所述分发数据包含具有指定多个更新方式中的某一个的信息的标头、以及压缩后的更新数据;
解压部,根据通过所述接收部接收到的所述分发数据来解压所述更新数据;以及
恢复部,使用通过所述解压部解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序,
所述解压部基于在所述标头中指定的更新方式,切换解压所述更新数据时的解压方法。
2.如权利要求1所述的控制装置,
所述更新方式包含,将更新前的旧程序与所述新程序的差分压缩来生成所述更新数据的差分更新方式、以及将所述新程序压缩来生成所述更新数据的压缩更新方式,
所述解压部在所述标头中指定的更新方式为所述差分更新方式的情况下,使用第1解压方式来解压所述更新数据,在所述标头中指定的更新方式为所述压缩更新方式的情况下,使用与所述第1解压方式不同的第2解压方式来解压所述更新数据。
3.如权利要求2所述的控制装置,
所述控制装置具备易失性存储器以及非易失性存储器,
所述第1解压方式是不使用所述非易失性存储器而是使用所述易失性存储器来解压所述更新数据的方法,
所述第2解压方式是使用所述易失性存储器以及所述非易失性存储器来解压所述更新数据的方法。
4.如权利要求3所述的控制装置,
还具备通知部,对所述分发数据的发送源通知所述易失性存储器的状态。
5.如权利要求1~4中任一项所述的控制装置,
所述控制装置搭载于车辆并与设置于所述车辆的车内网络连接,
所述接收部经由所述车内网络接收所述分发数据。
6.一种程序更新系统,
具备经由网络相互连接的服务器与控制装置,
所述服务器具备:
数据压缩部,按照多个更新方式中的某一个,生成压缩后的更新数据;以及
发送部,经由所述网络向所述控制装置发送分发数据,所述分发数据包含具有指定所述更新数据的生成所使用的更新方式的信息的标头、以及所述更新数据,
所述控制装置具备:
接收部,接收所述分发数据;
解压部,根据通过所述接收部接收到的所述分发数据来解压所述更新数据;以及
恢复部,使用通过所述解压部解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序,
所述解压部基于在所述标头中指定的更新方式,切换解压所述更新数据时的解压方法。
7.如权利要求6所述的程序更新系统,
所述更新方式包含,将更新前的旧程序与所述新程序的差分压缩来生成所述更新数据的差分更新方式、以及将所述新程序压缩来生成所述更新数据的压缩更新方式,
所述解压部在所述标头中指定的更新方式为所述差分更新方式的情况下,使用第1解压方式来解压所述更新数据,在所述标头中指定的更新方式为所述压缩更新方式的情况下,使用与所述第1解压方式不同的第2解压方式来解压所述更新数据。
8.如权利要求7所述的程序更新系统,
所述控制装置具备易失性存储器以及非易失性存储器,
所述第1解压方式是不使用所述非易失性存储器而是使用所述易失性存储器来解压所述更新数据的方法,
所述第2解压方式是使用所述易失性存储器以及所述非易失性存储器来解压所述更新数据的方法,
所述数据压缩部在按照所述压缩更新方式生成所述更新数据的情况下,与按照所述差分更新方式生成所述更新数据的情况相比,使所述压缩所使用的字典数据的范围扩大。
9.如权利要求8所述的程序更新系统,
所述控制装置还具备通知部,对所述服务器通知所述易失性存储器的状态,
所述数据压缩部基于由所述通知部通知的所述易失性存储器的状态,设定所述字典数据的范围。
10.如权利要求6~9中任一项所述的程序更新系统,
所述网络包含设置于车辆的车内网络、以及设置于所述车辆的外部的车外网络,
所述控制装置搭载于所述车辆并与所述车内网络连接,
所述服务器能够经由所述车外网络与所述车内网络通信,
所述发送部经由所述车外网络以及所述车内网络向所述控制装置发送所述分发数据。
11.一种程序更新方法,更新控制装置的程序,
通过所述控制装置接收分发数据,所述分发数据包含具有指定多个更新方式中的某一个的信息的标头、以及压缩后的更新数据,
通过所述控制装置,基于在所述标头中指定的更新方式来切换解压方法,根据接收到的所述分发数据来解压所述更新数据,
通过所述控制装置,使用解压后的所述更新数据,按照在所述标头中指定的更新方式来恢复更新后的新程序。
12.如权利要求11所述的程序更新方法,
所述更新方式包含,将更新前的旧程序与所述新程序的差分压缩来生成所述更新数据的差分更新方式、以及将所述新程序压缩来生成所述更新数据的压缩更新方式,
在所述标头中指定的更新方式为所述差分更新方式的情况下,通过所述控制装置、使用第1解压方式来解压所述更新数据,
在所述标头中指定的更新方式为所述压缩更新方式的情况下,通过所述控制装置、使用与所述第1解压方式不同的第2解压方式来解压所述更新数据。
13.如权利要求12所述的程序更新方法,
所述控制装置具备易失性存储器以及非易失性存储器,
所述第1解压方式是不使用所述非易失性存储器而是使用所述易失性存储器来解压所述更新数据的方法,
所述第2解压方式是使用所述易失性存储器以及所述非易失性存储器来解压所述更新数据的方法。
14.如权利要求13所述的程序更新方法,
在接收所述分发数据前,通过所述控制装置对所述分发数据的发送源通知所述易失性存储器的状态。
CN201880024460.4A 2017-04-13 2018-03-19 控制装置、程序更新系统、程序更新方法 Active CN110494845B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017-079821 2017-04-13
JP2017079821A JP6784636B2 (ja) 2017-04-13 2017-04-13 制御装置、プログラム更新システム、プログラム更新方法
PCT/JP2018/010857 WO2018190080A1 (ja) 2017-04-13 2018-03-19 制御装置、プログラム更新システム、プログラム更新方法

Publications (2)

Publication Number Publication Date
CN110494845A true CN110494845A (zh) 2019-11-22
CN110494845B CN110494845B (zh) 2023-07-14

Family

ID=63793251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880024460.4A Active CN110494845B (zh) 2017-04-13 2018-03-19 控制装置、程序更新系统、程序更新方法

Country Status (5)

Country Link
US (1) US11513783B2 (zh)
JP (1) JP6784636B2 (zh)
CN (1) CN110494845B (zh)
DE (1) DE112018001315T5 (zh)
WO (1) WO2018190080A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095037A (zh) * 2022-01-17 2022-02-25 浙江地芯引力科技有限公司 应用程序的更新方法、更新数据的压缩方法、装置及设备

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5547701B2 (ja) * 2011-09-21 2014-07-16 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP7367359B2 (ja) * 2018-08-10 2023-10-24 株式会社デンソー 車両用電子制御システム、ファイルの転送制御方法、ファイルの転送制御プログラム及び装置
CN113168314B (zh) * 2018-12-04 2023-11-10 三菱电机株式会社 更新管理装置、更新管理系统及更新管理方法
JP7243217B2 (ja) * 2019-01-25 2023-03-22 株式会社富士通ゼネラル 空気調和機及び空気調和システム
JP7298427B2 (ja) * 2019-10-07 2023-06-27 トヨタ自動車株式会社 プログラム更新システムおよびプログラム更新方法
US11851853B2 (en) * 2019-10-16 2023-12-26 Deere & Company Wake up system to allow remote machine configuration of a work machine
KR20210140862A (ko) * 2020-05-14 2021-11-23 현대자동차주식회사 소프트웨어 업데이트 시스템 및 그 제어 방법
JP7552483B2 (ja) 2021-04-06 2024-09-18 トヨタ自動車株式会社 センタ、配信制御方法、及び配信制御プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08237208A (ja) * 1995-02-23 1996-09-13 Daihatsu Motor Co Ltd 情報送信装置及び情報受信装置
US20080005733A1 (en) * 2006-06-29 2008-01-03 Balaji Ramachandran Method and apparatus for updating firmware and software
CN101557612A (zh) * 2008-04-11 2009-10-14 华硕电脑股份有限公司 处理交递程序的方法及其通讯装置
CN102510409A (zh) * 2011-12-19 2012-06-20 厦门雅迅网络股份有限公司 一种利用无线网络对移动终端程序快速远程更新的方法及系统
US20160313989A1 (en) * 2013-12-16 2016-10-27 Zte Corporation Method and Apparatus for Manufacturing File System Update Package, Method and Apparatus for Updating File System Update Package, and Terminal

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4285679B2 (ja) * 2002-03-11 2009-06-24 富士通株式会社 差分転送方法、プログラム及びシステム
JP2004170887A (ja) * 2002-11-22 2004-06-17 Canon Inc データ処理システム及びデータ格納方法
US20060200658A1 (en) * 2005-03-07 2006-09-07 Bitfone Corporation Agent framework for mobile devices
JP4888566B2 (ja) * 2007-10-30 2012-02-29 日本電気株式会社 データ圧縮方法
US9558251B2 (en) * 2012-04-03 2017-01-31 Teradata Us, Inc. Transformation functions for compression and decompression of data in computing environments and systems
CN103677878B (zh) * 2012-09-12 2017-07-14 国际商业机器公司 一种打补丁的方法和装置
JPWO2014147672A1 (ja) * 2013-03-22 2017-02-16 富士通株式会社 圧縮装置、圧縮方法、辞書生成装置、辞書生成方法、伸長装置、伸長方法、伸長プログラムおよび情報処理システム
JP6216730B2 (ja) 2015-03-16 2017-10-18 日立オートモティブシステムズ株式会社 ソフト更新装置、ソフト更新方法
MX357454B (es) * 2015-07-16 2018-06-26 Inst Tecnologico Y De Estudios Superiores De Occidente A C Sistema y método para la reprogramación de dispositivos ecu (unidades electrónicas de control) en vehiculos, vía radio digital.
JP5905633B1 (ja) 2015-10-22 2016-04-20 有限会社ちょうりゅう 過屈曲過伸展防止用補助具
US11146401B2 (en) * 2016-08-10 2021-10-12 Ford Global Technologies, Llc Software authentication before software update

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08237208A (ja) * 1995-02-23 1996-09-13 Daihatsu Motor Co Ltd 情報送信装置及び情報受信装置
US20080005733A1 (en) * 2006-06-29 2008-01-03 Balaji Ramachandran Method and apparatus for updating firmware and software
CN101557612A (zh) * 2008-04-11 2009-10-14 华硕电脑股份有限公司 处理交递程序的方法及其通讯装置
CN102510409A (zh) * 2011-12-19 2012-06-20 厦门雅迅网络股份有限公司 一种利用无线网络对移动终端程序快速远程更新的方法及系统
US20160313989A1 (en) * 2013-12-16 2016-10-27 Zte Corporation Method and Apparatus for Manufacturing File System Update Package, Method and Apparatus for Updating File System Update Package, and Terminal

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
XIAOLU ZHANG: "《Rapid Android Parser for Investigating DEX files (RAPID)》", 《DIGITAL INVESTIGATION》 *
王少军,王燕: "基于WEB信息管理系统的设计", 集宁师专学报 *
马,史军,季晓勇: "运用数传模块实现无线语音通信的方案设计", 微计算机应用 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095037A (zh) * 2022-01-17 2022-02-25 浙江地芯引力科技有限公司 应用程序的更新方法、更新数据的压缩方法、装置及设备

Also Published As

Publication number Publication date
DE112018001315T5 (de) 2019-12-24
CN110494845B (zh) 2023-07-14
US20210089294A1 (en) 2021-03-25
JP6784636B2 (ja) 2020-11-11
US11513783B2 (en) 2022-11-29
JP2018180948A (ja) 2018-11-15
WO2018190080A1 (ja) 2018-10-18

Similar Documents

Publication Publication Date Title
CN110494845A (zh) 控制装置、程序更新系统、程序更新方法
CN111262876A (zh) 基于区块链的数据处理方法、装置、设备以及存储介质
CN111107051A (zh) 报文传输方法、装置、计算机设备和存储介质
CN113705245A (zh) 语义通信方法、装置、系统、计算机设备及存储介质
CN108696492A (zh) Ip报文的处理方法与装置
US8576237B2 (en) Screen transfer apparatus and method thereof and program storage medium
CN102694730A (zh) 一种并行处理的方法及装置
JP6536444B2 (ja) ネットワークシステム
CN103152606A (zh) 视频文件处理方法及装置、系统
CN109639667A (zh) 基于本地数据解析的数据采集传输方法、装置及设备
WO2021036189A1 (zh) Rdma数据发送及接收方法、电子设备及可读存储介质
JP2021072540A (ja) 画像符号化装置、復号装置、伝送システム、及びその制御方法
CN106033377B (zh) 数据容灾方法及容灾服务器
CN108650264A (zh) 数据传输方法、装置、设备及计算机可读存储介质
CN102868881B (zh) 视频编码系统和方法
CN112422525A (zh) 一种故障数据传输方法、装置、设备及存储介质
CN105959263A (zh) 基于json的机构养老数据交互方法及系统
CN109521895A (zh) 一种基于fpga的外设信号切换的控制方法及装置
EP2485420A1 (en) Data transmitting apparatus, data generating program and data transmitting/receiving method
JPH08317404A (ja) 画像データ送受信システムおよび画像デ−タ送受信方 法
CN105447393B (zh) 用于电力系统的文件传送方法和装置
CN114827125A (zh) 高性能计算云平台并行数据传输方法、系统及介质
CN100542266C (zh) 一种数字电视信号加密方法和系统
JP2021072539A (ja) 画像符号化装置、復号装置、伝送システム、及びその制御方法
JP2005535248A5 (zh)

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Ibaraki

Applicant after: Hitachi astemo Co.,Ltd.

Address before: Ibaraki

Applicant before: HITACHI AUTOMOTIVE SYSTEMS, Ltd.

GR01 Patent grant
GR01 Patent grant