In-vehicle device, program, and information processing method
The in-vehicle device efficiently manages signal pins to multiple actuators using internal pins and virtualized environments, addressing inefficiencies in existing ECUs and ensuring stable control signal distribution.
Patent Information
- Application Number
- JP2021199440
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-08
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2041-12-08
AI Technical Summary
Existing in-vehicle ECUs do not efficiently manage signal pins when multiple actuators are connected, leading to inefficiencies in controlling signals to these actuators.
An in-vehicle device with a control unit and output processing unit connected via internal pins, where the number of internal pins is less than signal pins, allowing efficient control signal distribution to multiple actuators using virtualized environments and hardware processing units.
Enables efficient control of signal pins to multiple actuators, preventing mutual interference between programs and reducing the need for modifying existing programs, while maintaining control signal states.
Smart Images

Figure 0007729195000001 
Figure 0007729195000002 
Figure 0007729195000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an in-vehicle device, a program, and an information processing method. [Background technology]
[0002] A vehicle is equipped with a body ECU, which is an on-board ECU (Electronic Control Unit) that controls body-related devices such as a wiper drive device, interior and exterior lighting devices, door lock devices, and power windows (see, for example, Patent Document 1). The wiper drive device of Patent Document 1 includes an on-board ECU (body ECU) and is driven by a control program applied to the on-board ECU. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 2017-224926 Summary of the Invention [Problem to be solved by the invention]
[0004] However, in the in-vehicle ECU of Patent Document 1, when multiple actuators are connected to the in-vehicle ECU, no consideration is given to efficiently controlling the signal pins through which signals are sent from the in-vehicle ECU to each of these multiple actuators.
[0005] The present disclosure aims to provide an in-vehicle device, etc., that, when multiple actuators are connected to the in-vehicle device, efficiently controls signal pins through which signals are sent from the in-vehicle device to each of the multiple actuators. [Means for solving the problem]
[0006] An in-vehicle device according to one aspect of the present disclosure is an in-vehicle device that is mounted on a vehicle and has a plurality of actuators connected thereto, and includes a control unit that generates control signals for controlling the actuators, an output processing unit that outputs the control signals generated by the control unit via signal pins connected to each of the plurality of actuators, and internal pins that connect the control unit and the output processing unit and transmit the control signals, wherein the number of the internal pins is less than the number of the signal pins. [Effects of the Invention]
[0007] According to one aspect of the present disclosure, when multiple actuators are connected to an in-vehicle device, it is possible to provide an in-vehicle device that efficiently controls signal pins through which signals are sent from the in-vehicle device to each of the multiple actuators. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a schematic diagram illustrating a system configuration of an in-vehicle system according to a first embodiment. [Figure 2] 2 is a block diagram illustrating an example of the internal configuration of an in-vehicle device (integrated ECU) included in the in-vehicle system. FIG. [Figure 3] 10 is an explanatory diagram (VMID table) illustrating virtual environment information such as VMID. [Figure 4] 1 is an explanatory diagram (timing chart) illustrating an example of output states of internal pins and signal pins included in an in-vehicle device. [Figure 5] 4 is a flowchart illustrating the processing of a control unit and an output processing unit of the in-vehicle device. DETAILED DESCRIPTION OF THE INVENTION
[0009] [Description of the embodiment of the present invention] First, embodiments of the present disclosure will be listed and described. At least some of the embodiments described below may be combined in any desired manner.
[0010] (1) An in-vehicle device according to one aspect of the present disclosure is an in-vehicle device mounted on a vehicle and connected to a plurality of actuators, and includes a control unit that generates control signals for controlling the actuators, an output processing unit that outputs the control signals generated by the control unit via signal pins connected to each of the plurality of actuators, and internal pins that connect the control unit and the output processing unit and transmit the control signals, wherein the number of the internal pins is less than the number of the signal pins.
[0011] In this aspect, the in-vehicle device includes a control unit and an output processing unit that are communicatively connected via internal pins, and the number of signal pins provided in the output processing unit is greater than the number of internal pins. While the number of signal pins increases with the number of actuators connected to the in-vehicle device, the number of internal pins connecting the control unit and the output processing unit can be reduced to, for example, one internal pin, making it possible to reduce the number of internal pins to be less than the number of signal pins. Even when multiple actuators are connected to each of these multiple signal pins, the control unit outputs control signals to the output processing unit only from internal pins, so that the output processing unit outputs the control signals from appropriate signal pins. As a result, even when multiple actuators are connected to the in-vehicle device, the control unit that generates control signals for each of these multiple actuators only needs to output these control signals from internal pins, allowing efficient processing in the control unit. Because the output processing unit outputs control signals obtained from the control unit from appropriate signal pins, efficient control of the signal pins through which signals to each of the multiple actuators flow can be achieved.
[0012] (2) In an in-vehicle device according to one embodiment of the present disclosure, the output processing unit acquires the control signal output from the control unit via the internal pin, and outputs the acquired control signal from a signal pin to which an actuator to which the control signal is output is connected.
[0013] In this aspect, the output processing unit outputs a control signal from a signal pin connected to an actuator that is a destination of the control signal, in response to the control signal output from the control unit via the internal pin. That is, the output processing unit functions as a switching circuit that switches the connection between, for example, one internal pin and one of multiple signal pins, the signal pin to which the actuator that is the destination of the control signal is connected. Therefore, the internal pin and the signal pin to which the actuator that is the destination of the control signal is connected can be logically or physically connected and disconnected, and the connection state between the internal pin and the signal pin can be switched. The control signal output from the control unit is, for example, a high signal or a low signal. When a high signal is output from the control unit, a high signal is also output from the signal pin connected to the actuator that is the destination of the control signal, and when a low signal is output from the control unit, a low signal is also output from the signal pin. This allows efficient control of the signal pins through which signals sent to each of the multiple actuators flow, even when multiple actuators are connected to the in-vehicle device.
[0014] (3) An in-vehicle device according to one embodiment of the present disclosure includes a memory unit storing a plurality of programs corresponding to each of the plurality of actuators and a virtualized operating system launched by the control unit, and the control unit generates a plurality of virtual environments by launching the virtualized operating system, executes each of the plurality of programs using each of the generated virtual environments as an operating environment, and outputs the control signal generated by each of the plurality of programs.
[0015] In this aspect, a storage area accessible by a control unit of the in-vehicle device, such as a storage unit of the in-vehicle device, stores a plurality of programs corresponding to a plurality of actuators, and a virtualized operating system such as HV (HyperVisor) that is activated by the control unit. In this case, the control unit functions as a VM management unit (VM control panel) that manages the virtualized operating system. The control unit activates the virtualized operating system to generate a plurality of virtual environments (VMs: Virtual Machines), and each program is executed in each of the generated virtual environments. As a result, each program is executed in a different virtual environment, preventing mutual interference between these programs.
[0016] (4) In an in-vehicle device according to one embodiment of the present disclosure, the control unit switches the allocation of the internal pins for each of the multiple virtual environments and outputs a control signal generated by a program being executed in the virtual environment to which the internal pins are assigned.
[0017] In this embodiment, the control unit, functioning as a VM management unit of the virtualized operating system, switches the allocation of internal pins to each of the multiple virtual environments, for example, periodically or based on a predetermined allocation time table, thereby preventing conflicts in access to the internal pins by programs running in each virtual environment. For example, even if multiple programs executed by the control unit of an in-vehicle device aggregate or integrate individual programs that were previously executed by multiple in-vehicle ECUs, etc., mutual interference between these programs can be prevented by executing each aggregated program in a virtual environment that serves as a separate operating environment. Furthermore, by using internal pins to output control signals generated by each program, as in the case of execution by a conventional in-vehicle ECU, etc., programs that have the internal pins as their output destination can be reused in the in-vehicle device without modification. As described above, control signals generated by programs executed by the control unit, i.e., programs running in each virtual environment, and output to an output processing unit via internal pins are output by the output processing unit from signal pins connected to actuators to which the control signals are to be sent. Therefore, it is possible to integrate a plurality of programs used from a plurality of vehicle-mounted ECUs and to implement these programs in a single vehicle-mounted device without modifying the programs.
[0018] (5) In one embodiment of the in-vehicle device of the present disclosure, the control unit outputs virtual environment information indicating the virtual environment to which the internal pin is assigned, and the output processing unit identifies a signal pin that outputs the acquired control signal based on the virtual environment information output from the control unit, and outputs the control signal from the identified signal pin.
[0019] In this embodiment, the control unit, functioning as a VM management unit of the virtualized operating system, outputs virtual environment information, such as a VMID (virtual machine UUID), indicating the virtual environment to which the internal pin is assigned to the output processing unit. The program to be executed and the signal pin to which the actuator controlled by the program is connected are associated with each other and stored in the storage unit as, for example, table-format data (VMID table). The output processing unit acquires the virtual environment information (VMID) indicating the virtual environment to which the internal pin is currently assigned, identifies the signal pin (signal pin number) that outputs the control signal from the internal pin, and outputs the control signal from the identified signal pin. In this way, by identifying the signal pin that outputs the control signal based on the virtual environment information output from the control unit, the virtual environment management process by the control unit, the signal pin identification by the output processing unit, and the switching process for switching the connection between the identified signal pin and the internal pin can be synchronized and linked.
[0020] (6) In the in-vehicle device according to one aspect of the present disclosure, the output processing unit maintains the output state of the control signal from the identified signal pin based on the virtual environment information.
[0021] In this aspect, when the output processing unit outputs a control signal from a specified signal pin based on the acquired virtual environment information, it holds or maintains the output state of the control signal until the next time it acquires virtual environment information corresponding to the specified signal pin. As a result, even if the signal pin logically or physically connected to the internal pin is switched, the output state of the control signal from the signal pin is maintained, and the actuator connected to the signal pin can continue to be controlled by the control signal whose output state is maintained.
[0022] (7) In the in-vehicle device according to one aspect of the present disclosure, a second internal pin for transmitting the virtual environment information is provided between the control unit and the output processing unit.
[0023] In this embodiment, an internal pin through which a control signal to be sent to the actuator flows and a second internal pin for sending virtual environment information are provided between the control unit and the output processing unit, thereby preventing conflicts between the control signal and the virtual environment information from occurring in communication between the control unit and the output processing unit.
[0024] (8) In an in-vehicle device according to one aspect of the present disclosure, the output processing unit is configured as a hardware processing unit including a logic circuit.
[0025] In this embodiment, the output processing unit is configured as a hardware processing unit using logic circuits such as an ASIC (application specific integrated circuit) or an FPGA (field-programmable gate array), and therefore can perform processing related to switching the connection between internal pins and signal pins at high speed compared to a software processing unit using a microcomputer or the like.
[0026] (9) In an in-vehicle device according to one aspect of the present disclosure, the signal pin or the internal pin is configured as a GPIO.
[0027] In this embodiment, the signal pins provided in the output processing unit include GPIOs (general purpose input / output). Furthermore, the internal pins may also be configured with GPIOs. By inputting and outputting signals using GPIOs in this way, the control unit that executes the program can directly control the high / low state of the control signal.
[0028] (10) A program according to one aspect of the present disclosure is provided on a computer that is mounted on a vehicle, has a control unit connected to a plurality of actuators, and generates control signals for controlling the actuators, an output processing unit that outputs the control signals generated by the control unit via signal pins connected to each of the plurality of actuators, and has internal pins that are fewer than the number of signal pins and are used to connect the control unit and the output processing unit and transmit the control signals. The program causes the control unit to output the control signals via the internal pins and the output processing unit to output the control signals obtained via the internal pins from signal pins connected to actuators to which the control signals are to be output.
[0029] In this aspect, it is possible to provide a program that causes a computer to function as an in-vehicle device that efficiently controls signal pins through which signals sent to each of a plurality of actuators flow.
[0030] (11) An information processing method according to one aspect of the present disclosure includes a computer that is mounted on a vehicle, has a control unit connected to a plurality of actuators, and generates control signals for controlling the actuators; an output processing unit that outputs the control signals generated by the control unit via signal pins connected to each of the plurality of actuators; and has internal pins that connect the control unit and the output processing unit and are fewer in number than the signal pins for transmitting the control signals. The computer executes a process that causes the control unit to output the control signals via the internal pins and causes the output processing unit to output the control signals obtained via the internal pins from signal pins connected to actuators to which the control signals are to be output.
[0031] In this aspect, it is possible to provide an information processing method that causes a computer to function as an in-vehicle device that efficiently controls signal pins through which signals sent to each of a plurality of actuators flow.
[0032] [Details of the embodiments of the present disclosure] The present disclosure will be specifically described with reference to drawings showing embodiments thereof. An in-vehicle system S according to an embodiment of the present disclosure will be described below with reference to the drawings. Note that the present disclosure is not limited to these examples, but is defined by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.
[0033] (Embodiment 1) Hereinafter, embodiments will be described with reference to the drawings. FIG. 1 is a schematic diagram illustrating a system configuration of an in-vehicle system S according to the first embodiment. FIG. 2 is a block diagram illustrating an internal configuration of an in-vehicle device 1 (integrated ECU) included in the in-vehicle system S. The in-vehicle system S is configured with an in-vehicle device 1 (integrated ECU) mounted on a vehicle C as a main device, and the in-vehicle device 1 may be connected to a plurality of actuators 101 and may also be connected to an individual ECU 102. The individual ECU 102 may be arranged in each area of the vehicle C and connected to various sensors, etc. The individual ECU 102, for example, acquires (receives) a signal (input signal) output from a sensor and transmits a request signal generated based on the acquired input signal to the in-vehicle device 1.
[0034] The in-vehicle device 1 generates and outputs control signals to a plurality of actuators 101 directly connected to the in-vehicle device 1 itself (own device), and is, for example, an integrated ECU that functions as a central control device such as a vehicle computer. The in-vehicle device 1 (integrated ECU) and the individual ECUs 102 are communicably connected via an in-vehicle network, and may generate and output control signals to the plurality of actuators 101 in response to request signals transmitted from each of the plurality of individual ECUs 102.
[0035] The in-vehicle device 1 includes a control unit 2, a storage unit 5, an in-vehicle communication unit 6, and an output processing unit 4. The control unit 2, the storage unit 5, and the in-vehicle communication unit 6 are communicably connected via an internal bus or the like.
[0036] The control unit 2 and the output processing unit 4 are communicatively connected by an internal pin 31 and a second internal pin 32 configured by, for example, a GPIO. As will be described in detail later, the internal pin 31 corresponds to a data signal pin to which a control signal generated by a program executed in the virtual environment 21 is output and which is connected to a signal pin 43 specified according to the virtual environment 21. The second internal pin 32 corresponds to a control pin to which virtual environment 21 information output by the VM management unit 22 is output and which controls the output processing unit 4. The internal pin 31 and the second internal pin 32 are not limited to pin-shaped conductors and may be configured by, for example, a terminal, a land such as a conductive pattern provided on a circuit board, or a conductor such as a communication line.
[0037] The storage unit 5 is configured with a volatile memory element such as a RAM (Random Access Memory), a non-volatile memory element such as a ROM (Read Only Memory), an EEPROM (Electrically Erasable Programmable ROM), or a flash memory, or a combination of these storage devices, and stores a control program P (program product) and data to be referenced during processing in advance. The control program P (program product) stored in the storage unit 5 may be a control program P (program product) read from a recording medium 51 readable by the in-vehicle device 1. Alternatively, the control program P (program product) may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the storage unit 5.
[0038] The control program P includes, for example, a program (application) for controlling various actuators 101 such as a car air conditioner or door mirrors. Furthermore, the storage unit 5 stores, for example, a virtual operating system such as a hypervisor, and a management table (VMID table) for controlling and managing a plurality of virtual environments 21 (VMs: virtual machines) generated by the virtual operating system.
[0039] The control unit 2 is configured with a CPU (Central Processing Unit) or an MPU (Micro Processing Unit), and performs various control processes and arithmetic processes by reading and executing a control program P and data pre-stored in the storage unit 5. The control unit 2 includes, for example, a single-core single CPU, a single-core multiple CPU, a multi-core single CPU, and a multi-core multiple CPU. The control unit 2 may be configured with a microcomputer in which the CPU, the storage unit 5, and the like are packaged. Note that in this embodiment, a microcomputer without a memory management unit (MMU) can be used.
[0040] The control unit 2 functions as a VM management unit 22 (control panel) that performs overall management functions in the virtualized operating system by starting a virtualized operating system such as a hypervisor stored in the storage unit 5. The control unit 2 functioning as the VM management unit 22 generates multiple virtual environments 21 (VM1, VM2, etc.) based on a VMID table that is predetermined for managing the virtual environments 21. The control unit 2 (VM management unit 22) manages these virtual environments 21 by allocating usage times (time slices) of physical resources such as the internal pins 31 and the CPU to these generated virtual environments 21. Each program for controlling the various actuators 101 is executed using the generated virtual environment 21 as its operating environment. As a result, each program is executed in a different virtual environment 21, preventing mutual interference between these programs.
[0041] The in-vehicle communication unit 6 is an input / output interface that uses a communication protocol such as CAN (Controller Area Network) or Ethernet (registered trademark), and the control unit 2 communicates with individual ECUs 102 and the like that are connected to the in-vehicle network via the in-vehicle communication unit 6.
[0042] The output processing unit 4 includes a switching management unit 41, a state holding unit 42, and a plurality of signal pins 43, and is configured as a hardware processing unit using logic circuits such as an ASIC (application specific integrated circuit), a PLD (programmable logic device), or an FPGA (field-programmable gate array). A VMID table may be stored in a ROM included in the ASIC or FPGA. The output processing unit 4 and the control unit 2 are communicatively connected by an internal pin 31 and a second internal pin 32. An actuator 101 is connected to each of the plurality of signal pins 43 provided in the output processing unit 4.
[0043] The switching management unit 41 is configured, for example, by a multiplexer, and physically or logically connects the internal pin 31 to a signal pin 43 corresponding to the virtual environment 21 information (such as a VMID) output from the control unit 2 functioning as the VM management unit 22. The virtual environment 21 information output from the control unit 2 includes a VMID indicating an identification number of the virtual environment 21 (VM) or the number of the signal pin 43 (signal pin number). The switching management unit 41 may identify the signal pin 43 to be connected to the internal pin 31 based on the virtual environment 21 information by referring to a VMID table stored in a ROM such as an ASIC, as described above. In this way, the switching management unit 41 connects the internal pin 31 to the signal pin 43 to which the actuator 101, which is the output destination of a control signal generated and output by a program executed in the virtual environment 21 (VM) to which the internal pin 31 is assigned, is connected, in accordance with switching control by the control unit 2 (VM management unit 22).
[0044] The multiple signal pins 43 protrude from the switching management unit 41 and are configured by, for example, GPIOs. The actuator 101 is connected to each of the multiple signal pins 43 directly or via a harness such as a signal line. Each of the multiple signal pins 43 may be assigned a signal pin number to uniquely identify the signal pin 43. The signal pins 43 are not limited to pin-shaped conductors and may be configured by, for example, terminals, lands such as conductive patterns provided on a circuit board, or conductors such as communication lines.
[0045] The state-holding unit 42 is configured, for example, by a flip-flop, and is provided corresponding to each signal pin 43. The state-holding unit 42 may be provided between each signal pin 43 and the switching management unit 41. The state-holding unit 42 is configured to hold the output state of a control signal output from the internal pin 31 when the signal pin 43 and the internal pin 31 are connected by the switching management unit 41. That is, when the signal pin 43 and the internal pin 31 are connected by the switching management unit 41 and a high control signal is output from the internal pin 31, the state-holding unit 42 holds the state in which the high control signal is output even after the connection between the signal pin 43 and the internal pin 31 is released, i.e., the signal pin 43 and the internal pin 31 are physically or logically disconnected. This makes it possible to hold the output state of the control signal output from one signal pin 43 even after the switching management unit 41 switches one signal pin 43 connected to the internal pin 31 to another signal pin 43.
[0046] In the present embodiment, the output processing unit 4 is configured as a hardware processing unit using a logic circuit such as an ASIC, but is not limited to this. The output processing unit 4 may also be configured as a software processing unit using a microcomputer or the like including a CPU, like the control unit 2. The control unit 2 (virtual environment 21) that executes a program directly controls the high / low of a control signal by communicating with the control unit 2 and the output processing unit 4 using internal pins 31 such as GPIO, but is not limited to this. The control unit 2 and the output processing unit 4 may also communicate using serial communication such as UART / I2C / SPI, which does not directly control the communication protocol between the control unit 2 and the output processing unit 4 at the signal level.
[0047] 3 is an explanatory diagram (VMID table) illustrating virtual environment 21 information such as VMID. As described above, the storage unit 5 of the in-vehicle device 1 stores a management table (VMID table) for managing the allocation (scheduling) of utilization times (time slices) of the internal pins 31 and physical resources such as the CPU for each generated virtual environment 21 (VM). The control unit 2 functioning as the VM management unit 22 allocates (schedules) utilization times of the internal pins 31 and the CPU for each virtual environment 21 (VM) based on the VMID table.
[0048] The VMID table includes management items (fields), such as VMID, program name, allocated time, signal pin number, and actuator 101 name. The VMID item stores an identification number (ID) for uniquely identifying the generated virtual environment 21 (VM). The program name item stores the name of the program that is executed using the virtual environment 21 (VM) of the corresponding VMID as its operating environment. The allocated time item stores the usage time (time slice) of physical resources such as the internal pin 31 and CPU for the corresponding VMID.
[0049] The signal pin number field stores the number of the signal pin 43 to which the actuator 101, which is the output destination of the control signal generated by the program executed in the virtual environment 21 of the corresponding VMID, is connected. The actuator 101 name field stores the name of the actuator 101 connected to the signal pin 43 of the corresponding signal pin number.
[0050] 4 is an explanatory diagram (timing chart) illustrating the output states of the internal pin 31 and the signal pin 43 included in the in-vehicle device 1. In this timing chart, the horizontal axis indicates elapsed time, and the numbers on the horizontal axis indicate the numbers of states corresponding to the elapsed time.
[0051] The control unit 2 functions as a VM management unit 22 of the virtualized operating system by starting a virtualized operating system such as a hypervisor stored in the storage unit 5. The control unit 2 functioning as the VM management unit 22 generates a plurality of virtual environments 21 (VM1, VM2, etc.) based on a VMID table that is predetermined for managing the virtual environments 21, and manages these virtual environments 21 by allocating usage times (time slices) of physical resources such as the internal pins 31 and the CPU to these generated virtual environments 21. In the illustration of this embodiment, two virtual environments 21 (VM1, VM2) are illustrated, but it goes without saying that the number of virtual environments 21 is not limited to two and may be three or more.
[0052] The signal pins 43 are configured by two signal pins 43 (signal pin 43[1], signal pin 43[2]) corresponding to these two virtual environments 21 (VM1, VM2). The signal pin 43[1] corresponds to the virtual environment 21 (VM1). The signal pin 43[2] corresponds to the virtual environment 21 (VM2).
[0053] At the time of State 1, the virtual environment 21 (VM2) outputs a high control signal from the internal pin 31 of the control unit 2 by setting the internal pin 31 to high (setting the signal level to high). As illustrated in the present embodiment, immediately before the time of State 1, the VM management unit 22 operates the virtual environment 21 (VM2) to assign the internal pin 31, and further transmits virtual environment 21 information to the output processing unit 4 to connect the signal pin 43[2] corresponding to the virtual environment 21 (VM2) to the internal pin 31. As a result, the high control signal output from the virtual environment 21 (VM2) is output from the signal pin 43[2].
[0054] At the time of state 2, the VM management unit 22 switches control from the virtual environment 21 (VM2) to the virtual environment 21 (VM1). That is, the VM management unit 22 operates the virtual environment 21 (VM1) and assigns the internal pin 31. Furthermore, the VM management unit 22 sets the signal of the output processing unit 4 to be held. The VM management unit 22 restores the output of the internal pin 31 to the original state of the virtual environment 21 (VM1). In this embodiment, by restoring the output of the internal pin 31 to the original state of the virtual environment 21 (VM1), a low control signal is output from the internal pin 31. The output processing unit 4 holds the output state of the control signal output from the signal pin 43[2] corresponding to the virtual environment 21 (VM2) in accordance with the virtual environment 21 information output from the VM management unit 22 via the second internal pin 32. That is, even after control is switched to the virtual environment 21 (VM1), the state in which a high control signal is output from the signal pin 43[2] is held.
[0055] At the time of state 3, the virtual environment 21 (VM1) sets the internal pin 31 of the control unit 2 to high (sets the signal level high), thereby outputting a high control signal from the internal pin 31. As a result, the high control signal output from the virtual environment 21 (VM1) is output from the signal pin 43[1].
[0056] At the time of state 4, the virtual environment 21 (VM2) sets the internal pin 31 of the control unit 2 to low (sets the signal level low), thereby outputting a low control signal from the internal pin 31. The VM management unit 22 switched control from the virtual environment 21 (VM1) to the virtual environment 21 (VM2) immediately before the time of state 4. In conjunction with the switch of the virtual environment 21, the VM management unit 22 outputs virtual environment 21 information to the output processing unit 4 and connects the internal pin 31 and the signal pin 43[2]. As a result, the low control signal output from the virtual environment 21 (VM2) is output from the signal pin 43[2].
[0057] At the time of state 5, the VM management unit 22 switches control from the virtual environment 21 (VM2) to the virtual environment 21 (VM1). In conjunction with the switching of the virtual environment 21, the VM management unit 22 outputs virtual environment 21 information to the output processing unit 4, and connects the internal pin 31 and the signal pin 43[1].
[0058] At the time of state 6, the virtual environment 21 (VM1) sets the internal pin 31 of the control unit 2 to low (sets the signal level to low), thereby outputting a low control signal from the internal pin 31. As a result, the low control signal output from the virtual environment 21 (VM1) is output from the signal pin 43[1].
[0059] 5 is a flowchart illustrating the processing of the control unit 2 and the output processing unit 4 of the in-vehicle device 1. The control unit 2 and the output processing unit 4 of the in-vehicle device 1 steadily perform the following processing, for example, when the vehicle C is in a running state or a stopped state.
[0060] The control unit 2 allocates the internal pin 31 to one of the virtual environments 21 (VM) by referring to the VMID table stored in the storage unit 5 (S101). The control unit 2, which has started the virtualized operating system, also functions as the VM management unit 22 of the virtualized operating system. The control unit 2 functioning as the VM management unit 22 identifies the virtual environment 21 to which the internal pin 31 is currently allocated by referring to the VMID table, and allocates the internal pin 31, which is a physical resource, to the identified virtual environment 21. When allocating the internal pin 31 to the virtual environment 21, the control unit 2 (VM management unit 22) may operate a virtual machine, which is the virtual environment 21, and allocate the internal pin 31 to the virtual environment 21. In this way, the control unit 2 functioning as the VM management unit 22 manages the multiple virtual environments 21 created by allocating the internal pin 31 and the utilization time (time slice) of physical resources such as the CPU to the virtual environment 21.
[0061] The control unit 2 outputs, from the second internal pin 32, virtual environment 21 information (VMID) relating to the virtual environment 21 (VM) to which the internal pin 31 is assigned (S102). The control unit 2 functioning as the VM management unit 22 outputs, to the output processing unit 4, via the second internal pin 32, virtual environment 21 information (VMID) relating to the virtual environment 21 (VM) to which the internal pin 31 is currently assigned. The virtual environment 21 information is, for example, a VMID stored in a VMID table stored in the storage unit 5. Alternatively, the control unit 2 (VM management unit 22) may output, as virtual environment 21 information, a signal pin number corresponding to the VMID to the output processing unit 4 via the second internal pin 32.
[0062] The control unit 2 outputs, from the internal pin 31, a control signal generated by a program being executed in the virtual environment 21 (VM) to which the internal pin 31 is assigned (S103). As the control unit 2 (VM management unit 22) assigns the internal pin 31, which is a physical resource, to the virtual environment 21 (VM), the control signal generated by the program being executed in the virtual environment 21 is output from the internal pin 31. That is, each program being executed in the virtual environment 21 (VM) does not need to be aware of (avoid) contention in control, such as allocation to the same internal pin 31 (GPIO, etc.) as a physical resource. That is, it is possible to eliminate the need to arbitrate I / O access to the internal pin 31 between the virtual environments 21 (VMs). As a result, even if a program running in the virtual environment 21 as an operating environment is, for example, a program that was running on an in-vehicle ECU or the like and has been diverted (ported) to the in-vehicle device 1, the access mode to physical resources such as the internal pins 31 can be inherited from the operating environment of the conventional in-vehicle ECU or the like, so there is no need to modify or alter the program when making such a conversion.
[0063] The control unit 2 determines whether the time allocated to the virtual environment 21 (VM) has elapsed (S104). The control unit 2 determines whether the time allocated to the virtual environment 21 (VM) to which the internal pin 31 is currently allocated has elapsed, for example, by referring to the VMID table stored in the storage unit 5. Alternatively, if the time during which each virtual environment 21 (VM) operates, i.e., the utilization time (time slice) of the CPU or the like, is defined according to the allocated time stored in the VMID table, the control unit 2 may determine whether the utilization time of the CPU or the like has elapsed.
[0064] If the allocated time has not elapsed (S104: NO), the control unit 2 performs the loop process again to execute the process of S103, thereby continuing the state in which the control signal generated by the program being executed in the virtual environment 21 to which the internal pin 31 is currently assigned is output from the internal pin 31.
[0065] If the allocation time has elapsed (S104: YES), the control unit 2 performs the loop process again to execute the process of S101. As a result, the internal pin 31 is allocated to the virtual environment 21 (VM2) that is determined to be next in rank (second highest) to the virtual environment 21 (VM1) to which the internal pin 31 is currently allocated in the VMID table, and a control signal generated by the program being executed in the virtual environment 21 (VM2) can be output to the output processing unit 4 via the internal pin 31.
[0066] The output processing unit 4 acquires the virtual environment 21 information (VMID) from the control unit 2 (T101). The output processing unit 4 connects the internal pin 31 and the signal pin 43 according to the virtual environment 21 information (VMID) acquired from the control unit 2 (T102). The output processing unit 4 acquires the virtual environment 21 information including the VMID or the signal pin number from the control unit 2 via the second internal pin 32. The output processing unit 4 can identify the signal pin 43 corresponding to the control signal output via the internal pin 31 according to the virtual environment 21 information. That is, the output processing unit 4 performs processing such as switching the connection between the internal pin 31 and the signal pin 43 using the switching management unit 41 configured by, for example, a multiplexer, based on the virtual environment 21 information acquired from the control unit 2. As a result, the internal pin 31 and the signal pin 43 corresponding to the control signal output from the internal pin 31 are physically or logically connected.
[0067] The output processing unit 4 acquires a control signal from the control unit 2 via the internal pin 31 (T103). The output processing unit 4 outputs the acquired control signal from the signal pin 43 (T104). The output processing unit 4 outputs the control signal acquired from the control unit 2 via the internal pin 31 from the signal pin 43 connected to the internal pin 31 by a switching management unit 41 such as a multiplexer. An actuator 101 to be controlled by the control signal is connected to the signal pin 43 directly or via a harness such as a signal line. This allows the in-vehicle device 1 to drive the actuator 101 in response to the control signal.
[0068] The output processing unit 4 maintains the output state of the control signal from the signal pin 43 (T105). The output processing unit 4 maintains (holds) the output state of the control signal from the signal pin 43 by using the state holding unit 42 configured by, for example, a flip-flop or the like. As a result, the output state of the control signal from the signal pin 43 is maintained until the virtual environment 21 information (VMID) corresponding to the signal pin 43 is next output from the control unit 2. In other words, even while the internal pin 31 is connected to another signal pin 43, the output state of the control signal from the signal pin 43 is maintained. As a result, the in-vehicle device 1 can continue to drive the actuator 101 in accordance with the control signal.
[0069] The embodiments disclosed herein are to be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the claims, not by the above meaning, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]
[0070] C vehicle S In-vehicle system 1 On-vehicle device (integrated ECU) 2. Control Unit 21 Virtual Machine (VM) 22 VM Management Department 31 internal pins 32 Second internal pin 4 Output Processing Section 41 Switching Management Unit 42 State holding unit 43 signal pins 5 Storage section 51 Recording media P Control Program (Program Product) 6 In-vehicle communication unit 101 Actuator (ACT) 102 Individual ECU
Claims
1. An in-vehicle device mounted on a vehicle and connected to a plurality of actuators, a control unit that generates a control signal for controlling the actuator; an output processing unit that outputs the control signal generated by the control unit via signal pins connected to each of the plurality of actuators; an internal pin for connecting the control unit and the output processing unit and transmitting the control signal; the number of the internal pins is less than the number of the signal pins; a storage unit that stores a plurality of programs corresponding to the plurality of actuators, and a virtualized operating system that is started by the control unit; The control unit generating a plurality of virtual environments by booting the virtualized operating system; Executing each of the plurality of programs using each of the plurality of virtual environments thus generated as an operating environment; outputting the control signals generated by each of the plurality of programs; Switching the assignment of the internal pins for each of the plurality of virtual environments; Outputs a control signal generated by a program executed in a virtual environment to which the internal pin is assigned. In-vehicle device.
2. The output processing unit The control signal output from the control unit is acquired via the internal pin; The acquired control signal is output from a signal pin to which an actuator to which the control signal is output is connected. The in-vehicle device according to claim 1 .
3. the control unit outputs virtual environment information indicating a virtual environment to which the internal pin is assigned; The output processing unit Identifying a signal pin that outputs the acquired control signal based on the virtual environment information output from the control unit; The control signal is output from the specified signal pin. The in-vehicle device according to claim 1 or 2.
4. The output processing unit holds an output state of a control signal from the specified signal pin based on the virtual environment information. The in-vehicle device according to claim 3 .
5. A second internal pin for transmitting the virtual environment information is provided between the control unit and the output processing unit. The in-vehicle device according to claim 3 or 4.
6. The output processing unit is configured as a hardware processing unit including a logic circuit. The in-vehicle device according to any one of claims 1 to 5.
7. The signal pin or the internal pin is configured by a GPIO. The in-vehicle device according to any one of claims 1 to 6.
8. It is mounted on a vehicle and connected to multiple actuators. a control unit that generates a control signal for controlling the actuator; an output processing unit that outputs the control signal generated by the control unit via signal pins connected to each of the plurality of actuators; and internal pins, the number of which is less than the number of signal pins, for connecting the control unit and the output processing unit and transmitting the control signal. A computer comprising: causing the control unit to output the control signal via the internal pin; causing the output processing unit to output the control signal acquired via the internal pin from a signal pin connected to an actuator that is an output destination of the control signal; the computer includes a storage unit that stores a plurality of programs corresponding to the plurality of actuators, and a virtualized operating system that is activated by the control unit; The control unit generating a plurality of virtual environments by booting the virtualized operating system; Executing each of the plurality of programs using each of the plurality of virtual environments thus generated as an operating environment; outputting the control signals generated by each of the plurality of programs; Switching the assignment of the internal pins for each of the plurality of virtual environments; Outputting a control signal generated by a program executed in a virtual environment to which the internal pin is assigned. A program that executes a process.
9. It is mounted on a vehicle and connected to multiple actuators. a control unit that generates a control signal for controlling the actuator; an output processing unit that outputs the control signal generated by the control unit via signal pins connected to each of the plurality of actuators; and internal pins, the number of which is less than the number of signal pins, for connecting the control unit and the output processing unit and transmitting the control signal. A computer comprising: causing the control unit to output the control signal via the internal pin; causing the output processing unit to output the control signal acquired via the internal pin from a signal pin connected to an actuator that is an output destination of the control signal; the computer includes a storage unit that stores a plurality of programs corresponding to the plurality of actuators, and a virtualized operating system that is activated by the control unit; The control unit generating a plurality of virtual environments by booting the virtualized operating system; Executing each of the plurality of programs using each of the plurality of virtual environments thus generated as an operating environment; outputting the control signals generated by each of the plurality of programs; Switching the assignment of the internal pins for each of the plurality of virtual environments; Outputting a control signal generated by a program executed in a virtual environment to which the internal pin is assigned. An information processing method for executing processing.
Citation Information
Patent Citations
Electronic controller and electronic driving device
JP2004287475A
Chattering elimination circuit
JP2017224926A
Vehicular control device
WO2020255760A1