WO2018138991A1 - 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム - Google Patents

車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム Download PDF

Info

Publication number
WO2018138991A1
WO2018138991A1 PCT/JP2017/039109 JP2017039109W WO2018138991A1 WO 2018138991 A1 WO2018138991 A1 WO 2018138991A1 JP 2017039109 W JP2017039109 W JP 2017039109W WO 2018138991 A1 WO2018138991 A1 WO 2018138991A1
Authority
WO
WIPO (PCT)
Prior art keywords
update
data
switch device
vehicle
gateway
Prior art date
Application number
PCT/JP2017/039109
Other languages
English (en)
French (fr)
Inventor
呉ダルマワン
浦山博史
長村吉富
萩原剛志
藪内靖弘
Original Assignee
住友電気工業株式会社
株式会社オートネットワーク技術研究所
住友電装株式会社
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 住友電気工業株式会社, 株式会社オートネットワーク技術研究所, 住友電装株式会社 filed Critical 住友電気工業株式会社
Priority to US16/481,352 priority Critical patent/US11128711B2/en
Priority to CN201780084837.0A priority patent/CN110235100B/zh
Publication of WO2018138991A1 publication Critical patent/WO2018138991A1/ja

Links

Images

Classifications

    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Definitions

  • the present invention relates to an in-vehicle communication system, a gateway, a switch device, a communication control method, and a communication control program.
  • Patent Document 1 Japanese Unexamined Patent Application Publication No. 2014-182571 discloses the following on-vehicle relay device.
  • the in-vehicle relay device that supports the multi-protocol searches for the difference data between the new program and the old program when rewriting the on-board electronic control device program connected in the multi-protocol in the on-board state.
  • the difference data is transmitted to the in-vehicle electronic control device and stored.
  • An in-vehicle communication system is an in-vehicle communication system mounted on a vehicle, and includes a gateway capable of performing relay processing with communication protocol conversion, and relay processing without communication protocol conversion.
  • One or a plurality of switch devices that perform, the gateway or the switch device manages data update of a target device mounted on the vehicle, and the gateway sends update data for the target device to the outside of the vehicle
  • the update data for the target device that is received from the external device and connected to the subordinate switch device is transmitted to the switch device, and the update data is not retained at least after the update is completed, and the switch device
  • the update data for the target device connected to itself without going through is held even after the update is completed.
  • a gateway is a gateway mounted on a vehicle, and manages data updating of a relay unit capable of performing a relay process with conversion of a communication protocol and a target device mounted on the vehicle.
  • a storage unit wherein the relay unit receives update data for the target device from an external device outside the vehicle, and the storage unit receives the update data received by the relay unit
  • the relay unit transmits to the switch device relay target data that is the update data for the target device connected to a subordinate switch device that performs relay processing without conversion of a communication protocol,
  • the management unit deletes the relay target data from the storage unit at least after completion of the update, and is connected to the gateway of its own without going through the switch device.
  • the rear the updated data update completion for the target device is also to be held in the storage unit that.
  • a switch device is a switch device mounted on a vehicle, and manages data updating of a switch unit that performs relay processing without conversion of a communication protocol, and a target device mounted on the vehicle.
  • a gateway that can perform relay processing with conversion of a communication protocol is connected to the switch device, and the switch unit is connected between the gateway or the gateway.
  • the update data for the target device is received from the other upstream switch device provided, the storage unit holds the update data received by the switch unit, and the switch unit Transmit relay target data that is the update data for the target device connected to another switch device to the other switch device on the downstream side.
  • the relay target data is erased from the storage unit, and the management unit is connected to the switch device of its own without being connected to the other switch device.
  • the update data is held in the storage unit even after the update is completed.
  • a communication control method is mounted on a vehicle, can perform relay processing with conversion of a communication protocol, and is a communication control method in a gateway including a storage unit, and is mounted on the vehicle.
  • Managing data update of the target device receiving update data for the target device from an external device outside the vehicle, holding the received update data in the storage unit, and a communication protocol Transmitting the relay target data, which is the update data for the target device connected to a subordinate switch device that performs relay processing without conversion, to the switch device, and managing the data update
  • the relay target data is deleted from the storage unit, and the switch device is used. After the update data update completion for the target device connected to the own the gateway also be held in the storage unit without.
  • a communication control method of the present disclosure is a communication control method in a switch device that is mounted on a vehicle, performs relay processing without conversion of a communication protocol, and includes a storage unit, and the switch device includes a communication protocol.
  • the target device connected to the switch device of its own without passing through the other switch device The update data for use is stored in the storage unit even after the update is completed.
  • a communication control program is a communication control program used in a gateway that is mounted on a vehicle and includes a storage unit, and is capable of performing relay processing with conversion of a communication protocol on a computer. And a management unit that manages data update of the target device mounted on the vehicle, wherein the relay unit receives update data for the target device from an external device outside the vehicle.
  • the storage unit holds the update data received by the relay unit, and the relay unit is connected to a subordinate switch device that performs relay processing without conversion of a communication protocol.
  • the relay target data which is the update data
  • the management unit at least after the update is completed Clear the target data from the storage unit, even after the update data update completion for the target devices connected to its own the gateway without passing through the switching device is a program to be held in the storage unit.
  • a communication control program is a communication control program used in a switch device that is mounted on a vehicle and includes a storage unit, the computer performing a relay process that does not involve conversion of a communication protocol,
  • a program for functioning as a management unit that manages data update of target devices mounted on the vehicle, and a gateway capable of performing relay processing with conversion of a communication protocol is connected to the switch device
  • the switch unit receives update data for the target device from the gateway or another upstream switch device provided between the gateway and the gateway, and the storage unit is received by the switch unit.
  • the update data is held, and the switch unit is connected to another switch device on the downstream side.
  • One aspect of the present disclosure can be realized not only as an in-vehicle communication system including such a characteristic processing unit, but also as a method using such characteristic processing as a step, or executing such a step on a computer. It can be realized as a program for making it happen. Further, one aspect of the present disclosure can be realized as a semiconductor integrated circuit that realizes part or all of the in-vehicle communication system.
  • one aspect of the present disclosure can be realized not only as a gateway including such a characteristic processing unit, but also as a semiconductor integrated circuit that realizes part or all of the gateway.
  • one aspect of the present disclosure can be realized not only as a switch device including such a characteristic processing unit, but also as a semiconductor integrated circuit that realizes part or all of the switch device.
  • FIG. 1 is a diagram showing a configuration of a comparative example of the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of a sequence when firmware in an in-vehicle device is updated in a comparative example of the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 3 is a diagram showing a configuration of the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 4 is a diagram showing a configuration of the gateway in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 5 is a diagram showing the configuration of the switch device in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 6 is a diagram showing an example of a sequence when firmware in an in-vehicle device is updated using the proxy method in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 7 is a diagram showing an example of a sequence when firmware in the in-vehicle device is updated using the proxy method in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 8 is a diagram showing an example of a sequence when firmware in the in-vehicle device is updated using the hook method in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 9 is a diagram showing an example of a sequence when firmware in the in-vehicle device is updated using the hook method in the in-vehicle communication system according to the embodiment of the present invention.
  • the in-vehicle relay device described in Patent Document 1 stores a program and the like stored in the in-vehicle electronic control device in a flash ROM (Read Only Memory).
  • a switch device may be provided under the in-vehicle relay device.
  • the usage amount of the flash ROM may increase, and the free space may become insufficient.
  • An in-vehicle communication system, a gateway, a switch device, a communication control method, and a communication control program are provided.
  • An in-vehicle communication system is an in-vehicle communication system mounted on a vehicle, and includes a gateway capable of performing a relay process with conversion of a communication protocol, and conversion of the communication protocol.
  • the gateway or the switch device manages data update of a target device mounted on the vehicle, and the gateway updates update data for the target device Is transmitted from the external device outside the vehicle, the update data for the target device connected to the subordinate switch device is transmitted to the switch device, and the update data is retained at least after the update is completed. After completion of updating the update data for the target device connected to itself without going through the switch device To hold.
  • the gateway transmits the update data for the target device connected to the subordinate switch device to the switch device, for example, by holding the update data in the switch device.
  • the switch device can be made to manage data update.
  • consumption of the storage area in the gateway can be suppressed by a configuration in which the gateway does not hold the update data for the target device.
  • the configuration in which the gateway holds the update data for the target device connected to itself without going through the switch device even after the update is completed can easily manage the data update of the target device. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • the in-vehicle communication system includes a plurality of the switch devices connected in series, and the switch device receives the update data from the gateway or the other switch device on the upstream side, The update data for the target device connected to the other switch device on the downstream side is transmitted to the other switch device, and at least after the update is completed, the update data is not held, and the other switch device The update data for the target device connected to itself without going through is held even after the update is completed.
  • the switch device retains update data for the target device that is connected to the switch device itself without going through the other switch device, even after the update is completed, from the upstream gateway or other switch device.
  • the gateway can erase the update data.
  • the configuration in which the switch device transmits update data for the target device connected to the other switch device on the downstream side to the other switch device causes the other switch device to hold the update data.
  • the switch device does not hold the update data for the target device, so that consumption of the storage area in the switch device can be suppressed.
  • the switch device manages data update of the target device connected to itself without going through the other switch device, and the gateway manages the data update.
  • the data update of the target device is instructed.
  • the management processing of the target device can be distributed to the switch device in the in-vehicle communication system, so that the processing load on the gateway can be reduced.
  • the switch device when the data update is completed, performs a process of discarding the update data before update and holding the update data after update.
  • the target device is restarted using the update data before the update.
  • the configuration in which the updated data after the update is held can prepare for a failure in updating the target device when a new update is performed.
  • the gateway manages data update of the target device connected to the subordinate switch device.
  • the management processing of the target device can be concentrated on the gateway, so that the maintenance of the in-vehicle communication system can be simplified.
  • the switch device monitors data transmitted / received between the gateway and the target device via itself and transmits the update data transmitted from the gateway to the target device via itself. Hold.
  • the process of downloading the update data by the switch device and the process of downloading the update data by the target device can be performed in parallel, so the switch device and the target device download the update data in order.
  • the time required for the download process can be shortened.
  • the switch device when the switch device detects an update completion notification transmitted from the target device to the gateway, the switch device discards the update data before update and holds the update data after update. Process.
  • the configuration in which the update data before update is not discarded until the update completion notification transmitted when the update of the target device is completed is detected. For example, when the update of the target device fails, the update before the update is performed. The target device can be restarted using the data. In addition, the configuration in which the updated data after the update is held can prepare for a failure in updating the target device when a new update is performed.
  • the switch device performs the process when a predetermined condition is satisfied after the data update is completed.
  • a gateway is a gateway mounted on a vehicle, which can perform a relay process with conversion of a communication protocol, and a target device mounted on the vehicle.
  • a management unit that manages data update of the vehicle and a storage unit, wherein the relay unit receives update data for the target device from an external device outside the vehicle, and the storage unit is received by the relay unit And the relay unit relays the relay target data that is the update data for the target device connected to a subordinate switch device that performs relay processing without conversion of a communication protocol.
  • the management unit deletes the relay target data from the storage unit at least after completion of the update, and does not pass through the switch device. After the update data update completion for the target device connected to Lee also be held in the storage unit.
  • the switch device manages data update in the target device. Can do.
  • consumption of the storage area in the gateway can be suppressed by a configuration in which the relay target data is deleted from the storage unit.
  • the configuration in which the gateway holds the update data for the target device connected to itself without going through the switch device even after the update is completed can easily manage the data update of the target device. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • a switch device is a switch device mounted on a vehicle, and includes a switch unit that performs a relay process without conversion of a communication protocol, and a target device mounted on the vehicle.
  • a management unit that manages data update; and a storage unit, and the switch device is connected to a gateway capable of performing a relay process with conversion of a communication protocol, and the switch unit includes the gateway or the gateway.
  • the update data for the target device is received from another upstream switch device provided between the gateway, the storage unit holds the update data received by the switch unit, and the switch unit Relay target data that is the update data for the target device connected to the other switch device on the downstream side.
  • the relay target data is deleted from the storage unit, and the management unit is connected to the switch device of its own without passing through the other switch device.
  • the update data for the target device is held in the storage unit even after the update is completed.
  • the switch device retains update data for the target device that is connected to itself without passing through the other switch device, even after the update is completed, from the gateway or other upstream switch device
  • the switch device can easily manage the data update in the target device, and since the update data is held in the switch device, the gateway can erase the update data.
  • the data update management in the target device is performed by holding the relay target data in the other downstream switch device. Can be performed by another switch device on the downstream side.
  • at least after completion of the update it is possible to suppress consumption of the storage area in the switch device by a configuration in which the relay target data is deleted from the storage unit. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • a communication control method is a communication control method in a gateway that is mounted on a vehicle and can perform relay processing with conversion of a communication protocol, and includes a storage unit.
  • the relay target data is deleted from the storage unit, After the update data update completion for the target devices connected to its own the gateway without passing through the switch device is also to be held in the storage unit.
  • the switch device manages data update in the target device. Can do.
  • consumption of the storage area in the gateway can be suppressed by a configuration in which the relay target data is deleted from the storage unit.
  • the configuration in which the gateway holds the update data for the target device connected to itself without going through the switch device even after the update is completed can easily manage the data update of the target device. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • a communication control method is a communication control method in a switch device that is mounted on a vehicle, performs relay processing without conversion of a communication protocol, and includes a storage unit. Is connected to a gateway capable of performing relay processing involving conversion of a communication protocol, and is provided between the step of managing data update of the target device mounted on the vehicle and the gateway or the gateway Receiving the update data for the target device from the other upstream switch device, the step of holding the received update data in the storage unit, and the other switch device downstream.
  • the switch device retains update data for the target device that is connected to itself without passing through the other switch device, even after the update is completed, from the gateway or other upstream switch device
  • the switch device can easily manage the data update in the target device, and since the update data is held in the switch device, the gateway can erase the update data.
  • the data update management in the target device is performed by holding the relay target data in the other downstream switch device. Can be performed by another switch device on the downstream side.
  • at least after completion of the update it is possible to suppress consumption of the storage area in the switch device by a configuration in which the relay target data is deleted from the storage unit. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • a communication control program is a communication control program installed in a vehicle and used in a gateway including a storage unit, and performs relay processing with conversion of a communication protocol on a computer.
  • the storage unit holds the update data received by the relay unit, and the relay unit is connected to a subordinate switch device that performs relay processing without conversion of a communication protocol.
  • Relay target data that is the update data for the target device is transmitted to the switch device, and the management unit at least updates After completion, the relay target data is erased from the storage unit, and the update data for the target device connected to its gateway is not stored in the storage unit even after the update is completed without going through the switch device. It is a program.
  • the switch device manages data update in the target device. Can do.
  • consumption of the storage area in the gateway can be suppressed by a configuration in which the relay target data is deleted from the storage unit.
  • the configuration in which the gateway holds the update data for the target device connected to itself without going through the switch device even after the update is completed can easily manage the data update of the target device. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • a communication control program is a communication control program used in a switch device that is mounted on a vehicle and includes a storage unit.
  • the computer performs relay processing that does not involve conversion of a communication protocol.
  • This is a program for functioning as a switch unit to perform and a management unit for managing data update of the target device mounted on the vehicle, and the switch device can perform relay processing with conversion of a communication protocol
  • a gateway is connected, the switch unit receives update data for the target device from the gateway or another upstream switch device provided between the gateway and the storage unit, The update data received by the switch unit is held, and the switch unit is connected to another switch on the downstream side.
  • Relay target data which is the update data for the target device connected to the switch device, is transmitted to the other switch device on the downstream side, and at least after completion of the update, the relay target data is deleted from the storage unit.
  • the management unit is a program that holds the update data for the target device connected to the switch device of its own without passing through the other switch device in the storage unit even after the update is completed.
  • the switch device retains update data for the target device that is connected to itself without passing through the other switch device, even after the update is completed, from the gateway or other upstream switch device
  • the switch device can easily manage the data update in the target device, and since the update data is held in the switch device, the gateway can erase the update data.
  • the data update management in the target device is performed by holding the relay target data in the other downstream switch device. Can be performed by another switch device on the downstream side.
  • at least after completion of the update it is possible to suppress consumption of the storage area in the switch device by a configuration in which the relay target data is deleted from the storage unit. Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • FIG. 1 is a diagram showing a configuration of a comparative example of the in-vehicle communication system according to the embodiment of the present invention.
  • an in-vehicle communication system 300 as a comparative example includes a gateway 101 and a plurality of in-vehicle devices 111.
  • the in-vehicle communication system 300 is mounted on the vehicle 1.
  • the gateway 101 includes a volatile memory (storage unit) 24 and a nonvolatile memory (storage unit) 25.
  • the volatile memory 24 is, for example, a DRAM (Dynamic RAM).
  • Nonvolatile memory 25 is, for example, a flash memory.
  • the gateway 101 manages the data update of the target device mounted on the vehicle 1. Specifically, the gateway 101 manages the update of firmware used in each in-vehicle device 111 that is an example of the target device.
  • the gateway 101 retains the firmware used in each in-vehicle device 111 even after the update is completed, and performs recovery processing of the in-vehicle device 111 using the retained firmware as necessary. Specifically, the gateway 101 restarts the target in-vehicle device 111.
  • the external device 181 is, for example, a FOTA (Firmware On-The-Air) server, and is provided outside the vehicle 1.
  • the external device 181 holds each version of firmware used in the in-vehicle device 111.
  • the in-vehicle communication device 111T which is one of the in-vehicle devices 111, can perform wireless communication with the wireless base station device 161 in accordance with a communication standard for wide area wireless communication such as LTE (Long Term Evolution) or 3G.
  • LTE Long Term Evolution
  • 3G 3th Generation
  • the out-of-vehicle communication device 111T can communicate with the external device 181 outside the vehicle 1 via the radio base station device 161.
  • the in-vehicle device 111 is connected to the gateway 101 via either the Ethernet (registered trademark) cable 10 or the CAN bus 11.
  • the Ethernet cable 10 is a cable according to the Ethernet standard.
  • the CAN bus 11 is a bus that conforms to the standard of CAN (Controller Area Network) (registered trademark).
  • the in-vehicle device 111 is connected to the gateway 101 via a bus or a cable different from the CAN bus 11 and the Ethernet cable 10 such as FlexRay (registered trademark), MOST (Media Oriented Systems Transport) (registered trademark), and LIN (Local Interconnect Network). May be connected.
  • FlexRay registered trademark
  • MOST Media Oriented Systems Transport
  • LIN Local Interconnect Network
  • An in-vehicle device 111 (hereinafter also referred to as a CAN device) connected to the gateway 101 via the CAN bus 11 includes, for example, an engine control device, an AT (Automatic Transmission) control device, a HEV (Hybrid Electric Vehicle) control device, a brake. Control devices, chassis control devices, steering control devices, instrument display control devices, and the like.
  • AT Automatic Transmission
  • HEV Hybrid Electric Vehicle
  • the CAN device communicates with the gateway 101 in accordance with the CAN communication standard, for example.
  • the in-vehicle device 111 (hereinafter also referred to as “ether device”) connected to the gateway 101 via the Ethernet cable 10 is, for example, an out-of-vehicle communication device 111T, a camera, a driving support device, a sensor, a navigation device, and the like. It communicates with the gateway 101 according to the standard.
  • the in-vehicle device 111 has, for example, a non-volatile memory (not shown) for holding firmware, and operates according to the firmware held in the non-volatile memory.
  • the in-vehicle device 111 has a volatile memory (not shown) for temporarily holding the firmware, for example, when updating the firmware.
  • the gateway 101 can perform relay processing with conversion of a communication protocol. Specifically, for example, when the gateway 101 receives data from a CAN device according to the CAN communication standard, the gateway 101 changes the format of the received data to a format according to the Ethernet communication standard, and the changed data is converted to the Ethernet communication standard. To the Ethernet device.
  • the gateway 101 when the gateway 101 receives data from an Ethernet device according to the Ethernet communication standard, the gateway 101 changes the format of the received data to a format according to the CAN communication standard, and the data after the format change is converted into a CAN device according to the CAN communication standard. Send to.
  • the gateway 101 can perform relay processing without conversion of communication protocol, for example. Specifically, for example, when the gateway 101 receives data from a CAN device in accordance with the CAN communication standard, the gateway 101 transmits the received data to another CAN device in accordance with the CAN communication standard.
  • the gateway 101 when the gateway 101 receives data from the Ethernet device according to the Ethernet communication standard, the gateway 101 transmits the received data to another Ethernet device according to the Ethernet communication standard.
  • Firmware currently used in each in-vehicle device 111 (hereinafter also referred to as current firmware) is stored in the nonvolatile memory 25 in the gateway 101.
  • the external device 181 holds version information indicating the current version of firmware in each in-vehicle device 111, for example.
  • Each device in the in-vehicle communication system 300 includes a computer, and an arithmetic processing unit such as a CPU in the computer reads and executes a program including a part or all of each step of the following sequence diagram or flowchart from a memory (not shown). To do.
  • Each of the programs of the plurality of apparatuses can be installed from the outside. The programs of the plurality of apparatuses are distributed while being stored in a recording medium.
  • FIG. 2 is a diagram showing an example of a sequence when firmware in an in-vehicle device is updated in a comparative example of the in-vehicle communication system according to the embodiment of the present invention.
  • the firmware update process in in-vehicle device 111 is the same process regardless of whether in-vehicle device 111 is a CAN device or an Ethernet device.
  • the external apparatus 181 uses the difference data between the new firmware and the current firmware as update data, and the radio base station apparatus 161 and the vehicle communication apparatus 111T to the gateway 101 (step S102).
  • the gateway 101 when receiving the difference data from the external device 181, the gateway 101 temporarily stores the received difference data in the volatile memory 24 (hereinafter also referred to as buffering) (step S 104).
  • the gateway 101 transmits a repro start notification indicating the start of reprogramming to the in-vehicle device 111 (step S106).
  • step S108 when the in-vehicle device 111 receives the repro start notification from the gateway 101, the in-vehicle device 111 transitions to the repro mode for updating the firmware (step S108).
  • the in-vehicle device 111 transmits a transition response indicating the transition to the repro mode to the gateway 101 (step S110).
  • the gateway 101 recognizes that the firmware can be updated in the in-vehicle device 111, and is also referred to as the first part of the difference data (hereinafter also referred to as the first difference data). ) Is transmitted to the in-vehicle device 111 (step S112).
  • the in-vehicle device 111 when the in-vehicle device 111 receives the first difference data from the gateway 101, the in-vehicle device 111 starts buffering of the difference data. More specifically, the in-vehicle device 111 buffers the received first difference data in the volatile memory (step S114).
  • the gateway 101 divides, for example, an intermediate portion of the difference data (hereinafter also referred to as intermediate difference data) and transmits the divided data to the in-vehicle device 111.
  • the in-vehicle device 111 buffers the intermediate difference data transmitted by the gateway 101 in the volatile memory (step S116).
  • the gateway 101 transmits the last part of the difference data (hereinafter also referred to as the last difference data) to the in-vehicle device 111 (step S118).
  • the in-vehicle device 111 buffers the received last difference data in the volatile memory, and ends the buffering of the difference data (step S122).
  • the gateway 101 acquires the current firmware from the non-volatile memory 25, adds difference data to the acquired current firmware, thereby creating new firmware and storing it in the volatile memory 24 (step S120).
  • the in-vehicle device 111 uses the buffered difference data to rewrite the firmware stored in the non-volatile memory with new firmware (step S124).
  • step S126 the in-vehicle device 111 is restarted with the new firmware
  • step S1228 when the in-vehicle device 111 is successfully restarted, the in-vehicle device 111 transitions to the normal operation mode (step S128).
  • the in-vehicle device 111 transmits an update completion notification indicating that the firmware has been successfully updated to the gateway 101 (step S130).
  • the gateway 101 deletes the current firmware from the nonvolatile memory 25 and stores the created new firmware in the nonvolatile memory 25 (step S132).
  • the gateway 101 deletes the new firmware stored in the volatile memory 24 (step S134).
  • the gateway 101 transmits an update completion notification to the external device 181 via the out-of-vehicle communication device 111T and the radio base station device 161 (step S136).
  • the external device 181 when the external device 181 receives the update completion notification from the gateway 101, it updates the version information based on the received update completion notification (step S138).
  • the in-vehicle device 111 has been successfully restarted in step S126, but may fail to restart.
  • the gateway 101 restarts the in-vehicle device 111 using the current firmware, for example.
  • the current firmware is stored in the nonvolatile memory 25 until the gateway 101 receives the update completion notification from the in-vehicle device 111.
  • FIG. 3 is a diagram showing a configuration of the in-vehicle communication system according to the embodiment of the present invention.
  • the in-vehicle communication system 301 includes a gateway 101 and switch devices 151B and 151C.
  • the in-vehicle communication system 301 is mounted on the vehicle 1.
  • the vehicle 1 is provided with a plurality of in-vehicle devices 111.
  • the switch devices 151B and 151C are connected in series, for example. In other words, the switch devices 151B and 151C are cascade-connected. Hereinafter, each of the switch devices 151B and 151C is also referred to as a switch device 151.
  • a plurality of in-vehicle devices 111 ⁇ / b> A that are in-vehicle devices 111 are connected to the gateway 101 via either the Ethernet cable 10 or the CAN bus 11, and the switch device 151 ⁇ / b> B is connected via the Ethernet cable 10.
  • a plurality of in-vehicle devices 111C which are in-vehicle devices 111, are connected to the switch device 151C via the Ethernet cable 10.
  • the switch devices 151B and 151C communicate with devices connected via the Ethernet cable 10 in accordance with the Ethernet communication standard.
  • connecting to the “subordinate” of the gateway 101 is defined as being connected so that update data from the external device 181 can be received via the gateway 101.
  • the “upstream device” of “a certain device” in the vehicle 1 is defined as a device closer to the external device 181 than “a certain device” in the data transmission path between the “some device” and the external device 181.
  • the “downstream device” of “a certain device” in the vehicle 1 is defined as a relay destination device by “a certain device” of data from the external device 181.
  • each of the gateway 101, the switch device 151B, and the switch device 151C is configured to be connected to a plurality of in-vehicle devices 111, but is not limited thereto.
  • Each of the gateway 101, the switch device 151B, and the switch device 151C may have a configuration in which one in-vehicle device 111 is connected.
  • the gateway 101 manages each in-vehicle device 111 connected to itself without going through the switch device 151 and each in-vehicle device 111 connected to the subordinate switch device 151, the gateway 101 It is required to retain the firmware used in the in-vehicle device 111 even after the update is completed.
  • the gateway 101 may lack a storage area for storing firmware.
  • FIG. 4 is a diagram showing a configuration of the gateway in the in-vehicle communication system according to the embodiment of the present invention.
  • the gateway 101 includes a relay unit 21, a management unit 23, a volatile memory (storage unit) 24, and a nonvolatile memory (storage unit) 25.
  • the relay unit 21 includes a buffer (storage unit) 22.
  • Buffer 22 volatile memory 24 and non-volatile memory 25 hold differential data received by relay unit 21.
  • the buffer 22 in the relay unit 21 is used for temporarily storing data to be relayed in the relay unit 21.
  • the volatile memory 24 is used as a temporary storage area for differential data and a work area for creating firmware by the management unit 23.
  • the non-volatile memory 25 stores the current firmware of the in-vehicle device 111 managed by its own gateway 101.
  • the relay unit 21 can perform a relay process involving conversion of a communication protocol. In addition, the relay unit 21 transmits to the switch device 151 relay target data that is update data for the in-vehicle device 111 connected to the switch device 151 on the downstream side of the gateway 101.
  • the relay unit 21 receives the difference data for the in-vehicle devices 111A to 111C from the external device 181 via the radio base station device 161, and stores the received difference data in the buffer 22. Then, the relay unit 21 outputs the difference data stored in the buffer 22 to the management unit 23.
  • the relay unit 21 when the relay unit 21 receives data different from the above-described difference data from another device, the relay unit 21 stores the received data in the buffer 22. Then, the relay unit 21 transmits the data stored in the buffer 22 to the destination device of the data.
  • the management unit 23 manages data update of the target device mounted on the vehicle 1. Specifically, the management unit 23 manages the firmware of the in-vehicle device 111A.
  • the management unit 23 buffers the received difference data in the volatile memory 24.
  • the management unit 23 transmits the relay target data to the subordinate switch device 151 via the relay unit 21.
  • the management unit 23 holds the relay target data in the volatile memory 24 until an update completion notification is received from the subordinate switch device 151 via the relay unit 21.
  • the management unit 23 deletes the relay target data from the volatile memory 24 at least after the update is completed. Specifically, when receiving an update completion notification via the relay unit 21, the management unit 23 deletes the relay target data from the volatile memory 24.
  • the management unit 23 causes the nonvolatile memory 25 to retain the update data for the in-vehicle device 111A connected to its own gateway 101 without using the switch device 151 even after the update is completed.
  • the management unit 23 performs the following processing.
  • the management unit 23 updates the firmware of the in-vehicle device 111A, for example, by transmitting the personal difference data to the in-vehicle device 111A via the relay unit 21.
  • the management unit 23 creates new firmware from firmware before update stored in the nonvolatile memory 25, that is, current firmware, and private difference data, and stores the new firmware in the volatile memory 24.
  • the management unit 23 moves the new firmware in the volatile memory 24 to the nonvolatile memory 25 and erases the current firmware in the nonvolatile memory 25.
  • the management unit 23 instructs the switch device 151 that manages data update to update the data of the in-vehicle device 111, for example. Specifically, the management unit 23 transmits a repro request request for instructing data update of the in-vehicle device 111 to the switch device 151 via the relay unit 21.
  • FIG. 5 is a diagram showing a configuration of the switch device in the in-vehicle communication system according to the embodiment of the present invention.
  • the switch device 151 includes a switch unit 51, a management unit 53, a volatile memory (storage unit) 54, and a nonvolatile memory (storage unit) 55.
  • the switch unit 51 includes a buffer (storage unit) 52.
  • the buffer 52, the volatile memory 54, and the non-volatile memory 55 hold the difference data received by the switch unit 51.
  • the buffer 52 in the switch unit 51 is used for temporarily storing data to be relayed in the switch unit 51.
  • the volatile memory 54 is used as a temporary storage area for differential data and a work area for creating firmware by the management unit 53.
  • the nonvolatile memory 55 stores the current firmware of the in-vehicle device 111 managed by its own switch device 151.
  • the switch unit 51 performs relay processing without protocol conversion. Specifically, for example, when the switch unit 51 receives data from another device according to the Ethernet communication standard, the switch unit 51 stores the received data in the buffer 52.
  • the switch unit 51 transmits the data stored in the buffer 52 to the destination device of the data according to the Ethernet communication standard.
  • the switch unit 51 receives differential data from, for example, the gateway 101 or another upstream switch device 151 provided between the gateway 101 and its own switch device 151, and receives the received differential data. Is stored in the buffer 52.
  • the switch unit 51 sets the relay target data to the downstream side.
  • the data to be transmitted to the other switch device 151 and the relay target data are deleted from the buffer 52 at least after the update is completed.
  • the switch unit 51 deletes the relay target data from the buffer 52 as soon as the relay target data is transmitted to the other switch device 151 on the downstream side.
  • the difference data stored in the buffer 52 is the difference data of the in-vehicle device 111 connected to its own switch device 151 without passing through the other switch device 151, that is, the difference data for home use.
  • the difference data is acquired from the buffer 52 and output to the management unit 53.
  • the management unit 53 manages data update of the target device mounted on the vehicle 1. Specifically, the management unit 53 manages the firmware of the in-vehicle device 111 connected to its own switch device 151 without passing through another switch device 151.
  • the management unit 53 causes the nonvolatile memory 55 to hold the firmware created from the personal difference data even after the update is completed.
  • the management unit 53 when the management unit 53 receives a repro request request from the gateway 101 via the switch unit 51, the management unit 53 starts a reprogramming process (hereinafter also referred to as a repro process) of the in-vehicle device 111.
  • a repro process a reprogramming process
  • the management unit 53 When the management unit 53 receives the personal difference data from the switch unit 51 in the repro process, the management unit 53 stores the received personal difference data in the volatile memory 54.
  • the management unit 53 updates the firmware of the in-vehicle device 111 by transmitting the personal difference data to the in-vehicle device 111 connected to the own switch device 151 via the switch unit 51, for example.
  • the management unit 53 creates new firmware from the firmware before update stored in the nonvolatile memory 55, that is, the current firmware, and the personal difference data, and stores the new firmware in the volatile memory 54.
  • the management unit 53 performs processing Pa for erasing the firmware before update from the nonvolatile memory 55 and holding the firmware after update in the nonvolatile memory 55.
  • the management unit 53 moves the new firmware in the volatile memory 54 to the nonvolatile memory 55 and erases the current firmware in the nonvolatile memory 55.
  • the management unit 53 uses the current firmware stored in the nonvolatile memory 55 of the in-vehicle device 111. Perform the restart process.
  • FIG. 7 is a continuation of the sequence of FIG.
  • the external device 181 sends the difference data between the new firmware and the current firmware as update data to the gateway 101 via the radio base station device 161 and the external communication device 111T. Transmit (step S202).
  • the gateway 101 buffers the received difference data in the volatile memory 54 (step S ⁇ b> 204).
  • the gateway 101 transmits a repro request request addressed to the switch device 151C for instructing the data update of the in-vehicle device 111C to the switch device 151B (step S206).
  • the switch device 151B when receiving the repro request request from the gateway 101, the switch device 151B relays the received repro request request and transmits it to the switch device 151C (step S208).
  • the switch device 151C upon receiving the repro request request from the switch device 151B, the switch device 151C starts the repro process according to the received repro request request (step S210).
  • the gateway 101 transmits the first difference data addressed to the switch device 151C to the switch device 151B (step S212).
  • the switch device 151B when receiving the first difference data from the gateway 101, the switch device 151B relays the received first difference data and transmits it to the switch device 151C (step S214).
  • the switch device 151C when the switch device 151C receives the first difference data from the switch device 151B, the switch device 151C starts buffering of the difference data. More specifically, the switch device 151C buffers the received first difference data in the volatile memory 54 (step S216).
  • the gateway 101 divides the intermediate difference data, for example, and transmits it to the switch device 151C via the switch device 151B.
  • the switching device 151C buffers the intermediate difference data transmitted by the gateway 101 in the volatile memory 54 (step S218).
  • the gateway 101 transmits the last difference data addressed to the switch device 151C to the switch device 151B (step S220).
  • the switch device 151B when the switch device 151B receives the last difference data from the gateway 101, the switch device 151B relays the received difference data and transmits it to the switch device 151C (step S222).
  • the switching device 151C buffers the received last difference data in the volatile memory 54, and ends the buffering of the difference data (step S224).
  • the switch device 151C transmits a repro start notification to the in-vehicle device 111C (step S226).
  • the in-vehicle device 111C receives the repro start notification from the switch device 151C, the in-vehicle device 111C transitions to the repro mode (step S228).
  • the in-vehicle device 111C transmits a transition response to the switch device 151C (step S230).
  • the switching device 151C when receiving the transition response from the in-vehicle device 111C, the switching device 151C recognizes that the firmware can be updated in the in-vehicle device 111C, and transmits the first difference data to the in-vehicle device 111C (step S232). .
  • the in-vehicle device 111C receives the first difference data from the switch device 151C, it starts buffering of the difference data. More specifically, the in-vehicle device 111C buffers the received first difference data in the volatile memory (step S234).
  • the switch device 151C divides the intermediate difference data, for example, and transmits it to the in-vehicle device 111C.
  • the in-vehicle device 111C buffers the intermediate difference data transmitted by the switch device 151C in the volatile memory (step S236).
  • the switch device 151C transmits the last difference data to the in-vehicle device 111C (step S238).
  • the in-vehicle device 111C buffers the received last difference data in the volatile memory, and ends the buffering of the difference data (step S242).
  • the switch device 151C acquires the current firmware from the nonvolatile memory 55, adds difference data to the acquired current firmware, thereby creating new firmware and storing it in the volatile memory 54 (step S240).
  • the in-vehicle device 111C rewrites the firmware stored in the nonvolatile memory with the new firmware using the buffered difference data (step S244).
  • step S246 the in-vehicle device 111C restarts with the new firmware.
  • step S248 when the in-vehicle device 111C is successfully restarted, the in-vehicle device 111C transitions to the normal operation mode (step S248).
  • the in-vehicle device 111C transmits an update completion notification to the switch device 151C (step S250).
  • the switch device 151C recognizes that the firmware update has been successfully completed in the in-vehicle device 111C, and ends the repro process (step S252).
  • the switch device 151C transmits an update completion notification addressed to the gateway 101 to the switch device 151B (step S254).
  • the management unit 53 in the switch device 151C deletes the current firmware from the nonvolatile memory 55 and also saves the new firmware stored in the volatile memory 54 in the nonvolatile memory 55 (step S256).
  • the management unit 53 in the switch device 151C erases the new firmware stored in the volatile memory 54 (step S258).
  • the switch device 151B when receiving the update completion notification from the switch device 151C, the switch device 151B relays the received update completion notification and transmits it to the gateway 101 (step S260).
  • step S262 when the management unit 23 in the gateway 101 receives the update completion notification from the switch device 151B via the relay unit 21, it deletes the difference data from the volatile memory 24 (step S262).
  • the gateway 101 transmits an update completion notification to the external device 181 via the external communication device 111T and the wireless base station device 161 (step S264).
  • the external device 181 when the external device 181 receives the update completion notification from the gateway 101, it updates the version information based on the received update completion notification (step S266).
  • step S246 the in-vehicle device 111C has been successfully restarted in step S246, but may fail to restart.
  • the switch device 151C restarts the in-vehicle device 111C using the current firmware, for example. For this reason, the current firmware is stored in the nonvolatile memory 25 until the switch device 151C receives the update completion notification from the in-vehicle device 111C.
  • the switch device 151C is configured to delete the current firmware and store the new firmware in the above steps S256 and S258, the present invention is not limited to this.
  • the switch device 151C may be configured to delete the current firmware and save the new firmware before confirming reception of the update completion notification transmitted from the in-vehicle device 111C (step S252).
  • the switching device 151C is configured to erase the current firmware from the nonvolatile memory 55 in step S256, the present invention is not limited to this.
  • the switch device 151C may be configured not to erase the current firmware. More specifically, for example, the switch device 151C may be configured to store the latest predetermined number of firmware, and delete the oldest firmware when the number of firmware to be stored exceeds the predetermined number. .
  • the management unit 53 in the switch device 151C performs processing Pa when the predetermined condition C1 is satisfied after the data update is completed.
  • the predetermined condition C1 is, for example, that the communication rate in the switch device 151C is less than a predetermined value.
  • the management unit 53 creates a new firmware, stores the new firmware in the nonvolatile memory 55, and deletes the new firmware from the volatile memory 54 in steps S240, S256, and S258, respectively. Not limited to this, these processes may be performed when the predetermined condition C1 is satisfied.
  • the management unit 53 performs these processes, for example, when the communication rate in its switch device 151C is less than a predetermined value. More specifically, for example, when the vehicle 1 is stopped, the frequency of data transfer for automatic driving is reduced, so that the communication rate in the switch device 151C is less than a predetermined value and the predetermined condition C1 is satisfied.
  • the switch device 151 is configured to manage data update of the in-vehicle device 111 connected to itself without going through the other switch device 151.
  • the gateway 101 may be configured to manage data update of the in-vehicle device 111 connected to the subordinate switch device 151, for example.
  • the management unit 23 in the gateway 101 transmits the difference data via the relay unit 21 with the corresponding in-vehicle device 111 as a destination.
  • the subordinate switch device 151 monitors, for example, data transmitted / received between the gateway 101 and the target device via the self, and the target connected to the self from the gateway 101 via the self. Holds update data to be sent to the device.
  • the subordinate switch device 151 when the subordinate switch device 151 detects an update completion notification transmitted from the target device connected to the gateway device 101 to the gateway 101, the subordinate switch device 151 discards the update data before the update, and updates the update data after the update. Processing Pa to be held is performed.
  • the management unit 53 in the subordinate switch device 151 monitors the buffer 52 in the switch unit 51, for example.
  • the management unit 53 detects the difference data transmitted from the gateway 101 to the in-vehicle device 111 connected to the switch device 151, that is, the difference data for personal use
  • the management unit 53 acquires the detected personal difference data, and the acquired personal difference data is obtained. It is held in the volatile memory 54.
  • the management unit 53 creates new firmware from the firmware before update stored in the non-volatile memory 55, that is, the current firmware, and the personal difference data, and stores the new firmware in the volatile memory 54, for example.
  • the management unit 53 monitors the buffer 52 in the switch unit 51 and detects an update completion notification transmitted from the in-vehicle device 111 connected to the switch device 151 to the gateway 101, the management unit 53 in the volatile memory 54 The new firmware is moved to the nonvolatile memory 55 and the current firmware in the nonvolatile memory 55 is erased.
  • FIG. 8 and 9 are diagrams showing an example of a sequence when firmware in an in-vehicle device is updated using the hook method in the in-vehicle communication system according to the embodiment of the present invention.
  • FIG. 9 is a continuation of the sequence of FIG.
  • the external device 181 sends the difference data between the new firmware and the current firmware as update data to the gateway 101 via the radio base station device 161 and the external communication device 111T. Transmit (step S302).
  • the gateway 101 buffers the received difference data in the volatile memory 54 (step S 304).
  • the gateway 101 transmits a repro start notification addressed to the in-vehicle device 111C to the switch device 151B (step S306).
  • the switch device 151B when receiving the repro start notification from the gateway 101, the switch device 151B relays the received repro start notification and transmits it to the switch device 151C (step S308).
  • the switch device 151C when receiving the repro start notification from the switch device 151B, the switch device 151C relays the received repro start notification and transmits it to the in-vehicle device 111C (step S310).
  • the management unit 53 in the switch device 151C monitors the buffer 52 in the switch unit 51, and starts hook processing when detecting that the switch unit 51 has relayed a repro start notification addressed to the in-vehicle device 111C (step S312). ).
  • the in-vehicle device 111C receives the repro start notification from the switch device 151C, the in-vehicle device 111C transitions to the repro mode (step S314).
  • the in-vehicle device 111C transmits a transition response addressed to the gateway 101 indicating the transition to the repro mode to the switch device 151C (step S316).
  • the switch device 151C when receiving the transition response from the in-vehicle device 111C, the switch device 151C relays the received transition response and transmits the relay response to the switch device 151B (step S318).
  • the switch device 151B when receiving the transition response from the switch device 151C, the switch device 151B relays the received transition response and transmits the relay response to the gateway 101 (step S320).
  • Step S322 when the gateway 101 receives the transition response from the switch device 151B, the gateway 101 recognizes that the firmware can be updated in the in-vehicle device 111C, and transmits the first difference data addressed to the in-vehicle device 111C to the switch device 151B.
  • the switch device 151B when receiving the first difference data from the gateway 101, the switch device 151B relays the received first difference data and transmits it to the switch device 151C (step S324).
  • the switch device 151C when the switch device 151C receives the first difference data from the switch device 151B, the switch device 151C relays the received first difference data and transmits it to the in-vehicle device 111C (step S326).
  • the management unit 53 in the switch device 151C monitors the buffer 52 in the switch unit 51, and starts buffering differential data when it detects that the switch unit 51 relays the first differential data. More specifically, the management unit 53 acquires the detected first difference data and buffers it in the volatile memory 54 (step S328).
  • the in-vehicle device 111C when the in-vehicle device 111C receives the first difference data from the switch device 151C, the in-vehicle device 111C starts buffering of the difference data. More specifically, the in-vehicle device 111C buffers the received first difference data in the volatile memory (step S330).
  • the gateway 101 divides the intermediate difference data, for example, and transmits it to the in-vehicle device 111C via the switch device 151B and the switch device 151C.
  • the switch device 151C and the in-vehicle device 111C buffer the intermediate difference data transmitted by the gateway 101 (step S332).
  • the gateway 101 transmits the last difference data addressed to the in-vehicle device 111C to the switch device 151B (step S334).
  • the switch device 151B receives the last difference data from the gateway 101, it relays the received difference data and transmits it to the switch device 151C (step S336).
  • the switch device 151C when the switch device 151C receives the last difference data from the switch device 151B, the switch device 151C relays the received difference data and transmits it to the in-vehicle device 111C (step S338).
  • the management unit 53 in the switch device 151C monitors the buffer 52 in the switch unit 51.
  • the management unit 53 obtains the detected last difference data and obtains the volatility. Buffering is performed in the memory 54, and the buffering of the difference data is finished (step S340).
  • the in-vehicle device 111C receives the last difference data from the switch device 151C, the in-vehicle device 111C buffers the received last difference data in the volatile memory, and ends the buffering of the difference data (step S342).
  • the switch device 151C acquires the current firmware from the nonvolatile memory 55, adds the difference data to the acquired current firmware, thereby creating new firmware and storing it in the volatile memory 54 (step S344).
  • the in-vehicle device 111C rewrites the firmware stored in the nonvolatile memory with new firmware using the buffered difference data (step S346).
  • step S348 the in-vehicle device 111C restarts with the new firmware.
  • step S350 when the in-vehicle device 111C is successfully restarted, the in-vehicle device 111C transitions to the normal operation mode (step S350).
  • the in-vehicle device 111C transmits an update completion notification addressed to the gateway 101 to the switch device 151C (step S352).
  • the switch device 151C when receiving the update completion notification from the in-vehicle device 111C, the switch device 151C relays the received update completion notification and transmits it to the switch device 151B (step S354).
  • step S356 when the management unit 53 in the switch device 151C monitors the buffer 52 in the switch unit 51 and detects that the switch unit 51 relays the update completion notification, the management unit 53C confirms that the firmware update has been successfully completed in the in-vehicle device 111C.
  • the hook processing is terminated (step S356).
  • the management unit 53 in the switch device 151C erases the current firmware from the nonvolatile memory 55 and also saves the new firmware stored in the volatile memory 54 in the nonvolatile memory 55 (step S358).
  • the management unit 53 in the switch device 151C erases the new firmware stored in the volatile memory 54 (step S360).
  • the switch device 151B when receiving the update completion notification from the switch device 151C, the switch device 151B relays the received update completion notification and transmits it to the gateway 101 (step S362).
  • step S364 when the management unit 23 in the gateway 101 receives the update completion notification from the switch device 151B via the relay unit 21, it deletes the difference data from the volatile memory 24 (step S364).
  • the gateway 101 transmits an update completion notification to the external device 181 via the external communication device 111T and the radio base station device 161 (step S366).
  • the external device 181 updates the version information based on the received update completion notification (step S368).
  • switch device 151C is configured to delete the current firmware and store the new firmware in steps S358 and S360, but the present invention is not limited to this.
  • the switch device 151C may be configured to delete the current firmware and store the new firmware before detecting the update completion notification transmitted from the in-vehicle device 111C (step S356).
  • the switch device 151C is configured to delete the current firmware from the nonvolatile memory 55 in the above step S358, the present invention is not limited to this.
  • the switch device 151C may be configured not to erase the current firmware. More specifically, for example, the switch device 151C may be configured to store the latest predetermined number of firmware, and delete the oldest firmware when the number of firmware to be stored exceeds the predetermined number. .
  • the management unit 53 creates a new firmware, stores the new firmware in the nonvolatile memory 55, and deletes the new firmware from the volatile memory 54 in steps S344, S358, and S360, respectively. Not limited to this, these processes may be performed when the predetermined condition C1 as described above is satisfied.
  • the in-vehicle communication system 301 may be configured to include one switch device 151 or may be configured to include three or more switch devices 151.
  • the external device 181 is configured to transmit the difference data to the gateway 101, but is not limited thereto.
  • the external device 181 may be configured to transmit the entire new firmware to the gateway 101 instead of the difference data.
  • the firmware of the in-vehicle device 111 is updated according to either the proxy method or the hook method.
  • the present invention is not limited to this.
  • the in-vehicle communication system 301 may be configured such that the firmware of the in-vehicle device 111 is updated according to a method different from the proxy method and the hook method.
  • the gateway 101 is configured to delete the difference data after receiving the update completion notification.
  • the gateway 101 may be configured to delete the difference data after transmitting all of the difference data and before receiving the update completion notification.
  • the switch devices 151B and 151C are connected in series.
  • the in-vehicle communication system 301 may have a configuration in which a plurality of switch devices 151 are connected in parallel.
  • the in-vehicle relay device described in Patent Document 1 stores a program or the like stored in the in-vehicle electronic control device in the flash ROM.
  • a switch device may be provided under the in-vehicle relay device.
  • the amount of use of the flash ROM increases, and the free space may become insufficient.
  • the in-vehicle communication system is an in-vehicle communication system mounted on the vehicle 1, and includes a gateway 101 capable of performing relay processing with conversion of a communication protocol, and communication. And one or a plurality of switch devices 151 that perform relay processing without protocol conversion.
  • the gateway 101 or the switch device 151 manages data update of the target device mounted on the vehicle 1.
  • the gateway 101 receives update data for the target device from the external device 181 outside the vehicle 1.
  • the gateway 101 transmits update data for the target device connected to the subordinate switch device 151 to the switch device 151, and does not hold the update data at least after completion of the update, and does not pass through the switch device 151.
  • the update data for the target device connected to itself is retained after the update is completed.
  • the gateway 101 transmits the update data for the target device connected to the subordinate switch device 151 to the switch device 151, for example, by causing the switch device 151 to hold the update data
  • the switch device 151 can be made to manage data update in the target device. Further, at least after completion of the update, consumption of storage areas in the gateway 101 can be suppressed by a configuration in which the gateway 101 does not hold update data for the target device.
  • the configuration in which the gateway 101 holds the update data for the target device connected to itself without going through the switch device 151 even after the update is completed can easily manage the data update of the target device. . Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • the in-vehicle communication system includes a plurality of switch devices 151 connected in series.
  • the switch device 151 receives the update data from the gateway 101 on the upstream side or another switch device 151.
  • the switch device 151 transmits the update data for the target device connected to the other downstream switch device 151 to the other switch device 151, and does not hold the update data at least after the update is completed.
  • the update data for the target device connected to itself without passing through the other switch device 151 is retained even after the update is completed.
  • the switch device 151 updates the update data for the target device that is update data from the upstream gateway 101 or other switch device 151 and is connected to itself without going through the other switch device 151. Since the update data is held in its own switch device 151 by the configuration that holds it after completion, the gateway 101 can delete the update data. Further, the switch device 151 transmits the update data for the target device connected to the other downstream switch device 151 to the other switch device 151, for example, the update to the other switch device 151. By holding the data, it is possible to cause the other switch device 151 to manage data update in the target device. Further, at least after completion of the update, the switch device 151 can suppress consumption of the storage area by a configuration in which the switch device 151 does not hold the update data for the target device.
  • the switch device 151 manages data update of the target device connected to itself without going through the other switch device 151. Then, the gateway 101 instructs the switch device 151 that manages data update to update the data of the target device.
  • the management processing of the target device can be distributed to the switch device 151 in the in-vehicle communication system 301, so that the processing load on the gateway 101 can be reduced.
  • the switch device 151 when the data update is completed, the switch device 151 performs the processing Pa for discarding the update data before the update and holding the update data after the update.
  • the target device is restarted using the update data before the update.
  • the configuration in which the updated data after the update is held can prepare for a failure in updating the target device when a new update is performed.
  • the gateway 101 manages the data update of the target device connected to the subordinate switch device 151.
  • the management processing of the target device can be concentrated on the gateway 101, so that the maintenance of the in-vehicle communication system 301 can be simplified.
  • the switch device 151 monitors data transmitted / received between the gateway 101 and the target device via itself. Then, the switch device 151 holds update data transmitted from the gateway 101 to the target device via itself.
  • the process of downloading the update data by the switch device 151 and the process of downloading the update data by the target device can be performed in parallel, so that the switch device 151 and the target device sequentially receive the update data.
  • the time required for the download process can be shortened.
  • the switch device 151 when the switch device 151 detects an update completion notification transmitted from the target device to the gateway 101, the switch device 151 discards the update data before the update and A process Pa for holding update data is performed.
  • the configuration in which the update data before update is not discarded until the update completion notification transmitted when the update of the target device is completed is detected. For example, when the update of the target device fails, the update before the update is performed. The target device can be restarted using the data. In addition, the configuration in which the updated data after the update is held can prepare for a failure in updating the target device when a new update is performed.
  • the switch device 151 performs the processing Pa when the predetermined condition C1 is satisfied after the data update is completed.
  • the processing Pa can be postponed until the communication rate becomes low. Can be prevented from being applied.
  • the gateway according to the embodiment of the present invention is mounted on the vehicle 1.
  • the relay unit 21 can perform relay processing that involves conversion of a communication protocol.
  • the management unit 23 manages data update of the target device mounted on the vehicle 1.
  • the relay unit 21 receives update data for the target device from the external device 181 outside the vehicle 1.
  • the volatile memory 24 holds update data received by the relay unit 21.
  • the relay unit 21 transmits to the switch device 151 relay target data that is update data for the target device connected to the subordinate switch device 151 that performs relay processing without conversion of the communication protocol.
  • the management unit 23 deletes the relay target data from the volatile memory 24 at least after the update is completed, and after the update of the update data for the target device connected to the own gateway 101 is completed without passing through the switch device 151.
  • the switch device 151 holds the relay target data, thereby managing the data update in the target device. Can be done. Further, at least after completion of the update, it is possible to suppress consumption of the storage area in the gateway 101 by deleting the relay target data from the volatile memory 24.
  • the configuration in which the gateway 101 holds the update data for the target device connected to itself without going through the switch device 151 even after the update is completed can easily manage the data update of the target device. . Therefore, it is possible to prevent the storage area of the gateway from becoming insufficient while managing the data update of the target device in the in-vehicle communication system.
  • the switch device is mounted on the vehicle 1.
  • the switch unit 51 performs relay processing that does not involve communication protocol conversion.
  • the management unit 53 manages data update of the target device mounted on the vehicle 1.
  • Connected to the switch device 151 is a gateway 101 capable of performing relay processing with conversion of a communication protocol.
  • the switch unit 51 receives update data for the target device from the gateway 101 or another upstream switch device 151 provided between the switch unit 51 and the gateway 101.
  • the buffer 52, the volatile memory 54, and the non-volatile memory 55 hold the update data received by the switch unit 51.
  • the switch unit 51 transmits the relay target data, which is update data for the target device connected to the other downstream switch device 151, to the other downstream switch device 151, and relays at least after the update is completed.
  • the target data is deleted from the buffer 52.
  • the management unit 53 holds the update data for the target device connected to its own switch device 151 without passing through the other switch device 151 in the nonvolatile memory 55 even after the update is completed.
  • the switch device 151 completes updating the update data for the target device that is the update data from the other switch device 151 on the gateway or upstream side and is connected to itself without going through the other switch device 151 Since the switch device can easily manage data update in the target device, the update data is stored in the switch device, so that the gateway can erase the update data. it can. In addition, with the configuration in which the switch device transmits the relay target data to the other downstream switch device 151, for example, the data update in the target device is performed by holding the relay target data in the other downstream switch device 151. Can be managed by the other switch device 151 on the downstream side.
  • a gateway capable of relay processing with communication protocol conversion; Including one or a plurality of switch devices that perform relay processing without conversion of a communication protocol,
  • the gateway or the switch device manages data update of a target device mounted on the vehicle,
  • the gateway receives update data for the target device from an external device outside the vehicle, transmits the update data for the target device connected to the subordinate switch device to the switch device, and At least after the update is completed, the update data is not retained, and the update data for the target device connected to itself without the switch device is retained even after the completion of the update,
  • the gateway can perform a relay process between a communication protocol conforming to a CAN (Controller Area Network) communication standard and a communication protocol conforming to an Ethernet communication standard.
  • CAN Controller Area Network
  • the switch device performs a relay process between communication protocols according to the Ethernet communication standard
  • the external device is a FOTA (Firmware On-The-Air) server
  • the update data includes the latest firmware for the target device or difference data between the firmware currently used by the target device and the latest firmware.
  • a gateway mounted on a vehicle A relay unit capable of performing relay processing with conversion of a communication protocol; A management unit for managing data update of target devices mounted on the vehicle; A storage unit, The relay unit receives update data for the target device from an external device outside the vehicle, The storage unit holds the update data received by the relay unit, The relay unit transmits to the switch device relay target data that is the update data for the target device connected to the subordinate switch device that performs relay processing without conversion of a communication protocol, The management unit deletes the relay target data from the storage unit at least after completion of the update, and after the update of the update data for the target device connected to the gateway is not performed via the switch device.
  • the relay unit can perform a relay process between a communication protocol according to a CAN communication standard and a communication protocol according to an Ethernet communication standard
  • the switch device performs a relay process between communication protocols according to the Ethernet communication standard
  • the external device is a FOTA server, and transmits the latest firmware for the target device or difference data between the firmware currently used by the target device and the latest firmware to the gateway as the update data.
  • a switch device mounted on a vehicle A switch unit that performs relay processing without conversion of a communication protocol; A management unit for managing data update of target devices mounted on the vehicle;
  • a storage unit, Connected to the switch device is a gateway capable of performing relay processing with conversion of a communication protocol, The switch unit receives update data for the target device from the gateway or another upstream switch device provided between the gateway and the gateway, The storage unit holds the update data received by the switch unit;
  • the switch unit transmits relay target data, which is the update data for the target device connected to the other switch device on the downstream side, to the other switch device on the downstream side, and at least after completion of the update Erasing the relay target data from the storage unit,
  • the management unit causes the storage unit to hold the update data for the target device connected to the switch device of its own without going through another switch device in the storage unit,
  • the gateway can perform a relay process between a communication protocol according to a CAN communication standard and a communication protocol according to an Ethernet communication standard.
  • the switch unit is a switch device
  • Vehicle 10 Ethernet Cable 11 CAN Bus 21 Relay Unit 22 Buffer (Storage Unit) 23 management unit 24 volatile memory (storage unit) 25 Nonvolatile memory (storage unit) 51 Switch unit 52 Buffer (storage unit) 53 Management Unit 54 Volatile Memory (Storage Unit) 55 Nonvolatile memory (storage unit) DESCRIPTION OF SYMBOLS 101 Gateway 111 In-vehicle device 111T Outside-vehicle communication apparatus 151 Switch apparatus 161 Wireless base station apparatus 181 External apparatus 300,301 In-vehicle communication system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Mechanical Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

車載通信システムは、車両に搭載される車載通信システムであって、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイと、通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置とを備え、前記ゲートウェイまたは前記スイッチ装置は、前記車両に搭載された対象機器のデータ更新を管理し、前記ゲートウェイは、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記スイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する。

Description

車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム
 本発明は、車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラムに関する。
 この出願は、2017年1月27日に出願された日本出願特願2017-012816号を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
 特許文献1(特開2014-182571号公報)には、以下のような車載中継装置が開示されている。すなわち、マルチプロトコルに対応した車載中継装置は、マルチプロトコルで接続された車載電子制御装置のプログラムをオンボード状態で書換える場合に、新プログラムと旧プログラムとの差分データを検索し、新プログラムにおける差分データを車載電子制御装置に送信して記憶させる。
特開2014-182571号公報
 (1)本開示の車載通信システムは、車両に搭載される車載通信システムであって、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイと、通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置とを備え、前記ゲートウェイまたは前記スイッチ装置は、前記車両に搭載された対象機器のデータ更新を管理し、前記ゲートウェイは、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記スイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する。
 (9)本開示のゲートウェイは、車両に搭載されるゲートウェイであって、通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、前記車両に搭載された対象機器のデータ更新を管理する管理部と、記憶部とを備え、前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、前記記憶部は、前記中継部によって受信された前記更新データを保持し、前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 (10)本開示のスイッチ装置は、車両に搭載されるスイッチ装置であって、通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、前記車両に搭載された対象機器のデータ更新を管理する管理部と、記憶部とを備え、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 (11)本開示の通信制御方法は、車両に搭載され、通信プロトコルの変換を伴う中継処理を行うことが可能であり、記憶部を備えるゲートウェイにおける通信制御方法であって、前記車両に搭載された対象機器のデータ更新を管理するステップと、前記対象機器用の更新データを前記車両の外部における外部装置から受信するステップと、受信した前記更新データを前記記憶部に保持するステップと、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信するステップとを含み、前記データ更新を管理するステップにおいては、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 (12)本開示の通信制御方法は、車両に搭載され、通信プロトコルの変換を伴わない中継処理を行い、記憶部を備えるスイッチ装置における通信制御方法であって、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記車両に搭載された対象機器のデータ更新を管理するステップと、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信するステップと、受信した前記更新データを前記記憶部に保持するステップと、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去するステップとを含み、前記データ更新を管理するステップにおいては、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 (13)本開示の通信制御プログラムは、車両に搭載され、記憶部を備えるゲートウェイにおいて用いられる通信制御プログラムであって、コンピュータを、通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、前記車両に搭載された対象機器のデータ更新を管理する管理部、として機能させるためのプログラムであり、前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、前記記憶部は、前記中継部によって受信された前記更新データを保持し、前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させるプログラムである。
 (14)本開示の通信制御プログラムは、車両に搭載され、記憶部を備えるスイッチ装置において用いられる通信制御プログラムであって、コンピュータを、通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、前記車両に搭載された対象機器のデータ更新を管理する管理部、として機能させるためのプログラムであり、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させるプログラムである。
 本開示の一態様は、このような特徴的な処理部を備える車載通信システムとして実現され得るだけでなく、かかる特徴的な処理をステップとする方法として実現され得たり、かかるステップをコンピュータに実行させるためのプログラムとして実現され得る。また、本開示の一態様は、車載通信システムの一部または全部を実現する半導体集積回路として実現され得る。
 また、本開示の一態様は、このような特徴的な処理部を備えるゲートウェイとして実現され得るだけでなく、ゲートウェイの一部または全部を実現する半導体集積回路として実現され得る。
 また、本開示の一態様は、このような特徴的な処理部を備えるスイッチ装置として実現され得るだけでなく、スイッチ装置の一部または全部を実現する半導体集積回路として実現され得る。
図1は、本発明の実施の形態に係る車載通信システムの比較例の構成を示す図である。 図2は、本発明の実施の形態に係る車載通信システムの比較例において、車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。 図3は、本発明の実施の形態に係る車載通信システムの構成を示す図である。 図4は、本発明の実施の形態に係る車載通信システムにおけるゲートウェイの構成を示す図である。 図5は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。 図6は、本発明の実施の形態に係る車載通信システムにおいて、プロキシ方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。 図7は、本発明の実施の形態に係る車載通信システムにおいて、プロキシ方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。 図8は、本発明の実施の形態に係る車載通信システムにおいて、フック方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。 図9は、本発明の実施の形態に係る車載通信システムにおいて、フック方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。
 従来、車両における機器のファームウェアを遠隔の位置から自動的に更新するための技術が開発されている。
 [本開示が解決しようとする課題]
 特許文献1に記載の車載中継装置は、車載電子制御装置に記憶されているプログラム等をフラッシュROM(Read Only Memory)に記憶する。このような車載ネットワークにおいて、たとえば、車載中継装置の配下にスイッチ装置が設けられることがある。このような構成において、たとえば、多数の車載電子制御装置がスイッチ装置に接続されると、フラッシュROMの使用量が増大し、空き領域が不足することがある。
 本開示は、上述の課題を解決するためになされたもので、その目的は、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことが可能な車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラムを提供することである。
 [本開示の効果]
 本開示によれば、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 [本願発明の実施形態の説明]
 最初に、本発明の実施形態の内容を列記して説明する。
 (1)本発明の実施の形態に係る車載通信システムは、車両に搭載される車載通信システムであって、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイと、通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置とを備え、前記ゲートウェイまたは前記スイッチ装置は、前記車両に搭載された対象機器のデータ更新を管理し、前記ゲートウェイは、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記スイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する。
 このように、ゲートウェイが、配下のスイッチ装置に接続されている対象機器用の更新データをスイッチ装置へ送信する構成により、たとえば、当該スイッチ装置に当該更新データを保持させることで、当該対象機器におけるデータ更新の管理を当該スイッチ装置に行わせることができる。また、少なくとも更新完了後は、当該対象機器用の更新データをゲートウェイが保持しない構成により、ゲートウェイにおける記憶領域の消費を抑制することができる。また、ゲートウェイが、スイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (2)好ましくは、前記車載通信システムは、直列に接続された複数の前記スイッチ装置を備え、前記スイッチ装置は、前記更新データを上流側である前記ゲートウェイまたは他の前記スイッチ装置から受信し、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、他の前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する。
 このように、スイッチ装置が、上流側のゲートウェイまたは他のスイッチ装置からの更新データであって他のスイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、自己のスイッチ装置において当該更新データが保持されるので、ゲートウェイは当該更新データを消去することができる。また、スイッチ装置が、下流側の他のスイッチ装置に接続されている対象機器用の更新データを当該他のスイッチ装置へ送信する構成により、たとえば、当該他のスイッチ装置に当該更新データを保持させることで、当該対象機器におけるデータ更新の管理を当該他のスイッチ装置に行わせることができる。また、少なくとも更新完了後は、当該対象機器用の更新データをスイッチ装置が保持しない構成により、スイッチ装置における記憶領域の消費を抑制することができる。
 (3)好ましくは、前記スイッチ装置は、他の前記スイッチ装置を介さずに自己に接続されている前記対象機器のデータ更新を管理し、前記ゲートウェイは、前記データ更新を管理する前記スイッチ装置に前記対象機器のデータ更新を指示する。
 このような構成により、車載通信システムにおいて、対象機器の管理処理をスイッチ装置へ分散させることができるので、ゲートウェイにおける処理負荷を軽減することができる。
 (4)より好ましくは、前記スイッチ装置は、前記データ更新が完了した場合、更新前の前記更新データを廃棄し、かつ更新後の前記更新データを保持する処理を行う。
 このように、対象機器の更新が完了するまで更新前の更新データを廃棄しない構成により、たとえば、対象機器の更新が失敗した場合に、更新前の更新データを用いて当該対象機器を再起動させることができる。また、更新後の更新データを保持する構成により、新たな更新を行う場合において、対象機器の更新の失敗に備えることができる。
 (5)好ましくは、前記ゲートウェイは、配下の前記スイッチ装置に接続されている前記対象機器のデータ更新を管理する。
 このような構成により、車載通信システムにおいて、対象機器の管理処理をゲートウェイに集中させることができるので、車載通信システムのメンテナンスを簡素化することができる。
 (6)より好ましくは、前記スイッチ装置は、自己を介して前記ゲートウェイおよび前記対象機器間で送受信されるデータを監視し、自己を介して前記ゲートウェイから前記対象機器へ送信される前記更新データを保持する。
 このような構成により、スイッチ装置が更新データをダウンロードする処理と対象機器が当該更新データをダウンロードする処理とを並行して行うことができるので、スイッチ装置および対象機器が更新データを順番にダウンロードする構成と比べて、ダウンロード処理に要する時間を短縮することができる。
 (7)より好ましくは、前記スイッチ装置は、前記対象機器から前記ゲートウェイへ送信される更新完了通知を検出した場合、更新前の前記更新データを廃棄し、かつ更新後の前記更新データを保持する処理を行う。
 このように、対象機器の更新が完了した場合に送信される更新完了通知を検出するまで更新前の更新データを廃棄しない構成により、たとえば、対象機器の更新が失敗した場合に、更新前の更新データを用いて当該対象機器を再起動させることができる。また、更新後の更新データを保持する構成により、新たな更新を行う場合において、対象機器の更新の失敗に備えることができる。
 (8)より好ましくは、前記スイッチ装置は、前記データ更新が完了した後、所定条件を満たした場合に前記処理を行う。
 このような構成により、たとえば、データ更新が完了した直後のタイミングにおいてスイッチ装置の通信レートが大きい場合に、上記処理を通信レートが小さくなるまで延期することができるので、スイッチ装置に過度の負荷が加わることを防ぐことができる。
 (9)本発明の実施の形態に係るゲートウェイは、車両に搭載されるゲートウェイであって、通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、前記車両に搭載された対象機器のデータ更新を管理する管理部と、記憶部とを備え、前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、前記記憶部は、前記中継部によって受信された前記更新データを保持し、前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 このように、ゲートウェイが、中継対象データをスイッチ装置へ送信する構成により、たとえば、当該スイッチ装置に当該中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該スイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、ゲートウェイにおける記憶領域の消費を抑制することができる。また、ゲートウェイが、スイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (10)本発明の実施の形態に係るスイッチ装置は、車両に搭載されるスイッチ装置であって、通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、前記車両に搭載された対象機器のデータ更新を管理する管理部と、記憶部とを備え、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 このように、スイッチ装置が、ゲートウェイまたは上流側の他のスイッチ装置からの更新データであって他のスイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、スイッチ装置は当該対象機器におけるデータ更新の管理を容易に行うことができ、また、スイッチ装置において当該更新データが保持されるので、ゲートウェイは当該更新データを消去することができる。また、スイッチ装置が、中継対象データを下流側の他のスイッチ装置へ送信する構成により、たとえば、当該下流側の他のスイッチ装置に中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該下流側の他のスイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、スイッチ装置における記憶領域の消費を抑制することができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (11)本発明の実施の形態に係る通信制御方法は、車両に搭載され、通信プロトコルの変換を伴う中継処理を行うことが可能であり、記憶部を備えるゲートウェイにおける通信制御方法であって、前記車両に搭載された対象機器のデータ更新を管理するステップと、前記対象機器用の更新データを前記車両の外部における外部装置から受信するステップと、受信した前記更新データを前記記憶部に保持するステップと、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信するステップとを含み、前記データ更新を管理するステップにおいては、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 このように、ゲートウェイが、中継対象データをスイッチ装置へ送信する構成により、たとえば、当該スイッチ装置に当該中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該スイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、ゲートウェイにおける記憶領域の消費を抑制することができる。また、ゲートウェイが、スイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (12)本発明の実施の形態に係る通信制御方法は、車両に搭載され、通信プロトコルの変換を伴わない中継処理を行い、記憶部を備えるスイッチ装置における通信制御方法であって、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記車両に搭載された対象機器のデータ更新を管理するステップと、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信するステップと、受信した前記更新データを前記記憶部に保持するステップと、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去するステップとを含み、前記データ更新を管理するステップにおいては、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる。
 このように、スイッチ装置が、ゲートウェイまたは上流側の他のスイッチ装置からの更新データであって他のスイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、スイッチ装置は当該対象機器におけるデータ更新の管理を容易に行うことができ、また、スイッチ装置において当該更新データが保持されるので、ゲートウェイは当該更新データを消去することができる。また、スイッチ装置が、中継対象データを下流側の他のスイッチ装置へ送信する構成により、たとえば、当該下流側の他のスイッチ装置に中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該下流側の他のスイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、スイッチ装置における記憶領域の消費を抑制することができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (13)本発明の実施の形態に係る通信制御プログラムは、車両に搭載され、記憶部を備えるゲートウェイにおいて用いられる通信制御プログラムであって、コンピュータを、通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、前記車両に搭載された対象機器のデータ更新を管理する管理部、として機能させるためのプログラムであり、前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、前記記憶部は、前記中継部によって受信された前記更新データを保持し、前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させるプログラムである。
 このように、ゲートウェイが、中継対象データをスイッチ装置へ送信する構成により、たとえば、当該スイッチ装置に当該中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該スイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、ゲートウェイにおける記憶領域の消費を抑制することができる。また、ゲートウェイが、スイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 (14)本発明の実施の形態に係る通信制御プログラムは、車両に搭載され、記憶部を備えるスイッチ装置において用いられる通信制御プログラムであって、コンピュータを、通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、前記車両に搭載された対象機器のデータ更新を管理する管理部、として機能させるためのプログラムであり、前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させるプログラムである。
 このように、スイッチ装置が、ゲートウェイまたは上流側の他のスイッチ装置からの更新データであって他のスイッチ装置を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、スイッチ装置は当該対象機器におけるデータ更新の管理を容易に行うことができ、また、スイッチ装置において当該更新データが保持されるので、ゲートウェイは当該更新データを消去することができる。また、スイッチ装置が、中継対象データを下流側の他のスイッチ装置へ送信する構成により、たとえば、当該下流側の他のスイッチ装置に中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該下流側の他のスイッチ装置に行わせることができる。また、少なくとも更新完了後は、中継対象データを記憶部から消去する構成により、スイッチ装置における記憶領域の消費を抑制することができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。また、以下に記載する実施の形態の少なくとも一部を任意に組み合わせてもよい。
 [構成および基本動作]
 図1は、本発明の実施の形態に係る車載通信システムの比較例の構成を示す図である。
 図1を参照して、比較例である車載通信システム300は、ゲートウェイ101と、複数の車載デバイス111とを備える。車載通信システム300は、車両1に搭載される。ゲートウェイ101は、揮発性メモリ(記憶部)24と、不揮発性メモリ(記憶部)25とを備える。
 揮発性メモリ24は、たとえばDRAM(Dynamic RAM)である。不揮発性メモリ25は、たとえばフラッシュメモリである。
 ゲートウェイ101は、車両1に搭載された対象機器のデータ更新を管理する。具体的には、ゲートウェイ101は、対象機器の一例である各車載デバイス111において用いられるファームウェアの更新を管理する。
 より詳細には、ゲートウェイ101は、各車載デバイス111において用いられるファームウェアを更新完了後も保持し、保持するファームウェアを用いた車載デバイス111のリカバリ処理を必要に応じて行う。具体的には、ゲートウェイ101は、対象の車載デバイス111を再起動させる。
 外部装置181は、たとえばFOTA(Firmware On-The-Air)サーバであり、車両1の外部に設けられる。外部装置181は、車載デバイス111において用いられる各バージョンのファームウェアを保持する。
 車載デバイス111の1つである車外通信装置111Tは、たとえば、LTE(Long Term Evolution)または3G等の広域無線通信の通信規格に従って、無線基地局装置161と無線通信を行うことが可能である。
 車外通信装置111Tは、車両1の外部における外部装置181と無線基地局装置161を介して通信を行うことが可能である。
 車載デバイス111は、イーサネット(登録商標)ケーブル10およびCANバス11のいずれか一方を介してゲートウェイ101に接続される。ここで、イーサネットケーブル10は、イーサネットの規格に従うケーブルである。CANバス11は、CAN(Controller Area Network)(登録商標)の規格に従うバスである。
 なお、車載デバイス111は、FlexRay(登録商標)およびMOST(Media Oriented Systems Transport)(登録商標)およびLIN(Local Interconnect Network)等のCANバス11およびイーサネットケーブル10と異なるバスまたはケーブルを介してゲートウェイ101に接続されてもよい。
 CANバス11を介してゲートウェイ101に接続される車載デバイス111(以下、CANデバイスとも称する。)は、たとえば、エンジン制御デバイス、AT(Automatic Transmission)制御デバイス、HEV(Hybrid Electric Vehicle)制御デバイス、ブレーキ制御デバイス、シャーシ制御デバイス、ステアリング制御デバイスおよび計器表示制御デバイス等である。
 CANデバイスは、たとえば、CANの通信規格に従ってゲートウェイ101と通信を行う。
 イーサネットケーブル10を介してゲートウェイ101に接続される車載デバイス111(以下、イーサデバイスとも称する。)は、たとえば、車外通信装置111T、カメラ、運転支援装置、センサおよびナビゲーション装置等であり、イーサネットの通信規格に従ってゲートウェイ101と通信を行う。
 車載デバイス111は、たとえば、ファームウェアを保持するための図示しない不揮発性メモリを有し、当該不揮発性メモリに保持されたファームウェアに従って動作する。また、車載デバイス111は、たとえば、ファームウェアの更新時において、当該ファームウェアを一時的に保持するための図示しない揮発性メモリを有する。
 ゲートウェイ101は、通信プロトコルの変換を伴う中継処理を行うことが可能である。具体的には、ゲートウェイ101は、たとえば、CANの通信規格に従ってCANデバイスからデータを受信すると、受信したデータのフォーマットをイーサネットの通信規格に従うフォーマットに変更し、フォーマット変更後のデータをイーサネットの通信規格に従ってイーサデバイスへ送信する。
 また、ゲートウェイ101は、たとえば、イーサネットの通信規格に従ってイーサデバイスからデータを受信すると、受信したデータのフォーマットをCANの通信規格に従うフォーマットに変更し、フォーマット変更後のデータをCANの通信規格に従ってCANデバイスへ送信する。
 また、ゲートウェイ101は、たとえば、通信プロトコルの変換を伴わない中継処理を行うことが可能である。具体的には、ゲートウェイ101は、たとえば、CANの通信規格に従ってCANデバイスからデータを受信すると、受信したデータをCANの通信規格に従って他のCANデバイスへ送信する。
 また、ゲートウェイ101は、イーサネットの通信規格に従ってイーサデバイスからデータを受信すると、受信したデータをイーサネットの通信規格に従って他のイーサデバイスへ送信する。
 ゲートウェイ101における不揮発性メモリ25には、各車載デバイス111において現在用いられているファームウェア(以下、現ファームウェアとも称する。)が保存されている。
 外部装置181は、たとえば、各車載デバイス111におけるファームウェアの現在のバージョンを示すバージョン情報を保持している。
 [動作の流れ]
 車載通信システム300における各装置は、コンピュータを備え、当該コンピュータにおけるCPU等の演算処理部は、以下のシーケンス図またはフローチャートの各ステップの一部または全部を含むプログラムを図示しないメモリからそれぞれ読み出して実行する。これら複数の装置のプログラムは、それぞれ、外部からインストールすることができる。これら複数の装置のプログラムは、それぞれ、記録媒体に格納された状態で流通する。
 図2は、本発明の実施の形態に係る車載通信システムの比較例において、車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。
 図2を参照して、車載デバイス111におけるファームウェアの更新処理は、車載デバイス111がCANデバイスおよびイーサデバイスのいずれの場合でも同様の処理となる。
 まず、外部装置181は、たとえば、車載デバイス111用の最新バージョンのファームウェア(以下、新ファームウェアとも称する。)の準備が整うと、新ファームウェアと現ファームウェアとの差分データを更新データとして無線基地局装置161および車外通信装置111T経由でゲートウェイ101へ送信する(ステップS102)。
 次に、ゲートウェイ101は、外部装置181から差分データを受信すると、受信した差分データを揮発性メモリ24に一時的に保持(以下、バッファリングとも称する。)する(ステップS104)。
 次に、ゲートウェイ101は、バッファリングが正常に完了した場合、リプログラミングの開始を示すリプロ開始通知を車載デバイス111へ送信する(ステップS106)。
 次に、車載デバイス111は、ゲートウェイ101からリプロ開始通知を受信すると、ファームウェアを更新するためのリプロモードへ遷移する(ステップS108)。
 次に、車載デバイス111は、リプロモードへ遷移したことを示す遷移応答をゲートウェイ101へ送信する(ステップS110)。
 次に、ゲートウェイ101は、車載デバイス111から遷移応答を受信すると、車載デバイス111においてファームウェアの更新が可能になったことを認識し、差分データの最初の部分(以下、最初の差分データとも称する。)を車載デバイス111へ送信する(ステップS112)。
 次に、車載デバイス111は、ゲートウェイ101から最初の差分データを受信すると、差分データのバッファリングを開始する。より詳細には、車載デバイス111は、受信した最初の差分データを揮発性メモリにバッファリングする(ステップS114)。
 次に、ゲートウェイ101は、差分データの中間の部分(以下、中間の差分データとも称する。)をたとえば分割して車載デバイス111へ送信する。車載デバイス111は、ゲートウェイ101によって送信された中間の差分データを揮発性メモリにバッファリングする(ステップS116)。
 次に、ゲートウェイ101は、差分データの最後の部分(以下、最後の差分データとも称する。)を車載デバイス111へ送信する(ステップS118)。
 次に、車載デバイス111は、ゲートウェイ101から最後の差分データを受信すると、受信した最後の差分データを揮発性メモリにバッファリングし、差分データのバッファリングを終了する(ステップS122)。
 また、ゲートウェイ101は、不揮発性メモリ25から現ファームウェアを取得し、取得した現ファームウェアに差分データを加えることにより、新ファームウェアを作成して揮発性メモリ24に保存する(ステップS120)。
 次に、車載デバイス111は、バッファリングした差分データを用いて、不揮発性メモリに保存されているファームウェアを新ファームウェアに書き換える(ステップS124)。
 次に、車載デバイス111は、新ファームウェアで再起動する(ステップS126)。
 次に、車載デバイス111は、再起動に成功すると、通常動作モードへ遷移する(ステップS128)。
 次に、車載デバイス111は、ファームウェアの更新に成功したことを示す更新完了通知をゲートウェイ101へ送信する(ステップS130)。
 次に、ゲートウェイ101は、車載デバイス111から更新完了通知を受信すると、現ファームウェアを不揮発性メモリ25から消去するとともに、作成した新ファームウェアを不揮発性メモリ25に保存する(ステップS132)。
 次に、ゲートウェイ101は、揮発性メモリ24に保存されている新ファームウェアを消去する(ステップS134)。
 次に、ゲートウェイ101は、更新完了通知を車外通信装置111Tおよび無線基地局装置161経由で外部装置181へ送信する(ステップS136)。
 次に、外部装置181は、ゲートウェイ101から更新完了通知を受信すると、受信した更新完了通知に基づいてバージョン情報を更新する(ステップS138)。
 なお、車載デバイス111は、上記ステップS126において再起動に成功したが、再起動に失敗することがある。
 このような場合、ゲートウェイ101は、たとえば、現ファームウェアを用いて車載デバイス111を再起動させる。このため、ゲートウェイ101が更新完了通知を車載デバイス111から受信するまで、現ファームウェアは不揮発性メモリ25に保存される。
 図3は、本発明の実施の形態に係る車載通信システムの構成を示す図である。
 図3を参照して、車載通信システム301は、ゲートウェイ101と、スイッチ装置151B,151Cとを備える。車載通信システム301は、車両1に搭載される。車両1には、複数の車載デバイス111が設けられる。
 スイッチ装置151B,151Cは、たとえば直列に接続される。言い換えると、スイッチ装置151B,151Cは、カスケード接続される。以下、スイッチ装置151B,151Cの各々をスイッチ装置151とも称する。
 ゲートウェイ101には、イーサネットケーブル10およびCANバス11のいずれか一方を介して車載デバイス111である車載デバイス111Aが複数接続され、かつイーサネットケーブル10を介してスイッチ装置151Bが接続される。
 スイッチ装置151Bには、イーサネットケーブル10を介して車載デバイス111である車載デバイス111Bが複数接続され、かつイーサネットケーブル10を介してスイッチ装置151Cが接続される。
 スイッチ装置151Cには、イーサネットケーブル10を介して車載デバイス111である車載デバイス111Cが複数接続される。
 スイッチ装置151B,151Cは、イーサネットの通信規格に従って、イーサネットケーブル10を介して接続された装置と通信を行う。
 ここで、ゲートウェイ101の「配下」に接続されることを、外部装置181からの更新データをゲートウェイ101経由で受信可能に接続されることと定義する。
 また、車両1における「ある装置」の「上流側の装置」を、「ある装置」と外部装置181とのデータの伝送経路において「ある装置」より外部装置181側の装置と定義する。また、車両1における「ある装置」の「下流側の装置」を、外部装置181からのデータの「ある装置」による中継先の装置と定義する。
 なお、ゲートウェイ101、スイッチ装置151Bおよびスイッチ装置151Cの各々は、複数の車載デバイス111が接続される構成であるとしたが、これに限定するものではない。ゲートウェイ101、スイッチ装置151Bおよびスイッチ装置151Cの各々は、1つの車載デバイス111が接続される構成であってもよい。
 [課題]
 図3に示すように、ゲートウェイ101の配下に複数のスイッチ装置151が接続される場合、車載通信システム301における車載デバイス111の個数が増大する。
 たとえば、ゲートウェイ101が、スイッチ装置151を介さずに自己に接続されている各車載デバイス111、および配下のスイッチ装置151に接続されている各車載デバイス111を管理する場合、ゲートウェイ101は、これらの車載デバイス111において用いられるファームウェアを更新完了後も保持することが求められる。しかしながら、車載デバイス111の個数が増大すると、ゲートウェイ101においてファームウェアを保持するための記憶領域が不足することがある。
 このような場合、ゲートウェイ101は、各車載デバイス111におけるデータ更新の管理を行うことが困難となる。
 そこで、本発明の実施の形態に係る車載通信システムでは、以下のような構成および動作により、このような課題を解決する。
 [プロキシ方式]
 図4は、本発明の実施の形態に係る車載通信システムにおけるゲートウェイの構成を示す図である。
 図4を参照して、ゲートウェイ101は、中継部21と、管理部23と、揮発性メモリ(記憶部)24と、不揮発性メモリ(記憶部)25とを備える。中継部21は、バッファ(記憶部)22を含む。
 バッファ22、揮発性メモリ24および不揮発性メモリ25は、中継部21によって受信された差分データを保持する。
 より詳細には、中継部21におけるバッファ22は、中継部21における中継対象のデータを一時的に保存するために用いられる。揮発性メモリ24は、差分データの一時的な保存領域、および管理部23によるファームウェアの作成等の作業領域として用いられる。不揮発性メモリ25には、自己のゲートウェイ101が管理する車載デバイス111の現ファームウェアが保存されている。
 中継部21は、通信プロトコルの変換を伴う中継処理を行うことが可能である。また、中継部21は、自己のゲートウェイ101の配下のすなわち下流側のスイッチ装置151に接続されている車載デバイス111用の更新データである中継対象データを当該スイッチ装置151へ送信する。
 より詳細には、中継部21は、車載デバイス111A~111C用の差分データを無線基地局装置161経由で外部装置181からそれぞれ受信し、受信した差分データをバッファ22に保存する。そして、中継部21は、バッファ22に保存した差分データを管理部23へ出力する。
 一方、中継部21は、たとえば、上述の差分データと異なるデータを他の装置から受信すると、受信したデータをバッファ22に保存する。そして、中継部21は、バッファ22に保存したデータを当該データの宛先の装置へ送信する。
 管理部23は、車両1に搭載された対象機器のデータ更新を管理する。具体的には、管理部23は、車載デバイス111Aのファームウェアを管理する。
 より詳細には、管理部23は、中継部21から差分データを受けると、受けた差分データを揮発性メモリ24にバッファリングする。
 管理部23は、揮発性メモリ24にバッファリングした差分データが中継対象データである場合、中継対象データを中継部21経由で配下のスイッチ装置151へ送信する。
 そして、管理部23は、中継対象データを送信した後、当該配下のスイッチ装置151から更新完了通知を中継部21経由で受信するまで中継対象データを揮発性メモリ24に保持させる。
 管理部23は、少なくとも更新完了後は中継対象データを揮発性メモリ24から消去する。具体的には、管理部23は、更新完了通知を中継部21経由で受信すると、中継対象データを揮発性メモリ24から消去する。
 また、管理部23は、スイッチ装置151を介さずに自己のゲートウェイ101に接続されている車載デバイス111A用の更新データを更新完了後も不揮発性メモリ25に保持させる。
 より詳細には、管理部23は、揮発性メモリ24にバッファリングした差分データが車載デバイス111Aの差分データ(以下、自家用差分データとも称する。)である場合、以下の処理を行う。
 すなわち、管理部23は、たとえば、自家用差分データを中継部21経由で車載デバイス111Aへ送信することにより、車載デバイス111Aのファームウェアを更新する。また、管理部23は、たとえば、不揮発性メモリ25に保存されている更新前のファームウェアすなわち現ファームウェア、および自家用差分データから新ファームウェアを作成して揮発性メモリ24に保存する。
 管理部23は、たとえば、データ更新が完了した場合、揮発性メモリ24における新ファームウェアを不揮発性メモリ25に移動するとともに、不揮発性メモリ25における現ファームウェアを消去する。
 また、管理部23は、たとえば、データ更新を管理するスイッチ装置151に車載デバイス111のデータ更新を指示する。具体的には、管理部23は、車載デバイス111のデータ更新を指示するためのリプロ依頼要求を中継部21経由でスイッチ装置151へ送信する。
 図5は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。
 図5を参照して、スイッチ装置151は、スイッチ部51と、管理部53と、揮発性メモリ(記憶部)54と、不揮発性メモリ(記憶部)55とを備える。スイッチ部51は、バッファ(記憶部)52を含む。
 バッファ52、揮発性メモリ54および不揮発性メモリ55は、スイッチ部51によって受信された差分データを保持する。
 より詳細には、スイッチ部51におけるバッファ52は、スイッチ部51における中継対象のデータを一時的に保存するために用いられる。揮発性メモリ54は、差分データの一時的な保存領域、および管理部53によるファームウェアの作成等の作業領域として用いられる。不揮発性メモリ55には、自己のスイッチ装置151が管理する車載デバイス111の現ファームウェアが保存されている。
 スイッチ部51は、プロトコルの変換を伴わない中継処理を行う。具体的には、スイッチ部51は、たとえば、イーサネットの通信規格に従って他の装置からデータを受信すると、受信したデータをバッファ52に保存する。
 そして、スイッチ部51は、バッファ52に保存したデータを、イーサネットの通信規格に従って当該データの宛先の装置へ送信する。
 具体的には、スイッチ部51は、たとえば、ゲートウェイ101、またはゲートウェイ101と自己のスイッチ装置151との間に設けられた上流側の他のスイッチ装置151から差分データを受信し、受信した差分データをバッファ52に保存する。
 スイッチ部51は、バッファ52に保存した差分データが、下流側の他のスイッチ装置151に接続されている車載デバイス111用の差分データである中継対象データである場合、中継対象データを当該下流側の他のスイッチ装置151へ送信するとともに、少なくとも更新完了後は中継対象データをバッファ52から消去する。
 より詳細には、スイッチ部51は、たとえば、中継対象データを当該下流側他のスイッチ装置151へ送信するとすぐに中継対象データをバッファ52から消去する。
 一方、スイッチ部51は、バッファ52に保存した差分データが、他のスイッチ装置151を介さずに自己のスイッチ装置151に接続されている車載デバイス111の差分データすなわち自家用差分データである場合、自家用差分データをバッファ52から取得して管理部53へ出力する。
 管理部53は、車両1に搭載された対象機器のデータ更新を管理する。具体的には、管理部53は、他のスイッチ装置151を介さずに自己のスイッチ装置151に接続されている車載デバイス111のファームウェアを管理する。
 詳細には、管理部53は、自家用差分データから作成されるファームウェアを更新完了後も不揮発性メモリ55に保持させる。
 より詳細には、管理部53は、たとえば、ゲートウェイ101からスイッチ部51経由でリプロ依頼要求を受信すると、車載デバイス111のリプログラミング処理(以下、リプロ処理とも称する。)を開始する。
 管理部53は、リプロ処理において、スイッチ部51から自家用差分データを受けると、受けた自家用差分データを揮発性メモリ54に保存する。
 管理部53は、たとえば、自家用差分データをスイッチ部51経由で自己のスイッチ装置151に接続されている車載デバイス111へ送信することにより、当該車載デバイス111のファームウェアを更新する。また、管理部53は、たとえば、不揮発性メモリ55に保存されている更新前のファームウェアすなわち現ファームウェア、および自家用差分データから新ファームウェアを作成して揮発性メモリ54に保存する。
 管理部53は、たとえば、データ更新が完了した場合、更新前のファームウェアを不揮発性メモリ55から消去し、かつ更新後のファームウェアを不揮発性メモリ55に保持させる処理Paを行う。
 より詳細には、管理部53は、たとえば、揮発性メモリ54における新ファームウェアを不揮発性メモリ55に移動するとともに、不揮発性メモリ55における現ファームウェアを消去する。
 また、管理部53は、たとえば、新ファームウェアによる車載デバイス111の起動に失敗し、データ更新が無事に完了しなかった場合、不揮発性メモリ55に保存されている現ファームウェアを用いた車載デバイス111の再起動処理を行う。
 [動作の流れ]
 図6および図7は、本発明の実施の形態に係る車載通信システムにおいて、プロキシ方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。図7は、図6のシーケンスの続きである。
 図3~図7を参照して、スイッチ装置151Cに接続された車載デバイス111Cのファームウェアが更新される状況を想定する。
 まず、外部装置181は、たとえば、車載デバイス111C用の新ファームウェアの準備が整うと、新ファームウェアと現ファームウェアとの差分データを更新データとして無線基地局装置161および車外通信装置111T経由でゲートウェイ101へ送信する(ステップS202)。
 次に、ゲートウェイ101は、外部装置181から差分データを受信すると、受信した差分データを揮発性メモリ54にバッファリングする(ステップS204)。
 次に、ゲートウェイ101は、バッファリングが正常に完了した場合、車載デバイス111Cのデータ更新を指示するためのスイッチ装置151C宛てのリプロ依頼要求をスイッチ装置151Bへ送信する(ステップS206)。
 次に、スイッチ装置151Bは、ゲートウェイ101からリプロ依頼要求を受信すると、受信したリプロ依頼要求を中継してスイッチ装置151Cへ送信する(ステップS208)。
 次に、スイッチ装置151Cは、スイッチ装置151Bからリプロ依頼要求を受信すると、受信したリプロ依頼要求に従ってリプロ処理を開始する(ステップS210)。
 次に、ゲートウェイ101は、スイッチ装置151C宛ての最初の差分データをスイッチ装置151Bへ送信する(ステップS212)。
 次に、スイッチ装置151Bは、ゲートウェイ101から最初の差分データを受信すると、受信した最初の差分データを中継してスイッチ装置151Cへ送信する(ステップS214)。
 次に、スイッチ装置151Cは、スイッチ装置151Bから最初の差分データを受信すると、差分データのバッファリングを開始する。より詳細には、スイッチ装置151Cは、受信した最初の差分データを揮発性メモリ54にバッファリングする(ステップS216)。
 次に、ゲートウェイ101は、中間の差分データをたとえば分割してスイッチ装置151B経由でスイッチ装置151Cへ送信する。スイッチ装置151Cは、ゲートウェイ101によって送信された中間の差分データを揮発性メモリ54にバッファリングする(ステップS218)。
 次に、ゲートウェイ101は、スイッチ装置151C宛ての最後の差分データをスイッチ装置151Bへ送信する(ステップS220)。
 次に、スイッチ装置151Bは、ゲートウェイ101から最後の差分データを受信すると、受信した最後の差分データを中継してスイッチ装置151Cへ送信する(ステップS222)。
 次に、スイッチ装置151Cは、スイッチ装置151Bから最後の差分データを受信すると、受信した最後の差分データを揮発性メモリ54にバッファリングし、差分データのバッファリングを終了する(ステップS224)。
 次に、スイッチ装置151Cは、リプロ開始通知を車載デバイス111Cへ送信する(ステップS226)。
 次に、車載デバイス111Cは、スイッチ装置151Cからリプロ開始通知を受信すると、リプロモードへ遷移する(ステップS228)。
 次に、車載デバイス111Cは、遷移応答をスイッチ装置151Cへ送信する(ステップS230)。
 次に、スイッチ装置151Cは、車載デバイス111Cから遷移応答を受信すると、車載デバイス111Cにおいてファームウェアの更新が可能になったことを認識し、最初の差分データを車載デバイス111Cへ送信する(ステップS232)。
 次に、車載デバイス111Cは、スイッチ装置151Cから最初の差分データを受信すると、差分データのバッファリングを開始する。より詳細には、車載デバイス111Cは、受信した最初の差分データを揮発性メモリにバッファリングする(ステップS234)。
 次に、スイッチ装置151Cは、中間の差分データをたとえば分割して車載デバイス111Cへ送信する。車載デバイス111Cは、スイッチ装置151Cによって送信された中間の差分データを揮発性メモリにバッファリングする(ステップS236)。
 次に、スイッチ装置151Cは、最後の差分データを車載デバイス111Cへ送信する(ステップS238)。
 次に、車載デバイス111Cは、スイッチ装置151Cから最後の差分データを受信すると、受信した最後の差分データを揮発性メモリにバッファリングし、差分データのバッファリングを終了する(ステップS242)。
 また、スイッチ装置151Cは、不揮発性メモリ55から現ファームウェアを取得し、取得した現ファームウェアに差分データを加えることにより、新ファームウェアを作成して揮発性メモリ54に保存する(ステップS240)。
 次に、車載デバイス111Cは、バッファリングした差分データを用いて、不揮発性メモリに保存されているファームウェアを新ファームウェアに書き換える(ステップS244)。
 次に、車載デバイス111Cは、新ファームウェアで再起動する(ステップS246)。
 次に、車載デバイス111Cは、再起動に成功すると、通常動作モードへ遷移する(ステップS248)。
 次に、車載デバイス111Cは、更新完了通知をスイッチ装置151Cへ送信する(ステップS250)。
 次に、スイッチ装置151Cは、車載デバイス111Cから更新完了通知を受信すると、車載デバイス111Cにおいてファームウェアの更新が無事完了したことを認識し、リプロ処理を終了する(ステップS252)。
 次に、スイッチ装置151Cは、ゲートウェイ101宛の更新完了通知をスイッチ装置151Bへ送信する(ステップS254)。
 次に、スイッチ装置151Cにおける管理部53は、現ファームウェアを不揮発性メモリ55から消去するとともに、揮発性メモリ54に保存されている新ファームウェアを不揮発性メモリ55に保存する(ステップS256)。
 次に、スイッチ装置151Cにおける管理部53は、揮発性メモリ54に保存されている新ファームウェアを消去する(ステップS258)。
 また、スイッチ装置151Bは、スイッチ装置151Cから更新完了通知を受信すると、受信した更新完了通知を中継してゲートウェイ101へ送信する(ステップS260)。
 次に、ゲートウェイ101における管理部23は、スイッチ装置151Bから中継部21経由で更新完了通知を受信すると、差分データを揮発性メモリ24から消去する(ステップS262)。
 次に、ゲートウェイ101は、更新完了通知を車外通信装置111Tおよび無線基地局装置161経由で外部装置181へ送信する(ステップS264)。
 次に、外部装置181は、ゲートウェイ101から更新完了通知を受信すると、受信した更新完了通知に基づいてバージョン情報を更新する(ステップS266)。
 なお、車載デバイス111Cは、上記ステップS246において再起動に成功したが、再起動に失敗することがある。
 このような場合、スイッチ装置151Cは、たとえば、現ファームウェアを用いて車載デバイス111Cを再起動させる。このため、スイッチ装置151Cが更新完了通知を車載デバイス111Cから受信するまで、現ファームウェアが不揮発性メモリ25に保存される。
 また、スイッチ装置151Cは、上記ステップS256およびS258において、現ファームウェアの消去、および新ファームウェアの保存を行う構成であるとしたが、これに限定するものではない。スイッチ装置151Cは、車載デバイス111Cから送信された更新完了通知の受信確認を行う(ステップS252)前に、現ファームウェアの消去、および新ファームウェアの保存を行う構成であってもよい。
 また、スイッチ装置151Cは、上記ステップS256において、現ファームウェアを不揮発性メモリ55から消去する構成であるとしたが、これに限定するものではない。スイッチ装置151Cは、現ファームウェアの消去を行わない構成であってもよい。より詳細には、スイッチ装置151Cは、たとえば、直近の所定個数のファームウェアを保存し、保存するファームウェアの個数が当該所定個数を超える場合に、最も古いファームウェアから消去していく構成であってもよい。
 [プロキシ方式の変形例]
 スイッチ装置151Cにおける管理部53は、たとえば、データ更新が完了した後、所定条件C1を満たした場合に、処理Paを行う。
 ここで、所定条件C1は、たとえば、スイッチ装置151Cにおける通信レートが所定値未満となることである。
 すなわち、管理部53は、たとえば、新ファームウェアの作成、新ファームウェアの不揮発性メモリ55への保存、および新ファームウェアの揮発性メモリ54からの消去を、上記ステップS240,S256,S258においてそれぞれ行う構成に限らず、所定条件C1を満たした場合にこれらの処理を行ってもよい。
 具体的には、管理部53は、たとえば、自己のスイッチ装置151Cにおける通信レートが所定値未満の場合にこれらの処理を行う。より具体的には、たとえば、車両1が停止している場合、自動運転用のデータ転送の頻度が小さくなるので、スイッチ装置151Cにおける通信レートが所定値未満となり所定条件C1が満たされる。
 [フック方式]
 再び図4を参照して、上述のプロキシ方式では、スイッチ装置151が、他のスイッチ装置151を介さずに自己に接続されている車載デバイス111のデータ更新を管理する構成であるとしたが、これに限定するものではない。ゲートウェイ101が、たとえば、配下のスイッチ装置151に接続されている車載デバイス111のデータ更新を管理する構成であってもよい。
 このようなデータ更新の管理の一例としてフック方式がある。フック方式では、ゲートウェイ101における管理部23は、揮発性メモリ24にバッファリングした差分データが中継対象データである場合、対応の車載デバイス111を宛先として当該差分データを中継部21経由で送信する。
 再び図5を参照して、配下のスイッチ装置151は、たとえば、自己を介してゲートウェイ101および対象機器間で送受信されるデータを監視し、自己を介してゲートウェイ101から自己に接続されている対象機器へ送信される更新データを保持する。
 また、配下のスイッチ装置151は、たとえば、自己に接続されている対象機器からゲートウェイ101へ送信される更新完了通知を検出した場合、更新前の更新データを廃棄し、かつ更新後の更新データを保持する処理Paを行う。
 より詳細には、配下のスイッチ装置151における管理部53は、たとえば、スイッチ部51におけるバッファ52を監視する。管理部53は、ゲートウェイ101から自己のスイッチ装置151に接続されている車載デバイス111へ送信される差分データすなわち自家用差分データを検出すると、検出した自家用差分データを取得し、取得した自家用差分データを揮発性メモリ54に保持させる。
 管理部53は、たとえば、不揮発性メモリ55に保存されている更新前のファームウェアすなわち現ファームウェア、および自家用差分データから新ファームウェアを作成して揮発性メモリ54に保存する。
 また、管理部53は、スイッチ部51におけるバッファ52を監視し、自己のスイッチ装置151に接続されている車載デバイス111からゲートウェイ101へ送信される更新完了通知を検出した場合、揮発性メモリ54における新ファームウェアを不揮発性メモリ55に移動するとともに、不揮発性メモリ55における現ファームウェアを消去する。
 [動作の流れ]
 図8および図9は、本発明の実施の形態に係る車載通信システムにおいて、フック方式を用いて車載デバイスにおけるファームウェアが更新される際のシーケンスの一例を示す図である。図9は、図8のシーケンスの続きである。
 図3~図5、図8および図9を参照して、スイッチ装置151Cに接続された車載デバイス111Cのファームウェアが更新される状況を想定する。
 まず、外部装置181は、たとえば、車載デバイス111C用の新ファームウェアの準備が整うと、新ファームウェアと現ファームウェアとの差分データを更新データとして無線基地局装置161および車外通信装置111T経由でゲートウェイ101へ送信する(ステップS302)。
 次に、ゲートウェイ101は、外部装置181から差分データを受信すると、受信した差分データを揮発性メモリ54にバッファリングする(ステップS304)。
 次に、ゲートウェイ101は、バッファリングが正常に完了した場合、車載デバイス111C宛てのリプロ開始通知をスイッチ装置151Bへ送信する(ステップS306)。
 次に、スイッチ装置151Bは、ゲートウェイ101からリプロ開始通知を受信すると、受信したリプロ開始通知を中継してスイッチ装置151Cへ送信する(ステップS308)。
 次に、スイッチ装置151Cは、スイッチ装置151Bからリプロ開始通知を受信すると、受信したリプロ開始通知を中継して車載デバイス111Cへ送信する(ステップS310)。
 次に、スイッチ装置151Cにおける管理部53は、スイッチ部51におけるバッファ52を監視し、スイッチ部51が車載デバイス111C宛てのリプロ開始通知を中継したことを検出すると、フック処理を開始する(ステップS312)。
 また、車載デバイス111Cは、スイッチ装置151Cからリプロ開始通知を受信すると、リプロモードへ遷移する(ステップS314)。
 次に、車載デバイス111Cは、リプロモードへ遷移したことを示すゲートウェイ101宛ての遷移応答をスイッチ装置151Cへ送信する(ステップS316)。
 次に、スイッチ装置151Cは、車載デバイス111Cから遷移応答を受信すると、受信した遷移応答を中継してスイッチ装置151Bへ送信する(ステップS318)。
 次に、スイッチ装置151Bは、スイッチ装置151Cから遷移応答を受信すると、受信した遷移応答を中継してゲートウェイ101へ送信する(ステップS320)。
 次に、ゲートウェイ101は、スイッチ装置151Bから遷移応答を受信すると、車載デバイス111Cにおいてファームウェアの更新が可能になったことを認識し、車載デバイス111C宛ての最初の差分データをスイッチ装置151Bへ送信する(ステップS322)。
 次に、スイッチ装置151Bは、ゲートウェイ101から最初の差分データを受信すると、受信した最初の差分データを中継してスイッチ装置151Cへ送信する(ステップS324)。
 次に、スイッチ装置151Cは、スイッチ装置151Bから最初の差分データを受信すると、受信した最初の差分データを中継して車載デバイス111Cへ送信する(ステップS326)。
 次に、スイッチ装置151Cにおける管理部53は、スイッチ部51におけるバッファ52を監視し、スイッチ部51が最初の差分データを中継したことを検出すると、差分データのバッファリングを開始する。より詳細には、管理部53は、検出した最初の差分データを取得して揮発性メモリ54にバッファリングする(ステップS328)。
 また、車載デバイス111Cは、スイッチ装置151Cから最初の差分データを受信すると、差分データのバッファリングを開始する。より詳細には、車載デバイス111Cは、受信した最初の差分データを揮発性メモリにバッファリングする(ステップS330)。
 次に、ゲートウェイ101は、中間の差分データをたとえば分割してスイッチ装置151B,スイッチ装置151C経由で車載デバイス111Cへ送信する。スイッチ装置151Cおよび車載デバイス111Cは、ゲートウェイ101によって送信された中間の差分データをバッファリングする(ステップS332)。
 次に、ゲートウェイ101は、車載デバイス111C宛ての最後の差分データをスイッチ装置151Bへ送信する(ステップS334)。
 次に、スイッチ装置151Bは、ゲートウェイ101から最後の差分データを受信すると、受信した最後の差分データを中継してスイッチ装置151Cへ送信する(ステップS336)。
 次に、スイッチ装置151Cは、スイッチ装置151Bから最後の差分データを受信すると、受信した最後の差分データを中継して車載デバイス111Cへ送信する(ステップS338)。
 次に、スイッチ装置151Cにおける管理部53は、スイッチ部51におけるバッファ52を監視し、スイッチ部51が最後の差分データを中継したことを検出すると、検出した最後の差分データを取得して揮発性メモリ54にバッファリングし、差分データのバッファリングを終了する(ステップS340)。
 また、車載デバイス111Cは、スイッチ装置151Cから最後の差分データを受信すると、受信した最後の差分データを揮発性メモリにバッファリングし、差分データのバッファリングを終了する(ステップS342)。
 次に、スイッチ装置151Cは、不揮発性メモリ55から現ファームウェアを取得し、取得した現ファームウェアに差分データを加えることにより、新ファームウェアを作成して揮発性メモリ54に保存する(ステップS344)。
 また、車載デバイス111Cは、バッファリングした差分データを用いて、不揮発性メモリに保存されているファームウェアを新ファームウェアに書き換える(ステップS346)。
 次に、車載デバイス111Cは、新ファームウェアで再起動する(ステップS348)。
 次に、車載デバイス111Cは、再起動に成功すると、通常動作モードへ遷移する(ステップS350)。
 次に、車載デバイス111Cは、ゲートウェイ101宛ての更新完了通知をスイッチ装置151Cへ送信する(ステップS352)。
 次に、スイッチ装置151Cは、車載デバイス111Cから更新完了通知を受信すると、受信した更新完了通知を中継してスイッチ装置151Bへ送信する(ステップS354)。
 次に、スイッチ装置151Cにおける管理部53は、スイッチ部51におけるバッファ52を監視し、スイッチ部51が更新完了通知を中継したことを検出すると、車載デバイス111Cにおいてファームウェアの更新が無事完了したことを認識し、フック処理を終了する(ステップS356)。
 次に、スイッチ装置151Cにおける管理部53は、現ファームウェアを不揮発性メモリ55から消去するとともに、揮発性メモリ54に保存されている新ファームウェアを不揮発性メモリ55に保存する(ステップS358)。
 次に、スイッチ装置151Cにおける管理部53は、揮発性メモリ54に保存されている新ファームウェアを消去する(ステップS360)。
 また、スイッチ装置151Bは、スイッチ装置151Cから更新完了通知を受信すると、受信した更新完了通知を中継してゲートウェイ101へ送信する(ステップS362)。
 次に、ゲートウェイ101における管理部23は、スイッチ装置151Bから中継部21経由で更新完了通知を受信すると、差分データを揮発性メモリ24から消去する(ステップS364)。
 次に、ゲートウェイ101は、更新完了通知を車外通信装置111Tおよび無線基地局装置161経由で外部装置181へ送信する(ステップS366)。
 次に、外部装置181は、ゲートウェイ101から更新完了通知を受信すると、受信した更新完了通知に基づいてバージョン情報を更新する(ステップS368)。
 なお、スイッチ装置151Cは、上記ステップS358およびS360において、現ファームウェアの消去、および新ファームウェアの保存を行う構成であるとしたが、これに限定するものではない。スイッチ装置151Cは、車載デバイス111Cから送信された更新完了通知を検出する(ステップS356)前に、現ファームウェアの消去、および新ファームウェアの保存を行う構成であってもよい。
 また、スイッチ装置151Cは、上記ステップS358において、現ファームウェアを不揮発性メモリ55から消去する構成であるとしたが、これに限定するものではない。スイッチ装置151Cは、現ファームウェアの消去を行わない構成であってもよい。より詳細には、スイッチ装置151Cは、たとえば、直近の所定個数のファームウェアを保存し、保存するファームウェアの個数が当該所定個数を超える場合に、最も古いファームウェアから消去していく構成であってもよい。
 [フック方式の変形例]
 スイッチ装置151Cにおける管理部53は、たとえば、データ更新が完了した後、上述の所定条件C1を満たした場合に上述の処理Paを行う。
 すなわち、管理部53は、たとえば、新ファームウェアの作成、新ファームウェアの不揮発性メモリ55への保存、および新ファームウェアの揮発性メモリ54からの消去を、上記ステップS344,S358,S360においてそれぞれ行う構成に限らず、上述のような所定条件C1を満たした場合にこれらの処理を行ってもよい。
 なお、本発明の実施の形態に係る車載通信システムは、2つのスイッチ装置151を備える構成であるとしたが、これに限定するものではない。車載通信システム301は、1つのスイッチ装置151を備える構成であってもよいし、3つ以上のスイッチ装置151を備える構成であってもよい。
 また、本発明の実施の形態に係る車載通信システムでは、外部装置181は、差分データをゲートウェイ101へ送信する構成であるとしたが、これに限定するものではない。外部装置181は、差分データの代わりに、新ファームウェア全体をゲートウェイ101へ送信する構成であってもよい。
 また、本発明の実施の形態に係る車載通信システムでは、プロキシ方式およびフック方式のいずれか一方の方式に従って車載デバイス111のファームウェアが更新される構成であるとしたが、これに限定するものではない。車載通信システム301では、プロキシ方式およびフック方式と異なる方式に従って車載デバイス111のファームウェアが更新される構成であってもよい。
 また、本発明の実施の形態に係る車載通信システムでは、ゲートウェイ101は、更新完了通知を受信した後に差分データを消去する構成であるとしたが、これに限定するものではない。ゲートウェイ101は、差分データの全部を送信した後であり、かつ更新完了通知を受信する前に差分データを消去する構成であってもよい。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151B,151Cが直列に接続される構成であるとしたが、これに限定するものではない。車載通信システム301では、複数のスイッチ装置151が並列に接続される構成であってもよい。
 ところで、特許文献1に記載の車載中継装置は、車載電子制御装置に記憶されているプログラム等をフラッシュROMに記憶する。このような車載ネットワークにおいて、たとえば、車載中継装置の配下にスイッチ装置が設けられることがある。このような構成において、たとえば、多数の車載電子制御装置がスイッチ装置に接続されると、フラッシュROMの使用量が増大し、空き領域が不足することがある。
 これに対して、本発明の実施の形態に係る車載通信システムは、車両1に搭載される車載通信システムであって、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイ101と、通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置151とを備える。ゲートウェイ101またはスイッチ装置151は、車両1に搭載された対象機器のデータ更新を管理する。ゲートウェイ101は、対象機器用の更新データを車両1の外部における外部装置181から受信する。そして、ゲートウェイ101は、配下のスイッチ装置151に接続されている対象機器用の更新データを当該スイッチ装置151へ送信するとともに、少なくとも更新完了後は更新データを保持せず、スイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する。
 このように、ゲートウェイ101が、配下のスイッチ装置151に接続されている対象機器用の更新データをスイッチ装置151へ送信する構成により、たとえば、当該スイッチ装置151に当該更新データを保持させることで、当該対象機器におけるデータ更新の管理を当該スイッチ装置151に行わせることができる。また、少なくとも更新完了後は、当該対象機器用の更新データをゲートウェイ101が保持しない構成により、ゲートウェイ101における記憶領域の消費を抑制することができる。また、ゲートウェイ101が、スイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 また、本発明の実施の形態に係る車載通信システムは、直列に接続された複数のスイッチ装置151を備える。スイッチ装置151は、更新データを上流側であるゲートウェイ101または他のスイッチ装置151から受信する。そして、スイッチ装置151は、下流側の他のスイッチ装置151に接続されている対象機器用の更新データを当該他のスイッチ装置151へ送信するとともに、少なくとも更新完了後は更新データを保持せず、他のスイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する。
 このように、スイッチ装置151が、上流側のゲートウェイ101または他のスイッチ装置151からの更新データであって他のスイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、自己のスイッチ装置151において当該更新データが保持されるので、ゲートウェイ101は当該更新データを消去することができる。また、スイッチ装置151が、下流側の他のスイッチ装置151に接続されている対象機器用の更新データを当該他のスイッチ装置151へ送信する構成により、たとえば、当該他のスイッチ装置151に当該更新データを保持させることで、当該対象機器におけるデータ更新の管理を当該他のスイッチ装置151に行わせることができる。また、少なくとも更新完了後は、当該対象機器用の更新データをスイッチ装置151が保持しない構成により、スイッチ装置151における記憶領域の消費を抑制することができる。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151は、他のスイッチ装置151を介さずに自己に接続されている対象機器のデータ更新を管理する。そして、ゲートウェイ101は、データ更新を管理するスイッチ装置151に対象機器のデータ更新を指示する。
 このような構成により、車載通信システム301において、対象機器の管理処理をスイッチ装置151へ分散させることができるので、ゲートウェイ101における処理負荷を軽減することができる。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151は、データ更新が完了した場合、更新前の更新データを廃棄し、かつ更新後の更新データを保持する処理Paを行う。
 このように、対象機器の更新が完了するまで更新前の更新データを廃棄しない構成により、たとえば、対象機器の更新が失敗した場合に、更新前の更新データを用いて当該対象機器を再起動させることができる。また、更新後の更新データを保持する構成により、新たな更新を行う場合において、対象機器の更新の失敗に備えることができる。
 また、本発明の実施の形態に係る車載通信システムでは、ゲートウェイ101は、配下のスイッチ装置151に接続されている対象機器のデータ更新を管理する。
 このような構成により、車載通信システム301において、対象機器の管理処理をゲートウェイ101に集中させることができるので、車載通信システム301のメンテナンスを簡素化することができる。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151は、自己を介してゲートウェイ101および対象機器間で送受信されるデータを監視する。そして、スイッチ装置151は、自己を介してゲートウェイ101から対象機器へ送信される更新データを保持する。
 このような構成により、スイッチ装置151が更新データをダウンロードする処理と対象機器が当該更新データをダウンロードする処理とを並行して行うことができるので、スイッチ装置151および対象機器が更新データを順番にダウンロードする構成と比べて、ダウンロード処理に要する時間を短縮することができる。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151は、対象機器からゲートウェイ101へ送信される更新完了通知を検出した場合、更新前の更新データを廃棄し、かつ更新後の更新データを保持する処理Paを行う。
 このように、対象機器の更新が完了した場合に送信される更新完了通知を検出するまで更新前の更新データを廃棄しない構成により、たとえば、対象機器の更新が失敗した場合に、更新前の更新データを用いて当該対象機器を再起動させることができる。また、更新後の更新データを保持する構成により、新たな更新を行う場合において、対象機器の更新の失敗に備えることができる。
 また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置151は、データ更新が完了した後、所定条件C1を満たした場合に上記処理Paを行う。
 このような構成により、たとえば、データ更新が完了した直後のタイミングにおいてスイッチ装置151の通信レートが大きい場合に、上記処理Paを通信レートが小さくなるまで延期することができるので、スイッチ装置151に過度の負荷が加わることを防ぐことができる。
 また、本発明の実施の形態に係るゲートウェイは、車両1に搭載される。中継部21は、通信プロトコルの変換を伴う中継処理を行うことが可能である。管理部23は、車両1に搭載された対象機器のデータ更新を管理する。中継部21は、対象機器用の更新データを車両1の外部における外部装置181から受信する。揮発性メモリ24は、中継部21によって受信された更新データを保持する。中継部21は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置151に接続されている対象機器用の更新データである中継対象データをスイッチ装置151へ送信する。そして、管理部23は、少なくとも更新完了後は中継対象データを揮発性メモリ24から消去し、スイッチ装置151を介さずに自己のゲートウェイ101に接続されている対象機器用の更新データを更新完了後も不揮発性メモリ25に保持させる。
 このように、ゲートウェイ101が、中継対象データをスイッチ装置151へ送信する構成により、たとえば、当該スイッチ装置151に当該中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該スイッチ装置151に行わせることができる。また、少なくとも更新完了後は、中継対象データを揮発性メモリ24から消去する構成により、ゲートウェイ101における記憶領域の消費を抑制することができる。また、ゲートウェイ101が、スイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、当該対象機器のデータ更新の管理を容易に行うことができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 また、本発明の実施の形態に係るスイッチ装置は、車両1に搭載される。スイッチ部51は、通信プロトコルの変換を伴わない中継処理を行う。管理部53は、車両1に搭載された対象機器のデータ更新を管理する。スイッチ装置151には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイ101が接続される。スイッチ部51は、ゲートウェイ101、またはゲートウェイ101との間に設けられた上流側の他のスイッチ装置151から対象機器用の更新データを受信する。バッファ52、揮発性メモリ54および不揮発性メモリ55は、スイッチ部51によって受信された更新データを保持する。スイッチ部51は、下流側の他のスイッチ装置151に接続されている対象機器用の更新データである中継対象データを当該下流側の他のスイッチ装置151へ送信するとともに、少なくとも更新完了後は中継対象データをバッファ52から消去する。そして、管理部53は、他のスイッチ装置151を介さずに自己のスイッチ装置151に接続されている対象機器用の更新データを更新完了後も不揮発性メモリ55に保持させる。
 このように、スイッチ装置151が、ゲートウェイまたは上流側の他のスイッチ装置151からの更新データであって他のスイッチ装置151を介さずに自己に接続されている対象機器用の更新データを更新完了後も保持する構成により、スイッチ装置は当該対象機器におけるデータ更新の管理を容易に行うことができ、また、スイッチ装置において当該更新データが保持されるので、ゲートウェイは当該更新データを消去することができる。また、スイッチ装置が、中継対象データを下流側の他のスイッチ装置151へ送信する構成により、たとえば、当該下流側の他のスイッチ装置151に中継対象データを保持させることで、対象機器におけるデータ更新の管理を当該下流側の他のスイッチ装置151に行わせることができる。また、少なくとも更新完了後は、中継対象データをバッファ52から消去する構成により、スイッチ装置151における記憶領域の消費を抑制することができる。したがって、車載通信システムにおける対象機器のデータ更新を管理しながら、ゲートウェイにおける記憶領域の空きが不足することを防ぐことができる。
 上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 以上の説明は、以下に付記する特徴を含む。
 [付記1]
 車両に搭載される車載通信システムであって、
 通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイと、
 通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置とを備え、
 前記ゲートウェイまたは前記スイッチ装置は、前記車両に搭載された対象機器のデータ更新を管理し、
 前記ゲートウェイは、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記スイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持し、
 前記ゲートウェイは、CAN(Controller Area Network)の通信規格に従う通信プロトコル、およびイーサネットの通信規格に従う通信プロトコル間の中継処理を行うことが可能であり、
 前記スイッチ装置は、イーサネットの通信規格に従う通信プロトコル同士の中継処理を行い、
 前記外部装置は、FOTA(Firmware On-The-Air)サーバであり、前記対象機器用の最新のファームウェア、または前記対象機器が現在用いているファームウェアと前記最新のファームウェアとの差分データを前記更新データとして前記ゲートウェイへ送信する、車載通信システム。
 [付記2]
 車両に搭載されるゲートウェイであって、
 通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、
 前記車両に搭載された対象機器のデータ更新を管理する管理部と、
 記憶部とを備え、
 前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、
 前記記憶部は、前記中継部によって受信された前記更新データを保持し、
 前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、
 前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させ、
 前記中継部は、CANの通信規格に従う通信プロトコル、およびイーサネットの通信規格に従う通信プロトコル間の中継処理を行うことが可能であり、
 前記スイッチ装置は、イーサネットの通信規格に従う通信プロトコル同士の中継処理を行い、
 前記外部装置は、FOTAサーバであり、前記対象機器用の最新のファームウェア、または前記対象機器が現在用いているファームウェアと前記最新のファームウェアとの差分データを前記更新データとして前記ゲートウェイへ送信する、ゲートウェイ。
 [付記3]
 車両に搭載されるスイッチ装置であって、
 通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、
 前記車両に搭載された対象機器のデータ更新を管理する管理部と、
 記憶部とを備え、
 前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、
 前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、
 前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、
 前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、
 前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させ、
 前記ゲートウェイは、CANの通信規格に従う通信プロトコル、およびイーサネットの通信規格に従う通信プロトコル間の中継処理を行うことが可能であり、
 前記スイッチ部は、イーサネットの通信規格に従う通信プロトコル同士の中継処理を行う、スイッチ装置。
 1 車両
 10 イーサネットケーブル
 11 CANバス
 21 中継部
 22 バッファ(記憶部)
 23 管理部
 24 揮発性メモリ(記憶部)
 25 不揮発性メモリ(記憶部)
 51 スイッチ部
 52 バッファ(記憶部)
 53 管理部
 54 揮発性メモリ(記憶部)
 55 不揮発性メモリ(記憶部)
 101 ゲートウェイ
 111 車載デバイス
 111T 車外通信装置
 151 スイッチ装置
 161 無線基地局装置
 181 外部装置
 300,301 車載通信システム

Claims (14)

  1.  車両に搭載される車載通信システムであって、
     通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイと、
     通信プロトコルの変換を伴わない中継処理を行う1または複数のスイッチ装置とを備え、
     前記ゲートウェイまたは前記スイッチ装置は、前記車両に搭載された対象機器のデータ更新を管理し、
     前記ゲートウェイは、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、配下の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記スイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する、車載通信システム。
  2.  前記車載通信システムは、直列に接続された複数の前記スイッチ装置を備え、
     前記スイッチ装置は、前記更新データを上流側である前記ゲートウェイまたは他の前記スイッチ装置から受信し、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データを前記他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記更新データを保持せず、他の前記スイッチ装置を介さずに自己に接続されている前記対象機器用の前記更新データを更新完了後も保持する、請求項1に記載の車載通信システム。
  3.  前記スイッチ装置は、他の前記スイッチ装置を介さずに自己に接続されている前記対象機器のデータ更新を管理し、
     前記ゲートウェイは、前記データ更新を管理する前記スイッチ装置に前記対象機器のデータ更新を指示する、請求項1または請求項2に記載の車載通信システム。
  4.  前記スイッチ装置は、前記データ更新が完了した場合、更新前の前記更新データを廃棄し、かつ更新後の前記更新データを保持する処理を行う、請求項3に記載の車載通信システム。
  5.  前記ゲートウェイは、配下の前記スイッチ装置に接続されている前記対象機器のデータ更新を管理する、請求項1または請求項2に記載の車載通信システム。
  6.  前記スイッチ装置は、自己を介して前記ゲートウェイおよび前記対象機器間で送受信されるデータを監視し、自己を介して前記ゲートウェイから前記対象機器へ送信される前記更新データを保持する、請求項5に記載の車載通信システム。
  7.  前記スイッチ装置は、前記対象機器から前記ゲートウェイへ送信される更新完了通知を検出した場合、更新前の前記更新データを廃棄し、かつ更新後の前記更新データを保持する処理を行う、請求項6に記載の車載通信システム。
  8.  前記スイッチ装置は、前記データ更新が完了した後、所定条件を満たした場合に前記処理を行う、請求項4または請求項7に記載の車載通信システム。
  9.  車両に搭載されるゲートウェイであって、
     通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、
     前記車両に搭載された対象機器のデータ更新を管理する管理部と、
     記憶部とを備え、
     前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、
     前記記憶部は、前記中継部によって受信された前記更新データを保持し、
     前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、
     前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、ゲートウェイ。
  10.  車両に搭載されるスイッチ装置であって、
     通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、
     前記車両に搭載された対象機器のデータ更新を管理する管理部と、
     記憶部とを備え、
     前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、
     前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、
     前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、
     前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、
     前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、スイッチ装置。
  11.  車両に搭載され、通信プロトコルの変換を伴う中継処理を行うことが可能であり、記憶部を備えるゲートウェイにおける通信制御方法であって、
     前記車両に搭載された対象機器のデータ更新を管理するステップと、
     前記対象機器用の更新データを前記車両の外部における外部装置から受信するステップと、
     受信した前記更新データを前記記憶部に保持するステップと、
     通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信するステップとを含み、
     前記データ更新を管理するステップにおいては、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、通信制御方法。
  12.  車両に搭載され、通信プロトコルの変換を伴わない中継処理を行い、記憶部を備えるスイッチ装置における通信制御方法であって、
     前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、
     前記車両に搭載された対象機器のデータ更新を管理するステップと、
     前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信するステップと、
     受信した前記更新データを前記記憶部に保持するステップと、
     下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去するステップとを含み、
     前記データ更新を管理するステップにおいては、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、通信制御方法。
  13.  車両に搭載され、記憶部を備えるゲートウェイにおいて用いられる通信制御プログラムであって、
     コンピュータを、
     通信プロトコルの変換を伴う中継処理を行うことが可能な中継部と、
     前記車両に搭載された対象機器のデータ更新を管理する管理部、
    として機能させるためのプログラムであり、
     前記中継部は、前記対象機器用の更新データを前記車両の外部における外部装置から受信し、
     前記記憶部は、前記中継部によって受信された前記更新データを保持し、
     前記中継部は、通信プロトコルの変換を伴わない中継処理を行う配下のスイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記スイッチ装置へ送信し、
     前記管理部は、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、前記スイッチ装置を介さずに自己の前記ゲートウェイに接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、通信制御プログラム。
  14.  車両に搭載され、記憶部を備えるスイッチ装置において用いられる通信制御プログラムであって、
     コンピュータを、
     通信プロトコルの変換を伴わない中継処理を行うスイッチ部と、
     前記車両に搭載された対象機器のデータ更新を管理する管理部、
    として機能させるためのプログラムであり、
     前記スイッチ装置には、通信プロトコルの変換を伴う中継処理を行うことが可能なゲートウェイが接続され、
     前記スイッチ部は、前記ゲートウェイ、または前記ゲートウェイとの間に設けられた上流側の他の前記スイッチ装置から前記対象機器用の更新データを受信し、
     前記記憶部は、前記スイッチ部によって受信された前記更新データを保持し、
     前記スイッチ部は、下流側の他の前記スイッチ装置に接続されている前記対象機器用の前記更新データである中継対象データを前記下流側の他のスイッチ装置へ送信するとともに、少なくとも更新完了後は前記中継対象データを前記記憶部から消去し、
     前記管理部は、他の前記スイッチ装置を介さずに自己の前記スイッチ装置に接続されている前記対象機器用の前記更新データを更新完了後も前記記憶部に保持させる、通信制御プログラム。
PCT/JP2017/039109 2017-01-27 2017-10-30 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム WO2018138991A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/481,352 US11128711B2 (en) 2017-01-27 2017-10-30 In-vehicle communication system, gateway, switching device and communication control method
CN201780084837.0A CN110235100B (zh) 2017-01-27 2017-10-30 车载通信系统、网关、交换装置、通信控制方法和通信控制程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-012816 2017-01-27
JP2017012816A JP6784178B2 (ja) 2017-01-27 2017-01-27 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム

Publications (1)

Publication Number Publication Date
WO2018138991A1 true WO2018138991A1 (ja) 2018-08-02

Family

ID=62978254

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/039109 WO2018138991A1 (ja) 2017-01-27 2017-10-30 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム

Country Status (4)

Country Link
US (1) US11128711B2 (ja)
JP (1) JP6784178B2 (ja)
CN (1) CN110235100B (ja)
WO (1) WO2018138991A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7059806B2 (ja) * 2018-05-29 2022-04-26 株式会社オートネットワーク技術研究所 車載通信システム、車載中継装置、通信プログラム及び通信方法
WO2020111090A1 (ja) * 2018-11-28 2020-06-04 株式会社オートネットワーク技術研究所 監視装置、監視プログラム及び監視方法
JP2020154540A (ja) * 2019-03-19 2020-09-24 キオクシア株式会社 メモリシステム及び制御システム
JP7447911B2 (ja) * 2019-10-28 2024-03-12 住友電気工業株式会社 中継装置、車載通信システム、車載通信プログラムおよび車載通信方法
JP7334614B2 (ja) * 2019-12-24 2023-08-29 株式会社オートネットワーク技術研究所 車載中継装置
CN111258611B (zh) * 2020-01-22 2023-04-07 重庆长安汽车股份有限公司 一种整车的固件空中升级方法
JP7314867B2 (ja) * 2020-06-18 2023-07-26 トヨタ自動車株式会社 マスタ、ネットワークシステム、方法、プログラム、センタ、および車両

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014019280A (ja) * 2012-07-18 2014-02-03 Honda Motor Co Ltd 車両用電子制御システム
JP2014165641A (ja) * 2013-02-25 2014-09-08 Toyota Motor Corp 情報処理装置及び情報処理方法
JP2015103163A (ja) * 2013-11-27 2015-06-04 株式会社オートネットワーク技術研究所 プログラム更新システム及びプログラム更新方法
JP2016071527A (ja) * 2014-09-29 2016-05-09 株式会社オートネットワーク技術研究所 通信システム、車載装置、通信装置、及びコンピュータプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5057304B2 (ja) * 2007-06-08 2012-10-24 国立大学法人名古屋大学 車載通信システム及び車載通信方法
JP5708338B2 (ja) * 2011-07-20 2015-04-30 株式会社オートネットワーク技術研究所 通信システム、中継装置及び通信方法
CN103457843A (zh) * 2012-05-30 2013-12-18 阿里巴巴集团控股有限公司 通信方法和系统、中继网关装置、应用服务器和客户端
JP2014182571A (ja) 2013-03-19 2014-09-29 Denso Corp 車載電子制御装置のプログラム書換システム及び車載中継装置
JP6024564B2 (ja) * 2013-03-28 2016-11-16 株式会社オートネットワーク技術研究所 車載通信システム
JP5653507B1 (ja) * 2013-10-31 2015-01-14 三菱電機株式会社 プログラムツールが接続される電子制御装置
JP6201962B2 (ja) * 2014-11-06 2017-09-27 トヨタ自動車株式会社 車載通信システム
JP6545966B2 (ja) * 2015-01-27 2019-07-17 ルネサスエレクトロニクス株式会社 中継装置、端末装置および通信方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014019280A (ja) * 2012-07-18 2014-02-03 Honda Motor Co Ltd 車両用電子制御システム
JP2014165641A (ja) * 2013-02-25 2014-09-08 Toyota Motor Corp 情報処理装置及び情報処理方法
JP2015103163A (ja) * 2013-11-27 2015-06-04 株式会社オートネットワーク技術研究所 プログラム更新システム及びプログラム更新方法
JP2016071527A (ja) * 2014-09-29 2016-05-09 株式会社オートネットワーク技術研究所 通信システム、車載装置、通信装置、及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2018120503A (ja) 2018-08-02
US11128711B2 (en) 2021-09-21
CN110235100A (zh) 2019-09-13
CN110235100B (zh) 2023-11-28
JP6784178B2 (ja) 2020-11-11
US20190394277A1 (en) 2019-12-26

Similar Documents

Publication Publication Date Title
WO2018138991A1 (ja) 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム
JP6380461B2 (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
JP4910182B2 (ja) 車載用通信システム
EP4202645A1 (en) Vehicle upgrading method and apparatus
JP7192415B2 (ja) プログラム更新システム及び更新処理プログラム
JP6902722B2 (ja) プログラム更新システム、制御システム、移動体、プログラム更新方法及びプログラム
WO2017221436A1 (ja) 中継装置、中継方法及びコンピュータプログラム
JP7207301B2 (ja) 更新制御装置、制御方法、およびコンピュータプログラム
JP2014029619A (ja) 制御システム及びプログラム更新方法
WO2009110502A1 (ja) 中継装置、通信システム及び通信方法
US20230004375A1 (en) Vehicle-mounted update device, program, and program update method
JP2018181376A (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
WO2019187535A1 (ja) 制御装置、制御方法、およびコンピュータプログラム
JP2010045526A (ja) 無線アドホックネットワーク端末のプログラム更新方法及び無線アドホックネットワーク端末
JP2019199122A (ja) 車載中継装置、通信システム、バス決定方法及びコンピュータプログラム
JP2022023690A (ja) サーバー、ソフトウェア更新装置、車両、ソフトウェア更新システム、方法およびプログラム
US20220351555A1 (en) Center device and vehicle information communication system
WO2022230496A1 (ja) 車載通信システム、中継装置および中継方法
WO2017149827A1 (ja) 制御装置、プログラム配信方法、およびコンピュータプログラム
JP7157214B1 (ja) 車載制御装置、車載システム、情報処理方法、及びプログラム
WO2023063068A1 (ja) 車載装置、プログラム及び、プログラムの更新方法
JP6573052B1 (ja) 制御装置、制御方法、およびコンピュータプログラム
WO2017058106A1 (en) A self-adaptive vehicle movement network service for smart traffic data collection
JP2024076132A (ja) ネットワークシステム、およびネットワーク管理方法
CN117397212A (zh) 车载控制装置、以太网交换机以及设备设定方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17894557

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17894557

Country of ref document: EP

Kind code of ref document: A1