Information processing device, information processing method, and computer program

JP2025081090A5Pending Publication Date: 2026-06-18AUTONETWORKS TECH LTD +3

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
AUTONETWORKS TECH LTD
Filing Date
2023-11-15
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

The challenge is to manage the increase in communication volume or delay in vehicle networks when new in-vehicle communication devices are added, as the diversity of added functions and devices makes it difficult to predict these issues in advance.

Method used

An information processing apparatus that acquires information about newly connected in-vehicle communication devices, creates a routing map for the in-vehicle relay device, verifies network communication by simulation, and transmits the routing map when the verification is positive, thereby updating the routing map and preventing communication problems.

Benefits of technology

This solution effectively suppresses the occurrence of communication problems such as increased volume or delay by simulating the network communication before updating the routing map, ensuring stable network performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide an information processing device, an information processing method, and a computer program that suppress the occurrence of problems and the like caused by adding a new in-vehicle communication device to a vehicle network.SOLUTION: A server device 3 is installed outside a vehicle (information processing system) and communicates with the vehicle. The server device includes an information acquisition unit 31a that acquires information regarding an in-vehicle communication device whose connection to a network within the vehicle has been detected, a routing map creation unit 31b that creates, based on the acquired information, a routing map for an in-vehicle relay device mounted on the vehicle to determine a relay destination for data transmitted and received over the network, a verification processing unit 31c that verifies communication of the network according to the created routing map by simulation, and a routing map transmission unit 31d that transmits the routing map to the in-vehicle relay device when a positive verification result is obtained.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an information processing apparatus, an information processing method, and a computer program for performing processing related to communication within a vehicle.

Background Art

[0002] In Patent Document 1, an in-vehicle device acquires a service ID related to an added function and transmits it to a server. The server acquires service information of the function corresponding to the service ID, determines a change location of a routing table based on the service information of a plurality of functions including the acquired service information, and executes a change of the routing table. An information management system has been proposed.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] For example, for the purpose of adding functions to a vehicle, a new in-vehicle communication device may be additionally connected to a network related to vehicle communication. An in-vehicle relay device that relays data transmission and reception between in-vehicle communication devices in this network needs to update a routing map (routing table) in order to determine a relay destination of data related to the new in-vehicle communication device. After updating the routing map and starting the relay of data related to the new in-vehicle communication device by the in-vehicle communication device, there may be an increase in communication volume or communication delay in the vehicle network. In recent years, since the types of added functions or added in-vehicle communication devices are diverse, it is difficult to verify in advance whether an increase in communication volume or communication delay occurs due to these additions.

[0005] The present disclosure has been made in view of such circumstances, and an object thereof is to provide an information processing apparatus, an information processing method, and a computer program that can be expected to suppress the occurrence of problems such as by adding a new in-vehicle communication device to a vehicle network.

Means for Solving the Problems

[0006] The information processing apparatus according to this aspect includes an acquisition unit that acquires information regarding an in-vehicle communication device for which connection to a network in a vehicle has been detected, and based on the acquired information, a routing map for determining a relay destination of data transmitted and received by an in-vehicle relay device mounted on the vehicle in the network is created. A creation unit, a verification unit that verifies communication of the network according to the created routing map by simulation, and a transmission unit that transmits the routing map to the in-vehicle relay device when an affirmative verification result is obtained.

[0007] The present application can be realized not only as an apparatus including such a characteristic processing unit, but also as a method including such characteristic processing as steps, or as a computer program for causing a computer to execute such steps. It can be realized as a semiconductor integrated circuit that realizes part or all of these devices, or as another device or system including these devices.

Effects of the Invention

[0008] According to the above, it can be expected to suppress the occurrence of problems such as by adding a new in-vehicle communication device to a vehicle network.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Embodiments for Carrying Out the Invention

[0010] [Description of Embodiments of the Present Disclosure] First, embodiments of the present disclosure will be listed and described. At least a part of the embodiments described below may be arbitrarily combined.

[0011] (1) The information processing apparatus according to this aspect includes an acquisition unit that acquires information about an in-vehicle communication device for which a connection to a network in the vehicle has been detected, a creation unit that creates a routing map for determining a relay destination of data transmitted and received by the in-vehicle relay device mounted on the vehicle in the network based on the acquired information, a verification unit that verifies the communication of the network according to the created routing map by simulation, and a transmission unit that transmits the routing map to the in-vehicle relay device when a positive verification result is obtained.

[0012] In this aspect, an information processing apparatus provided outside the vehicle creates a routing map for the in-vehicle relay device to determine a relay destination of data in the network in the vehicle. The information processing apparatus acquires information about an in-vehicle communication device for which a new connection to the network has been detected from the vehicle, and creates a new routing map including information for the in-vehicle relay device to relay data from or to this in-vehicle communication device. The information processing apparatus verifies the communication of the network when the created routing map is applied by simulation. When a positive verification result is obtained by the simulation, the information processing apparatus transmits the created new routing map to the in-vehicle relay device of the vehicle and updates the old routing map with the newly created routing map. By performing verification in the simulation before updating the routing map, it can be expected to suppress the occurrence of problems after the update of the routing map.

[0013] (2) It is preferable that the verification unit verifies, by the simulation, whether a load rate or communication delay in the network satisfies a predetermined condition when the in-vehicle communication device is added.

[0014] In this aspect, when a new in-vehicle communication device is added, the information processing device verifies by simulation whether the network load rate or communication delay satisfies a predetermined condition. The predetermined condition can be, for example, not exceeding a load rate or communication delay at which there may be a malfunction in the vehicle's functions, etc. The predetermined condition can be determined in advance by, for example, the designer or administrator of the information processing system according to this embodiment. Thereby, it can be expected that the information processing device suppresses the occurrence of problems such as an increase in the load rate or communication delay after the update of the routing map.

[0015] (3) It is preferable to include a database that stores update information for updating the routing map regarding in-vehicle communication devices that can be connected to the network within the vehicle, and the creating unit creates the routing map based on the update information read from the database based on the information acquired by the acquiring unit.

[0016] In this aspect, the information processing device stores, in the database, update information for updating the routing map regarding various in-vehicle communication devices that can be connected to the network in the vehicle. The update information includes, for example, information to be added to the routing map in order to correctly relay data from or to the in-vehicle communication device. The information processing device reads the update information from the database based on the information regarding the in-vehicle communication device acquired from the vehicle, and creates a new routing map based on the read update information. Thereby, it can be expected that the information processing device creates an appropriate routing map even when a wide variety of in-vehicle communication devices can be connected to the vehicle's network.

[0017] (4) When a negative verification result is obtained, it is preferable that the transmitting unit transmits the routing map and causes the in-vehicle relay device to perform thinning of relaying according to the priority of the data.

[0018] In this aspect, when a negative verification result is obtained by simulation, the information processing device transmits a newly created routing map for update to the vehicle, and causes the in-vehicle relay device to perform thinning of relays according to the priority of data. The in-vehicle relay device can perform thinning, for example, by discarding without relaying this data with a predetermined probability when the priority of the data to be relayed is lower than a predetermined threshold. Thereby, when there is a possibility that a problem or the like occurs by updating the routing map, the information processing device can be expected to suppress the occurrence of a problem or the like by thinning the relays and reducing the traffic volume.

[0019] (5) A model generation unit that generates a model of the network, a scenario generation unit that generates a scenario for the simulation, and a scenario execution unit that inputs and outputs data to the model according to the scenario, and the verification unit preferably performs verification based on the data input and output to the model and the internal state of the model.

[0020] In this aspect, the information processing device generates a model of a network to be the subject of simulation and a scenario of the simulation, and performs the simulation by inputting and outputting data to the model according to the scenario. The information processing device performs verification based on the input / output data for the model and the internal state of the model. Thereby, it can be expected that the information processing device widely verifies the behavior of the network with a newly added in-vehicle communication device by simulation using various scenarios.

[0021] (6) It is preferable to include a configuration database that stores configuration information of the in-vehicle communication device and communication lines mounted on the vehicle, and the model generation unit generates the model based on the configuration information stored in the configuration database and the configuration information of the in-vehicle communication device connected to the network.

[0022] In this aspect, the information processing apparatus includes a configuration database that stores configurations such as in-vehicle communication devices mounted on the vehicle and communication lines. Based on the information stored in this configuration database and the configuration information of an in-vehicle communication device newly connected to the vehicle network, for example, by adding the model of the added in-vehicle communication device to a model of an existing network configuration, it is expected that a model for use in simulation for verification can be generated.

[0023] (7) It is preferable to include an operation database that stores the correspondence between the operations of the vehicle and the events that occur in each operation, and for the scenario generation unit to generate the scenario that defines the events occurring in time series based on the information stored in the operation database and the configuration information of the in-vehicle communication device connected to the network.

[0024] In this aspect, the information processing apparatus includes an operation database that stores the correspondence between the operations of the vehicle and the events that occur in each operation. Based on the information stored in the operation database and the configuration information of an in-vehicle communication device newly connected to the vehicle network, the information processing apparatus generates a scenario that defines the events occurring in time series. Thereby, it is expected that the information processing apparatus can perform simulations according to various operations of the vehicle.

[0025] (8) The scenario defines the events occurring in time series in the network. The scenario execution unit generates the data to be input to the model based on the time-series events defined in the scenario, inputs the generated data to the model, acquires the data output by the model in response to the input of the data and the internal state of the model when the data is output, and preferably stores the acquired data and the internal state.

[0026] In this aspect, the information processing apparatus generates data to be input to the model based on time-series events defined in the scenario, inputs the generated data to the model, obtains the data output by the model and the internal state of the model, and stores the obtained information. Thus, it can be expected that the information processing apparatus performs a simulation of the vehicle network using the model and the scenario.

[0027] (9) Based on the data and the internal state stored by the scenario execution unit, the verification unit preferably calculates the load rate or communication delay related to the communication of the network, and determines whether the simulation result is positive according to whether the calculated load rate or communication delay meets a predetermined criterion.

[0028] In this aspect, the information processing apparatus calculates the load rate or communication delay related to the communication of the network based on the output data of the model and the information on the internal state stored as a result of the simulation. The information processing apparatus can determine whether the simulation result is positive according to whether the calculated load rate or communication delay meets a predetermined criterion.

[0029] (10) The information processing method according to this aspect is such that the information processing apparatus obtains information on an in-vehicle communication apparatus whose connection to the network in the vehicle is detected, creates a routing map for determining a relay destination of data transmitted and received by the in-vehicle relay apparatus mounted on the vehicle in the network based on the obtained information, verifies the communication of the network by the created routing map through simulation, and transmits the routing map to the in-vehicle relay apparatus when a positive verification result is obtained.

[0030] In this aspect, similar to aspect (1), it can be expected to suppress the occurrence of problems or the like after the update of the routing map.

[0031] (11) The computer program according to this aspect causes a computer to acquire information about an in-vehicle communication device for which a connection to a network in a vehicle has been detected, and based on the acquired information, create a routing map for determining a relay destination of data transmitted and received by an in-vehicle relay device mounted on the vehicle in the network, verify the communication of the network according to the created routing map by simulation, and execute a process of transmitting the routing map to the in-vehicle relay device when a positive verification result is obtained.

[0032] In this aspect, similar to aspect (1), it can be expected to suppress the occurrence of problems or the like after the update of the routing map.

[0033] [Details of Embodiments of the Present Disclosure] A specific example of an information processing system according to an embodiment of the present disclosure will be described below with reference to the drawings. The present disclosure is not limited to these examples, but is shown by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

[0034] <System Configuration> FIG. 1 is a schematic diagram for explaining a configuration example of an information processing system according to the present embodiment. The information processing system according to the present embodiment includes a plurality of devices such as an integrated ECU (Electronic Control Unit) 10, a meter ECU 51, a brake ECU 52, an extension IF (Interface) 53, and an in-vehicle communication device 54 mounted on a vehicle 1. These plurality of devices are connected via a plurality of communication lines 71 to 74 arranged in the vehicle 1, and constitute an in-vehicle network capable of mutually transmitting and receiving data. In the illustrated example, four communication lines 71 to 74 are connected to the integrated ECU 10, the meter ECU 51 is connected to the communication line 71, the brake ECU 52 is connected to the communication line 72, the extension IF 53 is connected to the communication line 73, and the in-vehicle communication device 54 is connected to the communication line 74. In the illustrated example, two devices are connected to each of the one communication lines 71 to 74, but three or more devices may be connected to one communication line 71 to 74.

[0035] The integrated ECU 10 according to the present embodiment integrates the functions of two devices, a gateway 11 that relays data transmission and reception, and an ADAS (Advanced Driver Assistance Systems)-ECI 12 that performs processing related to driving support, into one device. In other words, the integrated ECU 10 includes a virtual gateway 11 and an ADAS-ECU 12. The gateway 11 and the ADAS-ECU 12 are connected via a virtual communication line 75. In this figure, virtual functional blocks and communication lines are indicated by broken lines. Note that the gateway 11 and the ADAS-ECU 12 may be mounted on the vehicle 1 as individual devices.

[0036] The integrated ECU 10 can transmit and receive data to and from the meter ECU 51, the brake ECU 52, the expansion IF 53, and the vehicle exterior communication device 54 via these communication lines 71 to 74. The meter ECU 51, the brake ECU 52, the expansion IF 53, and the vehicle exterior communication device 54 can each transmit and receive data to and from the integrated ECU 10. Also, the integrated ECU 10 relays the transmission and reception of data among the four communication lines 71 to 74. As a result, the meter ECU 51, the brake ECU 52, the expansion IF 53, and the vehicle exterior communication device 54 can transmit and receive data to and from each other via the integrated ECU 10.

[0037] The meter ECU 51 controls various meters provided near the driver's seat of the vehicle 1. The meter ECU 51 controls the meters based on various information within the vehicle 1 obtained via the in-vehicle network. For example, the meter ECU 51 performs display control of the speed meter based on the information of the traveling speed of the vehicle 1 obtained via the in-vehicle network. Also, for example, the meter ECU 51 performs display control of the tachometer based on the information of the engine rotation speed or rotational speed of the vehicle 1 obtained via the in-vehicle network.

[0038] The brake ECU 52 controls the brakes of the vehicle 1. For example, the brake ECU 52 activates the brakes in response to the driver's operation on the foot brake or side brake provided at the driver's seat of the vehicle 1. Information regarding the presence or absence and the amount of operation on the foot brake or side brake may be directly input to the brake ECU 52, or may be provided to the brake ECU 52 via the in-vehicle network. Also, for example, the brake ECU 52 activates the brakes in response to a command given from the ADAS-ECU 12 via the in-vehicle network.

[0039] The extension IF53 is used to connect an extended ECU61 that undertakes this function when adding functions to the vehicle 1, for example. The extension IF53 is connected to the communication line 73 in this example and has connection terminals or slots for connecting the extended ECU61. When the extension IF53 detects that the extended ECU61 is connected, it notifies the integrated ECU10 of the connection detection via the communication line 73.

[0040] The extended ECU61 is configured to be detachable from the extension IF53. By being attached to the extension IF53, it is connected to the communication line 73 of the vehicle 1 and can perform communication via the communication line 73. The extended ECU61 may undertake any extended function of the vehicle 1. In this example, the extended ECU61 has a sensor 62 for detecting obstacles or the like existing outside the vehicle 1, and performs processing to periodically acquire the detection result of the sensor 62 and transmit it to other devices within the vehicle 1. Thereby, functions such as monitoring the surroundings of the vehicle 1 using the sensor 62 or avoiding obstacles can be added to the vehicle 1.

[0041] The out-vehicle communication device 54 is a device that communicates with various devices installed outside the vehicle 1 by performing wireless communication such as mobile phone communication network or wireless LAN (Local Area Network), for example. In the present embodiment, the out-vehicle communication device 54 communicates with a server device 3 installed outside the vehicle 1. The out-vehicle communication device 54 is connected to the integrated ECU10 via the communication line 74, transmits data from the integrated ECU10 to the server device 3, and provides data from the server device 3 to the integrated ECU10.

[0042] The gateway 11 virtually provided in the integrated ECU 10 relays data among the communication lines 71 to 75. In the information processing system according to the present embodiment, the data transmitted and received is assigned an ID, and the gateway 11 has a routing map in which the correspondence between the ID assigned to the data and the communication line through which the data is to be relayed is set. When the gateway 11 receives data from any of the communication lines, it refers to the routing map based on the ID assigned to this data, and transmits the data from the communication line set as the relay destination in the routing map, thereby relaying data among a plurality of communication lines.

[0043] The ADAS-ECU 12 is a device that realizes driving support or autonomous driving, etc. by performing driving control of the vehicle 1 based on information obtained from various sensors mounted on the vehicle 1. The ADAS-ECU 12 measures the distance to the vehicle ahead by, for example, a sensor mounted on the vehicle 1, and controls the accelerator and brakes of the vehicle 1 to keep the inter-vehicle distance constant and drive the vehicle 1. Note that the control performed by the ADAS-ECU 12 is not limited to the control of maintaining the inter-vehicle distance, and may be control related to various driving supports or autonomous driving, etc.

[0044] The server device 3 provided outside the vehicle 1 stores information about various devices mounted on the vehicle 1 in a database, and distributes programs, data, etc. required by various devices mounted on the vehicle 1. For example, when a new extended ECU 61 is connected to the network of the vehicle 1, information about the extended ECU 61 is transmitted from the vehicle 1 to the server device 3. The server device 3 that has received this transmits programs, data, etc. for using the extended ECU 61 to the vehicle 1.

[0045] Also, when the expansion ECU 61 is mounted on the expansion IF 53 of the vehicle 1 and the expansion ECU 61 is connected to the communication line 73, the server device 3 according to the present embodiment performs a process of verifying whether the expansion ECU 61 can be connected. In the information processing system according to the present embodiment, when the expansion ECU 61 is connected to the communication line 73, it is necessary to update the routing map used when the gateway 11 determines the data relay destination. This is for reasons such as, for example, relaying data transmitted by the expansion ECU 61 to other devices and relaying data transmitted from other devices to the expansion ECU 61. When the server device 3 is notified from the vehicle 1 that the expansion ECU 61 is connected, the server device 3 creates a new routing map and verifies the communication within the vehicle 1 using the new routing map by simulation. When a positive verification result (for example, a verification result indicating that no abnormality occurs) is obtained by the simulation, the server device 3 transmits the created routing map to the vehicle 1, thereby causing the routing map of the gateway 11 of the integrated ECU 10 to be updated to the new routing map.

[0046] FIG. 2 is a block diagram showing a configuration example of the server device 3 according to the present embodiment. The server device 3 according to the present embodiment includes a processing unit 31, a storage unit (storage) 32, a communication unit (transceiver) 33, and the like. In the present embodiment, the description is made on the assumption that processing is performed by one server device 3, but a plurality of server devices may perform distributed processing.

[0047] The processing unit 31 is configured using an arithmetic processing device such as a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphics Processing Unit), or quantum processor, and storage devices such as a ROM (Read Only Memory) and a RAM (Random Access Memory). By reading and executing the program 32a stored in the storage unit 32, the processing unit 31 performs various processes such as a process of communicating with the vehicle 1 to acquire various information, a process of creating a routing map, and a process of verifying communication within the vehicle 1 using the created routing map.

[0048] The storage unit 32 is configured using a large-capacity storage device such as a hard disk or an SSD (Solid State Drive). The storage unit 32 stores various programs executed by the processing unit 31 and various data necessary for the processing of the processing unit 31. In the present embodiment, the storage unit 32 stores the program 32a executed by the processing unit 31. Further, the storage unit 32 is provided with an in-vehicle device DB (database) 32b that stores information about various devices that can be mounted on the vehicle 1, and a vehicle DB 32c that stores information such as the network configuration of the vehicle 1.

[0049] In the present embodiment, the program (computer program, program product) 32a is provided in a state recorded on a recording medium 99 such as a memory card or an optical disk, and the server device 3 reads the program 32a from the recording medium 99 and stores it in the storage unit 32. However, the program 32a may be written in the storage unit 32, for example, at the manufacturing stage of the server device 3. Also, for example, the program 32a may be acquired by the server device 3 through communication from another remote server device or the like that distributes it. For example, the program 32a recorded on the recording medium 99 may be read by a writing device and written in the storage unit 32 of the server device 3. The program 32a may be provided in a mode of distribution via a network or in a mode of being recorded on the recording medium 99.

[0050] The in-vehicle device DB32b is a database that stores information about various devices that can be additionally connected to the vehicle 1. The information stored in the in-vehicle device DB32b may include, for example, information such as the ID, size, and transmission period of the data transmitted by the device, and information such as the ID of the data required by this device. When the server device 3 receives information including the ID of the newly connected extended ECU61 from the vehicle 1, it can read the information stored in the in-vehicle device DB32b based on this ID and create a routing map.

[0051] Also, the in-vehicle device DB32b stores various programs such as device drivers or application programs executed by devices that can be installed in the vehicle 1. When a new extended ECU61 is added to the network of the vehicle 1, the server device 3 reads programs executed by the extended ECU61 and programs executed by in-vehicle devices that cooperate with the extended ECU61 from the in-vehicle device DB32b and transmits them to the vehicle 1.

[0052] The vehicle DB32c is a database that stores information such as the devices installed in the vehicle 1 and the network configuration in association with identification information such as the vehicle ID for the vehicle 1 that is under the management of the server device 3. The information stored in the vehicle DB32c may include various information such as, for example, the number of communication lines 71 to 75 that make up the network of the vehicle 1, the identification information of the devices connected to each communication line 71 to 75, the type, size, and transmission period of the data transmitted by each device, the type and version of the programs executed by each device, information such as the vehicle type and owner of the vehicle 1, and information such as the routing map information used by the gateway 11 of the vehicle 1. Based on the information stored in the vehicle DB32c, the server device 3 can perform verification by simulating communication in the vehicle 1.

[0053] The communication unit 33 communicates with various devices via a network N including, for example, the Internet, a wired LAN (Local Area Network), a wireless LAN, or a mobile phone communication network. In the present embodiment, the communication unit 33 communicates with one or more vehicles 1 (the vehicle external communication device 54 mounted thereon) via the network N. The communication unit 33 transmits the data given from the processing unit 31 to other devices and gives the data received from other devices to the processing unit 31.

[0054] Note that the storage unit 32 may be an external storage device connected to the server device 3. Also, the server device 3 may be a multi-computer including a plurality of computers, or may be a virtual machine virtually constructed by software. Further, the server device 3 is not limited to the above configuration and may include, for example, a reading unit that reads information stored in a portable storage medium, an input unit that receives an operation input, or a display unit that displays an image.

[0055] Also, in the server device 3 according to the present embodiment, the processing unit 31 reads and executes the program 32a stored in the storage unit 32, whereby an information acquisition unit 31a, a routing map creation unit 31b, a verification processing unit 31c, a routing map transmission unit 31d, etc. are realized in the processing unit 31 as software functional units. In this figure, as functional units of the processing unit 31, functional units related to processing related to the creation and verification of the routing map of the vehicle 1 are illustrated, and functional units related to other processing are omitted from illustration.

[0056] The information acquisition unit 31a performs a process of acquiring various types of information related to the vehicle 1 by communicating with the vehicle external communication device 54 of the vehicle 1 through the communication unit 33. The information acquisition unit 31a acquires, for example, information related to the devices mounted on the vehicle 1, information related to the network configuration of the vehicle 1, version information of the programs executed by each device, and various types of information such as the routing map used by the gateway 11, and stores them in the vehicle DB 32c. Further, in the present embodiment, when an extended ECU 61 is newly installed in the extension IF 53 of the vehicle 1, the information acquisition unit 31a performs a process of acquiring information related to this extended ECU 61 from the vehicle 1. The information acquisition unit 31a stores the acquired information related to the extended ECU 61 in the vehicle DB 32c, and appropriately changes the information on the network configuration of the vehicle 1 that has already been stored.

[0057] The routing map creation unit 31b performs a process of creating a routing map used by the gateway 11 of the vehicle 1. Based on the information such as the ID of the extended ECU 61 acquired by the information acquisition unit 31a, the routing map creation unit 31b reads the information regarding this extended ECU 61 from the in-vehicle device DB 32b. The information read from the in-vehicle device DB 32b at this time may include information such as the ID of the data transmitted by the extended ECU 61, the ID of the device that should receive this data, and the ID of the data required by the extended ECU 61. Further, the routing map creation unit 31b reads information such as the network configuration of the vehicle 1 and the current routing map stored in the vehicle DB 32c. Based on these read information, the routing map creation unit 31b can determine to which communication lines 71 to 75 the data transmitted by the extended ECU 61 should be relayed. Also, the routing map creation unit 31b determines which of the data transmitted by devices such as the meter ECU 51 and the brake ECU 52 already mounted on the vehicle 1 should be relayed to the communication line 73 to which the extended ECU 61 is connected. The routing map creation unit 31b creates a new routing map based on the determined relay destination. The routing map creation unit 31b can create a new routing map, for example, by adding the relay conditions for the data regarding the newly added extended ECU 61 to the current routing map.

[0058] The verification processing unit 31c verifies the feasibility of the routing map created by the routing map creation unit 31b through simulation. The information stored in the vehicle DB 32c includes, for example, information such as the network configuration of vehicle 1, the IDs, periods, and sizes of the data transmitted by each device, and the IDs of the data required by each device. Based on this information, the verification processing unit 31c constructs a virtual network of vehicle 1 to be simulated on the simulation environment. The verification processing unit 31c performs a simulation in which each device transmits and receives data at the set period and size in the virtual network. The verification processing unit 31c calculates values such as the communication load on each communication line 71 to 75 or the maximum delay time for each data by measuring the amount and frequency of the data transmitted and received on the network of vehicle 1 in the simulation. The verification processing unit 31c determines whether the calculated values satisfy the predetermined conditions, thereby determining the feasibility of the new routing map.

[0059] The routing map transmission unit 31d performs a process of transmitting the new routing map created by the routing map creation unit 31b to vehicle 1. Note that when a positive verification result (a verification result that satisfies the predetermined conditions) is obtained through the verification by the verification processing unit 31c, the routing map transmission unit 31d transmits the new routing map to vehicle 1, causing the routing map possessed by the gateway 11 of vehicle 1 to be updated to the new routing map.

[0060] On the other hand, when a negative verification result (a verification result that does not satisfy the predetermined conditions) is obtained by the verification of the verification processing unit 31c, the verification processing unit 31c performs verification by simulation for the case of thinning out the data relayed by the gateway 11 of the vehicle 1, for example, and determines whether the predetermined conditions are satisfied. In the information processing system according to the present embodiment, the ID attached to each data to be transmitted and received represents the type of this data and the like, and also represents the priority. The ID of the data is, for example, a numerical value of a predetermined number of digits, and the lower the value, the higher the priority. The verification processing unit 31c verifies the case of thinning out the data in ascending order of the priority, and determines the data that needs to be thinned out in order to satisfy the predetermined conditions. As a method of thinning out the data relay, for example, a method of discarding the data without relaying it at a frequency of once every predetermined number of times, or a method of discarding the data without relaying it with a predetermined probability can be adopted. The verification processing unit 31c notifies the vehicle 1 of the ID of the data determined to need to be thinned out, and causes the gateway 11 of the vehicle 1 to thin out the data of this ID and perform relaying thereafter. After notifying the verification processing unit 31c about the thinning out of the relay, the routing map transmission unit 31d transmits a new routing map to the vehicle 1 to update the routing map of the gateway 11.

[0061] Note that in the present embodiment, when a negative verification result is obtained by simulation, the verification processing unit 31c thins out the data relay by the gateway 11, but it is not limited to this. For example, the verification processing unit 31c may cause one or more devices connected to the network of the vehicle 1 to reduce the data transmission frequency or the like. Also, for example, the verification processing unit 31c may display a message for rejecting the connection of the newly connected extended ECU 61 on the display of the vehicle 1 or the like, and it may not be necessary to update the routing map of the gateway 11.

[0062] After the transmission of the routing map is completed, the server device 3 stores a new routing map in the vehicle DB 32c and adds information regarding the extended ECU 61 to the network configuration of vehicle 1 stored in the vehicle DB 32c. Further, the server device 3 determines whether the programs of the respective devices mounted on vehicle 1 need to be updated due to the addition of the extended ECU 61, and if it is determined that an update is necessary, the server device 3 transmits an update program to vehicle 1. The gateway 11 of vehicle 1 appropriately transmits the update program from the server device 3 to each device that requires it, causing each device to update the program.

[0063] FIG. 3 is a block diagram showing a configuration example of the integrated ECU 10 according to the present embodiment. The integrated ECU 10 according to the present embodiment includes a processing unit (processor) 21, a storage unit (storage) 22, a communication unit (transceiver) 23, and the like. The processing unit 21 is configured using an arithmetic processing device such as a CPU or an MPU. The processing unit 21 can perform various processes by reading and executing the program 22a stored in the storage unit 22. In the present embodiment, the processing unit 21 performs processes related to two devices, the gateway 11 and the ADAS-ECU 12.

[0064] The storage unit 22 is configured using a non-volatile memory element such as a flash memory or an EEPROM (Electrically Erasable Programmable Read Only Memory). The storage unit 22 stores various programs executed by the processing unit 21 and various data necessary for the processing of the processing unit 21. In the present embodiment, the storage unit 22 stores the program 22a executed by the processing unit 21 and the routing map 22b for the gateway 11 to determine the data relay destination.

[0065] The program (program product) 22a may be written into the storage unit 22, for example, at the manufacturing stage of the integrated ECU 10. The integrated ECU 10 may also acquire, through communication, what is distributed by, for example, a remote server device. The integrated ECU 10 may read out a program recorded on a recording medium 98 such as a memory card or an optical disk and store it in the storage unit 22. Alternatively, a writing device may read out what is recorded on the recording medium 98 and write it into the storage unit 22 of the integrated ECU 10. The program 22a may be provided in a distribution mode via a network or in a mode recorded on the recording medium 98.

[0066] The routing map 22b is information used when the integrated ECU 10 performs relay processing as the gateway 11. In the information processing system according to the present embodiment, the data transmitted and received in the network of the vehicle 1 is attached with an ID for identifying the type of the data and the like. The routing map 22b is information indicating, for example, the correspondence between the ID attached to the data and the communication lines 71 to 75 to which the data of this ID should be transmitted. When the gateway 11 receives data via any one of the communication lines 71 to 75, the gateway 11 can acquire the ID attached to the received data and acquire from the routing map 22b which of the communication lines 71 to 75 is the relay destination corresponding to this ID.

[0067] In this embodiment, the integrated ECU 10 has four communication units 23. Each communication unit 23 is connected to one communication line 71 to 74 respectively, and communicates with other devices via these communication lines 71 to 74. The communication unit 23 transmits and receives data according to a communication protocol such as CAN (Controller Area Network) or Ethernet (registered trademark). Each communication unit 23 can be configured using an IC (Integrated Circuit) such as a CAN controller or an Ethernet switch, for example. The communication unit 23 transmits the data by converting the digital data given from the processing unit 21 into an electrical signal and outputting it to the communication lines 71 to 74. The communication unit 23 samples and acquires the potential of the communication lines 71 to 74, thereby converting the electrical signal on the communication line into digital data, and gives the converted data to the processing unit 21 as received data. In this example, the integrated ECU 10 has four communication units 23, but it is not limited to this, and the integrated ECU 10 may have three or less or five or more communication units 23.

[0068] In this embodiment, the integrated ECU 10, when the processing unit 21 reads and executes the program 22a stored in the storage unit 22, realizes the gateway processing unit 21a and the ADAS processing unit 21b, etc. as software functional units in the processing unit 21. Note that the gateway processing unit 21a of the processing unit 21 performs processing corresponding to the above-described virtual gateway 11, and the ADAS processing unit 21b performs processing corresponding to the ADAS-ECU 12.

[0069] The gateway processing unit 21a receives data transmitted by other devices via the communication lines 71 to 75, and relays the transmission and reception of data between the communication lines 71 to 75 by transmitting the received data from an appropriate communication line among the communication lines 71 to 75. The gateway processing unit 21a determines the relay destination of this data by referring to the routing map 22b stored in the storage unit 22 based on the ID included in the received data. Further, when the communication protocols are different between the data relay source and the relay destination, the gateway processing unit 21a may perform a process of converting the data to be relayed into a format suitable for each communication protocol.

[0070] In the present embodiment, when an extended ECU 61 is mounted on the expansion IF 53 and the extended ECU 61 is connected to the network of the vehicle 1, the gateway processing unit 21a transmits information such as the ID related to the extended ECU 61 to the server device 3 and requests the creation of a new routing map. The gateway processing unit 21a acquires the new routing map transmitted from the server device 3 in response to this request, and updates the routing map 22b by overwriting the routing map 22b stored in the storage unit 22 with the new routing map. Further, when an instruction to perform thinning of data relay is given from the server device 3 together with the new routing map, the gateway processing unit 21a performs thinning for the data relay after updating the routing map.

[0071] The ADAS processing unit 21b performs processing related to driving support or autonomous driving of the vehicle 1. For example, the ADAS processing unit 21b controls the accelerator and brakes of the vehicle 1 to keep the inter-vehicle distance constant. Further, for example, when the vehicle in front photographed by the camera suddenly brakes, the ADAS processing unit 21b gives a warning to the driver. Further, for example, when a collision with a vehicle or an obstacle in front cannot be avoided by the warning to the driver, the ADAS processing unit 21b performs control to operate the brakes and stop the vehicle 1. These controls of the ADAS processing unit 21b are examples and are not limited thereto. The ADAS processing unit 21b may perform any control related to driving support or autonomous driving.

[0072] <Function Expansion Process> FIG. 4 is a schematic diagram for explaining the procedure of the function expansion process performed by the information processing system according to the present embodiment. In the information processing system according to the present embodiment, when a user or the like connects an expansion ECU 61 to an expansion IF 53 that constitutes the network of the vehicle 1, the function of the vehicle 1 is expanded. When the expansion IF 53 detects that the expansion ECU 61 is connected, it notifies the gateway 11 of the integrated ECU 10 to that effect. At this time, the expansion IF 53 acquires information such as the ID from the expansion ECU 61 and transmits this information to the gateway 11 together with the connection detection notification. The data of the notification transmitted by the expansion IF 53 is received by the gateway 11 of the integrated ECU 10 via the communication line 73.

[0073] The gateway 11 that has received the notification from the expansion IF 53 acquires the ID of the expansion ECU 61 included in this notification. The gateway 11 notifies the acquired ID by transmitting it to the server device 3. At this time, the data including the ID transmitted by the gateway 11 is received by the server device 3 provided outside the vehicle 1 via the communication line 74 and the off-vehicle communication device 54.

[0074] The server device 3 that has been notified of the ID of the expansion ECU 61 from the gateway 11 of the vehicle 1 reads out the information associated with this ID from the in-vehicle device DB 32b. The server device 3 also reads out the information associated with the vehicle 1 that is the notification source from the vehicle DB 32c. The server device 3 creates a routing map for the gateway 11 of the vehicle 1 to which the expansion ECU 61 is added based on the information read from these databases.

[0075] FIG. 5 is a schematic diagram showing an example of a routing map. The routing map shown in the upper part of FIG. 5 stores information such as "type", "ID", "relay source", "relay destination", and "decimation" in association with each other. "Type" is the type of information included in the data transmitted and received in the network of Vehicle 1, and types such as "travel distance", "vehicle speed", "speed warning", or "abnormal water temperature" can be set. However, the routing map may not include the "type" information.

[0076] The "ID" of the routing map is the identification information attached to the data transmitted and received. Also, "ID" is used as information indicating the priority of the data, and the smaller the value, the higher the priority. For example, when the CAN communication protocol is used in the network of Vehicle 1, CAN-ID can be used as the "ID". In this example, a hexadecimal numerical value is set as the "ID".

[0077] Information for identifying a plurality of communication lines connected to the gateway 11 is set in the "relay source" and "relay destination" of the routing map. In this example, using the reference numerals shown in FIG. 1, "communication lines 71 to 75" are described as the identification information of the communication lines. The "relay source" is the communication lines 71 to 75 from which the gateway 11 receives the data, and the "relay destination" is the communication lines 71 to 75 to which the gateway 11 transmits the data. For example, data regarding "travel distance" with an "ID" of "0B2" is transmitted from a device connected to the "communication line 72" of the "relay source" to the gateway 11, and the gateway 11 that has received this data may transmit this data from the "communication line 71" which is the "relay destination".

[0078] Whether or not to perform decimation processing on the corresponding data is set as either "yes" or "no" in the "decimation" of the routing map. The gateway 11 performs decimation processing such as reducing the relay frequency on the data for which "yes" is set in the "decimation" of the routing map.

[0079] For the routing map shown in the upper part of FIG. 5, an example of a new routing map created by the server device 3 due to the addition of the extended ECU 61 is shown in the lower part of FIG. 5. In this example, due to the addition of the extended ECU 61, three types of data, namely, "sonar data", "automatic brake request", and "obstacle warning request", are added to the types of data transmitted and received in the in-vehicle network. The server device 3 notified from the gateway 11 of the vehicle 1 of the addition of the extended ECU 61 reads information about the extended ECU 61 from the in-vehicle device DB 32b. In this example, the server device 3 reads from the in-vehicle device DB 32b information indicating that the extended ECU 61 transmits "sonar data" with "ID" being "501" and that this data is used by the ADAS-ECU 12. Based on this information read by the server device 3 from the in-vehicle device DB 32b and the configuration of the network of the vehicle 1 stored in the vehicle DB 32c (where the extended ECU 61 is connected to the communication line 73 and the ADAS-ECU 12 is connected to the communication line 75), the server device 3 can add the information of "sonar data" shown in the lower part of FIG. 5 to the routing map shown in the upper part of FIG. 5.

[0080] Also in this example, with the addition of the extended ECU 61, functions of automatic braking and obstacle warning are added to the vehicle 1. In relation to this function addition, the server device 3 reads, for example, from the in-vehicle device DB 32b information indicating that the ADAS-ECU 12 transmits data of "automatic brake request" with "ID" being "0B2" and that this data is used by the brake ECU 52. Also, the server device 3 reads, for example, from the in-vehicle device DB 32b information indicating that the ADAS-ECU 12 transmits data of "obstacle warning request" with "ID" being "202" and that this data is used by the meter ECU 51. Based on these pieces of information read by the server device 3 from the in-vehicle device DB 32b and the configuration of the network of the vehicle 1, the server device 3 can add the information of "automatic brake request" and "obstacle warning request" shown in the lower part of FIG. 5 to the routing map shown in the upper part of FIG. 5.

[0081] In this example, the server device 3 creates a new routing map by adding information to an existing routing map, but this is not the only way. The server device 3 may create a new routing map by changing some or all of the information included in the existing routing map, or may create a new routing map by deleting some of the information included in the existing routing map. The server device 3 may appropriately combine the addition, change, and deletion of information with respect to the existing routing map to create a new routing map, or may create a new routing map from the beginning without using the existing routing map.

[0082] The server device 3 that creates a new routing map with the addition of the extended ECU 61 verifies, by simulation, the communication of the in-vehicle network when the created new routing map is applied, as shown in FIG. 4. At this time, the server device 3 performs a simulation of the in-vehicle network communication by simulation using the information about the vehicle 1 stored in the vehicle DB 32c and the information about each device stored in the in-vehicle device DB 32b. In the vehicle DB 32c, for example, information such as which devices are connected to each communication line 71 to 75 constituting the network of the vehicle 1 and the speed of communication performed on each communication line 71 to 75 is stored. In the in-vehicle device DB 32b, for example, information such as the ID, period, and size of the data transmitted by each device mounted on the vehicle 1 is stored. Also, in the in-vehicle device DB 32b, information about the data transmitted and received by the extended ECU 61 and the data added to the in-vehicle network due to the addition of functions based on the extended ECU 61 is stored. In the present embodiment, the in-vehicle device DB 32b and the vehicle DB 32c include similar information necessary for performing the simulation verification.

[0083] Based on the information regarding the configuration of the network of vehicle 1 stored in the vehicle DB 32c, the server device 3 reproduces, for example, the network of vehicle 1 in a simulation environment. The server device 3 simulates, for example, the flow of each data when each device in the reproduced network transmits data at a determined period and size. The server device 3 calculates, for example, the ratio of the time during which data is transmitted and received on each communication line 71 to 75 as the communication load rate with respect to the total time of the simulation, and calculates the average value of the communication load rates of the plurality of communication lines 71 to 75 as the average load rate. The server device 3 determines whether the calculated average load rate satisfies a predetermined condition (for example, 70% or less).

[0084] Also, for each data transmitted and received in the network of vehicle 1, the server device 3 calculates, for example, the delay time from the timing when the data is transmitted from the transmitting device until the data is received by the receiving device. The server device 3 calculates this delay time for all the data transmitted and received in the simulation, and acquires the one with the largest delay time as the maximum delay time. The server device 3 determines whether this maximum delay time satisfies a predetermined condition (for example, 3 milliseconds or less). Note that the characteristic values of the network calculated by the server device 3 through simulation are not limited to the above average load rate or maximum delay time. The server device 3 may calculate various characteristic values such as the amount of data transmitted and received on each communication line 71 to 75, or the occurrence frequency of arbitration processing (arbitration) caused by a plurality of devices simultaneously transmitting data on each communication line 71 to 75. The server device 3 may perform any condition determination on the calculated characteristic values.

[0085] When a positive verification result is obtained through simulation using the newly created routing map, the server device 3 transmits the new routing map to the gateway 11 of vehicle 1. The gateway 11 that has received the new routing map from the server device 3 updates the routing map 22b by overwriting the previous routing map 22b with the new routing map.

[0086] The gateway 11 that has updated the routing map 22b transmits information such as the updated routing map 22b and the configuration of the network of the vehicle 1 to the server device 3 in order to notify that the routing map 22b has been updated. The information transmitted by the gateway 11 is received by the server device 3 via the communication line 74 and the off-vehicle communication device 54. The server device 3 stores the received information in the vehicle DB 32c in association with information such as an ID for identifying the vehicle 1. In the vehicle DB 32c of the server device 3, information such as the network configuration of the vehicle 1, the types of devices mounted on the vehicle 1, and the versions of programs installed in each device are stored. The server device 3 determines whether it is necessary to update (or install, etc.) the program for one or more devices mounted on the vehicle 1 based on the information received from the gateway 11. When it is determined that an update is necessary, the server device 3 reads out the update program from the in-vehicle device DB 32b and transmits it to the vehicle 1. The update program transmitted by the server device 3 is received by the gateway 11 via the off-vehicle communication device 54 and the communication line 74 of the vehicle 1. The gateway 11 transmits the update program received from the server device 3 to the devices that require it and causes the program to be updated.

[0087] Although not shown in FIG. 4, when a negative verification result is obtained by simulation using the newly created routing map, the server device 3 determines data for thinning out the relay by performing, for example, further simulation. The server device 3 sets the "thinning out" of the routing map to "yes" for the data determined to perform thinning out, and transmits this routing map to the gateway 11. Further, when a negative verification result is obtained, the server device 3 may, for example, not update the routing map, cause the meter ECU 51 of the vehicle 1 to display a warning message or the like, and prompt the user of the vehicle 1 to remove the extended ECU 61 or the like.

[0088] In the routing map illustrated in the lower part of Fig. 5, negative verification results were obtained through simulation, and it was determined that thinning processing would be performed on two pieces of data, "abnormal water temperature" and "sonar data", with large (low priority) "ID" values, and "thinning" was set to "yes".

[0089] Fig. 6 is a flowchart showing an example of the procedure of the processing performed by the server device 3 according to the present embodiment. In the information processing system according to the present embodiment, when the extended ECU 61 is connected to the extension IF 53 of the vehicle 1, the gateway 11 of the integrated ECU 10 notifies the server device 3 of the addition of the device, and information such as the ID of the newly connected extended ECU 61 is transmitted. The information acquisition unit 31a of the processing unit 31 of the server device 3 according to the present embodiment determines whether it has received information such as the ID of the newly connected extended ECU 61 from the gateway 11 of the vehicle 1 (step S1). If it has not received information such as the ID of the extended ECU 61 from the gateway 11 (S1: NO), the information acquisition unit 31a waits until it receives the information.

[0090] If it has received information such as the ID of the extended ECU 61 from the gateway 11 (S1: YES), the routing map creation unit 31b of the processing unit 31 reads information regarding the extended ECU 61 from the in-vehicle device DB 32b based on the information such as the ID acquired in step S1 (step S2). At this time, the routing map creation unit 31b can read information such as the ID of the data transmitted by the extended ECU 61, the ID of the device that should receive this data, and the ID of the data required by the extended ECU 61 from the in-vehicle device DB 32b. Further, the routing map creation unit 31b reads information regarding the vehicle 1 that has transmitted information such as the ID of the extended ECU 61 from the vehicle DB 32c (step S3). At this time, the routing map creation unit 31b can read information such as the network configuration of the vehicle 1 and the current routing map from the vehicle DB 32c.

[0091] Based on the information read in steps S2 and S3, the routing map creation unit 31b can determine which communication lines 71 to 75 should relay the data transmitted by the extended ECU 61, and which of the data transmitted by devices such as the meter ECU 51 and the brake ECU 52 already installed in the vehicle 1 should be relayed to the communication line 73 to which the extended ECU 61 is connected. Based on the determined relay destination, the routing map creation unit 31b creates a new routing map by, for example, adding the relay conditions for the data related to the newly added extended ECU 61 to the current routing map (step S4).

[0092] Next, the verification processing unit 31c of the processing unit 31 constructs the network of the vehicle 1 in a simulation environment based on the information read in steps S2 and S3, and verifies the validity of the newly created routing map by performing a communication simulation according to the routing map created in step S4 (step S5).

[0093] The verification processing unit 31c determines whether a positive verification result is obtained through the verification in the simulation in step S5 (step S6). If a positive verification result is obtained (S6: YES), the routing map transmission unit 31d of the processing unit 31 transmits the routing map created in step S4 to the gateway 11 of the vehicle 1 (step S8) and ends the process. On the contrary, if a positive verification result is not obtained (S6: NO), that is, if a negative verification result is obtained, the verification processing unit 31c determines, for example, data for thinning out the relay by the gateway 11 by repeating the simulation, and sets the thinning out of the data relay for the gateway 11 (step S7). Thereafter, the routing map transmission unit 31d transmits the routing map created in step S4 to the gateway 11 of the vehicle 1 (step S8) and ends the process.

[0094] <Summary> In the information processing system according to the present embodiment configured as described above, the server device 3 acquires information regarding the extended ECU 61 for which a connection to the network of the vehicle 1 has been detected, and creates a routing map for the gateway 11 of the vehicle 1 to determine a relay destination based on the acquired information. The server device 3 verifies the network communication according to the created routing map by simulation, and transmits the routing map to the gateway 11 of the vehicle 1 when a positive verification result is obtained. Thereby, the information processing system can update the routing map 22b used by the gateway 11 of the vehicle 1 using the routing map created by the server device 3. By verifying in advance the network communication according to the routing map created by the server device 3 by simulation, it can be expected to suppress the occurrence of communication problems or the like due to the addition of the extended ECU 61 to the network of the vehicle 1.

[0095] Also, in the information processing system according to the present embodiment, the server device 3 calculates communication characteristics such as the average load rate or the maximum delay time of the data to be transmitted and received on each communication line 71 to 75 of the network when the extended ECU 61 is added. The server device 3 verifies whether or not the calculated values satisfy a predetermined condition. Thereby, it can be expected that the information processing system suppresses the occurrence of communication problems or the like due to an increase in the average load rate or the maximum delay time or the like due to the addition of the extended ECU 61.

[0096] Also, in the information processing system according to the present embodiment, the server device 3 includes an in-vehicle device DB 32b that stores information for updating a routing map regarding an in-vehicle communication device that can be connected to the network of the vehicle 1. The server device 3 acquires information for updating the routing map from the in-vehicle device DB 32b based on information such as the ID of the extended ECU 61 transmitted from the gateway 11 of the vehicle 1, and can create a new routing map based on the acquired information. Thereby, it can be expected that the information processing system enables a wide variety of devices to be added and mounted on the vehicle 1.

[0097] Also, in the information processing system according to the present embodiment, when a negative verification result is obtained by simulation, the routing map is updated, and thinning is performed according to the priority of the data for the data relay by the gateway 11. As a result, when an increase in the communication volume of the network in the vehicle 1 may occur due to the addition of the extended ECU 61, it can be expected that the information processing system suppresses the increase in the communication volume by performing thinning of the relay by the gateway 11.

[0098] In the present embodiment, when the extended ECU 61 is connected to the network of the vehicle 1, the server device 3 provided outside the vehicle 1 performs processes such as creation of the routing map and verification by simulation. However, these processes are not limited to the server device 3. For example, a diagnostic device connected to the vehicle 1 via a communication cable or the like, or an information processing device such as a personal computer, a smartphone, or a tablet terminal device capable of communicating with the vehicle 1 may perform these processes.

[0099] <Verification process> FIG. 7 is a schematic diagram for explaining an outline of the simulation performed by the information processing system according to the present embodiment. In the information processing system according to the present embodiment, the verification processing unit 31c of the server device 3 provided outside the vehicle 1 performs verification by simulation.

[0100] The verification processing unit 31c of the server device 3 includes a model generation unit 131, a scenario generation unit 132, a scenario execution unit 133, and the like. The verification processing unit 31c also includes an in-vehicle device DB 32b, a vehicle DB 32c, and a use case DB 142 that store information necessary for performing simulations. In the present embodiment, the verification processing unit 31c is a functional block virtually provided in the server device 3, and the model generation unit 131, the scenario generation unit 132, and the scenario execution unit 133 are functional blocks provided in the verification processing unit 31c of the processing unit 31 of the server device 3 shown in FIG. 2. Also, the in-vehicle device DB 32b and the vehicle DB 32c are the same as those shown in FIG. 2, and the use case DB 142 may be provided in the storage unit 32 of the server device 3.

[0101] The model generation unit 131 performs a process of generating a network model 145 for simulation based on the information stored in the vehicle DB 32c regarding the vehicle 1 to be verified and the information stored in the in-vehicle device DB 32b regarding the additional devices for the vehicle 1. Here, the model generation unit 131 acquires information regarding the configuration of existing in-vehicle devices and communication lines mounted on the vehicle 1 from the vehicle DB 32c based on the vehicle ID and the like acquired from the vehicle 1 to be verified. Also, the model generation unit 131 acquires information regarding the configuration of the additional devices from the in-vehicle device DB 32b based on the information regarding the additional devices acquired from the vehicle 1 to be verified. The model generation unit 131 generates a network model 145 of a configuration in which the additional devices are connected to the existing network of the vehicle 1 to be inspected based on these pieces of information acquired from the vehicle DB 32c and the in-vehicle device DB 32b.

[0102] The vehicle DB32c is a database that stores the configurations of communication devices and communication lines mounted on the vehicle 1. The vehicle DB32b stores the configurations of a plurality of vehicles 1 that can be targets for verification by the server device 3, and stores information in association with, for example, vehicle IDs uniquely assigned to the vehicles 1. The vehicle DB32c stores the configurations of, for example, the integrated ECU10, the meter ECU51, the brake ECU52, the expansion IF53, the vehicle exterior communication device 54, and the communication lines 71 to 74, etc., as the configuration of the vehicle 1 shown in FIG. 1. The in-vehicle device DB32b is a database that stores the configurations related to in-vehicle devices that can be added to the vehicle 1, and stores the configurations of a plurality of in-vehicle devices in association with, for example, the device names, device types, or product numbers of the in-vehicle devices. The in-vehicle device DB32b stores information related to the configuration of the expansion ECU3 connected to the expansion IF53 in the case of the vehicle 1 shown in FIG. 1, for example.

[0103] The scenario generation unit 132 performs a process of generating a simulation scenario 146 based on the information stored in the vehicle DB32c and the in-vehicle device DB32b and the information stored in the use case DB142. The use case DB142 is an operation database that stores the correspondence between various operations performed on the vehicle 1 and the events that occur in these operations in association with, for example, the vehicle type of the vehicle 1.

[0104] The scenario execution unit 133 performs a simulation by executing the scenario 146 based on the network model 145 generated by the model generation unit 131 and the scenario 146 generated by the scenario generation unit 132. For example, the scenario execution unit 133 inputs input data according to the scenario 146 to the network model 145, and acquires the output data output by the network model 145 according to this input data. The scenario execution unit 133 manages the time in the simulation, and repeatedly inputs and outputs data to the network model 145 according to the passage of time, thereby executing the scenario 146. In addition, the scenario execution unit 133 acquires information such as the internal state of the network model 145 that changes with the execution of the scenario. The scenario execution unit 133 outputs these information obtained by the execution of the scenario 146 as an operation log 147.

[0105] Based on the operation log 147 output by the scenario execution unit 133, the verification device 13 calculates the load rate, delay time, etc. of the network model 145, and determines whether the calculated values meet a predetermined standard. The verification device 13 determines that a positive verification result is obtained when the calculated values meet the standard, and determines that a negative verification result is obtained when the standard is not met.

[0106] FIG. 8 is a schematic diagram for explaining an example of the network model 145 generated by the model generation unit 131. The illustrated network model 145 illustrates a part of the configuration of the vehicle 1 shown in FIG. 1 modeled. The illustrated network model 145 includes, for example, a virtual gateway that virtually reproduces the gateway 11 of the vehicle 1, and virtual ECUs that virtually reproduce the meter ECU 51, the brake ECU 52, and the like. The network model 145 includes information on these virtual communication devices such as the virtual gateway and the virtual ECU, and virtual communication lines connecting them.

[0107] For the virtual communication devices of the network model 145, information such as, for example, the number of communication ports, the type of communication ports, the amount of mounted memory, and the CPU processing capacity is set. Further, the internal states of the virtual communication devices, such as, for example, the power state, the presence or absence of a failure state, the passage of time, and the CPU state, are managed.

[0108] In addition, for each virtual communication device, the operations to be performed in the simulation are set respectively. In the network model 145 of FIG. 8, the operations of the virtual gateway are illustrated by functional blocks. In the virtual gateway of this example, for example, the receiving unit receives the data transmitted from the virtual ECU and stores it in the reception buffer. The relay unit acquires the data from the reception buffer, determines the relay destination according to the routing map, stores the data in the relay buffer, and when the timing to transmit arrives, acquires the data from the relay buffer and stores it in the transmission buffer. The transmission unit sequentially transmits the data stored in the transmission buffer. The stored contents of the reception buffer, the relay buffer, and the transmission buffer of the illustrated virtual gateway are treated as the internal state information of the virtual gateway in the simulation.

[0109] FIG. 9 is a schematic diagram showing a configuration example of the use case DB 142. In the information processing system according to the present embodiment, it is possible to perform verification by simulation for a plurality of types of vehicles 1, and the use case DB 142 stores information regarding use cases for each vehicle type of the vehicle 1, for example. However, FIG. 9 shows an extraction of information for one vehicle type from the information stored in the use case DB 142.

[0110] The use case DB 142 according to the present embodiment is a database that stores, for each vehicle type, information such as "use case", "precondition", and "occurring event" in association with each other. The "use case" is an operation that can be performed by the vehicle 1 and is classified into types such as, for example, "when adding a function", "when connecting a battery", "unlocking from outside the vehicle in a parked state", "when starting the engine", "when starting driving", and "when the engine stops - getting out of the vehicle, locking".

[0111] The "preconditions" are information indicating the state of the vehicle 1 when the operation of the "use case" is performed, and the conditions that are the premise when simulating this "use case" are stored. For example, the "preconditions" for "when adding a function" are two: "all existing devices: power on, initialization completed" and "added device: power off, initialization not completed". Also, for example, the "preconditions" for "when connecting the battery" are "all existing devices: power off, initialization not completed".

[0112] The "occurring events" are information arranging a plurality of events included in the operation of the "use case" in chronological order. The "occurring events" for "when adding a function" may include events such as "added device: power on", "added device: initialization start", "added device: initialization completed", "all existing devices: regular transmission start", and "added device: device registration sequence start". Also, the "occurring events" for "when connecting the battery" may include events such as "all existing devices: power on", "all existing devices: initialization start", "all existing devices: initialization completed", and "all existing devices: regular transmission start".

[0113] The scenario generation unit 132 according to the present embodiment generates a scenario for performing a simulation for all the "use cases" registered in the use case DB 142 regarding the vehicle 1 to be verified. The scenario generation unit 132 can generate, for example, for one "use case", an instruction to set the internal state of the network model 145 so as to satisfy the "preconditions", and time-series input data for the network model 145 for generating each event stored in chronological order in the "occurring events" as a scenario. Also, the scenario generation unit 132 can generate input data for an event based on the network and the structure of each device stored in the vehicle DB 32c and the in-vehicle device DB 32b.

[0114] FIG. 10 is a schematic diagram showing an example of Scenario 146. The scenario 146 generated by the scenario generation unit 132 according to the present embodiment associates information such as, for example, "time", "event type", "source", "destination", "ID", and "data length" as one step, and is a series of information in multiple steps arranged in time series.

[0115] The "time" of Scenario 146 is the simulation time managed by the scenario execution unit 133, and the event of this step is performed at the corresponding time of the simulation. The "event type" is the type of event performed in this step, and various event types such as "CAN transmission" or "user interrupt" can be set. The "source" can be set with the ID of the device that transmits data on the communication line in communication. The "destination" can be set with the ID of the device that receives data in communication. The "ID" is the ID attached to the transmitted and received data, and in the case of CAN communication, the CAN-ID can be used. The "data length" is the length of the transmitted and received data, and a numerical value in units such as bytes can be set.

[0116] The scenario execution unit 133 manages the time in the simulation and the states of each device included in the network, and performs the simulation by executing the events set in the scenario 146 generated by the scenario generation unit 132 step by step. The scenario execution unit 133 generates input data for the network model 145 generated by the model generation unit 131 based on the information of one step of the scenario 146. The scenario execution unit 133 inputs the generated data to the network model 145 and acquires the data output by the network model 145 accordingly. The scenario execution unit 133 also acquires the internal state of the network model 145 at this time. The scenario execution unit 133 stores the acquired information such as the output data and the internal state as the operation log 147.

[0117] Figs. 11 and 12 are schematic diagrams showing an example of the operation log 147. Note that Fig. 11 shows the operation log 147 regarding the communication bus included in the network model 145, and Fig. 12 shows the operation log 147 regarding the communication device included in the network model 145. In the present embodiment, the operation log 147 regarding the communication bus and the operation log 147 regarding the communication device are generated separately, but it is not limited thereto, and the operation logs 147 of the communication bus and the communication device may be combined into one.

[0118] In the operation log regarding the communication bus, information such as "time", "communication bus", "operation", and "ID" is stored in association. "Time" is the time in the simulation and corresponds to the "time" of the scenario 146. "Communication bus" can be set with the ID of the communication bus included in the network model 145. "Operation" can store information such as "start" or "end" as the operation state of the communication bus. "ID" is the ID attached to the data transmitted and received on the communication line.

[0119] In the operation log regarding the communication device, information such as "time", "communication device", "operation", and "ID" is stored in association. "Time" is the time in the simulation and corresponds to the "time" of the scenario 146. "Communication device" can be set with the ID of the communication device included in the network model 145. "Operation" can store information such as "transmission" or "reception" as the operation state of the communication device. "ID" is the ID attached to the data transmitted and received by the communication device.

[0120] In the present embodiment, the scenario 146 generated by the scenario generation unit 132 includes information for simulating, for example, all use cases stored in the use case DB 142. The scenario execution unit 133 executes all events included in the scenario 146 and performs simulations of all use cases on the network model 145. The operation log 147 output by the scenario execution unit 133 may include information such as the output data of the network model 145 or the internal state of the devices included in the network model 145 for all steps included in the scenario 146.

[0121] The verification processing unit 31c calculates the network load rate or communication delay based on the operation log 147 obtained as a result of the simulation. For example, for each communication bus included in the network model 145, the verification processing unit 31c calculates the ratio of the time during which data is transmitted and received on the communication bus with respect to the total simulation time, and can use the highest ratio among all communication buses or the average value of a plurality of ratios as the network load rate. Also, for example, the verification processing unit 31c calculates the time (delay time) from when all data transmitted and received in the simulation is transmitted from the source until it is received at the destination, and can use the maximum value or average value of a plurality of delay times calculated for all data as the network communication delay.

[0122] The verification processing unit 31c determines whether the calculated load factor or communication delay meets a predetermined standard, thereby determining whether the result of the verification by simulation is positive or negative. For example, when the load factor is 70% or less, the verification processing unit 31c determines that the result is positive, and when the load factor exceeds 70%, it determines that the result is negative. Also, for example, when the communication delay is 3 milliseconds or less, the verification processing unit 31c determines that the result is positive, and when the communication delay exceeds 3 milliseconds, it determines that the result is negative. Note that the value calculated by the verification processing unit 31c based on the operation log 147 may be other than the load factor or communication delay. Also, the above-mentioned thresholds of 70% for the load factor and 3 milliseconds for the communication delay are just examples and are not limited thereto. The designer or administrator of the information processing system according to the present embodiment can appropriately determine appropriate values in advance.

[0123] FIG. 13 is a flowchart showing an example of the procedure of the simulation verification process performed by the server device 3 according to the present embodiment. The model generation unit 131 of the verification processing unit 31c of the server device 3 according to the present embodiment acquires information about the additional devices stored in the in-vehicle device DB 32b based on the identification information of the additional devices obtained from the vehicle 1 and the like (step S31). Also, the model generation unit 131 acquires information about the vehicle 1 stored in the vehicle DB 141, for example, information about the devices and communication lines constituting the network of the vehicle 1, based on the identification information of the vehicle 1 obtained from the vehicle 1 and the like (step S32). The model generation unit 131 generates a network model 145 for performing simulation verification based on the information acquired in steps S31 and S32 (step S33).

[0124] Also, the scenario generation unit 132 of the verification processing unit 31c acquires the use cases stored in the use case DB 142 (step S34). The scenario generation unit 132 generates a scenario 146 for simulation verification based on the information acquired in steps S31 and S32 and the use cases acquired in step S34 (step S35).

[0125] The scenario execution unit 133 of the verification processing unit 31c acquires information for one step from the scenario 146 generated in step S35 (step S36). The scenario execution unit 133 inputs the input data generated based on the information acquired in step S36 to the network model 145 generated in step S33 (step S37). The scenario execution unit 133 acquires information such as the data output by the network model 145 according to the data input in step S37 and the internal state of the network model 145 at this time (step S38). The scenario execution unit 133 records the information acquired in step S38 as the operation log 147 (step S39).

[0126] The scenario execution unit 133 determines whether processing has been completed for all steps included in the scenario 146 (step S40). If processing has not been completed for all steps (S40: NO), the scenario execution unit 133 returns the processing to step S36, acquires information regarding the next step from the scenario 146, and repeats the same processing.

[0127] If processing has been completed for all steps of the scenario 146 (S40: YES), the verification processing unit 31c calculates the network load rate and communication delay based on the operation log 147 recorded in step S39 (step S41). The verification processing unit 31c compares the values of the load rate and communication delay calculated in step S41 with a predetermined standard (step S42). The verification processing unit 31c outputs a positive or negative verification result based on the comparison result in step S42 (step S43) and ends the processing.

[0128] As described above, in the information processing system according to the present embodiment, the verification processing unit 31c of the server device 3 verifies the communication of the network of the vehicle 1 by simulation, and updates the routing map when a positive verification result is obtained. Thereby, it can be expected that the information processing system verifies in detail the communication when the extended ECU 61 is added to the network of the vehicle 1 by simulation, and suppresses the occurrence of problems related to communication.

[0129] In this embodiment, the vehicle DB 141 stores information regarding the configuration of the network of vehicle 1. However, the present invention is not limited to this, and the generated network model 145 may be stored in the vehicle DB 141. The verification device 13 can update the network model 145 by adding a model for a newly added device to the network model 145 stored in the vehicle DB 141, and perform verification by simulation using the updated network model 145.

[0130] The information processing apparatus includes a computer configured to include a microprocessor, a ROM, a RAM, and the like. An arithmetic processing unit such as a microprocessor may read and execute a computer program including some or all of the steps of a sequence diagram or a flowchart as shown in FIGS. 4 and 6 from a storage unit such as a ROM or a RAM. The computer programs of these multiple devices can be installed from an external server device or the like respectively. Further, these computer programs are distributed in a state stored in a recording medium such as a CD-ROM, a DVD-ROM, or a semiconductor memory.

[0131] The embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The scope of the present disclosure is shown not by the above description but by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

[0132] <Supplementary Note> (Supplementary Note 1) An in-vehicle relay device having a relay unit that relays transmission and reception of data between a plurality of communication lines constituting a network in a vehicle, An acquisition unit that acquires information regarding an in-vehicle communication device provided outside the vehicle and for which a connection to the network has been detected; a creation unit that creates a routing map for determining a relay destination of data transmitted and received by an in-vehicle relay device mounted on the vehicle in the network based on the acquired information; a verification unit that verifies communication of the network by simulation using the created routing map; and an information processing apparatus having a transmission unit that transmits the routing map to the in-vehicle relay device when a positive verification result is obtained An information processing system comprising the same.

Explanation of Signs

[0133] 1 Vehicle (Information Processing System) 3 Server Device (In-Vehicle Information Processing Device, Computer) 10 Integrated ECU 11 Gateway (In-Vehicle Relay Device) 12 ADAS-ECU 21 Processing Unit 21a Gateway Processing Unit 21b ADAS Processing Unit 22 Storage Unit 22a Program (Computer Program) 22b Routing Map 23 Communication Unit 31 Processing Unit 31a Information Acquisition Unit (Acquisition Unit) 31b Routing Map Creation Unit (Creation Unit) 31c Verification Processing Unit (Verification Unit) 31d Routing Map Transmission Unit (Transmission Unit) 32 Storage Unit 32a Program (Computer Program) 32b In-Vehicle Device DB (Database) 32c Vehicle DB (Configuration Database) 33 Communication Unit 51 Meter ECU 52 Brake ECU 53 Expansion IF 54 Vehicle External Communication Device 61 Extended ECU (In-vehicle communication device) 62 Sensor 71 - 75 Communication lines 98, 99 Recording media 131 Model generation unit 132 Scenario generation unit 133 Scenario execution unit 142 Use case DB (Operation database) 145 Network model 146 Scenario 147 Operation log

Claims

1. An acquisition unit that acquires information regarding an in-vehicle communication device for which a connection has been detected with a network within a vehicle; A creation unit that creates a routing map for determining a relay destination of data transmitted and received by an in-vehicle relay device mounted on the vehicle in the network based on the acquired information; A verification unit that verifies communication of the network according to the created routing map by simulation; A transmission unit that transmits the routing map to the in-vehicle relay device when a positive verification result is obtained An information processing apparatus comprising:

2. The verification unit verifies, by the simulation, whether a load rate or communication delay in the network when the in-vehicle communication device is added satisfies a predetermined condition, The information processing apparatus according to claim 1.

3. Comprising a database that stores update information for a routing map regarding an in-vehicle communication device that can be connected to a network within the vehicle, The creation unit creates the routing map based on the update information read from the database based on the information acquired by the acquisition unit, The information processing apparatus according to claim 1.

4. When a negative verification result is obtained, the transmission unit transmits the routing map and causes the in-vehicle relay device to perform thinning of relays according to the priority of data, The information processing apparatus according to claim 1.

5. A model generation unit that generates a model of the network; A scenario generation unit that generates a scenario for the simulation; A scenario execution unit that performs input / output of data to / from the model according to the scenario Comprising: The verification unit performs verification based on the data input / output to / from the model and the internal state of the model, The information processing apparatus according to claim 1.

6. Comprising a configuration database that stores configuration information of an in-vehicle communication device and communication lines mounted on the vehicle, The model generation unit generates the model based on the configuration information stored in the configuration database and the configuration information of the in-vehicle communication device connected to the network, The information processing apparatus according to claim 5.

7. Comprising an operation database that stores the correspondence between the operations of the vehicle and the events occurring in each operation, The scenario generation unit generates the scenario that defines events occurring in time series based on the information stored in the operation database and the configuration information of the in-vehicle communication device connected to the network. The information processing apparatus according to claim 5.

8. In the scenario, events occurring in time series in the network are defined. The scenario execution unit generates data to be input to the model based on the time-series events defined in the scenario, inputs the generated data to the model, acquires the data output by the model in response to the input of the data and the internal state of the model when the data is output, and stores the acquired data and the internal state. The information processing apparatus according to claim 5.

9. The verification unit calculates a load rate or communication delay related to the communication of the network based on the data and the internal state stored by the scenario execution unit, and determines whether the simulation result is positive according to whether the calculated load rate or communication delay satisfies a predetermined criterion. The information processing apparatus according to claim 8.

10. An information processing apparatus acquires information about an in-vehicle communication device for which a connection to a network in a vehicle is detected, creates a routing map for determining a relay destination of data transmitted and received by the in-vehicle relay device mounted on the vehicle in the network based on the acquired information, verifies the communication of the network according to the created routing map by simulation, and transmits the routing map to the in-vehicle relay device when a positive verification result is obtained. An information processing method.

11. Causing a computer to acquire information about an in-vehicle communication device for which a connection to a network in a vehicle is detected, to create a routing map for determining a relay destination of data transmitted and received by the in-vehicle relay device mounted on the vehicle in the network based on the acquired information, to verify the communication of the network according to the created routing map by simulation, and to transmit the routing map to the in-vehicle relay device when a positive verification result is obtained A computer program for executing the process.