CN113632155A - 运算装置、判定方法 - Google Patents

运算装置、判定方法 Download PDF

Info

Publication number
CN113632155A
CN113632155A CN202080023945.9A CN202080023945A CN113632155A CN 113632155 A CN113632155 A CN 113632155A CN 202080023945 A CN202080023945 A CN 202080023945A CN 113632155 A CN113632155 A CN 113632155A
Authority
CN
China
Prior art keywords
function
information
electronic control
ecu
authentication information
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
CN202080023945.9A
Other languages
English (en)
Other versions
CN113632155B (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 Astemo 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 Astemo Ltd filed Critical Hitachi Astemo Ltd
Publication of CN113632155A publication Critical patent/CN113632155A/zh
Application granted granted Critical
Publication of CN113632155B publication Critical patent/CN113632155B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • G08C17/02Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本发明的运算装置与多个电子控制装置连接,多个电子控制装置由1个以上的电子控制装置构成各自的功能,该运算装置具备:外部通信部,其按每一功能接收包含构成功能的1个以上的电子控制装置的第1识别信息及第1验证信息的功能构成信息;获取部,其从多个电子控制装置各方获取电子控制装置中搭载的软件的版本信息以及电子控制装置的第2识别信息;算出部,其按每一功能而使用版本信息和第2识别信息来制作第2验证信息,该版本信息是构成功能的所有电子控制装置的版本信息而且是获取部所获取到的版本信息,该第2识别信息是构成功能的所有电子控制装置的识别信息;以及判定部,其按每一功能判定第1验证信息及第2验证信息的匹配。

Description

运算装置、判定方法
技术领域
本发明涉及运算装置及判定方法。
背景技术
近年来,由于驾驶辅助功能和自动驾驶技术的进步,汽车用电子控制装置(ECU:Electric Control Unit)中搭载的软件的规模在不断增大。此外,随着软件规模的增大,不仅是软件缺陷所引起的召回次数在增加,每1次需要应对的台数也在增加。因此,对ECU中搭载的软件进行远程更新的技术的需求在不断增长。由于软件的更新变得容易,对应于构成汽车的各功能的硬件和软件的构成的管理就成为了课题。专利文献1中揭示了一种车辆确定系统,其确定配备有多个电子控制装置的车辆,其特征在于,具有:图案存储单元,其以图案形式存储各车辆中搭载的各电子控制装置的识别数据以及表示各电子控制装置间的连接状况的连接数据;以及对照单元,其将任意车辆的图案与所述图案存储单元中存储的图案进行对照,根据任意车辆的图案与所存储的所述图案的同一性来确定所述任意车辆。
现有技术文献
专利文献
专利文献1:日本专利特开2004-276828号公报
发明内容
发明要解决的问题
在专利文献1记载的发明中,无法确认每一功能的构成信息。
解决问题的技术手段
本发明的第1形态的运算装置是一种与多个电子控制装置连接的运算装置,其中,所述多个电子控制装置由1个以上的所述电子控制装置构成各自的功能,该运算装置具备:外部通信部,其按每一所述功能接收功能构成信息,该功能构成信息包含构成所述功能的1个以上的所述电子控制装置的第1识别信息及第1验证信息;获取部,其从所述多个电子控制装置各方获取所述电子控制装置中搭载的软件的版本信息以及所述电子控制装置的第2识别信息;算出部,其按每一所述功能而使用版本信息和所述第2识别信息来制作第2验证信息,该版本信息是构成所述功能的所有所述电子控制装置的版本信息而且是所述获取部所获取到的版本信息,该第2识别信息是构成所述功能的所有所述电子控制装置的识别信息;以及判定部,其按每一所述功能判定所述第1验证信息及所述第2验证信息的匹配。
本发明的第2形态的判定方法是一种由与多个电子控制装置连接的运算装置执行的判定方法,其中,所述多个电子控制装置由1个以上的所述电子控制装置构成各自的功能,该判定方法包含:按每一所述功能接收构成所述功能的1个以上的所述电子控制装置的第1识别信息及第1验证信息;从所述多个电子控制装置各方获取所述电子控制装置中搭载的软件的版本信息以及所述电子控制装置的第2识别信息;按每一所述功能而使用版本信息和所述第2识别信息来制作第2验证信息,该版本信息是构成所述功能的所有所述电子控制装置的版本信息而且是获取到的版本信息,该第2识别信息是构成所述功能的所有所述电子控制装置的识别信息;以及,按每一所述功能判定所述第1验证信息及所述第2验证信息的匹配。
发明的效果
根据本发明,可以确认每一功能的构成信息。
附图说明
图1为表示第1实施方式的功能构成信息管理系统S的构成的图。
图2为表示网关10的硬件构成的框图。
图3为表示发动机控制ECU 13的硬件构成例的框图。
图4为表示在发动机控制ECU 13上动作的控制程序130的构成的框图。
图5为表示服务器2的构成例的框图。
图6为表示功能构成信息61的一例的图。
图7为表示在网关10中动作的网关程序100的构成的框图。
图8为表示本实施方式中的表格验证信息604的验证的概念图。
图9为表示HMI 12上显示的显示画面的一例的图。
图10为表示网关10中的验证处理的流程图。
图11为表示网关10中的修复处理的流程图。
图12为表示ECU的软件更新的次序的顺序图。
图13为表示服务器2中的功能构成信息61的登记画面的一例的图。
图14为表示变形例1中的功能构成信息管理系统Sa的构成的图。
图15为表示变形例1中的诊断装置5的构成例的框图。
图16为表示变形例2中的功能构成信息64的一例的图。
图17为表示变形例3中的功能构成信息65的一例的图。
图18为表示第2实施方式中的按功能的版本信息951的一例的图。
图19为表示第2实施方式中的功能构成信息62的一例的图。
图20为表示第3实施方式中的按功能的版本信息952的一例的图。
图21为表示第3实施方式中的功能构成信息63的一例的图。
图22为表示第4实施方式中的功能D的功能构成信息61c的图。
图23为表示第4实施方式中的功能限制信息91的一例的图。
图24为表示第4实施方式中的网关10中的功能限制处理的流程图。
具体实施方式
-第1实施方式-
下面,参考图1~图13,对本发明的运算装置即网关的第1实施方式的功能构成信息管理系统进行说明。
(系统构成)
图1为表示第1实施方式的功能构成信息管理系统S的构成的图。功能构成信息管理系统S具备车辆1及服务器2。车辆1与服务器2经由连接接入网络或站点的互联网3以及通信服务提供商提供的接入网络4加以连接。
车辆1具备网关10、通信模块11、Human Machine Interface(HMI)12以及多个ECU(电子控制装置)。网关10、通信模块11以及HMI 12借助车内网络10a加以连接。
车辆1中配备的ECU无特别限定,本实施方式中例如配备发动机控制ECU 13、制动控制ECU 14、自动驾驶ECU 15以及先进驾驶辅助系统(ADAS)ECU 16。网关10与这些ECU借助车内网络10b加以连接。以下将与网关10连接的这些ECU统称为“下属ECU”。
车内网络10a及车内网络10b采用已知的通信规格例如Control Area Network(CAN)(注册商标)、Local Interconnect Network(LIN)以及FlexRay、Ethernet(注册商标)中的任一种。在本实施方式中,车内网络10b由CAN构成,车内网络10a由Ethernet构成。但车内网络10a及车内网络10b也可采用同一通信规格。此外,虽然图1中没有图示,但各种ECU等车辆内的各构成要素借助电力线连接到蓄电池而得到电力供给。
网关10进行下属ECU彼此的通信数据的中继、下属ECU的软件更新、以及下属ECU中搭载的软件的匹配性确认。但以下也将软件的匹配性确认称为“验证”或“验证处理”。再者,本实施方式中网关10不进行网关10自身的软件更新及匹配性确认,但网关10也可进行网关10自身的软件更新及匹配性确认。再者,在本实施方式中,“验证”与“匹配”是以相同意义加以使用。
通信模块11对网关10、HMI 12以及下属ECU与服务器2的通信进行中继。HMI 12是用于受理向车辆1的乘员即用户的信息呈现或者来自用户的输入的装置。HMI 12由进行画面显示的显示装置以及各种开关等输入装置或者它们组合而成的触控面板等构成。发动机控制ECU 13进行发动机的控制。制动控制ECU 14进行制动的控制。自动驾驶ECU 15在自动驾驶时进行环境的识别、车辆的启动指示等。ADAS ECU 16进行自动制动等驾驶辅助控制。
服务器2将功能构成信息61发送至网关10。网关10根据功能构成信息61来管理车辆1的功能构成。
(网关的硬件构成)
图2为表示网关10的硬件构成的框图。网关10具备微电脑101、FROM(FlashROM)102、CAN用通信I/F(接口)104以及Ethernet用通信I/F 105。
微电脑101具备CPU 1011、SRAM 1012、FROM 1013、CAN通信控制器1014以及Ether通信控制器1015。微电脑101的CPU 1011执行FROM 1013中存放的程序,对网关10内的其他构成要素进行控制,同时与借助车内网络连接的其他设备进行数据收发指示等而使网关10发挥功能。其中,也可使用ASIC(Application Specific Integrated Circuit)或FPGA(Field Programmable Gate Array)代替CPU 1011。
FROM 102为非易失性存储器,存放从服务器2接收到的信息。CAN通信控制器1014是CAN通信用的接口,根据微电脑101的指示而经由车内网络10b与车内网络10b上连接的下属ECU之间进行数据的收发。Ether通信控制器1015是Ethernet通信用的接口,根据微电脑101的指示而经由车内网络10a与车内网络10a上连接的设备之间进行数据的收发。
(ECU的构成)
图3为表示发动机控制ECU 13的硬件构成例的框图。其中,本实施方式中成为软件更新对象的ECU都至少具备图3所示的硬件构成。发动机控制ECU 13具备微电脑131及CAN用通信I/F 133。
微电脑131具备CPU 1311、SRAM 1312、FROM 1313、通信控制器1314以及I/O控制器1315。微电脑131执行FROM 1313中存放的控制程序,对发动机控制ECU 13内的其他构成要素和经由I/O连接的传感器/执行器132进行控制,同时与借助车内网络连接的其他设备进行数据收发指示等而实施发动机控制。传感器/执行器132根据微电脑131的指示一方面获取发动机控制所需的数据、另一方面执行发动机的控制。
FROM 1313中还存放其中存放的控制程序的版本信息。此外,FROM 1313中还存放确定该ECU的种类和功能的识别信息即ECU ID。再者,ECU ID也称为“零件编号”或“型号”。ECU ID不是用于识别各产品的所谓的制造编号,在ECU故障时可以更换为具有同一ECU ID的另一产品。
图4为表示在发动机控制ECU 13上动作的控制程序130的构成的框图。其中,本实施方式中成为软件更新对象的ECU都至少具备与图4所示的控制程序130同样的构成。
实现ECU 13的功能的控制程序130存放在微电脑131的FROM 1313中并由CPU 1311加以执行。图4中以功能块的形式来表现功能性的集合,可分割成多个各功能块,也可将若干功能块加以整合。此外,控制程序可由1个软件来实现,也可由2个以上的软件的组合来实现。
控制程序130具备控制处理部13001、更新控制部13003、信息管理部13004以及通信控制部13005。控制处理部13001控制I/O控制器1315,并且控制传感器/执行器132来实施发动机控制。停止部130011经由通信控制部13005接收来自网关10的停止指令和恢复指令,进行功能的停止/恢复控制。
更新控制部13003经由通信控制部13005接收来自网关10的动作指令和用于软件更新的数据而控制软件的更新。信息管理部13004进行FROM 1313中存放的软件的版本信息和ECU ID的读出以及伴随软件更新而来的版本信息的重写。
通信控制部13005按照更新控制部13003等的指示来控制通信控制器1314,与车内网络10b上连接的设备进行通信。通信时,解析/构成CAN帧。此外,通信控制部13005进行遵循UDS等诊断通信协议的命令的生成/解析。
(功能和构成)
在本实施方式中,车辆1所具有的功能是由某1个ECU或者通过多个ECU进行协作来实现。所谓协作,意指协同动作,但各ECU并非一定要认识进行协作的其他ECU,只要多个ECU在结果上参与了该功能的实现即可。例如,在通过发动机控制ECU 13与自动驾驶ECU 15的协作来实现某一功能X的情况下,在本实施方式中便叫做发动机控制ECU 13及自动驾驶ECU15“构成”功能X。此外,也叫做发动机控制ECU 13及自动驾驶ECU 15“实现”功能X。
(服务器的构成)
图5为表示服务器2的构成例的框图。服务器2具备CPU 201、主存储部202、辅助存储部203、通信部204、输入部205、显示部206。CPU 201在主存储部202上执行辅助存储部203等当中积存的服务器用程序而进行功能构成管理信息的登记和递送的控制。辅助存储部203存储功能构成管理信息和递送至车辆的ECU软件更新用的数据。
通信部204经由互联网与车辆1之间进行数据的收发。输入部205受理来自操作服务器2的操作人员的操作和输入信息。显示部206向操作服务器2的操作人员提供与功能构成管理信息登记相关的信息。
(功能构成管理信息)
图6为表示在服务器2中生成、由诊断装置5或网关10的表格管理部10001管理的功能构成信息61的一例的图。图6的(a)展示变更前的功能构成信息61即功能构成信息61a,图6的(b)展示变更后的功能构成信息61即功能构成信息61b。
图6中展示的是以表格形式来管理功能构成信息61、记录每一功能的构成信息的情况的例子。功能构成信息61具有多个记录。功能构成信息61的各记录具备功能识别ID601、功能识别验证信息602、组合表603、组合表验证信息604以及标记605栏。在图6所示的例子中,功能构成信息61具有R11、R21以及R31这3个记录,但功能构成信息61所具有的记录并无上限,只要是1个以上即可。此外,功能识别验证信息602及表格验证信息604栏存放服务器2的CPU 201的运算结果。其他栏的信息由操作人员输入。
功能识别ID 601是存放用于识别构成功能的ECU的硬件与软件的组合的识别信息的栏位。其中,此处所说的“软件”这一概念还包含版本编号。因而,不仅是在组合表603中登记的ECU ID发生了变更的情况下,在软件的版本发生了变化的情况下功能识别ID 601的值也会变更。功能识别ID 601例如为识别功能的字符串与对应于ECU ID或版本的变化的数字的组合。
功能识别验证信息602是存放功能识别ID 601的完整性验证信息的区域。功能识别ID 601的完整性验证信息例如为功能识别ID 601的数字签名。
组合表603由NET ID 6031、ECU ID 6032以及软件版本6033构成。组合表603中存放与功能识别ID 601所表示的功能相关的ECU的硬件与软件的组合的信息。NET ID 6031中存放表示该ECU在车载网络上的识别信息的ID。在车载网络10b为CAN的情况下,NET ID6031中存放CAN ID,在车载网络10b为Ethernet的情况下,NET ID 6031中存放IP地址或MAC地址。NET ID 6031中也可包含网络类别、通道编号等未图示的信息。
ECU ID 6032中存放用于识别ECU的种类和功能的信息。ECU ID 6032中例如存放表示发动机控制ECU 13的种类和功能的识别信息即“发动机”。作为ECU的识别信息,也可利用零件编号等。即,NET ID 6031是ECU在网络上的标识符,相对于此,ECU ID 6032是表示ECU的种类的标识符。此外,以下有时将NET ID 6031称为“第1识别信息”,有时将ECU ID6032称为“第2识别信息”。
软件版本6033是存放用于识别ECU中搭载的软件的版本的信息的栏位。再者,以下也将ECU ID 6032中存放的信息和软件版本6033中存放的信息统称为“构成信息”。
组合表验证信息604是存放组合表603中登记的信息的完整性验证信息的区域。组合表验证信息604例如为连结功能识别ID 601与ECU ID 6032、软件版本6033得到的值的数字签名。
标记605存放表示在组合表603中登记的信息与从下属ECU采集到的信息存在矛盾的情况下是否许可功能识别ID 601所表示的功能的动作继续的信息。在许可继续动作的情况下,存放“动作许可”,在不容许动作许可而需要停止的情况下,存放“停止”。
图6的(a)的记录R1是存放有与功能识别ID“A1”所表示的功能A相关的信息的记录。记录R1的功能识别验证信息602栏中存放有“aaa”,NET ID 6031栏中存放有“700”,ECUID 6032栏中存放有表示是发动机控制ECU 13这一情况的“发动机”,软件版本6033栏中存放有“1.0.0.0”,组合表验证信息604栏中存放有“taaa”,标记605栏中存放有即便在发生了失配的情况下也许可该功能的动作继续的“动作许可”。
图6的(a)的记录R2是存放有与功能识别ID“B1”所表示的功能B相关的信息的记录。记录R2的功能识别验证信息602栏中存放有“bbb”,NET ID 6031栏中存放有“701”,ECUID 6032栏中存放有表示是制动控制ECU 14这一情况的“制动”,软件版本6033栏中存放有“1.0.0.0”,组合表验证信息604栏中存放有“tbbb”,标记605栏中存放有表示在发生了失配时须停止该功能的动作这一情况的“停止”。
图6的(a)的记录R3是存放有与功能识别ID“C1”所表示的功能C相关的信息的记录。记录R3的功能识别验证信息602栏中存放有“ccc”。构成功能C的ECU为3个,因此NET ID6031栏中分别存放有“700”“701”“702”,ECU ID 6032栏中分别存放有“发动机”“制动”“ADAS”,软件版本6033栏中分别存放有“1.0.0.0”“1.0.0.0”“1.0.0.0”。记录R3的组合表验证信息604栏中存放有“tccc”,标记605栏中存放有表示在发生了失配时须停止该功能的动作这一情况的“停止”。
再者,此处展示的是功能C由3个ECU构成的例子,但如前文所述,1个功能可由任意数量的ECU构成,构成1个功能的ECU的数量并无上限。
图6的(b)为表示从图6的(b)所示的功能构成信息61a作了发动机控制ECU 13的软件更新的情况下的更新后的功能构成信息61即功能构成信息61b的图。具体而言,图6的(b)中将发动机控制ECU 13的软件版本从“1.0.0.0”更新成了“1.0.0.1”。图6的(b)所示的记录R12、R22以及R32分别对应于图6的(a)所示的记录R11、R21以及R31。
随着软件的更新,如图6的(b)的记录R12及R32所示,ECU ID 6032为“发动机”的记录的软件版本6033更新成了“1.0.0.1”。此外,构成要素中包含发动机控制ECU 13的记录D101b和记录D103b的功能的功能识别ID 601分别更新成了“A2”和“C2”。如此,在功能构成信息中,随着功能实现相关的ECU的构成变更,功能识别ID须加以更新。
(网关或诊断装置的软件构成)
图7为表示在网关10中动作的网关程序100的构成的框图。
实现网关10的功能的网关程序100存放在微电脑101的FROM 1013中并由CPU 1011执行。图7中以功能块的形式来表现功能性的集合,可分割成多个各功能块,也可将若干功能块加以整合。此外,控制程序可由1个软件来实现,也可由2个以上的软件的组合来实现。
网关程序100包含控制部10000、表格管理部10001、算出判定部10002、获取部10004、停止控制部10005以及通信控制部10006。控制部10000控制表格管理部10001、算出判定部10002、获取部10004、停止控制部10005以及通信控制部10006。表格管理部10001管理FROM 1013中存放的功能构成信息61。
算出判定部10002使用从获取部10004获取到的构成信息来算出验证值,并判定与功能构成信息61中包含的表格验证信息604的匹配。算出判定部10002将判定的结果输出至停止控制部10005。验证值的算出方法与服务器2相同。若算出判定部10002在验证值的算出中使用的值也就是ECU ID和软件的版本与服务器2在算出中使用的值相同,则验证值与表格验证信息604匹配。
获取部10004根据表格管理部10001所管理的信息从ECU获取ECU ID和软件版本等构成信息,并输出至验证信息算出部。停止控制部10005根据表格管理部10001所管理的表示动作许可/停止的标记和算出判定部10002的输出信息来进行发生了失配的功能的动作继续/停止控制。
通信控制部10006按照停止控制部10005等的指示来控制CAN通信控制器1014及Ether通信控制器1015,与车内网络10a及10b上连接的设备进行通信。在与车内网络10a上连接的设备通信时,通信控制部10007解析/生成TCP/IP包、UDP/IP包等。此外,在与车内网络10b上连接的设备通信时,通信控制部10006解析/生成CAN帧。再者,由于通信控制部10006可经由通信模块11与车辆1外部通信,因此也称为“外部通信部”。
(验证)
图8为表示本实施方式中的表格验证信息604的验证的概念图。为方便起见,图8中赋予了步骤编号,以表现与以下说明的对应关系。该步骤编号与后文叙述的流程图的步骤编号不对应。
服务器2中预先存放有密钥SK,网关10中预先存放有公钥PK。服务器2的CPU 201按照预先定下的规则、按每一功能制作将构成信息串连而成的位串X(S901)。例如在像图6所示那样构成功能A的ECU只有“发动机控制ECU”的情况下,要制作功能A的表格验证信息604,CPU 201根据规定规则将“发动机”转换为例如UTF-8的字符代码编号而获得“0x834712345”,根据规定规则对版本编号“1.0.0.0”进行转换而获得“0x1000”。继而,将这2个位串连结而获得的“0x8347123451000”作为位串X。
再者,在某一功能由多个ECU构成的情况下,对于制作位串X时的位串排列顺序,例如预先规定有按NET ID从小到大的顺序进行排列等规则。
继而,CPU 201以该位串X为对象而使用密钥SK来制作数字签名Y(S902)。制作出的数字签名Y存放为功能构成信息61的表格验证信息604,发送至网关10。数字签名Y的制作方式预先与网关10进行了共享。
网关10参考从服务器2接收到的功能构成信息61,按每一功能从ECU读出构成信息,按照预先定下的规则制作验证值即位串Z(S903)。该位串Z的规则与服务器2中存放的位串X的制作规则相同。继而,网关10使用公钥PK对功能构成信息61中存放的表格验证信息604即数字签名Y进行解密,获得位串X(S904)。
可以明确的是,如果预先准备的密钥SK与公钥PK的组合是恰当的,则不论连接到网关10的ECU如何,网关10中解密获得的位串X都与服务器2中制作出的位串X相同。最后,网关10通过判断位串X与位串Z是否相同来判断验证合格与否(S905)。
其中,在使用位串X的数字签名Y的制作中,也可不直接使用位串X而是针对位串X的哈希值或者位串X与预先定下的值的XOR值来制作数字签名Y。此外,上述说明中的S903和S904也可调换执行顺序,也可大致同时执行。再者,以下也将位串Z称为“验证值”。此外,如上所述,位串Z的比较对象为位串X,但为了在以下的说明中避免冗长的记载,便简记作“判定位串Z与数字签名Y的匹配”或者“判定验证值与表格验证信息604的匹配”。
(车辆侧画面显示例)
图9为表示HMI 12上显示的显示画面的一例的图。图9的(a)所示的显示G1a是将检测到了功能构成信息与实际构成的失配这一情况展示给用户的画面例。在因失配而已使功能停止的情况下,可进而在本画面上显示已停止功能这一内容的信息。图9的(b)所示的显示G1b是将由于功能构成信息失配、所以已停止功能的一部分这一情况展示给用户的画面例。
图9的(c)所示的显示G1c是由于功能构成信息失配且无法处理、所以督促用户联系经销商以便修复的画面例。图9的(d)所示的显示G1d是将功能构成信息的失配得到修复、功能的一部分已恢复这一情况展示给用户的画面例。
(确认次序)
图10为表示网关10中的验证处理的流程图。当车辆1的点火开关设为导通时,执行图10所示的处理。再者,网关10可借助信号线与点火开关连接而从点火开关直接接收表示导通/断开的状态的信号,也可从与点火开关连接的未图示的ECU接收动作指令信号来开始动作。
首先,控制部10000将处理对象记录x设定为1(S101)。在功能构成信息61如图6的(a)所示的情况下,在X=1时读入记录R11,在X=2时读入记录R21。通过后文叙述的S112的判断,网关程序100按功能构成信息61中存放的记录的数量重复S103~S111的处理。
控制部10000读出功能构成信息61中的处理对象记录x的NET ID,指示获取部10004从具有该NET ID的ECU读出构成信息(S103)。获取部10004经由通信控制部10006从ECU读出构成信息也就是ECU ID与软件版本的组合,并将读出的构成信息交给算出判定部10002(S104)。再者,在像图6的(a)所示的记录R31那样存在多个NET ID的情况下,针对这所有的NET ID来读出构成信息。算出判定部10002使用接收到的构成信息来算出验证信息(S105)。
算出判定部10002读出功能构成信息61的处理对象记录x中的表格验证信息604,判断与S105中算出的验证值的匹配(S106)。在算出判定部10002判断验证值与表格验证信息604相匹配的情况下(S107:是),前进至S112,由控制部10000确认有无未确认的记录。在判断没有未确认的记录的情况下(S112:否),控制部10000确认有无已确认记录的失配。在控制部10000判断完全没有失配也就是算出判定部10002针对功能构成信息61的所有记录算出的验证值与从功能构成信息61中读出的表格验证信息604都匹配的情况下(S113:否),结束处理。
在判断有失配也就是算出判定部10002针对功能构成信息61的任一记录算出的验证值与从功能构成信息61中读出的表格验证信息604不匹配的情况下(S113:是),控制部10000指示HMI显示图9的画面G1a(S114),结束处理。在有未确认的记录的情况下(S112:是),控制部10000将处理对象记录x更新为下一记录(S115),返回至S103。
在判断不匹配的情况下(S107:否),控制部10000记录版本信息不匹配这一内容的故障码即DTC(diagnostic trouble code)码(S108)。停止控制部10005从控制部10000接收处理对象记录X和比较结果,并从功能构成信息61中读出相应记录的标记605(S109)。在读出的标记605为“动作许可”的情况下(S110:是),停止控制部10005什么都不做而继续处理。在读出的标记605不是“动作许可”的情况下(S110:否),经由通信控制部10006指示功能构成信息61的处理对象记录X中登记的相关ECU停止该功能(S111)。以上为图10的说明。
(失配时的修复次序)
图11为表示网关10中的修复处理的流程图。图11所示的处理是在图10所示的处理完成后而且是功能构成信息61的任一记录存在失配的情况下执行。但图11所示的处理并非一定要等待图10所示的处理完成才开始,例如也可在S107中作出否定判断时以与S108并行的方式开始执行。
控制部10000首先将包含功能构成信息失配的信息的构成信息发送至服务器2(S201)。服务器2根据从网关10接收到的构成信息来发送下面3个答复中的任一个。第1答复是功能构成信息61的更新指示,第2答复是ECU的软件更新指示,第3答复是功能构成信息61以及ECU的软件的更新指示。服务器2例如根据功能构成信息61的更新日期时间、ECU的软件的更新日期时间、软件的版本编号来选择采用第1答复~第3答复中哪一个。但服务器2也可返回不含更新指示的答复。
当控制部10000接收到来自服务器2的答复时(S202),判定其中是否包含更新指示。在判断不含更新指示的情况下(S203:否),控制部10000指示HMI 12显示图9的(c)所示的画面G1c(S204),结束图11所示的处理。在判断答复中包含更新指示的情况下,控制部10000判定来自服务器2的答复中是否包含功能构成信息61的更新指示。在判断包含功能构成信息61的更新指示的情况下(S205:是),控制部10000对功能构成信息61进行更新(S206)。
接着,控制部10000判定来自服务器2的答复中是否包含ECU的软件更新指示。在判断不含ECU的软件更新指示的情况下(S207:否),控制部10000指示已停止功能的ECU恢复功能(S209),并指示HMI 12显示图9的(d)所示的画面G1d(S210),结束图11所示的处理。在判断包含ECU的软件更新指示的情况下(S207:是),控制部10000执行ECU的软件更新处理(S208)。继而,当软件更新完成时,控制部10000指示已停止功能的ECU恢复功能(S209),并指示HMI 12显示图9的(d)所示的画面G1d(S210),结束图11所示的处理。
(软件更新次序)
图12为表示ECU的软件更新的次序的顺序图。再者,作为处理的一例,图12中是以发动机控制ECU 13为软件更新的处理对象来进行说明,但以下所说明的次序不管处理对象ECU是哪一个都是共通的。
网关10首先从身为更新对象的发动机控制ECU 13读出ECU ID和软件版本(S2081)。接着,网关10将采集到的ECU ID和软件版本也就是构成信息发送至服务器(S2082)。服务器2根据接收到的构成信息来判断有无该车辆的软件更新,并将作为其结果的更新信息发送至网关10(S2083)。接着,网关10从服务器2下载更新所需的数据(S2084)。更新所需的数据中包含新的软件、更新后的功能构成信息61。
接着,网关10控制更新对象即发动机控制ECU 13来更新发动机控制ECU 13的软件(S2085)。当更新完成时,网关10更新功能构成信息61(S2086)。
再者,在图11的S208中的软件更新处理中,S2081~S2083由于已在图11的S201中实施过了,因此可以省略实施。此外,在下载到的数据中不含功能构成信息61的情况下,网关10可不实施S2086。
(服务器侧画面显示例)
图13为表示服务器2中的功能构成信息61的登记画面的一例的图。登记画面G2显示在服务器2的显示部206上。功能构成信息61的登记画面G2由对象功能G21、功能识别IDG22、功能实现ECU G23、失配时动作G24、登记按钮G25以及行追加按钮G26构成。
对象功能G21是设定对紧急制动功能等管理对象功能进行识别的信息的区域,本例中是像符号G21a所示那样设定“功能C”。功能识别ID G22是设定用于唯一地识别管理对象的构成的识别信息的区域,本例中是像符号G22a所示那样设定“C1”。
相关ECU G23是设定用于唯一地确定实现对象功能G21的ECU的信息的区域,由NETID、ECU ID、软件版本构成。本例中展示的是由符号G23a~G23c所示的3个ECU来实现功能C这一情况。符号G23a所示的ECU的NET ID为“700”、ECU ID为“发动机”、软件版本为“1.0.0.0”。符号G23b所示的ECU的NET ID为“701”、ECU ID为“制动”、软件版本为“1.0.0.0”。符号G23c所示的ECU的NET ID为“702”、ECU ID为“ADAS”、软件版本为“1.0.0.0”。
失配时动作G24是设定在对象功能G21所表示的功能的构成信息中检测到失配的情况下的该功能的动作的区域,本例中是像符号G24a所示那样设定“停止”。登记按钮G25是用于将输入的信息登记至服务器2的按钮,当操作人员点按该按钮时,由CPU 201算出功能识别验证信息602及表格验证信息604栏的值。行追加按钮G26是用于增加功能实现ECU的输入栏的按钮。
根据上述第1实施方式,获得以下作用效果。
(1)网关10与多个ECU连接。多个ECU各方由1个以上的ECU来构成各自的功能。网关10具备:外部通信部即通信控制部10006,其按每一功能接收功能构成信息61,该功能构成信息61包含构成功能的1个以上的ECU的第1识别信息即NET ID 6031以及第1验证信息即表格验证信息604;获取部10004,其从多个ECU各方获取ECU中搭载的软件版本6033以及ECU的第2识别信息即ECU ID 6032;算出判定部10002,其按每一功能而使用构成功能的所有ECU的版本信息而且是获取部所获取到的软件版本6033以及构成功能的所有ECU的第2识别信息即ECU ID 6032来算出第2验证信息即位串Z;以及算出判定部10002,其按每一功能判定第1验证信息及第2验证信息的匹配。因此,网关10可以针对连接至网关10的ECU所构成的所有功能而确认每一功能的构成信息。
在某一功能由多个ECU构成的情况下,这多个ECU中搭载的软件的版本较理想为是与预期一致的组合。其原因在于,例如若是没有事先验证过的组合,则有时无法保证动作。此外,由于软件的更新也可以经由无线通信来执行,因此与开到专卖店来进行软件更新的情况相比,软件版本的组合变为预定之外的组合的可能性升高。此外,在ECU发生了故障时要更换为同一型号的其他ECU,从而还有可能发生该ECU的软件版本与更换前的ECU不一致的情况。在这样的情况下,通过进行本实施方式中展示过的验证处理,可以确认每一功能的构成信息来发现问题或者确认没有问题。
(2)所谓第1识别信息,是ECU在网络上的标识符即NET ID 6031。所谓第2识别信息,是表示ECU的种类的标识符即ECU ID 6032。
(3)功能构成信息61中按每一功能包含表示许可或拒绝失配时的执行的标记605。当算出判定部10002判断第1验证信息与第2验证信息不匹配时,停止控制部10005使与被判定为不匹配的第2验证信息相关的功能而且是具有功能构成信息中的标记表示在失配时拒绝执行这一内容的标记的功能停止。因此,网关10可以根据标记605的设定在失配时使功能停止。
(4)当算出判定部10002判断第1验证信息与第2验证信息不匹配时,控制部10000根据从Ether通信控制器1015收到的指令对功能构成信息61以及ECU的软件中的至少一方进行更新。因此,网关10可以在失配时对功能构成信息61以及ECU的软件中的至少一方进行更新。
(5)当算出判定部10002判断第1验证信息与第2验证信息不匹配时,控制部10000将发生了失配这一情况以故障码的形式记录至存储部即FROM 102。因此,可以通过参考FROM 102在事后确认失配的发生。
(6)当算出判定部10002判断第1验证信息与第2验证信息不匹配时,控制部10000让显示部即HMI 12显示发生了失配这一内容。因此,车辆1的乘员可以通过HMI 12的显示来知晓失配的发生。
(7)网关10搭载于车辆1中。当车辆1的点火开关设为导通时,获取部10004及算出判定部10002开始动作。因此,通过在车辆1启动时进行动作,可以在车辆1开始行驶之前或者车辆1正以低速行驶的期间内检测到软件的失配。
(变形例1)
各功能的构成信息的确认也可由网关10以外的装置来实现。例如可由能连接至车辆1的诊断装置来执行。
图14为表示变形例1中的功能构成信息管理系统Sa的构成的图。图14中追加了诊断装置5,这一点与第1实施方式不一样。在本变形例中,服务器2所发送的功能构成信息61由诊断装置5接收。诊断装置5与网关10经由OBD2等通用连接器600加以连接。再者,图14中,通信模块11与服务器2没有连接,但在更新ECU的软件时,与第1实施方式一样,通信模块11会与服务器2进行通信。
(诊断装置的构成)
图15为表示诊断装置5的构成例的框图。诊断装置5具备CPU 501、主存储部502、辅助存储部503、第1通信部504、第2通信部505、输入部506以及显示部507。CPU 501在主存储部502上执行辅助存储部503等当中积存的程序而进行功能构成管理的控制。辅助存储部503存储功能构成管理信息和递送至车辆的ECU软件更新用的数据。
第1通信部504经由互联网3与服务器2之间进行数据的收发。第2通信部505与车辆1之间进行数据的收发。输入部506受理来自操作诊断装置5的操作人员的操作和输入信息。显示部507向操作诊断装置5的操作人员显示功能构成管理信息。
(动作)
在本变形例中,通过由操作人员从输入部506给出动作指示来开始图10所示的验证处理。在本变形例中,网关10根据诊断装置5的动作指令来中介与各ECU的通信。其他动作与第1实施方式相同。
(变形例2)
在上述第1实施方式中,功能构成信息61中还包含ECU ID 6032及软件版本6033。但包括验证处理在内,网关10都不特别需要ECU ID 6032及软件版本6033,因此功能构成信息61中也可不含ECU ID 6032及软件版本6033。
图16为表示变形例1中的功能构成信息64的一例的图。功能构成信息64中,组合表603仅由NET ID 6031构成。在本变形例中,网关10的动作也与第1实施方式相同。如前文所述,在第1实施方式中,网关10没有参考从服务器2接收到的功能构成信息61中记载的ECUID 6034及功能版本6035的机会。因此,即便从功能构成信息64中删掉ECU ID 6034及功能版本6035也无任何影响。
(变形例3)
在上述第1实施方式中,功能构成信息61中还包含NET ID 6031及软件版本6033。但功能构成信息61中也可不含NET ID 6031及软件版本6033。
图17为表示变形例3中的功能构成信息65的一例的图。功能构成信息65中,组合表603仅由ECU ID 6032构成。在本变形例中,以如下方式变更网关10的图10的S103~S105。即,网关10向所连接的所有ECU发送询问ECU ID和软件版本的消息。继而,按功能构成信息65中记载的每一功能而使用获取到的ECU ID和软件版本来制作验证信息也就是图8的位串Z。
在第1实施方式中,网关10利用了NET ID 6031,以按每一功能确定构成功能的ECU来进行询问。但在本变形例中,功能构成信息65中不含NET ID 6031,因此向所连接的所有ECU进行询问。在本变形例中,功能构成信息65中构成各功能的ECU借助ECU ID 6032来加以确定,因此,网关10使用以针对询问的回答的形式获得的ECU ID和版本信息而按每一功能制作位串Z。
(变形例4)
在上述第1实施方式中,功能构成信息61中包含标记605。但功能构成信息61中也可不含标记605。在该情况下,网关10设为在图10的S110中一律许可动作或者一律不许可动作的构成。进而,在该情况下,也可限制功能来代替停止动作。所谓功能的限制,是降低处理能力或者减少要实现的功能的种类。
根据本变形例,获得以下作用效果。
(8)当算出判定部10002判断第1验证信息与第2验证信息不匹配时,停止控制部10005停止或限制与被判定为不匹配的第2验证信息相关的功能。因此,可以一律停止或限制检测到软件的失配的功能。
(变形例5)
在上述第1实施方式中,是利用公钥加密方式在服务器2与网关10之间进行信息的验证。但验证的方式并无特别限定,替换为已知的各种方法或者将已知的方法加以组合也是包含在本发明的范围内的。例如,即便同样是公钥加密方式,也可通过在服务器2中进行基于密钥SK的加密、在网关10中进行基于公钥PK的解密来进行验证。此外,也可利用对称加密方式代替公钥加密方式,也可利用消息认证码或加密盐。
(变形例6)
来自服务器2的对网关10的答复中也可包含恢复可否标记。在该情况下,网关10的控制部10000在图11的步骤S209中仅对设定了借助恢复可否标记而可恢复这一内容的标记的ECU指示功能的恢复。
(变形例7)
虽然第1实施方式中没有特别说明,但网关10也可针对功能识别验证信息602以与表格验证信息604相同的方式也进行验证。在该情况下,网关10例如在图10的S108之前进行功能识别验证信息602的验证,若验证成功,则前进至S112,若验证失败,则前进至S108。根据本变形例,可以验证功能识别ID 601。
(变形例8)
服务器2在表格验证信息604的算出中也可进而利用功能识别ID 601及NET ID6031中的至少一方。在该情况下,网关10也在验证处理中进行同样的算出。
(变形例9)
在上述第1实施方式中,网关10是在车辆1的点火开关设为导通时开始验证处理。但网关10也可从外部接收动作指令来开始验证处理。例如,网关10也可经由通信模块11从车辆1外部接收动作指令,也可从车辆1中搭载的ECU等接收动作指令来开始动作。
(变形例10)
在上述第1实施方式中,是根据操作人员输入的信息由服务器2制作功能构成信息61。但也可预先由操作人员制作功能构成信息61并由操作人员将功能构成信息61本身存放至服务器2的辅助存储部203。
-第2实施方式-
参考图18~图19,对本发明的运算装置即网关的第2实施方式进行说明。在以下的说明中,对与第1实施方式相同的构成要素标注相同符号而主要说明不同点。不特别说明的内容则与第1实施方式相同。本实施方式与第1实施方式的主要差异在于,按每一功能在ECU内管理软件的版本。此外,在本实施方式中,功能构成信息中存放的信息与第1实施方式不一样。
图18为表示第2实施方式中存放在各ECU中的按功能的版本信息951的一例的图。图18中使用发动机控制ECU 13作为具体例,图18的(a)展示发动机控制ECU 13的更新前的按功能的版本信息951a,图18的(b)展示发动机控制ECU 13的更新后的按功能的版本信息951b。发动机控制ECU 13为功能A及功能C的实现作出了贡献。因此,发动机控制ECU 13中保存的按功能的版本信息951像图18的(a)所示那样由软件版本“1.0.0.0”、功能A版本“1”、以及功能C版本“1”构成。按功能的版本信息950随着软件的更新得到更新。
在图18的(b)所示的更新后的按功能的版本信息951b中,软件版本更新成了“1.0.1.0”,功能A版本更新成了“2”。但未进行与功能C相关的更新,因此功能C版本保持“1”不变。
图19为表示本实施方式中的功能构成信息62的一例的图。图19的(a)为表示更新前的功能构成信息62a的图,图19的(b)为表示更新后的功能构成信息62b的图。在图19的(a)所示的例子中,包含R41、R51以及R61等记录,在图19的(b)所示的例子中,包含R42、R52以及R62等记录。本实施方式中的功能构成信息62与第1实施方式中的功能构成信息61相比,删掉了功能构成信息61中的软件版本6033栏,另一方面追加了DID6034和功能版本6035栏。
DID 6034中存放从ECU读出每一功能的版本时使用的识别信息。DID 6034是为了版本信息的读出而设定的功能的识别信息。DID 6034可像图19所示那样以所有ECU通用的方式与功能一一对应,也可按每一ECU使DID与功能的对应不一样。例如图19展示了记录R61中借助3个ECU通用的DID 6034即“F003”来读出功能C的版本信息这一情况。
图19的(a)与图19的(b)相比,记录R41与记录R42不一样,但记录R51及记录R61与记录R52及记录R62相同。其原因在于,软件的版本信息本身不存放在功能构成信息62中,仅将各软件的各功能的版本信息存放在了功能构成信息62中。
(其他不同点)
在本实施方式中,当各ECU从网关10收到连同有DID 6034的软件的版本信息的询问时,进行以下动作。即,ECU参考FROM 1313中存放的功能构成信息62而返回与接收到的DID 6034相对应的功能的版本信息。
网关10在图10的S104中向功能构成信息62中存放的NET ID的ECU进行连同有DID6034的版本信息的询问。例如在处理对象记录X=1的情况下,网关10向NET ID为“700”的ECU进行连同有“F001”这一DID 6034的版本信息的询问。
在本实施方式中,服务器2使用ECU ID 6032以及功能版本6035来制作位串X,并制作其数字签名即表格验证信息604。网关10使用ECU ID 6032以及功能版本6035来制作位串Z,并验证表格验证信息604。
如上所述,通过按每一功能在ECU内管理相关软件部分的版本信息,可以谋求减少软件更新时对功能构成信息的影响、减少功能构成信息62的变更部位。
(第2实施方式的变形例)
服务器2在位串X的制作中也可进而使用DID 6034的值。在该情况下,网关10也在位串Z的制作中使用DID 6034的值。
-第3实施方式-
参考图20~图21,对本发明的运算装置即网关的第3实施方式进行说明。在以下的说明中,对与第2实施方式相同的构成要素标注相同符号而主要说明不同点。不特别说明的内容则与第2实施方式相同。在本实施方式中,主要是功能构成信息中存放的信息与第2实施方式不一样。
图20为表示本实施方式中存放在各ECU中的按功能的版本信息952的一例的图。图20中使用发动机控制ECU 13作为具体例,图20的(a)展示发动机控制ECU 13的更新前的按功能的版本信息952a,图20的(b)展示发动机控制ECU 13的更新后的按功能的版本信息952b。
按功能的版本信息952由6字节构成,从最前头起表示唯一地识别引导加载器、BSW、ASW、校准数据、功能A、功能C各自的软件的版本的信息。按功能的版本信息952的各位的值随着各自作为对象的部分的软件的更新而得到更新。再者,图20中为了说明而记载了与各位相对应的信息,但实际上按功能的版本信息952仅由6字节的值构成。
图20的(a)所示的更新前的按功能的版本信息952a为“1、1、1、1、1、1”。图20的(b)所示的更新后的按功能的版本信息952b中,由于与功能A相关的部分作了更新,因此对应于功能A的识别信息更新成了“2”,表示包含功能A的整个应用的软件的ASW的识别信息更新成了“2”。
图21为表示本实施方式中的功能构成信息63的一例的图。图21的(a)为表示更新前的功能构成信息63a的图,图21的(b)为表示更新后的功能构成信息63b的图。在图21的(a)所示的例子中,包含R71、R81以及R91等记录,在图21的(b)所示的例子中,包含R72、R82以及R92等记录。本实施方式中的功能构成信息63与第2实施方式中的功能构成信息62相比,追加了掩码6036栏代替功能构成信息62中的DID 6034。
掩码6036是表示该功能的识别信息从按功能的版本信息952的最前头起相当于第几字节的识别信息。网关10在从ECU读出按功能的版本信息952后利用掩码6036,由此从读出的按功能的版本信息952中确定与该功能相关的识别信息。但也可为网关10向ECU发送连同有软件的按功能的版本信息952的请求的掩码6036的值,ECU仅返回按功能的版本信息952当中符合掩码6036的比特的值。
图21的(a)与图21的(b)相比,记录R1与记录R72不一样,但记录R81及记录R91与记录R82及记录R92相同。其原因在于,软件的版本信息本身不存放在功能构成信息63中,仅将各软件的各功能的版本信息存放在了功能构成信息63中。
其他方面与第2实施方式相同,因此省略说明。
如上所述,通过按每一功能在ECU内管理相关软件部分的版本,可以谋求减少软件更新时对功能构成信息的影响、减少不需要的变更。
-第4实施方式-
参考图22~图24,对本发明的运算装置即网关的第4实施方式进行说明。在以下的说明中,对与第2实施方式相同的构成要素标注相同符号而主要说明不同点。不特别说明的内容则与第2实施方式相同。在本实施方式中,主要是表格验证信息不一致的情况下的动作与第1实施方式不一样。
图22为表示功能D的功能构成信息61c的图,图23为表示功能D的功能限制信息91的图。
图22的记录R4是存放有与功能识别ID“D2”所表示的功能D相关的信息的记录。记录R4的功能识别验证信息602栏中存放有“dzzz”。构成功能D的ECU为3个,因此NET ID 6031栏中分别存放有“701”“702”“703”,ECU ID 6032栏中分别存放有“制动”“ADAS”“摄像机”,软件版本6033栏中分别存放有“1.0.0.0”“1.0.0.1”“1.0.0.0”。记录R4的表格验证信息604栏中存放有“tddd”,标记605栏中存放有表示在发生了失配时需要该功能的动作限制这一内容的“限制”。此处,所谓该功能的动作限制,是指使功能的一部分继续动作而不是停止功能。即,在本实施方式中,标记605栏中存放“停止”及“限制”中的任一方,不存放“动作许可”这个值。
图23为表示标记605栏为“限制”时所参考的功能限制信息91的一例的图,与功能构成信息61c同样地加以管理。图23的记录R41是存放有与功能D相关的功能限制信息的记录。记录R41的功能600栏中存放有“D”,构成功能D的ECU为3个,因此版本不一致ECU ID6038栏中分别存放有“制动”“ADAS”“摄像机”,限制内容6037栏中存放有“仅警告进行动作”“功能全部停止”“功能全部停止”。
下面,针对图23例示的内容、以功能D为自动制动功能这一情况为例进行说明。功能D的自动制动功能是由具有“制动”“ADAS”“摄像机”等ID的3个ECU协同来实现的。此外,自动制动功能由应施加制动的障碍物的检测和障碍物已接近时的向驾驶员的警告、制动这3个基本功能构成。在本功能构成中,在“制动”ECU的版本不一致的情况下,由于摄像机、ADASECU可以正常动作,因此基本功能中的障碍物的检测和向驾驶员的警告可以无问题地实现,优选使这些功能动作。另一方面,在“摄像机”或“ADAS”ECU的版本不一致的情况下,障碍物的检测和警告都可能存在问题,因此优选自动制动功能全部停止。由此,即便在表格验证信息604不一致的情况下,也能使有用的功能动作。
图24为表示网关10中的功能限制处理的流程图。本处理是通过替换图10的处理S111来实现。首先,停止控制部10005判定标记是否为“停止”,在“停止”的情况下(S121的是),指示相关ECU停止(S111)。在标记不是“停止”也就是“功能限制”的情况下(S121的否),读出功能限制信息91的功能D的记录R41(S122)。
接着,网关10按每一ECU对从ECU获取到的版本与功能构成信息61c的版本进行比较,确认差异(S123)。在判断版本一致的情况下,网关10什么都不做(S124的是)。在判断版本不一致的情况下(S124的否),网关10按照功能限制信息91的限制内容6037中规定的内容对功能的一部分进行限制(S125)。接着,网关10判断是否存在没有比较版本的ECU(S126),在所有版本的比较都已完成的情况下,结束处理(S126的否)。在判断有未比较版本的ECU的情况下(S126的否),网关10返回至S123重复进行处理。
以上说明过的第4实施方式获得以下作用效果。
(9)当算出判定部10002判断第1验证信息与第2验证信息不匹配时,停止控制部10005针对与被判定为不匹配的第2验证信息相关的功能而且是具有标记表示在失配时许可执行这一内容的标记的功能,参考功能限制信息91、根据版本信息不一致的第2识别信息来决定是否限制功能。因此,即便在表格验证信息不一致的情况下,也能使有用的功能动作。
再者,本发明包含各种变形例,并不限定于上述实施例。例如,上述实施例是为了以易于理解的方式说明本发明所作的详细说明,并非一定限定于具备说明过的所有构成。此外,可以将某一实施例的构成的一部分替换为其他实施例的构成,此外,也可以对某一实施例的构成加入其他实施例的构成。此外,也可以对各实施例的构成的一部分进行其他构成的追加、删除、替换或者调换各处理中的处理顺序。例如,本实施方式1中功能构成信息管理装置为网关10,但通信模块11或HMI 12也可为功能构成信息管理装置。此外,也可设置专用装置。
在上述各实施方式及变形例中,功能块的构成只是一例。也可一体地构成以各个功能块的形式展示的若干功能构成,也可将以1个功能框图来表示的构成分割为2个以上的功能。此外,也可设为其他功能块具备各功能块所具有的功能的一部分这一构成。
上述各构成、功能、处理部、处理手段等例如可通过利用集成电路进行设计等而以硬件来实现它们的一部分或全部。此外,上述各构成、功能等也可通过由处理器解释并执行实现各功能的软件而以软件来实现。
此外,控制线和信息线展示的是认为说明上需要的部分,在产品上未必展示了所有控制线和信息线。实际上,可认为几乎所有构成都相互连接。
上文中对各种实施方式及变形例进行了说明,但本发明并不限定于这些内容。在本发明的技术思想的范围内思索的其他形态也包含在本发明的范围内。
下面的优先权基础申请的揭示内容以引用文的形式并入至本文:
日本专利申请2019-66887(2019年3月29日申请)。
符号说明
1…车辆
5…诊断装置
6…功能构成信息
10…网关
61、62、63、64、65…功能构成信息
604…表格验证信息
605…标记
6031…NET ID
6032…ECU ID
10002…算出判定部
10005…停止控制部。

Claims (12)

1.一种运算装置,其与多个电子控制装置连接,其特征在于,
所述多个电子控制装置由1个以上的所述电子控制装置构成各自的功能,该运算装置具备:
外部通信部,其按每一所述功能接收功能构成信息,该功能构成信息包含构成所述功能的1个以上的所述电子控制装置的第1识别信息及第1验证信息;
获取部,其从所述多个电子控制装置各方获取所述电子控制装置中搭载的软件的版本信息以及所述电子控制装置的第2识别信息;
算出部,其按每一所述功能而使用版本信息和所述第2识别信息来算出第2验证信息,该版本信息是构成所述功能的所有所述电子控制装置的版本信息而且是所述获取部所获取到的版本信息,该第2识别信息是构成所述功能的所有所述电子控制装置的识别信息;以及
判定部,其按每一所述功能判定所述第1验证信息及所述第2验证信息的匹配。
2.根据权利要求1所述的运算装置,其特征在于,
所述第1识别信息是所述电子控制装置在网络上的标识符,
所述第2识别信息是表示所述电子控制装置的种类的标识符。
3.根据权利要求1所述的运算装置,其特征在于,
所述第1识别信息及所述第2识别信息是表示所述电子控制装置的种类的标识符。
4.根据权利要求1所述的运算装置,其特征在于,
进而具备停止控制部,当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述停止控制部停止或限制与被判定为不匹配的所述第2验证信息相关的所述功能。
5.根据权利要求1所述的运算装置,其特征在于,
所述功能构成信息中按每一所述功能包含表示许可或拒绝失配时的执行的标记,
该运算装置进而具备停止控制部,当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述停止控制部使与被判定为不匹配的所述第2验证信息相关的所述功能停止,该功能是具有所述功能构成信息中的所述标记表示在失配时拒绝执行这一内容的标记的功能。
6.根据权利要求5所述的运算装置,其特征在于,
当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述停止控制部针对与被判定为不匹配的所述第2验证信息相关的所述功能而且是具有所述标记表示在失配时许可执行这一内容的标记的功能、根据所述版本信息不一致的所述第2识别信息来决定是否限制所述功能。
7.根据权利要求1所述的运算装置,其特征在于,
进而具备更新控制部,当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述更新控制部根据从所述外部通信部收到的指令对所述功能构成信息以及所述电子控制装置的软件中的至少一方进行更新。
8.根据权利要求1所述的运算装置,其特征在于,
进而具备控制部,当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述控制部将发生了失配这一情况记录至存储部。
9.根据权利要求1所述的运算装置,其特征在于,
进而具备控制部,当所述判定部判断所述第1验证信息与所述第2验证信息不匹配时,所述控制部使发生了失配这一内容显示在显示部上。
10.根据权利要求1所述的运算装置,其特征在于,
所述运算装置搭载于车辆中,
当所述车辆的点火开关设为导通时,所述获取部、所述算出部以及所述判定部开始动作。
11.根据权利要求1所述的运算装置,其特征在于,
当从外部收到动作指令时,所述获取部、所述算出部以及所述判定部开始动作。
12.一种判定方法,由与多个电子控制装置连接的运算装置执行,其特征在于,
所述多个电子控制装置由1个以上的所述电子控制装置构成各自的功能,该判定方法包含:
按每一所述功能接收构成所述功能的1个以上的所述电子控制装置的第1识别信息及第1验证信息;
从所述多个电子控制装置各方获取所述电子控制装置中搭载的软件的版本信息以及所述电子控制装置的第2识别信息;
按每一所述功能而使用版本信息和所述第2识别信息来制作第2验证信息,该版本信息是构成所述功能的所有所述电子控制装置的版本信息而且是获取到的版本信息,该第2识别信息是构成所述功能的所有所述电子控制装置的识别信息;以及
按每一所述功能判定所述第1验证信息及所述第2验证信息的匹配。
CN202080023945.9A 2019-03-29 2020-02-21 运算装置、判定方法 Active CN113632155B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019-066887 2019-03-29
JP2019066887A JP7123843B2 (ja) 2019-03-29 2019-03-29 演算装置、判定方法
PCT/JP2020/007013 WO2020202886A1 (ja) 2019-03-29 2020-02-21 演算装置、判定方法

Publications (2)

Publication Number Publication Date
CN113632155A true CN113632155A (zh) 2021-11-09
CN113632155B CN113632155B (zh) 2024-04-12

Family

ID=72667980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080023945.9A Active CN113632155B (zh) 2019-03-29 2020-02-21 运算装置、判定方法

Country Status (4)

Country Link
US (1) US11928900B2 (zh)
JP (1) JP7123843B2 (zh)
CN (1) CN113632155B (zh)
WO (1) WO2020202886A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023131641A (ja) * 2022-03-09 2023-09-22 株式会社オートネットワーク技術研究所 車載通信装置及び車載通信システム
JP2024012759A (ja) * 2022-07-19 2024-01-31 日立Astemo株式会社 ソフトウェア分析システム、ソフトウェア分析方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199497A (ja) * 2008-02-25 2009-09-03 Panasonic Corp プログラム管理装置、プログラム管理方法及びプログラム管理プログラム
JP2011148398A (ja) * 2010-01-21 2011-08-04 Denso Corp 車両用プログラム更新システム
WO2015011840A1 (ja) * 2013-07-26 2015-01-29 株式会社日立製作所 差分データ転送システム及び方法
JP2017097851A (ja) * 2015-11-13 2017-06-01 株式会社東芝 中継装置、中継方法およびプログラム
CN107077395A (zh) * 2015-03-16 2017-08-18 日立汽车系统株式会社 软件更新装置、软件更新方法
JP2017208859A (ja) * 2017-08-18 2017-11-24 Kddi株式会社 システム、車両及びソフトウェア配布処理方法
CN107531198A (zh) * 2015-03-30 2018-01-02 本田技研工业株式会社 程序改写装置和程序改写方法
CN107533491A (zh) * 2015-09-14 2018-01-02 松下电器(美国)知识产权公司 网关装置、固件更新方法以及控制程序
CN107710672A (zh) * 2015-07-03 2018-02-16 Kddi株式会社 软件分配处理装置、车辆、软件分配处理方法以及计算机程序
JP2018124749A (ja) * 2017-01-31 2018-08-09 京セラドキュメントソリューションズ株式会社 電子機器、バージョンチェックシステム及びバージョンチェックプログラム
CN109074250A (zh) * 2016-04-27 2018-12-21 日立汽车系统株式会社 车辆用电子控制装置、程序更新方法以及服务器装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4004422B2 (ja) 2003-03-18 2007-11-07 トヨタ自動車株式会社 車両特定システム及び車両特定方法
JP6147790B2 (ja) 2015-03-30 2017-06-14 本田技研工業株式会社 プログラム書換装置及びプログラム書換方法
JP6675271B2 (ja) * 2015-09-14 2020-04-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法
JP6526906B2 (ja) * 2016-10-28 2019-06-05 株式会社東芝 車載ゲートウェイ装置を用いた移動体のソフトウェア更新システム
JP2019036238A (ja) * 2017-08-21 2019-03-07 株式会社東芝 更新制御装置、端末、更新制御方法およびプログラム
JP6953947B2 (ja) * 2017-09-22 2021-10-27 コニカミノルタ株式会社 情報処理装置、ファームウェア更新プログラム
JP7311245B2 (ja) * 2018-03-07 2023-07-19 トヨタ自動車株式会社 マスタ装置、マスタ、制御方法、プログラム及び車両
US11934865B2 (en) * 2018-06-13 2024-03-19 Hitachi, Ltd. Vehicle control system for dynamically updating system components
KR102529916B1 (ko) * 2018-09-14 2023-05-08 현대자동차주식회사 가상머신 기반 차량 제어 검증 시스템 및 방법
US11520891B1 (en) * 2019-12-11 2022-12-06 Amazon Technologies, Inc. Secure boot of an integrated circuit

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199497A (ja) * 2008-02-25 2009-09-03 Panasonic Corp プログラム管理装置、プログラム管理方法及びプログラム管理プログラム
JP2011148398A (ja) * 2010-01-21 2011-08-04 Denso Corp 車両用プログラム更新システム
WO2015011840A1 (ja) * 2013-07-26 2015-01-29 株式会社日立製作所 差分データ転送システム及び方法
CN107077395A (zh) * 2015-03-16 2017-08-18 日立汽车系统株式会社 软件更新装置、软件更新方法
CN107531198A (zh) * 2015-03-30 2018-01-02 本田技研工业株式会社 程序改写装置和程序改写方法
CN107710672A (zh) * 2015-07-03 2018-02-16 Kddi株式会社 软件分配处理装置、车辆、软件分配处理方法以及计算机程序
CN107533491A (zh) * 2015-09-14 2018-01-02 松下电器(美国)知识产权公司 网关装置、固件更新方法以及控制程序
JP2017097851A (ja) * 2015-11-13 2017-06-01 株式会社東芝 中継装置、中継方法およびプログラム
CN109074250A (zh) * 2016-04-27 2018-12-21 日立汽车系统株式会社 车辆用电子控制装置、程序更新方法以及服务器装置
JP2018124749A (ja) * 2017-01-31 2018-08-09 京セラドキュメントソリューションズ株式会社 電子機器、バージョンチェックシステム及びバージョンチェックプログラム
JP2017208859A (ja) * 2017-08-18 2017-11-24 Kddi株式会社 システム、車両及びソフトウェア配布処理方法

Also Published As

Publication number Publication date
WO2020202886A1 (ja) 2020-10-08
US20220148344A1 (en) 2022-05-12
CN113632155B (zh) 2024-04-12
JP7123843B2 (ja) 2022-08-23
US11928900B2 (en) 2024-03-12
JP2020166583A (ja) 2020-10-08

Similar Documents

Publication Publication Date Title
JP6724717B2 (ja) 車載機器判定システム
US10735260B2 (en) Gateway device, firmware update method, and recording medium
CN107925600B (zh) 安全处理方法以及服务器
JP6782446B2 (ja) 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム
CN113632155B (zh) 运算装置、判定方法
US9126601B2 (en) Method and system for a vehicle information integrity verification
JP6446236B2 (ja) 車両制御システム
CN112889259B (zh) 不正常帧检测装置以及不正常帧检测方法
WO2020080321A1 (ja) 車載更新装置、更新処理プログラム、プログラムの更新方法及び車載更新システム
CN111224804B (zh) 物联网设备的初始化方法、装置、物联网设备及存储介质
JP2015079440A (ja) 修正プログラム確認方法、修正プログラム確認プログラム、及び情報処理装置
WO2018070242A1 (ja) 車載ゲートウェイ、鍵管理装置
JP2019159399A5 (zh)
US9438581B2 (en) Authenticating data at a microcontroller using message authentication codes
JP2021012428A (ja) ソフトウェア更新装置、サーバ装置、ソフトウェア更新方法、およびプログラム
US20210021615A1 (en) On-board communication system, switching device, verification method, and verification program
JP6779853B2 (ja) 情報処理システム、および情報処理方法
CN112740172B (zh) 管理车辆中电子设备软件版本的方法及相关设备
JP7063854B2 (ja) ソフトウェア更新装置、サーバ装置、ソフトウェア更新方法、およびプログラム
CN111224925A (zh) 物联网设备的控制方法、装置、物联网设备及存储介质
US11941126B2 (en) Center, information rewriting method, and non-transitory storage medium
CN112770940B (zh) 车载更新装置、更新处理程序、程序的更新方法及车载更新系统
US20230385076A1 (en) Method for operating a control unit on which multiple applications are executed
EP4290369A1 (en) Electronic circuit for a vehicle
KR20240022935A (ko) 펌웨어 업데이트 시스템 및 그의 동작 방법

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
GR01 Patent grant