WO2021038636A1 - 検証装置、検証方法、及び、検証プログラム - Google Patents

検証装置、検証方法、及び、検証プログラム Download PDF

Info

Publication number
WO2021038636A1
WO2021038636A1 PCT/JP2019/033108 JP2019033108W WO2021038636A1 WO 2021038636 A1 WO2021038636 A1 WO 2021038636A1 JP 2019033108 W JP2019033108 W JP 2019033108W WO 2021038636 A1 WO2021038636 A1 WO 2021038636A1
Authority
WO
WIPO (PCT)
Prior art keywords
simulation
unit
data
past
past data
Prior art date
Application number
PCT/JP2019/033108
Other languages
English (en)
French (fr)
Inventor
拓真 折本
宙祥 平松
弘毅 伊藤
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2019/033108 priority Critical patent/WO2021038636A1/ja
Priority to JP2021540013A priority patent/JP6972442B2/ja
Publication of WO2021038636A1 publication Critical patent/WO2021038636A1/ja
Priority to US17/554,546 priority patent/US20220108052A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Definitions

  • the present invention relates to a verification device, a verification method, and a verification program.
  • Patent Document 1 a dedicated HW (Hardware) called HILS (Hardware in the loop simulator) is used, and a simulation having real-time responsiveness due to a small amount of calculation and a simulation having no real-time responsiveness due to a large amount of calculation amount.
  • a system is shown that outputs simulation results while ensuring real-time responsiveness by simultaneously executing a simulation in some cases.
  • the present invention provides real-time responsiveness to the electronic control device to be verified even when real-time responsiveness cannot be ensured in a simulation that may not be real-time responsive due to a large amount of calculation.
  • the purpose is to output the simulation results that can occur when the original simulation model is used while ensuring.
  • the verification device of the present invention The simulation implementation department that executes the simulation and A delay detection unit that detects a simulation that is performed by the simulation execution unit and has no real-time responsiveness as a delay simulation, A past data storage unit that stores past data related to simulations performed in the past by the simulation execution unit, and a past data storage unit.
  • the delay detection unit detects the delay simulation
  • the past data search unit for searching the past data corresponding to the delay simulation is provided.
  • the simulation result is included in the past data accumulated by the past data storage unit, and the simulation is performed by the original simulation model.
  • the simulation is performed by the original simulation model.
  • FIG. 1 The block diagram of the verification apparatus 2 which concerns on Embodiment 1.
  • the flowchart which shows the operation of the verification apparatus 2 which concerns on Embodiment 1.
  • FIG. 1 is a diagram showing a basic configuration of the verification device 2 according to the present embodiment.
  • the electronic control device 1 is an electronic control device to be verified by the verification device 2.
  • the electronic control device 1 performs signal input / output for controlling a machine such as a motor to be controlled.
  • the verification device 2 includes an input / output unit 3, a simulation execution unit 4, a delay detection unit 5, a past data search unit 6, a past data storage unit 7, and a condition setting unit 8. Be prepared.
  • the verification device 2 It is connected to the electronic control device 1 It is a device that verifies the function and / or performance of the electronic control device 1. It is possible to simulate the state and behavior of the motor or the like that is the control target of the electronic control device 1.
  • the connection method between the electronic control device 1 and the verification device 2 may be arbitrary.
  • the input / output unit 3 can take in the signal output by the electronic control device 1, and can output signals such as an analog sensor signal and a digital contact signal necessary for the operation of the electronic control device 1 to the electronic control device 1. ..
  • the input / output unit 3 can output the physical state or the like received from the simulation execution unit 4 to the electronic control device 1 as a signal.
  • the input / output unit 3 communicates with the electronic control device 1.
  • the simulation implementation unit 4 Simulation of the device to be controlled by the electronic control device 1 and the operating environment of the electronic control device 1 based on the signal received from the input / output unit 3 and the preset calculation formula and / or model.
  • the output data is sent to the input / output unit 3.
  • the output data includes a physical state as a specific example.
  • the simulation implementation unit 4 It may be possible to perform simulations based on multiple simulation models. Which simulation model to use may be determined based on the input data received from the input / output unit 3.
  • the simulation model adopted by the simulation execution unit 4 is called an original simulation model.
  • the delay detection unit 5 Monitor the progress of the simulation being carried out by the simulation implementation unit 4, It is determined whether or not the simulation is completed within a predetermined time limit from the start of the simulation.
  • this predetermined time limit is referred to as "request response time".
  • the user may be able to set the request response time.
  • the delay detection unit 5 may change the request response time by any method while the simulation execution unit 4 is executing the simulation.
  • the delay detection unit 5 If it is unlikely that the simulation performed by the simulation execution unit 4 will be completed within the requested response time, it is determined that the simulation does not have real-time responsiveness. In other cases, it is determined that the simulation has real-time responsiveness.
  • the case where the simulation is not expected to be completed within the request response time includes the case where the simulation is not actually completed within the request response time and the case where the simulation may not actually be completed within the request response time.
  • the past data search unit 6 searches for past data stored in the past data storage unit 7 and corresponding to the simulation carried out by the simulation execution unit 4.
  • the past data is the data accumulated in the past data search unit 6.
  • the past data storage unit 7 The simulation implementation unit 4 has accumulated past data related to the simulations performed in the past. As specific examples, the combination of the input data in the simulation performed by the simulation execution unit 4 in the past and the simulation result corresponding to the input data, the simulation result of the data of the sensor or the like controlled by the electronic control device 1, the simulation execution unit 4 Data corresponding to the input data when the electronic control device 1 is operated in the actual environment is accumulated without relying on the simulation of.
  • the past data stored in the past data storage unit 7 is typically input data used by the simulation execution unit 4 (signals output by the electronic control device 1, data in the surrounding environment of the verification device 2, etc.) and simulation.
  • the output data of the implementation unit 4 (the signal input to the electronic control device 1, the data of the surrounding environment of the verification device 2) and the internal state data of the simulation implementation unit 4.
  • the internal state is a state determined by variables used in the simulation, and includes calculation conditions of the simulation.
  • Data representing the internal state is called internal state data.
  • the past data storage unit 7 stores past data in a format that allows it to be known whether or not the past data corresponds to a simulation having real-time responsiveness.
  • Data A The result of the simulation performed by the simulation execution unit 4 using the data received from the electronic control device 1.
  • Data B The result of the simulation performed by the simulation execution unit 4 in real time or non-real time by connecting a simulator that simulates the operation of the electronic control device 1 to the verification device 2 and giving the input data of the operation sequence to the simulator.
  • Data C The operation log of the electronic control device 1 when the electronic control device 1 is operated in the original operating environment, and / or the data of the monitoring device connected to the electronic control device 1.
  • Data D A combination of input data and output data that is independent of the simulation of the simulation implementation unit 4, and is a combination of input data and output data prepared by the user.
  • Data A and data B typically include a calculation amount when the simulation execution unit 4 actually executes the simulation, and a simulation time.
  • Data C is It may include the amount of calculation assumed by the user and the simulation time.
  • the calculation amount of the data A or the data B similar to the data C, the calculation amount estimated from the simulation time, and the simulation time may be included.
  • Data D is the same as data C.
  • the condition setting unit 8 typically determines that the simulation execution unit 4 is based on the past data searched by the past data search unit 6.
  • the internal state of the simulation is reset and the output data output by the input / output unit 3 is set.
  • FIG. 2 is an example of HW (hardware) / SW (software) configuration of the verification device 2 according to the present embodiment.
  • the verification device 2 is composed of the HW 15 shown in this figure.
  • the verification device 2 is typically composed of a general-purpose PC (Personal Computer).
  • the processor 11 reads and executes the program stored in the memory 12 in the processing of the input / output unit 3, the simulation execution unit 4, the delay detection unit 5, the past data search unit 6, and the condition setting unit 8.
  • the HW 15 shows the hardware configuration of the first embodiment, and is composed of a processor 11, a memory 12, and an auxiliary storage device 13.
  • the processor 11 is a processing device that executes a verification program, an OS (Operating System), and the like.
  • the processing device is sometimes called an IC (Integrated Circuit), and the processor 11 is, for example, a CPU (Central Processing Unit), a DSP (Digital Signal Processor), and a GPU (Graphics Processing Unit).
  • the processor 11 is connected to the memory 12, temporarily stores the data necessary for the calculation, and / or stores the data, and reads and executes the program stored in the memory 12.
  • the verification device 2 in this figure includes only one processor 11, but the verification device 2 may include a plurality of processors that substitute for the processor 11. These plurality of processors share the execution of programs and the like.
  • the memory 12 is a storage device that temporarily stores data, and functions as a main memory used as a work area of the processor 11.
  • the memory 12 is a RAM (Random Access Memory) such as a SRAM (Static Random Access Memory) or a DRAM (Dynamic Random Access Memory).
  • the memory 12 holds the calculation result of the processor 11.
  • the auxiliary storage device 13 stores a verification program, various programs executed by the processor 11, SW16, data used when executing each program, and the like.
  • the past data storage unit 7 is composed of an auxiliary storage device 13.
  • the auxiliary storage device 13 is an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the auxiliary storage device 13 includes a memory card, an SD (Secure Digital, registered trademark) memory card, a CF (Compact Flash), a NAND flash, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD (registered trademark). It may be a portable recording medium such as Digital Versail Disc).
  • the communication IF (interface) 14 is an interface for communicating with other devices via the network, and executes a part of the processing of the input / output unit 3.
  • the communication IF14 is a port of Ethernet (registered trademark) or USB (Universal Serial Bus).
  • the communication IF 14 may have a plurality of ports.
  • SW16 shows the software configuration of the first embodiment, and the processing of the input / output unit 3, the simulation execution unit 4, the delay detection unit 5, the past data search unit 6, and the condition setting unit 8 is the memory 12. , OS19.
  • the OS 19 is loaded from the auxiliary storage device 13 by the processor 11, expanded into the memory 12, and executed on the processor 11.
  • the OS 19 may be any one compatible with the processor 11, such as Linux (registered trademark) or Windows (registered trademark).
  • the OS 19 and the SW 16 may be stored in the memory 12.
  • the past data storage unit 7 may be composed of the memory 12.
  • the operation procedure of the verification device 2 corresponds to the verification method. Further, the program that realizes the operation of the verification device 2 corresponds to the verification program.
  • the verification device 2 responds to the signal change with respect to the electronic control device 1 within the required response time from the time when the change in the output signal of the electronic control device 1 is detected so that the electronic control device 1 can operate appropriately. Decide to output the data to be output.
  • the verification device 2 may have different request response times depending on the function and / or characteristics of the electronic control device 1. As a specific example, the verification device 2 shortens the request response time when the electronic control device 1 is an inverter control device, and lengthens the request response time when the electronic control device 1 is a temperature control device.
  • FIG. 3 is an example of a time chart corresponding to the simulation of the simulation execution unit 4, and shows a case where all the simulations of the simulation execution unit 4 are completed within the required response time.
  • t n (n is an integer of 0 or more, the same applies hereinafter) is a change detection time point when the simulation executing unit 4 detects a change in the output signal of the electronic control device 1.
  • Each interval from the change detection time to the next change detection time does not have to be constant.
  • the smaller the subscript of t the more past the point in time.
  • vertical bar just below the t n corresponds to the t n
  • d n represents the time when the request response time has elapsed from the immediately preceding t n.
  • each t n is also called an input timing.
  • t n + 1 may be referred to as “next input timing”
  • t n + 1 may be referred to as “previous input timing”.
  • FIG. 4 is an example of a time chart corresponding to the simulation of the simulation execution unit 4, and shows a case where a part of the simulation of the simulation execution unit 4 is not completed within the requested response time. The way of reading this figure is the same as that of FIG.
  • the verification device 2 is an input corresponding to the simulation that is not completed within the requested response time in order to prevent the electronic control device 1 from outputting an inappropriate result.
  • the output data corresponding to the past simulation results is output.
  • the verification device 2 may prepare to output the output data instead of outputting the output data.
  • the past simulation result is the simulation result of the simulation performed in the past by the simulation execution unit 4. Therefore, the electronic control device 1 can receive appropriate data from the verification device 2.
  • the verification device 2 may output the output data corresponding to the past simulation result before the request response time elapses.
  • FIG. 5 is an example of a flowchart showing the operation of the verification device 2 according to the present embodiment. The order shown in this flowchart may be changed as appropriate. The operation of the verification device 2 will be described with reference to this figure. The verification device 2 continues the processing of this flowchart until the user stops the verification device 2.
  • Step S01 Signal acquisition process
  • the input / output unit 3 Acquire the signal from the electronic control device 1 and The input data included in the acquired signal is sent to the simulation execution unit 4.
  • the trigger for starting the process of this step may be arbitrary, and as a specific example, it may be a user operation.
  • the input / output unit 3 typically continues the processing of this step periodically in parallel with the following processing.
  • Step S02 Search start process
  • the past data search unit 6 starts searching for past data.
  • the past data search unit 6 executes the process of this step regardless of whether or not the delay detection unit 5 determines that the delay is in order to complete the search before the request response time elapses from the input timing.
  • the process started in this step is a process in which the past data search unit 6 searches from the past data storage unit 7 in the description of step S05.
  • the verification device 2 proceeds to the next step even if the past data search unit 6 has not completed the search for past data.
  • the past data search unit 6 executes the search process until the search for the past data is completed in parallel with the processing of the next and subsequent steps.
  • Step S03 Simulation start process
  • the simulation execution unit 4 executes the simulation using the input data received from the input / output unit 3.
  • Step S04 Monitoring process
  • the delay detection unit 5 Start the process of monitoring whether the simulation of the simulation execution unit 4 is completed within the requested response time, and start the process. When a predetermined condition is satisfied, it is determined that the delay, that is, the simulation does not end within the required response time.
  • the delay detection unit 5 typically monitors the simulation of the simulation execution unit 4 when the simulation execution unit 4 is executing the simulation even during the execution of the processing of the steps after this step.
  • the delay detection unit 5 determines that the delay is not only when the simulation time actually exceeds the request response time, but also when the simulation time may exceed the request response time.
  • the case where the delay detection unit 5 determines that the delay is determined may be expressed as "the simulation is delayed”, and the simulation determined by the delay detection unit 5 as being delayed may be expressed as "delay simulation”.
  • the delay detection unit 5 A simulation performed by the simulation execution unit 4 that does not have real-time responsiveness is detected as a delay simulation. That is, a simulation that is unlikely to be completed within the requested response time is detected as a delayed simulation.
  • the following four are examples of conditions under which the delay detection unit 5 determines to be a delay, that is, conditions under which the delay detection unit 5 detects the simulation of the simulation execution unit 4 as a delay simulation.
  • the condition that the delay detection unit 5 determines to be a delay may be a combination of a plurality of conditions.
  • Condition A The simulation is not completed when the request response time has elapsed. Under this condition, if the simulation is not completed when the request response time elapses from the start of the simulation, the delay detection unit 5 determines that the delay is achieved.
  • Condition B The progress rate according to the timing has not been reached at any timing within the request response time.
  • the delay detection unit 5 determines that the delay is achieved.
  • Condition C The input data and / or the internal state matches or resembles the input data and / or the internal state when the request response time has been exceeded in the past. In this condition, if the input data and / or the internal state matches or is similar to the input data and / or the internal state when the simulation time has been exceeded in the past, the delay detection unit 5 determines that the delay is achieved.
  • the input data and / or internal state according to this condition may be a part of the entire input data and / or internal state.
  • the delay detection unit 5 may use the search result of the past data search unit 6 in order to determine whether or not the simulation time exceeds the request response time.
  • Condition D The input data and / or the internal state conforms to a predetermined rule.
  • this condition states that the delay detection unit 5 delays when the input data and / or the internal state matches a predetermined rule, such as when a variable included in the input data changes from ON to OFF. It is a judgment.
  • the combination of conditions, the parameters related to the conditions, and the like may be those specified by the user of the verification device 2, or may be derived by the delay detection unit 5 using an arbitrary learning method.
  • step S05 If the delay detection unit 5 determines that there is a delay, the process proceeds to step S05. Otherwise, the process proceeds to step S09.
  • Step S05 Past data acquisition process
  • the past data search unit 6 determines whether or not the input data and / or the internal state corresponding to the simulation accumulated in the past data storage unit 7 matches or resembles the current input data and / or the internal state. ..
  • the current input data and / or internal state is the input data and / or internal state corresponding to the simulation performed by the simulation execution unit 4.
  • a method of judging by the degree of agreement between the current input data and / or the internal state data and the past input data and / or the internal state data A method of judging by the degree of agreement between the current input data and / or the internal state data and the past input data and / or the internal state data.
  • the algorithm used by the past data search unit 6 may be selected by the user according to the characteristics of the target electronic control device 1, and is the optimum algorithm obtained by the past data search unit 6 by learning. Is also good.
  • the condition setting unit 8 sets the found input data and / or the internal state data. Send to.
  • the past data is data C or data D, and the past data is simulated. There are cases where the internal state data of Part 4 is not included and cases where it is not sufficiently included.
  • step S6 If a past data based on the input data and / or the internal state data that matches or is similar to the current input data and / or the internal state data is found, the process proceeds to step S06. Otherwise, the process proceeds to step S08.
  • Step S06 Output processing
  • the condition setting unit 8 The past data search unit 6 extracts the input data sent and / or the output data based on the internal state data, and the output data accumulated by the past data storage unit 7 is extracted. Instruct the input / output unit 3 to output the extracted output data.
  • Step S07 Suspension determination process
  • the simulation execution unit 4 determines whether or not to interrupt the simulation being executed.
  • the conditions for determining whether or not the simulation execution unit 4 is interrupted may be arbitrary.
  • the simulation execution unit 4 typically instructs the input / output unit 3 to output the output data corresponding to the previous input timing at any timing within the request response time from the input timing corresponding to the interrupted simulation.
  • the condition setting unit 8 sets the internal state of the simulation of the simulation execution unit 4 by using the input data and / or the internal state data sent from the past data search unit 6.
  • step S03. the process proceeds to step S08.
  • Step S08 Simulation continuation processing
  • the simulation implementation unit 4 When the simulation being executed is completed, the simulation is performed by referring to the input data at the input timing next to the input timing corresponding to the completed simulation. Continue the process of this step until the simulation corresponding to the input timing is completed within the request response time from the input timing. If the simulation corresponding to the input timing is not completed within the request response time from the input timing, then at any timing from the input timing to the request response time, typically the output data corresponding to the latest completed simulation. Instruct the input / output unit 3 to output The input data received from the input / output unit 3 during the execution of the simulation is stored.
  • the simulation corresponding to t 0 , t 1 , t 2 was not completed within the requested response time.
  • the simulation execution unit 4 instructs the input / output unit 3 to output the output data corresponding to the input timing immediately before t 0 at d 0.
  • the simulation execution unit 4 instructs the input / output unit 3 to output the output data corresponding to t 1 at d 1. Since the simulation corresponding to t 2 is completed within the requested response time, the simulation executing unit 4 instructs the input / output unit 3 to output the output data corresponding to t 2 at d 3.
  • the simulation execution unit 4 may instruct the input / output unit 3 to output the output data after the completion of the simulation corresponding to t 2 and before d 3.
  • the simulation execution unit 4 continues the process in this step until the simulation is complete at t 3.
  • the simulation execution unit 4 interrupts the simulation and updates the internal state data or the like of the simulation to the internal state data or the like saved by the past data storage unit 7. It is considered that there is no delay in the simulation at the input timing corresponding to the interrupted simulation. After the next input timing, it operates in the same way as when there is no delay.
  • the simulation execution unit 4 When the simulation execution unit 4 is performing the simulation using the past data, if the input data from the electronic control device 1 deviates from the input data set in the condition setting unit 8.
  • the past data search unit 6 searches the past data and After that, the condition setting unit 8 may set the output data and the internal state of the simulation of the simulation execution unit 4 by using the past data detected by the past data search unit 6.
  • the deviation of the input data from the electronic control device 1 from the input data set in the condition setting unit 8 occurs due to a change in the state of the electronic control device 1 due to a user operation or the like.
  • the simulation execution unit 4 may store the input data of the completed simulation, the internal state of the simulation, and the output data in the past data storage unit 7.
  • Step S09 Output processing
  • the simulation execution unit 4 obtains output data from the simulation result and sends the output data to the input / output unit 3.
  • the simulation execution unit 4 may store the input data of the completed simulation, the internal state of the simulation, and the output data in the past data storage unit 7.
  • the input / output unit 3 sends the output data received from the simulation execution unit 4 to the electronic control device 1.
  • the verification device 2 is Simulation implementation unit 4 that executes simulation, and A delay detection unit 5 that detects a simulation that is being performed by the simulation execution unit 4 and has no real-time responsiveness as a delay simulation.
  • the past data storage unit 7 that stores the past data related to the simulation performed in the past by the simulation execution unit 4 and When the delay detection unit 5 detects the delay simulation, the past data search unit 6 for searching the past data corresponding to the delay simulation is provided.
  • the delay detection unit 5 detects a simulation that is unlikely to be completed within the requested response time as a delay simulation.
  • the past data includes input data corresponding to the simulation performed in the past by the simulation execution unit 4.
  • the past data search unit 6 searches for past data including input data that matches or is similar to the input data corresponding to the simulation performed by the simulation execution unit 4.
  • the past data includes internal state data representing the internal state of the simulation performed in the past by the simulation execution unit 4.
  • the past data search unit 6 searches for past data including internal state data that matches or is similar to the internal state data of the simulation performed by the simulation execution unit 4.
  • the verification device 2 is A condition setting unit 8 for setting the internal state of the simulation of the simulation execution unit 4 using the internal state data is provided.
  • the condition setting unit 8 sets the internal state of the simulation of the simulation execution unit 4 by using the internal state data included in the past data searched by the past data search unit 6.
  • the simulation execution unit 4 performs a simulation of the controlled object of the electronic control device 1 connected to the verification device 2.
  • the past data includes input data corresponding to the simulation executed in the past by the simulation executing unit 4, output data corresponding to the simulation result executed based on the input data, and output data output to the electronic control device 1.
  • the past data search unit 6 searches for past data including input data that matches or is similar to the input data corresponding to the simulation performed by the simulation execution unit 4.
  • the input / output unit 3 outputs the output data included in the past data searched by the past data search unit 6 to the electronic control device 1.
  • Embodiment 1 *** Explanation of the effect of Embodiment 1 *** As described above, according to the present embodiment, even if the real-time responsiveness cannot be ensured by the original simulation model, the simulation result is included in the past data accumulated by the past data storage unit 7. Therefore, by using the simulation result of the original simulation model, it is possible to output the simulation result that can occur when the original simulation model is used while ensuring the real-time responsiveness of the simulation.
  • the verification device 2 may be composed of a plurality of devices.
  • the verification device 2 is composed of a device having a past data storage unit 7 and a device having a unit other than the past data storage unit 7 of the verification device 2 according to the present embodiment. Is also good.
  • the verification device 2 may be software that can be executed in a computer capable of communicating with the electronic control device 1.
  • step S03 the simulation execution unit 4 may start a plurality of simulations.
  • the delay detection unit 5 monitors all the simulations performed by the simulation execution unit 4 and monitors them.
  • the verification device 2 executes the processing after step S04 for each simulation performed by the simulation execution unit 4.
  • the verification device 2 When the past data search unit 6 does not find the matching or similar past data in step S05, the verification device 2 notifies the user by displaying on the screen that a simulation delay has occurred. You may. In this modification, the verification device 2 may be such that the user can confirm the notification and decide whether to continue or suspend the verification by the verification device 2.
  • step S05 the past data search unit 6 does not have to send the input data and / or the internal state data to the condition setting unit 8.
  • the past data search unit 6 may execute the process of step S06 instead of the condition setting unit 8.
  • step S07 the condition setting unit 8 does not set the simulation input data and / or the internal state data of the simulation execution unit 4.
  • step S05 the past data search unit 6 may send the found input data and / or the past data corresponding to the internal state to the condition setting unit 8.
  • the condition setting unit 8 is Without extracting the output data accumulated by the past data storage unit 7,
  • the input / output unit 3 is instructed to output the output data included in the past data received from the past data search unit 6.
  • step S08 the simulation execution unit 4 may interrupt the simulation being executed under any condition.
  • each functional component is realized by software has been described.
  • each functional component may be realized by hardware.
  • the verification device 2 When each functional component is realized by hardware, the verification device 2 includes an electronic circuit 17 instead of the processor 11. Alternatively, although not shown, the verification device 2 includes an electronic circuit 17 in place of the processor 11, the memory 12, and the auxiliary storage device 13.
  • the electronic circuit 17 is a dedicated electronic circuit that realizes the functions of each functional component (and the memory 12 and the auxiliary storage device 13). Electronic circuits are sometimes called processing circuits.
  • the electronic circuit 17 is assumed to be a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA (Gate Array), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array). Will be done.
  • Each functional component may be realized by one electronic circuit 17, or each functional component may be realized by being distributed in a plurality of electronic circuits 17.
  • the processor 11, the memory 12, the auxiliary storage device 13, and the electronic circuit 17 described above are collectively referred to as a "processing circuit Lee". That is, the function of each functional component is realized by the processing circuit.
  • the embodiment is not limited to the one shown in the first embodiment, and various changes can be made as needed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

検証装置(2)は、シミュレーションを実施するシミュレーション実施部(4)と、シミュレーション実施部(4)が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出する遅延検出部(5)と、シミュレーション実施部(4)が過去に実施したシミュレーションに関連する過去データを蓄積している過去データ蓄積部(7)と、遅延検出部(5)が遅延シミュレーションを検出した場合に、遅延シミュレーションに対応する過去データを検索する過去データ検索部(6)を備える。

Description

検証装置、検証方法、及び、検証プログラム
 この発明は、検証装置、検証方法、及び、検証プログラムに関する。
 自動車、空気調和機器等の電子制御機器の開発において、電子制御機器を搭載する装置が正しく動作するかを検証する必要がある。しかし、電子制御機器の制御対象であるモーター等の機器の準備、及び/又は、電子制御機器を動作させる環境条件の設定等が困難な場合がある。そして、その解決策として、シミュレーションとの連接による検証がある。
 検証の対象である電子制御機器の対向装置と、検証の対象である電子制御機器を動作させる環境との代替としてシミュレーションを用いる場合、シミュレーションの実時間応答性が課題となる。
 特許文献1では、HILS(Hardware in the loop simulator)と呼ばれる専用HW(Hardware)を用い、計算量が少ないために実時間応答性があるシミュレーションと、計算量が多いために実時間応答性がない場合のあるシミュレーションとを同時に実行することにより、実時間応答性を確保しながらシミュレーション結果を出力するシステムが示されている。
特開2008-165544号公報
 しかしながら、特許文献1の技術において、
 計算量が多いために実時間応答性がない場合のあるシミュレーションは、本来のシミュレーションモデルを使用したシミュレーションであり、
 本来のシミュレーションモデルを使用して実時間応答性を確保できなかった場合に、本来のシミュレーションモデルを簡略化したシミュレーションモデルを使用したシミュレーションによる結果を返すため、本来のシミュレーションモデルを使用した場合には起こり得ないシミュレーション結果を出力することがあるという課題があった。
 本発明は、計算量が多いために実時間応答性がない場合のあるシミュレーションが実時間応答性を確保できなかった場合であっても、検証の対象である電子制御機器に対する実時間応答性を確保しつつ、本来のシミュレーションモデルを使用した場合に起こり得るシミュレーション結果を出力することを目的とする。
 この発明の検証装置は、
 シミュレーションを実施するシミュレーション実施部と、
 前記シミュレーション実施部が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出する遅延検出部と、
 前記シミュレーション実施部が過去に実施したシミュレーションに関連する過去データを蓄積している過去データ蓄積部と、
 前記遅延検出部が前記遅延シミュレーションを検出した場合に、前記遅延シミュレーションに対応する前記過去データを検索する過去データ検索部を備える。
 本発明によれば、本来のシミュレーションモデルによって実時間応答性が確保できない場合であっても、過去データ蓄積部が蓄積している過去データに含まれるシミュレーション結果であって、本来のシミュレーションモデルによるシミュレーション結果を用いることによって、シミュレーションの実時間応答性を確保しつつ、本来のシミュレーションモデルを使用した場合に起こり得るシミュレーション結果を出力することができる。
実施の形態1に係る検証装置2の構成図。 実施の形態1に係る検証装置2のハードウェア構成図。 実施の形態1に係るシミュレーション実施部4のシミュレーションに対応するタイムチャート。 実施の形態1に係るシミュレーション実施部4のシミュレーションに対応するタイムチャート。 実施の形態1に係る検証装置2の動作を示すフローチャート。
 実施の形態1.
 以下、本実施の形態について、図面を参照しながら詳細に説明する。
***構成の説明***
 図1は、本実施の形態に係る検証装置2の基本的な構成を示した図である。
 電子制御機器1は、検証装置2の検証対象である電子制御機器である。電子制御機器1は、制御対象であるモーター等の機械を制御するための信号入出力を行う。
 本図に示すように、検証装置2は、入出力部3と、シミュレーション実施部4と、遅延検出部5と、過去データ検索部6と、過去データ蓄積部7と、条件設定部8とを備える。
 検証装置2は、
 電子制御機器1と接続されており、
 電子制御機器1の機能及び/又は性能等の検証を行う装置であり、
 電子制御機器1の制御対象であるモーター等の状態と、振る舞いと等を模擬することができる。
 電子制御機器1と、検証装置2との接続方法は、任意であって良い。
 入出力部3は、電子制御機器1が出力する信号を取り込むことができ、電子制御機器1の動作に必要なアナログセンサー信号、デジタル接点信号等の信号を電子制御機器1に出力することができる。
 入出力部3は、シミュレーション実施部4から受け取った物理状態等を、電子制御機器1に信号として出力することができる。
 入出力部3は、電子制御機器1と通信する。
 シミュレーション実施部4は、
 入出力部3から受け取った信号と、あらかじめ設定されている計算式及び/又はモデルと等に基づいて、電子制御機器1の制御対象である装置と、電子制御機器1の動作環境と等のシミュレーションを行うことにより、電子制御機器1に出力する出力データを求め、
 出力データを入出力部3に送る。
 出力データには、具体例として、物理状態が含まれる。
 シミュレーション実施部4は、
 複数のシミュレーションモデルに基づくシミュレーションを実行できても良く、
 入出力部3から受け取った入力データに基づいて、いずれのシミュレーションモデルを使用するか判断しても良い。
 シミュレーション実施部4が採用しているシミュレーションモデルを、本来のシミュレーションモデルと呼ぶ。
 遅延検出部5は、
 シミュレーション実施部4が実施しているシミュレーションの進捗状況を監視し、
 シミュレーションの開始から所定の限界時間内にシミュレーションが完了するか否かを判断する。
 以下、この所定の限界時間を「要求応答時間」と呼ぶ。
 ユーザーが要求応答時間を設定することができても良い。遅延検出部5は、シミュレーション実施部4がシミュレーションの実施中に要求応答時間を任意の方法により変更しても良い。
 遅延検出部5は、
 要求応答時間内にシミュレーション実施部4が実施しているシミュレーションが完了する見込みがない場合に、前記シミュレーションに実時間応答性がないと判断し、
 それ以外の場合に、前記シミュレーションに実時間応答性があると判断する。
 要求応答時間内にシミュレーションが完了する見込みがない場合は、要求応答時間内にシミュレーションが実際に完了しない場合と、要求応答時間内にシミュレーションが実際に完了しない可能性がある場合とを含む。
 過去データ検索部6は、過去データ蓄積部7に蓄積されている過去データであって、シミュレーション実施部4が実施しているシミュレーションに対応する過去データを検索する。
 過去データは、過去データ検索部6に蓄積されているデータのことである。
 過去データ蓄積部7は、
 シミュレーション実施部4が過去に実施したシミュレーションに関連する過去データを蓄積しており、
 具体例として、シミュレーション実施部4が過去に実施したシミュレーションにおける入力データと入力データに対応するシミュレーション結果との組み合わせ、電子制御機器1の制御対象であるセンサー等のデータのシミュレーション結果、シミュレーション実施部4のシミュレーションによらずに実環境において電子制御機器1を動作させた際の入力データに相当するデータを蓄積している。
 過去データ蓄積部7が記憶している過去データは、典型的には、シミュレーション実施部4が用いる入力データ(電子制御機器1が出力する信号、検証装置2の周辺環境のデータ等)と、シミュレーション実施部4の出力データ(電子制御機器1へ入力する信号、検証装置2の周辺環境のデータ)と、シミュレーション実施部4の内部状態データとである。
 内部状態は、具体例としては、シミュレーションが用いる変数により定まる状態のことであり、シミュレーションの計算条件を含む。内部状態を表すデータを内部状態データと呼ぶ。
 過去データ蓄積部7は、過去データを、実時間応答性があるシミュレーションに対応する過去データであるか否かが分かるような形式において蓄積している。
 過去データ蓄積部7が蓄積している過去データの例を、以下に示す。
データA:シミュレーション実施部4が電子制御機器1から受信したデータを用いて実施したシミュレーションの結果。
データB:検証装置2に電子制御機器1の動作を模擬するシミュレータを接続し、シミュレータが操作系列の入力データを与えることによりリアルタイム又は非リアルタイムにシミュレーション実施部4が実施したシミュレーションの結果。
データC:電子制御機器1を本来の動作環境において動作させた際の電子制御機器1の動作ログ、及び/又は、電子制御機器1に接続したモニタリング装置のデータ。
データD:シミュレーション実施部4のシミュレーションとは独立した入力データと出力データとの組み合わせであって、ユーザーが準備した入力データと出力データとの組み合わせ。
 データAと、データBとは、典型的には、シミュレーション実施部4が実際にシミュレーションを実施した際の計算量と、シミュレーション時間とを含む。
 データCは、
 ユーザーが想定する計算量と、シミュレーション時間とを含んでも良いし、
 データCに類似するデータA又はデータBの計算量と、シミュレーション時間とから類推した計算量と、シミュレーション時間とを含んでも良い。
 データDは、データCと同様である。
 条件設定部8は、遅延検出部5が要求応答時間内に計算が完了しないと判断した場合に、典型的には、過去データ検索部6が検索した過去データに基づいて、シミュレーション実施部4のシミュレーションの内部状態の再設定と、入出力部3が出力する出力データの設定とを実施する。
 図2は、本実施の形態に係る検証装置2のHW(ハードウェア)・SW(ソフトウェア)構成例である。
 検証装置2は、本図に示すHW15から構成される。
 検証装置2は、典型的には、汎用PC(Personal Computer)から構成される。
 入出力部3と、シミュレーション実施部4と、遅延検出部5と、過去データ検索部6と、条件設定部8との処理は、メモリ12に格納されたプログラムをプロセッサ11が読み出し実行する。
 HW15は、実施の形態1のハードウェア構成を示し、プロセッサ11と、メモリ12と、補助記憶装置13とから構成される。
 プロセッサ11は、検証プログラムと、OS(Operating System)と等を実行するプロセッシング装置である。プロセッシング装置は、IC(Integrated Circuit)と呼ぶこともあり、プロセッサ11は、具体例としては、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
 プロセッサ11は、メモリ12と接続されており、演算に必要なデータの一時記憶、及び/又は、データの保存を行い、メモリ12に格納されたプログラムを読み出して実行する。
 本図の検証装置2は、プロセッサ11を1つだけ備えているが、検証装置2は、プロセッサ11を代替する複数のプロセッサを備えていても良い。これら複数のプロセッサは、プログラムの実行等を分担する。
 メモリ12は、データを一時的に記憶する記憶装置であり、プロセッサ11の作業領域として使用されるメインメモリとして機能する。メモリ12は、具体例としては、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)等のRAM(Random Access Memory)である。メモリ12は、プロセッサ11の演算結果を保持する。
 補助記憶装置13は、検証プログラムと、プロセッサ11によって実行される各種プログラムと、SW16と、各プログラムの実行時に使用されるデータと等を記憶する。過去データ蓄積部7は、補助記憶装置13から構成される。補助記憶装置13は、具体例としては、HDD(Hard Disk Drive)又は、SSD(Solid State Drive)である。また、補助記憶装置13は、メモリカード、SD(Secure Digital、登録商標)メモリカード、CF(Compact Flash)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、又は、DVD(Digital Versatile Disk)等の可搬記録媒体であってもよい。
 通信IF(インタフェース)14は、ネットワークを介して他の機器と通信を行うためのインタフェースであり、入出力部3の処理の一部を実行する。
 通信IF14は、具体例としては、Ethernet(登録商標)、又は、USB(Universal Serial Bus)のポートである。なお、通信IF14は、複数のポートであっても良い。
 SW16は、実施の形態1のソフトウェア構成を示し、入出力部3と、シミュレーション実施部4と、遅延検出部5と、過去データ検索部6と、条件設定部8との処理は、メモリ12と、OS19とから構成される。
 OS19は、プロセッサ11によって補助記憶装置13からロードされ、メモリ12に展開され、プロセッサ11上で実行される。OS19は、具体例としては、Linux(登録商標)又はWindows(登録商標)等、プロセッサ11に適合する任意のもので良い。
 OS19と、SW16とは、メモリ12に記憶されていても良い。過去データ蓄積部7は、メモリ12から構成されても良い。
***動作の説明***
 検証装置2の動作手順は、検証方法に相当する。また、検証装置2の動作を実現するプログラムは、検証プログラムに相当する。
 検証装置2は、電子制御機器1が適切に動作することができるよう、電子制御機器1の出力信号の変化を検出した時点から要求応答時間内に、電子制御機器1に対して信号変化に対応するデータを出力することを決定する。
 検証装置2は、要求応答時間を電子制御機器1の機能及び/又は特性等によって異なるものとしても良い。検証装置2は、具体例として、電子制御機器1がインバーター制御機器である場合に要求応答時間を短くし、電子制御機器1が温度制御機器である場合に要求応答時間を長くする。
 図3は、シミュレーション実施部4のシミュレーションに対応するタイムチャートの例であり、シミュレーション実施部4の全てのシミュレーションが要求応答時間以内に完了した場合を表す。
 本図において、
 t(nは0以上の整数、以下同じ)は、シミュレーション実施部4が電子制御機器1の出力信号の変化を検出した変化検出時点であり、
 変化検出時点から次の変化検出時点までの各間隔は一定でなくても良く、
 tの添え字が小さいほど過去の時点であることを表しており、
 tの直下の縦棒は、各tに対応しており、
 dは、直前のtから要求応答時間が経過した時点を表しており、
 dの直下の破線による縦棒は、各dに対応しており、
 各tから右に延びる矩形は、シミュレーション実施部4がシミュレーションを実施している期間を表しており、
 矩形の長さは、シミュレーションの条件等によって変動する。
 入出力部3は、シミュレーション実施部4の全てのシミュレーションが要求応答時間内に完了した場合に、各シミュレーション結果に対応する出力データを電子制御機器1に出力することができる。
 各tを、入力タイミングとも呼ぶ。tに対してtn+1を“次の入力タイミング”、tn+1に対してtを“前の入力タイミング”と呼ぶこともある。
 図4は、シミュレーション実施部4のシミュレーションに対応するタイムチャートの例であり、シミュレーション実施部4の一部のシミュレーションが要求応答時間内に完了しない場合を表す。本図の見方は、図3と同様である。
 検証装置2は、シミュレーション実施部4のシミュレーションが要求応答時間内に完了しない場合、電子制御機器1に不適切な結果を出力することを防ぐため、要求応答時間内に完了しないシミュレーションに対応する入力タイミングから要求応答時間が経過した時点において、過去のシミュレーション結果に対応する出力データを出力する。検証装置2は、出力データを出力する代わりに、出力データを出力する準備をしても良い。過去のシミュレーション結果は、シミュレーション実施部4が過去に実施したシミュレーションのシミュレーション結果のことである。
 従って、電子制御機器1は、検証装置2から適切なデータを受信することができる。
 なお、検証装置2は、要求応答時間が経過する前に過去のシミュレーション結果に対応する出力データを出力しても良い。
 図5は、本実施の形態に係る検証装置2の動作を示すフローチャートの例である。
 本フローチャートに示す順序は、適宜変更しても良い。
 本図に従って、検証装置2の動作を説明する。
 検証装置2は、ユーザーによる検証装置2の停止動作等があるまで本フローチャートの処理を続ける。
(ステップS01:信号取得処理)
 入出力部3は、
 電子制御機器1からの信号を取得し、
 シミュレーション実施部4に、取得した信号に含まれる入力データを送る。
 本ステップの処理開始の契機は任意であって良く、具体例としては、ユーザーの操作であっても良い。
 入出力部3は、典型的には、周期的に下記の処理と並行して本ステップの処理を続ける。
(ステップS02:検索開始処理)
 過去データ検索部6は、過去データの検索を開始する。
 過去データ検索部6は、入力タイミングから要求応答時間が経過する前に検索を終えるために、本ステップの処理を、遅延検出部5が遅延と判断するか否かに関わらず実施する。
 本ステップにおいて開始する処理は、ステップS05の説明の内、過去データ検索部6が過去データ蓄積部7から検索する処理である。
 検証装置2は、過去データ検索部6が過去データの検索を完了していなくても次のステップに進み、
 過去データ検索部6は、次以降のステップの処理と並行して、過去データの検索を完了するまで検索処理を実行する。
(ステップS03:シミュレーション開始処理)
 シミュレーション実施部4は、入出力部3から受け取った入力データを用いて、シミュレーションを実施する。
(ステップS04:監視処理)
 遅延検出部5は、
 シミュレーション実施部4のシミュレーションが要求応答時間内に完了するか否かを監視する処理を開始し、
 所定の条件を満たす場合に、遅延、即ち、シミュレーションが要求応答時間内に終わらないと判断する。
 遅延検出部5は、典型的には、本ステップ以後のステップの処理の実行中であっても、シミュレーション実施部4がシミュレーションを実施している場合、シミュレーション実施部4のシミュレーションを監視する。
 遅延検出部5は、シミュレーション時間が要求応答時間を実際に超過する場合のみならず、シミュレーション時間が要求応答時間を超過する可能性がある場合にも遅延と判断する。
 遅延検出部5が遅延と判断した場合を“シミュレーションが遅延した”と表現することもあり、遅延検出部5が遅延と判断したシミュレーションを“遅延シミュレーション”と表現することもある。
 遅延検出部5は、
 シミュレーション実施部4が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出する、
 即ち、要求応答時間内に完了する見込みがないシミュレーションを遅延シミュレーションとして検出する。
 遅延検出部5が遅延と判断する条件、即ち、遅延検出部5がシミュレーション実施部4のシミュレーションを遅延シミュレーションとして検出する条件の例として、以下の4つが挙げられる。遅延検出部5が遅延と判断する条件は、複数の条件を組み合わせたものであっても良い。
条件A:要求応答時間が経過した時点において、シミュレーションが完了していないこと。
 本条件は、シミュレーションの開始から要求応答時間が経過した時点においてシミュレーションが完了していない場合、遅延検出部5が遅延と判断するものである。
条件B:要求応答時間内の任意のタイミングにおいて、タイミングに応じた進捗率に達していないこと。
 本条件は、具体例として、シミュレーションの開始から要求応答時間の50%が経過した時点において全処理中の50%の処理を終えていないとき、遅延検出部5が遅延と判断するものである。
条件C:入力データ及び/又は内部状態が、過去に要求応答時間を超過した場合における入力データ及び/又は内部状態と一致又は類似すること。
 本条件は、入力データ及び/又は内部状態が過去にシミュレーション時間を超過した場合における入力データ及び/又は内部状態と一致又は類似する場合、遅延検出部5が遅延と判断するものである。
 本条件に係る入力データ及び/又は内部状態は、入力データ及び/又は内部状態全体の一部であって良い。
 遅延検出部5は、シミュレーション時間が要求応答時間を超過するか否かを判定するために、過去データ検索部6の検索結果を利用しても良い。
条件D:入力データ及び/又は内部状態が所定のルールに合致すること。
 本条件は、具体例として、入力データに含まれているある変数がONからOFFに変化した場合等、入力データ及び/又は内部状態が所定のルールに合致する場合、遅延検出部5が遅延と判断するものである。
 条件の組み合わせと、条件に関するパラメータと等は、検証装置2のユーザーが指定したものであっても良く、遅延検出部5が任意の学習方法を用いて導出したものであっても良い。
 検証装置2は、
 遅延検出部5が遅延と判断した場合、ステップS05に進み、
 それ以外の場合、ステップS09に進む。
(ステップS05:過去データ取得処理)
 過去データ検索部6は、過去データ蓄積部7が蓄積しているシミュレーションに対応する入力データ及び/又は内部状態が、現在の入力データ及び/又は内部状態に一致又は類似するか否かを判断する。
 現在の入力データ及び/又は内部状態は、シミュレーション実施部4が実施しているシミュレーションに対応する入力データ及び/又は内部状態のことである。
 過去データ検索部6が、入力データ及び/又は内部状態の一致又は類似を判断する方法の具体例としては、
 現在の入力データ及び/又は内部状態データと、過去の入力データ及び/又は内部状態データとの一致の度合いにより判断する方法、
 入力データ及び/又は内部状態データの項目ごとに値の差分に重みをつけた値を算出し、算出した値を合算した類似度を算出し、算出した類似度に基づいて判断する方法、
 任意のアルゴリズムにより過去のデータを用いて学習した特徴量を用いて判断する方法が挙げられる。
 過去データ検索部6が使用するアルゴリズムは、対象とする電子制御機器1の特徴に合わせてユーザーが選択したものであっても良く、過去データ検索部6が学習によって求めた最適なアルゴリズムであっても良い。
 過去データ検索部6は、現在の入力データ及び/又は内部状態データと一致又は類似する入力データ及び/又は内部状態データを発見した場合、発見した入力データ及び/又は内部状態データを条件設定部8に送る。
 なお、条件設定部8がシミュレーション実施部4に設定する入力データ及び/又は内部状態データがない場合の具体例として、過去データがデータC又はデータDである場合であって、過去データがシミュレーション実施部4の内部状態データを含まない場合と十分に含まない場合とが挙げられる。
 検証装置2は、
 現在の入力データ及び/又は内部状態データと一致又は類似する入力データ及び/又は内部状態データに基づく過去データを発見した場合、ステップS06に進み、
 それ以外の場合、ステップS08に進む。
(ステップS06:出力処理)
 条件設定部8は、
 過去データ検索部6が送られた入力データ及び/又は内部状態データに基づく出力データであって、過去データ蓄積部7が蓄積している出力データを抽出し、
 入出力部3に対して、抽出した出力データを出力するよう指示する。
(ステップS07:中断判断処理)
 シミュレーション実施部4は、実施中のシミュレーションを中断するか否かを判断する。シミュレーション実施部4が中断するか否かを判断する条件は、任意であって良い。
 シミュレーション実施部4が実施中のシミュレーションを中断すると判断した場合、
 シミュレーション実施部4は、典型的には、中断するシミュレーションに対応する入力タイミングから要求応答時間内のいずれかのタイミングにおいて、前の入力タイミングに対応する出力データを出力するよう入出力部3に指示し、
 条件設定部8は、過去データ検索部6から送られた入力データ及び/又は内部状態データを用いてシミュレーション実施部4のシミュレーションの内部状態を設定する。
 検証装置2は、
 シミュレーション実施部4が実施中のシミュレーションを中断する場合、ステップS03に進み、
 それ以外の場合、ステップS08に進む。
(ステップS08:シミュレーション継続処理)
 シミュレーション実施部4は、
 実施中のシミュレーションが完了したら、完了したシミュレーションに対応する入力タイミングの次の入力タイミングにおける入力データを参照してシミュレーションを実施し、
 入力タイミングに対応するシミュレーションが前記入力タイミングから要求応答時間内に完了するようになるまで本ステップの処理を続け、
 入力タイミングに対応するシミュレーションが前記入力タイミングから要求応答時間内に完了しない場合、前記入力タイミングから要求応答時間内のいずれかのタイミングにおいて、典型的には、最新の完了したシミュレーションに対応する出力データを出力するよう入出力部3に指示し、
 シミュレーションの実施中に入出力部3から受け取った入力データを記憶する。
 具体例として、シミュレーション実施部4が、図4に示すようにシミュレーションを実施した場合における本ステップの処理を説明する。
 入出力部3は、要求応答時間内にシミュレーションが完了していない場合、要求応答時間内に電子制御機器1に対して出力データを出力することができない。
 本図において、
 t,t,tに対応するシミュレーションが要求応答時間内に終わっておらず、
 シミュレーション実施部4は、dにおいて、tの1つ前の入力タイミングに対応する出力データを出力するよう入出力部3に指示し、
 シミュレーション実施部4は、dにおいて、tに対応する出力データを出力するよう入出力部3に指示し、
 シミュレーション実施部4は、tに対応するシミュレーションが要求応答時間内に終わったため、dにおいてtに対応する出力データを出力するよう入出力部3に指示する。
 シミュレーション実施部4は、tに対応するシミュレーションの完了後dより前に、出力データを出力するよう入出力部3に指示しても良い。
 本図に示す例の場合、tからtまでにおけるシミュレーションは入力タイミングから要求応答時間内に完了していないが、tにおけるシミュレーションは入力タイミングから要求応答時間内にシミュレーションが完了している。そのため、本例において、シミュレーション実施部4は、tにおけるシミュレーションが完了するまで本ステップの処理を継続する。
 シミュレーション実施部4は、シミュレーションを中断してシミュレーションの内部状態データ等を過去データ蓄積部7が保存していた内部状態データ等に更新した場合、
 中断したシミュレーションに対応する入力タイミングにおけるシミュレーションに遅延が発生していないものとみなし、
 次の入力タイミング以降において、遅延が無い場合と同様に動作する。
 シミュレーション実施部4が過去データを用いてシミュレーションを実施しているとき、電子制御機器1からの入力データが条件設定部8に設定されている入力データと乖離した場合、
 過去データ検索部6は過去データを検索し、
 条件設定部8は、以後、過去データ検索部6が検出した過去データを用いて出力データとシミュレーション実施部4のシミュレーションの内部状態とを設定しても良い。
 電子制御機器1からの入力データが条件設定部8に設定されている入力データと乖離することは、ユーザー操作等によって電子制御機器1の状態が変化すること等によって生じる。
 シミュレーション実施部4は、過去データ蓄積部7に、完了したシミュレーションの入力データと、そのシミュレーションの内部状態と、その出力データとを蓄積しても良い。
(ステップS09:出力処理)
 シミュレーション実施部4は、実施中のシミュレーションが完了したら、シミュレーション結果から出力データを求め、出力データを入出力部3に送る。
 シミュレーション実施部4は、過去データ蓄積部7に、完了したシミュレーションの入力データと、そのシミュレーションの内部状態と、その出力データとを蓄積しても良い。
 入出力部3は、シミュレーション実施部4から受け取った出力データを電子制御機器1に送る。
***実施の形態1の特徴***
 本実施の形態に係る検証装置2は、
 シミュレーションを実施するシミュレーション実施部4と、
 シミュレーション実施部4が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出する遅延検出部5と、
 シミュレーション実施部4が過去に実施したシミュレーションに関連する過去データを蓄積している過去データ蓄積部7と、
 遅延検出部5が遅延シミュレーションを検出した場合に、遅延シミュレーションに対応する過去データを検索する過去データ検索部6を備える。
 本実施の形態に係る検証装置2において、遅延検出部5は、要求応答時間内に完了する見込みがないシミュレーションを遅延シミュレーションとして検出する。
 本実施の形態に係る検証装置2において、
 過去データは、シミュレーション実施部4が過去に実施したシミュレーションに対応する入力データを含み、
 過去データ検索部6は、シミュレーション実施部4が実施しているシミュレーションに対応する入力データに一致又は類似する入力データを含む過去データを検索する。
 本実施の形態に係る検証装置2において、
 過去データは、シミュレーション実施部4が過去に実施したシミュレーションの内部状態を表す内部状態データを含み、
 過去データ検索部6は、シミュレーション実施部4が実施しているシミュレーションの内部状態データに一致又は類似する内部状態データを含む過去データを検索する。
 本実施の形態に係る検証装置2は、
 内部状態データを用いてシミュレーション実施部4のシミュレーションの内部状態を設定する条件設定部8を備え、
 条件設定部8は、遅延検出部5が遅延シミュレーションを検出した場合に、過去データ検索部6が検索した過去データが含む内部状態データを用いてシミュレーション実施部4のシミュレーションの内部状態を設定する。
 本実施の形態に係る検証装置2において、シミュレーション実施部4は、検証装置2に接続された電子制御機器1の制御対象のシミュレーションを実施する。
 電子制御機器1と通信する入出力部3を備え、
 過去データは、シミュレーション実施部4が過去に実施したシミュレーションに対応する入力データと、入力データに基づいて実施されたシミュレーション結果に対応する出力データであって、電子制御機器1に出力する出力データとを含み、
 過去データ検索部6は、シミュレーション実施部4が実施しているシミュレーションに対応する入力データに一致又は類似する入力データを含む過去データを検索し、
 入出力部3は、遅延検出部5が遅延シミュレーションを検出した場合に、過去データ検索部6が検索した過去データが含む出力データを電子制御機器1に出力する。
***実施の形態1の効果の説明***
 以上のように、本実施の形態によれば、本来のシミュレーションモデルによって実時間応答性が確保できない場合であっても、過去データ蓄積部7が蓄積している過去データに含まれるシミュレーション結果であって、本来のシミュレーションモデルによるシミュレーション結果を用いることによって、シミュレーションの実時間応答性を確保しつつ、本来のシミュレーションモデルを使用した場合に起こり得るシミュレーション結果を出力することができる。
<変形例1>
 検証装置2は、複数の装置から構成されていても良い。
 本変形例において、検証装置2は、具体例として、過去データ蓄積部7を有する装置と、本実施の形態に係る検証装置2の過去データ蓄積部7以外の部を有する装置から構成されていても良い。
<変形例2>
 検証装置2は、電子制御機器1と通信することができるコンピュータにおいて実行することができるソフトウェアであっても良い。
<変形例3>
 ステップS03において、シミュレーション実施部4は、複数のシミュレーションを開始しても良い。
 本変形例において、
 遅延検出部5は、シミュレーション実施部4が実施している全てのシミュレーションを監視し、
 検証装置2は、シミュレーション実施部4が実施しているシミュレーション毎にステップS04より後の処理を実行する。
<変形例4>
 ステップS05において、過去データ検索部6が一致又は類似する過去データを発見しなかった場合、検証装置2は、シミュレーションの遅延が発生していることを画面に表示すること等により、ユーザーに通知しても良い。
 本変形例において、検証装置2は、ユーザーがその通知を確認して検証装置2による検証を継続するか、中断するかを決定できるようなものであっても良い。
<変形例5>
 ステップS05において、過去データ検索部6は、入力データ及び/又は内部状態データを条件設定部8に送らなくても良い。
 本変形例において、
 過去データ検索部6が、条件設定部8の代わりにステップS06の処理を実行しても良く、
 条件設定部8は、ステップS07において、シミュレーション実施部4のシミュレーションの入力データ及び/又は内部状態データを設定しない。
<変形例6>
 ステップS05において、過去データ検索部6は、発見した入力データ及び/又は内部状態に対応する過去データを条件設定部8に送っても良い。
 本変形例において、条件設定部8は、
 過去データ蓄積部7が蓄積している出力データを抽出せず、
 入出力部3に対して、過去データ検索部6から受け取った過去データに含まれる出力データを出力するよう指示する。
<変形例7>
 ステップS08において、シミュレーション実施部4は、任意の条件によって実施中のシミュレーションを中断しても良い。
<変形例8>
 ステップS09において、シミュレーション実施部4がシミュレーションを実施している最中に遅延検出部5が遅延を検出した場合、検証装置2はステップS05に進んでも良い。
<変形例9>
 本実施の形態では、各機能構成要素をソフトウェアで実現する場合を説明した。しかし、変形例として、各機能構成要素はハードウェアで実現されても良い。
 各機能構成要素がハードウェアで実現される場合には、検証装置2は、プロセッサ11に代えて、電子回路17を備える。あるいは、図示しないが、検証装置2は、プロセッサ11、メモリ12、及び補助記憶装置13に代えて、電子回路17を備える。電子回路17は、各機能構成要素(及びメモリ12と補助記憶装置13)の機能を実現する専用の電子回路である。電子回路を、処理回路と呼ぶこともある。
 電子回路17は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)が想定される。
 各機能構成要素を1つの電子回路17で実現してもよいし、各機能構成要素を複数の電子回路17に分散させて実現してもよい。
 あるいは、一部の各機能構成要素がハードウェアで実現され、他の各機能構成要素がソフトウェアで実現されてもよい。
 前述したプロセッサ11とメモリ12と補助記憶装置13と電子回路17とを、総称して「プロセッシングサーキットリー」という。つまり、各機能構成要素の機能は、プロセッシングサーキットリーにより実現される。
***他の実施の形態***
 前述した実施の形態の任意の構成要素の変形、もしくは実施の形態において任意の構成要素の省略が可能である。
 また、実施の形態は、実施の形態1で示したものに限定されるものではなく、必要に応じて種々の変更が可能である。
 1 電子制御機器、2 検証装置、3 入出力部、4 シミュレーション実施部、5 遅延検出部、6 過去データ検索部、7 過去データ蓄積部、8 条件設定部、11 プロセッサ、12 メモリ、13 補助記憶装置、14 通信IF、15 HW、16 SW、17 電子回路、19 OS。

Claims (9)

  1.  シミュレーションを実施するシミュレーション実施部と、
     前記シミュレーション実施部が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出する遅延検出部と、
     前記シミュレーション実施部が過去に実施したシミュレーションに関連する過去データを蓄積している過去データ蓄積部と、
     前記遅延検出部が前記遅延シミュレーションを検出した場合に、前記遅延シミュレーションに対応する前記過去データを検索する過去データ検索部を備える検証装置。
  2.  前記遅延検出部は、要求応答時間内に完了する見込みがないシミュレーションを前記遅延シミュレーションとして検出する請求項1に記載の検証装置。
  3.  前記過去データは、前記シミュレーション実施部が過去に実施したシミュレーションに対応する入力データを含み、
     前記過去データ検索部は、前記シミュレーション実施部が実施しているシミュレーションに対応する入力データに一致又は類似する入力データを含む過去データを検索する請求項1又は2に記載の検証装置。
  4.  前記過去データは、前記シミュレーション実施部が過去に実施したシミュレーションの内部状態を表す内部状態データを含み、
     前記過去データ検索部は、前記シミュレーション実施部が実施しているシミュレーションの前記内部状態データに一致又は類似する前記内部状態データを含む前記過去データを検索する請求項1から3のいずれか1項に記載の検証装置。
  5.  前記内部状態データを用いて前記シミュレーション実施部のシミュレーションの内部状態を設定する条件設定部を備え、
     前記条件設定部は、前記遅延検出部が前記遅延シミュレーションを検出した場合に、前記過去データ検索部が検索した前記過去データが含む前記内部状態データを用いて前記シミュレーション実施部のシミュレーションの内部状態を設定する請求項4に記載の検証装置。
  6.  前記シミュレーション実施部は、前記検証装置に接続された電子制御機器の制御対象のシミュレーションを実施する請求項1から5のいずれか1項に記載の検証装置。
  7.  前記電子制御機器と通信する入出力部を備え、
     前記過去データは、前記シミュレーション実施部が過去に実施したシミュレーションに対応する入力データと、前記入力データに基づいて実施されたシミュレーション結果に対応する出力データであって、前記電子制御機器に出力する出力データとを含み、
     前記過去データ検索部は、前記シミュレーション実施部が実施しているシミュレーションに対応する入力データに一致又は類似する入力データを含む前記過去データを検索し、
     前記入出力部は、前記遅延検出部が前記遅延シミュレーションを検出した場合に、前記過去データ検索部が検索した前記過去データが含む出力データを前記電子制御機器に出力する請求項6に記載の検証装置。
  8.  シミュレーション実施部が、シミュレーションを実施し、
     遅延検出部が、前記シミュレーション実施部が実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出し、
     過去データ蓄積部が、前記シミュレーション実施部が過去に実施したシミュレーションに関連する過去データを蓄積しており、
     過去データ検索部が、前記遅延検出部が前記遅延シミュレーションを検出した場合に、前記遅延シミュレーションに対応する前記過去データを検索する検証方法。
  9.  過去に実施したシミュレーションに関連する過去データを蓄積しているコンピュータに、
     シミュレーションを実施させ、
     前記コンピュータが実施しているシミュレーションであって、実時間応答性がないシミュレーションを遅延シミュレーションとして検出させ、
     前記コンピュータが前記遅延シミュレーションを検出した場合に、前記遅延シミュレーションに対応する前記過去データを検索させる検証プログラム。
PCT/JP2019/033108 2019-08-23 2019-08-23 検証装置、検証方法、及び、検証プログラム WO2021038636A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2019/033108 WO2021038636A1 (ja) 2019-08-23 2019-08-23 検証装置、検証方法、及び、検証プログラム
JP2021540013A JP6972442B2 (ja) 2019-08-23 2019-08-23 検証装置、検証方法、及び、検証プログラム
US17/554,546 US20220108052A1 (en) 2019-08-23 2021-12-17 Verification device, verification method, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/033108 WO2021038636A1 (ja) 2019-08-23 2019-08-23 検証装置、検証方法、及び、検証プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/554,546 Continuation US20220108052A1 (en) 2019-08-23 2021-12-17 Verification device, verification method, and computer-readable recording medium

Publications (1)

Publication Number Publication Date
WO2021038636A1 true WO2021038636A1 (ja) 2021-03-04

Family

ID=74685018

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/033108 WO2021038636A1 (ja) 2019-08-23 2019-08-23 検証装置、検証方法、及び、検証プログラム

Country Status (3)

Country Link
US (1) US20220108052A1 (ja)
JP (1) JP6972442B2 (ja)
WO (1) WO2021038636A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022144820A (ja) * 2021-03-19 2022-10-03 パナソニックIpマネジメント株式会社 検証システム、検証方法及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305639A (ja) * 1996-05-10 1997-11-28 Hitachi Ltd シミュレーション方法および装置
JP2010277328A (ja) * 2009-05-28 2010-12-09 Medibic:Kk 配合設計用シミュレーションデータベース装置、配合設計用システム、方法およびプログラム
JP2012048615A (ja) * 2010-08-30 2012-03-08 Hitachi Chem Co Ltd 物質作用配合解析データ保存抽出機構
WO2013114570A1 (ja) * 2012-01-31 2013-08-08 株式会社日立製作所 性能モデル検査装置、方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305639A (ja) * 1996-05-10 1997-11-28 Hitachi Ltd シミュレーション方法および装置
JP2010277328A (ja) * 2009-05-28 2010-12-09 Medibic:Kk 配合設計用シミュレーションデータベース装置、配合設計用システム、方法およびプログラム
JP2012048615A (ja) * 2010-08-30 2012-03-08 Hitachi Chem Co Ltd 物質作用配合解析データ保存抽出機構
WO2013114570A1 (ja) * 2012-01-31 2013-08-08 株式会社日立製作所 性能モデル検査装置、方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022144820A (ja) * 2021-03-19 2022-10-03 パナソニックIpマネジメント株式会社 検証システム、検証方法及びプログラム
JP7336775B2 (ja) 2021-03-19 2023-09-01 パナソニックIpマネジメント株式会社 検証システム、検証方法及びプログラム

Also Published As

Publication number Publication date
JPWO2021038636A1 (ja) 2021-11-04
JP6972442B2 (ja) 2021-11-24
US20220108052A1 (en) 2022-04-07

Similar Documents

Publication Publication Date Title
KR101846427B1 (ko) 컴퓨팅 장치의 보안 부팅 기법
US8874953B2 (en) System and method of cloud testing and remote monitoring for integrated circuit components in system validation
US6110218A (en) Generation of multiple simultaneous random test cycles for hardware verification of multiple functions of a design under test
US20130166243A1 (en) Test device and method for testing stability of electronic devices
KR20090118863A (ko) 오퍼레이팅 시스템 메모리 핫 애드를 시뮬레이션하여 파워온 시간을 감소시키는 방법
WO2016206514A1 (zh) 启动处理方法及装置
US9239684B2 (en) Electronic device and method for testing redundant array of independent disks level
US10235259B2 (en) Memory overclocking method and computer device
US20150154029A1 (en) Electronic apparatus and operational method thereof
JP5263384B2 (ja) 情報処理装置における障害再現装置及び障害再現方法並びに障害再現プログラム
CN115827253B (zh) 一种芯片资源算力分配方法、装置、设备及存储介质
US20220358269A1 (en) Simulation execution system, simulation execution method, and computer readable medium
JP6972442B2 (ja) 検証装置、検証方法、及び、検証プログラム
TWI656453B (zh) 檢測系統及檢測方法
CN114049909A (zh) 硬盘性能自动化测试方法、装置、电子设备及存储介质
KR102315102B1 (ko) 가상 머신을 부팅하기 위한 방법, 장치, 기기 및 매체
AU2017438670B2 (en) Simulation device, simulation method, and simulation program
US20220300316A1 (en) Verification system, verification method, and recording medium
US9043586B2 (en) Memory training results corresponding to a plurality of memory modules
CN106547583B (zh) 一种操作系统安装方法以及装置
CN113672260A (zh) 一种处理器cpu初始化方法
KR101679477B1 (ko) 메모리 구동 주변 회로 검증시간을 단축하기 위한 임베디드 ddr 메모리를 이용한 검증 방법 및 시스템
WO2023238311A1 (ja) 検証システム及び検証方法
JP6949440B2 (ja) ベクタ生成装置及びベクタ生成用プログラム
US20210073634A1 (en) Server and control method thereof

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2021540013

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19943532

Country of ref document: EP

Kind code of ref document: A1