CN108762770A - 重写系统、重写设备以及计算机 - Google Patents

重写系统、重写设备以及计算机 Download PDF

Info

Publication number
CN108762770A
CN108762770A CN201810325925.1A CN201810325925A CN108762770A CN 108762770 A CN108762770 A CN 108762770A CN 201810325925 A CN201810325925 A CN 201810325925A CN 108762770 A CN108762770 A CN 108762770A
Authority
CN
China
Prior art keywords
rewriting
computer
data
equipment
area
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
CN201810325925.1A
Other languages
English (en)
Other versions
CN108762770B (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.)
Yazaki Corp
Original Assignee
Yazaki Corp
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
Priority claimed from JP2017078667A external-priority patent/JP2018180869A/ja
Priority claimed from JP2017105450A external-priority patent/JP6765343B2/ja
Priority claimed from JP2017127507A external-priority patent/JP6912954B2/ja
Application filed by Yazaki Corp filed Critical Yazaki Corp
Publication of CN108762770A publication Critical patent/CN108762770A/zh
Application granted granted Critical
Publication of CN108762770B publication Critical patent/CN108762770B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]

Landscapes

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

Abstract

提供一种能够缩短重写时间的重写系统、一种用于该重写系统的重写设备和计算机。重写系统包括ECU和重写设备,该重写设备用于至少将储存在闪存ROM(14B)(存储器)中的存储内容的重写数据发送到ECU,闪存ROM(14B)(存储器)包括储存待重写的存储内容的重写目标区(A2)以及储存不重写的存储内容的非重写目标区(A1),并且重写设备只针对闪存ROM(14B)(存储器)中的重写目标区的存储内容将存储内容的重写数据发送给ECU。

Description

重写系统、重写设备以及计算机
技术领域
本发明涉及一种重写系统、重写设备以及计算机。
背景技术
近年来,汽车配备有用于发动机控制、行驶控制、导航、信息通信等的ECU。随着汽车中的信息处理的进步和多样化,车用软件正在发生改进或新的发展,并且在汽车销售之后需要考虑程序的版本管理。
专利文献1描述了一种用于重写诸如车辆控制系统用的程序的技术。
在上述技术中,因为当重写时,通过将剩余的待写入的内容与待写入的内容链接而将全部内容写入ECU,所以存在重写时间趋向于变长的问题。
另外,专利文献2公开了一种当满足诸如电池电压和温度这样的环境条件时高速重写程序的技术。
然而,在上述传统技术中存在如下问题:未考虑多个ECU的情况,并且必须针对每个ECU重复进行重写操作,从而不能缩短重写时间。
许多ECU控制安装在车辆上的诸如阀门和电机等这样的多个负载。当将一些控制对象换新时,可能需要在ECU的存储器中重写程序,诸如与存储器的内容中的控制对象的控制相关的程序。然而,许多ECU不能部分重写存储器的存储器内容,并且即使当部分重写时也要求重写所有的存储内容,因此需要灵活的重写技术。
专利文献
专利文献1:日本专利申请公开No.2000-43654
专利文献2:日本专利申请公开No.2000-148475
发明内容
技术问题
鉴于上述背景技术,本发明的第一目的是提供一种能够缩短重写时间的重写系统,以及用于该重写系统的重写设备和计算机。
鉴于上述背景技术,本发明的第二目的是提供一种能够灵活地重写的重写系统,以及用于该重写系统的重写设备和计算机。
问题解决方案
作为本发明的一个方面的重写系统包括:计算机,该计算机包括存储器;重写设备,该重写设备至少将储存在所述存储器中的存储内容的重写数据发送到所述计算机,所述计算机中的所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中,并且所述重写设备仅针对所述存储器中的所述重写目标区的存储内容将存储内容的重写数据发送给所述计算机。
另外,上述重写目标区被划分为:程序区,一个以上程序储存在该程序区中;变量区,用于处理的变量针对一个以上程序中的每个程序储存在该变量区中;以及设定值区,用于处理的设定值针对一个以上的程序中的每个程序储存在该设定值区中,所述重写设备可以选择所述程序区中储存的程序、所述变量区中储存的变量以及所述设定值区中储存的设定值之中的任意一个或多个数据,并且针对该数据发送重写数据。
作为本发明的一个方面的重写设备是至少将储存在计算机的存储器中的重写数据发送到计算机的重写设备,所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中,并且仅针对所述存储器中的所述重写目标区的存储内容将所述存储内容的重写数据发送到上述计算机。
作为本发明的一个方面的计算机包括存储器,并且该计算机至少从重写设备接收存储器的存储内容的重写数据,并且所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中。
在作为本发明的一个方面的重写系统中,包括多个计算机以及用于重写储存在所述多个计算机中的存储内容的重写设备,所述多个计算机中的每个计算机均包括:公共区,该公共区用于储存互相共用的公共存储内容;以及非公共区,为该非公共区用于储存互相非共用的非公共存储内容,所述重写设备将公共存储内容的重写数据共同地发送到所述多个计算机,并且将非公共存储内容的重写数据依次发送到该待重写的所述计算机。
并且,重写系统可以在多个计算机中的每个计算机中包括非重写目标区,该非重写目标区储存不被重写的存储内容。
在重写系统中,重写设备可以以与重写数据的数据量对应的通信速度进行发送。
在作为本发明的一个方面的重写多个计算机的内容的重写设备中,多个所述计算机共用的公共存储内容的重写数据被共同地发送到多个所述计算机,并且多个所述计算机非共用的非公共存储内容的重写数据被依次发送到待重写的计算机。
作为本发明的一个方面的计算机是如下计算机,其中,可以利用重写设备重写存储内容,所述重写设备还包括:公共区,与其他计算机共用的公共存储内容储存在该公共区中;以及非公共区,不与所述其他计算机共用的非公共存储内容储存在该非公共区中。
作为本发明的一个方面的重写系统是如下重写系统,其包括:计算器,该计算机控制多个控制对象并且具有存储器,以及重写设备,该重写设备将储存在所述存储器中的存储内容的重写数据发送到多个所述计算机,并且所述计算机中的所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容对应于所述多个控制对象地储存在该多个通道区中,设置掩码设定部用于进行掩码设定处理,该掩码设定处理在所述多个通道区中设定禁止重写的掩码目标区和允许重写的掩码排除区,所述重写设备针对所述多个通道区的全部通道区发送存储内容的重写数据,并且所述计算机使用从所述重写设备发送的重写数据之中的与所述掩码排除区对应的重写数据来重写所述掩码排除区的存储内容。
另外,所述掩码设定部可以设定在所述计算机中以进行所述掩码设定处理。
另外,所述掩码设定部可以具有设置在所述计算机中的多个本地开关,从而依据所述多个本地开关的ON/OFF状态了解每个所述通道区是掩码目标区还是掩码排除区。
另外,多个本地开关可以对应于多个通道区。
另外,设置了多个计算机,并且所述掩码设定部针对各所述计算机独立地进行掩码设定处理,并且所述重写设备针对所述多个计算机的全部计算机共同地发送所述多个通道区的所有存储内容的重写数据。
作为本发明的一个方面的重写设备是如下重写设备,其能够向多个计算机发送储存在控制多个控制对象的计算机所包含的存储器中的存储内容的重写数据,所述计算机中的所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容对应于所述多个控制对象地储存在该多个通道区中,对所述多个通道区实施掩码设定处理,该掩码设定处理设定禁止重写的掩码目标区和允许重写的掩码排除区,并且针对所述多个通道区的全部通道区的存储内容的重写数据被发送到所述计算机。
作为本发明的一个方面的计算机是如下计算机:其控制多个控制对象并且包括存储器并且从重写设备接收存储器的存储内容的重写数据,所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容对应于所述多个控制对象地分别存储在该多个通道区中,对所述多个通道区实施掩码设定处理,所述掩码设定处理设定禁止重写的掩码目标区和允许重写的掩码排除区,并且在从所述重写设备针对所述多个通道区的全部通道区发送的重写数据之中,使用与所述掩码排除区相对应的重写数据重写掩码排除区的存储内容。
发明的有益效果
如上所述,根据以上方面,由于仅针对包括在计算机中的存储器中的重写目标区的存储内容来发送重写数据,所以能够缩短重写时间。
另外,根据以上方面,能够同时重写多个计算机的公共区,从而缩短了重写时间。
另外,能够禁止或允许掩码设定部中的任意通道区的重写,使得能够对于计算机的存储器重写所有的通道区,或者可以重写或者灵活地重写期望的通道区。
另一方面,重写设备不需要知道哪个通道区域被禁止重写或允许重写,并且仅需要以简单的方式发送所有通道区的重写数据。计算机仅需要接收重写数据并将其重写为在掩码设置处理中允许被重写的掩码排除区的目标,使得根据重写系统、重写设备和计算机,由于重写所需的处理简单,因此能够减少重写时间,而且由于重写所需的处理简单,因此能够减少重写错误。
附图说明
图1是示出本发明的重写系统的实施例的方框图;
图2是示出第一实施例中的图1所示的ECU的闪存ROM的配置的方框图;
图3是示出图1和图2所示的重写系统的操作的流程图;
图4是示出第二实施例中的图1所示的ECU的闪存ROM的配置的方框图;
图5是示出图1所示的ECU的处理步骤的流程图;
图6是示出图1所示的ECU和重写设备的处理步骤的流程图;
图7是示出图1所示的ECU和重写设备的处理步骤的流程图;
图8是示出图1所示的ECU和重写设备的处理步骤的流程图;
图9是示出第三实施例中的本发明的重写系统的方框图;
图10是示出图9所示的ECU的闪存ROM的配置的方框图;
图11是示出图9和10所示的重写系统的操作的流程图;以及
图12是示出图11所示的掩码设定处理的流程图。
参考标记列表
1 重写系统
10 ECU(计算机)
14A CPU(掩码设定部的一部分)
14B 闪存ROM(存储器)
20 重写设备
51至5n CH1至CHn本地SW(掩码设定部的一部分)
71至7n CH1至CHn负载
A1、A3 非重写目标区
A4 公共重写目标区(公共区)
A5 非公共重写目标区(非公共区)
A6 非重写目标区
A7 重写目标区
A2 重写目标区
A21 程序区
A22 变量区
A23 设定值区
A71至A7n CH1至CHn程序区(通道区)
具体实施方式
(第一实施例)
现将参考图1和2描述本发明的第一实施例。图1是示出本发明的重写系统的实施例的方框图。图2是示出图1所示的ECU的闪存ROM的配置的方框图。
本发明的重写系统1设置有多个ECU 10(计算机)和用于重写ECU 10的程序的重写设备20。多个ECU 10布置在车辆的各部分中,并且经由通信线30互相可通信地连接。在本实施例中,多个ECU 10经由通信线30总线连接,从而能够互相通信。通信线30设置有用于可分离地连接重写设备20的连接部40a。
多个ECU 10各自具有接口(下文称为I/F)11、输入电路12、输出电路13以及微型计算机(后文称为微计算机)14。I/F 11是用于与其他ECU 10以及重写设备20通信的通信接口。在该实施例中,I/F 11是能够输入和输出与各种类型的通信(CAN、LIN以及其它通信方法)相对应的信号的接口。
输入电路12是来自本地开关(后文称为“本地SW”)50的信号所输入到的电路。在图1中,仅来自本地SW50的信号输入到输入电路12,但是不限于此,并且也可以输入对各种传感器的输出进行A/D转换的A/D输入或PWM输入等。
输出电路13是诸如阀门61或电机62这样的负载所连接到的电路。在图1中,输出电路13仅连接到阀门61和电机62,但是不限于此,并且可以连接安装在车辆上的负载。
微计算机14包括中央处理单元(CPU)14A、闪存ROM(只读存储器)14B以及RAM(随机存取存储器)14C。CPU 14A控制ECU 10的整体控制,并且进行各种类型的处理。闪存ROM 14B(存储器)是用于存储将由CPU 14A执行的程序等的存储器。RAM14C是如下的存储器,其包括供CPU 14A中的各种处理使用的工作区和存储各种数据的数据存储区。
如图2所示,闪存ROM 14B具有非重写目标区A1和重写目标区A2这两个区域。
将不打算重写的存储内容(程序、变量和设定值)储存在非重写目标区A1中。在本实施例中,非重写目标区A1具有基本控制程序区A11、控制程序区A12、变量区A13、设定值区A14和重写程序区A15。
基本控制程序区A11储存用于周期地执行各种程序的基本程序。通信控制程序区A12储存执行诸如CAN和LIN这样的通信处理的通信程序。变量区A13储存执行区域内的各个程序所需的变量。设定值区A14储存执行区域内的各个程序所需的设定值(阈值、最小值、最大值、用于条件分支的值、计数值、初始值等)。重写程序区A15储存用于将重写目标区A2重写的重写程序。
重写目标区A2储存待重写的存储内容。在本实施例中,重写目标区A2分为三个区:程序区A21、变量区A22以及设定值区A23。
程序区A21具有输入判断控制程序区A211、基础控制程序区A212、特殊控制程序区A213以及输出判断控制程序区A214。
输入判断控制程序区A211储存对经由I/F的通信以及通过输入电路12的输入进行输入判断处理的输入判断程序。基础控制程序区A212储存根据输入判断处理的结果执行本地ON/OFF判断处理的基础应用程序。特殊应用控制程序区A213储存当需要除了简单输入判断处理以外的处理时所使用的特殊应用程序。
此处,特殊程序可以是用于进行以下处理的程序:输出电路13的PWM输出的频率和占空比的设定处理;使用输入模拟数据的计算处理;使用诸如阈值、最小值和最大值这样的固定值的处理;利用几个输入判断处理结果的组合判定负载的ON/OFF的处理。并且该特殊程序可以是基于输入判断处理结果判断几个负载的ON/OFF的程序。
输出判断控制程序区A214还储存根据负载ON/OFF判断处理的结果而执行输出判断处理的输出判断程序。
变量区A22具有输入判断变量区A221、基础应用控制变量区A222、特殊应用控制变量区A223以及输出判断控制变量区A224。
输入判断控制变量区A221储存根据上述输入判断程序执行输入判断处理所需的变量。基础应用控制变量区A222储存根据上述基础应用程序执行负载ON/OFF判断处理所需的变量。特殊应用控制变量区A223储存根据上述特殊应用控制程序执行处理所需的变量。输出判断控制变量区A224储存根据上述输出判断程序执行输出判断处理所需的变量。
设定值区A23包括输入判断控制设定值区A231、基础应用控制设定值区A232、特殊应用控制设定值区A233以及输出判断控制设定值区A234。
输入判断控制设定值区A231储存根据上述输入判断程序执行输入判断处理所需的设定值。基础应用控制设定值区A232储存根据上述基础应用程序执行负载ON/OFF判断程序所需的设定值。特殊应用控制设定值区A233储存用于执行特殊应用控制程序所需的设定值。输出判断控制设定值区A234储存根据上述输出判断程序执行输出判断处理所需的设定值。
重写设备20具有未示出的微计算机。微计算机包括公知的CPU、ROM和RAM。重写设备20具有未示出的储存设备,并且多个重写数据储存在储存设备中。多个重写数据各自包含指示闪存ROM 14的区域的地址数据。通过检查该地址数据,判定数据写入的区域为程序区A21、变量区A22和设定值区A23中的任意一个区域。
储存设备针对各个重写数据储存待重写的ECU 10的ID(识别信息),从而确定应该将重写数据发送至哪个ECU 10。
接下来将参考图3的流程图描述具有上述配置的重写系统1的操作。
图3是示出图1和图2所示的重写系统的操作的流程图。
在该流程图呈现的处理中,工作者首先将重写设备20连接至设置在通信线30中的连接单元40(步骤S11)。重写设备20的CPU(后文简称为重写设备20)响应于与通信线30的连接而开始重写处理。
操作者还操作重写目标ECU 10的本地SW50,以将重写信号输入到各个ECU 10。各个ECU 10的CPU 14A(后文简称为ECU 10)根据电源开始处理。当从本地开关SW50输入重写信号(步骤S21中为是)时,ECU 10启动重写处理(步骤S22)并且结束处理。
另一方面,如果未从本地开关SW50输入重写信号(步骤S21中为否),则ECU 10开始正常处理(步骤S23)并且结束处理。
在步骤S22中,ECU 10发送重写请求(步骤S221)。当在执行了重写处理之后的预定时间之内未接收到重写请求(步骤S12中为否)时,ECU 10停止重写(步骤S13),并且终止重写处理。
当在执行重写处理之后的预定时间内接收到重写请求(步骤S12中为是)时,重写设备20读取写入到未示出的储存设备中的重写数据。重写设备20然后向已经发送重写请求的ECU 10发送重写数据(步骤S14)。
在该实施例中,当ECU 10被最新安装时,重写设备20对所有的重写目标区A2读取并发送重写数据。在通过改变或增加驱动负载而改变规格时,重写设备20读取并发送针对程序区A21中的相应程序区、变量区A22中的相应变量区以及设定值区A23中的相应设定值区的写入数据。在改变任意程序的处理中使用的判断值或阈值、或者诸如软件过滤次数或定时计数值这样的变量或设定值时,重写设备20读取并发送以下重写数据:在该情况下,重写设备20读取并发送与变量区A22中的相应变量区或者设定值区A23中的相应设定值区相对应的重写数据。从而,重写设备20读出相应的数据,并且将该数据作为重写数据发送,以便重写程序区A21的程序、变量区A22的变量以及设定值区A23的设定值中的一者以上的任意数据的数据。此时,还能够通过将在多个区域中重写的数据结合而读出并发送该数据。在本实施例中,重写设备20将选择并且读出的重写数据以与一个区域对应的单位数据或多个数据发送。
另一方面,在发送重写请求(步骤S221)之后,ECU 10判定是否在预定时间之内接收到重写数据(步骤S222)。
如果未接收到重写数据(步骤S222中为否),则ECU 10结束重写处理(步骤S223)。相反,则ECU 10将与接收到的重写数据中所含有的地址数据相对应的闪存ROM 14B中的相关区域删除(步骤S224)。
如上所述,重写设备20根据情况任意地选择重写目标,并且发送重写数据。在步骤S224中,删除与重写设备20中选择并发送的写入数据中所含有的地址数据相对应的区域。
接着,ECU 10判断闪存ROM 14B的删除是否成功(步骤S225)。在步骤S225中,ECU10读取相关区域,并且如果写入1,则删除成功(步骤S225中为是),如果写入0,则删除失败。如果闪存ROM 14B的删除未成功(步骤S225中为否),则ECU 10终止重写处理(步骤S223)。
另一方面,当成功删除相应的闪存ROM 14B(步骤S225中为是)时,则ECU 10通过将接收到的重写数据写入相应的区域中而重写数据(步骤S226)。然后,ECU 10读取相关区域(步骤S227),以判定是否成功重写数据。接着,如果从相应区域读取的数据与接收到的数据相同,则ECU 10判定重写成功,否则如果不同,则判定重写数据已经失败(步骤S228)。
在步骤S228中,ECU 10判定重写是成功还是失败。如果重写失败(步骤S228中为否),则ECU 10结束重写处理(步骤S223)。
另一方面,如果重写成功(步骤S228中为是),则ECU 10将来自相应区域的读取数据发送到重写设备(步骤S229),并且处理返回到步骤S222,以准备接收下一重写数据。在第二以及随后的步骤S222中,ECU 10判定在发送读取的数据之后的预定时间之内是否已经接收到重写数据。
在重写设备20发送重写数据(步骤S14)之后,重写设备20判断是否在预定时间之内接收到读取的数据(步骤S15)。
如果未在预定时间内接收到读取的数据(步骤S15中为否),则重写设备20结束重写处理(步骤S13)。而如果接收到读取的数据(步骤S15中为是),则ECU 10通过比较发送的重写数据与接收到的读取数据判断是否已经成功重写(步骤S16)。
在步骤S16中,如果接收到的重写数据与发送的重写数据相同,则重写设备20判定重写成功,并且如果不同则判定重写失败。如果重写失败(步骤S16中为否),则重写设备20结束重写处理(步骤S13)。另一方面,重写成功(步骤S16中为是),则重写设备20判断是否已经完成了所有重写数据的发送(步骤S17)。当完成了所有替换数据的发送(步骤S17为是)时,重写处理结束。
另一方面,如果还剩有未接收到的重写数据(步骤S17为否)时,处理返回到步骤S14并且发送下一重写数据。
利用上述本发明的重写系统1、重写设备20及ECU 10,仅重写了ECU 10所具有的闪存ROM 14B中的重写目标区A2的存储内容,从而减少了重写时间。
根据本实施例,由于仅在重写目标区A2的存储内容上重写了由重写设备20选择的数据,所以能够进一步缩短重写时间。
应理解上述实施例仅为代表性实例,并且不应被解释为限制本发明的范围。可以在不偏离本发明的范围的情况下改变和实现上述重写系统、重写设备和计算机。只要具有上述重写系统、重写设备和计算机的基本构成,即使进行了这样的修改,也包括在该范畴中。
例如,在上述实施例中,具有ROM 14B的ECU 10实施为本发明中描述的具有存储器的计算机的实例。然而,本发明中的具有存储器的计算机不限于此,并且不应要求其具体形式。
在上述实施例中,作为本发明中的非重写目标区的存储内容的实例,例举了基本控制程序、通信控制程序以及用于执行各个程序所必需的变量和设定值。另外,作为本发明中储存在待重写的区域中的内容的实例,例举了输入判断控制程序、基础应用控制程序、特殊应用控制程序、用于执行各个程序所需的变量和设定值。然而,本发明中待重写的区域中的储存内容和本发明中待重写的区域的内容不限于此,并且可以适当地设定。
在上述实施例中,作为本发明中的重写设备的实例,例举了重写设备20,该重写设备20根据情况选择重写目标区A2的存储内容中的任意一个或多个数据,并将其发送到ECU10以便重写。本发明中的重写设备不限于该实例,而是例如可以发送待重写的目标区A2的所有内容,而与情况无关。然而,如上所述,选择并且发送一个以上的数据使得能够进一步缩短重写时间。
在上述实施例中,将本发明中的重写系统的实例例举为重写系统1的实例,在该重写系统1中,重写设备20发送重写数据并且ECU 10接收重写数据并且将数据重写。然而,本发明中的重写系统不限于此,并且重写设备20也可以是用于重写的系统。
(第二实施例)
下面将描述本发明的第二实施例。第二实施例中的重写系统1的配置与图1所示的第一实施例中的相同,并且因此此处将省略其详细说明。
如图4所示,闪存ROM 14B具有三个区域:非重写目标区A3、公共重写目标区A4以及非公共重写目标区A5。
区域A3储存不打算重写的存储内容(程序或设定值)。在本实施例中,在非用于重写的区域A3中,形成了基本控制程序区A31、通信控制程序区A32、变量/设定值区A33以及重写程序区A34。
基本控制程序区A31储存用于周期地执行各种程序的基本程序。通信控制程序区A32储存用于进行诸如CAN和LIN这样的通信处理的通信程序。变量/设定值区A33储存执行区域中的各个程序所需的变量和设定值(阈值、最小值、最大值、用于条件分支的值、计数器值、初始值等)。重写程序区A34储存用于执行公共重写目标区A4和非公共重写目标区A5的重写处理的重写程序。
公共重写目标区A4储存多个ECU 10共有的公共存储内容(程序和设定值)。公共重写目标区A4包括输入判断控制程序区A41、基础控制程序区A42、输出判断控制程序区A43、输入判断控制变量与设定值区A44、基础控制变量与设定值区A45以及输出判断控制变量与设定值区A46。
输入判断控制程序区A41储存输入判断程序,该输入判断程序用于经由I/F 11进行通信,并且执行经由输入电路12的输入的输入判断处理。基础控制程序区A42储存基础应用程序,该基础应用程序用于根据输入判断处理的结果执行负载ON/OFF判断处理。输出判断控制程序区A43储存输出判断程序,该输出判断程序用于根据负载ON/OFF判断处理的结果执行输出判断处理。
输入判断控制变量与设定值区A44储存根据上述输入判断程序执行输入判断处理所需的变量和设定值。基础应用程序区A42储存根据上述基础应用程序执行负载ON/OFF判断处理所需的变量和设定值。输出判断控制变量与设定值区A46储存根据上述输出判断程序执行输出判断处理所需的变量和设定值。
非公共重写目标区A5储存在多个ECU 10之间非公共(彼此不同)的非公共存储内容(程序和设定值)。非公共重写目标区A5包括附加输入判断控制程序区A51、附加基础应用控制程序区A52、附加输出判断控制程序区A53、附加输入判断控制变量与设定值区A54、附加基础应用控制变量与设定值区A55以及附加输出判断控制变量与设定值区A56。
附加输入判断控制程序区A51除了储存上述输入判断程序之外,还储存对于输入判断处理所必需的特殊程序。存在如下程序作为特殊程序:其进行诸如经由I/F 11的通信输入或经由输入电路12的输入的输入添加和设定变更这样的处理。
附加基础应用控制程序区A52除了储存上述基础应用程序之外,还储存负载ON/OFF判断处理所需的特殊程序。该特殊程序与用于执行以下处理的程序相对应:当从输出电路13输出PWM时的设定频率和占空比的处理;使用输入的模拟数据的计算处理;使用诸如阈值或最大值这样的固定值的处理;通过结合若干输入判断处理结果而判断负载的ON/OFF的处理;以及利用输入判断处理结果判断负载的ON/OFF的处理。
附加输出判断控制程序区A53除了储存上述输出判断控制程序之外,还储存输出判断处理所需的特殊程序。该特殊程序对应于执行如下处理的程序:对诸如通过I/F 11的通信输出以及经由输出电路13的输出进行添加或改变。
附加输入判断控制变量与设定值区A54、附加基础应用控制变量与设定值区A55以及附加输出判断控制变量与设定值区A56储存根据储存在附加输入判断控制程序区A51、附加基础应用控制程序区A52以及附加输出判断控制程序区A53中的程序执行处理所需的变量和设定值。
重写设备20具有未示出的微计算机。微计算机具有公知的CPU、ROM和RAM。重写设备20具有未示出的储存设备,并且多个重写数据储存在储存设备中。多个重写数据各自包括指示闪存ROM 14的区域的地址数据。检查地址数据使得能够判定重写目标区是公共重写目标区A4还是非公共重写目标区A5,或者是区域A4和A5的任意一者的程序还是变量与设定值。
对于各个重写数据,将待重写的ECU 10的ID(识别信息)储存在储存设备中。从而,应当知道应该将重写数据发送到哪个ECU 10。
储存设备将公共重写目标区A4中的待重写的区域的重写数据储存在由重写设备20读出最快的区域中,并且此后储存非公共重写目标区A5的重写数据。
接着,将参考图5至8的流程图描述具有上述配置的重写系统1的操作。首先,操作者将重写设备20连接至设置在通信线30中的连接单元40。重写设备20的CPU(后文简称为重写设备20)根据与通信线30的连接开始图6至图8的重写处理。
操作者操作重写目标ECU 10的本地SW 50以将重写信号输入到各个ECU 10。ECU10的CPU 14A(后文简称为ECU 10)根据电源开始图5的处理。ECU 10当从本地开关SW50输入重写信号(步骤S1中为是)时启动重写处理(步骤S2),并且结束处理。
另一方面,如果尚未从本地开关SW 50输入重写信号(步骤S1为否),则ECU 10判定是否接收到在后文将描述的重写处理的步骤S301中发送的来自另一ECU 10的重写请求(步骤S3)。如果ECU 10还未接收到来自另一ECU 10的重写请求(步骤S3中为否),ECU 10开始正常处理(步骤S4),并且结束处理。
另一方面,如果ECU 10接收到来自另一ECU 10的重写请求(步骤S3中为是),则ECU10不启动重写处理和正常处理,并且立即终止处理。即,如果在连接至线路30的多个ECU 10之中有从本地SW 50向其输入了重写信号的至少一个ECU 10,则未接收到重写信号的ECU10不进行通信处理(发送/接收处理)。或者,ECU 10不进行任何影响其他ECU 10的处理。
在如图6所示的重写处理中,ECU 10发送包括重写内容和重写位置的重写请求(步骤S301)。如果重写设备20不能在执行重写处理之后的预定时间内从ECU 10接收到重写请求,或者接收到不能执行稍后将描述的重写的状态信号(后文中称为状态信号(重写NG))(步骤S101中为否),则停止重写(步骤S106),并且终止重写处理。
当重写设备20在进行重写处理之后的预定时间内从ECU 10接收到重写请求(步骤S101中为是)时,重写设备20检查重写目标ECU 10的重写数据量(步骤S102)。重写设备20然后根据重写数据的量设定通信速度和发送周期(步骤S103)。
在本实施例中,重写设备20储存下面的表1中示出的重写数据量的通信速度和发送周期的表,并且根据表设定通信速度和发送周期。
[表1]
在表1所示的实例中,随着重写数据的量变大,发送速度变快并且发送周期变短。
其后,重写设备20向通信速度设定请求待重写的所有ECU 10(即,向重写信号所输入的所有ECU 10)发送广播消息(步骤S104)。包括在步骤S103中设定的表示通信速度和发送周期的数据。
在发送重写请求(步骤S301)之后,如果重写设备20未能在预定时间之内接收到通信速度设定请求(步骤S302中为否),则ECU 10发送状态信息(重写NG)并且结束重写处理。另一方面,当ECU 10在预定时间之内从重写设备20接收到通信速度设定请求(步骤S302中为是)时,则ECU 10判定通信速度设定请求中是否包括通信速度和发送周期并且设定通信速度和发送周期(步骤S303)。此后,ECU 10将表示完成了通信速度的设定的状态信号(后文称为状态信号(通信速度设定结束))发送到重写设备20(步骤S304),并且处理进行到图7的步骤S306。
如果在发送了通信速度设定请求之后(步骤S104)重写设备20未能从待重写的所有ECU 10接收到状态信号(通信速度设定结束),或者当接收到状态信号(重写NG)(步骤S105中为否)时,重写停止(步骤S106),则重写处理终止。
另一方面,如果在预定时间内从所有待重写的ECU 10接收到状态信号(通信速度设定结束)(步骤S105为是)时,则重写设备20进行到图7中的步骤S107。
在图7中的步骤S107中,重写设备20读取写入在未示出的储存设备中的重写数据,并且根据包括在重写数据中的闪存ROM 14B的地址数据判断重写目标区是否是公共重写目标区A4(步骤S107)。在是公共重写目标区A4的情况下(步骤S107中为是),重写设备20向所有的ECU 10广播重写数据(步骤S108)。
如果重写设备20未完成储存在储存设备中的多个重写数据之中的公共重写目标区A4的所有重写数据的发送(步骤S109中为否),则处理返回到步骤S107。当返回到步骤S107时,重写设备20读出下一重写数据,并且判定其是否是公共重写目标区A4。重写设备20判定在步骤S109中的否判断期间步骤S107中为是。
另一方面,当完成了公共重写目标区A4中的所有重写数据的发送(步骤S109中为是)时,重写设备20将公共重写目标区A4的重写结束请求广播到所有的ECU 10(步骤S110)。
另一方面,在发送状态信号(通信速度设定结束)(图6中的步骤S304)之后,ECU 10判定是否在预定时间之内接收到重写数据以及通信速度设定是否成功(步骤S306)。通信速度设定的成功如下确定:如果已经在预定时间之内以设定的通信速度发送了从重写设备20接收到的重写信号,则ECU 10判断通信速度的设定成功,并且如果未以设定的通信速度发送,则判断通信速度的设定失败。
如果未能在预定时间之内接收到重写数据或者通信速度设定失败(步骤S306中为否),则ECU 10向重写设备20发送状态信号(重写NG)并且结束重写处理。另一方面,如果接收到所有发往ECU 10的或其自身的重写数据并且如果通信速度的设定成功(步骤S306中为是),则ECU 10与接收到的重写数据中包括的地址数据相对应地删除闪存ROB 14B的相应区域(步骤S307)。
在该情况下,如果是公共重写目标区A4的重写数据,则公共重写目标区A4作为地址数据表示,并且如果是非公共重写目标区A5的重写数据,则非公共重写目标区A5的重写数据作为地址数据表示。
接着,ECU 10判断闪存ROM 14B的删除是成功还是失败(步骤S308)。在步骤S308中,ECU 10读取相应的区域,并且如果写入1,则ECU 10判定闪存ROM 14B的删除成功,并且如果写入0,则判定删除失败。在处理终止之前,如果相应的闪存ROM 14B的区域的删除未成功(步骤S308中为否),则ECU 10向重写设备20发送状态信号(重写NG)(步骤S314)。
另一方面,当相应的闪存ROM 14B的区域的删除成功(步骤S308中为是)时,则ECU10通过将接收到的重写数据重写在相应区域中来重写数据(步骤S309)。接着,ECU 10判断重写是否成功(步骤S310)。在步骤S310中,ECU 10读取相应区域,并且如果重写数据与接收到的重写数据相同,则ECU 10判断重写成功,否则重写失败。
在该步骤S310中,重写目标ECU 10分别判断重写的成功还是失败。从而如上所述的在ECU 10中对重写成功还是失败的判断缩短了处理时间,并且防止重写设备20的处理复杂化。如果重写失败(步骤S310中为否),则ECU 10向重写设备20发送状态信号(重写NG)(步骤S314),并且处理终止。
另一方面,如果重写成功(步骤S310中为是),则ECU 10判定重写数据中包括的地址数据是否是公共重写目标区A4(步骤S311)。如果其是公共重写目标区A4(步骤S311中为是),则ECU 10判定是否已经从重写设备20接收到重写结束请求(步骤S312)。
如果未接收到重写结束请求(步骤S312中为否),则ECU 10返回到步骤S306以接收下一重写数据。另一方面,如果ECU 10接收到重写结束请求(步骤S312中为是),则ECU 10在发送表示公共重写目标区A4的重写结束的状态信号(后文称为状态信号(公共重写目标区的重写结束))之后,ECU 10返回到步骤S306以接收下一重写数据。
在发送了重写结束请求之后(步骤S110),重写设备20判断是否从待重写的所有ECU 10接收到状态信号(公共重写目标区的重写结束)(步骤S111)。在步骤S111中,重写设备20根据在公共重写目标区A4的重写数据中的作为待重写的对象而储存的所有ECU 10的ID以及状态信号的发送者的ID来判断。如果未接收到或者当接收到状态信号(重写NG)(步骤S111中为否)时,重写设备20中止重写(步骤S106),并且结束重写处理(步骤S107)。
另一方面,如果接收到(步骤S111中为是),则重写设备20返回到步骤S107。在返回到步骤S107时,重写设备20读取下一重写数据,并且类似地判断其是否是公共重写目标区A4。注意,当在步骤S111中判定为是之后重写设备20返回到步骤S107时,因为下一个被读取的重写数据是非公共重写目标区A5,所以判定步骤S107中为否。
此后,重写设备20向步骤S107中读取的重写数据中的待重写的ECU 10发送重写数据(步骤S112)。据此,当ECU 10接收到寻址到其自身的重写数据(步骤S306中为是)时,处理以同样的方式进行到步骤S307至S311,并且进行闪存ROM 14B的非公共重写目标区A5的重写。
然后,ECU 10在下一步骤S311中判定重写数据的区域是非公共重写目标区A5(步骤S311中为否),并且ECU 10进行到图5中的步骤S315。
在图8中的步骤S113中,ECU 10向重写设备20发送表示重写成功的状态信号(后文称为状态信号(成功重写))。在发送非公共重写目标区A5的重写数据(步骤S112)之后,重写设备20进行到图8中的步骤S113。
在步骤S113中,重写设备20判定是否在预定时间内接收到状态信号(成功重写)(步骤S113)。如果未在预定时间内接收到状态信号(重写成功)或者接收到状态信号(重写NG)(步骤S113中为否),则重写设备20停止重写(步骤S106),并且重写处理终止。另一方面,如果在预定时间内接收到状态信号(重写成功)(步骤S113中为是),则重写设备20判断是否完成了储存在储存设备中的多个重写数据之中的非公共重写目标区A5的所有重写数据的发送(步骤S114)。
如果尚未完成重写目标区为非公共重写目标区A5这样的所有重写数据的发送(步骤S114中为否),则重写设备20返回到步骤S107。当返回到步骤S107时,重写设备20读取下一重写数据,并且相似地判定其是否是公共重写目标区A4。在步骤S107中判断为否的同时,重写设备20判断步骤S114中为否。
当完成了非公共重写目标区A5的所有重写数据的发送(步骤S114中为是)时,针对非公共重写目标区A5中的所有待重写的ECU 10,发送非公共重写目标区A5的重写发送结束请求。
如果未能在发送状态信号(成功重写)(步骤S315)之后的预定时间内从重写设备20接收到非公共重写目标区A5的重写发送结束请求(步骤S316中为否),则处理返回到图7的步骤S306,并且等待再次接收重写数据。如果在预定时间之内从重写设备20接收到非公共重写目标区A5的重写发送结束请求(步骤S316中为是),则发送表示已经完成了非公共重写目标区A5的重写的状态信号(后文,状态信号(非公共重写目标区的重写结束))(步骤S317),并且终止重写处理。
当在发送了非公共重写目标区A5的重写结束请求(步骤S115)之后的预定时间内接收到状态信号(非公共重写目标区的重写结束)(步骤S116中为是)时,重写设备20判断是否在预定时间内从非公共重写目标区A5中的待重写的所有ECU 10接收到状态信号(非公共重写目标区的重写结束)(步骤S117)。
如果从所有的ECU 10接收到状态信号(非公共重写目标区的重写结束)(步骤S117中为是),则重写设备20结束重写处理。另一方面,如果未从所有的ECU 10接收到状态信号(非公共重写目标区的重写结束)(步骤S117中为否),则重写设备判断是否接收到状态信号(重写NG)(步骤S118)。
如果接收到状态信号(重写NG)(步骤S118中为是),则重写设备20停止重写(步骤S106)并且结束重写处理。另一方面,如果未接收到状态信号(重写NG)(步骤S118中为否),则重写设备20返回到图7中的步骤S107。在步骤S118中,在步骤S118中的判定为否之后,当处理返回到步骤S107时,重写设备20再次发送ECU 10未能接收到状态信号(非公共重写目标区的重写结束)的重写数据。
根据上述实施例,多个ECU 10各自设置有公共重写目标区A4和非公共重写目标区A5,在公共重写目标区A4中储存彼此共用的共同内容,在非公共重写目标区A5中储存彼此非公用的非公共重写内容。并且重写设备20将公共存储内容的重写数据同时发送(广播)给多个ECU 10,并且将非公共存储内容的重写数据顺次发送给待重写的目标ECU 10。这能够使得同时重写多个ECU 10的公共重写目标区A4并且缩短重写时间。
根据上述实施例,多个ECU 10均具有非重写目标区A3,其中储存了不重写的写入内容。这使得能够将不需要重写的存储内容储存在非重写目标区A3中。
根据上述实施例,重写设备20以与重写数据的数据量相应的通信速度进行发送,从而进一步减少重写时间。
根据上述实施例,非重写目标区A3设置在闪存ROM 14B中,但是本发明不限于该情况。本发明可以在闪存ROM 14B中包括公共重写目标区A4和非公共重写目标区A5,不要求安装非重写区A3。
根据上述实施例,重写设备20以与重写数据的数据量相应的通信速度发送数据,但是不限于此。例如,通信速度可以为恒定的,而与数据量无关。
根据上述实施例,重写设备20首先发送重写目标区为公共重写目标区A4这样的所有重写数据,并且然后发送所有的非公共重写目标区A5的重写数据,然而不限于此。还能够首先发送非公共重写目标区A5的所有重写数据,并且然后发送公共重写目标区A4的重写数据。
(第三实施例)
下文将参考图9和10描述本发明的一个实施例。图9是示出根据本发明的重写系统的实施例的方框图。图10是示出图9所示的ECU的闪存ROM的配置的方框图。在图中,与上述第一和第二实施例中已经描述的部分相同的部分用相同的附图标记表示,并且省略其详细描述,将描述与第一和第二实施例的不同之处。
输入电路12是输入来自CH1至CHn本地开关(后文称为CH1至CHn本地SW)51至5n的信号的电路。在图9中,来自CH1至CHn本地SW 51至5n的输入信号输入到输入线路12中,但是不限于此,而是可以输入各种传感器的输出被A/D转换这样的A/D输入或PWM输入。
输出电路13是作为安装在车辆上的诸如阀门和电机等这样的各种负载的CH1至CHn负载71至7n所连接到的电路。ECU 10是用于控制这些CH1至CHn负载71至7n的设备。在本实施例中,CH1至CHn负载71至7n以一一对应的方式对应于上述CH1至CHn本地SW 51至5n。
如图10所示,闪存ROM 14B具有两个区域:非重写目标区A6和重写目标区A7。
非重写目标区A6储存不重写的存储内容(程序、变量和设定值)。在本实施例中,非重写目标区A6包括基本控制程序区A61、通信控制程序区A62、变量/设定值区A63以及重写程序区A64。
基本控制程序区A61储存用于周期地执行各种程序的基本程序。通信控制程序区A62储存用于进行诸如CAN和LIN这样的通信处理的通信程序。变量/设定值区A63储存执行区域中的各个程序所需的变量和设定值。设定值包括阈值、最小值、最大值、用于条件分支的值、计数值、初始值等。重写程序区A64储存重写程序以执行针对重写目标区A7的重写处理。
重写目标区A7储存待重写的存储内容。在该实例中,重写目标区A7设置有通道1至通道n的程序区(CH1至CHn程序区)A71至A7n。CH1至CHn程序区A71至A7n以一一对应的方式与作为控制目标的CH1至CHn负载71至7n对应。分别用于控制这些CH1至CHn程序区A71至A7n的存储内容分别储存在CH1至CHn程序区A71至A7n中。在本实施例中,各个CH1至CHn程序区A71至A7n储存输入判断控制程序、基础应用控制程序、输出判断控制程序以及与各个程序对应的设定变量和设定值。
输入判断控制程序是用于进行经由I/F 11的通信判断以及通过输入电路12的输入判断处理的程序。基础应用控制程序是用于判断与输入判断处理的结果相对应的负载是ON还是OFF的程序。并且输出判断控制程序是用于根据负载ON/OFF判断处理的结果执行输出判断处理的程序。
重写设备20具有未示出的微计算机。微计算机具有公知的CPU、ROM和RAM。重写设备20具有未示出的储存设备,并且多个重写数据储存在储存设备中。多个重写数据各自包括指示闪存ROM 14的区域的地址数据。通过检查地址数据,得知CH1至CHn程序区A71至A7n中的哪个是写入重写数据的区域。
在本实施例中,多个ECU 10包括上述闪存ROM 14B的存储结构的互相等同的设备,从而重写设备20能够特别地区分多个ECU 10并且将重写数据发送到所有ECU 10,如下文所述。
接下来将参考图11的流程图描述具有上述配置的重写系统1的操作。
图11是示出图9和10所示的重写系统的操作的流程图。图12是示出图11所示的掩码设定处理的流程图。
此处,在该实例中,作为在由图11和12的流程图表示的处理之前的重写处理的准备阶段,操作员首先操作多个ECU 10的CH1至CHn本地SW51至5n。该操作在各个ECU 10的闪存ROM 14B中的CH1至CHn程序区A71至A7n中指定了禁止重写的掩码区域和允许重写的掩码排除区域。如果将本地开关设定为ON,则将相应的CH程序区分配至掩码区域,相反,如果本地开关设定为OFF,则将相应的CH程序区指定为掩码排除区域。如果将所有的CHn本地SW 51至SW 5n设定为ON,则ECU 10自身被掩盖,并且被从重写目标排除。
在经过这样的准备阶段之后,在图11和12中的流程图所示的处理中,操作者首先将重写单元20连接到在通信线30中设置的连接单元40(步骤S401)。重写设备20的CPU(后文简称为重写设备20)根据到通信线30的连接启动重写处理。在重写处理的启动开始时,重写设备20将重写信号发送给各个ECU 10,以通知重写处理的启动。
另一方面,各个ECU 10的CPU 14A(后文简称为ECU 10)根据电源启动处理。各个ECU 10进行以下掩码设定处理(步骤S501)。
在图12所示的掩码设定处理中,ECU 10首先判定是否满足重写条件(步骤S5011)。根据是否从重写设备20发送了重写信号来做出该判定。如果已经发送了重写信号(步骤S5011中为是),则ECU 10执行掩码设定处理的一系列处理。另一方面,如果未发送重写信号(步骤S5011中为否),则ECU 10启动正常处理(步骤S5012),并且结束处理。此处正常操作是对CH1至CHn负载71至7n的ON/OFF控制。
是否满足重写条件的判定不限于如本实施例中的基于来自重写设备20的重写信号的判定。可以基于来自ECU 10外部的本地信号或者基于设置在ECU 10中的专用开关的操作来进行是否满足重写条件的判定。
在掩码设定处理的一系列处理中,ECU 10判断CHx(x是1至n中的任意一者)的本地开关5x是否设定为ON(步骤S5013)。如果CHx本地开关5x设定为ON(步骤S5013中为是),则ECU 10将相应的CHx程序区A2x设定到禁止重写的掩码目标区(步骤S5014),而如果CHx本地开关5x设定为OFF(步骤S5013中为否),则ECU 10将相应的CHx程序区A2x设定为允许重写的掩码排除区(步骤S5015)。然后ECU 10判断是否完成了对所有CH1至CHn程序区A71至A7n的处理(步骤S5016)。如果还有未处理的程序区(步骤S5016中为否),则ECU 10重复步骤S5013至S5015中的处理。当已经处理了所有的程序区(步骤S5016中为是)时,ECU 10完成掩码设定处理并且返回到图11所示的流程图。在ECU 10中,用于执行图12所示的处理的CPU 14A起到进行掩码设定处理的掩码设定部的作用。
在图11所示的处理中,重写设备20判断是否从多个ECU 10中的任意ECU接收到处理停止信号(步骤S402)。当接收到处理停止信号(步骤S402中为是)时,重写设备20停止重写处理(步骤S403),并且终止处理。如果未收到处理停止信号(步骤S402中为否)时,重写设备20向所有ECU 10发送CHx重写数据(步骤S404)。此时发送的重写数据是CHx程序区A2x中储存的各种程序、各种变量和各种设定值。每次在步骤S404中发送重写数据时,重写设备20都要判断是否发送了与CHx程序区A2x相关的所有重写数据(步骤S405)。如果存在未接收到的重写数据(步骤S405中为否),则重写设备20重复从步骤S402到S404的处理。当已经发送所有的重写数据(步骤S405中为是)时,重写设备20判定是否对所有的CH1至CHn程序区A71至A7n都完成了重写数据发送(步骤S406)。当还有尚未发送的程序区的重写数据(步骤S406中为否)时,重写设备20重复步骤S402至S405中的处理。当对所有的程序区都完成了重写数据发送(步骤S406中为是)时,重写设备20将处理结束信号发送到所有的ECU 10(步骤S407)以终止处理。利用以上处理,重写设备20以CH1、CH2……CHn的顺序依次将所有的CH1至CHn程序区A71至A7n的重写数据发送到所有的ECU 10。
另一方面,在上述掩码设定处理(步骤S501)之后,ECU 10判定是否在预定时间内从重写设备20接收到CHx重写数据(步骤S502)。如果在已经过去预定之间之后未接收到CHx重写数据(步骤S502中为否),则ECU 10将处理停止信号发送到重写设备20(步骤S503)并且结束处理。另一方面,当接收到CHx重写数据(步骤S502中为是)时,ECU 10判定相应的CHx程序区A2x是否是允许重写的掩码排除区(步骤S504)。如果CHx程序区A2x是禁止重写的掩码目标区(步骤S504中为否),则ECU 10判定是否已经从重写设备20接收到处理结束信号(步骤S505)。如果接收到处理结束信号(步骤S505中为是),则ECU 10结束处理。如果未接收到处理结束信号(步骤S505中为否),则ECU 10使处理返回到步骤S502以接收下一CH程序区的重写数据。
另一方面,如果在步骤S504中判定CHx程序区A2x是掩码排除区(步骤S504中为是),则ECU 10删除CHx程序区A2x的储存内容(步骤S506)。接着,ECU 10判断存储内容的删除是成功还是失败(步骤S507)。ECU 10读出步骤S507中CHx程序区A2x的存储内容,并且如果写入1,则ECU 10判断删除成功,并且如果写入0,则ECU10判断删除失败。如果删除不成功(步骤S507中为否),则ECU 10向重写设备20发送处理停止信号(步骤S503),并且处理终止。如果删除成功(步骤S507中为是),则ECU 10通过将从重写设备20接收到的CHx重写数据写入CHx程序区A2x来重写数据(步骤S508)。接着,ECU 10判断重写是否成功(步骤S509)。在该判断中,ECU 10首先读取CHx程序区A2x的存储内容。然后,如果读出的存储内容与接收到的CHx重写数据相同,则ECU 10判定重写成功,并且如果读出的存储内容与接收到的CHx重写数据不同,则重写失败。如果重写失败(步骤S509中为否),则ECU 10向重写设备20发送处理停止信号(步骤S503),并且结束处理。如果重写成功(步骤S509中为是),则在经过了是否接收到处理结束信号的判断(步骤S505)之后,ECU 10结束处理,或者返回到步骤S502以准备接收下一重写数据。
如上所述,当完成了对所有的CH1至CHn程序区A71至A7n的重写数据的发送时,从重写设备20发送处理结束信号。即,判定为在步骤S505中接收到处理结束信号的情况意味着已经对所有程序区的所有掩码排除区完全重写了存储内容。因此,如果在步骤S505中判定为接收到处理结束信号,则ECU 10结束处理。当未从重写设备20接收到重写信号时,ECU10启动正常处理。当新接收到重写信号时,ECU 10从掩码设定处理S21开始再次执行重写处理。
根据上述本实施例,能够在掩码设定处理中禁止或允许任意程序区的重写,使得能够例如覆盖所有的CH1至CHn程序区A71至A7n,仅能够重写期望的程序区,或者能够进行灵活的重写。
另一方面,重写设备20不需要知道禁止重写或者允许重写哪些通道区,并且仅对所有的CH1至CHn程序区A71至A7n发送重写数据。ECU 10仅需要接收重写数据并且将其作为通过掩码设定处理而允许重写的掩码排除区的目标而重写。如本实施例中所述,由于重写所需的处理简单,所以能够缩短重写时间,并且由于重写所需的处理简单,所以能够减少重写错误。
在该实施例中,通过具有CH1至CHn程序区A71至A7n的ECU 10进行掩码设定处理。从而,与重写设备20同各个ECU 10通信以进行掩码设定处理等的配置相比,能够以高准确性进行掩码设定处理。
另外,由于各个ECU 10基于作为CH1至CHn本地SW 51至5n的ON/OFF状态这样的硬件条件而识别掩码目标区和掩码排除区,所以以较高的准确度进行掩码设定处理。
在该实施例中,CH1至CHn本地SW 51至5n以一一对应的方式对应于CH1至CHn程序区A71至A7n。即,将各个本地开关的ON/OFF状态设定为使得各个CH程序区与掩码目标区和掩码排除区直接相关,从而能够以较高的准确性进行掩码设定处理。
在本实施例中,多个ECU 10设置在重写系统1中。在各个ECU 10中独立进行掩码设定处理,并且重写设备20共同地将CH1至CHn程序区A71至A7n的所有存储内容的重写数据发送到所有的多个ECU 10。即,重写设备20仅发送CH1至CHn程序区A71至A7n的所有的重写数据,而不区分ECU 10。因此,即使利用用于多个ECU 10的重写系统1也能够缩短重写时间。
应理解上述实施例仅为代表性实例,并且不应被解释为限制本发明的范围。即,可以在不偏离本发明的范围的情况下以各种变型例实现上述重写系统、重写设备和计算机。当然,只要包括上述重写系统、重写设备和计算机的基本构成,即使进行了这样的修改,也包括在该范畴中。
例如,在上述实施例中,具有闪存ROM 14B的ECU 10实施为本发明中描述的具有存储器的计算机的实例。然而,本发明中的具有存储器的计算机不限于此,并且没有要求其具体形式。
在上述实施例中,作为本发明中的存储器的实例,示例了具有非重写目标区A6和重写目标区A7的闪存ROM 14B。此外,作为本发明所述的多个通道区域的实例,示例了输入判断控制程序、基础应用控制程序、输出判断控制程序以及储存了变量和设定值的CH1至CHn程序区A71至A7n。本发明所述的存储器和多个通道区不限于此。可以任意地设定各个通道区中的具体存储内容,并且只要有多个通道区,则具体的存储区域配置也可以任意设置。
在上述实施例中,作为本发明中的重写系统的实例,例举了具有多个ECU 10的重写系统1。然而,本发明中的重写系统不限于这样的实例,并且可以是配备有单个计算机的系统。
在上述实施例中,例举了ECU 10的CPU 14A和设置在ECU 10中的CH1至CHn本地SW51至5n的配置的实例作为本发明中的掩码设定部的实例。然而,本发明中的掩码设定部不限于该实施例,而可以是例如设置有重写设备,以通过与诸如ECU等这样的计算机的通信来进行掩码设定处理。另外,可以分别在计算机和重写设备中设置掩码设定处理的处理功能的一部分,并且计算机与重写设备两者可以彼此协作进行掩码设定处理。或者,可以设置除了重写设备之外的外部设备,从而连接到诸如ECU这样的计算机以进行掩码设定处理。
此外,本发明中的掩码设定部即使安装在诸如ECU这样的计算机中,也不限于包括一一对应地设置有CH1至CHn程序区A71至A7n的CH1至CHn本地SW 51至5n的形式。例如,本发明中的掩码设定部具有少量的本地开关,并且使用这些本地开关的ON/OFF状态的任意组合来将任意区域设定为掩盖区或掩码排除区。或者,首先,可以没有本地开关,例如,可以是模拟数据的哪种区域根据其等级而被用作掩码目标区和掩码排除区这样的形式。

Claims (15)

1.一种重写系统,包括:
计算机,该计算机包括存储器;
重写设备,该重写设备至少将储存在所述存储器中的存储内容的重写数据发送到所述计算机,其中
所述计算机中的所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中,并且其中
所述重写设备仅针对所述存储器中的所述重写目标区的存储内容将所述存储内容的重写数据发送给所述计算机。
2.根据权利要求1所述的重写系统,其中,所述重写目标区包括:程序区,一个以上的程序储存在该程序区中;变量区,用于处理的变量针对所述一个以上的程序中的每个程序储存在该变量区中;以及设定值区,用于处理的设定值针对所述一个以上的程序中的每个程序储存在该设定值区中,并且其中
所述重写设备从所述程序区中储存的程序、所述变量区中储存的变量以及所述设定值区中储存的设定值之中选择任意一个或多个数据,并且针对该数据发送所述重写数据。
3.一种重写设备,该重写设备至少将储存在存储器中的存储内容的重写数据发送到计算机,所述计算机包括所述存储器,其中
所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中,并且其中
仅针对所述存储器中的所述重写目标区的存储内容,将所述存储内容的重写数据发送到所述计算机。
4.一种计算机,包括存储器,并且该计算机从重写设备至少接收所述存储器中储存的存储内容的重写数据,其中
所述存储器包括:重写目标区,待被重写的存储内容储存在该重写目标区中;以及非重写目标区,不被重写的存储内容储存在该非重写目标区中。
5.根据权利要求1所述的重写系统,其中,
设置多个计算机,其中
所述多个计算机的每个存储器均包括:公共区,互相共用的公共存储内容储存在该公共区中;以及非公共区,互相非共用的非公共存储内容储存在该非公共区中,并且其中
所述重写设备将所述公共存储内容的重写数据共同地发送到所述多个计算机,并且将非公共存储内容的重写数据依次发送到待重写的所述计算机。
6.根据权利要求5所述的重写系统,其中,
所述重写设备以与所述重写数据的数据量相对应的通信速度进行发送。
7.根据权利要求3所述的重写设备,其中,
所述重写设备重写多个所述计算机的存储内容,并且其中
所述多个计算机共用的公共存储内容的重写数据被共同地发送到所述多个计算机,并且所述多个计算机非共用的非公共存储内容的重写数据被依次发送到待重写的计算机。
8.根据权利要求4所述的计算机,其中
所述存储器包括:公共区,与其他计算机共用的公共存储内容储存在该公共区中;以及非公共区,不与所述其他计算机共用的非公共存储内容储存在该非公共区中。
9.根据权利要求1所述的重写系统,其中
所述计算机控制多个控制对象,
所述计算机中的所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容与所述多个控制对象相对应地储存在该多个通道区中,其中
设置掩码设定部用于进行掩码设定处理,所述掩码设定处理在所述多个通道区之中设定禁止重写的掩码目标区和允许重写的掩码排除区,其中
所述重写设备针对所述多个通道区的全部通道区发送所述存储内容的重写数据,并且其中
所述计算机使用从所述重写设备发送的重写数据之中的与所述掩码排除区对应的重写数据来重写所述掩码排除区的存储内容。
10.根据权利要求9所述的重写系统,其中
所述掩码设定部设置在所述计算机中以进行所述掩码设定处理。
11.根据权利要求10所述的重写系统,
所述掩码设定部具有设置在所述计算机中的多个本地开关,从而依据所述多个本地开关的ON/OFF状态了解每个所述通道区是所述掩码目标区还是所述掩码排除区。
12.根据权利要求11所述的重写系统,其中,
所述多个本地开关与所述多个通道区相对应。
13.根据权利要求9至12的任意一项所述的重写系统,其中,
设置多个计算机,
所述掩码设定部针对各所述计算机独立地进行所述掩码设定处理,并且其中
所述重写设备针对所述多个计算机的全部计算机共同地发送所述多个通道区的所有存储内容的重写数据。
14.根据权利要求3所述的重写设备,其中
所述计算机控制多个控制对象,
所述计算机中的所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容与所述多个控制对象相对应地储存在该多个通道区中,
对所述多个通道区实施掩码设定处理,该掩码设定处理设定禁止重写的掩码目标区和允许重写的掩码排除区,并且
针对所述多个通道区的全部通道区的存储内容的重写数据被发送到所述计算机。
15.根据权利要求4所述的计算机,其中
所述计算机控制多个控制对象,
所述存储器设置有多个通道区,用于控制所述多个控制对象中的每个控制对象的存储内容与所述多个控制对象相对应地分别存储在该多个通道区中,
对所述多个通道区实施掩码设定处理,所述掩码设定处理设定禁止重写的掩码目标区和允许重写的掩码排除区,并且
在针对所述多个通道区的全部通道区从所述重写设备发送的重写数据之中,使用与所述掩码排除区相对应的重写数据重写所述掩码排除区的存储内容。
CN201810325925.1A 2017-04-12 2018-04-12 重写系统、重写设备以及计算机 Active CN108762770B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2017-078667 2017-04-12
JP2017078667A JP2018180869A (ja) 2017-04-12 2017-04-12 書換えシステム、書換え装置及びコンピュータ
JP2017105450A JP6765343B2 (ja) 2017-05-29 2017-05-29 書換えシステム、書換え装置及びコンピュータ
JP2017-105450 2017-05-29
JP2017127507A JP6912954B2 (ja) 2017-06-29 2017-06-29 書換えシステム及びコンピュータ
JP2017-127507 2017-06-29

Publications (2)

Publication Number Publication Date
CN108762770A true CN108762770A (zh) 2018-11-06
CN108762770B CN108762770B (zh) 2021-11-05

Family

ID=63679233

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810325925.1A Active CN108762770B (zh) 2017-04-12 2018-04-12 重写系统、重写设备以及计算机

Country Status (3)

Country Link
US (1) US10936236B2 (zh)
CN (1) CN108762770B (zh)
DE (1) DE102018205395B4 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984284A (zh) * 2019-05-23 2020-11-24 矢崎总业株式会社 数据重写方法和数据重写系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113518988A (zh) * 2019-03-05 2021-10-19 密码研究公司 嵌入式中央处理单元上的抗侧通道攻击存储器访问
JP7461755B2 (ja) * 2020-02-21 2024-04-04 日立Astemo株式会社 情報処理装置、プログラム更新システム、及びプログラム更新方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259207A1 (en) * 2005-04-20 2006-11-16 Denso Corporation Electronic control system for automobile
CN103064356A (zh) * 2011-06-30 2013-04-24 洛克威尔自动控制技术股份有限公司 工业自动化环境中以多种配置进行的应用的多种部署
CN103136134A (zh) * 2011-11-21 2013-06-05 株式会社电装 用于车辆的数据重写系统、车载设备和重写设备
US20130198732A1 (en) * 2010-10-15 2013-08-01 Hitachi Solutions, Ltd. Embedded program update method, embedded program update program, electronic apparatus, network system
CN103473090A (zh) * 2011-01-21 2013-12-25 北京奇虎科技有限公司 用于可移动设备的软件转移安装方法及系统
CN105791387A (zh) * 2015-01-13 2016-07-20 福特全球技术公司 车辆控制更新方法和系统
US20170003895A1 (en) * 2015-06-30 2017-01-05 International Business Machines Corporation Using inactive copy relationships to resynchronize data between storages
CN106462477A (zh) * 2014-07-31 2017-02-22 三菱电机株式会社 设备管理装置、管理程序更新方法以及程序

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2783079B2 (ja) * 1992-08-28 1998-08-06 トヨタ自動車株式会社 ヘッドランプの配光制御装置
US6151708A (en) * 1997-12-19 2000-11-21 Microsoft Corporation Determining program update availability via set intersection over a sub-optical pathway
JP2000043654A (ja) 1998-07-31 2000-02-15 Hitachi Ltd 自動車用制御装置
JP3575300B2 (ja) 1998-11-12 2004-10-13 トヨタ自動車株式会社 移動体用コンピュータ
JP2001236233A (ja) * 2000-02-24 2001-08-31 Hitachi Ltd 複数の制御プログラムの一括書き換え方式およびその制御装置
US20030063896A1 (en) * 2001-09-28 2003-04-03 Gonzalez Tovar Victor Manuel System utility interface for software upgrades and system diagnostics in automotive or portable DVD players
JP2003104138A (ja) 2001-10-01 2003-04-09 Honda Motor Co Ltd データ書き換えのための車両制御装置の監視システム
JP3623481B2 (ja) 2002-01-11 2005-02-23 本田技研工業株式会社 不揮発性メモリの書き換えを制御する車両制御装置
JP2004287712A (ja) 2003-03-20 2004-10-14 Denso Corp 電子装置
US7113077B2 (en) * 2005-01-21 2006-09-26 Autotronic Controls Corporation System and method for providing a display utilizing a fast photon indicator
JP4938721B2 (ja) 2008-04-11 2012-05-23 日本特殊陶業株式会社 ガスセンサの劣化信号生成装置
US8514242B2 (en) * 2008-10-24 2013-08-20 Microsoft Corporation Enhanced user interface elements in ambient light
JP5267611B2 (ja) 2011-04-22 2013-08-21 コニカミノルタビジネステクノロジーズ株式会社 画像読取装置、プログラム、プログラム記録媒体、及び方法
JP6094523B2 (ja) 2014-04-25 2017-03-15 トヨタ自動車株式会社 プログラム書き換え方法
JP6217543B2 (ja) 2014-06-27 2017-10-25 株式会社デンソー 電子制御装置及び電子制御装置に対する記憶内容の書き換えシステム
JP6415990B2 (ja) 2015-01-08 2018-10-31 日立オートモティブシステムズ株式会社 自動車用電子制御装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259207A1 (en) * 2005-04-20 2006-11-16 Denso Corporation Electronic control system for automobile
US20130198732A1 (en) * 2010-10-15 2013-08-01 Hitachi Solutions, Ltd. Embedded program update method, embedded program update program, electronic apparatus, network system
CN103473090A (zh) * 2011-01-21 2013-12-25 北京奇虎科技有限公司 用于可移动设备的软件转移安装方法及系统
CN103064356A (zh) * 2011-06-30 2013-04-24 洛克威尔自动控制技术股份有限公司 工业自动化环境中以多种配置进行的应用的多种部署
CN103136134A (zh) * 2011-11-21 2013-06-05 株式会社电装 用于车辆的数据重写系统、车载设备和重写设备
CN106462477A (zh) * 2014-07-31 2017-02-22 三菱电机株式会社 设备管理装置、管理程序更新方法以及程序
CN105791387A (zh) * 2015-01-13 2016-07-20 福特全球技术公司 车辆控制更新方法和系统
US20170003895A1 (en) * 2015-06-30 2017-01-05 International Business Machines Corporation Using inactive copy relationships to resynchronize data between storages

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984284A (zh) * 2019-05-23 2020-11-24 矢崎总业株式会社 数据重写方法和数据重写系统
CN111984284B (zh) * 2019-05-23 2024-04-19 矢崎总业株式会社 数据重写方法和数据重写系统

Also Published As

Publication number Publication date
DE102018205395B4 (de) 2023-11-23
US10936236B2 (en) 2021-03-02
US20180300059A1 (en) 2018-10-18
CN108762770B (zh) 2021-11-05
DE102018205395A1 (de) 2018-10-18

Similar Documents

Publication Publication Date Title
CN108762770A (zh) 重写系统、重写设备以及计算机
Pietraszewski et al. Evidence that accent is a dedicated dimension of social categorization, not a byproduct of coalitional categorization
KR100298420B1 (ko) 롬바이오스의업데이트방법
US8214800B2 (en) Compact representation of vendor hardware module revisions in an open architecture test system
US11334327B2 (en) Execution order block for graphical programming
CN108449313B (zh) 电子装置、互联网服务系统风险预警方法及存储介质
CN103853663A (zh) 应用程序测试方法及系统
CN107766602A (zh) 技术系统的运行软件的修正和仿真
CN114091589B (zh) 模型训练方法、装置、电子设备及介质
Beohar et al. Conditional transition systems with upgrades
US11170661B2 (en) Physical software coding training apparatus
McCollam Latent trait and latent class models
CN111831267A (zh) 软件开发支持装置、软件开发支持方法以及软件开发支持程序
US20230375997A1 (en) Control device
CN113110836B (zh) 基于vue的前端应用组件化开发方法及装置
US20220019411A1 (en) Systems and methods for device-specific code completion
Bell Introducing micropython
CN112256188A (zh) 排课方案生成方法和装置以及相应的计算机设备、存储介质、排课系统和排课方法
KR102380875B1 (ko) 프로그래밍 능력 향상을 위한 코딩게임 제공 장치를 이용한 코딩게임 제공 방법
CN109960767A (zh) 页面显示方法、装置、计算机装置及计算机可读存储介质
US20020162095A1 (en) Method and system for using emulation objec6ts for developing point ofsale application
CN115328757A (zh) 全液晶仪表测试方法、装置、计算机设备和存储介质
Mateo et al. LiO: an easy and flexible library of metaheuristics
CN118107600A (zh) Can信号预留字段处理方法、装置、电子设备及存储介质
US20180129481A1 (en) Method and computer for determining selection connection structures in a graphics computer program

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