WO2013136717A1 - 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム記憶媒体 - Google Patents
時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム記憶媒体 Download PDFInfo
- Publication number
- WO2013136717A1 WO2013136717A1 PCT/JP2013/001364 JP2013001364W WO2013136717A1 WO 2013136717 A1 WO2013136717 A1 WO 2013136717A1 JP 2013001364 W JP2013001364 W JP 2013001364W WO 2013136717 A1 WO2013136717 A1 WO 2013136717A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- result data
- processing
- unit
- output
- processing unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Definitions
- the present invention relates to a time-series data processing device, a time-series data processing method, and a time-series data processing program storage medium for processing time-series data.
- the present invention relates to a time-series data processing device, a time-series data processing method, and a time-series data processing program storage medium that can change processing in another arbitrary region while continuing to execute processing in a certain region on the device.
- data processing for time-series data refers to processing performed on time-series input data, that is, a series of data input one after another. Similarly, the result data of the data processing for the time series data is output one after another. “To be input one after another” means that a plurality of data arrive at the processing device at different timings over a certain period.
- time series data processing there is a process of taking the sum of the two most recent values of the time series data.
- the data array is represented as [1, 2, 3, 4], the data set is represented as ⁇ 1, 2, 3, 4 ⁇ , and the data set is represented as ⁇ 10.
- Degrees are represented by the type of parenthesis, such as degree, January 1>.
- numerical values of individual data such as 1 and 2 are expressed as “1” and “2”, and are distinguished from codes indicating constituent elements.
- the cycle of the clock used for the operation of the time-series data processing device is called “cycle”, and this is used as a unit of period.
- “At the start of the cycle” means the first time of the period
- “at the end of the cycle” means the last time of the period.
- the first cycle for a certain reference time is a period between the reference time plus zero seconds and the reference time plus 1 nanosecond
- the Nth cycle is the reference time plus (N ⁇ 1 ) Means the period from nanoseconds to the reference time plus N nanoseconds.
- the start of the Mth cycle means a reference time plus (M ⁇ 1) nanoseconds
- the end of the Mth cycle means a reference time plus M nanoseconds.
- the input data is a set of one or more values.
- a pair of temperature and date For example, a pair of temperature and date, a pair of temperature only, and a pair of brand, stock price and time.
- a set of temperature and date is represented as ⁇ 10 degrees, January 1>.
- the input data and the value handled by the device are simply referred to as “data” when there is no possibility of confusion between them.
- Time series data processing is often performed for multiple input data. Furthermore, time-series data processing is often performed on a window of time-series data.
- a “window” is a set of input data, and there are two types. One is a set of the most recent N input data, where N is a predetermined number (N is an integer equal to or greater than 1). The other is a set of input data that falls within that period, where P is a period of a predetermined time and one element of the set of input data is regarded as a time.
- a set of temperature and date is input data, and ⁇ 10 degrees, January 1>, ⁇ 11 degrees, January 2>, ⁇ 10 degrees, January 3>, ⁇ 10 degrees, January 4 It is assumed that time series data of> is given.
- the windows that fit in the period from January 4 to the past three days are ⁇ 11 degrees, January 2>, ⁇ 10 degrees, January 3>, ⁇ 10 degrees, January 4> ⁇ .
- window data In time series data processing, this window data is often stored.
- windows or window data are represented as arrays or sets.
- Partition An area in which the contents of the time series data processing can be defined, specifically, an area in which circuit information or the like for configuring a circuit for executing the processing can be written
- IC Integrated (Circuit) chip having a plurality of.
- An example of such an IC chip is a FPGA (Field Programmable Gate Gate Array).
- time series data processing can be executed using a processor that reads and executes a program from a memory as an IC chip. In this case, a program for designating processing contents, that is, a processing procedure may be written in the memory.
- the first user-defined process (referred to as “updated process”) is executed in the first partition, and the second user-defined process (referred to as “old process”) in the second partition. Is assumed to be executed.
- new process the updated process to the third user-defined process
- the update process in the first area is stopped and changed to the new process.
- the execution of the new process is started, and then the old process in the second area is stopped.
- an application that calculates an index to determine the timing of buying and selling financial products such as stock certificates.
- Some devices can calculate only a finite number of indices simultaneously. The brands and strategies to buy and sell change according to the time. Therefore, there is a need to change the index to be calculated according to the brand to be traded at that time and the trading strategy.
- time-series data 1 is input, and the old process saves the value as window data.
- time series data 2 is input, and the old process saves the value as window data. Also, since the old process has the latest two values, “3” is output as the result data.
- a rewrite instruction to circuit information for executing a new process is given. It is assumed that the process operating in the area where the circuit information for executing the new process is to be written is stopped, the circuit information for executing the new process is further written to the apparatus, and the operation is started. Here, it is assumed that circuit information for executing the new process is written in an area different from the old process, and the old process and the new process operate in parallel for a while.
- time series data “3” is input, and the new process saves the value as window data.
- time series data “4” is input, and the new process saves the value as window data.
- time series data “5” is input, and the new process saves the value as window data.
- the new process outputs “12” as result data.
- the old process is stopped or deleted, and the process change is completed.
- outputting the desired result in the desired order by controlling the output order and output target selection is referred to as “matching”. A detailed description of “matching” will be described later.
- Patent Documents 1, 2, 3, and Non-Patent Document 1 are described in Patent Documents 1, 2, 3, and Non-Patent Document 1.
- Patent Document 1 discloses a reconfigurable time-series data processing device.
- FIG. 26 shows a configuration diagram of the time-series data processing apparatus disclosed in Patent Document 1.
- the technique of Patent Document 1 is configured to execute a user-defined process.
- the processing unit 621, the processing control unit 611, the reconstruction unit 622, and the processing unit result are output to an output port to the outside. It consists of an output connection part 631 to be connected.
- the processing unit 621 executes processing, and the processing control unit 611 controls the start and stop of the processing that operates in the processing unit 621.
- the reconfiguration unit 622 reconfigures the processing unit 621.
- the output connection unit 631 connects or blocks the processing unit 621 and the output port to the outside.
- Patent Document 2 discloses a reconfigurable information processing system using a programmable logic circuit.
- usable logic cells are determined by using logic cell state data reflecting the use status of the logic cells of the programmable logic circuit.
- Patent Document 3 discloses a reconfigurable circuit.
- the reconfigurable cell is provided with a reset flag, and the reconfigurable cell is set to a protection mode that protects from reset or a normal mode that does not protect from reset.
- Non-Patent Document 1 discloses a reconfigurable time-series data processing device.
- FIG. 27 shows a configuration diagram of the time-series data processing device of Non-Patent Document 1.
- the technique of Non-Patent Document 1 includes a host computer 501, a processing unit 521, a processing control unit 511, a reconfiguration unit 522, and an output connection unit 531.
- the host computer 501 instructs a change of processing.
- the processing unit 521 is an area where a circuit that executes a process defined by the user can be configured (circuit information for executing the process is set), and executes the process.
- the process control unit 511 starts and stops the process that operates in the processing unit 521.
- the reconfiguration unit 522 performs reconfiguration of the processing unit 521.
- the output connection unit 531 transfers the result of the processing unit 521 to the output port to the outside of the apparatus.
- Non-Patent Document 1 The operation of the technique of Non-Patent Document 1 will be described with reference to FIGS.
- the host computer 501 and the process activation unit 511 are in a state where the first process operated by the processing unit 521 is activated.
- the output connection unit 531 permits the output of the result of the first process to the outside of the apparatus. Specifically, the output connection unit 531 connects the output of the processing unit 521 to the output port.
- a command to write the second process is issued from the host computer 502.
- the host computer 502 issues a command to the processing control unit 511 to reset the processing that operates in the processing unit 521.
- the process control unit 511 resets the process operating in the processing unit 521.
- the processing control unit 511 issues a command to the output connection unit 531 to block the output of the processing result of the processing unit 521 to the outside of the apparatus.
- the output connection unit 531 cuts off the connection between the processing unit 521 and the output port.
- the host computer 502 sends configuration information to the reconfiguration unit 522.
- the reconfiguration unit 522 sends the configuration information to the processing unit 521.
- each part is in a state as shown in FIG.
- Reconfiguration is complete at the end of the 13th cycle.
- the reconfiguration unit 522 notifies the processing control unit 511 of the completion of the reconfiguration.
- each part is in a state as shown in FIG.
- the processing control unit 511 starts the processing written in the processing unit 521. For example, the process control unit 511 deasserts the reset signal. Furthermore, the process control unit 511 checks whether the process has started. For example, the processing control unit 511 checks that a specific bit pattern is output from the processing unit 521.
- the process control unit 511 instructs the output connection unit 531 to permit output of the result of the second process to the outside of the apparatus.
- the output connection unit 531 permits the output of the result of the second process to the outside of the apparatus.
- the output connection unit 531 connects the output of the processing unit 521 to the output port.
- Time series data “3” is input at the start of the 16th cycle
- time series data “4” is input at the start of the 17th cycle
- time series data “5” is input at the start of the 18th cycle. Since the second process obtains [4, 5, 6] which is the latest binary value, the processing unit 501 calculates and outputs “15” as a result. At the end of the 18th cycle, each part is in a state as shown in FIG.
- the first user-defined process (updated process) is executed in the first area on the device, and the second user-defined process (old process) is executed in the second area.
- the process is updated when the old process is executed in the second area. That is, the updated process being executed in the first area is stopped, and the circuit information of the circuit that executes the third user-defined process (new process) is written in the first area. Then, execution of the new process is started and the old process is stopped. As described above, the old process is changed to the new process.
- Non-Patent Document 1 handles only one area, it is impossible to change from the updated process during the execution of the old process to the new process and to start the new process.
- the change in the target process includes the order of outputting the result data of the old process and the result data of the new process to the outside of the apparatus, and the result of the output among the result data of the new process and the result data of the old process There is a requirement of “ensuring consistency” for data selection.
- “Ensuring consistency” means controlling the relationship between the generation order and output order of new processing result data and old processing result data that exist simultaneously in the time-series data processing device, and generating new processing result data. This means that the result data to be output is selected based on the time. Details of “ensuring consistency” will be described in detail in the description of the embodiment.
- Non-Patent Document 1 handles only one area, the result data of the old process and the result data of the new process are not distinguished. Therefore, it is not possible to match the output of the result data of the old process and the new process to the outside of the apparatus.
- Patent Document 1 since the technology of Patent Document 1 cannot exchange information between a plurality of areas, it is not possible to match the output of the result data of the old process and the new process to the outside of the apparatus.
- Patent Document 2 it is possible to grasp the state of an area, such as whether or not the area is usable.
- the technique of Patent Document 2 does not consider a change from the old process to the new process, and does not include a means for identifying the processing content. That is, there is no information for determining whether the result data output from the processing circuit is based on the old process or the new process. Therefore, there is a problem that it is not possible to match the output of the result data of the old process and the new process to the outside of the apparatus.
- Patent Document 3 it is possible to set the effectiveness of resetting to each reconfigurable cell.
- the technique of Patent Document 3 does not consider the change from the old process to the new process, and does not include a means for identifying the processing content. Therefore, there is a problem that it is not possible to match the output of the result data of the old process and the new process to the outside of the apparatus.
- Non-Patent Document 1 and Patent Document 1 the processing in each of a plurality of areas is grasped and processed such as completed, executing, stopped, and reconfiguring the processing circuit.
- Non-Patent Document 1 and Patent Document 1-3 when changing from old processing to new processing during execution of old processing, the result data of the old processing and new processing are output to the outside of the apparatus.
- the present invention has been proposed in view of such circumstances, and it is possible to change to a new process during execution of an old process, select output data when the process is changed, and control the output order.
- An apparatus, a time-series data processing method, and a time-series data processing program storage medium are provided.
- the time-series data processing device of the present invention includes a reconfigurable first processing unit that executes the first process or the third process to generate the first result data or the third result data, and the second A second processing unit that executes the process of generating second result data; a reconfiguration unit that changes the process executed by the first processing unit from the first process to the third process; A first processing unit that stops the first processing in the first processing unit and starts the third processing in the first processing unit, and permits or prohibits the output of the first result data and the third result data.
- the first process control unit Based on an instruction from the process control unit, the first process control unit, a first output control unit that permits or prohibits the output of the first result data and the third result data, and the first result data includes the first
- the first identification information corresponding to the content of the process is added to generate a first result data set
- the second identification information corresponding to the content of the second process is added to the result data of 2 to generate a second set of result data
- the third result data corresponds to the content of the third process.
- An information management unit that adds the third identification information to generate a third set of result data, and when the processing change instruction is received from the outside, the first processing control unit stops the first processing and 3 is instructed to start the process 3 and to permit or prohibit the output of the first result data and the third result data, and to instruct the reconstruction unit to change from the first process to the third process.
- a state management unit that instructs the management unit to add the second identification information and the third identification information, and a second set of result data from the first output control unit to the second output control unit.
- the result data set is input, and based on the third identification information and the second identification information, the third result data Selecting one of the set or the second result data set, characterized by comprising result output matching unit for data output included in the set of results selected data.
- the first processing unit executes the first process to generate the first result data, and the first result data corresponds to the contents of the first process.
- the second processing unit executes the second process to generate the second result data, and the second result data includes the second result data.
- the second result data set is generated by adding the second identification information corresponding to the contents of the process, and the process change instruction is received from the outside, the first process in the first processing unit is stopped.
- the output of the first result data is prohibited, the process executed by the first processing unit is changed from the first process to the third process, the third process is started, and the third result data Is output, and third identification information corresponding to the content of the third process is added to the third result data to add the third Generating a set of result data, inputting a third set of result data from the first output control unit, inputting a second set of result data from the second output control unit; and third identification information and One of the third result data set and the second result data set is selected based on the second identification information, and the result data included in the selected result data set is output.
- the time-series data processing program storage medium of the present invention includes a first processing unit that executes the first process and outputs the first result data, and a first processing unit that executes the second process and outputs the second result data.
- reconfiguration means for changing the processing executed by the first processing unit from the first processing to the third processing in the computer included in the time-series data processing apparatus including the two processing units
- a first process control means for executing the stop of the first process and the start of the third process in the first processing unit, and permitting or prohibiting the output of the first result data and the third result data
- 1st output control means for permitting or prohibiting the output of the first result data and the third result data based on the instruction of the first process control means, and the first result data corresponds to the contents of the first process.
- the first result data is added with the first identification information.
- a second result data set is generated by adding the second identification information corresponding to the content of the second process to the second result data, and the third result data is set to the third result data.
- state management means for instructing the information management means to add the second identification information and the third identification information, and the second set of the third result data from the first output control unit, the second The second set of result data is input from the output control unit of the first, third identification information and second identification information Based on this, a program for selecting one of the third result data set or the second result data set and functioning as output matching means for outputting the result data included in the selected result data set is stored. .
- FIG. 3 is a block diagram illustrating a first example of implementation of a version comparison unit 121.
- FIG. 12 is a block diagram illustrating a second example of implementation of the version comparison unit 121.
- FIG. 10 is a block diagram illustrating an example of mounting a partial version comparison unit 1001.
- FIG. 10 is a flowchart which shows the process example in the time series data processing apparatus of embodiment of this invention. It is a flowchart which shows the process example in the time series data processing apparatus of embodiment of this invention.
- FIG. 10 is a block diagram showing a configuration of a time-series data processing device of Patent Document 1.
- FIG. It is a block diagram which shows the structure of the time series data processing apparatus of a nonpatent literature 1.
- the time-series data processing apparatus executes user-defined processing in each of a plurality of areas, and changes processing in other arbitrary areas to processing that performs different operations when executing processing in a certain area.
- first user-defined process or “old process”
- second user-defined process or “new process”.
- An area in which circuit information for executing the new process is written is called a first processing unit
- an area in which circuit information for executing the old process is written and the old process is operating is called a second processing unit.
- Processing changes are made in the next step. (1) Since the circuit information for executing the new process is written in the first processing unit, the process operating in the first processing unit is stopped. (2) Write circuit information for executing a new process to the first processing unit. (3) Start the operation of the new process, (4) Start output of the new process, (5) Stop the old process. (6) Delete circuit information to be executed in the old process.
- Time-series data processing may be realized using a device having a plurality of areas in which circuit information for executing processing can be written.
- a device having a plurality of areas in which circuit information for executing processing can be written.
- An example of such a device is an FPGA.
- the first area in the FPGA corresponds to the first processing unit
- the second area corresponds to the second processing unit.
- time-series data processing may be realized using a plurality of chips.
- the first chip corresponds to the first processing unit
- the second chip corresponds to the second processing unit.
- FIG. 2 is a block diagram showing the configuration of the time-series data processing apparatus according to the embodiment of the present invention.
- the time-series data processing apparatus 100 includes a first processing unit 121-1, a second processing unit 121-2, a state management unit 101, processing control units 111-1, 111-2, a reconstruction unit 122, and an output connection unit. 131-1 and 131-2, an information management unit 142, and an output matching unit 141 are provided.
- the first processing unit 121-1 inputs data, executes the first user-defined processing, and sends the result data to the output connection unit 131.
- the first processing unit 121-1 outputs a process completion notification that the process is complete to the state management unit 101.
- the first processing unit 121-1 inputs a processing stop command from the processing control unit 111 and stops the first user-defined processing.
- the reconfiguration unit 122 changes the process to be executed from the first user definition process to the third user definition process.
- the first processing unit 121-1 starts the third user-defined process, inputs and executes data, and outputs the result data to the output connecting unit 131. .
- the second processing unit 121-2 inputs the data, executes the second user-defined process, and outputs the result data to the output connection unit 111.
- the state management unit 101 inputs a processing completion notification from the first processing unit 121-1, and records that the first processing unit 121-1 is in a state where the processing has been completed.
- the state management unit 101 outputs a stop sequence command when the first processing unit 121-1 is in a completed state, and records that the first processing unit 121-1 is in a stopped state.
- the state management unit 101 records the process ID and version number of the second user definition process and the third user definition process in the information management unit 142. Then, the state management unit 101 instructs the reconfiguration unit 122 to start reconfiguration with respect to the first processing unit 121-1, and records that the first processing unit 121-1 is being reconfigured.
- the state management unit 101 When the reconfiguration completion notification is input from the reconfiguration unit 122, the state management unit 101 records that the reconfiguration to the first processing unit 121-1 is completed, and reconfigures the first processing unit 121-1.
- the startup sequence command for the third user-defined process that has been performed is output.
- the process control unit 111 When the process control unit 111 receives a stop sequence command from the state management unit 101, the process control unit 111 outputs a process stop command to the first processing unit 121-1, and outputs a shut-off command to the output connection unit 131.
- the processing control unit 111 when the processing control unit 111 receives a startup sequence command from the state management unit 101, the processing control unit 111 outputs a processing startup command to the first processing unit 121-1. Then, the processing control unit 111 confirms that the first processing unit 121-1 has been successfully activated, and outputs a connection command to the output connection unit 131.
- the reconfiguration unit 122 reconfigures the first processing unit 121-1, and outputs a reconfiguration completion notification to the state management unit 101.
- the output connection unit 131 inputs the result data of the first processing unit 121-1 or the second processing unit 121-2.
- the output connection unit 131 outputs the result data to the output matching unit 141 when a connection command is input from the processing control unit 111.
- the output connecting unit 131 blocks the transfer of the result data to the output matching unit 141 when the blocking command is input from the processing control unit 111.
- the information management unit 142 records the process ID and version number of the second user definition process and the third user definition process. In addition, the information management unit 142 adds the ID and version number of the second process to the result data of the second user definition process and sends the result data to the output matching unit 141, and the result data of the third user definition process includes the result data of the third user definition process. The third processing ID and version number are added and sent to the output matching unit 141.
- the output matching unit 141 sets the result data of the second user-defined process, a set of ID and version number of the second process (hereinafter, a set of information including the result data, process ID and version number). And a result data set including the result data of the third user-defined process, the ID of the third process, and the version number. Then, the output matching unit 141 determines the output order to the outside of the apparatus and whether or not to output, and outputs it to the outside of the apparatus.
- processing control units 111 and output connection units 131 associated with the processing units 121-1 and 121-2.
- the processing unit 121-2 does not have a process start / stop function, the process start / stop command function of the process control unit 111 for the process unit 121-2 is not essential.
- the processing unit 121-2 may include a process completion notification output function, a process stop function, a process change function to be executed, and a process start.
- the processing unit 121-2 has the same configuration as the processing unit 121-1.
- a processing control unit 111 and an output connection unit 131 having the same functions are provided in association with the processing unit 121-1 and the processing unit 121-2.
- the time-series data processing apparatus 100 generally operates as follows. That is, the first processing unit 121-1 inputs data, executes the first user-defined process, and outputs the result data to the output connection unit 131.
- the second processing unit 121-2 receives the data, executes the second user definition process, and outputs the result data to the output connection unit 131.
- the first processing unit 121-1 outputs a processing completion notification that the first processing is complete to the state management unit 101.
- the state management unit 101 inputs a process completion notification and records that the first processing unit 121-1 has completed the process.
- the state management unit 101 outputs a stop sequence command when the first user definition process is completed.
- the process control unit 111 inputs a stop sequence command, stops the first user-defined process by the first processing unit 121-1, and outputs an output cutoff command.
- the output connection unit 131 inputs an output cutoff command and blocks transfer of result data from the first user-defined process.
- the state management unit 101 records the process ID and version number of the second user definition process and the third user definition process in the information management unit 142. Then, the state management unit 101 instructs the first processing unit 121-1 to start reconfiguration.
- the reconfiguration unit 122 inputs the reconfiguration command. Then, the reconfiguration unit 122 writes the third user definition process to the first processing unit 121-1, performs reconfiguration, and outputs a reconfiguration completion notification.
- the state management unit 101 When the reconfiguration completion notification is input, the state management unit 101 records that the reconfiguration to the first processing unit 121-1 is completed, and the third processing unit 121-1 reconfigures the third reconfiguration. Outputs startup sequence commands for user-defined processing.
- the process control unit 111 inputs an activation sequence command and activates the third user-defined process by the first processing unit. And the process control part 111 will output an output connection command, if a start-up success is confirmed.
- the output connection unit 131 starts transferring the result data of the third user-defined process to the output matching unit 141.
- the first processing unit 121-1 inputs data, executes a third user-defined process, and outputs the result data to the output connection unit 131.
- the information management unit 142 adds the ID and version number of the second process to the result data of the second user definition process, and the ID and version number of the third process to the result data of the third user definition process Is output to the output matching unit 141.
- the output matching unit 141 inputs a result data set including the result data of the second user-defined process and a result data set including the result data of the third user-defined process. Then, the output matching unit 141 determines the output order to the outside of the apparatus and whether output is possible, and outputs the result data set to the outside of the apparatus.
- FIG. 3 is a diagram showing details of the output matching unit 141 shown in FIG.
- the output matching unit 141 includes a version comparison unit 121A and a synchronization unit 131A.
- the version comparison unit 121A inputs a result data set. For the result data sets that arrive at the same time and have the same process ID, the old version number is discarded, and the remaining result data sets are output to the synchronization unit 131A.
- the synchronization unit 131A inputs a result data set from the comparison unit 121A. Then, the synchronization unit 131A discards the result data sets having a version number older than the value for each process ID recorded in the synchronization unit 131A, and outputs the other result data sets to the output port outside the apparatus. To do. When outputting the result data set, the synchronization unit 131A updates the version number registered in the synchronization unit 131 to the version number added to the output result data set.
- FIG. 4 is a block diagram showing a first example of implementation of the version comparison unit 121.
- the version comparison unit 121A corresponds to a time-series data processing unit including the four processing units 101, and receives four sets of result data.
- the version comparison unit 121A includes three partial version comparison units 1001. Each of the three partial version comparison units 1001 discards the result data set to which the old version number is added for the same processing ID when two result data sets arrive at the same time. The other result data sets are output to the output port.
- FIG. 5 is a block diagram showing a second example of the implementation of the version comparison unit 121.
- the version comparison unit 121A corresponds to a time-series data processing unit including eight processing units 101, and receives eight sets of result data.
- the version comparison unit 121 includes seven partial version comparison units 1001. Similar to FIGS. 4 and 5, by providing a partial version comparison unit, a version comparison unit 121A having an arbitrary number of inputs can be configured.
- FIG. 6 is a block diagram illustrating an example of implementation of the partial version comparison unit 1001.
- the partial version comparison unit 1001 may be implemented with a configuration having an input port, an output port, a waiting data queue 1002, and an arbitration unit 1003.
- the partial version comparison unit 1001 uses the arbitration unit 1003 to arbitrate output port allocation for the result data sets received from the two input ports and the waiting data queue 1002.
- the result data set to which the output port is assigned is output to the output port.
- a result data set to which no output port is assigned is discarded or inserted into the waiting data queue 1002.
- the data inserted into the waiting data queue 1002 is input to the partial version comparison unit 1001 again in the next cycle.
- the subsequent operation will be described only when the version comparison unit 121A is composed of one partial version comparison unit 1001.
- the operation of the version comparison unit 121A described can be easily applied to a version comparison unit 121A including two or more partial version comparison units 1001.
- a clock cycle that defines a unit time required for the time-series data processing device to complete a predetermined operation is referred to as “one cycle”.
- partitions there are a plurality of partitions in which a circuit capable of executing processing can be written on the device, and these partitions are referred to as “partitions”.
- a circuit for executing user-defined processing can be created by sending configuration information called configuration data and configuration data to the partition.
- “Instruct”, “Instruct”, and “Notify” are signals of wiring in which a certain part (referred to as “command source part”) is connected to another part (referred to as “command target part”). Or a value is written to a storage device existing in the command destination part.
- “Register” and “Set” mean that a part of the registration source writes a value in a storage device existing in another part of the registration destination.
- “Send information”, “Send data”, “Output result” means that one part of the device that is the source operates the signal of the wiring that is connected to another part of the device that is the destination Or writing a value to a storage device existing in the destination part.
- the version number may be expressed as an integer. Alternatively, an M remainder system may be used. Further, “a version number that is new by“ 1 ”” means a value of (N + 1) with respect to the integer N that is an old version number when an integer is used as the version number. Alternatively, “a version number that is new by“ 1 ”” indicates that when a remainder system of M is used for the version number, the old version number is a remainder obtained by dividing the integer N by M, and (N + 1) is M Means the remainder divided by. “Version number older by“ 1 ”” means a value of (N ⁇ 1) for an integer N which is a new version number when an integer is used for the version number.
- “version number older by“ 1 ”” means that when a remainder system of M is used for the version number, the new version number, which is the remainder obtained by dividing the integer N by M, is (N ⁇ 1) Is the remainder obtained by dividing M by M.
- N the remainder obtained by M
- a value that is newer by “1” than “0” is “1”
- a value that is “1” newer than “1” is “2”
- a value that is “1” newer than “2” Is “0”, “1” older than “2” is “1”, “1” older than “1” is “0”, “0” older than “0” is “2”, It may be expressed as
- the process ID is changed when the change from the first old process to the first new process and the change from the second old process to the second new process are simultaneously performed. Used to distinguish processing pairs.
- the result data output from the time-series data processing device 100 is changed from the old process to the new process.
- This change is permitted by a process change instruction (hereinafter referred to as “process change instruction”) to the time-series data processing apparatus 100 by a host computer or the like (not shown).
- process change instruction a process change instruction
- a host computer or the like not shown.
- time-series data processing apparatus 100 The operation of the time-series data processing apparatus 100 according to this embodiment will be described with reference to FIGS.
- the first user definition process is executed by the first processing unit 121-1.
- the first user definition process is a process unrelated to the second user definition process (old process) and the third user definition process (new process).
- a second user definition process (old process) is executed in the second processing unit 121-2.
- the old process is a process that is then replaced with a third user-defined process (new process).
- new process when the process change instruction is received, the process in the second processing unit 121-2 is not changed to the new process.
- the new process is executed in place of the first process after the change from the first process to the new process in the first processing unit 121-1.
- the execution of the old process in the second processing unit 121-2 is continued at least until the process is changed in the first processing unit 121-1, even after receiving the process change instruction.
- the first processing unit 121-1 notifies the state management unit 101 that the first user-defined processing being executed is in a state where the processing has been completed.
- the state management unit 101 records the ID and the state of the process operating there for a plurality of processing units 121.
- the status of the process is “Processing completed” indicating that the process has been completed, “Stopping” indicating that the process is stopped, “Operating” indicating that the process is in progress, and “Reconfiguring” indicating that the reconfiguration is in progress May be included.
- the state management unit 101 changes the state of the corresponding processing unit 121 to “processing complete” (step S1108). “Processing complete” means one of the following four.
- the user-defined process may transition from the completed state to the executing state again.
- the state management unit 101 sets the identification number of the processing unit 121 to be changed to the new processing. That is, the state management unit 101 finds a processing unit 121 that is in a state where processing has been completed, and can change the processing to a new processing, and sets the identification number of the processing unit 121 (step S1109). .
- the processing unit 121 whose processing content is changed to the new processing is the first processing unit 121-1.
- the identification number of the first processing unit 121-1 is stored in order to change the state or perform an operation on the first processing unit 121-1.
- the identification number of the first processing unit 121-1 to be changed to the new processing may be set according to the input to the state management unit 101.
- a host computer (not shown) may input the identification number of the first processing unit 121-1 to the state management unit 101.
- the state management unit 101 outputs to the process control unit 111 a stop sequence command that is a command to stop the process operating in the first processing unit 121 changed to the new process.
- the processing control unit 111 stops the first processing in the first processing unit 121-1. Further, the state management unit 101 changes the state of the first processing unit 121-1 to “stopped” (step S1110). The process may be stopped by operating a reset signal for the process operating in the processing unit 121.
- the processing control unit 111 issues a command to the output connection unit 131 connected to the first processing unit 121-1 designated in step S1110, and outputs the result data from the first processing unit 121-1.
- Transfer to the matching unit 141 is blocked (step S1111). The transfer may be blocked by providing a signal indicating whether the result data output from the output connection unit 131 to the output matching unit 141 is valid or invalid, and manipulating the signal.
- the state management unit 101 registers the process ID and version number in the information management unit 142 (step S1112).
- the process ID and version number When changing the process ID and version number from the old process to the new process, match the order of output of the result data of the old process and the new process to the outside of the device and which is output to the outside of the device. Used for.
- the information management unit 142 records the process ID and version number for each processing unit 121.
- the processing in the first processing unit 121-1 is changed to the new processing while the execution of the old processing in the second processing unit 121-2 is continued. Therefore, the new and old processes operate temporarily in parallel, and new process result data (hereinafter referred to as “new process result data”) and old process result data (hereinafter referred to as “old process result data”). Exist simultaneously in the time-series data processing apparatus. Therefore, it is necessary to determine the output order of the result data to the outside of the apparatus and which result data is to be output to the outside of the apparatus.
- Adjusting means controlling the relationship between the generation order and output order of new process result data and old process result data that exist simultaneously in the time-series data processing device, and the time when the new process result data is generated This means that the result data to be output is selected based on.
- the first meaning of “consistent” is the order of time when each of the new process result data and the old process result data is generated, and the result data is output to the outside of the time-series data processing apparatus.
- the output order of the result data is determined so that the order in which they are performed matches.
- the context between the generation time of the new process result data and the generation time of the old process result data matches the context of the output time of the new process result data to the outside and the output time of the old process result data to the outside.
- determining the output order of the result data is referred to as “matching”.
- N1 is the result data that is first generated after the start of the new process
- T1 is the time when the result data is generated.
- the order of the results generated by the old process is determined so as to be output outside the apparatus before N1.
- the second meaning of “consistent” is that new process result data or old process data is not output so that old process result data generated after the time when the new process is started and the first new process result data is generated is not output.
- Preventing output is called “matching”.
- the time when the result data is output is later than the time when it is generated, and the two do not match.
- Whether or not the old process result data is output is determined based on the relationship between the time when the old process result data is generated and the time when the new process result data is first generated as described above. For example, N1 is a result that is first generated after a new process is started, and T1 is a time when the result is generated. Prior to T1, the result generated by the old process is output to the outside of the apparatus, and the result generated by the old process after T1 is not output to the outside of the apparatus.
- the processing unit 121 When a certain processing unit 121 generates the result data, the processing unit 121 outputs the identification number of the processing unit 121 and the generation timing information of the result data together with the result data. By referring to the identification information and the generation timing information of the processing unit 121, the control of the output order to the outside of the apparatus and the possibility of output to the outside of the apparatus are determined.
- the process ID and version number can be used as the identification information of the first processing unit 121-1 and the second processing unit 121-2.
- a process for matching is performed by assigning a set of information including the same processing ID and different version numbers. It can be performed. More specifically, the process ID of the new process result data is set to the same value as the process ID of the old process result data, and the version number of the result data of the new process is greater than the version number of the result data of the old process. Set "1" to a new value.
- the process ID of the result data of the old process is set to “0”, the version number is “1”, the process ID of the result data of the new process is “0”, and the version number is “2”. Then, with respect to the result data that exists in the output matching unit 141 at the same time, only the new version number “1” is left for the result data pair having the same processing ID. As a result, it is possible to perform the matching operation of outputting only the result data of the new process to the outside of the apparatus.
- the state management unit 101 instructs the reconfiguration unit 122 to start reconfiguration of the first processing unit 121-1 to be changed to the new process.
- the state management unit 101 changes the state of the first processing unit 121-1 to “reconfiguring” (step S1113).
- the reconfiguration unit 122 reconfigures the first processing unit 121-1 designated in step S1113 (step 1114).
- Realization of the reconfiguration of the processing unit 121 may be performed by inputting reconfiguration data to a module for performing reconfiguration provided in the chip using an FPGA.
- the reconstruction information may be recorded in the reconstruction unit 122. Alternatively, it may be input from the state management unit 101. Alternatively, it may be input from a host computer (not shown).
- the reconfiguration unit 122 notifies the completion of the reconfiguration.
- the state management unit 101 inputs the notification of the completion of reconstruction from the reconstruction unit 122, and issues a startup sequence command to the processing control unit 111-1 connected to the first processing unit 121-1 designated in step S1113. Output.
- the state management unit 101 changes the state of the first processing unit 121-1 to “being executed” (step S1115).
- the start sequence command can be output as follows. That is, the state management unit 101 sets the identification number of the processing control unit 111-1 and the identification number of the first processing unit 121-1 to the same number, and identifies the identification number of the first processing unit 121-1. Record the number. Then, the status management unit 101 activates the activation sequence command signal connected to the processing control unit 111-1 with reference to the identification number at the timing when the reconfiguration completion notification is input.
- the processing control unit 111-1 designated in step S1113 receives the activation sequence command and activates the processing of the first processing unit 121-1 (step S1116).
- processing of the processing unit means processing executed by a circuit reconfigured in the processing unit.
- activation of process means that the process is shifted from a standby state to an operation state in which result data is output. The process may be activated by operating a reset signal for the process.
- the process control unit 111-1 checks whether or not the third user-defined process in the first process unit 121-1 has been successfully activated (step S1117). This is because the start of the processing of the first processing unit 121-1 may fail due to the setting of incorrect or destroyed reconstruction data, the failure of the reconstruction procedure, and the like. The success of starting the process may be checked by outputting a specific bit pattern from the process to the process control unit 111. If the process has been successfully activated, the process proceeds to step S1118. If the process has failed, the process returns to step S1113.
- step S1113 outputs an output connection instruction for the result data of the third user-defined process generated by the first processing unit 121-1 to the output connection unit 131-1. (Step S1118).
- the output connection unit 131-1 receives the output connection command, and outputs the result data of the third user-defined process from the first processing unit 121-1 to the outside of the apparatus.
- 1 processing unit 121-1 and output matching unit 141 are connected (step S1119).
- the connection between the first processing unit 121-1 and the output matching unit 141 may be performed by operating a signal indicating whether the result data output to the output matching unit 141 by the output connection unit 131-1 is valid or invalid. .
- the following steps shown in FIG. 9 are executed. That is, the information management unit 142, at the timing when the second processing unit 121-2 generates the second processing result data, together with the result data, the registered processing ID of the second processing unit 121-2. And the version number are output to the output matching unit 141 (step S1120). As a result, the input information to the output matching unit 141 becomes a set of result data.
- the set of result data may be data having a configuration as shown in FIG. 12, for example.
- the output matching unit 141 inputs a result data set including the result data of the second user-defined process and a result data set including the result data of the third user-defined process.
- the output matching unit 141 controls the order of output of the result data output from the plurality of processing units 121 to the outside of the apparatus, and selects a result data set to be output to the outside of the apparatus, that is, performs matching. Then, the output matching unit 141 outputs the result data set of the new process or the old process that has been matched to the outside of the apparatus in the order of matching, and returns to step S1120 (step S1121). Details of the operations in steps S1120 and S1121 will be described later.
- step S1121 will be described in detail.
- the version comparison unit 121A inputs a set of result data (step S1201).
- the input at this time is performed from an input port or a waiting data queue.
- the waiting data queue is a queue into which a set of result data that has not been discarded and output in the version comparison unit 121A is inserted.
- a set of result data stored in the waiting data queue is handled as an input of the version comparison unit 121A in the next cycle.
- the version comparison unit 121A checks whether a pair of result data having the same process ID and a different version number remains (step S1202). When a plurality of result data sets are input simultaneously, the version comparison unit 121A checks the result data sets input simultaneously. If pairs with the same process ID and different version numbers remain, the process advances to step S1203. If not, the process proceeds to step S1204.
- the version comparison unit 121A discards the result data set whose version number is older by “1” (step S1203) and returns to step S1202.
- the version comparison unit 121A arbitrates the allocation of output ports among the input result data sets that are not discarded, and sends the result data set to which the ports are assigned to the synchronization unit 131A.
- a set of result data that has not been assigned is inserted into the waiting data queue 1002 of the version comparison unit 121A (step S1204).
- the output port is a signal line for output from the version comparison unit 121A to the synchronization unit 131A.
- Arbitration of output port allocation is an act of selecting one data that can use the output port. At this time, it is said that the selected data is “assigned a port” or “acquired a port”.
- the synchronization unit 131A inputs a result data set (step S1300). Then, the synchronization unit 131A checks whether the version number of the input result data set is older than the version number for each process ID recorded in the synchronization unit 131A (step S1301). If it is old, the process proceeds to step S1304. If it is not old, the process proceeds to step S1302.
- the synchronization unit 131A updates the version number for each process ID recorded by the synchronization unit 131A with the result data set arrived (step 1302).
- the synchronization unit 131A outputs the input result data set to the output port to the outside of the apparatus (step 1303), and returns to step S1201.
- step S1301 if the version number of the input result data set is older than the version number for each process ID recorded in the synchronization unit 131A, the synchronization unit 131A discards the input result data set. (Step S1304), the process returns to step S1201. (Specific example of operation of embodiment) A specific example of the operation of the time-series data processing apparatus 100 according to the embodiment will be described with reference to the flowcharts of FIGS. 7 to 11 and the block diagrams of FIGS. 13 to 24.
- the cycle of the clock used for the operation of the time-series data processing device is called “cycle”, and this is used as a unit of period.
- “At the start of the cycle” means the first time of the period
- “at the end of the cycle” means the last time of the period.
- the first cycle for a certain reference time is a period between the reference time plus zero seconds and the reference time plus 1 nanosecond
- the Nth cycle is the reference time plus (N ⁇ 1 ) Means the period from nanoseconds to the reference time plus N nanoseconds.
- the start of the Mth cycle means a reference time plus (M ⁇ 1) nanoseconds
- the end of the Mth cycle means a reference time plus M nanoseconds. Input data is given at the start of each cycle.
- the state management unit 101 “being executed” is registered for both the first processing unit 121-1 and the second processing unit 121-2.
- the first processing unit 121-1 is “10” as the processing ID and “0” is the version number
- the second processing unit 121-2 is the processing ID.
- “20” is registered as the ID and “0” is registered as the version number.
- execution command means that the process control unit 111 starts and executes a process executable by the circuit configured in the processing unit 121.
- Connection means that the output connection unit 131 transfers the result data generated by the processing unit 121 to the output matching unit 141.
- the input data “1” is given to the second processing unit 121-2, and the second processing unit 121-2 generates the result data “2”.
- the data “2” is output to the output matching unit 141 via the output connection unit 131-2.
- the information management unit 142 outputs “20” as the process ID and “0” as the version number to the output matching unit 141 (step S1120).
- the output connection unit 131 and the information management unit 142 output a set of result data, process ID, and version number to the output matching unit 141.
- the result data set is expressed as ⁇ 2, 20, 0>.
- the first processing unit 121-1 notifies the state management unit 101 that the first processing being executed has been completed (step S1108).
- the information management unit 101 inputs the notification and changes the state of the first processing unit 121-1 to “processing complete”. These processes are completed in one cycle.
- each part of the device is in a state as shown in FIG.
- the input data “2” is given to the second processing unit 121-2, and the second processing unit 121-2 generates the result data “3”.
- ⁇ 3, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 2, 20, 0> at the start of the second cycle (step S1201).
- the process proceeds to step S1204 (step S1202).
- Arbitration of output port allocation is performed between the result data sets, and since there is only one result data set, the result data set obtains an output port.
- the result data set is sent to the synchronization unit 131A (step S1203).
- the state management unit 101 sets the identification number of the processing unit whose processing content is to be replaced with the new processing. That is, the state management unit 101 finds a processing unit that is in a state where processing has been completed and can be replaced with new processing, and sets the identification number of the processing unit (step S1109). Here, it is set that data is written in the first processing unit 121-1. The state management unit 101 changes the state of the first processing unit 121-1 to “stopped”.
- the state management unit 101 issues a command to the processing control unit 111-1 connected to the first processing unit-1, and the processing control unit 111-1 stops the processing (step S1110).
- the process control unit 111-1 connected to the first processing unit issues a command to the output connection unit 131-1, and blocks transfer of the result data to the output matching unit 141 (step S1111).
- stop command means that the process control unit 111-1 gives a stop command to the process operated by the first processing unit 121-1.
- the input data “3” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “4”, and at the end of the third cycle, ⁇ 4, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 3, 20, 0> at the start of the third cycle, and sends this result data set to the synchronization unit 131A at the end of the third cycle.
- the synchronization unit 131A inputs ⁇ 2, 20, 0> at the start of the third cycle (step S1300). Since the version number corresponding to the ID 20 of the recorded process is “0”, which is the same as the input result data set, the process advances to step S1302 (step S1301). The version number corresponding to the recorded process ID 20 is updated (step S1302), and at the end of the third cycle, the input result data set is output to the output port to the outside of the apparatus (step S1303).
- the management unit 101 registers the processing ID and version number of the first processing unit 121-1 in the information management unit 142 (step S1112).
- the order of outputting the result data of the old and new processing to the outside of the device and which to output to the outside of the device are as follows. It is assumed that the result generated first after the new process is started is N1, and the time when the result is generated is T1. Prior to T1, the order is determined so that the results generated by the old process are output to the outside of the apparatus before N1. In addition, the result generated by the old process after T1 is not output to the outside of the apparatus. Further, the result data from each of the new process and the old process is output to the outside of the apparatus in the order in which the result data is generated.
- the ID of the new process that is, the process added to the result data generated by the first processing unit 121-1
- the version number assigned to the new data that is, the result data generated by the first processing unit 121-1 is registered with a value that is “1” newer than the old processing, that is, “1”.
- each part of the device is in a state as shown in FIG.
- the input data “4” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “5”, and at the end of the fourth cycle, ⁇ 5, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 4, 20, 0> at the start of this cycle, and sends this result data set to the synchronization unit 131A at the end of the fourth cycle.
- the synchronization unit 131A inputs ⁇ 3, 20, 0> at the start of the fourth cycle, and outputs the result data set to the output port to the outside of the apparatus at the end of the fourth cycle.
- the state management unit 101 instructs the reconfiguration unit 122 to start reconfiguration of the first processing unit 121-1 that writes the new process (step S1113).
- the state management unit 101 changes the state of the first processing unit to “being reconfigured”.
- each part of the device is in a state as shown in FIG.
- the input data “5” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “6”, and at the end of the fifth cycle, ⁇ 6, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 5, 20, 0> at the start of the fifth cycle, and sends the result data set to the synchronization unit 131A at the end of the fifth cycle.
- the synchronization unit 131A inputs ⁇ 4, 20, 0> at the start of the fifth cycle, and outputs the result data set to the output port to the outside of the apparatus at the end of the fifth cycle.
- the reconfiguration unit 122 reconfigures the first processing unit 121-1 (step 1114). These processes are completed in one cycle.
- each part of the apparatus is in a state as shown in FIG.
- the input data “6” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “7”, and at the end of the sixth cycle, ⁇ 7, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 6, 20, 0> at the start of the sixth cycle, and sends this result data set to the synchronization unit 131A at the end of the sixth cycle.
- the synchronization unit 131A inputs ⁇ 5, 20, 0> at the start of the sixth cycle, and outputs this result data set to the output port to the outside of the apparatus at the end of the sixth cycle.
- the reconfiguration unit 122 issues a notification of completion of reconfiguration.
- the state management unit 101 issues an activation sequence command to the processing control unit 111-1 connected to the first processing unit 121-1 (step S1115).
- the state management unit 101 changes the state of the first processing unit 121-1 to “executing”.
- the process control unit 111 starts a new process existing in the first process unit 121-1 (step S 1116).
- each part of the apparatus is in a state as shown in FIG.
- the input data “7” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “8”, and at the end of the seventh cycle, ⁇ 8, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 7, 20, 0> at the start of the seventh cycle, and sends the result data set to the synchronization unit 131A at the end of the seventh cycle.
- the synchronization unit 131A inputs ⁇ 6, 20, 0> at the start of the seventh cycle, and outputs this result data set to the output port to the outside of the apparatus at the end of the seventh cycle.
- the process control unit 111 checks whether the new process existing in the first process unit 121-1 has been successfully started (step S1117). Here, it is assumed that the process has succeeded, and the process advances to step S1118.
- the process control unit 111-1 issues a connection command for the result data of the new process operated by the first process unit 121-1, to the output connection unit 131 (step S1118).
- the output connection unit 131-1 causes the result data of the new process operated by the first processing unit 121-1 to be output to the output matching unit 141 (step S1119). These processes are completed in one cycle.
- each part of the device is in a state as shown in FIG.
- the new processing starts in the first processing unit 121-1, and the input data “8” is given to generate the result data “10”. This is output to the output matching unit 141 via the output connection unit 131-1.
- the information management unit 142 sends the process ID “20” and the version number “1” to the output matching unit 141 (step S1120).
- the processing ID and version number the value of the first processing unit 121-1 recorded by the information management unit 142 is sent.
- the output connection unit 131-1 and the information management unit 142 connected to the first processing unit 121-1 output ⁇ 10, 20, 1> to the output matching unit 141 at the end of this cycle. To do.
- the input data 8 is given to the second processing unit 121-2 and the result data 9 is generated. This is output to the output matching unit 141 via the output connection unit 131-2.
- the information management unit 142 sends the process ID 20 and the version number 0 to the output matching unit 141 (step S1120).
- the processing ID and version number the value of the second processing unit 121-2 recorded by the information management unit 142 is sent.
- the output connection unit 131-2 and the information management unit 142 output ⁇ 9, 20, 0> to the output matching unit 141 at the end of this cycle.
- the version comparison unit 121A inputs ⁇ 8, 20, 0> at the start of the eighth cycle, and sends this result data set to the synchronization unit 131A at the end of the eighth cycle.
- the synchronization unit 131A inputs ⁇ 7, 20, 0> at the start of the eighth cycle, and outputs this result data set to the output port to the outside of the apparatus at the end of the eighth cycle.
- each part of the device is in a state as shown in FIG.
- the input data “9” is given to the first processing unit 121-1, the first processing unit 121-1 generates the result data “11”, and at the end of the ninth cycle, ⁇ 11, 20, 1> is output to the output matching unit 141.
- the input data “9” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “10”, and the end of the ninth cycle Sometimes ⁇ 10, 20, 0> is output to the output matching unit 141.
- the version comparison unit 121A inputs ⁇ 10, 20, 1> and ⁇ 9, 20, 0> at the start of the ninth cycle (step S1201).
- step S1203 Since the input result data set is a result data set having the same process ID and different version numbers, the process proceeds to step S1203 (step S1202). Then, the older version number by “1”, that is, ⁇ 9, 20, 0>, which is a set of the result data of the old process, is discarded (step S1203).
- step S1204 Since there are two sets of input result data, one is discarded, and the process proceeds to step S1204 (step S1202). Arbitration of output port assignment is performed for the remaining result data set ⁇ 10, 20, 1>. Since there is only one result data set, ⁇ 10, 20, 1> is sent to the synchronization unit 131A at the end of the ninth cycle (step S1204).
- the synchronization unit 131A inputs ⁇ 8, 20, 0> at the start of the ninth cycle, and outputs this result data set to the output port to the outside of the apparatus at the end of the ninth cycle.
- each part of the device is in a state as shown in FIG.
- the input data “10” is given to the first processing unit 121-1, the first processing unit 121-1 generates the result data “12”, and at the end of the tenth cycle, ⁇ 12, 20, 1> is output to the output matching unit 141. Also, the input data “10” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “11”, and the output matching unit 141 is sent to the end of the tenth cycle. , ⁇ 11, 20, 0> are output.
- the version comparison unit 121A inputs ⁇ 11, 20, 1> and ⁇ 10, 20, 0> at the start of the tenth cycle, discards the result data set of the old process, and at the end of the tenth cycle, ⁇ 11, 20, 1>, which is a data set as a result of the processing, is sent to the synchronization unit 131A.
- the synchronization unit 131A inputs ⁇ 10, 20, 1> at the start of the tenth cycle (step S1300).
- the version number recorded in the synchronization unit 131A is “0” for the ID 20 of the processing of the input result data set. Since the version number of the input result data set is newer, the process proceeds to step S1302 (step S1301).
- the version number recorded in the synchronization unit 131A is updated to version number 1 of the input result data set (S1302).
- the input result data set ⁇ 10, 20, 1> is output to the output port outside the apparatus (step S1303).
- each part of the apparatus is in a state as shown in FIG.
- the input data “11” is given to the first processing unit 121-1, the first processing unit 121-1 generates the result data “13”, and at the end of the eleventh cycle, ⁇ 13, 20, 1> is output to the output matching unit 141. Also, the input data “11” is given to the second processing unit 121-2, the second processing unit 121-2 generates the result data “12”, and is output to the output matching unit 141 at the end of the eleventh cycle. , ⁇ 12, 20, 0> are output.
- the version comparison unit 121A inputs ⁇ 12, 20, 1> and ⁇ 11, 20, 0> at the start of the eleventh cycle, discards the result data set of the old process, and at the end of the eleventh cycle, ⁇ 12, 20, 1>, which is a data set as a result of the processing, is sent to the synchronization unit 131A. Further, the synchronization unit 131A inputs ⁇ 11, 20, 1> at the start of the eleventh cycle (step S1300). The version number recorded in the synchronization unit 131A is “1” for the processing result ID 20 of the input result data set. Since it is the same as the version number of the input result data set, the process advances to step S1302 (step S1301).
- the version number recorded in the synchronization unit 131A is updated to the version number “1” of the input result data set (S1302).
- the input result data set ⁇ 11, 20, 1> is output to the output port outside the apparatus (step S1303).
- each part of the apparatus is in a state as shown in FIG.
- circuit information for executing each process is written in a reconfigurable circuit element such as an FPGA, and then the circuit is operated. This is assumed to be realized.
- the method for realizing the new process and the old process is not limited to the method realized by hardware as described above. That is, as described above, a software method of causing a processor included in the first processing unit 121-1 and the second processing unit 121-2 to execute a program may be used. In the implementation method using software, the above “partition” may be replaced with “memory”, and “circuit setting information” such as configuration data and configuration data may be replaced with “program”.
- the time-series data processing apparatus confirms the completion of the processing of the first processing unit, and then replaces the processing by the first processing unit with the new processing.
- This replacement of the process is executed when the old process is executed in the second processing unit. Therefore, the execution of the new process can be started while the execution of the old process is continued. Then, identification information is added to the result data of each process. Therefore, there is an effect that the transition from the old process to the new process can be performed without interrupting the process.
- the change from the second user-defined process (old process) to the third user-defined process (new process) has been described as an example.
- the old process is executed by the second processing unit 121-2
- the new process is executed by the first processing unit 121-1. Since the time-series data processing apparatus 100 includes a processing control unit associated with each processing unit, the time series data processing device 100 can operate similarly even if the processing units that execute the respective processes are replaced.
- the old process stop function is not required. That is, it is not essential that the time-series data processing device 100 includes the processing control unit 111-2.
- whether or not the result data is output to the outside can be determined by control using identification information added to the result data in the output matching unit 141. Therefore, it is not essential for the time-series data processing apparatus 100 to include the output connection unit 131-2.
- FIG. 1 is a block diagram showing a configuration of a time-series data processing apparatus 100-1 having only the essential configuration of the present embodiment.
- the time-series data processing device 100-1 includes a first processing unit 121-1, a second processing unit 121-2, a state management unit 101, a processing control unit 111-1, a reconstruction unit 122, and an output connection unit 131-. 1, an information management unit 142 and an output matching unit 141 are provided.
- the time-series data processing device 100-1 does not include the processing control unit 111-2 and the output connection unit 131-2.
- the first processing unit 121-1 and the second processing unit 121-2 are the same as those of the time-series data processing apparatus 100.
- the state management unit 101 controls only the processing control unit 111-1 because it controls only the start / stop of the first processing unit 121-1.
- the processing control unit 111-1 activates / stops the first processing unit 121-1 as in the time-series data processing apparatus 100.
- the reconfiguration unit 122 reconfigures only the first processing unit 121-1.
- the output connection unit 131-1 controls whether the result data generated by the first processing unit 121-1 is output.
- the information management unit 142 sets “identification information” corresponding to the contents of the processing executed by the first processing unit 121-1 and the second processing unit 121-2.
- the difference in processing performed by the first processing unit 121-1 and the second processing unit 121-2 can be identified by the difference in the identification information.
- the identification information includes “process ID” and “version number” described above. In the description of the embodiment, an example in which a process ID and a version number are used as identification information is shown. However, there is no essential difference between the process ID and the version number, and other information can be used as long as it is “identification information” that can identify that the content of the process has changed.
- the output matching unit 141 inputs the identification information added to the result data generated by the first processing unit 121-1 and the second processing unit 121-2. Then, the output order of the result data to the outside of the apparatus and the output possibility are determined, and the result data is output to the outside of the apparatus.
- the time-series data processing apparatus 100-1 cannot stop the old process, but can cope with the change from the old process to the new process without any problem.
- time-series data processing apparatus 100 of the present invention can also be realized by software.
- the flowchart of the program that controls the time-series data processing apparatus is the same as that shown in FIGS. That is, the processing performed by the state management unit 101, the processing control units 111-1, 111-2, the reconfiguration unit 122, the output disconnection units 131-1, 131-2, the information management unit 142, and the output matching unit 141 is performed in time series. You may implement
- the above program may be stored in a non-transitory medium such as a ROM (Read Only Memory), a RAM (Random Access Memory), a semiconductor storage device such as a flash memory, an optical disk, a magnetic disk, or a magneto-optical disk.
- a non-transitory medium such as a ROM (Read Only Memory), a RAM (Random Access Memory), a semiconductor storage device such as a flash memory, an optical disk, a magnetic disk, or a magneto-optical disk.
- Time-series data processing apparatus 101 State management unit 111, 111-1, 111-2 Processing control unit 121, 121-1, 121-2 processing unit 121A Version comparison unit 122 Reconfiguration unit 131, 131-1 , 131-2 Output connection unit 131A Synchronization unit 141 Output matching unit 142 Information management unit 500 Time series data processing device 501 Host computer 511 Processing control unit 521 Processing unit 522 Reconfiguration unit 531 Output connection unit 600 Time series data processing device 611 Processing Control unit 621 Processing unit 622 Reconfiguration unit 631 Output connection unit 1001 Partial version comparison unit 1002 Waiting data queue 1003 Arbitration unit
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
すなわち、装置の第2の領域での旧処理の動作中に、第1のユーザ定義処理(被更新処理)が動作中の、装置の第1の領域に新処理を実行する回路情報を書き込むことにより、旧処理から新処理への変更を実現しようとする。このとき、第1の領域への新処理を実行する回路情報の書き込みは、被更新処理が完了した後の期間に行わねばならない、という要件が存在する。
1)第1の処理も第2の処理も、データを入力したサイクルと同じサイクルに結果を生成する。
2)処理の結果は、処理部521から出力接続部531へ1サイクルで到達する。
3)1サイクルごとにデータが入力される。以下の説明では、1サイクルを単位とする時刻を用いる。
(発明の目的)
本発明はこのような事情に鑑みて提案されたものであり、旧処理の実行中の新処理への変更、処理の変更時の出力データの選択及び出力順序の制御が可能な時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム記憶媒体を提供することにある。
次に、本発明の実施形態について図面を参照して詳細に説明する。
(1)新処理を実行する回路情報を第1の処理部に書き込むため、第1の処理部で動作している処理を停止する。
(2)新処理実行する回路情報を第1の処理部に書き込む、
(3)新処理の動作を開始する、
(4)新処理の出力を開始する、
(5)旧処理の動作を停止する、
(6)旧処理実行する回路情報を削除する。
(実施形態の動作の具体例)
図7から図11のフローチャートと、図13から図24のブロック図を参照して、実施形態に係る時系列データ処理装置100の動作の具体例を説明する。
101 状態管理部
111、111-1、111-2 処理制御部
121、121-1、121-2 処理部
121A バージョン比較部
122 再構成部
131、131-1、131-2 出力接続部
131A 同期部
141 出力整合部
142 情報管理部
500 時系列データ処理装置
501 ホストコンピュータ
511 処理制御部
521 処理部
522 再構成部
531 出力接続部
600 時系列データ処理装置
611 処理制御部
621 処理部
622 再構成部
631 出力接続部
1001 部分バージョン比較部
1002 待ちデータキュー
1003 調停部
Claims (7)
- 第1の処理又は第3の処理を実行し第1の結果データ又は第3の結果データを生成する、再構成可能な第1の処理部と、
第2の処理を実行し第2の結果データを生成する第2の処理部と、
前記第1の処理部によって実行される処理を、前記第1の処理から第3の処理に変更する再構成部と、
前記第1の処理部における前記第1の処理の停止、及び前記第1の処理部における前記第3の処理の起動を実行し、前記第1の結果データ及び前記第3の結果データの出力を許可又は禁止する第1の処理制御部と、
前記第1の処理制御部の指示に基づき、前記第1の結果データ及び前記第3の結果データの出力を許可又は禁止する第1の出力制御部と、
前記第1の結果データに前記第1の処理の内容に対応する第1の識別情報を付加して第1の結果データの組を生成し、前記第2の結果データに前記第2の処理の内容に対応する第2の識別情報を付加して第2の結果データの組を生成し、前記第3の結果データに前記第3の処理の内容に対応する第3の識別情報を付加して第3の結果データの組を生成する情報管理部と、
外部から処理変更指示を受けたとき、前記第1の処理制御部に対して前記第1の処理の停止及び前記第3の処理の起動並びに前記第1の結果データ及び前記第3の結果データの出力の許可又は禁止を指示し、前記再構成部に対して前記第1の処理から前記第3の処理への変更を指示し、前記情報管理部に対して前記第2の識別情報及び前記第3の識別情報の付加を指示する状態管理部と、
前記第1の出力制御部から前記第3の結果データの組を、前記第2の出力制御部から前記第2の結果データの組を入力し、前記第3の識別情報及び前記第2の識別情報に基づいて、前記第3の結果データの組又は前記第2の結果データの組の一方を選択し、前記選択された結果データの組に含まれる結果データ出力する出力整合部と、
を備えることを特徴とする時系列データ処理装置。 - 前記第1の処理部は、前記第1の処理を完了したことを示す第1の完了通知を前記状態管理部に出力し、
前記再構成部は、前記第1の処理から第3の処理への変更を完了したことを示す第2の完了通知を前記状態管理部に出力し、
前記状態管理部は、前記第1の完了通知に基づいて前記第1の処理制御部に対して前記第1の結果データの出力の禁止を指示し、前記第2の完了通知に基づいて前記再構成部に対して前記第1の処理から前記第3の処理への変更を指示した後、前記第1の処理制御部に対して前記第3の処理の起動及び前記第3の結果データの出力の許可を指示する
ことを特徴とする請求項1記載の時系列データ処理装置。 - 前記第2の処理部における前記第2の処理の停止及び起動を実行し、前記第2の結果データの出力を許可又は禁止する第2の処理制御部と、
前記第2の結果データの出力を許可又は禁止する第2の出力制御部と、をさらに備え、
前記第2の処理部は、再構成可能で、前記第2の処理を完了したことを示す第3の完了通知を前記状態管理部に出力し、
前記状態管理部は、前記第2の処理制御部に対して前記第2の結果データの出力の許可又は禁止を指示する
を備えることを特徴とする請求項2記載の時系列データ処理装置。 - 前記第1の識別情報は、前記第1の処理の内容を示す第1の識別子及び前記第1の処理の変更履歴を示す第1のバージョン番号を含み、
前記第2の識別情報は、前記第2の処理の内容を示す第2の識別子及び前記第2の処理の変更履歴を示す第2のバージョン番号を含み、
前記第3の識別情報は、前記第3の処理の内容を示す第3の識別子及び前記第3の処理の変更履歴を示す第3のバージョン番号を含み、
前記出力整合部は、前記第2の結果データの組と前記第3の結果データの組とが同時に到着し、前記第2の識別子と前記第3の識別子が等しく、前記第2のバージョン番号よりも前記第3のバージョン番号の方が新しいときは、前記第3の結果データを第4の結果データの組として選択し、前記第2の結果データの組を破棄する
ことを特徴とする請求項1乃至3のいずれかに記載の時系列データ処理装置。 - 前記制御部は、
前記第3の完了通知を入力する前は、前記第3の識別子として、前記第2の識別子と同じ値を付加し、前記第3のバージョン番号として、前記第2のバージョン番号からより古いバージョン番号を付加し、
前記第3の完了通知を入力した後は、前記第3の識別子として、前記第2の識別子と同じ値を付加し、前記第3のバージョン番号として、前記第2のバージョン番号より新しいバージョン番号を付加する
ことを特徴とする請求項4に記載の時系列データ処理装置。 - 第1の処理部において第1の処理を実行して第1の結果データを生成し、
前記第1の結果データに前記第1の処理の内容に対応する第1の識別情報を付加して第1の結果データの組を生成し、
第2の処理部において第2の処理を実行して第2の結果データを生成し、
前記第2の結果データに前記第2の処理の内容に対応する第2の識別情報を付加して第2の結果データの組を生成し、
外部から処理変更指示を受けたとき、前記第1の処理部における前記第1の処理を停止して、前記第1の結果データの出力を禁止し、
前記第1の処理部によって実行される処理を前記第1の処理から第3の処理に変更し、
前記第3の処理を起動して、前記第3の結果データの出力を許可し、
前記第3の結果データに前記第3の処理の内容に対応する第3の識別情報を付加して第3の結果データの組を生成し、
前記第1の出力制御部から前記第3の結果データの組を入力し、前記第2の出力制御部から前記第2の結果データの組を入力し、
前記第3の識別情報及び前記第2の識別情報に基づいて、前記第3の結果データの組又は前記第2の結果データの組の一方を選択し、前記選択された結果データの組に含まれる結果データ出力することを特徴とする時系列データ処理方法。 - 第1の処理を実行し第1の結果データを出力する第1の処理部、及び第2の処理を実行し第2の結果データを出力する第2の処理部を備える時系列データ処理装置が備えるコンピュータを、
前記第1の処理部によって実行される処理を、前記第1の処理から第3の処理に変更する再構成手段、
前記第1の処理部における前記第1の処理の停止、及び前記第1の処理部における前記第3の処理の起動を実行し、前記第1の結果データ及び前記第3の結果データの出力を許可又は禁止する第1の処理制御手段、
前記第1の処理制御手段の指示に基づき、前記第1の結果データ及び前記第3の結果データの出力を許可又は禁止する第1の出力制御手段、
前記第1の結果データに前記第1の処理の内容に対応する第1の識別情報を付加して第1の結果データの組を生成し、前記第2の結果データに前記第2の処理の内容に対応する第2の識別情報を付加して第2の結果データの組を生成し、前記第3の結果データに前記第3の処理の内容に対応する第3の識別情報を付加して第3の結果データの組を生成する情報管理手段、
外部から処理変更指示を受けたとき、前記第1の処理制御手段に対して前記第1の処理の停止及び前記第3の処理の起動並びに前記第1の結果データ及び前記第3の結果データの出力の許可又は禁止を指示し、前記再構成手段に対して前記第1の処理から前記第3の処理への変更を指示し、前記情報管理手段に対して前記第2の識別情報及び前記第3の識別情報の付加を指示する状態管理手段、及び
前記第1の出力制御部から前記第3の結果データの組を、前記第2の出力制御部から前記第2の結果データの組を入力し、前記第3の識別情報及び前記第2の識別情報に基づいて、前記第3の結果データの組又は前記第2の結果データの組の一方を選択し、前記選択された結果データの組に含まれる結果データ出力する出力整合手段
として機能させることを特徴とする時系列データ処理プログラムを格納した非一時的な記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014504672A JP6040979B2 (ja) | 2012-03-16 | 2013-03-05 | 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム |
US14/381,601 US9075669B2 (en) | 2012-03-16 | 2013-03-05 | Time series data processing device, time series data processing method and time series data processing program storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012060863 | 2012-03-16 | ||
JP2012-060863 | 2012-03-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013136717A1 true WO2013136717A1 (ja) | 2013-09-19 |
Family
ID=49160653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/001364 WO2013136717A1 (ja) | 2012-03-16 | 2013-03-05 | 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム記憶媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9075669B2 (ja) |
JP (1) | JP6040979B2 (ja) |
WO (1) | WO2013136717A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102286932B1 (ko) * | 2019-12-17 | 2021-08-05 | 셰플러코리아 유한책임회사 | 예압스프링이 구비된 구름 베어링 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000137620A (ja) * | 1998-08-24 | 2000-05-16 | Hitachi Ltd | トランザクション処理システムのプログラム変更方法、システム及び記憶媒体 |
JP2004078550A (ja) * | 2002-08-19 | 2004-03-11 | Nec Engineering Ltd | ソフトウェア更新システム |
JP2004178472A (ja) * | 2002-11-29 | 2004-06-24 | Sanyo Electric Co Ltd | プログラム取得方法およびその方法を利用可能なパケット転送装置 |
JP2004274141A (ja) * | 2003-03-05 | 2004-09-30 | Fujitsu Ltd | 動作継続中にデータ書き換え可能な論理装置 |
JP2006522416A (ja) * | 2003-04-02 | 2006-09-28 | ビーチ・アンリミテッド・エルエルシー | ディジタル・メディア・サーバのアップグレード |
JP2007108910A (ja) * | 2005-10-12 | 2007-04-26 | Kenwood Corp | ナビゲーション装置 |
JP2010198307A (ja) * | 2009-02-25 | 2010-09-09 | Hitachi Automotive Systems Ltd | 自動車用制御装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3636277B2 (ja) | 1998-09-11 | 2005-04-06 | 富士ゼロックス株式会社 | 情報処理システム |
US6744274B1 (en) * | 2001-08-09 | 2004-06-01 | Stretch, Inc. | Programmable logic core adapter |
US6842034B1 (en) * | 2003-07-01 | 2005-01-11 | Altera Corporation | Selectable dynamic reconfiguration of programmable embedded IP |
JP4390818B2 (ja) * | 2007-03-30 | 2009-12-24 | 富士通テン株式会社 | 計測データ表示装置 |
US20100023736A1 (en) | 2007-11-12 | 2010-01-28 | Takashi Morimoto | Reconfigurable circuit, reset method, and configuration information generation device |
JP6040980B2 (ja) * | 2012-03-16 | 2016-12-07 | 日本電気株式会社 | 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム |
-
2013
- 2013-03-05 JP JP2014504672A patent/JP6040979B2/ja not_active Expired - Fee Related
- 2013-03-05 US US14/381,601 patent/US9075669B2/en not_active Expired - Fee Related
- 2013-03-05 WO PCT/JP2013/001364 patent/WO2013136717A1/ja active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000137620A (ja) * | 1998-08-24 | 2000-05-16 | Hitachi Ltd | トランザクション処理システムのプログラム変更方法、システム及び記憶媒体 |
JP2004078550A (ja) * | 2002-08-19 | 2004-03-11 | Nec Engineering Ltd | ソフトウェア更新システム |
JP2004178472A (ja) * | 2002-11-29 | 2004-06-24 | Sanyo Electric Co Ltd | プログラム取得方法およびその方法を利用可能なパケット転送装置 |
JP2004274141A (ja) * | 2003-03-05 | 2004-09-30 | Fujitsu Ltd | 動作継続中にデータ書き換え可能な論理装置 |
JP2006522416A (ja) * | 2003-04-02 | 2006-09-28 | ビーチ・アンリミテッド・エルエルシー | ディジタル・メディア・サーバのアップグレード |
JP2007108910A (ja) * | 2005-10-12 | 2007-04-26 | Kenwood Corp | ナビゲーション装置 |
JP2010198307A (ja) * | 2009-02-25 | 2010-09-09 | Hitachi Automotive Systems Ltd | 自動車用制御装置 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2013136717A1 (ja) | 2015-08-03 |
JP6040979B2 (ja) | 2016-12-07 |
US9075669B2 (en) | 2015-07-07 |
US20150067703A1 (en) | 2015-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6412975B2 (ja) | 分散型プロセッサを有する処理システム | |
JP6140303B2 (ja) | 仮想マシンのライブマイグレーション方法、仮想マシンのメモリデータ処理方法、サーバ及び仮想マシンシステム | |
US9715601B2 (en) | Secure access in a microcontroller system | |
EP3183652A1 (en) | Mechanism for inter-processor interrupts in a heterogeneous multiprocessor system | |
CN103649923B (zh) | 一种numa系统内存镜像配置方法、解除方法、系统和主节点 | |
JP2007207136A (ja) | データ処理装置、データ処理方法、及びデータ処理プログラム | |
CN107430564A (zh) | 具有多个独立微控制器的微控制器装置 | |
JP2004199698A (ja) | 複数の割込発生源から生じる割込要求の優先順位決定用割込制御装置ならびに割込制御方法 | |
JP5499950B2 (ja) | 制御装置、情報処理装置、制御プログラム、及び制御方法 | |
JP6040979B2 (ja) | 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム | |
US20130332629A1 (en) | Configuration controller and configuration control method | |
JP3693013B2 (ja) | データ処理システム、アレイ型プロセッサ、データ処理装置、コンピュータプログラム、情報記憶媒体 | |
JP5034979B2 (ja) | 起動装置、起動方法、及び、起動プログラム | |
JP6135403B2 (ja) | 情報処理システム、情報処理システムの障害処理方法 | |
JP6036835B2 (ja) | 時系列データ処理装置、時系列データ処理方法及び時系列データ処理プログラム | |
US10725984B2 (en) | Time series data device, time series data processing method and time series data processing program storage medium | |
JP4728581B2 (ja) | アレイ型プロセッサ | |
JP3861898B2 (ja) | データ処理システム、アレイ型プロセッサ、データ処理装置、コンピュータプログラム、情報記憶媒体 | |
JP2014138382A (ja) | 信号処理装置およびプログラマブルロジックデバイスの構成方法 | |
US9990131B2 (en) | Managing memory in a multiprocessor system | |
JP2007241570A (ja) | プログラマブルコントローラ間通信のための共有メモリの設定方式 | |
JP2003006173A (ja) | 情報処理装置 | |
JP2007329760A (ja) | プログラマブル論理デバイス、回路情報入力制御装置および半導体装置 | |
JP2013134593A (ja) | Lsi装置 | |
KR101776329B1 (ko) | 접근권한코드를 이용한 디바이스 보호 시스템 및 그 보호 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13760842 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014504672 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14381601 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13760842 Country of ref document: EP Kind code of ref document: A1 |