Information processing system, control system, method to be executed by information processing system, and program to be executed by information processing system
By separating functional logic into input, calculation, and output models, the system minimizes resource consumption and interference during software changes, ensuring adherence to time constraints.
Patent Information
- Application Number
- JP2024046823
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-22
- Publication Date
- 2025-10-03
AI Technical Summary
In systems where functional logic is realized by executing software, changing or adding new logic can consume system resources and risk violating time constraints for other functional logics, leading to interference and missed deadlines.
The system separates the functional logic into an input model, calculation model, and output model, allowing software changes or additions to be limited to the calculation model only, reducing resource consumption and interference.
This approach minimizes interference with other functional logics and adheres to time constraints by limiting software changes to the calculation model, reducing resource usage and maintaining system efficiency.
Smart Images

Figure 2025146183000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a technique for making changes to functional logic that is realized by executing software. [Background technology]
[0002] Functional logic that performs a predetermined function is realized by having an arithmetic processing device (e.g., a processor, an arithmetic core (CPU core), etc.) execute software (e.g., an executable program (e.g., binary code)). A plurality of functional logics can be realized in the system by allocating the resources of the system including the arithmetic processing device (e.g., the time resources of the arithmetic processing device) to software for realizing each of the functional logics.
[0003] Depending on the content of the functional logic, there may be strict time constraints on the execution of some or all of the functional logic. For example, there may be cases where the processing provided by a certain functional logic is required to be completed by a certain deadline. Or, there may be cases where a maximum allowable delay in the processing provided by a certain functional logic is set.
[0004] There may be cases where, for some reason (for example, due to a change in some situation), it is desired to change the function provided by one of the functional logics or to add new functional logic. Here, as described above, when the functional logic is realized by executing software (programs), it is possible to substantially change or add functional logic realized by the system (or processing unit) by changing the code of the software (programs) executed by the system (or processing unit), by adding new software (programs) as software (programs) executed by the system (or processing unit), or by changing some settings related to the execution of the software (programs).
[0005] Patent Document 1 is a prior art document relating to software changes. Patent Document 1 discloses that when a client has multiple software modules, each software module implements a self-management function, and when a new version of the module is placed on the server through the implementation of the self-management function, the program part of the module is replaced (changed, updated) with the program part of the module of the new version. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Japanese Patent Application Publication No. 10-254685 Summary of the Invention [Problem to be solved by the invention]
[0007] In a system including a processing unit that realizes functional logic by executing software (programs), when it becomes necessary to change a function provided by one of the functional logics or to add a new functional logic for some reason (for example, when some change in circumstances occurs), the resources of the system including the processing unit (for example, the time resources of the processing unit) are consumed in a series of processes to realize the change or addition. Specifically, in order to change the code of the software (program) executed in the system (or processing unit), add new software (program) as software (program) executed in the system (or processing unit), or change some setting related to the execution of the software (program), the system including the processing unit performs some series of processes and consumes the resources of the system including the processing unit (for example, the time resources of the processing unit).
[0008] Depending on the functional logic that is the target of the above-mentioned change or addition, there is a risk that the change or addition will interfere with the execution of other functional logics in relation to the amount of system resources (e.g., the time resources of the processing unit) consumed for the change or addition. Specifically, there is a risk that time constraints (e.g., deadlines) imposed on the other functional logics will not be met. Furthermore, there is a risk that time constraints imposed on the change or addition itself (e.g., a constraint that the change or addition must be enabled at a certain time) will not be met. For example, if the amount of software (program) code for the functional logic that is the subject of a change or addition increases, the processing time for various processes, including the process of generating the software, the process of deploying the software, and the process of performing the procedures until the software can start running, may increase, which could result in any of the time constraints mentioned above not being met.
[0009] The prior art disclosed in Patent Document 1 involves updating the program portion of a software module, but does not provide any particular suggestion regarding consideration of interference with other software modules other than the software module being updated, time constraints imposed on those other software modules, or time constraints imposed on the update itself.
[0010] In light of the above, one of the objectives of the present disclosure may be to minimize interference with the execution of each functional logic or adverse effects on time constraints when it is desired to change the function provided by one of the functional logics or to add new functional logic in a system in which functional logic is realized by executing software (programs). [Means for solving the problem]
[0011] In order to achieve at least one of the above objects, the present disclosure may have the following features, for example. One aspect of the present disclosure is an information processing system. The information processing system has a calculation processing device that realizes one or more functional logics. Each functional logic consists of an input model that processes input information, a calculation model that processes information resulting from the processing by the input model, and an output model that processes output information resulting from the processing by the calculation model. The calculation processing device realizes a calculation model function unit that is a functional unit for the calculation model by executing calculation model software that is software for the calculation model. The information processing system has a calculation model management unit that manages one or more calculation model function units corresponding to one or more functional logics in the calculation processing device. When the content of the processing realized by one of the functional logics is changed or when a new functional logic is to be realized by the calculation processing device, the calculation model management unit controls the calculation processing device to execute the changed calculation model software or new calculation model software for the calculation model included in the functional logic. [Effects of the Invention]
[0012] In recent years, the rules and protocols for exchanging information and data (or packets) between different systems, devices, and functional blocks are often standardized. Therefore, compared to the content of the original processing in which functional logic generates output information based on input information, the content of the first processing that is performed in response to input information being entered into functional logic and the content of the final processing that functional logic performs on output information are thought to change less frequently.
[0013] Therefore, the functional logic is assumed to consist of an input model, a calculation model, and an output model as described above. Then, when a change in the function provided by any of the functional logics or the addition of a new functional logic is required, the calculation model management unit controls the software for the calculation model so that the changed calculation model software or new calculation model software is used in the system. Here, among the three models that make up the functional logic, it is considered that the frequency of changes in the content of the processing that the input model and the output model realize is low compared to the frequency of changes in the content of the processing that the computation model realizes. Therefore, if the input model, computation model, and output model are handled separately as described above, when there is a demand to change the function provided by any of the functional logics or to add new functional logic, it is possible to often limit the target of software change (update) or addition to only the computation model.
[0014] When software changes (updates) or additions are limited to only the calculation model included in one functional logic, rather than the entire functional logic, it is possible to reduce the amount of various system resources (e.g., the time resources of the calculation processing device) required for the changed calculation model software or new calculation model software to become executable in an information processing system that includes the calculation processing device.
[0015] As a result, in a system in which functional logic is realized by executing software (programs), when it is desired to change the function provided by one of the functional logics or to add new functional logic, the present disclosure can reduce interference with the execution of each functional logic or adverse effects on time constraints.
[0016] Methods and programs that achieve the same processing as the above-mentioned system (information processing system) can also achieve the same effects as the above-mentioned system. In the form of a program, costs can often be reduced. Programs also make it easier to make design changes to the processing. Other features that the present disclosure may have and the effects corresponding to those features will be disclosed in this specification, claims, or drawings. [Brief explanation of the drawings]
[0017] [Figure 1] 1 illustrates a basic functional configuration of an embodiment of the present disclosure. [Figure 2]1 shows the system configuration of a control system that includes an information processing system. [Figure 3] 1 shows a computer architecture for realizing an information processing system. [Figure 4] 1 shows a flowchart of normal processing of the control system. [Figure 5] 10 shows a flowchart of processing such as changing a computation model function unit. [Figure 6] The three-phase process for modifying the computation model function unit is shown. [Figure 7] 10 shows a flowchart of the processing of the computation model function unit. [Figure 8] 10 shows a flowchart of updating processing time statistical information. [Figure 9] 10 shows a flowchart of a process for changing input / output associations. [Figure 10] An example of input / output mapping change is shown below. [Figure 11] The functional configuration of the planning system is shown below. [Figure 12] The functional configuration of the input model function unit and the output model function unit is shown. [Figure 13] The functional configuration of the computation model function unit is shown. [Figure 14] The functional configuration of the first phase section is shown below. [Figure 15] 10 shows a functional configuration of an allocation core determination unit. [Figure 16] The functional configuration of part of the second phase section and the third phase section is shown. [Figure 17] 10 shows a functional configuration of a processing time statistical information update unit. [Figure 18] 1 shows the functional configuration of an input / output change unit. [Figure 19] 1 shows the functional configuration of a relay system. [Figure 20] 1 shows a processing time management table. [Figure 21] 1 shows an allocation destination core table. [Figure 22] 1 shows a slot identification information table (slot ID table). [Figure 23] 1 shows a traffic management table. DETAILED DESCRIPTION OF THE INVENTION
[0018] Embodiments of the present disclosure will be described in detail below with reference to the drawings. Note that the embodiments described below do not limit the disclosure according to the claims, and not all of the elements and combinations thereof described in the embodiments are necessarily essential to the solutions of the present disclosure. The following description and drawings are examples for explaining the present disclosure, and appropriate omissions and simplifications have been made for clarity of explanation. The present disclosure can be implemented in various other forms. Unless otherwise specified, each component may be singular or plural. The position, size, shape, range, etc. of each component shown in the drawings may not represent the actual position, size, shape, range, etc., in order to facilitate understanding of the invention. Therefore, the present disclosure is not necessarily limited to the position, size, shape, range, etc. disclosed in the drawings. Each of the systems, devices, or functional units disclosed herein may be integrated into a single piece of hardware, or may be divided into multiple parts that work together to perform their functions. Several systems, devices, or functional units may be integrated into one hardware configuration. Each of the systems, devices, or functional units may be realized by causing a computer to execute software (programs) (as in FIG. 3). Some of the functions of the system, device, or functional unit may be realized by hardware (e.g., hardwired logic or a field programmable gate array (FPGA)), and the remaining functions may be realized by executing software (programs). All of the functions of each of the systems, devices, or functional units (excluding the computational model functional unit) may be realized by hardware. Some or all of the steps shown in the flowcharts, etc. described in this disclosure may be realized by hardware. One or more systems, devices, or functional units of the present disclosure may be realized using one or more hardware resources. For this purpose, each of the systems, devices, or functional units of the present disclosure may be realized virtually. For example, a virtual computer or container technique may be used. The program of the present disclosure may be included in the general concept of software that encompasses software in which software and hardware resources cooperate to construct a specific information processing system (system) or its operating method according to the intended use. In other words, the program of the present disclosure is not limited to a specific type or form of program. Furthermore, the program may be initially recorded in a compressed format. The same reference numbers are used in multiple drawings. In the drawings showing flowcharts, rectangular boxes represent processing steps, and hexagonal boxes represent conditional branching steps. In the drawings showing flowcharts, "step" is abbreviated as "S."
[0019] 1. Basic functional configuration (Figure 1) 1 shows a basic functional configuration 100 (and the information handled) of an information processing system according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in FIG. 1 are essential. Furthermore, the presence of functional configurations other than those shown in FIG. 1 is not prohibited.
[0020] The information processing system 101 includes a processing unit 301 (see FIG. 3). The processing unit 301 implements one or more functional logics 110. Each of the functional logics 110 is made up of an input model 111, an arithmetic model 113, and an output model 115. The input model 111 performs processing on input information 150. The arithmetic model 113 performs processing on information (input information 150) that is the result of processing by the input model 111, and generates output information 160 as the result of the processing. The output model 115 performs processing to output information (output information 160) that is the result of processing by the arithmetic model 113.
[0021] Here, even when the function provided by the function logic 110 is changed, it is assumed that the content of the processing of the input model 111 and the output model 115 will not be changed in many cases (except, for example, for changes in setting information related to input and output). Therefore, when a change in the function provided by one of the function logics or the addition of a new function logic is desired, in many cases (except, for example, for changes in setting information related to input and output), the function provided by the input model 111 or the output model 115 may not be changed. It is also assumed that the functions to be performed by the input model 111 and the output model 115 may be the same between function logics 110 that provide different contents of functions (except, for example, the contents of setting information related to input and output). Therefore, the input model 111 and the output model 115 may be standardized between function logics 110 that provide different contents of functions (except, for example, the contents of setting information related to input and output) (see FIG. 2). If the input model 111 and the output model 115 are standardized, there is no need to prepare a new input model 111 or output model 115 when realizing a new function logic 110 in the information processing system 101 (or in the arithmetic processing device 301 included in the information processing system 101).
[0022] The information processing system 101 (the calculation processing device 301 included therein) executes calculation model software 130 (calculation model SW), which is software for the calculation model 113, to thereby realize a calculation model function unit 1203 (see FIG. 2), which is a functional unit for the calculation model 113. Note that the calculation model function unit 1203 may be realized by software in this way, and some of the functions of the calculation model function unit 1203 may be realized by hardware. The information processing system 101 has a computation model management unit 1301. The computation model management unit 1301 manages the computation model function units 1203 corresponding to the respective function logics 110. When the content of the processing (function) realized by any of the functional logics 110 is changed, or when a new (additional) functional logic 110 is realized by the information processing system 101 (or the arithmetic processing device 301 included therein), (except for relatively rare cases where it is necessary to change the content of the processing of the input model 111 or the output model 115 (excluding, for example, changes to setting information related to input / output)), the calculation model management unit 1301 controls the information processing system 101 (or the arithmetic processing device 301 included therein) to execute the changed calculation model software or new calculation model software (reference number 231 in other drawings) for the calculation model software 130 (calculation model SW) for the calculation model 113 included in the functional logic 110 that is the target of the above-mentioned change or addition. Here, (in many cases) the computation model management unit 1301 targets only the computation model 113 for software changes or additions, and (except for, for example, changes to setting information related to input and output) does not target the input model 111 or the output model 115 for software changes or additions. Therefore, when the computation model management unit 1301 performs a series of processes for software changes or additions, it can be expected that interference with each process of the function logic 110 (for example, the process of the computation model 113) and adverse effects on time constraints will be reduced. Furthermore, if the software changes or additions can be limited to only the computational model 113 (computational model software 130) (if the input model 111 and output model 115 are not subject to software changes or additions), it is expected that the amount of computational resources used to execute the software generation process for the software that is subject to changes or additions will be reduced. When a system different from the information processing system 101 (for example, the planning system 1101 described below) executes software generation processing and transmits the generated software to the information processing system 101 (when downloading software from the perspective of the information processing system 101), it is expected that the amount of communication between the systems will be low if the only thing being transmitted and received is the calculation model software 130 (calculation model SW) that is software for the calculation model 113. Therefore, for example, it is also possible for a system different from the information processing system 101 (for example, the planning system 1101 described below) to collectively generate the calculation model software 130 (calculation model SW) for each of the multiple function logics 110, and to collectively transmit the generated multiple calculation model software 130 (calculation model SW) to the information processing system 101.
[0023] The information processing system 101 according to the embodiment of the present disclosure has the above-described functional configuration, and therefore can have the effects described in the above-described [Effects of the Invention].
[0024] 2. Overall system configuration (Fig. 2) 2 shows an overall system configuration 200 (and the information handled) of a control system 201 including the information processing system 101 according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in FIG. 2 are essential. Furthermore, the presence of functional configurations other than those shown in FIG. 2 is not prohibited. 2 will be described in detail in the section "4. Processing Performed by an Embodiment of the Present Disclosure." In the section "2. Overall System Configuration," an outline of the processing performed by the control system 201 will be described.
[0025] As shown in FIG. 2, the control system 201 may include a planning system 1101, a general information processing system 202, an interconnection mechanism 209, one or more relay systems 1901, one or more information providing devices 207, and one or more control target devices 208. The planning system 1101 and the general information processing system 202 may be capable of communicating with each other. The general information processing system 202 and the relay system 1901 may be capable of communicating with each other via the interconnection mechanism 209. Here, the interconnection mechanism 209 may be a network such as a wide area network (WAN) or a local area network (LAN). The interconnection mechanism 209 may be capable of transmitting and receiving communication packets. The relay system 1901 may function as, for example, a network switch. The relay system 1901 and the information providing device 207 may be capable of communicating with each other. The relay system 1901 and the control target device 208 may be capable of communicating with each other.
[0026] The broad information processing system 202 may include one or more information processing systems 101, a supervisory control and data acquisition system 203 (Supervisory Control and Data Acquisition (SCADA)), a human machine interface 204 (Human Machine Interface (HMI)), a gateway server 205 (Gateway (GW) Server), and a broad information processing system internal interconnection mechanism 206 (which may also be called a station bus). Any of the components of the broad information processing system 202 may be able to communicate with each other via the broad information processing system internal interconnection mechanism 206. Furthermore, the information processing system 101 may be what is called an intelligent electronic device (IED).
[0027] The information processing system 101 may include an input model function unit 1201, an input information storage area 1202, one or more computation model function units 1203, an output information storage area 1204, and an output model function unit 1205 as components for realizing the functional logic 110. The input model function unit 1201 is a function unit for the input model 111 included in the function logic 110. The input model function unit 1201 may be common to a plurality of function logics 110. The calculation model functional unit 1203 is a functional unit for the calculation model 113 included in the function logic 110. A separate calculation model functional unit 1203 may exist for each function logic 110. The example of FIG. 2 illustrates a calculation model functional unit for the calculation model 113 included in the function logic 110 that provides the function of a control unit (e.g., a unit that performs overall control of a physical system (e.g., a power transmission and distribution system or a digital substation) that is the target of control by the control system 201), and a calculation model functional unit for the calculation model 113 included in the function logic that provides the function of a protective relay. Naturally, there may be calculation model functional units 1203 other than those shown in FIG. 2. The output model function unit 1205 is a function unit for the output model 115 included in the functional logic 110. The output model function unit 1205 may be common to a plurality of functional logics 110. The input information storage area 1202 is a buffer area for transferring input information 150 from the input model function unit 1201 to the computation model function unit 1203. The output information storage area 1204 is a buffer area for transferring output information 160 from the computation model function unit 1203 to the output model function unit 1205. The input information storage area 1202 and the output information storage area 1204 may be implemented by a storage device 302 (memory) or a non-volatile recording medium 303 (recording device) in FIG. 3 described below.
[0028] The information processing system 101 may have a computation model management unit 1301 as a functional unit for controlling the computation model function unit 1203. The information processing system 101 may also have an input / output change unit 1801 as a functional unit for setting input / output relationships for control and for controlling the relay system 1901.
[0029] The control system 201 may be used to control some kind of physical system. For example, the object controlled by the control system 201 may be a power transmission and distribution system. More specifically, the object controlled by the control system 201 may be various devices owned by a facility called a digital substation. In the control system 201, in order to control a certain physical system, the information providing device 207 acquires information about the physical system, the information providing device 207 generates and outputs provided information 140 based on the acquired information, the relay system 1901 generates and outputs input information 150 based on the provided information 140, the information processing system 101 performs processing using the input information 150 and generates and outputs output information 160 which is the result of the processing, the relay system 1901 generates and outputs control information 170 based on the output information 160, and the controlled device 208 may control the physical system based on the control information 170. When the physical system to be controlled is a power transmission and distribution system or a digital substation, an example of the information providing device 207 is a merging unit (MU), an example of the provided information 140 is sensor data obtained by a sensor, an example of the controlled device 208 is a circuit breaker controller (CBC), an example of the control information 170 is opening and closing control information for a circuit breaker, and one of the functions performed by the information processing system 101 may be the function of a protective relay.
[0030] In response to changes in the status of the physical system to be controlled, it may be desirable to change the control content for the physical system and the settings of the input / output relationships for control during operation of the control system 201. For example, if the physical system to be controlled is a power transmission and distribution system or a digital substation, the status of power generation at a power generation facility or fluctuations in power consumption demand may be the status of the physical system to be controlled as described above. In recent years, power generation facilities using renewable energy such as solar power generation have become increasingly common, and the power generation status at these power generation facilities often changes from moment to moment. As a result, the power generation status at power generation facilities is becoming more susceptible to change. Furthermore, even within the control system 201, the operating status and whether the status is normal or abnormal may change for the systems, devices, functional units, interconnection mechanisms, etc. included in the control system 201. Therefore, it may be desirable to change the settings within the control system 201 (for example, input / output settings for control) during operation of the control system 201 in response to changes in the status of the control system 201.
[0031] Therefore, the planning system 1101 performs processing to determine and change the control details for the physical system and the settings of the input / output relationships for control. When the control content for the physical system is determined or changed, the planning system 1101 outputs deployment information 230. The deployment information 230 includes a changed or new computation model SW (reference number 231 in FIG. 2) related to the computation model software 130 (computation model SW) in FIG. 1. The planning system 1101 outputs input association instruction information 240 or output association instruction information 250 when the setting of an input / output relationship for control is determined or changed. Here, an example of input association as one of the input / output relationships for control is, for example, association between the information providing device 207 and the information processing system 101 and the function logic 110 (the computation model 113 (computation model function unit 1203) included therein). An example of output association as one of the input / output relationships for control is, for example, association between the information providing device 207, the information processing system 101, and the function logic 110 (the computation model 113 (computation model function unit 1203) included therein), and the control target device 208.
[0032] The deployment information 230 output by the planning system 1101 may be brought to the information processing system 101 via the gateway server 205 (GW server) and the broad information processing system internal interconnection mechanism 206, and may be made available to the computation model management unit 1301. The computation model management unit 1301 uses the deployment information 230 to execute a series of processes related to the modification or establishment of the computation model function unit 1203. The input association instruction information 240 or the output association instruction information 250 output by the planning system 1101 may be brought to the information processing system 101 via the gateway server 205 (GW server) and the broad information processing system intra-interconnection mechanism 206, and may be made available to the input / output change unit 1801. The input / output change unit 1801 uses the input association instruction information 240 or the output association instruction information 250 to execute a series of processes for setting and changing input / output relationships for control and for controlling the relay system 1901. Here, the input / output change unit 1801 generates and outputs input traffic setting information 260 or output traffic setting information 270 (abbreviated as "traffic setting information 260 / 270" in FIG. 2) based on the input association instruction information 240 or the output association instruction information 250. The relay system 1901 (network switch) rewrites the settings of the relay system 1901 itself (traffic management table 2300 (see Figures 19 and 23) described below) based on the input traffic setting information 260 or the output traffic setting information 270 (traffic setting information 260 / 270).
[0033] The deployment information 230, input association instruction information 240, and output association instruction information 250 output by the planning system 1101 may include time information indicating the time at which these pieces of information should be enabled in the control system 201. Therefore, in the control system 201, changes (updates) or new installations of the control contents of the computation model functional unit 1203, and settings or changes of input / output relationships for control can be enabled at desired times. It is also possible to synchronize the time at which changes (updates) or new installations of the control contents of the computation model functional unit 1203 are enabled with the time at which settings or changes of input / output relationships for control are enabled.
[0034] When performing processing to determine or change the control details for physical systems or the settings of input / output relationships for control, the planning system 1101 may obtain information used as decision material from the information providing device 207 or the general information processing system 202. For example, provided information 140 from the information providing device 207 or information obtained by processing the information processing system 101 using the provided information 140 (or input information 150 derived from the provided information) may be provided to the SCADA 203, and the SCADA 203 may report the provided information or information obtained by processing using the provided information to the planning system 1101. The planning system 1101 may perform processing using the reported information to generate deployment information 230, input association instruction information 240, and output association instruction information 250. Alternatively, the planning system 1101 may collect information indicating the operating status, normal or abnormal status, etc. of the systems, devices, functional units, interconnection mechanisms, etc. included in the control system 201. The planning system 1101 may generate the deployment information 230, input association instruction information 240, and output association instruction information 250 based on the collected information.
[0035] An example of the division of roles between the SCADA 203 and the information processing system 101 (IED) in the broad information processing system 202 may be as follows: The information processing system 101 (IED) may be responsible for automatic control of some physical system to be controlled (for example, a power transmission and distribution system or a digital substation), and the SCADA 203 or the human-machine interface 204 (HMI) may be responsible for control of the physical system that also involves human judgment (manual control). In other words, the human-machine interface 204 (HMI) may display information that will serve as material for human judgment, and the human who sees the display or the like may input the details of manual control via the human-machine interface 204 (HMI), and the SCADA 203 may perform control based on the input details of manual control.
[0036] 3. Computer Architecture for Implementing Embodiments of the Present Disclosure (FIG. 3) 3 shows a computer architecture 300 for realizing the information processing system 101 according to the embodiment of the present disclosure. The planning system 1101 and the relay system 1901 shown in FIG. 2 can also be realized by the same or similar computer architecture as that shown in FIG. To realize the information processing system 101, some or all of the processing unit 301, storage device 302, non-volatile recording medium (recording device) 303, external recording medium drive 304, input device 306, display or output device 307, communication device 308, external input / output port 309, and reading device 310 may be interconnected via an interconnection unit 311. (Note that some or all of the interconnection unit 311 may be a network. In that case, the information processing system 101 is realized by multiple devices connected via the network.) The arithmetic processing device 301 may be, for example, a processor. Examples of this processor include a CPU, an MPU, or a GPU. Alternatively, the processor referred to here may be any other semiconductor device that executes predetermined processing. The arithmetic processing device 301 may also be one or more (micro)processors. For example, the arithmetic processing device 301 may be a multi-core processor having multiple arithmetic cores (CPU cores). FIG. 3 shows, as an example, a multi-core processor having four arithmetic cores (CPU cores): core 0, core 1, core 2, and core 3. The storage device 302 may be, for example, a memory. The non-volatile recording medium (recording device) 303 may be, for example, a non-volatile memory (e.g., flash memory) or a non-volatile disk device. The external recording medium drive 304 may be, for example, a disk drive. The input device 306 may be, for example, a mouse, keyboard, imaging device, sensor, touch panel, or pointing device. The display or output device 307 may be, for example, a display, printer, or speaker. The communication device 308 may be, for example, a communication device for wired communication or a communication device for wireless communication. The communication device 308 may be a network interface device (NIC) that controls communication with other systems, devices, terminals, or servers according to a predetermined protocol. The interconnection unit 311 may be, for example, a bus or a crossbar switch. (As described above, part or all of the interconnection unit 311 may be a network.)
[0037] The non-volatile recording medium (recording device) 303 may record various programs included in the program group 331 (for example, programs for realizing the functional configuration related to the present disclosure; for example, various programs for implementing each of the functional units realized in the information processing system 101), various data groups included in the data group 332, or information included in the various information 333. The program group 331 may include various programs for realizing each of the functional units indicated as "units" in the functional configuration diagrams of Figures 1, 2, 11, 12, 13, 14, 15, 16, 17, 18, and 19. (However, it is sufficient that each of the information processing system 101, the planning system 1101, and the relay system 1901 can use at least the programs for the functional units that it realizes.) Note that some of the above programs may be integrated into a single program. Also, any of the above programs may be divided into multiple programs. The data group 332 may include information (data, etc.) handled by the above-mentioned functional units. Alternatively, some or all of the various programs included in the program group 331, the various data groups included in the data group 332, or the information included in the various information 333 may be obtained from outside the configuration shown in FIG. 3.
[0038] The external recording medium drive 304 can be connected to an external recording medium 305. The external recording medium 305 may be, for example, a portable recording disk (such as a DVD), an IC card, an SD card, a nonvolatile memory (such as a flash memory), or a portable hard disk. Various programs included in the program group 331, various data included in the data group 332, or information similar to the information included in the various information 333 may be transferred and stored from the external recording medium 305 to the nonvolatile recording medium (recording device) 303 or the storage device 302. The external recording medium 305 may be used to record programs and data handled in the information processing system 101. The external recording medium drive 304 and the external recording medium 305 may be connected to the information processing system 101 illustrated in FIG. 3 via a network. The various programs included in the program group 331, the various data included in the data group 332, or the information included in the various information 333 may be brought via the communication device 308, the external input / output port 309, the input device 306, or the reading device 310, and recorded or stored in the non-volatile recording medium (recording device) 303 or the storage device 302.
[0039] In order for the architecture of FIG. 3 to function as the information processing system 101, each functional unit within the information processing system 101, or a part of each functional unit (to execute one or a series of processes (steps)), various programs included in the program group 331 may be loaded into the storage device 302 (for example, from the non-volatile recording medium (recording device) 303). The loaded program is indicated by 321 in FIG. 3. The arithmetic processing device 301 may then execute the program 321 (using, as necessary, various data and the like included in the data group 332 stored in the non-volatile recording medium (recording device) 303, or information included in the various information 333). Execution of the program 321 realizes the function of the information processing system 101, each functional unit within the information processing system 101, or a part of each functional unit (to execute one or a series of processes (steps)). At this time, various buffers 323 temporarily formed in the storage device 302 may also be used as appropriate.
[0040] 4. Processing performed by the embodiment of the present disclosure The following describes processing performed by an embodiment of the present disclosure. It is not necessary to realize all of the functional configurations and perform all of the processing described below. Furthermore, it is not prohibited to realize functional configurations and perform processing other than the functional configurations and processing described below. There are four main processes that will be explained. First, a description will be given of normal processing in the control system 201. The normal processing here refers to processing related to the control provided by the control system 201, and not to changes in the content of the control provided by the control system 201. Secondly, a series of processes when changing the content of the function provided by the functional logic 110 (including the computation model 113 (computation model function unit 1203)) realized by the information processing system 101, or when adding a new functional logic 110 (including the computation model 113 (computation model function unit 1203)) to the information processing system 101, is explained. Thirdly, a process will be described in which processing time statistical information of the computation model 113 (computation model function unit 1203) is updated in response to measurement of processing time, which is the time required for processing by the computation model 113 (computation model function unit 1203) in the information processing system 101. The processing time statistical information of the computation model 113 (computation model function unit 1203) is used as a reference when controlling which computation core (CPU core) the computation processing device 301 has to allocate the computation model function unit 1203 (computation model software 130 (computation model SW)). Fourth, a series of processes when setting or changing input / output relationships for control is explained. An example of the input / output relationships here may mean the relationships between any of the information providing device 207 (MU), the information processing system 101 (IED), the function logic 110 (the calculation model 113 (calculation model function unit 1203) included therein), and the control target device 208 (CBC).
[0041] 4-1. Control system normal processing (Fig. 4, Fig. 12, Fig. 19, Fig. 22, Fig. 23) Fig. 4 shows a flowchart of processing related to control provided by the control system 201, not a change in the content of the control provided by the control system 201. The processing will be explained below in the order of the flowchart in Fig. 4. In doing so, other drawings will also be referenced as appropriate. Other drawings which may be referred to include FIGS. 12, 19 and 23.
[0042] 4.1.1 Overview of Figures 12, 19, and 23 12 shows a functional configuration related to an input model function unit 1201, an input information storage area 1202, one or more computation model function units 1203, an output information storage area 1204, and an output model function unit 1205 that the information processing system 101 (IED) has, as well as input information 150 and output information 160 that are handled. The input information storage area 1202 can have a plurality of input information storage slot areas 1221 to which slot identification information 3004 (slot ID) is assigned, and the output information storage area 1204 can have a plurality of output information storage slot areas 1241 to which slot identification information 3004 (slot ID) is assigned. Furthermore, each computation model function unit 1203 is associated with one of the input information storage slot areas 1221 and one of the output information storage slot areas 1241. Furthermore, the setting information for associating the function logic 110 (the calculation model 113 (calculation model function unit 1203) included therein) with the input information holding slot area 1221 and the output information holding slot area 1241 indicated by the slot identification information 3004 (slot ID) may be managed as in the slot identification information table 2200 (slot ID table) shown in FIG. 22. 19 shows the functional configuration (and the information handled) of a relay system 1901 (network switch). The relay system 1901 (network switch) may have a provision information receiving unit 1911, an input information creating unit 1912, an input information transmitting unit 1913, an output information receiving unit 1921, a control information creating unit 1922, a control information transmitting unit 1923, and a traffic management table 2300. The relay system 1901 (network switch) may also handle provision information 140, input information 150, output information 160, and control information 170. Note that FIG. 19 also shows input traffic setting information 260, output traffic setting information 270, and a table changing unit 1931, which will be described later in "4.4. Input / Output Correlation Change Processing." 23 shows an example of a traffic management table 2300 that can be referenced by the relay system 1901 (network switch). Records 2301 (rows) included in the traffic management table 2300 indicate the correspondence between the information providing device 207 (MU), the information processing system 101 (IED), the input information holding slot area 1221, the output information holding slot area 1241, and any of the control target devices 208 (CBC).
[0043] 4.1.2. Processing shown in the flowchart in Figure 4 The following is an explanation based on the flowchart in FIG. 4, the provided information receiving unit 1911 in the relay system 1901 (network switch) receives the provided information 140. As shown in the explanation of FIG. 2, the provided information 140 may be information (e.g., sensor data) provided by the information providing device 207 (MU). As shown in FIG. 19, the header portion of the provided information 140 may include information providing device identification information 3001 (information providing device ID) for identifying the information providing device 207 (MU) that provided the provided information 140. 4, the input information creating unit 1912 in the relay system 1901 (network switch) creates input information 150 based on the provided information 140. In FIG. 19, the provided information 140 itself is assigned information providing device identification information 3001 (information providing device ID) indicating the source information providing device 207 (MU), but the provided information 140 itself is not assigned information identifying the information processing system 101 (IED) that performs processing using the provided information 140 (the input information 150 derived from it) or the function logic 110 (the computation model 113 (computation model function unit 1203) included therein). In this case, the input information creating unit 1912 identifies information identifying the destination of the provided information 140 (the input information 150 derived from it), and then creates the input information 150 by adding information of the identified destination to the provided information 140. 19 and 23, a record 2301 (row) of the traffic management table 2300 may record an association (input association) between information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and slot identification information 3004 (slot ID). The input information creation unit 1912 identifies a record 2301 (row) of the traffic management table 2300 that has the same value as the information providing device identification information 3001 (information providing device ID) included in the header section of the provided information 140. The input information creation unit 1912 creates the input information 150 based on the provided information 140 by newly adding the information processing system identification information 3002 (information processing system ID) and the slot identification information 3004 (slot ID) included in the identified record 2301 (row) to the header section. The slot identification information 3004 (slot ID) is information that directly identifies the input information holding slot area 1221 and the output information holding slot area 1241, but the input information holding slot area 1221 and the output information holding slot area 1241 are associated with the function logic 110 (the calculation model 113 (calculation model function unit 1203) included therein). 4, the input information transmitting unit 1913 in the relay system 1901 (network switch) sends the input information 150 to the interconnection mechanism 209. As shown in Fig. 19, the input information 150 includes information (e.g., sensor data) provided from the information providing device 207 (MU), and the header portion of the input information 150 may include information providing device identification information 3001 (information providing device ID), destination information processing system identification information 3002 (information processing system ID), and destination slot identification information 3004 (slot ID).
[0044] In step 404 of FIG. 4, the input model functional unit 1201 in the information processing system 101 (IED) receives the input information 150 via the interconnection mechanism 209. If the information processing system identification information 3002 (information processing system ID) included in the header section of the received input information 150 indicates the information processing system 101 (IED) that includes the input model functional unit 1201, the input model functional unit 1201 executes the subsequent step 405. Note that if the information processing system identification information 3002 (information processing system ID) included in the header section of the received input information 150 does not indicate the information processing system 101 (IED) that includes the input model functional unit 1201, the input model functional unit 1201 discards the input information 150. (In this case, the input information 150 is received by the input model functional unit 1201 in the other information processing system 101 that is the original destination, and the subsequent step 405 is executed.) In step 405 of Fig. 4, the input model function unit 1201 stores the input information 150 in the input information holding slot area 1221 shown in Fig. 12. The input model function unit 1201 stores the input information 150 in the input information holding slot area 1221 indicated by the slot identification information 3004 (slot ID) included in the header part of the input information 150. As described above, the functions provided by the input model function unit 1201 are realized by the process of determining whether or not to accept the received input information 150 based on the information processing system identification information 3002 (information processing system ID), and the process of determining and storing the allocation of the accepted input information 150 in the input information holding area 1202 based on the slot identification information 3004 (slot ID). Therefore, the frequency with which the functions provided by the input model function unit 1201 are changed is relatively low (compared to the frequency with which the functions provided by the computation model function unit 1203 are changed or added). Furthermore, since the functions provided by the input model function unit 1201 can be shared among different function logics 110, the input model function unit 1201 can be shared by multiple function logics 110.
[0045] 4, the computation model functional unit 1203 in the information processing system 101 (IED) acquires the input information 150 from the input information holding slot area 1221 associated with the computation model functional unit 1203. As described above, each of the functional logic 110 (the computation models 113 (computation model functional units 1203) included therein) is associated with one of the input information holding slot areas 1221, and therefore the computation model functional unit 1203 can acquire the input information 150 to be processed by the computation model functional unit 1203, while not acquiring the input information 150 that the computation model functional unit 1203 does not intend to process. 4, the computation model functional unit 1203 performs processing based on the acquired input information 150, and generates output information 160 as a result of the processing. For example, if the input information 150 is sensor data in a power transmission / distribution system or a digital substation provided by the information providing device 207 (MU), and the function provided by the computation model functional unit 1203 is a protective relay, the computation model functional unit 1203 may perform processing based on the sensor data to generate opening / closing control information for a circuit breaker in the power transmission / distribution system or the digital substation, and output the information as the output information 160. Here, the output information 160 generated by the computation model function unit 1203 includes information indicating the result of the processing, and the header section of the output information 160 may include one or more of the information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and slot identification information 3004 (slot ID) that were included in the header section of the input information 150. By including this information in the header section of the output information 160, it is possible to identify the control target device 208 (CBC) that is the destination of the output information 160 (control information 170 derived from the output information 160) in the relay system 1901, as will be described later. The computation model functional unit 1203 may include, in the header section of the output information 160, control target device identification information 3006 (control target device ID) that identifies the control target device 208 (CBC) that is the destination of the output information 160 (the control information 170 derived from the output information 160). In this case, the content of the processing performed by the relay system 1901 on the output information 160 and the control information 170 is simplified. (Instead, when the association (output association) between the computation model functional unit 1203 and the control target device 208 (CBC) is changed, it may be necessary to change the function performed by the computation model functional unit 1203 or rewrite some setting table or the like that is referenced by the computation model functional unit 1203.) In step 408 of Fig. 4, the computation model function unit 1203 stores the output information 160 in the output information holding slot area 1241 shown in Fig. 12. The computation model function unit 1203 stores the output information 160 in the output information holding slot area 1241 indicated by the slot identification information 3004 (slot ID) included in the header part of the input information 150 or the output information 160. As described above, if the computation model functional unit 1203 stores the output information 160 in the output information holding slot area 1241 corresponding to the computation model functional unit 1203 in the output information holding area 1204, the output information 160 originating from different computation model functional units 1203 can be managed in an organized manner.
[0046] In step 409 of FIG. 4, the output model function unit 1205 in the information processing system 101 (IED) acquires the output information 160 from the output information holding slot area 1241. In addition, instead of the computation model function unit 1203 performing the process of including the information processing system identification information 3002 and the slot identification information 3004 (slot ID) in the header section of the output information 160, in this step 409, the output model function unit 1205 may perform the process of including one or more of the information processing system identification information 3002 and the slot identification information 3004 (slot ID) in the header section of the output information 160. In step 410 of FIG. 4, the output model function unit 1205 sends the output information 160 to the interconnection mechanism 209 . As described above, the function provided by the output model functional unit 1205 is realized by the process of acquiring the output information 160 from the output information storage area 1204 (the output information storage slot area 1241 therein), the process of including one or more of the information processing system identification information 3002 and the slot identification information 3004 (slot ID) in the header part of the output information 160 in some cases, and the process of sending the output information 160 to the interconnection mechanism 209. Therefore, the frequency with which the function provided by the output model functional unit 1205 is changed is relatively low (compared to the frequency with which the function provided by the computation model functional unit 1203 is changed or added). Furthermore, since the function provided by the output model functional unit 1205 can be made common among different function logics 110, the output model functional unit 1205 can be shared by multiple function logics 110.
[0047] 4, the output information receiving unit 1921 in the relay system 1901 (network switch) receives the output information 160 from the interconnection mechanism 209. As shown in FIG. 19, the output information 160 includes the processing result of the computation model function unit 1203 (for example, opening and closing control information for a circuit breaker in a power transmission and distribution system or a digital substation), and in addition, the header portion of the output information 160 may include one or more of information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and slot identification information 3004 (slot ID). 4, the control information creation unit 1922 in the relay system 1901 (network switch) creates the control information 170 based on the output information 160. In FIG. 19, the header section of the output information 160 includes one or more of the information providing device identification information 3001 (information providing device ID), the information processing system identification information 3002 (information processing system ID), and the slot identification information 3004 (slot ID), but the header section of the output information 160 does not include the control target device identification information 3006 (controlled target device ID) that identifies the destination control target device 208 (CBC). In this case, the control information creation unit 1922 identifies the control target device 208 (CBC) (the control target device identification information 3006 (controlled target device ID)) that is the destination of the output information 160 (the control information 170 derived from the output information 160), and then creates the control information 170 by adding information about the identified destination (the control target device identification information 3006 (controlled target device ID)) to the output information 160. 19 and 23, a correspondence (output correspondence) between one or more of the information providing device identification information 3001 (information providing device ID), the information processing system identification information 3002 (information processing system ID), and the slot identification information 3004 (slot ID) and the controlled device identification information 3006 (controlled device ID) may be recorded in a record 2301 (row) of the traffic management table 2300. Then, the control information creation unit 1922 identifies a record 2301 (row) of the traffic management table 2300 that has the same value as one or more of the information providing device identification information 3001 (information providing device ID), the information processing system identification information 3002 (information processing system ID), and the slot identification information 3004 (slot ID) included in the header portion of the output information 160. The control information creation unit 1922 creates the control information 170 based on the output information 160 by newly adding the controlled device identification information 3006 (controlled device ID) contained in the identified record 2301 (row) to the header section.At this time, the control information creation unit 1922 may delete the information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and slot identification information 3004 (slot ID) from the header section of the control information 170 (if unnecessary). In step 413 of Figure 4, the control information transmitting unit 1923 in the relay system 1901 (network switch) transmits the control information 170 to the controlled device 208 (CBC) indicated by the controlled device identification information 3006 (controlled device ID) identified in step 412. As described above, the relay system 1901 (network switch) can control the sending and receiving of information (for example, communication packets) while adjusting the information to be included in the header of the output information 160 (or the control information 170 derived therefrom). If the computation model function unit 1203 performs processing to include, in the header section of the output information 160, control target device identification information 3006 (control target device ID) that identifies the control target device 208 (CBC) that is the destination of the output information 160 (the control information 170 derived from the output information 160), the processing using the traffic management table 2300 in the above step 412 does not need to be performed. In that case, the output information 160 may be used as the control information 170 as it is.
[0048] 4-2. Processing of changes to the calculation model function unit (Figs. 5-7, 11, 13-16, 20, 21) FIG. 5 shows a flowchart of a series of processes executed when changing (updating) a function provided by the function logic 110 (computation model 113 (computation model function unit 1203) included in the function logic 110) realized by the information processing system 101 (IED), or when realizing (adding) a new (new) function logic 110 (computation model 113 (computation model function unit 1203) included in the function logic 110) in the information processing system 101 (IED). The processes will be explained below in the order of the flowchart in FIG. 5. In doing so, other drawings will also be referenced as appropriate. Other drawings which may be referred to include Figures 6, 7, 11, 13, 14, 15, 16, 20 and 21.
[0049] 4 of 2 1. Overview of Figures 6, 7, 11, 13, 14, 15, 16, 20, and 21 FIG. 6 shows a more detailed flowchart of the series of processes executed by the computation model management unit 1301 in steps 508, 510, and 511 in the flowchart of FIG. FIG. 7 shows a flowchart of the processing executed by the computation model function unit 1203 (computation model software 130 (computation model SW)) which is the target of the above-mentioned changes and additions.
[0050] FIG. 11 shows a functional configuration 1100 of a planning system 1101 (and the information it handles). 11, the planning system 1101 may have a computation model software generation unit 1111 (computation model SW generation unit), a planned system processing time measurement unit 1112, and a deployment information transmission unit 1113 as functional units for generating and outputting deployment information 230. Furthermore, the deployment information 230 output from the planning system 1101 may include changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW), planned system processing time statistical information 232, planned system specification information 233, and execution start time information 3008. 11, the planning system 1101 may have an input / output association instruction information generation unit 1121 and an input / output association instruction information transmission unit 1123 as functional units for generating and outputting the input association instruction information 240 or the output association instruction information 250. Furthermore, the input association instruction information 240 output from the planning system 1101 may include information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), function logic identification information 3003 (function logic ID), and association change time information 3009. Furthermore, the output association instruction information 250 output from the planning system 1101 may include one or more of information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and function logic identification information 3003 (function logic ID), as well as controlled device identification information 3006 (controlled device ID), and association change time information 3009.
[0051] FIG. 13 shows a functional configuration 1300 of a computation model management unit 1301 realized by the information processing system 101 (IED). As shown in FIG. 13, the computation model management unit 1301 may have, as functional units that operate when the functional logic 110 (the computation model 113 (computation model function unit 1203) included therein) is changed (updated) or newly added, a computation model software deployment unit 1321 (computation model SW deployment unit), a scaling factor calculation unit 1322, a processing time management table registration information generation unit 1323, a processing time management table registration unit 1324, an allocation destination core determination unit 1325, a computation model startup unit 1326, a pre-change computation model termination unit 1327, and a computation model migration unit 1328. Of these functional units, the computation model software deployment unit 1321 (computation model SW deployment unit), the scaling factor calculation unit 1322, the processing time management table registration information generation unit 1323, and the processing time management table registration unit 1324 may be collectively referred to as a first phase unit 1311. The combination of the allocation core determination unit 1325 and the computation model activation unit 1326 may be called a second phase unit 1312. Furthermore, the combination of the pre-change computation model termination unit 1327 and the computation model movement unit 1328 may be called a third phase unit 1313. 13, the computation model management unit 1301 may have, as a functional unit, a phase allocation unit 1331. The phase allocation unit 1331 allocates any resource (for example, a time resource of a core) of a computation core (CPU core) included in the computation processing device 301 to each of the functional units included in the first phase unit 1311, the second phase unit 1312, and the third phase unit 1313. 13, the computation model management unit 1301 may also have, as functional units, an information processing system processing time measurement unit 1341 and a processing time statistical information update unit 1342. The processes performed by the information processing system processing time measurement unit 1341 and the processing time statistical information update unit 1342 will be described later in "4.3. Processing of updating processing time statistical information."
[0052] FIG. 14 shows a functional configuration 1400 of the functional units included in the first phase unit 1311 (and the information they handle). Fig. 15 shows a functional configuration 1500 (and the information it handles) of the allocation core determination unit 1325, which is a functional unit included in the second phase unit 1312. Fig. 15 also shows a processing time management table 2000 and an allocation core table 2100 that the allocation core determination unit 1325 references. An example of the processing time management table 2000 is shown in Fig. 20. As shown in Fig. 15 and Fig. 20, a record 2001 (row) of the processing time management table 2000 may record, as information associated with function logic identification information 3003 (function logic ID), a value 3010 indicating the average processing time, a value 3011 indicating the fluctuation of the processing time (e.g., standard deviation), and a value 3012 indicating the number of samples of the processing time measurement. Here, the information combining the value 3010 indicating the average processing time, the value 3011 indicating the fluctuation of the processing time (e.g., standard deviation), and the value 3012 indicating the number of samples of the processing time measurement may be called information processing system processing time statistical information 1710 (see Fig. 14). An example of the assigned core table 2100 is shown in Fig. 21. As shown in Fig. 15 and Fig. 21, in a record 2101 (row) of the assigned core table 2100, assigned core identification information 3005 (assigned core ID) and execution start time information 3008 may be recorded as information associated with function logic identification information 3003 (function logic ID). FIG. 16 shows a functional configuration 1600 of a computation model activation unit 1326 which is a functional unit included in the second phase unit 1312, and a pre-change computation model termination unit 1327 and a computation model movement unit 1328 which are functional units included in the third phase unit 1313.
[0053] 4.2.2. Processing shown in the flowchart of Figure 5 The following is an explanation based on the flowchart in FIG. 5, the computation model software generation unit 1111 (computation model SW generation unit) in the planning system 1101 generates, for any of the function logics 110 realized by the information processing system 101 (IED), changed computation model software 231 (changed computation model SW) for the computation model 113 included in the function logic 110. Alternatively, in step 501 in FIG. 5, the computation model software generation unit 1111 (computation model SW generation unit) generates new computation model software 231 (changed computation model SW) for the computation model 113 included in the function logic 110 for the function logic 110 newly realized by the information processing system 101 (IED). In step 502 of Figure 5, the calculation model software generation unit 1111 (calculation model SW generation unit) determines execution start time information 3008 indicating the time at which the changed calculation model software or new calculation model software 231 (changed calculation model SW or new calculation model SW) generated in step 501 starts execution in the information processing system 101 (IDE). The calculation model software generation unit 1111 (calculation model SW generation unit) may execute the above steps 501 and 502 after making changes to the control plan of the physical system (e.g., a power transmission and distribution system or a digital substation) that is the object of control by the control system 201, using the provided information 140 (input information 150 derived from the provided information) provided by the information providing device 207 (MU), information on the results of processing performed by the information processing system 101 (IED) using the input information 150 (information processing system processing result information), and information on the results of processing performed by the SCADA 203 using the input information 150 and the information processing system processing result information (SCADA processing result information). In step 503 of Figure 5, the planning system processing time measurement unit 1112 in the planning system 1101 controls the execution of the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) generated in step 501 on the computation resources owned by the planning system 1101. Here, the execution of the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) on the computation resources owned by the planning system 1101 is solely for the purpose of measuring the processing time, and the information on the results obtained by the execution is not necessarily used. The planning system processing time measurement unit 1112 measures the processing time on the computation resources owned by the planning system 1101. The planning system processing time measurement unit 1112 may acquire multiple samples of processing time information by controlling the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) to be executed multiple times on the computation resources of the planning system 1101. Alternatively, the planning system processing time measurement unit 1112 may acquire multiple samples of processing time information by controlling the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) to be executed on the computation resources of the planning system 1101, and acquiring samples of processing time information of the computation model software for each execution period of a computation processing device or computation core (CPU core) that may be included in the planning system 1101. In addition, when measuring the processing time, the planning system processing time measurement unit 1112 may use the time obtained by removing the latency required to wake up the computation model SW in the computational resources of the planning system (the time corresponding to w in the example of the information processing system 101 in Figure 15). 5, the planning system processing time measurement unit 1112 uses a group of processing time information samples to generate planning system processing time statistical information 232. The planning system processing time statistical information 232 may be composed of, for example, a value indicating the average processing time on the planning system, a value indicating the fluctuation of processing time on the planning system (e.g., standard deviation), and a value indicating the number of processing time measurement samples executed on the computing system. 5, the deployment information sending unit 1113 in the planning system 1101 sends the deployment information 230 to the information processing system 101 (IDE) as the destination. The deployment information 230 may include the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) generated in step 501, the planned system processing time statistical information 232 and planned system specification information 233 generated in step 504, and the execution start time information 3008 generated in step 502. Here, the planned system specification information 233 is information indicating the specifications of the computational resources of the planning system 1101 used to measure the processing time of the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) in step 503. The planned system specification information 233 may include, for example, information indicating the performance of the processing unit in the computational resources possessed by the planned system 1101 (which may include, for example, information on the processor's operating frequency), information indicating the performance of the storage device (which may include, for example, information on the storage device (memory) access method (for example, whether it is a double data rate (DDR) method) and information on bandwidth and capacity), and information indicating the transmission performance of buses, etc.
[0054] 5 (computation model management step), the information processing system 101 receives the deployment information 230. Then, the received deployment information 230 is made available to the computation model management unit 1301. For example, the received deployment information 230 may be stored or recorded in some storage device or recording device (for example, the storage device 302 (memory) or the non-volatile recording medium 303 (recording device) shown in FIG. 3) accessible from the computation core (CPU core) in which the computation model management unit 1301 is implemented. 5 (computation model management step), the phase allocation unit 1331 determines whether the current time is included in the execution cycle 1352 immediately preceding the execution cycle of the core that includes the execution start time 1368 indicated by the execution start time information 3008 included in the deployment information 230. If the determination result in step 507 is positive (if the current time is included in the immediately preceding execution cycle 1352), control transitions to step 509. If the determination result in step 507 is negative (if the current time is in the execution cycle 1351 earlier than the immediately preceding execution cycle 1352), control transitions to step 508. In step 508 (computation model management step) of FIG. 5, the phase allocation unit 1331 controls each of the functional units included in the first phase unit 1311 and each of the functional units included in the second phase unit 1312 to execute processing in order within the execution cycle 1351 (not the immediately preceding execution cycle 1352) that includes the current time, within the scope of the computation core (CPU core) assigned to the computation model management unit 1301 and the time resources (allocated time) of that computation core (CPU core). Here, each of the functional units included in the first phase unit 1311 and each of the functional units included in the second phase unit 1312 may execute processing in sequence over multiple execution cycles 1351. In general, the time from the planning time 1361, which is the time when the planning system 1101 makes a plan to change or newly add the functional logic 110 (the computation model 113 included in the functional logic 110) (or the time when the information processing system 101 receives the deployment information 230), to the execution start time 1368 related to the plan may include multiple core execution cycles 1351. Therefore, if the functional units included in the first phase unit 1311 and the functional units included in the second phase unit 1312 execute processing in sequence over these multiple execution cycles 1351, the occupancy rate of the resources of the information processing system 101 (for example, the time resources of the calculation cores (CPU cores) included in the calculation processing device 301) due to the execution of processing by these functional units can be reduced. If the occupancy rate of resources due to the execution of processing by the calculation model management unit 1301 can be reduced, the degree of interference with the execution of processing by the calculation model function unit 1203, etc. can be reduced, and the possibility and degree of adverse impact on time constraints (for example, deadlines) that the calculation model function unit 1203, etc. may have can be reduced. When the sequential execution of each of the functional units included in the first phase section 1311 and each of the functional units included in the second phase section 1312 in one execution cycle 1351 is completed, control is returned to step 507 .
[0055] 5 (computation model management step), the phase assignment unit 1331 determines whether each of the functional units included in the first phase unit 1311 and each of the functional units included in the second phase unit 1312 have completed execution of their processes by the time the execution cycle including the current time (the execution cycle 1352 immediately preceding the execution cycle including the execution start time 1368) is reached. If the determination result in step 509 is positive (if the processing of all of the functional units included in the first phase unit 1311 and the second phase unit 1312 has been completed by the time the immediately preceding execution cycle 1352 is reached), control transitions to step 511. If the determination result in step 509 is negative (if the processing of any of the functional units included in the first phase unit 1311 or the second phase unit 1312 has not yet been completed at the time the immediately preceding execution cycle 1352 is reached), control transitions to step 510. 5 (computation model management step), the phase allocation unit 1331 controls the functional units included in the first phase unit 1311 or the second phase unit 1312, which have not yet completed their processing, to execute their processing in order. When the processing of all the functional units included in the first phase unit 1311 and the second phase unit 1312 is completed, control transitions to step 511. In step 511 (computation model management step) of Figure 5, the phase allocation unit 1331 controls each of the functional units included in the third phase unit 1313 to execute processing in order within one execution cycle, which is the execution cycle that includes the current time (the execution cycle 1352 immediately before the execution cycle that includes the execution start time 1368), within the range of the computation core (CPU core) assigned to the computation model management unit 1301 and the time resource (allocated time) of that computation core (CPU core). As will be described in detail later, the processing realized by each of the functional units included in the third phase unit 1313 is such that, if there is a pre-change computation model functional unit 1203-OLD (see FIG. 16 ) based on the execution of the pre-change computation model software, the processing performed by the pre-change computation model functional unit 1203-OLD is terminated, and then the changed computation model functional unit 1203-NEW (see FIG. 16 ) based on the execution of the changed computation model software is moved (migrated) between computation cores (CPU cores). If it is intended that the pre-change computation model functional unit 1203-OLD executes processing before the execution start time 1368 and the changed computation model functional unit 1203-NEW executes processing after the execution start time 1368, it is convenient that the series of processing realized by each of the functional units included in the third phase unit 1313 be executed in a manner that looks like atomic execution, just before the execution start time 1368. Therefore, the processing realized by each of the functional units included in the third phase unit 1313 is executed in step 511 of FIG. Furthermore, when a new function logic 110 is added (when the pre-change calculation model function unit 1203-OLD (calculation model software (calculation model SW)) does not exist), the processing of the function units included in the third phase unit 1313 (among them, the calculation model movement unit 1328) may be performed in any execution period 1351 before the execution period that includes the execution start time 1368.
[0056] 4.2.3.Details of the processes performed in the three phases Details of the processing of each functional unit included in the first phase unit 1311 or each functional unit included in the second phase unit 1312, which is performed in conjunction with step 508 or step 510 in Figure 5, and details of the processing of each functional unit included in the third phase unit 1313, which is performed in conjunction with step 511 in Figure 5, are described below. The following description will be given along the flowchart of FIG.
[0057] 4-2-3-1. Processing of the first phase In the flowchart shown in FIG. 6, steps 601 to 604 correspond to the processing of any of the functional units included in the first phase unit 1311. In step 601 (computation model management step) of FIG. 6, the computation model software deployment unit 1321 (computation model SW deployment unit) performs deployment processing on the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) included in the deployment information 230. Here, the deployment processing refers to making the computation core (CPU core) included in the computation processing device 301 executable. If the computation model SW included in the deployment information 230 is executable as is, the deployment processing may be storing the computation model SW in a predetermined area of a storage device or recording device accessible from the computation core (CPU core). If the computation model SW included in the deployment information 230 is not executable as is, the deployment processing may be storing the computation model SW in a predetermined area after performing some processing on the computation model SW to make it executable.
[0058] 6 (computation model management step), the scaling factor calculation unit 1322 calculates a scaling factor 1434 using the planned system specification information 233 and the information processing system specification information 1433 included in the deployment information 230. The scaling factor 1434 is like a magnification of the processing performance (or a magnification of the processing time) between the planned system 1101 and the information processing system 101. This scaling factor 1434 is used in the subsequent step 603 when generating information processing system processing time statistical information 1710 from the planned system processing time statistical information 232 included in the deployment information 230. Both the planned system specification information 233 and the information processing system specification information 1433 may include, for example, information indicating the performance of the arithmetic processing device (which may include, for example, information about the operating frequency of the processor), information indicating the performance of the storage device (which may include, for example, information about the access method of the storage device (memory) (for example, whether it is a double data rate (DDR) method) or information about bandwidth and capacity), and information indicating the transmission performance of the bus, etc., in the computational resources that execute the changed computation model software or the new computation model software 231 (the changed computation model SW or the new computation model SW). Here, the planned system specification information 233 is information indicating the specifications of the planned system 1101, while the information processing system specification information 1433 is information indicating the specifications of the information processing system 101. For example, the scaling factor calculation unit 1322 may calculate the scaling factor 1434 as an expected value of the ratio of the processing time in the information processing system 101 to the processing time in the planned system 1101, when it is assumed that the same computation model SW is executed, using a reference value (value 1). For example, if the processing time in the information processing system 101 is predicted to be 1.5 times the processing time in the planning system 1101, the value of the scaling factor 1434 may be set to 1.5.
[0059] 6, the processing time management table registration information generation unit 1323 generates information to be registered in a record 2001 (row) for the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) included in the deployment information 230. The record 2001 (row) is included in the processing time management table 2000. The processing time management table 2000 is for recording, for each function logic 110 realized in the information processing system 101, statistical information of the processing time (information processing system processing time statistical information 1710) when the computation model function unit 1203 for the computation model 113 included in the function logic 110 is executed in the information processing system 101. As described above, in the calculation core (CPU core) included in the calculation processing device 301, time resources are allocated to each process for each execution period 1351, so the information processing system processing time statistical information 1710 may be statistical information on the processing time when the calculation model function unit 1203 executes processing within one execution period 1351. As shown in FIG. 15, FIG. 17 or FIG. 20, a record 2001 (row) of the processing time management table 2000 may include a value 3003 indicating the average processing time, a value 3011 indicating the fluctuation of the processing time (e.g., standard deviation), and a value 3012 indicating the number of samples of the processing time measurement, which correspond to the calculation model 113 (calculation model software 130 (calculation model SW) included in the functional logic 110). Therefore, in step 603, the processing time management table registration information generation unit 1323 performs multiplication by the scaling factor 1434 on each of the value indicating the average processing time and the value indicating the fluctuation of the processing time (e.g., standard deviation), which are included in the planned system processing time statistical information 232, and the products resulting from the multiplication may be used as the value 3003 indicating the average processing time and the value 3011 indicating the fluctuation of the processing time (e.g., standard deviation), which are included in the information processing system processing time statistical information 1710.In addition, the processing time management table registration information generation unit 1323 may use the value indicating the number of samples of processing time measurements contained in the planned system processing time statistical information 232 as the value 3012 indicating the number of samples of processing time measurements contained in the information processing system processing time statistical information 1710. 6 (computation model management step), the processing time management table registration unit 1324 records a record 2001 (row) for the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) included in the deployment information 230 in the processing time management table 2000. At this time, the processing time management table registration unit 1324 may record the information processing system processing time statistical information 1710 generated in step 603 in the items of a value 3003 indicating the average processing time, a value 3011 indicating the fluctuation of the processing time (for example, standard deviation), and a value 3012 indicating the number of samples of the processing time measurement of the record 2001 (row) to be registered. The processing time management table registration unit 1324 registers the execution start time 1368 of the computation model 113 (computation model software 130 (computation model SW)) included in the functional logic 110 corresponding to the record 2001 (row) in the processing time management table 2000, or, if it is desired to control the timing at which the record 2001 (row) to be registered is activated in the processing time management table 2000 to match the execution start time 1368, the processing time management table registration unit 1324 may also use the execution start time information 3008 included in the deployment information 230.
[0060] As described above, the processing of the first phase unit 1311 includes not only the processing of performing the deployment processing of the changed computation model software or the new computation model software 231 (the changed computation model SW or the new computation model SW), but also the processing of recording in the processing time management table 2000 a record 2001 (row) having statistical information (predicted value) of the processing time when the deployed computation model software (computation model function unit 1203) is executed in the information processing system 101. If statistical information (predicted value) of the processing time when the computation model software (computation model function unit 1203) to be deployed is executed in the information processing system 101 is prepared in advance, it will provide the computation model management unit 1301 and the like with information to determine whether to execute the process of allocating resources (e.g., time resources of the computation cores (CPU cores) included in the computation processing device 301) of the information processing system 101 to the computation model software (computation model function unit 1203). For example, in a case where there is a time constraint (e.g., a deadline) on the processing of the computation model software (computation model function unit 1203), it becomes possible to allocate resources to the computation model software (computation model function unit 1203) and the like while observing the time constraint. In the above, the planning system processing time statistical information 232 is used to generate (initial value of) the information processing system processing time statistical information 1710. In other words, the computation model software (computation model function unit 1203) to be deployed in the information processing system 101 is actually run in the planning system 1101, and the results of measuring the processing time in the planning system 1101 are utilized to generate (initial value of) the information processing system processing time statistical information 1710. For example, if the computation environment in the planning system 1101 and the computation environment in the information processing system 101 both have in common the fact that they perform control that emphasizes time constraints (real-time performance) of software (function units), then it is possible to prepare (initial value of) the information processing system processing time statistical information 1710 with a certain degree of reliability before the computation model software (computation model function unit 1203) to be deployed actually runs in the information processing system 101.
[0061] 4.2.3.2. Processing of the second phase In the flowchart shown in FIG. 6, steps 605 to 607 correspond to the processing of any of the function units included in the second phase unit 1312 (or the processing performed by the activated computation model function unit 1203).
[0062] 4-2-3-2-1. Processing of the allocation destination core determination unit In step 605 (computation model management step) of Figure 6, the allocation core determination unit 1325 determines the computation core (CPU core) to which the computation model function unit 1203, which is realized by executing the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW), is to be assigned. FIG. 15 illustrates an information processing system 101 in which an arithmetic processing device 301 has four arithmetic cores (CPU cores): core 0, core 1, core 2, and core 3. An execution period 1351 is set for each of the arithmetic cores (CPU cores), and illustrates how time resources within the execution period 1351 are allocated to various software (various functional units realized by the execution of the software). The solid-line rectangles shown in the execution period 1351 of each core in FIG. 15 indicate time resources allocated to some functional unit. In the example of FIG. 15, when a time resource is allocated to each functional unit, for safety reasons, the time resource allocated has a width equal to the sum of the latency w required to wake up the functional unit, a value 3010 indicating the average processing time of the functional unit, and three times the value 3011 indicating the fluctuation of the processing time (for example, the standard deviation). (Here, the sum of the value 3010 indicating the average processing time of the functional unit and three times the value 3011 indicating the fluctuation of the processing time (for example, the standard deviation) is expressed as "estimated processing time p_* (where * is, for example, a functional logic ID).") The allocation core determination unit 1325 allocates time resources of a duration indicated by the sum of the above-mentioned "latency w" and the above-mentioned "estimated processing time value p_* (* is, for example, a function logic ID)" to each of the computation model function units 1203 within each execution period 1351 of the computation core (CPU core), thereby ensuring real-time processing while ensuring that the processing of the computation model function unit 1203 to which the time resources have been allocated is executed reliably.
[0063] The example in Figure 15 shows that the time resources within the execution cycle 1351 of core 0 are allocated to an operation model function unit for function logic s denoted as "s-operation model," an operation model function unit for function logic x denoted as "x-operation model," and an input model function unit 1201 denoted as "input model." The example in Figure 15 shows that the time resources within the execution cycle 1351 of core 1 are allocated to an operation model function unit for functional logic v, denoted as "v-operation model," and an output model function unit, denoted as "output model." The functions provided by the input model functional unit 1201 or the output model functional unit 1205 are close to standardized. Therefore, when the input model software or the output model software is executed by one of the arithmetic cores (CPU cores) to realize the input model functional unit 1201 or the output model functional unit 1205 (when realized in software), the value (e.g., standard deviation) indicating the fluctuation in the processing time of the input model functional unit 1201 or the output model functional unit 1205 is small. Therefore, the time range of the time resource allocated to the input model functional unit 1201 or the output model functional unit 1205 can be made relatively small.
[0064] The example in Figure 15 shows how the time resources within the execution period 1351 of core 2 are allocated to the computation model function unit for functional logic u, denoted as "u-computation model," and the computation model management unit 1301 (including the allocation core determination unit 1325), denoted as "computation model management unit." Note that priority may be given to the allocation of time resources of the computation cores (CPU cores) to the computation model functional unit 1203 (and the input model functional unit 1201 and output model functional unit 1205), and the remaining time resources after the prioritized allocation may then be allocated to the computation model management unit 1301. By performing such priority control of allocation, even when there is a time constraint (for example, a deadline) on the computation model functional unit 1203, etc., it is possible to execute the processing of the computation model management unit 1301, which includes the first phase unit 1311, the second phase unit 1312 (including the allocation destination core determination unit 1325), and the third phase unit 1313, while keeping the degree of interference with the processing of the computation model functional unit 1203, etc. low. The example of FIG. 15 shows how time resources within an execution cycle 1351 of the core 3 are allocated to a computation model function unit for functional logic t, denoted as "t-computation model." A certain amount of margin (spare time resource for unexpected situations) is set in the execution period 1351 of each core. Although not shown in Fig. 15, if the input / output change unit 1801 is realized by software, the input / output change unit 1801 may also be allocated the time resource of one of the arithmetic cores (CPU cores).
[0065] In the above situation, in the example of FIG. 15, the allocation core determination unit 1325 attempts to allocate the time resources of one of the cores to each of the modified calculation model function unit for the function logic t, denoted as "t-calculation model (new)", and the new calculation model function unit for the newly added function logic y, denoted as "y-calculation model".
[0066] The allocation core determination unit 1325 reads from the processing time management table 2000 a record 2001 relating to the changed computation model function unit for the function logic t and a record 2001 relating to the newly added function logic y. The allocation core determination unit 1325 adds the value 3010 indicating the average of the processing time to three times the value 3011 (for example, standard deviation) indicating the fluctuation of the processing time, using information included in the record 2001 related to the changed computation model function unit for the function logic t, and sets the resulting sum as the estimated value p_t* of the processing time of the changed computation model function unit for the function logic t. Similarly, the allocation core determination unit 1325 adds the value 3010 indicating the average of the processing time to three times the value 3011 (for example, standard deviation) indicating the fluctuation of the processing time, using information included in the record 2001 related to the new computation model function unit for the newly added function logic y, and sets the resulting sum as the estimated value p_y of the processing time of the new computation model function unit for the newly added function logic y. The allocation core determination unit 1325 adds together the latency w required to wake up a functional unit in a computation core (CPU core) and the estimated value p_t* of the processing time of the changed computation model functional unit for the functional logic t, and sets the resulting sum as the time width of the time resource to be allocated to the changed computation model functional unit for the functional logic t. Similarly, the allocation core determination unit 1325 adds together the latency w required to wake up a functional unit in a computation core (CPU core) and the estimated value p_y of the processing time of a new computation model functional unit for the newly added functional logic y, and sets the resulting sum as the time width of the time resource to be allocated to the new computation model functional unit for the newly added functional logic y. The latency w required for waking up a functional unit by an arithmetic core (CPU core) may be more dependent on the performance of the arithmetic core (CPU core) than on the processing content of the functional unit.
[0067] The allocation core determination unit 1325 allocates either the time resource, which is the free time excluding the time resource already allocated within each execution period 1351 of the calculation core (CPU core), to the changed calculation model function unit for the function logic t and the new calculation model function unit for the newly added function logic y (under the assumption that the time resource allocated to the calculation model function unit before the change for the function logic t will be released). For the function logic t, the allocation core determination unit 1325 may preferentially allocate the time resources of the computation core (CPU core) to which the pre-change computation model function unit was assigned to the post-change computation model function unit. For example, in the case where some state information is to be handed over between the pre-change computation model function unit and the post-change computation model function unit in the function logic t, if the allocation core is the same before and after the change, it can be expected that the process for handing over some state information will be simplified.
[0068] When the allocation core determination unit 1325 determines the computation core (CPU core) to be allocated to the changed computation model function unit for the function logic t and the new computation model function unit for the newly added function logic y, the allocation core determination unit 1325 records the determined content as a record 2101 (row) of the allocation core table 2100. As shown in Fig. 15 and Fig. 21, the record 2101 (row) of the allocation core table 2100 has an item of allocation core identification information 3005 (allocation core ID) corresponding to the function logic identification information 3003 (function logic ID) (of the function logic 110 including the computation model 113 corresponding to the computation model function unit 1203), so the allocation core determination unit 1325 records information for identifying the determined computation core (CPU core) to be allocated in this item. The allocation core determination unit 1325 may also record execution start time information 3008 indicating the execution start time 1368, which is the time at which the modified computation model function unit for the function logic t or the new computation model function unit for the newly added function logic y starts executing, in the record 2101 (row) of the allocation core table 2100.
[0069] Note that, once the allocation destination core determination unit 1325 determines the computation core (CPU core) to be allocated to the changed computation model function unit for the function logic t or the new computation model function unit for the newly added function logic y, the changed computation model function unit for the function logic t or the new computation model function unit for the newly added function logic y is not immediately moved to the allocation destination computation core (CPU core). Below, a series of processes until the changed computation model function unit for the function logic t or the new computation model function unit for the newly added function logic y is moved to the allocation destination computation core (CPU core) will be described.
[0070] 4.2.3.2.2. Processing of the calculation model startup part In step 606 (computation model management step) of FIG. 6, the computation model startup unit 1326 in the computation model management unit 1301 starts the computation model function unit 1203 realized by the changed computation model software or new computation model software 130 (changed computation model SW or new computation model SW) in the computation core (CPU core) to which the computation model management unit 1301 itself is assigned. In step 607 (computation model management step) of FIG. 6, the computation model function unit 1203 realized by the computation model software 130 (computation model SW) started in step 606 goes into a sleep state waiting for a timer interrupt shortly after starting.
[0071] Step 607 will be further explained using the flowchart of the processing of the computation model function unit 1203 realized by the computation model software 130 shown in FIG. In step 701 of FIG. 7, when it is determined that the computation model function unit 1203 is to be activated, control transitions to step 702 . 7, the computation model function unit 1203 is started up. Then, the control is transferred to step 703. In step 703 of Fig. 7, the computation model function unit 1203 waits for a timer interrupt and goes into a sleep state. Note that the timer interrupt here (the timer interrupt accepted in step 704 of Fig. 7) is assumed to be a timer interrupt that occurs when the execution start time 1368 arrives.
[0072] The upper part of Fig. 16 also shows the processing performed in steps 606 and 607. However, Fig. 16 only shows the post-change computation model functional unit 1203-NEW, and does not show the new computation model functional unit. The new computation model functional unit can also be handled in the same way as Fig. 16, except for the presence or absence of the pre-change computation model functional unit 1203-OLD.
[0073] Steps 606 and 607 will be described with reference to the example of Fig. 15. For example, even if the core to which the changed computation model function unit for the function logic t is assigned is core 3 and the core to which the new computation model function unit for the newly added function logic y is assigned is core 1, in step 606, both the changed computation model function unit for the function logic t and the new computation model function unit for the newly added function logic y are started up in core 2, which is the core to which the computation model management unit 1301 is assigned. Then, in step 607, both the changed computation model function unit for the function logic t and the new computation model function unit for the newly added function logic y are put into a sleep state in core 2, waiting for a timer interrupt.
[0074] 4.2.3.3. Processing of the Third Phase 6, steps 608 to 610 correspond to the processing of one of the functional units included in the third phase unit 1313. As described above, if it is desired to have the pre-change computation model functional unit 1203-OLD execute processing before the execution start time 1368 indicated by the execution start time information 3008, and to have the post-change computation model functional unit 1203-NEW execute processing after the execution start time 1368, the phase assignment unit 1331 may perform control so that the processing of the functional units included in the third phase unit 1313 described below is executed in the execution cycle 1352 immediately before the execution cycle including the execution start time 1368.
[0075] 6, the pre-change computation model termination unit 1327 determines whether the pre-change computation model function unit 1203-OLD, which is realized by executing the pre-change computation model software 130 (computation model SW), is running on any computation core (CPU core) for each execution cycle 1351. When the function provided by the computation model function unit 1203 for the computation model 113 included in a certain function logic 110 is changed, the determination result in step 608 becomes positive, and control transitions to step 609. When a new function logic 110 is added, and a new computation model function unit 1203 for the computation model 113 included in the new function logic 110 is added to the information processing system 101, the determination result in step 608 becomes negative, and control transitions to step 610 (skipping step 609).
[0076] In step 609 (computation model management step) of FIG. 6, the pre-change computation model termination unit 1327 generates a termination event for the pre-change computation model functional unit 1203-OLD. As shown in step 706 in the flowchart 700 of the processing of the computation model software 130 (computation model functional unit 1203) in FIG. 7, the computation model software 130 (computation model functional unit 1203) sets a termination event that triggers its own termination before starting execution of the processing body for realizing the function provided by the computation model functional unit 1203. Therefore, when the pre-change computation model termination unit 1327 generates a termination event in step 609 of FIG. 6, the pre-change computation model functional unit 1203-OLD associated with the termination event terminates execution (see steps 708 and 713 of FIG. 7). This termination event is also illustrated in FIG. 16. After step 609, control transitions to step 610.
[0077] 6 (computation model management step), the computation model migration unit 1328 migrates the changed computation model function unit or new computation model function unit realized by the changed computation model software or new computation model software from the computation core (CPU core) to which the computation model management unit 1301 is assigned to the computation core (CPU core) to which it is assigned that was determined in step 605 (executes inter-core migration). Here, in step 607, the changed computation model function unit or new computation model function unit is in a sleep state waiting for a timer interrupt, so in step 610, the changed computation model function unit or new computation model function unit is also migrated between cores while remaining in a sleep state waiting for a timer interrupt. This inter-core migration is also illustrated in FIG. (Note that in FIG. 16, only the changed computation model function unit 1203-NEW is illustrated, and the new computation model function unit is not illustrated, but a similar inter-core migration may be performed for the new computation model function unit as well. However, for the new computation model function unit, the timing at which the inter-core migration is performed may be the execution cycle 1351 that is earlier than the immediately preceding execution cycle 1352.)
[0078] As described above, the changed computation model software (changed computation model function unit 1203-NEW) is handled by a function unit included in the third phase unit 1313, so it is possible to make the pre-change computation model function unit 1203-OLD execute processing before the execution start time 1368 indicated by the execution start time information 3008, and make the post-change computation model function unit 1203-NEW execute processing after the execution start time 1368. Furthermore, with regard to the computation model function unit 1203 for the computation model 113 included in a certain function logic 110, the pre-change computation model function unit 1203-OLD and the post-change computation model function unit 1203-NEW are not executable at the same time in the same computation core (CPU core), so that management of the computation model function unit 1203 is simplified and there is a reduced possibility of an error state occurring such that the pre-change computation model function unit 1203-OLD and the post-change computation model function unit 1203-NEW are executed at the same time. As described above, after the series of processes in the first phase section 1311, the second phase section 1312, and the third phase section 1313 are completed, the information processing system 101 reaches the execution start time 1368 indicated by the execution start time information 3008.
[0079] 4.2.3.4. Processing of the calculation model function unit after the execution start time Steps 611, 612, and 613 in Fig. 6 indicate processing that is executed by the changed computation model function unit or the new computation model function unit realized by the changed computation model software or the new computation model software in the assigned computation core (CPU core) after the execution start time 1368 indicated by the execution start time information 3008 is reached. Steps 611, 612, and 613 in Fig. 6 will be described below with reference to Fig. 7 showing a flowchart of processing by the computation model software (computation model function unit).
[0080] In step 611 of Fig. 6, in response to the occurrence of a timer interrupt as the execution start time 1368 indicated by the execution start time information 3008 is reached, the changed computation model functional unit 1203-NEW or the new computation model functional unit wakes up from sleep mode. This wake-up operation is also shown in the flowchart of Fig. 7. That is, if it is determined in step 704 of Fig. 7 that a timer interrupt has been received, the computation model software 130 (computation model functional unit 1203) wakes up in step 705. The wake-up is also illustrated in Fig. 16.
[0081] In step 612 of FIG. 6, the woken-up computation model functional unit 1203 sets an end event that triggers the termination of its own computation model software 130 (computation model functional unit 1203) (for example, before execution of a processing body for realizing a function to be provided). The operation of setting this end event is also shown in the flowchart of FIG. 7. That is, in step 706 of FIG. 7, the computation model functional unit 1203 sets its own end event. To realize the setting of the end event, for example, a code for setting its own end event may be written as program code written in the computation model software 130. The setting of the end event is also illustrated in FIG. 16. The reason why the computation model function unit 1203 sets its own end event is that at a later time, when it becomes the pre-change computation model function unit 1203-OLD, it will be able to accept the end event generated by the pre-change computation model end unit 1327.
[0082] 6, the computation model function unit 1203 executes the main processing for realizing the function provided by the computation model function unit 1203. The execution of this main processing corresponds to step 707 and subsequent steps in the flowchart of FIG. As described above, the computation model function unit 1203 is allocated time resources within the execution cycle 1351 of the computation core (CPU core). Furthermore, when the pre-change computation model termination unit 1327 generates an end event corresponding to its own computation model function unit 1203, it is desirable for the computation model function unit 1203 to accept the end event and terminate. To realize the above operation, for example, the processing of the flowchart shown from step 707 onwards in Fig. 7 may be performed. Note that the contents of each of the processing steps shown from step 707 onwards may be written as program code in the computation model software 130, or may be realized as a function of the computation model management unit 1301.
[0083] 7, the computation model function unit 1203 executes a processing body for realizing the function provided by the computation model function unit 1203. Here, in order to be able to accept an end event or to comply with the constraints of the time resources allocated within the execution cycle 1351 of the computation core (CPU core), for example, the execution of the processing body in step 707 may be performed for each minimum processing unit (for example, interrupts are disabled during the execution of one minimum processing unit). 7, the computation model function unit 1203 (or the computation model management unit 1301) determines whether or not it has detected the occurrence of an end event corresponding to the computation model function unit 1203. If the determination result in step 708 is affirmative, control transitions to step 713, where the computation model function unit 1203 terminates. If the determination result in step 708 is negative, control transitions to step 709. 7, the computation model function unit 1203 (or the computation model management unit 1301) determines whether the time resource allocated to the computation model function unit 1203 has been used up (whether the allocated time has expired) within the execution cycle 1351 of the computation core (CPU core). If the determination result of step 709 is positive, control transitions to step 710. If the determination result of step 709 is negative, control returns to step 707, and the main processing body (the next minimum processing unit) is executed. 7, the computation model function unit 1203 goes into a sleep state waiting for a timer interrupt. This sleep state is assumed to be woken up by a timer interrupt at the start of the time resource allocated to the computation model function unit 1203 within the next execution cycle 1351 of the computation core (CPU core). After step 710, the next execution cycle 1351 of the computation core (CPU core) begins, and control transitions to step 711. 7, the computation model function unit 1203 (or the computation model management unit 1301) determines whether or not there has been a timer interruption corresponding to the computation model function unit 1203. If the determination result of step 711 is affirmative, control transitions to step 712. If the determination result of step 712 is negative, control returns to step 711 itself. 7, the computation model function unit 1203 wakes up. After waking up, control is returned to step 707.
[0084] 4-3. Processing time statistical information update process (Figure 8, Figure 17, Figure 20) As described above, when the changed computation model software or new computation model software 231 (changed computation model SW or new computation model SW) included in the deployment information 230 is deployed to the information processing system 101, a record 2001 (row) of the processing time management table 2000 for the computation model software (computation model SW) to be deployed is recorded by each of the function units included in the first phase unit 1311. The record 2001 (row) of the processing time management table 2000 is used as a decision criterion when allocating time resources of a computation core (CPU core) to the computation model function unit 1203 realized by the computation model software (computation model SW). 6 is generated based on the planned system processing time statistical information 232, the planned system specification information 233, and the information processing system specification information 1433. In other words, the information processing system processing time statistical information 1710 included in the record 2001 (row) of the processing time management table 2000 is an estimated value as statistical information of the processing time in the information processing system when the record 2001 (row) is initially recorded. The following describes how the computation model function unit 1203 actually executes processing in the information processing system 101, and as the processing time is measured, the information processing system processing time statistical information 1710 contained in record 2001 (row) of the processing time management table 2000 is updated. By updating the information processing system processing time statistical information 1710 with information on the processing time measured in the information processing system 101, the information processing system processing time statistical information 1710 held in the record 2001 (row) of the processing time management table 2000 becomes closer to the actual state of the information processing system 101. Therefore, it can be expected that the allocation result of the computation model function unit 1203 to the computation cores (CPU cores) performed using the information in the record 2001 (row) of the processing time management table 2000 will be more appropriate.
[0085] Fig. 8 shows a flowchart of a process for updating the information processing system processing time statistical information 1710 using information on the processing time measured by the information processing system 101. Fig. 17 shows a functional configuration related to the process for updating the information processing system processing time statistical information 1710. Fig. 20 shows an example of a processing time management table 2000. The process for updating the information processing system processing time statistical information 1710 will be explained using Figs. 8, 17 and 20 above.
[0086] 8, the information processing system processing time measurement unit 1341 measures the processing time of the computation model function unit 1203 implemented by the computation model software 130. The measurement value is indicated as an information processing system processing time measurement value 1720 in FIG. 17. As described above, when the computation model function unit 1203 executes processing for each execution cycle 1351 of the computation core (CPU core), the information processing system processing time measurement value 1720 may be a measurement value for each execution cycle 1351. Furthermore, as already explained using Figure 15, when the latency w for waking up the computation model function unit 1203 (which is more dependent on the performance of the computation core (CPU core) than on the processing content of the computation model function unit 1203) is divided into the processing time (p_* in Figure 15 (* is a function logic ID)) of the computation model function unit 1203 (which is more dependent on the processing content of the computation model function unit 1203), the information processing system processing time measurement value 1720 may be a measurement value of the processing time excluding the latency w for waking up the computation model function unit 1203. 8, the processing time statistical information update unit 1342 reads, from the processing time management table 2000, a record 2001 (row) for the computation model function unit 1203 that was the measurement target in step 801. The record 2001 (row) includes information processing system processing time statistical information 1710. For convenience, the information processing system processing time statistical information 1710 read from the processing time management table 2000 before the update by the processing time statistical information update unit 1342 is referred to as pre-update information processing system processing time statistical information 1711. The pre-update information processing system processing time statistical information 1711 (information processing system processing time statistical information 1710) may include, for example, a value 3010 indicating the average processing time, a value 3011 indicating the fluctuation of the processing time (for example, a standard deviation), and a value 3012 indicating the number of samples of the processing time measurement. 8, the processing time statistical information update unit 1342 generates updated information processing system processing time statistical information 1712 using the information processing system processing time statistical information 1711 before the update and the information processing system processing time measurement value 1720. The processing time statistical information update unit 1342 calculates the value 3010 indicating the average processing time and the value 3011 indicating the fluctuation in processing time (e.g., standard deviation) to be included in the updated information processing system processing time statistical information 1712, using, for example, a value 3010 indicating the average processing time, a value 3011 indicating the fluctuation in processing time (e.g., standard deviation), and a value 3012 indicating the number of processing time measurement samples included in the information processing system processing time statistical information 1711 before the update, and one or more measurement value samples of processing time included in the information processing system processing time measurement value 1720. In addition, the processing time statistical information update unit 1342 adds, for example, a value 3012 indicating the number of processing time measurement samples included in the information processing system processing time statistical information 1711 before the update to the value of the number of processing time measurement sample values included in the information processing system processing time measurement value 1720, and sets the sum resulting from this addition as a value 3012 indicating the number of processing time measurement samples to be included in the information processing system processing time statistical information 1712 after the update. In step 804 of FIG. 8, the processing time statistical information update unit 1342 records the updated information processing system processing time statistical information 1712 generated (calculated) in step 803 in the processing time management table 2000. As illustrated in Figure 20, when record 2001 (row) is initially registered in processing time management table 2000, value 3012 indicating the number of samples indicates the number of samples of the measured value of processing time in planning system 1101, but as measurement of processing time in information processing system 101 is repeated, value 3012 indicating the number of samples becomes larger.
[0087] 4.4. Input / Output Mapping Change Processing (Figures 9-11, 18, 19, 22, and 23) In the above, the function logic 110 is considered to consist of an input model 111, an operation model 113, and an output model 115, and changes to the functions provided are assumed to occur mainly in the operation model 113. In other words, it is assumed that the frequency with which the functions provided by the input model 111 and the output model 115 are changed is relatively low. However, even if the functions provided by the input model 111 (input model function unit 1201) are not changed, the designation of the information processing system 101 (IED) and the calculation model function unit 1203 that perform processing based on the provided information 140 (input information 150 derived from) provided by the information providing device 207 (MU) may be changed depending on the status of the physical system (for example, a power transmission and distribution system or a digital substation) that is the object of control by the control system 201, and the operating status and normal or abnormal status of the systems, devices, functional units, and mechanisms included in the control system 201, in other words, the correspondence (input correspondence) between the information providing device 207 (MU), the information processing system 101 (IED), and the calculation model function unit 1203. Furthermore, even if the functions provided by the output model 115 (output model function unit 1205) are not changed, the designation of the controlled device 208 (CBC) that is the destination of the output information 160 (control information 170 derived from the output information 160) that is the result of processing performed by the information processing system 101 (IED) and the calculation model function unit 1203, that is, the correspondence (output correspondence) between one or more of the information providing device 207 (MU), the information processing system 101 (IED), and the calculation model function unit 1203 and the controlled device 208 (CBC), may be changed depending on the status of the physical system (for example, a power transmission and distribution system or a digital substation) that is the object of control controlled by the control system 201, and the operating status and normal or abnormal status of the systems, devices, functional units, mechanisms, etc. included in the control system 201. The following describes the processing performed when the input / output relationship settings, such as the input association and output association, are changed. The following description is given along the flowchart in Figure 9. Other drawings will also be referenced as appropriate. Other drawings which may be referred to include FIGS. 10, 11, 18, 19, 22 and 23. As described below, the input / output relationship settings such as input correspondence and output correspondence are changed, so that the degree to which the series of processes for changing the input / output relationship settings interferes with the execution of processing of the functional logic 110 in the information processing system 101 can be reduced.
[0088] 1. Overview of Figures 10 and 18 Among other drawings referenced, Figures 10 and 18 are generally described below. Fig. 10 shows an example 1000 of input association and output association change that can be realized by "4.4. Input / Output Association Change Processing." Fig. 10 shows an example 1001 of the situation before the input association and output association are changed, and an example 1002 of the situation after the input association and output association are changed. In example 1001 of the situation before the input and output correspondences are changed, the provided information 140 (input information 150 derived from) provided by the information providing device 207-a (MU-a) written as "MU-a" is transmitted to the calculation model function unit 1203 written as "protection relay-r (slot ID: 1)" in the information processing system 101-A (IED-A) written as "IED-A", and the output information 160 (control information 170 derived from) which is the processing result of the calculation model function unit 1203 is transmitted to the controlled device 208-α (CBC-α) written as "CBC-α". In addition, in example 1001 of the situation before the input correspondence or output correspondence is changed, the provided information 140 (input information 150 derived from) provided by the information providing device 207-b (MU-b) written as "MU-b" is transmitted to the calculation model function unit 1203 written as "protection relay-t (slot ID: 5)" in the information processing system 101-B (IED-B) written as "IED-B", and the output information 160 (control information 170 derived from) which is the processing result of the calculation model function unit 1203 is transmitted to the controlled device 208-β (CBC-β) written as "CBC-β". Here, suppose that a situation arises in which the information processing system 101 (IED) and the calculation model function unit 1203 that handle information on the information providing device 207-a (MU-a) denoted as "MU-a" and the controlled device 208-α (CBC-α) denoted as "CBC-α" need to be changed due to changes in the status of the physical system (for example, a power transmission and distribution system or a digital substation) that is the object of control by the control system 201, or the operating status or normal or abnormal status of the systems, devices, functional units, mechanisms, etc. included in the control system 201. For example, the information providing device 207-a (MU-a) denoted as "MU-a", the controlled device 208-α (CBC-α) denoted as "CBC-α", and the calculation model function unit 1203 denoted as "protection relay-t (slot ID: 5)" in the information processing system 101-B (IED-B) denoted as "IED-B", which are relatively close in the topology of the interconnection mechanism 209, may be selected to be responsible for processing after the input association or output association is changed. Therefore, in example 1002 of the situation after the input association and output association have been changed, the input association and output association have been changed so that the provided information 140 (input information 150 derived from) provided by the information providing device 207-a (MU-a) written as ``MU-a'' is transmitted to the calculation model function unit 1203 written as ``protection relay-t (slot ID: 5)'' in the information processing system 101-B (IED-B) written as ``IED-B'', and the output information 160 (control information 170 derived from) which is the processing result of the calculation model function unit 1203 is transmitted to the controlled device 208-α (CBC-α) written as ``CBC-α''. If the input associations and output associations can be changed as described above, it becomes possible to optimize the division of roles between information processing systems and function logics (computation model function units) in response to changes in the status of the physical system (for example, a power transmission and distribution system or a digital substation) that is the object of control by the control system 201. Furthermore, even if a situation arises in which the systems, devices, function units, mechanisms, etc. (for example, the information processing system 101 or the function logic 110 (computation model function unit 1203)) included in the control system 201 are unable to execute processing normally, changing the input associations and output associations makes it possible for the control system 201 as a whole to continue operating.
[0089] FIG. 18 shows a functional configuration 1800 of an input / output change unit 1801 (and the information handled) realized by the information processing system 101. The input / output change unit 1801 receives input association instruction information 240 or output association instruction information 250 from the planning system 1101, generates input traffic setting information 260 or output traffic setting information 270, and transmits the input traffic setting information 260 or output traffic setting information 270 to the relay system 1901 (network switch). The input / output change unit 1801 may have, as functional units related to the input association instruction information 240, an input association instruction information acquisition unit 1811, an input slot identification information specification unit 1812 (input slot ID specification unit), an input traffic setting information generation unit 1813, and an input traffic setting information transmission unit 1814. Furthermore, the input / output change unit 1801 may have, as functional units related to the output association instruction information 250, an output association instruction information acquisition unit 1821, an output slot identification information specification unit 1822 (output slot ID specification unit), an output traffic setting information generation unit 1823, and an output traffic setting information transmission unit 1824. The information processing system 101 may have a slot identification information table 2200 (slot ID table) as a table accessible from the input / output change unit 1801. As shown in Fig. 18 and Fig. 22, a record 2201 (row) of the slot identification information table 2200 (slot identification information table) may record function logic identification information 3003 (function logic ID), slot identification information 3004 (slot ID), and slot setting time information 3007 in association with each other. The slot identification information 3004 (slot ID) is information for identifying the input information holding slot area 1221 or the output information holding slot area 1241 associated with the computation model function unit 1203 for the computation model 113 included in the function logic 110 indicated by the function logic identification information 3003 (function logic ID). The slot setting time information 3007 indicates information about the time when the association between the function logic identification information 3003 (function logic ID) and the slot identification information 3004 (slot ID) indicated in the record 2201 (row) is validated. The input association instruction information 240 and the input traffic setting information 260 are common in that they include information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and association change time information 3009. On the other hand, they differ in that the input association instruction information 240 includes function logic identification information 3003 (function logic ID), while the input traffic setting information 260 includes slot identification information 3004 (slot ID). The output correspondence instruction information 250 and the output traffic setting information 270 may include information providing device identification information 3001 (information providing device ID) and information processing system identification information 3002 (information processing system ID), and are common in that they include correspondence change time information 3009. On the other hand, they differ in that the output correspondence instruction information 250 may include function logic identification information 3003 (function logic ID), whereas the output traffic setting information 270 may include slot identification information 3004 (slot ID). Although the details will be described later, a slot identification information table 2200 (slot ID table) is used to replace the above-mentioned different items.
[0090] 4.4.2. Processing of the flowchart in Figure 9 Below, a series of steps relating to changes in input association and output association will be explained along the flowchart of FIG. In the flowchart of FIG. 9, steps 901 to 902 are processes performed by the planning system 1101, steps 903 to 906 are processes performed by the input / output change unit 1801 in the information processing system 101, and steps 907 to 909 are processes performed by the relay system 1901.
[0091] 4.4.2.1. Planning System Processing for Input or Output Mapping Changes In step 901 of FIG. 9, the input / output association instruction information generator 1121 in the planning system 1101 generates the input association instruction information 240 or the output association instruction information 250.
[0092] The input association instruction information 240 instructs to set or change the association (input association) between the information providing device 207 (MU), the information processing system 101 (IED), and the function logic 110 (including the computation model 113 (computation model function unit 1203)) implemented in the information processing system 101. As shown in FIG. 11 , the input association instruction information 240 may include information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), function logic identification information 3003 (function logic ID), and association change time information 3009. The association change time information 3009 indicates the time at which the input association indicated in the input association instruction information 240 becomes valid in the control system 201 (including the relay system 1901). In the example of Figure 10, input association instruction information 240 may be generated such that information providing device identification information 3001 (information providing device ID) indicates information providing device 207-a (MU-a), information processing system identification information 3002 (information processing system ID) indicates information processing system 101-B (IED-B), and function logic identification information 3003 (function logic ID) indicates the calculation model 113 (calculation model function unit 1203) included in the function logic 110 of protection relay-t.
[0093] The output association instruction information 250 instructs to set or change an association (output association) between the information providing device 207 (MU), the information processing system 101 (IED), one or more of the function logic 110 (including the computation model 113 (computation model function unit 1203)) implemented in the information processing system 101, and the control target device 208 (CBC). As shown in FIG. 11 , the output association instruction information 250 may include one or more of information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and function logic identification information 3003 (function logic ID), control target device identification information 3006 (control target device ID), and association change time information 3009. The association change time information 3009 indicates the time at which the output association indicated in the output association instruction information 250 becomes valid in the control system 201 (including the relay system 1901). In the example of Figure 10, output association instruction information 250 may be generated such that information providing device identification information 3001 (information providing device ID) indicates information providing device 207-a (MU-a), information processing system identification information 3002 (information processing system ID) indicates information processing system 101-B (IED-B), function logic identification information 3003 (function logic ID) indicates calculation model 113 (calculation model function unit 1203) included in the function logic 110 of protection relay-t, and controlled device identification information 3006 (controlled device ID) indicates controlled device 208-α (CBC-α). In this case, all items in the output correspondence instruction information 250, namely, information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and functional logic identification information 3003 (functional logic ID), have valid values; however, in other cases, there may be items in the output correspondence instruction information 250, namely, information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), and functional logic identification information 3003 (functional logic ID), for which no valid value is set (items that are ignored in terms of control).
[0094] Furthermore, in the above, a distinction is made between input correspondence instruction information 240 and output correspondence instruction information 250, but input / output correspondence instruction information in a unified format without making this distinction may be generated by the input / output correspondence instruction information generation unit 1121 and used in the control system 201. 10, input / output association instruction information may be generated such that the information providing device identification information 3001 (information providing device ID) indicates the information providing device 207-a (MU-a), the information processing system identification information 3002 (information processing system ID) indicates the information processing system 101-B (IED-B), the function logic identification information 3003 (function logic ID) indicates the calculation model 113 (calculation model function unit 1203) included in the function logic 110 of the protection relay-t, and the controlled device identification information 3006 (controlled device ID) indicates the controlled device 208-α (CBC-α). Such input / output association instruction information is used to set or change both the input association and the output association collectively.
[0095] The input / output correspondence instruction information generation unit 1121 may execute the above step 901 after making changes to the control plan of the physical system (e.g., a power transmission and distribution system or a digital substation) that is the object of control by the control system 201, using the provided information 140 (or input information 150 derived therefrom) provided by the information providing device 207 (MU), information on the results of processing performed by the information processing system 101 (IED) using the input information 150 (information processing system processing result information), and information on the results of processing performed by the SCADA 203 using the input information 150 and the information processing system processing result information (SCADA processing result information). Alternatively, the input / output correspondence instruction information generation unit 1121 may execute the above step 901 taking into consideration the operating status and normal or abnormal status of the systems, devices, functional units, mechanisms, etc. that constitute the control system 201 (for example, the information processing system 101 (IED), the calculation model functional unit 1203, input model functional unit 1201, output model functional unit 1205, interconnection mechanism 209, relay system 1901 (network switch), information providing device 207 (MU), and control target device 208 (CBC)) that are realized in the information processing system 101 (IED)).
[0096] In step 902 of Figure 9, the input / output correspondence instruction information sending unit 1123 in the planning system 1101 sends the input / output correspondence instruction information 240 or the output correspondence instruction information 250 (or input / output correspondence instruction information in a unified format) generated in step 901 to a destination within the information processing system 101 (IED).
[0097] 4.4.2.2. Processing of input / output change units within information processing systems 9, input association instruction information acquisition unit 1811 in input / output change unit 1801 acquires input association instruction information 240 transmitted in step 902. Alternatively, in step 903 in Fig. 9, output association instruction information acquisition unit 1821 in input / output change unit 1801 acquires output association instruction information 250 transmitted in step 902. Alternatively, if input / output association instruction information in the unified format shown above is transmitted in step 902, an input / output association instruction information acquisition unit formed by integrating input / output association instruction information acquisition unit 1811 and output association instruction information acquisition unit 1821 in input / output change unit 1801 acquires the input / output association instruction information.
[0098] 9, the input slot identification information specifying unit 1812 (input slot ID specifying unit) in the input / output change unit 1801 specifies slot identification information 3004 (slot ID) by using the function logic identification information 3003 (function logic ID) included in the input association instruction information 240 and the slot identification information table 2200 (slot ID table). As shown in Fig. 18 and Fig. 22, a record 2201 (row) of the slot identification information table 2200 (slot ID table) includes the slot identification information 3004 (slot ID) related to the function logic identification information 3003 (function logic ID) and slot setting time information 3007 indicating the time at which the record 2201 becomes valid (the time at which the association between the function logic 110 (the computation model 113 (computation model function unit 1203) included in the function logic 110) and the input information holding slot area 1221 / output information holding slot area 1241 becomes valid). Therefore, the input slot identification information identification unit 1812 (input slot ID identification unit) identifies a record 2201 (row) having the same value as the value indicated by the function logic identification information 3003 (function logic ID) included in the input correspondence instruction information 240, and then obtains the slot identification information 3004 (slot ID) included in the identified record 2201 (row). Similarly, in step 904 of Figure 9, if a valid value is set as function logic identification information 3003 (function logic ID) in the output correspondence instruction information 250, the output slot identification information specification unit 1822 (output slot ID specification unit) in the input / output change unit 1801 specifies the slot identification information 3004 (slot ID) using the function logic identification information 3003 (function logic ID) and the slot identification information table 2200 (slot ID table). Alternatively, similarly, in step 904 of FIG. 9, when input / output correspondence instruction information in the unified format shown above is handled, the slot identification information identification unit (slot ID identification unit) formed by integrating the input slot identification information identification unit 1812 (input slot ID identification unit) and the output slot identification information identification unit 1822 (output slot ID identification unit) in the input / output change unit 1801 identifies the slot identification information 3004 (slot ID) using the function logic identification information 3003 (function logic ID) included in the input / output correspondence instruction information and the slot identification information table 2200 (slot ID table).
[0099] 9, the input traffic setting information generation unit 1813 in the input / output change unit 1801 generates the input traffic setting information 260. As shown in Fig. 18, the input association instruction information 240 and the input traffic setting information 260 are similar except that the input association instruction information 240 includes functional logic identification information 3003 (functional logic ID), whereas the input traffic setting information 260 includes slot identification information 3004 (slot ID). Therefore, the input traffic setting information generation unit 1813 may generate the input traffic setting information 260 in such a manner that the functional logic identification information 3003 (functional logic ID) included in the input association instruction information 240 is replaced with the slot identification information 3004 (slot ID) obtained in step 904. 9, the output traffic setting information generation unit 1823 in the input / output change unit 1801 generates the output traffic setting information 270. Alternatively, similarly, when the input / output association instruction information in the unified format shown above is handled in step 905 in Fig. 9, the traffic setting information generation unit formed by integrating the input traffic setting information generation unit 1813 and the output traffic setting information generation unit 1823 in the input / output change unit 1801 generates input / output traffic setting information in which the input traffic setting information 260 and the output traffic setting information 270 have a unified format.
[0100] In step 906 of FIG. 9, the input traffic setting information transmitting unit 1814 in the input / output changing unit 1801 transmits the input traffic setting information 260 to the relay system 1901 as the destination. 9, the output traffic setting information transmitting unit 1824 in the input / output changing unit 1801 transmits the output traffic setting information 270 to the relay system 1901. Alternatively, in the same manner, when the input / output traffic setting information in the unified format shown above is handled in step 906 in FIG. 9, the input / output traffic setting information transmitting unit formed by integrating the input traffic setting information transmitting unit 1814 and the output traffic setting information transmitting unit 1824 in the input / output changing unit 1801 transmits the input / output traffic setting information to the relay system 1901.
[0101] As described above, the input / output change unit 1801 in the information processing system 101 (IED) converts the function logic identification information 3003 (function logic ID) into slot identification information 3004 (slot ID), generates various types of traffic setting information based on various types of association instruction information obtained from the planning system 1101, and transmits the various types of traffic setting information to the relay system 1901. Therefore, when setting or changing the association of input / output relationships, the planning system 1101 does not necessarily need to know the association between the function logic 110 (the computation model 113 (computation model function unit 1203) included in the function logic) and the input information holding slot area 1221 and the output information holding slot area 1241 in the information processing system 101 (IED). Furthermore, the relay system 1901 only needs to be able to handle slot identification information 3004 (slot ID), and does not need to know information about the calculation model 113 (calculation model function unit 1203) itself included in the function logic 110, or the function logic identification information 3003 (function logic ID). In this way, when setting or changing the correspondence between input and output relationships, the planning system 1101 and the relay system 1901 no longer retain information that is not actually necessary, which improves control efficiency and increases computer security.
[0102] 4.4.2.3. Processing of relay systems when input or output mappings are changed 9, the table modification unit 1931 in the relay system 1901 (network switch) acquires the input traffic setting information 260 or the output traffic setting information 270 transmitted in step 906. Alternatively, when the input / output traffic setting information in the unified format shown above is handled, the table modification unit 1931 acquires the input / output traffic setting information transmitted in step 906 in step 907 of FIG.
[0103] 9, the table modification unit 1931 prepares a record 2301 (row) that reflects the contents of the input traffic setting information 260, the output traffic setting information 270, or the input / output traffic setting information acquired in step 907. This record 2301 (row) is to be registered in the traffic management table 2300. The record 2301 (row) describes the association (input association) between the information providing device 207 (MU), the information processing system 101 (IED), and the input information holding slot area 1221, or describes the association (output association) between one or more of the information providing device 207 (MU), the information processing system 101 (IED), and the output information holding slot area 1241, and the control target device 208 (CBC), or describes both the input association and the output association. 19 and 23, a record 2301 (row) may be capable of recording the following items: information providing device identification information 3001 (information providing device ID), information processing system identification information 3002 (information processing system ID), slot identification information 3004 (slot ID), controlled device identification information 3006 (controlled device ID), and association change time information 3009. The association change time information 3009 indicates the time at which the input association or output association indicated by the record 2301 (row) becomes valid in the control system 201. More specifically, the association change time information 3009 indicates the time at which the input association or output association indicated by the record 2301 (row) becomes valid in processing performed by the control system 201 (relay system 1901 included in the control system 201).
[0104] In step 909 of FIG. 9, at the time indicated by the association change time information 3009, the record 2301 (row) prepared in step 908 becomes valid in the control system 201 (the relay system 1901 (network switch) included therein) and the traffic management table 2300. There are several possible methods for validating the record 2301 (row) prepared in step 908 at the time indicated by the association change time information 3009. One method is to identify a valid record in the traffic management table 2300 by comparing the association change time information 3009 included in the record 2301 (row) with the current time. As shown in Fig. 23, even if there are multiple records 2301 (rows) for "MU-a" having the same value for information providing device identification information 3001 (information providing device ID) as records 2301 (rows) indicating input associations, it is possible to identify the record 2301 (row) that is valid at the current time by comparing the association change time information 3009 included in each record 2301 (row) with the current time. Another method is to hold the record 2301 (row) in a buffer area until the time when the record 2301 (row) becomes valid, without recording the record 2301 (row) in the traffic management table 2300. Then, at the time indicated by the association change time information 3009, the record 2301 (row) is recorded in the traffic management table 2300, and the record 2301 (row) becomes valid in the control system 201 (the relay system 1901 (network switch) included in the control system 201).
[0105] The above describes two methods for keeping the pre-change record valid until a predetermined time and validating the changed record after the predetermined time, but these two methods can be used not only for the traffic management table 2300 but also for other types of tables. For example, a method similar to the first method described above is shown in the allocation core table 2100 in Fig. 21 and the slot identification information table (slot ID table) in Fig. 22. The second method (method using a buffer) described above may also be used in these tables.
[0106] 5. Other (variations) The present disclosure is not limited to the above-described embodiments and includes various modifications. Part of the configurations and processes of the embodiments may be replaced with the configurations and processes of other conceivable embodiments. The configurations and processes of other conceivable embodiments may be added to the configurations and processes of the embodiments. For example, the present disclosure may include the following modified embodiments.
[0107] (A) Integrated control of changes to calculation model software and changes to input / output mapping In the above, for convenience, as shown in FIG. 11, the functional units for changing the computation model software 130 (computation model SW) and the functional units for changing the input association and output association are described separately. However, changes to the computation model software 130 (computation model SW) and changes to the input associations and output associations may be controlled integrally. For example, the planning system 1101 may associate changes to the computation model software 130 (computation model SW) with changes to the input associations and output associations to create a plan to control the control system 201 itself and the physical system (e.g., a power transmission and distribution system or a digital substation) controlled by the control system 201. In this case, the execution start time information 3008 for changes to the computation model software 130 (computation model SW) and the association change time information 3009 for changes to the input associations and output associations may be associated with each other. For example, the planning system 1101 may set the execution start time information 3008 and the association change time information 3009 to the same value. In this case, the changes to the computation model software 130 (computation model SW) and the changes to the input associations and output associations become effective in the control system 201 simultaneously. In this way, it becomes possible to set a detailed plan for controlling the control system 201 itself and the physical system (for example, a power transmission and distribution system or a digital substation) controlled by the control system 201.
[0108] (B) Table integration In the above embodiment, the tables handled by the information processing system 101 (IDE) included the processing time management table 2000 illustrated in FIG. 20, the assigned core table 2100 illustrated in FIG. 21, and the slot identification information table 2200 (slot ID table) illustrated in FIG. 22. In a modified example, some or all of the above tables may be integrated. The processing time management table 2000 illustrated in Fig. 20, the assigned core table 2100 illustrated in Fig. 21, and the slot identification information table 2200 (slot ID table) illustrated in Fig. 22 all have an item of function logic identification information 3003 (function logic ID) in the records of the tables, so that the tables and records can be integrated as appropriate. As described above, the format of the table can be adjusted as appropriate to suit the processing and management circumstances in the information processing system 101.
[0109] (C) Integration of planning systems and information processing systems In the above embodiment, as shown in FIG. 2, the planning system 1101 and the information processing system 101 (IED) are separate hardware components. In a modified example, the planning system 1101 and the information processing system 101 (IED) (or a broad information processing system 202 including the information processing system 101) may be integrated in terms of hardware. In that case, a group of functional units that provide the functions of the planning system 1101 and a group of functional units that provide the functions of the information processing system 101 (IED) operate in the integrated hardware. By doing so, it is expected that the cost of hardware, etc. can be reduced while balancing the degree of technological advancement in hardware with the degree of complexity of the control content required in the control system 201.
[0110] (D) Control of execution priority In the above description of the embodiment, no particular mention was made of setting the execution priority of the software (and the functional units realized by the execution of the software) executed by the arithmetic processing device 301 (and the arithmetic cores (CPU cores) included therein). In the above embodiment, it is also possible to set an execution priority for software (functional units) and change the execution priority. For example, the record 2101 (row) of the assigned core table 2100 illustrated in Fig. 21 shows that the execution priority is recorded in association with the function logic identification information 3003 (function logic ID). As an example of setting or changing the execution priority of the computation model software 130 (computation model function unit 1203), while there is a principle that the execution priority of the computation model function unit 1203 is higher than the execution priority of the computation model management unit 1301, when step 606 of FIG. 6 (step 702 of FIG. 7) is started, an execution priority equivalent to that of the computation model management unit 1301 may be set for the computation model software 130 (computation model function unit 1203), while after the inter-core movement (inter-core migration) in step 610 of FIG. 6, from step 611 of FIG. 6 onwards (step 705 of FIG. 7 onwards), the same execution priority as that set for the pre-change computation model function unit 1203-OLD may be set for the post-change computation model function unit 1203-NEW. As described above, if the execution priority is set and changed carefully, the processing of the various functional units in the arithmetic core (CPU core) can proceed smoothly.
[0111] The technical matters shown in the above-described embodiments of the present disclosure and the modified examples of the embodiments can be combined as appropriate as long as no technical contradiction occurs.
Claims
1. An information processing system, the information processing system has a processing unit that implements one or more functional logics; Each of the functional logics comprises an input model that performs processing on input information, an arithmetic model that performs processing on information that is a result of the processing by the input model, and an output model that performs processing to output output information that is a result of the processing by the arithmetic model, the arithmetic processing device executes arithmetic model software, which is software for the arithmetic model, thereby realizing a arithmetic model function unit, which is a function unit for the arithmetic model; the information processing system includes a computation model management unit that manages one or more of the computation model function units corresponding to one or more of the function logics in the computation processing device, An information processing system, wherein the calculation model management unit controls the calculation processing device to execute the changed calculation model software or new calculation model software for the calculation model included in the functional logic when the content of the processing realized by any of the functional logics is changed or when new functional logic is realized by the calculation processing device.
2. 2. The information processing system according to claim 1, the processing unit has a plurality of cores, a time resource of each of the cores can be allocated to each of one or more of the computational model functional units; the computation model management unit has a first phase unit, a second phase unit, and a third phase unit; the information processing system has a processing time management table for managing the processing time of the computation model function unit, The first phase section comprises: a computation model software deployment unit that deploys the changed computation model software or new computation model software in a state that the computation processing device can execute the software; a processing time management table registration unit that registers information about the computation model software to be deployed in the processing time management table; The second phase section comprises: an allocation destination core determination unit that determines the core to be allocated to execute the changed computation model software or the new computation model software using information registered in the processing time management table; a computation model startup unit that starts the computation model function unit corresponding to the changed computation model software or the new computation model software in the same core as the core that realizes the computation model management unit, the computation model software started by the computation model starting unit goes into a sleep state waiting for a timer interrupt, The third phase section comprises: a pre-change computation model termination unit that, if the pre-change computation model software is being executed when the third phase unit executes processing, generates a termination event related to the pre-change computation model software and terminates the pre-change computation model function unit corresponding to the pre-change computation model software; an information processing system having a computation model moving unit that moves the computation model function unit corresponding to the changed computation model software or new computation model software that is asleep waiting for a timer interrupt to the core to be assigned as determined by the assignment core determination unit.
3. 3. The information processing system according to claim 2, the time resource of the core is managed for each execution period of the core, the computation model management unit has a phase assignment unit, The phase assignment unit the time resource of the core is allocated to the first phase part or the second phase part in one or more of the execution periods of the core, which are included between a planned time, which is a time when a plan is set for the arithmetic processing device to execute the changed arithmetic model software or the new arithmetic model software, and an execution start time, which is a time when the arithmetic processing device starts executing the changed arithmetic model software or the new arithmetic model software; the time resource of the core is allocated to the third phase part in the execution period immediately before the execution start time, When allocating the time resources of the core to the first phase unit, the second phase unit, or the third phase unit, the time resources of the core excluding the portion allocated to the computation model function unit are allocated to the first phase unit, the second phase unit, and the third phase unit.
4. 2. The information processing system according to claim 1, the information processing system includes an input model function unit which is a function unit for the input model common to a plurality of the functional logics, and an output model function unit which is a function unit for the output model common to a plurality of the functional logics, the information processing system has an input information storage area and an output information storage area, the input information holding area has input information holding slot areas corresponding to the respective computation model function units, the input model function unit stores the input information in the input information holding slot area indicated by the slot identification information based on slot identification information included in the input information, the computation model functional unit reads out the input information from the input information holding slot area corresponding to the computation model functional unit, performs processing using the input information, and stores output information resulting from the processing in the output information holding area; The output model function unit reads the output information from the output information storage area and then performs processing to output the output information.
5. 5. The information processing system according to claim 4, the output information holding area has output information holding slot areas corresponding to the respective computation model function units, the computation model function unit stores the output information resulting from the processing in the corresponding output information holding slot area; The output model function unit reads the output information from the output information holding slot area and then performs processing to output the output information.
6. 3. The information processing system according to claim 2, the time resource of the core is managed for each execution period of the core, an information processing system, wherein the allocation core determination unit determines the core to be assigned to execute the modified computation model software or the new computation model software based on estimated values of latency, which is the time required for each computation model function unit realized by executing the computation model software, to wake up on the core, and processing time, which is the time required for the computation model function unit to perform processing within the execution cycle.
7. 1. A control system comprising: the control system includes one or more information processing systems according to claim 4, one or more relay systems, and an interconnection mechanism for transmitting and receiving information between the information processing systems and the relay systems; the relay system includes a provision information receiving unit, a traffic management table, an input information creating unit, an input information sending unit, and a table changing unit; the provision information receiving unit receives provision information from one or more information provision devices, the traffic management table records information providing device identification information, which is identification information of the information providing device that transmits the provided information, information processing system identification information, which is identification information of the information processing system that is the destination of the input information created based on the provided information, and a record associating the slot identification information, the input information creation unit specifies the information processing system identification information and the slot identification information based on the information providing device identification information of the information providing device that transmitted the provided information received by the provided information receiving unit and the traffic management table, and then assigns the specified information processing system identification information and the slot identification information to the provided information to create the input information, the input information transmitting unit transmits the input information created by the input information creating unit to the interconnection mechanism; the input model function unit executes a process of storing the acquired input information in the input information holding slot area when the information processing system identification information included in the input information acquired from the interconnection mechanism indicates the information processing system to which the input model function unit belongs; the information processing system includes an input / output change unit, the input / output change unit transmits input traffic setting information to the relay system when an association between the information providing device, the information processing system, and the functional logic is changed; the input traffic setting information includes the information providing device identification information, the information processing system identification information, the slot identification information, and association change time information indicating a time when the association change becomes effective after the association change; A control system in which the table change unit controls so that a record associating the information providing device identification information, the information processing system identification information, and the slot identification information contained in the input traffic setting information becomes effective in the traffic management table at the time indicated by the correspondence change time information contained in the input traffic setting information.
8. 8. The control system of claim 7, the input / output change unit includes an input association instruction information acquisition unit, an input slot identification information specification unit, an input traffic setting information generation unit, and an input traffic setting information transmission unit; the input association instruction information acquisition unit acquires input association instruction information including the information providing device identification information, the information processing system identification information, functional logic identification information for identifying the functional logic realized by the information processing system, and the association change time information; the input slot identification information specifying unit specifies the slot identification information associated with the computation model function unit for the functional logic indicated by the functional logic identification information included in the input association instruction information, the input traffic setting information generating unit generates the input traffic setting information by using the information providing device identification information included in the input association instruction information, the information processing system identification information included in the input association instruction information, the slot identification information identified by the input slot identification information identifying unit, and the association change time information included in the input association instruction information, The input traffic setting information transmitting unit transmits the input traffic setting information generated by the input traffic setting information generating unit to the relay system via the interconnection mechanism.
9. 9. The control system of claim 8, The relay system further includes an output information receiving unit, a control information creating unit, and a control information transmitting unit, the output information receiving unit receives the output information from the output model function unit, the traffic management table records records associating one or more of the information providing device identification information, the information processing system identification information, and the slot identification information with control target device identification information, which is identification information of a control target device that is a destination of control information created based on the output information, the control information creation unit identifies the control target device identification information based on one or more of the information providing device identification information, the information processing system identification information, and the slot identification information included in the output information received by the output information receiving unit, and based on the traffic management table, and then creates the control information by assigning the identified control target device identification information to the output information, the control information transmission unit transmits the control information created by the control information creation unit to the control target device; the input / output change unit transmits output traffic setting information to the relay system when an association between the control target device, the information processing system, and the functional logic is changed; the output traffic setting information includes one or more of the information providing device identification information, the information processing system identification information, and the slot identification information after the change of the association, the control target device identification information, and association change time information indicating a time when the change of the association becomes effective, A control system in which the table change unit controls so that a record associating one or more of the information providing device identification information, the information processing system identification information, and the slot identification information contained in the output traffic setting information with the controlled device identification information becomes effective in the traffic management table at the time indicated by the association change time information contained in the output traffic setting information.
10. 10. The control system of claim 9, the input / output change unit further includes an output correspondence instruction information acquisition unit, an output slot identification information specification unit, an output traffic setting information generation unit, and an output traffic setting information transmission unit; the output association instruction information acquisition unit acquires output association instruction information including one or more of the information providing device identification information, the information processing system identification information, and the functional logic identification information, the control target device identification information, and the association change time information; the output slot identification information specifying unit specifies the slot identification information associated with the computation model function unit for the functional logic indicated by the functional logic identification information included in the output association instruction information, the output traffic setting information generation unit generates the output traffic setting information using one or more of the information providing device identification information included in the output correspondence instruction information, the information processing system identification information included in the output correspondence instruction information, and the slot identification information identified by the output slot identification information identification unit, the control target device identification information based on information identifying the control target device, and the association change time information included in the output correspondence instruction information, The control system, wherein the output traffic setting information transmitting unit transmits the output traffic setting information generated by the output traffic setting information generating unit to the relay system via the interconnection mechanism.
11. 11. The control system of claim 10, the control system further comprises a planning system; the planning system includes a computation model software generation unit, a deployment information transmission unit, an input / output association instruction information generation unit, and an input / output association instruction information transmission unit; the computation model software generation unit generates the computation model software after the change or new computation model software, the deployment information transmission unit transmits deployment information including the computation model software generated by the computation model software generation unit to the information processing system, the input / output correspondence instruction information generation unit generates the input correspondence instruction information or the output correspondence instruction information, The input / output association instruction information transmitting unit transmits the input / output association instruction information or the output association instruction information generated by the input / output association instruction information generating unit to the information processing system.
12. 1. A control system comprising: The control system comprises an information processing system according to claim 2 and a planning system, The planning system includes a calculation model software generation unit, a planning system processing time measurement unit, and a deployment information transmission unit; the computation model software generation unit generates the computation model software after the change or new computation model software, the planning system processing time measurement unit executes the changed calculation model software or the new calculation model software in the planning system, thereby realizing the calculation model function unit in the planning system, measuring the processing time of the calculation model function unit in the planning system, and generating planning system processing time statistical information which is statistical information on the measured processing time, the deployment information transmission unit transmits to the information processing system deployment information including the computation model software generated by the computation model software generation unit, the planned system processing time statistical information, planned system specification information which is information on the specifications of the computational resources of the planned system, and execution start time information which indicates the time to start execution of the changed computation model software or the new computation model software, the first phase unit further includes a scaling factor calculation unit and a processing time management table registration information generation unit; the scaling factor calculation unit calculates a scaling factor related to a processing time based on the planned system specification information included in the deployment information and information processing system specification information which is information related to specifications of computational resources of the information processing system, the processing time management table registration information generation unit generates information processing system processing time statistical information as registration information to be registered in the processing time management table based on the scaling factor and the planned system processing time statistical information, The processing time management table registration unit registers a record including the information processing system processing time statistical information in the processing time management table.
13. 13. The control system of claim 12, Both the planning system processing time statistical information and the information processing system processing time statistical information include a value indicating an average processing time of the calculation model function unit, a value indicating fluctuation, and a value indicating the number of samples of measurement of the processing time, the computation model management unit has an information processing system processing time measurement unit and a processing time statistical information update unit, the information processing system processing time measurement unit measures a processing time of the computation model function unit in the information processing system when the computation model software is executed in the information processing system to realize the computation model function unit in the information processing system, A control system, wherein the processing time statistical information update unit updates the information processing system processing time statistical information registered in the processing time management table based on the processing time measured by the information processing system processing time measurement unit, the value indicating the average contained in the information processing system processing time statistical information registered in the processing time management table, the value indicating the fluctuation, and the value indicating the number of samples of the processing time measurement.
14. A method executed by an information processing system, comprising: Each of the functional logics realized by the information processing system comprises an input model that processes input information, an arithmetic model that processes information that is a result of the processing by the input model, and an output model that processes and outputs output information that is a result of the processing by the arithmetic model, The method includes a calculation model management step of controlling the information processing system to execute the changed calculation model software or the new calculation model software for the calculation model included in the functional logic when the content of the processing realized by any of the functional logics is changed or when new functional logic is realized in the information processing system.
15. A program executed by an information processing system, Each of the functional logics realized by the information processing system comprises an input model that processes input information, an arithmetic model that processes information that is a result of the processing by the input model, and an output model that processes and outputs output information that is a result of the processing by the arithmetic model, The program is configured to: A program for executing a calculation model management step that controls the information processing system to execute the changed calculation model software or the new calculation model software for the calculation model included in the functional logic when the content of the processing realized by any of the functional logics is changed or when new functional logic is realized in the information processing system.
Citation Information
Patent Citations
Management method for software module
JP1998254685A