JPWO2015008481A1 - Time-series data processing device, time-series data processing method, and program - Google Patents

Time-series data processing device, time-series data processing method, and program Download PDF

Info

Publication number
JPWO2015008481A1
JPWO2015008481A1 JP2015527177A JP2015527177A JPWO2015008481A1 JP WO2015008481 A1 JPWO2015008481 A1 JP WO2015008481A1 JP 2015527177 A JP2015527177 A JP 2015527177A JP 2015527177 A JP2015527177 A JP 2015527177A JP WO2015008481 A1 JPWO2015008481 A1 JP WO2015008481A1
Authority
JP
Japan
Prior art keywords
result data
old
new
processing
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015527177A
Other languages
Japanese (ja)
Other versions
JP6394599B2 (en
Inventor
将通 高木
将通 高木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2015008481A1 publication Critical patent/JPWO2015008481A1/en
Application granted granted Critical
Publication of JP6394599B2 publication Critical patent/JP6394599B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

時系列データの処理内容変更に伴い、結果データに付加する情報量の増大を抑えながら、新旧の結果データの出力を混在させずに新旧切替前後の結果データを指定可能として、新旧の有用な結果データを多く出力する技術を提供する。新処理および旧処理の各処理部101と、旧処理から新処理への変更指示があると、最後の旧処理の結果データに、旧処理を表す新旧識別情報と、待ち合わせノードを示すノード識別情報とを付加し、最初の新処理の結果データに、新処理を表す新旧識別情報とノード識別情報とを付加する制御部121と、自ノードからの出力対象を選択する選択情報を記憶し、自ノードに到着した結果データおよび遅延部114内の結果データのうち、付加情報と選択情報とに基づき、最初の新処理の結果データより前に最後の旧処理の結果データを選択し、選択しなかった結果データを遅延部114に挿入する選択部113とを備える。With the change in the processing contents of time series data, it is possible to specify the result data before and after switching between old and new without mixing the output of old and new result data while suppressing the increase in the amount of information added to the result data. Provide technology to output a lot of data. When there is an instruction to change from the old process to the new process, each processing unit 101 of the new process and the old process, the new and old identification information indicating the old process and the node identification information indicating the waiting node are included in the result data of the last old process. Is added to the result data of the first new process, and the control unit 121 adds new / old identification information representing the new process and node identification information, and selection information for selecting an output target from the own node. Of the result data arriving at the node and the result data in the delay unit 114, the last old process result data is selected before the first new process result data based on the additional information and the selection information, and is not selected. And a selection unit 113 for inserting the result data into the delay unit 114.

Description

本発明は、時系列データを処理する技術に関し、特に、時系列データに対する処理の内容が変化する時系列データ処理装置、時系列データ処理方法、および、コンピュータ読取り可能な記録媒体に関する。   The present invention relates to a technique for processing time-series data, and more particularly to a time-series data processing apparatus, a time-series data processing method, and a computer-readable recording medium in which the content of processing on time-series data changes.

まず、「時系列データに対するデータ処理」について説明する。本明細書において、「時系列データに対するデータ処理」とは、次々と入力される一連のデータに対する処理をいう。時系列データに対するデータ処理による結果データも、同様に次々と出力される。「次々と入力される」とは、複数のデータがある期間にわたってそれぞれ異なるタイミングで処理装置に到着する、という意味である。時系列データに対するデータ処理の例として、時系列データの直近の2つの値の和を取る、といった処理が挙げられる。以降、時系列データに対するデータ処理を、単に、「時系列データ処理」という。   First, “data processing for time-series data” will be described. In this specification, “data processing for time-series data” refers to processing for a series of data input one after another. The result data by the data processing on the time series data is also output one after another in the same manner. “To be input one after another” means that a plurality of data arrive at the processing device at different timings over a certain period. As an example of data processing for time series data, there is a process of taking the sum of the two most recent values of the time series data. Hereinafter, data processing for time series data is simply referred to as “time series data processing”.

以下の説明においては、データの配列を、[1,2,3,4]のように表し、データの集合を、{1,2,3,4}のように表し、データの組を、<10度,1月1日>のように表す。このように、括弧の種類によってデータの種類を区別して表す。また、1、2のような個々のデータの数値は、“1”、“2”のように表記し、参照符号と区別する。   In the following description, 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, January 1>. In this way, the type of data is distinguished and represented by the type of parentheses. In addition, the numerical values of individual data such as 1 and 2 are expressed as “1” and “2”, and are distinguished from reference numerals.

また、時系列データ処理装置の動作に用いられるクロックの周期を「サイクル」といい、これを期間の単位として用いる。「サイクルの開始時」とは、その期間の最初の時点を意味し、「サイクルの終了時」とは、その期間の最後の時点を意味する。例えば、クロックの周波数が1GHzである場合は、ある基準時刻について第1サイクルは、基準時刻プラスゼロ秒から基準時刻プラス1ナノ秒の間の期間を意味し、第Nサイクルは、基準時刻プラス(N−1)ナノ秒から基準時刻プラスNナノ秒の期間を意味する。また、第Mサイクルの開始時は、基準時刻プラス(M−1)ナノ秒を意味し、第Mサイクルの終了時は、基準時刻プラスMナノ秒を意味する。   The period 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, and “at the end of the cycle” means the last time of the period. For example, when the frequency of the clock is 1 GHz, the first cycle for a certain reference time means a period between the reference time plus zero seconds and the reference time plus 1 nanosecond, and the Nth cycle is the reference time plus ( N-1) A period from nanoseconds to a reference time plus N nanoseconds. The start of the Mth cycle means a reference time plus (M-1) nanoseconds, and the end of the Mth cycle means a reference time plus M nanoseconds.

ここで、入力データは、1つ以上の値からなる組である。例として、温度および日付の組、温度のみの組、銘柄と株価と時刻との組などが挙げられる。例えば、温度および日付の組を<10度,1月1日>のように表す。入力データおよび装置で扱われる値を、それらが混同されるおそれがない場合は、単に「データ」ともいう。   Here, the input data is a set of one or more values. Examples include a set of temperature and date, a set of temperature only, a set of brand, stock price, and time. For example, a set of temperature and date is expressed as <10 degrees, January 1>. The input data and values handled by the device are also simply referred to as “data” when there is no risk of confusion.

時系列データ処理は、複数の入力データに対して、あるいは、時系列データのウィンドウに対して処理されることが多い。「ウィンドウ」とは、入力データの集合であり、2種類ある。1つは、予め決められた数をS(Sは1以上の整数)として、直近のS個の入力データの集合である。もう1つは、ある決められた期間をPとして、入力データの組の1要素を時刻とみなし、時刻が期間Pに収まる入力データの集合である。   Time-series data processing is often performed on a plurality of input data or 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 S input data, where S is a predetermined number (S is an integer equal to or greater than 1). The other is a set of input data in which a predetermined period is P, one element of the set of input data is regarded as time, and the time falls within the period P.

例えば、温度および日付の組を入力データとし、<10度、1月1日>、<11度、1月2日>、<10度、1月3日>、<10度、1月4日>という時系列データが与えられたとする。1月4日から過去3日間にわたる期間に収まるウィンドウは、{<11度、1月2日>,<10度、1月3日>,<10度、1月4日>}である。   For example, 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>}.

また、ウィンドウ内の入力データの集合、部分集合、要素を「ウィンドウデータ」という。時系列データ処理では、このウィンドウデータが記憶されることが多い。以下の説明では、ウィンドウあるいはウィンドウデータを配列あるいは集合として表す。   A set, a subset, and an element of input data in a window are referred to as “window data”. In time series data processing, this window data is often stored. In the following description, windows or window data are represented as arrays or sets.

時系列データ処理を、複数のパーティションを持つIC(Integrated Circuit)チップを用いて実行することを想定する。パーティションとは、処理の内容を規定することができる領域である。このようなICチップの例として、FPGA(Field Programmable Gate Array)が挙げられる。この場合、パーティションには、処理を実行する回路を構成するための回路情報等が書き込まれる。また、時系列データ処理を、メモリからプログラムを読み込んで実行するプロセッサを用いて実行することも可能である。この場合、メモリの領域に、時系列データ処理の手順を指定するプログラムが書き込まれる。   It is assumed that the time series data processing is executed using an IC (Integrated Circuit) chip having a plurality of partitions. A partition is an area where the contents of processing can be defined. An example of such an IC chip is an FPGA (Field Programmable Gate Array). In this case, circuit information or the like for configuring a circuit for executing processing is written in the partition. It is also possible to execute time-series data processing using a processor that reads a program from a memory and executes it. In this case, a program for specifying a procedure of time series data processing is written in the memory area.

時系列データ処理において、第1のユーザ定義処理(旧処理)を、第2のユーザ定義処理(新処理)に変更したいことがある。すなわち、ICチップ上の第1のパーティションに定義された旧処理の実行中に、第2のパーティションに新処理を実行する回路情報が書き込まれて新処理が実行され、旧処理が停止する。このようにして、旧処理を新処理に変更したいことがある。   In time-series data processing, it may be desired to change the first user-defined process (old process) to the second user-defined process (new process). That is, during execution of the old process defined in the first partition on the IC chip, circuit information for executing the new process is written in the second partition, the new process is executed, and the old process is stopped. In this way, it may be desired to change the old process to the new process.

旧処理を新処理に変更する例として、広い範囲に分散配置された温度センサの値を入力データとしてある期間の平均を取ることにより、火事を含む緊急事態を検知するアプリケーションを考える。このようなアプリケーションでは、温度変化が激しくなってきたときに温度変化に追従する速度を高めるため、温度の平均を取る期間の長さを変更することが望ましい。   As an example of changing the old process to the new process, consider an application that detects an emergency including a fire by averaging the values of temperature sensors distributed over a wide range over a certain period. In such an application, it is desirable to change the length of the period during which the temperature is averaged in order to increase the speed of following the temperature change when the temperature change becomes severe.

また、旧処理を新処理に変更する他の例として、株券など金融商品の売買のタイミングを決めるための指標を計算するアプリケーションを考える。このようなアプリケーションでは、売買する金融商品の銘柄と売買戦略に応じて、必要な指標は複数存在し、出力すべき指標の集合は異なる。このようなアプリケーションが、有限数の指標しか同時に計算できないとする。時刻に応じて売買する銘柄と戦略は変化するため、そのとき売買する銘柄と売買戦略に応じて、算出する指標を変化させることが望ましい。   As another example of changing the old process to the new process, consider an application that calculates an index for determining the timing of buying and selling financial products such as stock certificates. In such an application, there are a plurality of necessary indicators according to the brand of the financial product to be bought and sold and the buying and selling strategy, and the set of indicators to be output is different. Assume that such an application can calculate only a finite number of indicators simultaneously. Since the brands and strategies to be bought and sold change according to the time, it is desirable to change the index to be calculated according to the brands and trading strategies to be bought and sold at that time.

図15を用いて、旧処理を新処理に変更する際の入力データおよび出力データの一例について説明する。この例では、直近の2値の和を取る旧処理を、直近の3値の和を取る新処理に変更する。また、1サイクルごとにデータが入力されるものとし、1サイクルを単位とする時刻を用いて説明する。   An example of input data and output data when changing the old process to the new process will be described with reference to FIG. In this example, the old process that takes the sum of the most recent binary values is changed to a new process that takes the sum of the most recent three values. In addition, it is assumed that data is input every cycle, and the description will be made using time in units of one cycle.

図15において、まず、第1サイクルの開始時に、時系列データ“1”が入力される。そこで、旧処理は、その値をウィンドウデータとして保存する。これにより、旧処理が保存するウィンドウデータは、[]から[1]に変化する。   In FIG. 15, first, time series data “1” is input at the start of the first cycle. Therefore, the old process stores the value as window data. As a result, the window data stored in the old process changes from [] to [1].

第2サイクルの開始時に、時系列データ“2”が入力される。そこで、旧処理は、その値をウィンドウデータとして保存する。これにより、旧処理が保存するウィンドウデータは、[1]から[1,2]に変化する。そして、旧処理は、直近の2値が手に入ったため、ウィンドウデータ[1,2]を用いて結果データ“3”を出力する。   At the start of the second cycle, time series data “2” is input. Therefore, the old process stores the value as window data. As a result, the window data stored in the old process changes from [1] to [1,2]. The old process outputs the result data “3” using the window data [1, 2] because the latest two values are available.

第3サイクルの開始時に、新処理への変更指示が与えられ、新処理を実行するための情報が装置に書き込まれる。例えば、FPGAにおいて旧処理とは異なる領域に新処理を実行する回路情報が書き込まれたとする。そして、新処理は、動作を開始する。しばらくの間、旧処理および新処理が並行に動作するものとする。   At the start of the third cycle, an instruction to change to the new process is given, and information for executing the new process is written into the apparatus. For example, it is assumed that circuit information for executing a new process is written in an area different from the old process in the FPGA. Then, the new process starts operation. It is assumed that the old process and the new process operate in parallel for a while.

第3サイクルの開始時に、時系列データ“3”が入力される。そこで、旧処理は、入力データ“3”を保存する。これにより、旧処理が保存するウィンドウデータは、[1,2]から[2,3]に変化する。そして、旧処理は、ウィンドウデータ[2,3]を用いて結果データ“5”を出力する。また、新処理は、入力データ“3”をウィンドウデータとして保存する。これにより、新処理が保存するウィンドウデータは、[]から[3]に変化する。   At the start of the third cycle, time series data “3” is input. Therefore, the old process stores the input data “3”. As a result, the window data stored in the old process changes from [1,2] to [2,3]. In the old process, the result data “5” is output using the window data [2, 3]. In the new process, the input data “3” is saved as window data. As a result, the window data stored in the new process changes from [] to [3].

第4サイクルの開始時に、時系列データ“4”が入力される。そこで、旧処理は、入力データ“4”を保存し、ウィンドウデータ[3,4]を用いて結果データ“7”を出力する。また、新処理は、入力データ“4”をウィンドウデータとして保存する。これにより、新処理が保存するウィンドウデータは、[3]から[3,4]に変化する。   At the start of the fourth cycle, time series data “4” is input. Therefore, the old process stores the input data “4” and outputs the result data “7” using the window data [3, 4]. In the new process, the input data “4” is stored as window data. As a result, the window data stored by the new process changes from [3] to [3,4].

第5サイクルの開始時に、時系列データ“5”が入力される。そこで、旧処理は、入力データ“5”を保存し、ウィンドウデータ[4,5]を用いて結果データ“9”を出力する。また、新処理は、入力データ“5”を保存する。これにより、新処理が保存するウィンドウデータは、[3,4]から[3,4,5]に変化する。そして、新処理は、直近の3値が手に入ったため、ウィンドウデータ[3,4,5]を用いて結果データ“12”を出力する。   At the start of the fifth cycle, time series data “5” is input. Therefore, the old process stores the input data “5” and outputs the result data “9” using the window data [4, 5]. In the new process, the input data “5” is stored. As a result, the window data stored by the new process changes from [3,4] to [3,4,5]. The new process outputs the result data “12” using the window data [3, 4, 5] because the latest three values are available.

その後、旧処理が停止あるいは削除され、処理の変更が完了する。   Thereafter, the old process is stopped or deleted, and the process change is completed.

このような処理の変更の際に、新処理および旧処理の両方の結果が混在して装置外部への出力されないようにしつつ、両方の処理を行いたいというニーズがある。具体的には、装置外部へ出力される結果列は、旧処理の特定の結果まで旧処理の結果列で、その後、新処理の特定の結果から始まる新処理の結果列であることが望ましい。また、このような処理の変更の際に、新処理への変更指示後も、旧処理の結果のうち、まだ有用で利用可能なものを装置外部に出しつつ両方の処理を行いたいというニーズがある。   At the time of such a process change, there is a need to perform both processes while preventing the results of both the new process and the old process from being mixed and output to the outside of the apparatus. Specifically, the result sequence output to the outside of the apparatus is preferably the result sequence of the old process until the specific result of the old process, and then the result sequence of the new process starting from the specific result of the new process. In addition, after such a change in processing, there is a need to perform both processes while sending out the results of the old process that are still useful and usable after the change instruction to the new process. is there.

処理変更時の上記ニーズの例として、前述した火事を含む緊急事態を検知するアプリケーションを考える。温度変化が激しくなってきた場合、温度変化に追従する速度を高めるために、温度の平均を取る期間の幅を変更することを想定する。このとき、期間の幅を変更する前の温度の平均と、期間の幅を変更した後の温度の平均とが混在して装置外部に出力されると、温度変化を正しく追従できない。したがって、温度の平均を取る期間の幅を変更する際には、処理変更前後の結果が混在して装置外部に出力されないようにする必要がある。また、処理変更を指示した後、処理変更後の温度の平均が出力されるまでの間は、処理変更前の温度の平均も依然有用で利用可能である。したがって、温度の平均を取る期間の幅を変更する際には、新処理の結果が装置外部に出力されるまでの間、旧処理の結果をより多く装置から出力することが望ましい。   As an example of the above needs at the time of processing change, consider an application for detecting an emergency situation including the above-mentioned fire. When the temperature change becomes severe, it is assumed that the width of the period in which the temperature is averaged is changed in order to increase the speed of following the temperature change. At this time, if the average of the temperature before changing the width of the period and the average of the temperature after changing the width of the period are mixed and output to the outside of the apparatus, the temperature change cannot be correctly followed. Therefore, when changing the duration of the temperature averaging period, it is necessary to prevent the results before and after the process change from being mixed and output outside the apparatus. In addition, after the process change is instructed and until the average temperature after the process change is output, the average temperature before the process change is still useful and usable. Therefore, when changing the width of the period during which the temperature is averaged, it is desirable to output more old process results from the apparatus until the new process results are output to the outside of the apparatus.

処理変更時の上記ニーズの他の例として、株券などの金融商品の売買指令を行うアプリケーションを考える。売買する銘柄を変えたい場合、売買指示の処理内容を変更する必要がある。以下、変更前の銘柄を「旧銘柄」、変更後の銘柄を「新銘柄」と記載する。このとき、旧銘柄に関する売買指示と、新銘柄に関する売買指示とが混在して装置外部に出力されると、売買を誤る原因となりうる。したがって、売買指示の処理内容を変更する際には、処理変更前後の結果が混在して装置外部に出力されないようにする必要がある。また、新銘柄に関する処理への変更指示後でも、旧銘柄に関する売買指示を受け取りたい場合がある。例えば、旧銘柄に関する売りの指令後に、新銘柄に関する処理への変更を指示したとする。このような場合、旧銘柄に関する買いの指令を出すまでは、旧銘柄に関する売買指示が出力され、その後、新銘柄に関する売買指示が出力されることが望ましい。このように、停止可能な状態になっていない旧銘柄に関する処理から出力された結果の列は有用で利用可能である。したがって、旧銘柄に関する処理から新銘柄に関する処理へ変更する際には、停止可能な状態になっていない旧処理からの結果の列を出力させ、旧処理が停止可能な状態になった後に、新銘柄に関する処理を出力させることが望ましい。   As another example of the above-mentioned needs at the time of processing change, consider an application that issues a buy / sell command for financial products such as stock certificates. In order to change the brand to be traded, it is necessary to change the processing content of the trading instruction. Hereinafter, the brand before the change is described as “old brand”, and the brand after the change is described as “new brand”. At this time, if a trading instruction regarding the old brand and a trading instruction regarding the new brand are mixed and output to the outside of the apparatus, this may cause a mistake in trading. Therefore, when changing the processing contents of the trade instruction, it is necessary to prevent the results before and after the process change from being mixed and output to the outside of the apparatus. In addition, even after an instruction to change to processing related to a new brand, there is a case where it is desired to receive a trading instruction regarding an old brand. For example, it is assumed that a change to processing related to a new brand is instructed after a command for selling related to an old brand. In such a case, it is desirable that a trading instruction regarding the old brand is output until a buying instruction regarding the old brand is issued, and thereafter a trading instruction regarding the new brand is output. In this way, the sequence of results output from the processing related to the old brand that is not ready to be stopped is useful and available. Therefore, when changing from the process related to the old issue to the process related to the new issue, the result column from the old process that is not ready to be stopped is output. It is desirable to output the process related to the brand.

以上のような処理に関連する技術が、特許文献1〜6、および、非特許文献1〜2に記載されている。   Technologies related to the above processing are described in Patent Documents 1 to 6 and Non-Patent Documents 1 and 2.

特許文献1には、再構成可能デバイスを用いたシステムが開示されている。   Patent Document 1 discloses a system using a reconfigurable device.

特許文献2には、2種類の処理を行う時系列データ圧縮装置が開示されている。   Patent Document 2 discloses a time-series data compression apparatus that performs two types of processing.

特許文献3、4には、バージョン番号(更新版数)が付加された情報を取り扱う処理装置が開示されている。   Patent Documents 3 and 4 disclose a processing apparatus that handles information to which a version number (updated version number) is added.

特許文献5、6には、出力予定時刻が付加された情報を取り扱う処理装置が開示されている。   Patent Documents 5 and 6 disclose processing apparatuses that handle information to which output scheduled times are added.

非特許文献1には、旧処理および新処理の2種類の処理が可能な時系列データ処理装置が開示されている。   Non-Patent Document 1 discloses a time-series data processing apparatus capable of two types of processing, old processing and new processing.

非特許文献2には、旧処理および新処理の2種類の処理が可能な時系列データ処理装置が開示されている。   Non-Patent Document 2 discloses a time-series data processing apparatus capable of two types of processing, old processing and new processing.

ここで、上述の関連技術を適宜組み合わせることにより、時系列データに対して新処理および旧処理の2種類の処理を行い、旧処理の結果および新処理の結果を識別して出力することは可能である。   Here, by combining the above related technologies as appropriate, it is possible to perform two types of processing, new processing and old processing, on time-series data, and identify and output the results of the old processing and the new processing. It is.

(関連技術に基づく時系列データ処理装置(その1)の動作例)
例えば、特許文献2〜4、および、非特許文献1〜2に記載された関連技術の組み合わせにより、旧処理の結果および新処理の結果を識別して出力する方法について説明する。図16に、これらの関連技術の組み合わせにより実現可能な時系列データ処理装置600の構成を示す。時系列データ処理装置600は、処理部601、制御部611、選択部621、および、同期部631を備える。
(Operation example of time-series data processing device (part 1) based on related technology)
For example, a method for identifying and outputting the result of the old process and the result of the new process by combining the related techniques described in Patent Documents 2 to 4 and Non-Patent Documents 1 and 2 will be described. FIG. 16 shows a configuration of a time-series data processing device 600 that can be realized by a combination of these related technologies. The time-series data processing device 600 includes a processing unit 601, a control unit 611, a selection unit 621, and a synchronization unit 631.

処理部601は、ユーザ定義処理を行う。ここで、時系列データ処理装置600には、複数の処理部601が含まれる。旧処理に対応するユーザ定義処理が書き込まれた処理部601は、旧処理を行い、新処理に対応するユーザ定義処理が書き込まれた処理部601は、新処理を行う。   The processing unit 601 performs user definition processing. Here, the time-series data processing device 600 includes a plurality of processing units 601. The processing unit 601 in which the user-defined process corresponding to the old process is written performs the old process, and the processing unit 601 in which the user-defined process corresponding to the new process is written performs the new process.

制御部611は、ユーザ定義処理の種類を一意に識別する処理番号と、旧処理および新処理を区別するバージョン番号とを、処理部601の処理結果に付加する。なお、ある種類のユーザ定義処理について旧処理から新処理に変更が行われる場合、制御部611は、それらの旧処理および新処理に対して、同一の処理番号を付加し、異なるバージョン番号を付加する。   The control unit 611 adds a processing number that uniquely identifies the type of user-defined processing and a version number that distinguishes old processing and new processing to the processing result of the processing unit 601. When a certain type of user-defined process is changed from the old process to the new process, the control unit 611 adds the same process number to the old process and the new process, and adds different version numbers. To do.

選択部621は、1つ以上の結果データが到着すると、いずれかの結果データを選択する。ここで、時系列データ処理装置600には、1つ以上の選択部621が含まれ、各選択部621には、処理部601または他の選択部621から出力される結果データが入力される。そして、選択部621は、到着した各結果データに付加された処理番号およびバージョン番号に基づいて、同一の処理番号についてより古いバージョン番号の結果を破棄し、より新しいバージョン番号の結果データを選択する。そして、各選択部621は、選択したデータを、次の選択部621または同期部631へ伝達する。   When one or more result data arrives, the selection unit 621 selects one of the result data. Here, the time-series data processing device 600 includes one or more selection units 621, and each selection unit 621 receives result data output from the processing unit 601 or another selection unit 621. Then, based on the process number and version number added to each arrived result data, the selection unit 621 discards the result of the older version number for the same process number and selects the result data of the newer version number. . Each selection unit 621 transmits the selected data to the next selection unit 621 or synchronization unit 631.

同期部631は、処理ごとに最新のバージョン番号を記録する。そして、同期部631は、結果データが到着すると、記録している最新のバージョン番号より古いバージョン番号の結果データを破棄し、最新のバージョン番号が付加された新処理の結果データを外部に出力する。また、同期部631は、記録している最新のバージョン番号より新しいバージョン番号の結果データが到着すると、記録しているバージョン番号を新しいバージョン番号に更新する。   The synchronization unit 631 records the latest version number for each process. When the result data arrives, the synchronization unit 631 discards the result data having a version number older than the latest recorded version number, and outputs the result data of the new process to which the latest version number is added to the outside. . Further, when the result data of the version number newer than the latest recorded version number arrives, the synchronization unit 631 updates the recorded version number to the new version number.

このように構成される時系列データ処理装置600の動作の一例を、図17〜図19を用いて説明する。この動作例では、処理部601−1が旧処理を行い、処理部601−2が新処理を行うものとする。また、処理部601−1からの出力が選択部621−1に入力され、処理部601−2からの出力が選択部621−2に入力されるものとする。また、選択部621−1からの出力が選択部621−2に入力され、選択部621−2からの出力が、同期部631に入力されるものとする。また、以下では、各処理部601から出力されるデータを、〈結果データ、処理番号、バージョン番号〉と表記する。   An example of the operation of the time-series data processing apparatus 600 configured as described above will be described with reference to FIGS. In this operation example, it is assumed that the processing unit 601-1 performs an old process and the processing unit 601-2 performs a new process. In addition, an output from the processing unit 601-1 is input to the selection unit 621-1, and an output from the processing unit 601-2 is input to the selection unit 621-2. Further, it is assumed that an output from the selection unit 621-1 is input to the selection unit 621-2, and an output from the selection unit 621-2 is input to the synchronization unit 631. In the following, data output from each processing unit 601 is expressed as <result data, processing number, version number>.

まず、第2サイクルにおいて、旧処理を行った処理部601−1は、〈o1,10,1〉を、選択部621−1に対して出力する。また、新処理を行った処理部601−2は、〈n2, 10, 2〉を、選択部621−2に対して出力する。ここでは、旧処理の結果データ“o1”の次に、新処理の結果データ“n2”を、装置外部へ出力したいとする。図17に、第2サイクル終了時における時系列データ処理装置600の内部の出力情報を示す。   First, in the second cycle, the processing unit 601-1 that has performed the old process outputs <o1, 10, 1> to the selection unit 621-1. In addition, the processing unit 601-2 that has performed the new process outputs <n2, 10, 2> to the selection unit 621-2. Here, it is assumed that the result data “n2” of the new process is to be output outside the apparatus after the result data “o1” of the old process. FIG. 17 shows output information inside the time-series data processing device 600 at the end of the second cycle.

次に、第3サイクルにおいて、選択部621−1は、到着した結果データが〈o1, 10, 1〉の1つであり選択を行う必要がない。そこで、選択部621−1は、〈o1, 10, 1〉を選択部621−2に対して出力する。同様に、選択部621−2は、到着した結果データが〈n2, 10, 2〉の1つであるため、これを同期部631に対して出力する。図18に、第3サイクル終了時における時系列データ処理装置600の内部の出力情報を示す。   Next, in the third cycle, the selection unit 621-1 does not need to make a selection because the arrival result data is one of <o1, 10, 1>. Therefore, the selection unit 621-1 outputs <o1, 10, 1> to the selection unit 621-2. Similarly, the selection unit 621-2 outputs one of the received result data <n2, 10, 2> to the synchronization unit 631. FIG. 18 shows output information inside the time-series data processing device 600 at the end of the third cycle.

次に、第4サイクルにおいて、選択部621−2は、到着した結果データ〈o1, 10, 1〉が1つであるため、これを同期部631に対して出力する。また、同期部631は、処理番号“10”の最新バージョン番号として、“1”を記録している。そこで、同期部631は、到着した結果データ〈n2, 10, 2〉と、その処理番号“10”に対応する最新のバージョン番号“1”とを比較し、到着した結果データのバージョン番号の方が新しいと判断する。そして、同期部631は、この処理番号“10”の最新バージョン番号を“2”に更新し、〈n2, 10, 2〉を外部に出力する。図19に、第4サイクル終了時における時系列データ処理装置600の内部の出力情報を示す。   Next, in the fourth cycle, the selection unit 621-2 outputs one result data <o1, 10, 1> to the synchronization unit 631 because there is only one result data. In addition, the synchronization unit 631 records “1” as the latest version number of the processing number “10”. Therefore, the synchronization unit 631 compares the arrival result data <n2, 10, 2> with the latest version number “1” corresponding to the processing number “10”, and determines the version number of the arrival result data. Is new. Then, the synchronization unit 631 updates the latest version number of the processing number “10” to “2” and outputs <n2, 10, 2> to the outside. FIG. 19 shows output information inside the time-series data processing device 600 at the end of the fourth cycle.

次に、第5サイクルにおいて、同期部631は、到着した結果データ〈o1, 10, 1〉と、その処理番号“10”に対応する最新のバージョン番号“2”とを比較し、到着した結果データのバージョン番号の方が古いと判断する。そこで、同期部631は、この結果データを破棄する。   Next, in the fifth cycle, the synchronization unit 631 compares the arrival result data <o1, 10, 1> with the latest version number “2” corresponding to the processing number “10”, and the arrival result Judge that the version number of the data is older. Therefore, the synchronization unit 631 discards the result data.

以上のように、関連技術の組み合わせに基づく時系列データ処理装置600は、旧処理の結果を外部に出力した後に新処理の結果を外部に出力することができる。しかし、この関連技術の組み合わせでは、旧処理の結果データ“o1”の次に、新処理の結果データ“n2”を出力するという目的は達成されない。このように、この関連技術の組み合わせにおいて、結果データの出力内容および順序は、新旧の結果データの各処理部601からの出力タイミング、選択部621または同期部631への到達タイミングに依存する。そのため、時系列データ処理装置600は、新旧の結果データを混在させずに出力できるものの、旧処理の結果データの指定したものの次に、新処理の結果データの指定したものを出力することができない。   As described above, the time-series data processing apparatus 600 based on the combination of related techniques can output the result of the new process to the outside after outputting the result of the old process to the outside. However, with this combination of related technologies, the purpose of outputting the result data “n2” of the new process after the result data “o1” of the old process cannot be achieved. As described above, in the combination of the related techniques, the output contents and order of the result data depend on the output timing of the old and new result data from each processing unit 601 and the arrival timing of the selection unit 621 or the synchronization unit 631. Therefore, although the time-series data processing apparatus 600 can output the old and new result data without mixing them, it cannot output the specified result data of the new process next to the specified result data of the old process. .

(関連技術に基づく時系列データ処理装置(その1)の他の動作例)
上述した関連技術の組み合わせに基づく時系列データ処理装置600の動作の他の一例を、図20〜図22を用いて説明する。ここでは、上述の動作例と同様に、処理部601−1が旧処理を行い、処理部601−2が新処理を行うものとする。また、上述の動作例と同様に、選択部621−1からの出力が選択部621−2に入力され、選択部621−2からの出力が、同期部631に入力されるものとする。ただし、この動作例では、上述の動作例と異なり、処理部601−1からの出力が選択部621−2に入力され、処理部601−2からの出力が選択部621−1に入力されるものとする。
(Another operation example of time-series data processing device (part 1) based on related technology)
Another example of the operation of the time-series data processing apparatus 600 based on the combination of related technologies described above will be described with reference to FIGS. Here, similarly to the above-described operation example, it is assumed that the processing unit 601-1 performs an old process and the processing unit 601-2 performs a new process. Similarly to the operation example described above, it is assumed that the output from the selection unit 621-1 is input to the selection unit 621-2, and the output from the selection unit 621-2 is input to the synchronization unit 631. However, in this operation example, unlike the above-described operation example, the output from the processing unit 601-1 is input to the selection unit 621-2, and the output from the processing unit 601-2 is input to the selection unit 621-1. Shall.

まず、第2サイクルにおいて、旧処理を行った処理部601−1は、〈o1, 10, 1〉を、選択部621−2に対して出力する。ここでは、旧処理の結果データ“o1”の次に、新処理の結果データ“n2”を、装置外部へ出力したいとする。図20に、第2サイクル終了時の時系列データ処理装置600の内部の出力情報を示す。   First, in the second cycle, the processing unit 601-1 that has performed the old processing outputs <o1, 10, 1> to the selection unit 621-2. Here, it is assumed that the result data “n2” of the new process is to be output outside the apparatus after the result data “o1” of the old process. FIG. 20 shows output information inside the time-series data processing device 600 at the end of the second cycle.

次に、第3サイクルにおいて、選択部621−2は、到着した結果データ〈o1, 10, 1〉が1つであるため、これを同期部631に対して出力する。また、旧処理を行った処理部601−1は、〈o2, 10, 1〉を、選択部621−2に対して出力する。また、新処理を行った処理部601−2は、〈n2, 10, 2〉を、選択部621−1に対して出力する。図21に、第3サイクルにおける時系列データ処理装置600の内部の出力情報を示す。   Next, in the third cycle, the selection unit 621-2 outputs one result data <o1, 10, 1> that has arrived to the synchronization unit 631. In addition, the processing unit 601-1 that has performed the old process outputs <o2, 10, 1> to the selection unit 621-2. In addition, the processing unit 601-2 that has performed the new process outputs <n2, 10, 2> to the selection unit 621-1. FIG. 21 shows output information inside the time-series data processing device 600 in the third cycle.

次に、第4サイクルにおいて、選択部621−2は、到着した結果データ〈o2, 10, 1〉が1つであるため、これを同期部631に対して出力する。また、選択部621−1は、到着した結果データ〈n2, 10, 2〉を、選択部621−2に対して出力する。また、同期部631は、到着した結果データ〈o1, 10, 1〉と、その処理番号“10”に対応する最新のバージョン番号“1”とを比較し、結果データに付加されたバージョン番号が最新であると判断する。そこで、同期部631は、〈o1, 10, 1〉を出力し、表のバージョン番号はそのままにする。図22に、第4サイクル終了時における時系列データ処理装置600の内部の出力情報を示す。   Next, in the fourth cycle, the selection unit 621-2 outputs one result data <o2, 10, 1> that has arrived to the synchronization unit 631. Further, the selection unit 621-1 outputs the arrived result data <n2, 10, 2> to the selection unit 621-2. Further, the synchronization unit 631 compares the arrived result data <o1, 10, 1> with the latest version number “1” corresponding to the processing number “10”, and the version number added to the result data is Judge that it is the latest. Therefore, the synchronization unit 631 outputs <o1, 10, 1> and leaves the version number in the table as it is. FIG. 22 shows output information inside the time-series data processing device 600 at the end of the fourth cycle.

次に、第5サイクルにおいて、同期部631は、到着した結果データ〈o2, 10, 1〉と、その処理番号“10”に対応する最新のバージョン番号“1”とを比較し、結果データに付加されたバージョン番号が最新であると判断する。そこで、同期部631は、〈o2, 10, 1〉を出力し、表のバージョン番号はそのままにする。   Next, in the fifth cycle, the synchronization unit 631 compares the arrived result data <o2, 10, 1> with the latest version number “1” corresponding to the processing number “10”, and outputs the result data. It is determined that the added version number is the latest. Therefore, the synchronization unit 631 outputs <o2, 10, 1> and leaves the version number in the table as it is.

以上のように、この関連技術の組み合わせに基づく時系列データ処理装置600は、新処理の結果を外部に出力する前に、旧処理の結果を外部に順次出力することができる。しかし、この関連技術の組み合わせでは、旧処理の結果データ“o1”の次に新処理の結果データ“n2”を出力するという目的は達成されない。このように、時系列データ処理装置600において、結果データの出力内容および順序は、新旧の結果データの各処理部601からの出力タイミング、選択部621または同期部631への到達タイミングに依存する。そのため、時系列データ処理装置600は、新旧の結果データを混在させずに出力できるものの、旧処理の結果データの指定したものの次に、新処理の結果データの指定したものを出力することができない。   As described above, the time-series data processing apparatus 600 based on the combination of the related techniques can sequentially output the results of the old processing to the outside before outputting the results of the new processing to the outside. However, with this combination of related technologies, the purpose of outputting the result data “n2” of the new process after the result data “o1” of the old process is not achieved. As described above, in the time-series data processing apparatus 600, the output contents and order of the result data depend on the output timing of the old and new result data from each processing unit 601 and the arrival timing of the selection unit 621 or the synchronization unit 631. Therefore, although the time-series data processing apparatus 600 can output the old and new result data without mixing them, it cannot output the specified result data of the new process next to the specified result data of the old process. .

(関連技術に基づく時系列データ処理装置(その2)の構成)
また、例えば、特許文献5〜6に記載された関連技術の組み合わせにより、旧処理の結果および新処理の結果を識別して出力する方法について説明する。図23に、これらの関連技術の組み合わせにより実現可能な時系列データ処理装置700の構成を示す。時系列データ処理装置700は、処理部701およびネットワーク部731を備える。また、ネットワーク部731は、伝達部732、時刻比較部733、および、遅延部734を有する。
(Configuration of time-series data processing device (part 2) based on related technology)
For example, a method of identifying and outputting the result of the old process and the result of the new process by a combination of related techniques described in Patent Documents 5 to 6 will be described. FIG. 23 shows a configuration of a time-series data processing device 700 that can be realized by a combination of these related technologies. The time-series data processing device 700 includes a processing unit 701 and a network unit 731. The network unit 731 includes a transmission unit 732, a time comparison unit 733, and a delay unit 734.

処理部701は、ユーザ定義処理を行う。ここで、この時系列データ処理装置700には、複数の処理部701が含まれる。旧処理に対応するユーザ定義処理が書き込まれた処理部701は、旧処理を行い、新処理に対応するユーザ定義処理が書き込まれた処理部701は、新処理を行う。また、処理部701は、処理の結果に、処理番号と、ネットワークアドレスと、出力予定時刻とを付加して出力する。処理番号は、処理を一意に識別できる情報である。ネットワークアドレスは、ネットワーク部731の識別情報である。   The processing unit 701 performs user definition processing. Here, the time-series data processing device 700 includes a plurality of processing units 701. The processing unit 701 in which the user-defined process corresponding to the old process is written performs the old process, and the processing unit 701 in which the user-defined process corresponding to the new process is written performs the new process. Further, the processing unit 701 adds the processing number, the network address, and the scheduled output time to the processing result and outputs the result. The process number is information that can uniquely identify the process. The network address is identification information of the network unit 731.

ネットワーク部731は、到着した結果データの出力順序を制御する。ここで、時系列データ処理装置700には、1つ以上のネットワーク部731が含まれる。各ネットワーク部731には、処理部701または他のネットワーク部731から出力されるデータが入力される。また、各ネットワーク部731は、他のネットワーク部731または装置外部の出力ポートに対してデータを出力する。   The network unit 731 controls the output order of the arrived result data. Here, the time-series data processing device 700 includes one or more network units 731. Each network unit 731 receives data output from the processing unit 701 or another network unit 731. Each network unit 731 outputs data to another network unit 731 or an output port outside the apparatus.

遅延部734は、結果データを保持することにより遅延させる。   The delay unit 734 delays by holding the result data.

時刻比較部733は、伝達部732に到着した結果データに付加されているネットワークアドレスが自ノードを指している場合、到着した結果データおよび遅延部734の結果データにそれぞれ付加されている出力予定時刻を比較する。そして、時刻比較部733は、出力予定時刻に達している結果データを選択し、伝達部732に出力させる。また、時刻比較部733は、選択しなかった結果データを、伝達部732から遅延部734に格納させる。   When the network address added to the result data arriving at the transmission unit 732 indicates the own node, the time comparison unit 733 outputs the scheduled output time added to the arrival result data and the result data of the delay unit 734, respectively. Compare Then, the time comparison unit 733 selects the result data that has reached the scheduled output time, and causes the transmission unit 732 to output the result data. In addition, the time comparison unit 733 stores the result data not selected from the transmission unit 732 to the delay unit 734.

伝達部732は、到着した結果データを、時刻比較部733の指示にしたがって、次のネットワーク部731または装置外部の出力ポートに伝達するか、遅延部734に格納させる。   The transmission unit 732 transmits the arrived result data to the next network unit 731 or an output port outside the apparatus according to the instruction of the time comparison unit 733 or stores it in the delay unit 734.

このように構成される時系列データ処理装置700の動作の一例を、図24〜図26を用いて説明する。この動作例では、処理部701−1が旧処理を行い、処理部701−2が新処理を行うものとする。また、処理部701−1からの出力がネットワーク部731−1に入力され、処理部701−2からの出力がネットワーク部731−2に入力されるものとする。また、ネットワーク部731−1からの出力がネットワーク部731−2に入力され、ネットワーク部731−2からの出力が、外部に出力されるものとする。また、ネットワークアドレス“1”は、ネットワーク部731−1を指し、ネットワークアドレス“2”は、ネットワーク部731−2を指すものとする。また、以下では、処理部701から出力されるデータを、〈結果データ、処理番号、ネットワークアドレス、出力予定時刻〉と表記する。また、出力予定時刻は、1サイクルを単位として表されるものとする。   An example of the operation of the time-series data processing apparatus 700 configured as described above will be described with reference to FIGS. In this operation example, it is assumed that the processing unit 701-1 performs an old process and the processing unit 701-2 performs a new process. In addition, it is assumed that the output from the processing unit 701-1 is input to the network unit 731-1 and the output from the processing unit 701-2 is input to the network unit 731-2. Further, it is assumed that the output from the network unit 731-1 is input to the network unit 731-2, and the output from the network unit 731-2 is output to the outside. The network address “1” indicates the network unit 731-1, and the network address “2” indicates the network unit 731-2. Hereinafter, data output from the processing unit 701 is expressed as <result data, process number, network address, scheduled output time>. The scheduled output time is expressed in units of one cycle.

まず、第2サイクルにおいて、旧処理を行った処理部701−1は、結果データ〈o1, 10, 2, 4〉を、ネットワーク部731−1に対して出力する。また、新処理を行った処理部701−2は、〈n2, 10, 2, 5〉を、ネットワーク部731−2に対して出力する。ここでは、旧処理の結果データ“o1”の次に、新処理の結果データ“n2”を、装置外部へ出力したいとする。図24に、第2サイクル終了時における時系列データ処理装置700の内部の出力情報を示す。   First, in the second cycle, the processing unit 701-1 that has performed the old process outputs the result data <o1, 10, 2, 4> to the network unit 731-1. In addition, the processing unit 701-2 that has performed the new process outputs <n2, 10, 2, 5> to the network unit 731-2. Here, it is assumed that the result data “n2” of the new process is to be output outside the apparatus after the result data “o1” of the old process. FIG. 24 shows output information inside the time-series data processing device 700 at the end of the second cycle.

次に、第3サイクルにおいて、時刻比較部733−1は、伝達部732−1に到着した結果データ〈o1, 10, 2, 4〉に付加されているネットワークアドレス“2”が自ノードを示していないので、出力予定時刻を比較せず、そのまま出力するよう伝達部732−1に指示する。そこで、伝達部732−1は〈o1, 10, 2, 4〉を、ネットワーク部731−2に対して出力する。また、時刻比較部733−2は、到着した結果データ〈n2, 10, 2, 5〉に付加されているネットワークアドレス“2”が自ノードを示しているため、現在時刻が出力予定時刻“5”に達しているかどうかを判定する。ここで、現在時刻(第3サイクル)は、出力予定時刻“5”に達していない。そこで、遅延部734−2は、結果データ〈n2, 10, 2, 5〉を格納する。図25に、第3サイクル終了時における時系列データ処理装置700の内部の出力情報を示す。   Next, in the third cycle, the time comparison unit 733-1 indicates that the network address “2” added to the result data <o1, 10, 2, 4> arriving at the transmission unit 732-1 indicates its own node. Therefore, the transmission unit 732-1 is instructed to output the output without comparing the scheduled output times. Therefore, the transmission unit 732-1 outputs <o1, 10, 2, 4> to the network unit 731-2. Also, the time comparison unit 733-2 indicates that the network address “2” added to the arrival result data <n2, 10, 2, 5> indicates the own node, and therefore the current time is the scheduled output time “5”. It is determined whether or not “is reached. Here, the current time (third cycle) has not reached the scheduled output time “5”. Therefore, the delay unit 734-2 stores the result data <n2, 10, 2, 5>. FIG. 25 shows output information inside the time-series data processing device 700 at the end of the third cycle.

次に、第4サイクルにおいて、時刻比較部733−2は、伝達部732−2に到着した結果データ〈o1, 10, 2, 4〉と、遅延部734−2に保持されている結果データ〈n2, 10, 2, 5〉とについて、それぞれ付加されているネットワークアドレス“2”が自ノードを示しているため、出力予定時刻に達しているかどうかを判定する。ここで、現在時刻(第4サイクル)は、出力予定時刻“4”に達している。そこで、時刻比較部733−2は、結果データ〈o1, 10, 2, 4〉を選択し、これを出力するよう伝達部732−2に指示する。そして、伝達部732−2は、結果データ〈o1, 10, 2, 4〉を、装置外部への出力ポートへ出力する。また、伝達部732−2は、選択しなかった結果データ〈n2, 10, 2, 5〉を遅延部734−2に格納させる。図26に、第4サイクル終了時における時系列データ処理装置700の内部の出力情報を示す。   Next, in the fourth cycle, the time comparison unit 733-2 receives the result data <o1, 10, 2, 4> arriving at the transmission unit 732-2 and the result data <o1, 10-2, 44-2> For n2, 10, 2, 5>, since the attached network address “2” indicates the own node, it is determined whether or not the scheduled output time has been reached. Here, the current time (fourth cycle) has reached the scheduled output time “4”. Therefore, the time comparison unit 733-2 selects the result data <o1, 10, 2, 4> and instructs the transmission unit 732-2 to output it. Then, the transmission unit 732-2 outputs the result data <o1, 10, 2, 4> to the output port to the outside of the apparatus. In addition, the transmission unit 732-2 stores the result data <n2, 10, 2, 5> not selected in the delay unit 734-2. FIG. 26 shows output information inside the time-series data processing device 700 at the end of the fourth cycle.

次に、第5サイクルにおいて、時刻比較部733−2は、遅延部734−2に保持されている結果データ〈n2, 10, 2, 5〉について、付加されているネットワークアドレス“2”が自ノードを示しているため、出力予定時刻に達しているかどうか判定する。ここで、現在時刻(第5サイクル)は、出力予定時刻“5”に達している。そこで、時刻比較部733−2は、結果データ〈n2, 10, 2, 5〉を選択し、これを出力するよう伝達部732−2に指示する。そして、伝達部732−2は、結果データ〈n2, 10, 2, 5〉を、装置外部への出力ポートへ出力する。   Next, in the fifth cycle, the time comparison unit 733-2 automatically adds the network address “2” to the result data <n2, 10, 2, 5> held in the delay unit 734-2. Since the node is indicated, it is determined whether or not the scheduled output time has been reached. Here, the current time (fifth cycle) has reached the scheduled output time “5”. Therefore, the time comparison unit 733-2 selects the result data <n2, 10, 2, 5> and instructs the transmission unit 732-2 to output it. Then, the transmission unit 732-2 outputs the result data <n2, 10, 2, 5> to the output port to the outside of the apparatus.

以上のように、この関連技術の組み合わせに基づく時系列データ処理装置700は、旧処理の結果データの指定したもの(この例では“o1”)を外部に出力後、新処理の結果データの指定したもの(この例では“n2”)を外部に出力するという目的を達成する。   As described above, the time-series data processing device 700 based on the combination of the related technologies outputs the specified result data of the old process (“o1” in this example) to the outside, and then specifies the result data of the new process. The purpose of outputting the output ("n2" in this example) to the outside is achieved.

Kyumars Sheykh Esmail et al., Changing Flights in Mid-air: A model for Safely Modifying Continuous Queries, In Proceedings of SIGMOD’11, June 2011Kyumars Sheykh Esmail et al., Changing Flights in Mid-air: A model for Safely Modifying Continuous Queries, In Proceedings of SIGMOD’11, June 2011 Masamichi Takagi, Takashi Takenaka and Hiroaki Inoue: Dynamic query switching for complex event processing on FPGAs, In Proceedings of FPL 2012Masamichi Takagi, Takashi Takenaka and Hiroaki Inoue: Dynamic query switching for complex event processing on FPGAs, In Proceedings of FPL 2012

特表2004−508617号公報Japanese translation of PCT publication No. 2004-508617 特開2002−049747号公報JP 2002-049747 A 特開2001−075908号公報JP 2001-075908 A 特開2005−049102号公報Japanese Patent Laying-Open No. 2005-049102 特表2012−520648号公報Special table 2012-520648 gazette 特表2011−525322号公報Special table 2011-525322 gazette

しかしながら、上述した特許文献1〜6、および、非特許文献1〜2には、以下の課題がある。   However, Patent Documents 1 to 6 and Non-Patent Documents 1 and 2 described above have the following problems.

特許文献1では、デバイスの構成ファイル(所定の回路を構成するための回路情報)の書き換え時に発生する問題には言及されていない。したがって、特許文献1に記載された関連技術は、新処理および旧処理の変更時に、新旧処理の結果を識別することができない。   Patent Document 1 does not mention a problem that occurs when a device configuration file (circuit information for configuring a predetermined circuit) is rewritten. Therefore, the related art described in Patent Document 1 cannot identify the results of the old and new processes when the new process and the old process are changed.

また、特許文献2に記載された関連技術は、前処理の結果に対する所定の判断の結果に基づいて、2種類の処理のうちの1つを適用する。この関連技術において、最終の処理結果が、いずれの処理により出力されたものであるかの区別はされない。このように、この関連技術は、2種類の処理の結果を識別することができない。   The related technique described in Patent Document 2 applies one of two types of processing based on the result of a predetermined determination on the result of preprocessing. In this related technique, it is not distinguished by which process the final processing result is output. Thus, this related technique cannot identify the results of the two types of processing.

また、特許文献3、4に記載された関連技術は、バージョン番号を付加することにより、情報の新旧を識別してより古いバージョン番号の情報を破棄する。そのため、この関連技術は、より古いバージョン番号の情報のうち有用なものをより多く出力することができない。   Further, in the related techniques described in Patent Documents 3 and 4, by adding a version number, information old and new is identified and information of an older version number is discarded. For this reason, this related technique cannot output more useful information of older version number information.

また、特許文献2に記載された関連技術と、特許文献3または特許文献4に記載された関連技術とを組み合わせると、時系列データに対して新処理および旧処理の2種類の処理を行い、その結果データについて、新旧いずれの処理により生成されたものであるかを判別することは可能となる。しかしながら、これらの関連技術を組み合わせても、旧処理による結果データであって有用なものをより多く出力することができない。   In addition, when the related technology described in Patent Document 2 and the related technology described in Patent Document 3 or Patent Document 4 are combined, two types of processing, new processing and old processing, are performed on time-series data, As a result, it is possible to determine whether the data is generated by new or old processing. However, even if these related technologies are combined, it is not possible to output more useful data that is the result data of the old process.

また、図16〜図22を用いて説明したように、特許文献2〜4に記載された関連技術と、非特許文献1〜2に記載された関連技術とを組み合わせると、旧処理および新処理の結果を識別可能となる。その結果、上述したように、これらの関連技術の組み合わせにより、旧処理の結果データおよび新処理の結果データを混在させずに出力することはできる。しかしながら、上述したように、これらの関連技術を組み合わせても、旧処理の結果のうち指定したものを外部に出力後、新処理の結果の指定したものを外部に出力することができない。   Further, as described with reference to FIGS. 16 to 22, when the related technology described in Patent Documents 2 to 4 and the related technology described in Non-Patent Documents 1 to 2 are combined, the old process and the new process are performed. The result can be identified. As a result, as described above, it is possible to output the result data of the old process and the result data of the new process without mixing by combining these related techniques. However, as described above, even if these related techniques are combined, after the specified result of the old process is output to the outside, the specified result of the new process cannot be output to the outside.

また、図23〜図26を用いて説明したように、特許文献5〜6に記載された関連技術を組み合わせると、旧処理の結果データの指定したものを出力後、新処理の結果データの指定したものを出力可能となる。しかしながら、これらの関連技術を組み合わせでは、処理の結果データに対して、出力予定時刻を付加して伝達・記憶する必要がある。そのため、1つの装置内で動作する処理が多くなると、伝達・記憶に必要となる資源が増大するという課題が生じる。例えば、出力予定時刻に64ビットを用いた場合、図24の例では、処理部701−1からネットワーク部731−1へのワイヤ、処理部701−2からネットワーク部731−2へのワイヤ、ネットワーク部731−1からネットワーク部731−2へのワイヤにそれぞれ64ビット分の資源が追加で必要になる。また、遅延部734−1、遅延部734−2には、それぞれ64ビット分の資源が追加で必要になる。   Further, as described with reference to FIGS. 23 to 26, when the related techniques described in Patent Documents 5 to 6 are combined, after specifying the result data of the old process, the result data of the new process is specified. Can be output. However, when these related technologies are combined, it is necessary to add and transmit and store the scheduled output time to the processing result data. Therefore, when the number of processes operating in one device increases, there arises a problem that resources necessary for transmission and storage increase. For example, when 64 bits are used for the scheduled output time, in the example of FIG. 24, a wire from the processing unit 701-1 to the network unit 731-1, a wire from the processing unit 701-2 to the network unit 731-2, a network A 64-bit resource is additionally required for each wire from the unit 731-1 to the network unit 731-2. Further, each of the delay unit 734-1 and the delay unit 734-2 requires an additional 64-bit resource.

本発明は、上述の課題を解決するためになされたもので、時系列データ処理における処理内容の変更に伴い、出力の新旧切り替え前後の結果データを指定可能として、新旧の各処理による結果データの有用なものをより多く出力する技術を提供することを目的とする。上記技術の提供の際、本発明は、処理の結果データに付加する情報量の増大を抑え、新旧の各処理による結果データの出力を混在させることはない。   The present invention has been made to solve the above-described problems.With the change of processing contents in time-series data processing, it is possible to specify the result data before and after switching between the new and old output, and the result data by the old and new processing can be specified. An object is to provide a technique for outputting more useful items. In providing the above technique, the present invention suppresses an increase in the amount of information added to the processing result data, and does not mix the output of the result data by the old and new processing.

本発明の時系列データ処理装置は、選択部と遅延部を備える複数のノードと、入力データに対して第1の処理を実行することにより、第1の処理の結果データを出力する第1の処理部と、入力データに対して第2の処理を実行することにより、第2の処理の結果データを出力する第2の処理部と、前記第1の処理から前記第2の処理への変更指示を外部から受信したとき、前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加するとともに、前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加する制御部と、を備え、前記選択部は、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理部または前記第2の処理部から出力されて自ノードに到着した結果データおよび前記遅延部に保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを前記遅延部に挿入し、前記遅延部は、前記各ノードに含まれ、前記選択部により選択されなかった結果データを保持することにより遅延させる。   The time-series data processing device according to the present invention executes a first process on a plurality of nodes including a selection unit and a delay unit, and input data, thereby outputting a first process result data. A processing unit, a second processing unit that outputs the result data of the second processing by executing the second processing on the input data, and a change from the first processing to the second processing When the instruction is received from the outside, the old process and the result data (the last old process result data) determined to be the last output to the outside of the apparatus among the result data of the first process Additional information including old process information and new process result data and node identification information indicating the node in the device that waits for the new process result data is added as new and old identification information indicating any of the new processes. As well as Information indicating new processing as the new / old identification information with respect to result data (result data of the first new processing) that is first determined to be output to the outside of the apparatus among the result data of the second processing; A control unit for adding additional information including the node identification information, and the selection unit stores selection information representing information for selecting result data to be output from the node, Select one of the result data output from the first processing unit or the second processing unit and arrived at its own node and the result data held in the delay unit and send it to another node or outside At the time of output, the result of the last old process is selected before selecting the result data of the first new process based on the additional information added to each result data and the stored selection information. As well as selecting the data, and inserts the results did not select the data to the delay unit, the delay unit, the included in each node, to delay by holding results data that is not selected by the selection unit.

また、本発明の時系列データ処理方法は、入力データに基づき第1の処理の結果データを出力する第1の処理から、入力データに基づき第2の処理の結果データを出力する第2の処理への変更指示を受信すると、前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加し、前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加し、前記各ノードにおいて、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理または前記第2の処理により出力されて自ノードに到着した結果データおよび保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを遅延させる。   The time-series data processing method according to the present invention includes a second process for outputting the result data of the second process based on the input data from the first process for outputting the result data of the first process based on the input data. When the change instruction is received, the old process and the result data (the result data of the last old process) determined to be output to the outside of the apparatus at the end of the result data of the first process Additional information including old process information and new process result data and node identification information indicating the node in the device that waits for the new process result data is added as new and old identification information indicating any of the new processes. Then, among the result data obtained by the second process, the result data determined to be output first to the outside of the apparatus (result data of the first new process) is used as the new / old identification information. Additional information including processing information and node identification information is added, and each node stores selection information representing information for selecting result data to be output from the own node, and Each result when selecting one of the result data output from the first process or the second process and arriving at the own node and the held result data and outputting it to another node or outside Based on the additional information added to the data and the selection information stored, the result data of the last old process is selected before selecting the result data of the first new process, and the selection is made Delay the result data that you did not do.

また、本発明のコンピュータ読取り可能な記録媒体は、入力データに基づき第1の処理の結果データを出力する第1の処理から、入力データに基づき第2の処理の結果データを出力する第2の処理への変更指示を受信し、前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加し、前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加し、前記各ノードにおいて、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理または前記第2の処理により出力されて自ノードに到着した結果データおよび保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを遅延させる、をコンピュータ装置に実行させるためのプログラムを記録する。   The computer-readable recording medium according to the present invention outputs the second process result data based on the input data from the first process that outputs the result data of the first process based on the input data. An old process is performed on the result data (the last old process result data) that is determined to be output to the outside of the apparatus at the end of the first process result data received from the process change instruction. And additional information including information indicating the old process as the old and new identification information indicating that the process is one of the new process and node identification information indicating the node in the apparatus that waits for the result data of the old process and the result data of the new process. In addition, with respect to the result data (result data of the first new process) that is determined to be output to the outside of the apparatus among the result data by the second process, the new and old identification information And additional information including the node identification information and information representing a new process, and in each node, selection information representing information for selecting result data to be output from the own node is stored, When selecting any one of the result data output from the first process or the second process and arriving at its own node and the result data held and outputting it to another node or outside, Based on the additional information added to each result data and the selection information stored, the result data of the last old process is selected before the result data of the first new process is selected. A program for causing the computer apparatus to execute delay of the result data not selected is recorded.

本発明は、時系列データ処理における処理内容の変更に伴い、出力の新旧切り替え前後の結果データを指定可能として、新旧の各処理による結果データの有用なものをより多く出力する技術を提供することができる。上記技術の提供の際、本発明は、処理の結果データに付加する情報量の増大を抑え、新旧の各処理による結果データの出力を混在させることはない。   The present invention provides a technique for enabling output of more useful results data of old and new processes by enabling specification of result data before and after switching between new and old output in accordance with changes in processing contents in time-series data processing. Can do. In providing the above technique, the present invention suppresses an increase in the amount of information added to the processing result data, and does not mix the output of the result data by the old and new processing.

本発明の第1の実施の形態としての時系列データ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the time series data processing apparatus as the 1st Embodiment of this invention. 本発明の第1の実施の形態としての時系列データ処理装置の制御部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the control part of the time series data processing apparatus as the 1st Embodiment of this invention. 本発明の第1の実施の形態としての時系列データ処理装置の選択部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the selection part of the time series data processing apparatus as the 1st Embodiment of this invention. 本発明の第2の実施の形態としての時系列データ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the time series data processing apparatus as the 2nd Embodiment of this invention. 本発明の第2の実施の形態において処理部から出力される結果データ構造の一例を示す図である。It is a figure which shows an example of the result data structure output from a process part in the 2nd Embodiment of this invention. 本発明の第2の実施の形態としての時系列データ処理装置の制御部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the control part of the time series data processing apparatus as the 2nd Embodiment of this invention. 本発明の第2の実施の形態としての時系列データ処理装置の選択部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the selection part of the time series data processing apparatus as the 2nd Embodiment of this invention. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第2サイクル終了時に各部から出力されるデータを説明する図である。In the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention, it is a figure explaining the data output from each part at the end of a 2nd cycle. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第3サイクル終了時に各部から出力されるデータを説明する図である。In the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention, it is a figure explaining the data output from each part at the time of a 3rd cycle completion | finish. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第4サイクル終了時に各部から出力されるデータを説明する図である。In the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention, it is a figure explaining the data output from each part at the end of a 4th cycle. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第5サイクル終了時に各部から出力されるデータを説明する図である。It is a figure explaining the data output from each part at the time of completion | finish of a 5th cycle in the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第6サイクル終了時に各部から出力されるデータを説明する図である。In the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention, it is a figure explaining the data output from each part at the time of a 6th cycle completion | finish. 本発明の第2の実施の形態としての時系列データ処理装置の動作の具体例において、第7サイクル終了時に各部から出力されるデータを説明する図である。In the specific example of operation | movement of the time series data processing apparatus as the 2nd Embodiment of this invention, it is a figure explaining the data output from each part at the time of a 7th cycle completion | finish. 本発明の第2の実施の形態としての時系列データ処理装置の実現のために必要な追加資源の一例を説明する図である。It is a figure explaining an example of the additional resource required in order to implement | achieve the time series data processing apparatus as the 2nd Embodiment of this invention. 関連技術の時系列データ処理装置の旧処理および新処理によって出力される結果データの時間遷移図である。It is a time transition diagram of the result data output by the old process and new process of the time series data processing apparatus of related technology. 関連技術の組み合わせにより実現可能な時系列データ処理装置の一例の構成を示すブロック図である。It is a block diagram which shows the structure of an example of the time series data processing apparatus realizable by the combination of a related technique. 図16に示した関連技術の時系列データ処理装置の動作の一例において、第2サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram for describing data output from each unit at the end of the second cycle in an example of the operation of the time-series data processing device of the related technology illustrated in FIG. 16. 図16に示した関連技術の時系列データ処理装置の動作の一例において、第3サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram for describing data output from each unit at the end of the third cycle in an example of the operation of the time-series data processing device of the related technology illustrated in FIG. 16. 図16に示した関連技術の時系列データ処理装置の動作の一例において、第4サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram illustrating data output from each unit at the end of the fourth cycle in an example of the operation of the related-art time-series data processing device illustrated in FIG. 16. 図16に示した関連技術の時系列データ処理装置の動作の他の例において、第2サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram for describing data output from each unit at the end of the second cycle in another example of the operation of the time-series data processing device of the related technique illustrated in FIG. 16. 図16に示した関連技術の時系列データ処理装置の動作の他の例において、第3サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram illustrating data output from each unit at the end of the third cycle in another example of the operation of the time-series data processing device of the related technology illustrated in FIG. 16. 図16に示した関連技術の時系列データ処理装置の動作の他の例において、第4サイクル終了時に各部から出力されるデータを説明する図である。FIG. 17 is a diagram illustrating data output from each unit at the end of the fourth cycle in another example of the operation of the time-series data processing device of the related technology illustrated in FIG. 16. 関連技術の組み合わせにより実現可能な他の時系列データ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the other time series data processing apparatus realizable by the combination of a related technique. 図23に示した関連技術の時系列データ処理装置の動作の一例において、第2サイクル終了時に各部から出力されるデータを説明する図である。FIG. 24 is a diagram illustrating data output from each unit at the end of the second cycle in an example of the operation of the time-series data processing device of the related technology illustrated in FIG. 23. 図23に示した関連技術の時系列データ処理装置の動作の一例において、第3サイクル終了時に各部から出力されるデータを説明する図である。FIG. 24 is a diagram for describing data output from each unit at the end of the third cycle in an example of the operation of the time-series data processing device of the related technology illustrated in FIG. 23. 図23に示した関連技術の時系列データ処理装置の動作の一例において、第4サイクル終了時に各部から出力されるデータを説明する図である。FIG. 24 is a diagram illustrating data output from each unit at the end of the fourth cycle in an example of the operation of the time-series data processing device of the related technology illustrated in FIG. 23.

以下、本発明の実施の形態について、図面を参照して詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

(第1の実施の形態)
本発明の第1の実施の形態としての時系列データ処理装置100は、複数の領域においてそれぞれ異なるユーザ定義処理を実行することが可能な装置である。時系列データ処理装置100は、実行時に、あるユーザ定義処理を、他のユーザ定義処理に変更可能に構成される。以下、ユーザ定義処理を、単に「処理」とも記載する。また、変更前の処理を「旧処理」とも記載し、変更後の処理を「新処理」とも記載するものとする。
(First embodiment)
The time-series data processing apparatus 100 as the first embodiment of the present invention is an apparatus capable of executing different user-defined processes in a plurality of areas. The time-series data processing device 100 is configured to be able to change a user-defined process to another user-defined process at the time of execution. Hereinafter, the user-defined process is also simply referred to as “process”. The process before the change is also referred to as “old process”, and the process after the change is also referred to as “new process”.

例えば、時系列データ処理装置100は、複数の領域を有するICチップによって構成可能である。このようなICチップの例としては、FPGA(Field Programmable Gate Array)が挙げられる。このようなICチップは、ある領域において旧処理を動作させたまま、新処理を実行するための回路情報を、旧処理が動作する領域とは別の領域に書き込んでその動作を開始させることが可能である。そして、このようなICチップは、その後、旧処理を実行する回路情報を該当する領域から削除することにより、旧処理を停止させることが可能である。このようにして、このようなICチップは、結果が出力されない期間を短縮しながら処理の変更を実現可能となっている。   For example, the time-series data processing device 100 can be configured by an IC chip having a plurality of areas. An example of such an IC chip is an FPGA (Field Programmable Gate Array). Such an IC chip can start the operation by writing circuit information for executing the new process in a region other than the region where the old process operates while the old process is operated in a certain region. Is possible. Such an IC chip can then stop the old process by deleting circuit information for executing the old process from the corresponding area. In this way, such an IC chip can realize a process change while shortening a period during which no result is output.

図1は、時系列データ処理装置100の構成を示すブロック図である。図1において、時系列データ処理装置100は、複数の処理部101と、1つ以上のネットワーク部111と、制御部121とを備える。また、ネットワーク部111は、伝達部112と、選択部113と、遅延部114とを有する。なお、ネットワーク部111は、本発明におけるノードの一実施形態を構成する。また、伝達部112は、選択部113とともに、本発明における選択部の一実施形態を構成する。   FIG. 1 is a block diagram showing the configuration of the time-series data processing device 100. In FIG. 1, the time-series data processing apparatus 100 includes a plurality of processing units 101, one or more network units 111, and a control unit 121. The network unit 111 includes a transmission unit 112, a selection unit 113, and a delay unit 114. The network unit 111 constitutes an embodiment of a node in the present invention. Moreover, the transmission part 112 comprises one Embodiment of the selection part in this invention with the selection part 113. FIG.

図1において、各処理部101には、外部より時系列データが入力される。また、各処理部101から出力されるデータは、いずれかのネットワーク部111に入力される。また、各ネットワーク部111には、処理部101または他のネットワーク部111から出力されるデータが入力される。また、各ネットワーク部111から出力されるデータは、他のネットワーク部111に入力されるか、装置外部に出力される。このように、時系列データ処理装置100は、各処理部101により出力される結果データを、1つ以上のネットワーク部111から構成されるネットワークで1つに束ねたのち、装置外部に出力する構成となっている。なお、図1には、2つの処理部101と、1つのネットワーク部111と、1つの制御部121とを示しているが、本発明の時系列データ処理装置が備える各部の数を限定するものではない。   In FIG. 1, time series data is input to each processing unit 101 from the outside. Data output from each processing unit 101 is input to one of the network units 111. Each network unit 111 receives data output from the processing unit 101 or another network unit 111. Further, data output from each network unit 111 is input to another network unit 111 or output outside the apparatus. As described above, the time-series data processing device 100 is configured to bundle the result data output from each processing unit 101 into one by a network including one or more network units 111 and then output the result data to the outside of the device. It has become. In FIG. 1, two processing units 101, one network unit 111, and one control unit 121 are shown. However, the number of units included in the time-series data processing device of the present invention is limited. is not.

処理部101は、入力される時系列データに対して、定義された処理を実行することにより結果データを生成して出力する。例えば、ある処理部101には、旧処理を実行する回路情報が書き込まれ、他の処理部101には、新処理を実行する回路情報が書き込まれていてもよい。なお、旧処理を実行する処理部101は、本発明における第1の処理部の一実施形態を構成する。また、新処理を実行する処理部101は、本発明における第2の処理部の一実施形態を構成する。   The processing unit 101 generates and outputs result data by executing a defined process on the input time-series data. For example, circuit information for executing an old process may be written in a certain processing unit 101, and circuit information for executing a new process may be written in another processing unit 101. In addition, the process part 101 which performs an old process comprises one Embodiment of the 1st process part in this invention. The processing unit 101 that executes the new processing constitutes an embodiment of the second processing unit in the present invention.

制御部121は、外部から、処理の変更指示を表す情報を受信する。この変更指示を表す情報には、旧処理を実行中の処理部101を特定する情報と、新処理が書き込まれる処理部101を特定する情報とが含まれていてもよい。   The control unit 121 receives information representing a process change instruction from the outside. The information indicating the change instruction may include information for specifying the processing unit 101 that is executing the old process and information for specifying the processing unit 101 in which the new process is written.

また、制御部121は、最後の旧処理の結果データに対して、旧処理を表す新旧識別情報と、ノード識別情報とを含む付加情報を付加する。最後の旧処理の結果データとは、旧処理を実行する処理部101から出力される結果データのうち最後に装置外部へ出力されるものであると判定した結果データをいう。例えば、制御部121は、旧処理を実行する処理部101が停止可能な状況になったときに出力される結果データを、最後の旧処理の結果データであると判定してもよい。停止可能な状況とは、旧処理を実行する処理部101の一連の処理が完了した状況であってもよい。   In addition, the control unit 121 adds additional information including new / old identification information representing the old process and node identification information to the result data of the last old process. The result data of the last old process refers to the result data determined to be the last output data out of the apparatus among the result data output from the processing unit 101 that executes the old process. For example, the control unit 121 may determine that the result data output when the processing unit 101 that executes the old process can be stopped is the result data of the last old process. The stoppable situation may be a situation in which a series of processes of the processing unit 101 that executes the old process is completed.

また、制御部121は、最初の新処理の結果データに対して、新処理を表す新旧識別情報と、ノード識別情報とを含む付加情報を付加する。最初の新処理の結果データとは、新処理を実行する処理部101から出力される結果データのうち最初に装置外部へ出力されるものとして判定した結果データをいう。例えば、制御部121は、新処理を実行する処理部101の起動後所定サイクル後に出力される結果データを、最初の新処理の結果データであると判定してもよい。   Further, the control unit 121 adds additional information including new / old identification information representing the new process and node identification information to the result data of the first new process. The result data of the first new process refers to the result data determined to be output to the outside of the apparatus first among the result data output from the processing unit 101 that executes the new process. For example, the control unit 121 may determine that the result data output after a predetermined cycle after the activation of the processing unit 101 that executes the new process is the result data of the first new process.

新旧識別情報は、旧処理および新処理を識別可能な情報である。つまり、新旧識別情報は、その結果データを出力した処理が、時系列データ処理装置100内で進行する処理変更の対象であり、旧処理および新処理のいずれかであることを表している。   The old and new identification information is information that can identify the old process and the new process. That is, the new / old identification information indicates that the process of outputting the result data is a process change target that progresses in the time-series data processing apparatus 100 and is either the old process or the new process.

ノード識別情報は、新処理の結果データおよび旧処理の結果データを待ち合わせるネットワーク部111を識別する情報である。前述のように、時系列データ処理装置100は、複数の各処理部101により出力される結果データを、1つ以上のネットワーク部111から構成されるネットワークで1つに束ねたのち、装置外部に出力する。そこで、制御部121は、最後の旧処理の結果データおよび最初の旧処理の結果データに対してそれぞれ付加する共通のノード識別情報として、双方の結果データが通過する共通のネットワーク部111の場所を計算すればよい。なお、ノード識別情報は、待ち合わせが不要であることを表す場合もある。   The node identification information is information for identifying the network unit 111 that waits for the result data of the new process and the result data of the old process. As described above, the time-series data processing device 100 bundles the result data output from each of the plurality of processing units 101 into one by a network composed of one or more network units 111, and then externally stores the result data. Output. Therefore, the control unit 121 sets the location of the common network unit 111 through which both result data passes as common node identification information added to the result data of the last old process and the result data of the first old process. Calculate it. Note that the node identification information may indicate that no waiting is required.

また、制御部121は、最初の新処理の結果データが出力された後、新旧処理の変更が完了する直前までに新処理の処理部101から出力される新処理の結果データに対して、新処理を表す新旧識別情報、および、待ち合わせ不要を表すノード識別情報を付加する。なお、新旧処理の変更が完了するとは、装置内に、最初の新処理の結果データ(新処理を示す新旧識別情報および待ち合わせノードを示すノード情報を含む付加情報が付加された結果データ)が存在しなくなる(装置外に出力される)ことをいう。   In addition, after the first new process result data is output, the control unit 121 performs a new process on the new process result data output from the new process unit 101 immediately before the change of the new and old processes is completed. New and old identification information indicating processing and node identification information indicating that no waiting is required are added. When the change between the new and old processes is completed, the result data of the first new process (result data to which additional information including new and old identification information indicating the new process and node information indicating the meeting node is added) exists in the device. It means that it will not (output outside the device).

以降、付加情報が付加された結果データを、単に「結果データ」と記載する場合もある。また、時系列データ処理装置100内において、結果データは、付加されている付加情報とともに、各部によって入出力または保持されるものとする。   Hereinafter, the result data to which the additional information is added may be simply referred to as “result data”. In the time-series data processing apparatus 100, the result data is input / output or held by each unit together with the additional information added.

選択部113は、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶しておく。ここで、自ノードとは、その選択部113が含まれるネットワーク部111をさす。例えば、選択部113は、選択情報として、最後の旧処理の結果データが自ノードを通過済であるか否かを示す情報を記憶してもよい。この場合、選択部113は、処理変更の開始前に、選択情報を、通過済でないことを表すよう初期化する。   The selection unit 113 stores selection information representing information for selecting result data to be output from the own node. Here, the local node refers to the network unit 111 including the selection unit 113. For example, the selection unit 113 may store information indicating whether or not the result data of the last old process has passed through its own node as selection information. In this case, the selection unit 113 initializes the selection information to indicate that it has not been passed before starting the process change.

また、選択部113は、各処理部101により出力されて自ノードに到着した結果データおよび遅延部114に保持されている結果データのうちいずれか1つを選択して他ノードまたは外部に出力する。このとき、選択部113は、各結果データに付加された付加情報と、記憶している選択情報とを参照することにより、最初の新処理の結果データを選択するより前に、最後の旧処理の結果データを選択する。つまり、選択部113は、最後の旧処理の結果データを選択する前に、最初の新処理の結果データを選択しないようにする。   The selection unit 113 selects one of the result data output from each processing unit 101 and arrives at its own node and the result data held in the delay unit 114 and outputs the selected result data to another node or the outside. . At this time, the selection unit 113 refers to the additional information added to each result data and the stored selection information, thereby selecting the last old process before selecting the result data of the first new process. Select the result data. That is, the selection unit 113 does not select the result data of the first new process before selecting the result data of the last old process.

詳細には、選択部113は、結果データに付加されているノード識別情報が自ノードを示し、かつ、新旧識別情報が新処理を表すとき、選択情報が通過済を示していない場合には、この結果データを選択しないことを決定する。   Specifically, when the node identification information added to the result data indicates the own node and the new and old identification information indicates a new process, the selection unit 113 does not indicate that the selection information has passed. It is decided not to select the result data.

また、選択部113は、結果データに付加されているノード識別情報が待ち合わせ不要を示し、かつ、新旧識別情報が新処理を表し、かつ、遅延部114に最初の新処理の結果データが格納されている場合、この結果データを選択しないことを決定する。なお、選択部113は、遅延部114に格納されている結果データに付加されている新旧識別情報が新処理を表し、ノード識別情報が自ノードを示していれば、最初の新処理の結果データが遅延部114に格納されていると判断できる。   Further, the selection unit 113 indicates that the node identification information added to the result data indicates that no waiting is required, the new / old identification information represents a new process, and the delay unit 114 stores the result data of the first new process. If so, it is decided not to select this result data. Note that if the new and old identification information added to the result data stored in the delay unit 114 indicates a new process and the node identification information indicates the own node, the selection unit 113 results data of the first new process. Can be determined to be stored in the delay unit 114.

また、選択部113は、それ以外の結果データについては、同じ処理部101から出力された結果の出力順序が入れ替わらないように、かつ、何らかの優先度に基づいてそのうち1つを選択する。ここで、「それ以外の結果データ」には、選択情報が通過済を示している場合に、ノード識別情報が自ノードを示しかつ新旧識別情報が新処理を示している結果データが含まれる。また、「それ以外の結果データ」には、遅延部114に新処理の結果データが格納されていない場合に、ノード識別情報が待ち合わせ不要を示しかつ新旧識別情報が新処理を示している結果データが含まれる。また、「それ以外の結果データ」には、付加されているノード識別情報が自ノードを示していないか、または、新旧識別情報が旧処理を示している結果データが含まれる。また、何らかの優先度とは、処理の種類毎に設定された優先順位や、ラウンドロビンであってもよい。   Further, the selection unit 113 selects one of the other result data so that the output order of the results output from the same processing unit 101 is not changed and based on some priority. Here, “result data other than that” includes result data in which the node identification information indicates the own node and the old and new identification information indicates the new process when the selection information indicates passed. In the “other result data”, when the result data of the new process is not stored in the delay unit 114, the result data in which the node identification information indicates that no waiting is required and the old and new identification information indicates the new process Is included. In addition, “other result data” includes result data in which the added node identification information does not indicate the own node, or in which the old and new identification information indicates the old process. Further, the certain priority may be a priority set for each type of processing or round robin.

また、選択部113は、選択した結果データに付加されているノード識別情報が自ノードを示し、かつ、新旧識別情報が旧処理を表すとき、選択情報が通過済を示すよう更新する。   In addition, when the node identification information added to the selected result data indicates the own node, and the new and old identification information indicates the old process, the selection unit 113 updates the selection information to indicate that it has passed.

また、選択部113は、選択した結果データを、伝達部112を介して、次のネットワーク部111または装置外部に出力する。また、選択部113は、選択しなかった結果データを、伝達部112から遅延部114に挿入させる。   The selection unit 113 outputs the selected result data to the next network unit 111 or the outside of the apparatus via the transmission unit 112. In addition, the selection unit 113 causes the transmission unit 112 to insert the result data that has not been selected into the delay unit 114.

伝達部112は、選択部113の制御の基に、入力された結果データあるいは遅延部114に格納されている結果データを、次のネットワーク部111あるいは装置外部への出力ポートへ伝達する。なお、伝達部112は、結果データとともに、付加されている付加情報も出力する。   The transmission unit 112 transmits the input result data or the result data stored in the delay unit 114 to the next network unit 111 or an output port to the outside of the apparatus under the control of the selection unit 113. In addition, the transmission part 112 outputs the additional information added with the result data.

遅延部114は、選択部113の制御の基に、結果データを保持することにより遅延させる。また、遅延部114は、複数の結果データを保持可能となっていてもよい。その場合、遅延部114は、旧処理の処理部101からの結果データが、新処理の処理部101からの結果データより先に取り出される位置につくよう格納する。また、遅延部114は、同一の処理部101からの結果データについては、到着した順に取り出されるよう格納する。例えば、遅延部114は、キュー構造であってもよい。   The delay unit 114 delays by holding the result data under the control of the selection unit 113. The delay unit 114 may be capable of holding a plurality of result data. In that case, the delay unit 114 stores the result data from the processing unit 101 of the old process so that the result data is extracted before the result data from the processing unit 101 of the new process. Further, the delay unit 114 stores result data from the same processing unit 101 so as to be extracted in the order of arrival. For example, the delay unit 114 may have a queue structure.

以上のように構成された時系列データ処理装置100の動作について、図2および図3を参照して説明する。   The operation of the time-series data processing apparatus 100 configured as described above will be described with reference to FIGS.

なお、以下の説明において、所定の動作を完了させるために要する単位時間を規定するクロックの周期を、「1サイクル」という。また、時系列データ処理装置100は、複数の領域(パーティション)を有するICチップによって構成されるものとする。また、各パーティションには、構成データ、コンフィギュレーションデータと呼ばれる設定情報が設定されることにより、ユーザ定義処理を実行する回路が作成されるものとする。   In the following description, a clock cycle that defines a unit time required to complete a predetermined operation is referred to as “one cycle”. The time-series data processing device 100 is assumed to be constituted by an IC chip having a plurality of areas (partitions). In each partition, setting information called configuration data and configuration data is set to create a circuit for executing user-defined processing.

また、以下では、「指示する」とは、装置内の任意の部分が、他の部分に接続されている配線の信号を操作すること、または、他の部分に存在する記憶装置に指示内容を表す値を書き込むこと等を意味する。また、「設定する」、「記憶する」とは、装置内の任意の部分が、他の部分に存在する記憶装置に値を書き込むことを意味する。また、「送る」、「送信する」とは、装置内の任意の部分が、他の部分に接続されている配線の信号を操作すること、または、他の部分に存在する記憶装置に値を書き込むことを意味する。また、「受け取る」、「受信する」とは、装置内の任意の部分が、他の部分によって情報を送信される対象となることを意味する。   In the following, “instruct” means that an arbitrary part in the apparatus operates a signal of a wiring connected to another part, or an instruction content is given to a storage device existing in another part. This means writing a value to be represented. “Set” and “store” mean that an arbitrary part in the device writes a value in a storage device existing in another part. In addition, “send” and “send” means that any part in the device operates a signal of a wiring connected to another part, or a value is stored in a storage device existing in another part. Means to write. Further, “receive” and “receive” mean that any part in the apparatus is a target to which information is transmitted by another part.

また、時系列データ処理装置100は、旧処理から新処理への処理の変更指示を外部から受信すると、以下の動作を開始するものとする。なお、時系列データ処理装置100は、このような変更指示を、外部に接続されたホストコンピュータ等から受信してもよい。また、変更指示対象の新処理に関するユーザ定義情報は、旧処理を実行中の処理部101とは異なるパーティションによって構成される任意の処理部101に書き込まれるものとする。   In addition, the time-series data processing device 100 starts the following operation when receiving an instruction to change the process from the old process to the new process from the outside. Note that the time-series data processing apparatus 100 may receive such a change instruction from a host computer or the like connected to the outside. In addition, it is assumed that user-defined information related to the new process to be changed is written to an arbitrary processing unit 101 configured by a partition different from the processing unit 101 that is executing the old process.

まず、制御部121による動作を図2に示す。   First, the operation by the control unit 121 is shown in FIG.

図2において、まず、制御部121は、旧処理の処理部101により出力される最後の旧処理の結果データに対して、旧処理を表す新旧識別情報、および、待ち合わせのノードを示すノード識別情報を付加する(S1)。なお、これより後のタイミングでは、制御部121は、旧処理の処理部101に対して、結果データを出力しないよう指示する情報を送信し続ける。   In FIG. 2, first, the control unit 121, for the result data of the last old process output by the processing unit 101 of the old process, the new / old identification information indicating the old process and the node identification information indicating the waiting node. Is added (S1). Note that at a later timing, the control unit 121 continues to transmit information that instructs the old processing unit 101 not to output the result data.

次に、制御部121は、新処理の処理部101により出力される最初の新処理の結果データに対して、新処理を表す新旧識別情報、および、待ち合わせのノードを示すノード識別情報を付加する(S2)。なお、これより以前のタイミングでは、制御部121は、新処理の処理部101に対して、結果データを出力しないよう指示する情報を送信し続ける。また、制御部121は、最初の新処理の結果データが出力された後、新旧処理の変更が完了する直前までの間に、新処理の処理部101により出力される結果データに対して、新処理を表す新旧識別情報、および、待ち合わせ不要を表すノード識別情報を付加する。   Next, the control unit 121 adds new / old identification information indicating the new process and node identification information indicating the waiting node to the result data of the first new process output by the processing unit 101 of the new process. (S2). Note that at a timing earlier than this, the control unit 121 continues to transmit information instructing not to output result data to the processing unit 101 of the new process. Further, the control unit 121 outputs new data to the result data output by the processing unit 101 of the new process immediately after the result data of the first new process is output and immediately before the change of the new and old processes is completed. New and old identification information indicating processing and node identification information indicating that no waiting is required are added.

そして、制御部121は、図2のS1とS2の動作を繰り返す。   And the control part 121 repeats operation | movement of S1 and S2 of FIG.

以上で、制御部121の動作の説明を終了する。   Above, description of operation | movement of the control part 121 is complete | finished.

次に、ネットワーク部111の動作を図3に示す。   Next, the operation of the network unit 111 is shown in FIG.

図3において、まず、選択部113は、選択情報として、通過済でないことを表す情報に初期化する(S11)。   In FIG. 3, first, the selection unit 113 initializes selection information to information indicating that it has not been passed (S11).

次に、選択部113は、自ノードの伝達部112に到着した結果データと、遅延部114に格納されている結果データの最も古いものとの間で、出力ポートの使用権の調停を行う(S12)。なお、「出力ポートの使用権の調停」とは、具体的には、出力ポートを使用できるデータを1つ選択する処理を意味する。この調停においてデータが選択されたことを、「調停で選択された」あるいは「データがポートを獲得した」とも記載する。遅延部114がキュー構造である場合、「最も古いもの」とは、キューで最初に取り出されるエントリのことである。   Next, the selection unit 113 arbitrates the right to use the output port between the result data arriving at the transmission unit 112 of its own node and the oldest result data stored in the delay unit 114 ( S12). Note that “arbitration of the right to use an output port” specifically means a process of selecting one piece of data that can use an output port. The fact that data has been selected in this arbitration is also referred to as “selected by arbitration” or “data acquired a port”. When the delay unit 114 has a queue structure, the “oldest” is an entry that is first taken out from the queue.

図3のS12では、具体的には、選択部113は、選択情報が通過済を示していない場合、付加されているノード識別情報が自ノードを示し、かつ、新旧識別情報が新処理を示している結果データについては、これを選択しないことを決定する。また、選択部113は、付加されているノード識別情報が待ち合わせ不要を示し、かつ、新旧識別情報が新処理を表し、かつ、遅延部114に最初の新処理の結果データが格納されている場合、この結果データを選択しないことを決定する。また、選択部113は、それ以外の結果データについては、同じ処理部101から出力された結果の出力順序が入れ替わらないように、かつ、何らかの優先度に基づいてそのうち1つを選択する。前述のように、「それ以外の結果データ」には、選択情報が通過済を示している場合に、ノード識別情報が自ノードを示しかつ新旧識別情報が新処理を示している結果データが含まれる。また、「それ以外の結果データ」には、遅延部114に新処理の結果データが格納されていない場合に、ノード識別情報が待ち合わせ不要を示しかつ新旧識別情報が新処理を示している結果データが含まれる。また、「それ以外の結果データ」には、付加されているノード識別情報が自ノードを示していないか、または、新旧識別情報が旧処理を示している結果データが含まれる。また、何らかの優先度とは、処理の種類毎に設定された優先順位や、ラウンドロビンであってもよい。   Specifically, in S12 of FIG. 3, when the selection information does not indicate that the selection has been completed, the selection unit 113 indicates that the added node identification information indicates the own node, and the old and new identification information indicates the new process. It is decided not to select the result data. In addition, the selection unit 113 indicates that the added node identification information indicates that no waiting is required, the new / old identification information indicates a new process, and the delay unit 114 stores the result data of the first new process. , Decide not to select this result data. Further, the selection unit 113 selects one of the other result data so that the output order of the results output from the same processing unit 101 is not changed and based on some priority. As described above, “result data other than that” includes result data in which the node identification information indicates the own node and the old and new identification information indicates the new process when the selection information indicates passed. It is. In the “other result data”, when the result data of the new process is not stored in the delay unit 114, the result data in which the node identification information indicates that no waiting is required and the old and new identification information indicates the new process Is included. In addition, “other result data” includes result data in which the added node identification information does not indicate the own node, or in which the old and new identification information indicates the old process. Further, the certain priority may be a priority set for each type of processing or round robin.

次に、選択部113は、調停で選択された結果データについて、ノード識別情報が自ノードを示しており、かつ、新旧識別情報が旧処理を示している場合、選択情報を、通過済を示すよう更新する(S13)。   Next, regarding the result data selected by the arbitration, the selection unit 113 indicates that the selection information has passed if the node identification information indicates the own node and the new and old identification information indicates the old process. Update (S13).

次に、選択部113は、調停で選択された結果データを、付加された情報とともに、次のネットワーク部111あるいは装置外部への出力ポートへ出力する(S14)。   Next, the selection unit 113 outputs the result data selected by the arbitration together with the added information to the next network unit 111 or an output port to the outside of the apparatus (S14).

次に、選択部113は、調停で選択されなかった結果データを、遅延部114に挿入する(S15)。このとき、選択部113は、旧処理の処理部101からの結果データが新処理の処理部101からの結果データより古い位置につくよう遅延部114に挿入する。この場合「より古い位置」とは、選択部113によって先に取りだされる位置のことである。また、選択部113は、それ以外の結果データについては、到着した順序で取り出される位置につくよう遅延部114に挿入する。   Next, the selection unit 113 inserts the result data not selected in the arbitration into the delay unit 114 (S15). At this time, the selection unit 113 inserts the result data from the old processing unit 101 into the delay unit 114 so that the result data is older than the result data from the new processing unit 101. In this case, the “older position” is a position taken out first by the selection unit 113. Further, the selection unit 113 inserts the other result data into the delay unit 114 so as to arrive at a position where the result data is extracted in the order of arrival.

そして、選択部113は、図3のS12からS15までの動作を繰り返す。   Then, the selection unit 113 repeats the operations from S12 to S15 in FIG.

以上で、ネットワーク部111の動作の説明を終了する。   Above, description of operation | movement of the network part 111 is complete | finished.

このように、時系列データ処理装置100は、処理の変更指示を受信後、出力する結果データを直ちに新処理によるものに変更するのではないことに留意されたい。例えば、時系列データ処理装置100は、処理の変更指示を受信後も、旧処理が停止可能な状態に至るまでは、旧処理の結果データの出力を継続する。例えば、旧処理が進行中の場合、旧処理は停止可能な状態ではない。また、旧処理による一連のデータが順次出力中である場合、旧処理は停止可能な状態ではない。そして、旧処理が停止可能な状態に至ると、時系列データ処理装置100は、最後の旧処理の結果データを出力した後、最初の新処理の結果データから始まる結果データ列を出力することになる。   As described above, it should be noted that the time-series data processing apparatus 100 does not immediately change the output result data to the new process after receiving the process change instruction. For example, the time-series data processing device 100 continues outputting the result data of the old process until the old process can be stopped even after receiving the process change instruction. For example, when the old process is in progress, the old process is not in a state where it can be stopped. Further, when a series of data by the old process is being output sequentially, the old process is not in a state where it can be stopped. When the old process can be stopped, the time-series data processing apparatus 100 outputs the result data string starting from the result data of the first new process after outputting the result data of the last old process. Become.

次に、本発明の第1の実施の形態の効果について述べる。   Next, effects of the first exemplary embodiment of the present invention will be described.

本発明の第1の実施の形態としての時系列データ処理装置は、時系列データ処理における処理内容の変更に伴い、出力の新旧切り替え前後の結果データを指定可能として、新旧の各処理による結果データの有用なものをより多く出力する。その際、時系列データ処理装置は、処理の結果データに付加する情報量の増大を抑えながら、新旧の各処理による結果データの出力を混在させることはない。   The time-series data processing apparatus according to the first embodiment of the present invention can specify result data before and after switching between old and new output according to a change in processing contents in time-series data processing, and result data by each process of old and new Output more useful stuff. At that time, the time-series data processing apparatus does not mix the output of the result data by the old and new processes while suppressing an increase in the amount of information added to the process result data.

その理由は、制御部が、最後の旧処理の結果データに、旧処理を表す新旧識別情報と、新処理の結果データとの待ち合わせ場所を示すノード識別情報とを含む付加情報を付加する。さらに制御部が、最初の新処理の結果データに、新処理を表す新旧識別情報と、旧処理の結果データとの待ち合わせ場所を示すノード識別情報とを含む付加情報を付加するからである。そして、選択部が、自ノードから出力する結果データを選択するための選択情報を記憶する。さらに選択部が、到着した結果データまたは遅延部に格納されている結果データのうちいずれかを選択する際に、各結果データに付加されている付加情報と、記憶している選択情報とに基づいて、最初の新処理の結果データを選択する前に、最後の旧処理の結果データを選択するからである。   The reason is that the control unit adds additional information including new / old identification information indicating the old process and node identification information indicating a meeting place of the new process result data to the result data of the last old process. Furthermore, the control unit adds additional information including new / old identification information indicating the new process and node identification information indicating a meeting place of the result data of the old process to the result data of the first new process. Then, the selection unit stores selection information for selecting result data output from the node. Further, when the selection unit selects either the arrived result data or the result data stored in the delay unit, the selection unit is based on the additional information added to each result data and the stored selection information. This is because the last old process result data is selected before the first new process result data is selected.

具体的には、例えば、選択部が、最後の旧処理の結果データが通過済であるか否かを表す選択情報として、通過済でないことを記憶する。そして選択部が、到着した結果データまたは遅延部に格納されている結果データのうち、付加されているノード識別情報が自ノードを示し、かつ、新旧識別情報が新処理を示すものについて、選択情報が通過済を示していなければこれを選択しないからである。また、選択部が、それ以外の結果データのうち、何らかの優先度にしたがって1つを選択し、選択した結果データに付加されているノード識別情報が自ノードを示し、かつ、新旧識別情報が旧処理を示す場合には、選択情報を、通過済を示すよう更新するからである。そして、選択部が、選択した結果データを伝達部から次のネットワーク部または外部に出力し、選択しなかった結果データを、遅延部に挿入するからである。   Specifically, for example, the selection unit stores that the result data of the last old process has not been passed as selection information indicating whether or not the result data has been passed. Then, the selection unit selects selection information for the arrival result data or the result data stored in the delay unit, for which the added node identification information indicates the own node and the old and new identification information indicates the new process. This is because this is not selected unless the mark indicates that it has passed. In addition, the selection unit selects one of the other result data according to some priority, the node identification information added to the selected result data indicates the own node, and the old and new identification information is old. This is because when the process is indicated, the selection information is updated so as to indicate passing. This is because the selection unit outputs the selected result data from the transmission unit to the next network unit or the outside, and inserts the unselected result data into the delay unit.

これにより、本実施の形態は、処理変更指示後、指定された最後の旧処理の結果データを外部に出力後に、指定された最初の新処理の結果データを先頭とする新処理の結果列を装置外部へ出力することができる。すなわち、本実施の形態は、処理の変更の前後において、旧処理の結果データおよび新処理の結果データを混在させて装置外部に出力することがない。また、本実施の形態は、処理変更指示に伴い新処理が動作を開始した後も、旧処理が停止可能な状態となるまで、より多くの有用で利用可能な旧処理の結果データを出力することになる。   As a result, in the present embodiment, after the process change instruction, the result data of the last specified old process is output to the outside, and the result sequence of the new process starting with the result data of the first specified new process is output. Can be output outside the device. That is, in the present embodiment, before and after the process change, the result data of the old process and the result data of the new process are not mixed and output to the outside of the apparatus. Also, the present embodiment outputs more useful and usable old process result data until the old process can be stopped even after the new process starts to operate in response to the process change instruction. It will be.

しかも、本実施の形態は、上述のような効果を奏することにより、結果データに付加する必要のある情報量を、関連技術に比べて大幅に削減できる。例えば、特許文献5および6に記載された関連技術の組み合わせでは、どの結果データに対しても少なくとも出力予定時刻を付加する必要がある。このような時刻情報を表すための情報量に比べて、新旧識別情報およびノード識別情報の情報量は非常に少なくて済むからである。   Moreover, the present embodiment can greatly reduce the amount of information that needs to be added to the result data by providing the effects as described above as compared with the related art. For example, in the combination of the related technologies described in Patent Documents 5 and 6, it is necessary to add at least the scheduled output time to any result data. This is because the amount of information of the old and new identification information and the node identification information is very small compared to the amount of information for representing such time information.

(第2の実施の形態)
以下、本発明の第2の実施の形態について、図面を参照して詳細に説明する。なお、本発明の第1の実施の形態は、装置内において1種類の新旧変更処理が進行することを想定し、他の新旧変更処理の同時進行や新旧変更対象の処理とは無関係な他の処理を考慮しないケースについて有効であった。本実施の形態では、装置内で、1種類以上の処理が同時動作し、そのうち1種類以上の処理について新旧変更処理が同時進行する場合も考慮した例について説明する。
(Second Embodiment)
Hereinafter, a second embodiment of the present invention will be described in detail with reference to the drawings. Note that the first embodiment of the present invention assumes that one type of new / old change process proceeds in the apparatus, and is not related to the simultaneous progress of other new / old change processes and the process to be changed. It was effective for cases where processing was not considered. In the present embodiment, an example will be described in which one or more types of processing are simultaneously operated in the apparatus, and the old and new change processing is simultaneously performed for one or more types of processing.

本発明の第2の実施の形態としての時系列データ処理装置200の構成を、図4に示す。図4において、時系列データ処理装置200は、本発明の第1の実施の形態としての時系列データ処理装置100に対して、ネットワーク部111に替えてネットワーク部211と、制御部121に替えて制御部221とを備える点が異なる。また、ネットワーク部211は、本発明の第1の実施の形態におけるネットワーク部111に対して、選択部113に替えて選択部213を有する点が異なる。   The configuration of a time-series data processing device 200 as the second embodiment of the present invention is shown in FIG. In FIG. 4, the time-series data processing device 200 is different from the time-series data processing device 100 according to the first embodiment of the present invention in place of the network unit 111 and the network unit 211 and the control unit 121. The point provided with the control part 221 differs. The network unit 211 is different from the network unit 111 according to the first embodiment of the present invention in that the network unit 211 includes a selection unit 213 instead of the selection unit 113.

図4において、各処理部101には、外部より時系列データが入力される。また、各処理部101から出力されるデータは、いずれかのネットワーク部211に入力される。また、各ネットワーク部211には、処理部101または他のネットワーク部211から出力されるデータが入力される。また、各ネットワーク部211から出力されるデータは、他のネットワーク部211に入力されるか、装置外部に出力される。このように、時系列データ処理装置200は、各処理部101により出力される結果データを、1つ以上のネットワーク部211から構成されるネットワークで1つに束ねたのち、装置外部に出力する構成となっている。なお、図4には、2つの処理部101と、1つのネットワーク部211と、1つの制御部221とを示しているが、本発明の時系列データ処理装置が備える各部の数を限定するものではない。   In FIG. 4, time series data is input to each processing unit 101 from the outside. Further, data output from each processing unit 101 is input to one of the network units 211. Each network unit 211 receives data output from the processing unit 101 or another network unit 211. Further, data output from each network unit 211 is input to another network unit 211 or output outside the apparatus. As described above, the time-series data processing device 200 is configured to bundle the result data output from each processing unit 101 into one by a network including one or more network units 211 and then output the result data to the outside of the device. It has become. In FIG. 4, two processing units 101, one network unit 211, and one control unit 221 are shown. However, the number of units included in the time-series data processing device of the present invention is limited. is not.

制御部221は、最後の旧処理の結果データの計算に必要な最後の入力データが入力されると、旧処理の処理部101に対して次の付加情報を送信する。具体的には、制御部221は、このタイミングで旧処理の処理部101に対して、新旧変更対象の処理の種類を無関係な処理から識別する処理識別情報と、旧処理を表す新旧識別情報と、待ち合わせノードを示すノード識別情報とを含む付加情報を送信する。これにより、制御部221は、旧処理の処理部101から、処理識別情報、新旧識別情報およびノード識別情報が付加された最後の旧処理の結果データを出力させる。   When the last input data necessary for calculating the result data of the last old process is input, the control unit 221 transmits the next additional information to the processing unit 101 of the old process. Specifically, at this timing, the control unit 221 instructs the processing unit 101 of the old process to identify the type of processing to be changed between old and new from irrelevant processing, and new and old identification information representing the old processing, The additional information including the node identification information indicating the meeting node is transmitted. Thereby, the control unit 221 causes the processing unit 101 of the old process to output the result data of the last old process to which the process identification information, the old and new identification information, and the node identification information are added.

また、制御部221は、最初の新処理の結果データの計算に必要な最後の入力データが入力されると、新処理の処理部101に対して次の付加情報を送信する。具体的には、制御部221は、このタイミングで新処理の処理部101に対して、対応する旧処理と同一の処理識別情報と、新処理を表す新旧識別情報と、待ち合わせノードを示すノード識別情報とを含む付加情報を送信する。これにより、制御部221は、新処理の処理部101から、処理識別情報、新旧識別情報およびノード識別情報が付加された最初の新処理の結果データを出力させる。   In addition, when the last input data necessary for calculating the result data of the first new process is input, the control unit 221 transmits the next additional information to the processing unit 101 of the new process. Specifically, at this timing, the control unit 221 instructs the processing unit 101 of the new process to have the same process identification information as the corresponding old process, new / old identification information indicating the new process, and node identification indicating the waiting node. Additional information including information is transmitted. Thereby, the control unit 221 causes the processing unit 101 of the new process to output the result data of the first new process to which the process identification information, the old and new identification information, and the node identification information are added.

また、制御部221は、最初の新処理の結果データの計算に必要な最後の入力データが入力された後、新旧処理の変更が完了する直前までのタイミングでは、新処理の処理部101に対して、次の付加情報を送信する。具体的には、制御部221は、このタイミングで新処理の処理部101に対して、対応する旧処理と同一の処理識別情報と、新処理を表す新旧識別情報と、待ち合わせ不要を示すノード識別情報とを含む付加情報を送信する。なお、新旧処理の変更が完了するとは、装置内に、最初の新処理の結果データが存在しなくなることをいう。   In addition, the control unit 221 receives the last input data necessary for calculating the result data of the first new process and immediately before the change of the new and old processes is completed, Then, the following additional information is transmitted. Specifically, at this timing, the control unit 221 instructs the processing unit 101 of the new process to have the same process identification information as the corresponding old process, new / old identification information indicating the new process, and node identification indicating that no waiting is required. Additional information including information is transmitted. Note that the completion of the change between the new and old processes means that there is no result data of the first new process in the apparatus.

また、制御部221は、新旧処理の変更が完了した後のタイミングでは、新処理の処理部101に対して、新旧変更対象でないことを表す処理識別情報と、新処理を表す新旧識別情報と、待ち合わせ不要を示すノード識別情報とを含む付加情報を送信する。   In addition, at the timing after the change between the old and new processing is completed, the control unit 221 instructs the processing unit 101 of the new processing to process identification information indicating that it is not a new / old change target, new / old identification information indicating new processing, Additional information including node identification information indicating that no waiting is required is transmitted.

ここで、処理識別情報とは、新旧変更対象の処理の種類を無関係な処理から識別可能な情報である。つまり、処理識別情報は、新旧変更対象の旧処理および新処理に対して同一の値が設定される。また、処理識別情報は、新旧変更対象の処理の種類と、新旧変更対象でない無関係な処理とを識別できればよい。つまり、処理識別情報は、無関係な各処理については、同一の値が設定される。このように、処理識別情報は、新旧変更対象の処理の種類を無関係な処理から区別するために用いられる。   Here, the process identification information is information that can identify the type of process to be changed between old and new from unrelated processes. That is, the process identification information is set to the same value for the old process and the new process to be changed. Further, the process identification information only needs to be able to identify the type of process to be changed between old and new and an irrelevant process not to be changed. That is, the process identification information is set to the same value for each irrelevant process. As described above, the process identification information is used to distinguish the type of process to be changed between old and new from irrelevant processes.

また、ノード識別情報は、本発明の第1の実施の形態におけるノード識別情報と同様に、新処理の結果データおよび旧処理の結果データを待ち合わせるネットワーク部211を識別する情報である。この他、ノード識別情報は、待ち合わせ不要を表す場合もある。   The node identification information is information for identifying the network unit 211 that waits for the result data of the new process and the result data of the old process, similarly to the node identification information in the first embodiment of the present invention. In addition, the node identification information may indicate that no waiting is required.

各処理部101から出力される情報のデータ構造を、図5に示す。以降、処理識別情報、新旧識別情報、および、ノード識別情報からなる付加情報が付加された結果データを、単に「結果データ」と記載する場合もある。また、時系列データ処理装置200内において、結果データは、付加されている各種の付加情報とともに、各機能ブロックによって入出力または保持されるものとする。   The data structure of information output from each processing unit 101 is shown in FIG. Hereinafter, result data to which additional information including process identification information, old and new identification information, and node identification information is added may be simply referred to as “result data”. In the time-series data processing apparatus 200, the result data is input / output or held by each functional block together with various additional information added.

また、制御部221は、最後の旧処理の結果データの計算に必要な最後の入力データが入力されたタイミングを、旧処理の処理部101または新処理の処理部101の処理状況を表す情報、もしくは、結果データの出力状況を表す情報に基づいて判定してもよい。   Further, the control unit 221 indicates the timing at which the last input data necessary for calculating the result data of the last old process is input, information indicating the processing status of the processing unit 101 of the old process or the processing unit 101 of the new process, Or you may determine based on the information showing the output condition of result data.

また、制御部221は、最初の新処理の結果データの計算に必要な最後の入力データが入力されたタイミングを、旧処理の処理部101または新処理の処理部101の処理状況を表す情報、もしくは、結果データの出力状況を表す情報に基づいて判定してもよい。   Further, the control unit 221 indicates the timing at which the last input data necessary for calculation of the result data of the first new process is input, information indicating the processing status of the processing unit 101 of the old process or the processing unit 101 of the new process, Or you may determine based on the information showing the output condition of result data.

なお、処理部101の処理状況とは、例えば、旧処理の処理部101において一連の処理が進行中であるか一連の処理が完了したかなどの状況などをいう。あるいは、処理部101の処理状況とは、新処理が起動した後の固定サイクル後であるなどの状況などであってもよい。また、結果データの出力状況とは、旧処理の処理部101から一連の結果データの出力中であるか出力が完了したかなどの状況をいう。また、制御部221は、このようなタイミングを、上述した情報やその他の情報の組み合わせに基づいて判定してもよい。また、制御部221は、そのような処理部101の処理状況や出力状況を、処理部101から通知されることにより判定処理を行ってもよい。   Note that the processing status of the processing unit 101 refers to, for example, a status indicating whether a series of processing is in progress or a series of processing is completed in the processing unit 101 of the old process. Alternatively, the processing status of the processing unit 101 may be a status such as after a fixed cycle after the start of a new process. The output status of the result data refers to a status such as whether a series of result data is being output from the processing unit 101 of the old process or whether the output has been completed. Moreover, the control part 221 may determine such timing based on the combination of the information mentioned above and other information. Further, the control unit 221 may perform the determination process by notifying the processing status and output status of the processing unit 101 from the processing unit 101.

また、制御部221は、新旧変更対象ではない無関係な各処理部101(図示せず)に対して、新旧変更対象ではないことを示す処理識別情報と、新処理を表す新旧識別情報と、待ち合わせ不要を表すノード識別情報とを含む付加情報を送信する。なお、無関係な処理部101からの結果データについては、後述の選択部213においてノード識別情報が主に参照され、新旧識別情報および処理識別情報は参照されない。したがって、無関係な処理部101に送信される新旧識別情報は、必ずしも新処理を表さなくてもよく、どのような内容の情報でもよい。また、無関係な処理部101に送信される処理識別情報は、新旧変更対象の処理を表す情報以外であればどのような内容であってもよい。   In addition, the control unit 221 waits for each irrelevant processing unit 101 (not shown) that is not the old / new change target, the process identification information indicating that it is not the old / new change target, the new / old identification information indicating the new process, Additional information including node identification information indicating unnecessary is transmitted. Regarding the result data from the irrelevant processing unit 101, node identification information is mainly referred to by the selection unit 213 described later, and the old and new identification information and the processing identification information are not referred to. Therefore, the old and new identification information transmitted to the irrelevant processing unit 101 does not necessarily represent the new process, and may be information of any content. Further, the process identification information transmitted to the irrelevant processing unit 101 may have any content as long as it is information other than the information indicating the process to be changed.

選択部213は、自ノードからの出力対象となる結果データを選択するための選択情報として、新旧変更対象の処理の種類毎に、最後の旧処理の結果データが自ノードを通過済であるか否かを示す情報を記憶する。具体的には、選択部213は、処理識別情報をインデックスとする表を選択情報として保持し、処理識別情報に対応付けて、最後の旧処理の結果データが通過済であるか否かを表す情報を記憶してもよい。以降、このような処理識別情報をインデックスとする表(選択情報)を、通過完了表とも記載する。   As the selection information for selecting the result data to be output from the own node, the selection unit 213 determines whether the result data of the last old process has passed through the own node for each type of process to be changed. Information indicating whether or not is stored. Specifically, the selection unit 213 holds a table having the process identification information as an index as selection information, and indicates whether or not the result data of the last old process has been passed in association with the process identification information. Information may be stored. Hereinafter, a table (selection information) using such processing identification information as an index is also referred to as a passage completion table.

また、選択部213は、自ノードの伝達部112に到着した結果データと、遅延部114に格納されている結果データの最も古いものとの間で、出力ポートの使用権の調停を行う。   In addition, the selection unit 213 arbitrates the right to use the output port between the result data arriving at the transmission unit 112 of the own node and the oldest result data stored in the delay unit 114.

具体的には、選択部213は、ノード識別情報が自ノードを示し、かつ、新旧識別情報が新処理を示す結果データについて、その処理識別情報に対応する通過完了表のエントリが通過済でないことを示す場合、この結果データを選択しない。また、選択部213は、ノード識別情報が待ち合わせ不要を示し、かつ、新旧識別情報が新処理を表す結果データについて、その処理識別情報と同一の処理識別情報が付加された最初の新処理の結果データが遅延部114に格納されている場合、この結果データを選択しない。また、選択部213は、それ以外の結果データについては、同じ処理部101から出力された結果の出力順序が入れ替わらないように、かつ、何らかの優先度に基づいてそのうち1つを選択する。なお、「それ以外の結果データ」には、ノード識別情報が自ノードを示しかつ新旧識別情報が新処理を示している結果データであって、その処理識別情報に対応する通過完了表のエントリが通過済を示している結果データが含まれる。また、「それ以外の結果データ」には、ノード識別情報が待ち合わせ不要を示しかつ新旧識別情報が新処理を示している結果データであって、その処理識別情報と同一の処理識別情報が付加された最初の新処理の結果データが遅延部114に格納されていない結果データが含まれる。また、「それ以外の結果データ」には、ノード識別情報が自ノードを示していないか、または、新旧識別情報が旧処理を示している結果データが含まれる。   Specifically, the selection unit 213 indicates that for the result data in which the node identification information indicates the own node and the old and new identification information indicates the new process, the entry in the passage completion table corresponding to the process identification information has not been passed. Is not selected, the result data is not selected. Further, the selection unit 213 indicates the result of the first new process in which the node identification information indicates that no waiting is required and the process identification information identical to the process identification information is added to the result data in which the old and new identification information indicates the new process. When data is stored in the delay unit 114, this result data is not selected. The selection unit 213 selects one of the other result data so that the output order of the results output from the same processing unit 101 is not changed and based on some priority. The “other result data” includes result data in which the node identification information indicates the own node and the old and new identification information indicates the new process, and an entry in the passage completion table corresponding to the process identification information is included. Contains result data indicating passed. The “other result data” is the result data in which the node identification information indicates that no waiting is required and the old and new identification information indicates a new process, and the same process identification information as the process identification information is added. The result data in which the result data of the first new process is not stored in the delay unit 114 is included. Further, “other result data” includes result data in which the node identification information does not indicate the own node or the old and new identification information indicates the old process.

また、選択部213は、選択した結果データのノード識別情報が自ノードを示し、かつ、新旧識別情報が旧処理を表すとき、その結果データの処理識別情報に対応する通過完了表のエントリを、通過済を示すよう更新する。   In addition, when the node identification information of the selected result data indicates the own node and the new and old identification information indicates the old process, the selection unit 213 displays an entry in the passage completion table corresponding to the process identification information of the result data, Update to indicate passed.

また、選択部213は、選択した結果データを次のネットワーク部211または外部に出力するよう伝達部112を制御する。   The selection unit 213 also controls the transmission unit 112 to output the selected result data to the next network unit 211 or the outside.

また、選択部213は、選択しなかった結果データを、遅延部114に挿入して遅延させる。このとき、選択部213は、挿入する結果データに、処理識別情報が同一の複数の結果データが含まれる場合、そのうち旧処理の結果データが新処理の結果データより古い位置につくように遅延部114に挿入すればよい。前述のように、「より古い位置」とは、選択部213によって先に取りだされる位置のことである。また、選択部213は、それ以外の結果データについては、到着した順序で取り出される位置につくよう遅延部114に挿入する。   The selection unit 213 inserts the result data that has not been selected into the delay unit 114 and delays the result data. At this time, when the inserted result data includes a plurality of result data having the same process identification information, the selection unit 213 delays the old process result data so that the result data of the old process is older than the result data of the new process. What is necessary is just to insert in 114. As described above, the “older position” is a position taken out first by the selection unit 213. In addition, the selection unit 213 inserts the other result data into the delay unit 114 so as to arrive at a position where the result data is extracted in the order of arrival.

以上のように構成された時系列データ処理装置200の動作について、図6および図7を参照して説明する。   The operation of the time-series data processing device 200 configured as described above will be described with reference to FIGS.

なお、以下の説明において、時系列データ処理装置200は、複数の領域(パーティション)を有するICチップによって構成されるものとする。また、各パーティションには、構成データ、コンフィギュレーションデータと呼ばれる設定情報が設定されることにより、ユーザ定義処理を実行する回路が作成されるものとする。   In the following description, it is assumed that the time-series data processing device 200 is configured by an IC chip having a plurality of areas (partitions). In each partition, setting information called configuration data and configuration data is set to create a circuit for executing user-defined processing.

また、時系列データ処理装置200は、旧処理から新処理への処理の変更指示を外部から受信すると、以下の動作を開始するものとする。なお、時系列データ処理装置200は、このような変更指示を、外部に接続されたホストコンピュータ等から受信してもよい。また、変更指示対象の新処理に関するユーザ定義情報は、旧処理を実行中の処理部101とは異なるパーティションによって構成される任意の処理部101に書き込まれるものとする。   In addition, the time-series data processing device 200 starts the following operation when receiving an instruction to change the process from the old process to the new process from the outside. Note that the time-series data processing device 200 may receive such a change instruction from a host computer or the like connected to the outside. In addition, it is assumed that user-defined information related to the new process to be changed is written to an arbitrary processing unit 101 configured by a partition different from the processing unit 101 that is executing the old process.

まず、制御部221による動作を図6に示す。   First, the operation of the control unit 221 is shown in FIG.

図6において、まず、制御部221は、最後の旧処理の結果データの計算に必要な最後のデータが入力されたタイミングであると判定すると、旧処理の処理部101に対して、結果データに付加するための付加情報を送信する。具体的には、制御部221は、旧処理の処理部101に対して、新旧変更対象の処理を識別する処理識別情報、旧処理を表す新旧識別情報、および、待ち合わせノードを示すノード識別情報を送信する(S21)。   In FIG. 6, when the control unit 221 determines that it is the timing at which the last data necessary for calculation of the result data of the last old process is input, the control unit 221 converts the result data to the processing unit 101 of the old process. Additional information for adding is transmitted. Specifically, the control unit 221 sends processing identification information for identifying a new / old change target process, new / old identification information representing an old process, and node identification information indicating a waiting node to the processing unit 101 of the old process. Transmit (S21).

なお、前述のように、制御部221は、このようなタイミングの判定を、旧処理の処理部101または新処理の処理部101の処理状況に関する情報、もしくは、出力状況に関する情報に基づいて行ってもよい。   As described above, the control unit 221 performs such timing determination based on information on the processing status of the processing unit 101 of the old process or the processing unit 101 of the new process or information on the output status. Also good.

また、図6のS21の後のタイミングでは、制御部221は、旧処理の処理部101に対して、結果データを出力しないよう指示し続ける。   Further, at the timing after S21 in FIG. 6, the control unit 221 continues to instruct the processing unit 101 of the old process not to output the result data.

次に、制御部221は、最初の新処理の結果データの計算に必要な最後のデータが入力されたタイミングであると判定すると、新処理の処理部101に対して、結果データに付加するための付加情報を送信する。具体的には、制御部221は、新処理の処理部101に対して、旧処理と共通の該当する処理識別情報、新処理を表す新旧識別情報、および、待ち合わせのノードを示すノード識別情報を送信する(S22)。   Next, when the control unit 221 determines that it is the timing when the last data necessary for calculation of the result data of the first new process is input, the control unit 221 adds the result data to the processing unit 101 of the new process. Send additional information. Specifically, the control unit 221 sends the corresponding process identification information common to the old process, the new and old identification information indicating the new process, and the node identification information indicating the waiting node to the processing unit 101 of the new process. Transmit (S22).

なお、このタイミングより後、この新旧処理の変更が完了する直前までのタイミングでは、制御部221は、新処理の処理部101に対して、結果データに付加するための次の付加情報を送信する。具体的には、制御部221は、新処理の処理部101に対して、旧処理と共通の該当する処理識別情報、新処理を表す新旧識別情報、および、待ち合わせ不要を示すノード識別情報を送信する。   Note that at a timing after this timing and immediately before the change between the new and old processes is completed, the control unit 221 transmits the next additional information to be added to the result data to the processing unit 101 of the new process. . Specifically, the control unit 221 transmits corresponding processing identification information common to the old process, new / old identification information indicating the new process, and node identification information indicating that no waiting is required, to the processing unit 101 of the new process. To do.

また、制御部221は、新旧処理の変更が完了した後のタイミングでは、新処理の処理部101に対して、新旧変更対象でないことを表す処理識別情報と、新処理を表す新旧識別情報と、待ち合わせ不要を示すノード識別情報とを含む付加情報を送信する。   In addition, at the timing after the change between the old and new processing is completed, the control unit 221 instructs the processing unit 101 of the new processing to process identification information indicating that it is not a new / old change target, new / old identification information indicating new processing, Additional information including node identification information indicating that no waiting is required is transmitted.

また、前述のように、制御部221は、このようなタイミングの判定を、旧処理の処理部101または新処理の処理部101の処理状況に関する情報、もしくは、出力状況に関する情報に基づいて行ってもよい。   Further, as described above, the control unit 221 performs such timing determination based on information regarding the processing status of the processing unit 101 of the old process or the processing unit 101 of the new process or information regarding the output status. Also good.

また、図6のS22より以前のタイミングでは、制御部221は、新処理の処理部101に対して、結果データを出力しないよう指示し続ける。   Further, at the timing before S22 in FIG. 6, the control unit 221 continues to instruct the processing unit 101 of the new process not to output the result data.

次に、制御部221は、新旧変更対象でない無関係な各処理部101に対して、結果データに付加するための次の付加情報を送信する。具体的には、制御部221は、これらの各処理部101に対して、新旧変更対象でないことを表す処理識別情報、新処理を表す新旧識別情報、および、待ち合わせ不要を表すノード識別情報を送信する(S23)。   Next, the control unit 221 transmits the next additional information to be added to the result data to each irrelevant processing unit 101 that is not a target for new and old changes. Specifically, the control unit 221 transmits, to each of these processing units 101, processing identification information indicating that it is not a new / old change target, new / old identification information indicating new processing, and node identification information indicating that no waiting is required. (S23).

なお、制御部221は、各処理部101に送信する各種識別情報の値として、ホストコンピュータにより指示された値を用いてもよい。   Note that the control unit 221 may use a value instructed by the host computer as the value of various types of identification information transmitted to each processing unit 101.

以上で、制御部221の動作の説明を終了する。   Above, description of operation | movement of the control part 221 is complete | finished.

次に、選択部213の動作を図7に示す。   Next, the operation of the selection unit 213 is shown in FIG.

図7において、まず、選択部213は、変更対象の処理識別情報に対応する通過完了表のエントリを、通過済でないことを表す情報(例えば、“N”)に設定して初期化する(S31)。なお、選択部213は、新旧変更対象の処理の種類を識別する各処理識別情報について、その処理識別情報で識別される最初の新処理の結果データが装置内に存在しなくなったタイミングで、その処理識別情報に対応する通過完了表のエントリを初期化すればよい。   In FIG. 7, first, the selection unit 213 sets and initializes the entry in the passage completion table corresponding to the process identification information to be changed to information indicating that the passage has not been completed (for example, “N”) (S31). ). Note that the selection unit 213 determines, for each process identification information that identifies the type of process to be changed between old and new, at the timing when the result data of the first new process identified by the process identification information no longer exists in the apparatus. What is necessary is just to initialize the entry of the passage completion table corresponding to process identification information.

次に、選択部213は、自ノードの伝達部112に到着した結果データと、遅延部114に格納されている結果データの最も古いものとの間で出力ポートの使用権の調停を行う。具体的には、選択部213は、結果データについて、ノード識別情報が自ノードを示しており、かつ、新旧識別情報が新処理を示しており、かつ、その処理識別情報に対応する通過完了表のエントリが通過済でないことを表す場合、選択部213は、その結果データを選択しないことを決定する。また、選択部213は、それ以外の結果データについては、同じ処理部101から出力された結果の出力順序が入れ替わらないように、かつ、何らかの優先度にしたがっていずれかを選択する(S32)。   Next, the selection unit 213 arbitrates the right to use the output port between the result data arriving at the transmission unit 112 of its own node and the oldest result data stored in the delay unit 114. Specifically, for the result data, the selection unit 213 indicates that the node identification information indicates the own node, the old and new identification information indicates the new process, and the passage completion table corresponding to the process identification information. If the entry indicates that the entry has not been passed, the selection unit 213 determines not to select the result data. The selection unit 213 selects any other result data so that the output order of the results output from the same processing unit 101 is not changed and according to some priority (S32).

次に、選択部213は、調停で選択された結果データについて、ノード識別情報が自ノードを示しており、かつ、新旧識別情報が旧処理を示している場合、その処理識別情報に対応する通過完了表のエントリを、通過済を示す情報(例えば、“Y”)に更新する(S33)。
次に、選択部213は、調停で選択された結果データを、次のネットワーク部211あるいは装置外部への出力ポートへ、伝達部112から出力させる(S34)。
Next, when the node identification information indicates the own node and the new and old identification information indicates the old process for the result data selected by the arbitration, the selection unit 213 passes corresponding to the process identification information. The entry in the completion table is updated to information (for example, “Y”) indicating that it has been passed (S33).
Next, the selection unit 213 outputs the result data selected by the arbitration from the transmission unit 112 to the next network unit 211 or an output port to the outside of the apparatus (S34).

次に、選択部213は、調停で選択されなかった結果データを遅延部114に挿入する(S35)。このとき、選択部213は、挿入する結果データに、処理識別情報が同一の複数の結果データが含まれている場合は、それらのうち旧処理の結果データが新処理の結果データより古い位置につくよう遅延部114に挿入する。また、選択部213は、それ以外の結果データについては、到着した順序で取り出される位置につくよう遅延部114に挿入する。   Next, the selection unit 213 inserts the result data not selected in the arbitration into the delay unit 114 (S35). At this time, when the result data to be inserted includes a plurality of result data having the same process identification information, the selection unit 213 places the result data of the old process at a position older than the result data of the new process. It inserts into the delay part 114 so that it may start. In addition, the selection unit 213 inserts the other result data into the delay unit 114 so as to arrive at a position where the result data is extracted in the order of arrival.

そして、選択部213は、図7のS32からS35までの動作を繰り返す。   Then, the selection unit 213 repeats the operations from S32 to S35 in FIG.

以上で、選択部213の動作の説明を終了する。   Above, description of operation | movement of the selection part 213 is complete | finished.

(動作の具体例)
次に、時系列データ処理装置200の動作の具体例を、図8〜図13を参照して説明する。
(Specific example of operation)
Next, a specific example of the operation of the time-series data processing device 200 will be described with reference to FIGS.

以下に説明する具体例において、時系列データ処理装置200は、3つの処理部101と、2つのネットワーク部211とを備える。3つの処理部101のうち、処理部101−1には、旧処理が定義され、処理部101−2には、新処理が定義され、処理部101−3には、変更対象でない他の処理が定義されているものとする。   In the specific example described below, the time-series data processing device 200 includes three processing units 101 and two network units 211. Of the three processing units 101, the processing unit 101-1 defines an old process, the processing unit 101-2 defines a new process, and the processing unit 101-3 includes other processes not to be changed. Is defined.

具体的には、処理部101−1には、時系列データについて、直近2つの入力データの積を計算する旧処理が定義されている。また、処理部101−2には、直近2つの入力データの和を計算する新処理が新たに定義される。また、処理部101−3には、直近2つの入力データの差を計算する処理が、旧処理および新処理とは無関係な処理として定義されている。   Specifically, the processing unit 101-1 defines an old process for calculating the product of the latest two input data for time series data. In the processing unit 101-2, a new process for calculating the sum of the latest two input data is newly defined. In the processing unit 101-3, a process for calculating the difference between the two most recent input data is defined as a process unrelated to the old process and the new process.

また、処理部101−1による旧処理は、2サイクルの計算遅延を要し、処理部101−2による新処理は、1サイクルの計算遅延を要し、処理部101−3による処理は、1サイクルの計算遅延を要するものとする。また、これらの旧処理および新処理には、処理識別情報“1”が設定され、処理部101−3による処理には、処理識別情報“3”が設定されているものとする。   Further, the old process by the processing unit 101-1 requires a calculation delay of 2 cycles, the new process by the processing unit 101-2 requires a calculation delay of 1 cycle, and the process by the processing unit 101-3 takes 1 It is assumed that a cycle calculation delay is required. Further, it is assumed that process identification information “1” is set for these old process and new process, and process identification information “3” is set for the process by the processing unit 101-3.

また、2つのネットワーク部211のうち、ネットワーク部211−1には、処理部101−1および101−3から出力されるデータが入力され、ネットワーク部211−2には、処理部101−2およびネットワーク部211−1から出力されるデータが入力される。また、ネットワーク部211−2は、装置外部への出力ポートに対してデータを出力する。また、ネットワーク部211−1は、ノード識別情報“1”で識別され、ネットワーク部211−2は、ノード識別情報“2”で識別されるものとする。   Of the two network units 211, the data output from the processing units 101-1 and 101-3 is input to the network unit 211-1, and the processing units 101-2 and 101-2 are input to the network unit 211-2. Data output from the network unit 211-1 is input. The network unit 211-2 outputs data to an output port to the outside of the apparatus. The network unit 211-1 is identified by the node identification information “1”, and the network unit 211-2 is identified by the node identification information “2”.

また、ネットワーク部211−1は、伝達部112−1、選択部213−1、遅延部114−1を有し、ネットワーク部211−2は、伝達部112−2、選択部213−2、遅延部114−2を有するものとする。   The network unit 211-1 includes a transmission unit 112-1, a selection unit 213-1, and a delay unit 114-1, and the network unit 211-2 includes a transmission unit 112-2, a selection unit 213-2, and a delay. It shall have the part 114-2.

また、この具体例では、同時に変更対象となる処理の種類数は1つに限定されているものとする。   Further, in this specific example, it is assumed that the number of types of processes to be changed simultaneously is limited to one.

また、この具体例において、処理部101−2に対して新処理を実行するための回路情報が書き込まれると、処理部101−2は新処理の動作を開始する。そして、処理部101−2が新処理の動作を開始後、旧処理の処理部101−1において旧処理が停止可能になると、処理部101−1は動作を停止し、処理部101−1の回路情報が削除されるものとする。   In this specific example, when circuit information for executing a new process is written to the processing unit 101-2, the processing unit 101-2 starts the operation of the new process. Then, after the processing unit 101-2 starts the operation of the new processing, when the old processing can be stopped in the processing unit 101-1 of the old processing, the processing unit 101-1 stops the operation, and the processing unit 101-1 It is assumed that circuit information is deleted.

ここで、旧処理が停止可能になるタイミングは、旧処理の処理部101−1から制御部221に与えられるとする。また、そのタイミングは、新処理を実行するための回路情報の処理部101−2への書き込みが完了し、新処理が結果を出力し始めてから、数サイクルの後であるとする。また、旧処理が最後の結果データを出力するタイミングも同時であるとする。つまり、新処理が結果データの出力を開始した以降も、数サイクルの間は、旧処理の結果は利用可能である。この具体例は、この利用可能な旧処理の結果を出力可能にする。   Here, it is assumed that the timing at which the old process can be stopped is given from the processing unit 101-1 of the old process to the control unit 221. The timing is assumed to be several cycles after the writing of the circuit information for executing the new process to the processing unit 101-2 is completed and the new process starts outputting the result. It is also assumed that the timing at which the old process outputs the last result data is the same. In other words, the result of the old process can be used for several cycles even after the new process starts outputting the result data. This example makes it possible to output the result of this available old process.

次に、時系列データ処理装置200の具体的な動作の詳細を説明する。   Next, details of a specific operation of the time-series data processing device 200 will be described.

ここでは、時系列データ処理装置200に対して、第1サイクルにv1、第2サイクルにv2、第3サイクルにv3が入力データとして与えられるとする。なお、入力データは、各サイクルの開始時に与えられる。また、これらの入力データは実数であるものとする。また、v1およびv2を用いた旧処理の結果データを最後の旧処理の結果データとし、v2およびv3を用いた新処理の結果データを最初の新処理の結果データとする。   Here, it is assumed that v1 is given as input data to the time-series data processing device 200 in the first cycle, v2 in the second cycle, and v3 in the third cycle. Input data is given at the start of each cycle. These input data are assumed to be real numbers. Further, the result data of the old process using v1 and v2 is the result data of the last old process, and the result data of the new process using v2 and v3 is the result data of the first new process.

まず、選択部213−1および選択部213−2は、変更対象の処理識別情報“1”に対応づけて、通過完了表のエントリを、通過済でないことを表す“N”に設定する(S31)。このように、各選択部213は、処理の変更が開始される前に、変更対象の処理識別情報に対応する選択情報を初期化する。   First, the selection unit 213-1 and the selection unit 213-2 set the entry of the passage completion table to “N” indicating that the passage has not been completed in association with the process identification information “1” to be changed (S31). ). Thus, each selection unit 213 initializes selection information corresponding to the process identification information to be changed before the process change is started.

(第1サイクル)
第1サイクルにおいては、処理部101−1は、旧処理を実行している。
(First cycle)
In the first cycle, the processing unit 101-1 executes the old process.

また、時系列データ処理装置200に対して、データ“v1”が入力され、処理部101−1はこれを保持する。   Further, data “v1” is input to the time-series data processing device 200, and the processing unit 101-1 holds this data.

(第2サイクル)
第2サイクルにおいて、外部より処理部101−2に対応する領域に、新処理が書き込まれる。そして、処理部101−2は、新処理の動作を開始する。
(Second cycle)
In the second cycle, a new process is written from the outside into an area corresponding to the processing unit 101-2. Then, the processing unit 101-2 starts the operation of the new process.

また、時系列データ処理装置200に対して、データ“v2”が入力される。ここで、データ“v2”は、最後の旧処理の結果データの計算に必要な最後の入力データである。   In addition, data “v2” is input to the time-series data processing device 200. Here, the data “v2” is the last input data necessary for calculating the result data of the last old process.

そこで、制御部221は、旧処理および新処理に共通の処理識別情報“1”と、旧処理を表す新旧識別情報“o”と、ノード識別情報“2”とを、旧処理の処理部101−1へ送信する(S21)。なお、ノード識別情報“2”の示すネットワーク部211−2は、旧処理の処理部101−1および新処理の処理部101−2からの結果データが合流する場所を示している。以下では、制御部221から各処理部101に送信される情報を〈処理識別情報,新旧識別情報,ノード識別情報〉と表す。つまり、制御部221は、処理部101−1に対して〈1,o,2〉を送信する。   Therefore, the control unit 221 uses the process identification information “1” common to the old process and the new process, the old and new identification information “o” representing the old process, and the node identification information “2” as the processing unit 101 of the old process. -1 (S21). The network unit 211-2 indicated by the node identification information “2” indicates a place where result data from the processing unit 101-1 of the old process and the processing unit 101-2 of the new process merge. Hereinafter, information transmitted from the control unit 221 to each processing unit 101 is represented as <processing identification information, old / new identification information, node identification information>. That is, the control unit 221 transmits <1, o, 2> to the processing unit 101-1.

第2サイクル終了時における時系列データ処理装置200の内部の出力情報を図8に示す。   FIG. 8 shows output information inside the time-series data processing device 200 at the end of the second cycle.

ここで、前述のように、この具体例では、同時に変更の起こる処理の種類数は1つである。したがって、処理識別情報は、変更対象の処理であるか否かを少なくとも表せばよく、1ビットで表すことができる。また、2つのネットワーク部211−1および211−2を識別するためのノード識別情報は、1ビットで表すことができる。また、新旧識別情報も1ビットで表すことができるため、制御部221により結果データに付加される情報は合計3ビットで表現できる。   Here, as described above, in this specific example, the number of types of processes that change simultaneously is one. Therefore, the process identification information only needs to at least indicate whether the process is a process to be changed, and can be expressed by 1 bit. The node identification information for identifying the two network units 211-1 and 211-2 can be represented by 1 bit. In addition, since the new and old identification information can be represented by 1 bit, the information added to the result data by the control unit 221 can be represented by 3 bits in total.

(第3サイクル)
第3サイクルにおいて、時系列データ処理装置200に対して、データ“v3”が入力される。ここで、データ“v3”は、最初の新処理の結果データの計算に必要な最後の入力データである。
(3rd cycle)
In the third cycle, data “v3” is input to the time-series data processing device 200. Here, the data “v3” is the last input data necessary for calculating the result data of the first new process.

そこで、制御部221は、旧処理および新処理に共通の処理識別情報“1”と、新処理を表す新旧識別情報“n”と、ノード識別情報“2”とからなる情報〈1,n,2〉を、新処理の処理部101−2に対して送信する。   Therefore, the control unit 221 includes information <1, n, which includes process identification information “1” common to the old process and the new process, old and new identification information “n” representing the new process, and node identification information “2”. 2> is transmitted to the processing unit 101-2 of the new process.

また、処理部101−2は、計算遅延が1サイクルであるため“v2”および“v3”の和の計算(新処理)を完了する。そして、処理部101−2は、結果データ“v2+v3”に対して、制御部221から受信した情報〈1,n,2〉を付加した〈v2+v3, 1, n,2〉を、ネットワーク部211−2に対して出力する(S22)。このように、処理部101から出力される情報を〈結果データ,処理識別情報,新旧識別情報,ノード識別情報〉と表す。   Further, the processing unit 101-2 completes calculation (new processing) of the sum of “v2” and “v3” because the calculation delay is one cycle. Then, the processing unit 101-2 adds <v2 + v3, 1, n, 2> to which the information <1, n, 2> received from the control unit 221 is added to the result data “v2 + v3”. The data is output to the network unit 211-2 (S22). In this way, information output from the processing unit 101 is represented as <result data, process identification information, old and new identification information, node identification information>.

なお、制御部221は、これより前のサイクルでは、処理部101−2に対して出力を行わないよう指示し続けている。   Note that the control unit 221 continues to instruct the processing unit 101-2 not to output in the previous cycle.

また、処理部101−1は、計算遅延が2サイクルであるため、“v1”および“v2”の積の計算(旧処理)を完了する。そして、処理部101−1は、結果データ“v1*v2”に対して、制御部221から受信した情報〈1,o,2〉を付加した〈v1*v2,1,o,2〉を、ネットワーク部211−1に対して出力する(S21)。   Further, since the calculation delay is two cycles, the processing unit 101-1 completes the calculation of the product of “v1” and “v2” (old process). Then, the processing unit 101-1 adds <v1 * v2,1, o, 2> to which the information <1, o, 2> received from the control unit 221 is added to the result data “v1 * v2”. The data is output to the network unit 211-1 (S21).

なお、制御部221は、これより後のサイクルでは、処理部101−1に対して出力を行わないよう指示し続ける。   Note that the control unit 221 continues to instruct the processing unit 101-1 not to perform output in a cycle after this.

また、制御部221は、処理部101−3に対して、処理識別情報“3”と、新処理を表す“n”と、待ち合わせ不要を示す“-”とからなる〈3,n,-〉を送信する。   Further, the control unit 221 includes, for the processing unit 101-3, <3, n, −> including processing identification information “3”, “n” indicating new processing, and “-” indicating that no waiting is required. Send.

そして、処理部101−3は、計算遅延が1サイクルであるため、“v2”および“v3”の差の計算を完了する。そして、処理部101−3は、結果データ“v2-v3”に対して、制御部221から受信した情報〈3,n,-〉を付加した〈v2-v3,3,n,-〉を、ネットワーク部211−1に対して出力する(S23)。   Then, the processing unit 101-3 completes the calculation of the difference between “v2” and “v3” because the calculation delay is one cycle. Then, the processing unit 101-3 adds <v2-v3,3, n,-> to which the information <3, n,-> received from the control unit 221 is added to the result data “v2-v3”. The data is output to the network unit 211-1 (S23).

第3サイクルの終了時における時系列データ処理装置200の内部の出力情報を図9に示す。   FIG. 9 shows output information inside the time-series data processing device 200 at the end of the third cycle.

(第4サイクル)
第4サイクルにおいて、選択部213−1は、入力された〈v1*v2,1,o,2〉および〈v2-v3,3,n,-〉について、出力ポートの使用権の調停を行う。ここで、前者の結果データ〈v1*v2,1,o,2〉に付加されたノード識別情報が自ノードを表していないため、選択部213−1は、この結果データについて通過完了表を参照することなく、出力対象の候補とする。また、後者の結果データ〈v2-v3,3,n,-〉に付加されたノード識別情報が待ち合わせ不要を示しているため、選択部213−1は、この結果データについても通過完了表を参照することなく、出力対象の候補とする。ここで、〈v1*v2,1,o,2〉と、〈v2-v3,3,n,-〉とでは、後者の結果データの優先度が高いとする。そこで、選択部213−1は、出力対象として〈v2-v3,3,n,-〉を選択する(S32)。
(4th cycle)
In the fourth cycle, the selection unit 213-1 performs arbitration of the right to use the output port for the input <v1 * v2,1, o, 2> and <v2-v3,3, n,->. Here, since the node identification information added to the former result data <v1 * v2,1, o, 2> does not represent the own node, the selection unit 213-1 refers to the passage completion table for the result data. Without being a candidate for output. Further, since the node identification information added to the latter result data <v2-v3,3, n,-> indicates that no waiting is required, the selection unit 213-1 also refers to the passage completion table for this result data. Without being a candidate for output. Here, it is assumed that the priority of the latter result data is high in <v1 * v2,1, o, 2> and <v2-v3,3, n,->. Therefore, the selection unit 213-1 selects <v2-v3,3, n,-> as an output target (S32).

また、選択部213−1は、選択したデータ〈v2-v3,3,n,-〉のノード識別情報が自ノードを表していないので、通過完了表を更新しない。   Further, the selection unit 213-1 does not update the passage completion table because the node identification information of the selected data <v2-v3,3, n,-> does not represent the own node.

また、選択部213−1は、選択した〈v2-v3,3,n,-〉を、ネットワーク部211−2に対して出力する(S34)。   The selection unit 213-1 outputs the selected <v2-v3,3, n,-> to the network unit 211-2 (S34).

また、選択部213−1は、選択しなかった〈v1*v2,1,o,2〉を、遅延部114−1に挿入する(S35)。   In addition, the selection unit 213-1 inserts <v1 * v2,1, o, 2> that has not been selected into the delay unit 114-1 (S35).

また、選択部213−2は、入力された〈v2+v3,1,n,2〉について、出力ポートの使用権の調停を行う。この結果データに付加されたノード識別情報は自ノードを表しており、かつ、新旧識別情報は新処理を表している。そこで、選択部213−2は、この処理識別情報“1”に対応する通過完了表のエントリを参照し、その値が“N”であるため、この結果データを選択しない(S32)。   In addition, the selection unit 213-2 mediates the right to use the output port for the input <v2 + v3,1, n, 2>. The node identification information added to the result data represents the own node, and the old and new identification information represents the new process. Therefore, the selection unit 213-2 refers to the entry of the passage completion table corresponding to the process identification information “1”, and does not select the result data because the value is “N” (S32).

そして、選択部213−2は、選択された結果データがないため、通過完了表を更新しない。   Then, the selection unit 213-2 does not update the passage completion table because there is no selected result data.

そして、選択部213−2は、選択された結果データがないため、装置外部への出力を行わず、選択しなかった結果データ〈v2+v3,1,n,2〉を、遅延部114−2に挿入する(S35)。   Then, since there is no selected result data, the selection unit 213-2 does not output to the outside of the apparatus, and does not select the result data <v2 + v3,1, n, 2> that is not selected. 2 is inserted (S35).

第4サイクルの終了時における時系列データ処理装置200の内部の出力情報を図10に示す。   FIG. 10 shows output information inside the time-series data processing device 200 at the end of the fourth cycle.

(第5サイクル)
第5サイクルにおいて、選択部213−1は、遅延部114−1に格納されている〈v1*v2,1,o,2〉について出力ポートの使用権の調停を行う。選択部213−1は、この結果データに付加されたノード識別情報が自ノードを表していないため、通過完了表を参照することなく、この結果データを選択する(S32)。
(5th cycle)
In the fifth cycle, the selection unit 213-1 arbitrates the right to use the output port for <v1 * v2,1, o, 2> stored in the delay unit 114-1. Since the node identification information added to the result data does not represent the own node, the selection unit 213-1 selects the result data without referring to the passage completion table (S32).

また、選択部213−1は、この結果データに付加されたノード識別情報が自ノードを表していないので、通過完了表の更新を行わない。   Further, the selection unit 213-1 does not update the passage completion table because the node identification information added to the result data does not represent the own node.

そして、選択部213−1は、この結果データ〈v1*v2,1,o,2〉を、ネットワーク部211−2に対して出力する(S34)。   Then, the selection unit 213-1 outputs the result data <v1 * v2,1, o, 2> to the network unit 211-2 (S34).

また、選択部213−2は、入力された〈v2-v3,3,n,-〉と、遅延部114−1に格納されている〈v2+v3,1,n,2〉とについて、出力ポートの使用権の調停を行う。ここで、後者の〈v2+v3,1,n,2〉は、ノード識別情報が自ノードを表しており、かつ、新旧識別情報が新処理を表している。そこで、選択部213−2は、この処理識別情報“1”に対応する通過完了表のエントリを参照し、その値が“N”であるため、この結果データを選択しない(S32)。   The selection unit 213-2 outputs the input <v2-v3,3, n,-> and <v2 + v3,1, n, 2> stored in the delay unit 114-1. Mediates port usage rights. Here, in the latter <v2 + v3,1, n, 2>, the node identification information represents the own node, and the old and new identification information represents the new process. Therefore, the selection unit 213-2 refers to the entry of the passage completion table corresponding to the process identification information “1”, and does not select the result data because the value is “N” (S32).

また、選択部213−2は、前者の〈v2-v3,3,n,-〉のノード識別情報が待ち合わせ不要を表すため、通過完了表を参照することなく、この結果データを選択する(S32)。   In addition, since the former <v2-v3,3, n,-> node identification information indicates that no waiting is required, the selection unit 213-2 selects this result data without referring to the passage completion table (S32). ).

また、選択部213−2は、選択したデータ〈v2-v3,3,n,-〉のノード識別情報が自ノードを表していないので、通過完了表を更新しない。   Further, the selection unit 213-2 does not update the passage completion table because the node identification information of the selected data <v2-v3,3, n,-> does not represent the own node.

そして、選択部213−2は、この結果データ〈v2-v3,3,n,-〉を、装置外部へ出力する(S34)。   Then, the selection unit 213-2 outputs the result data <v2-v3,3, n,-> to the outside of the apparatus (S34).

また、選択部213−2は、選択しなかったデータ〈v2+v3,1,n,2〉を、遅延部114−2に挿入する(S35)。   In addition, the selection unit 213-2 inserts the unselected data <v2 + v3,1, n, 2> into the delay unit 114-2 (S35).

第5サイクルの終了時における時系列データ処理装置200の内部の出力情報を図11に示す。   Output information inside the time-series data processing device 200 at the end of the fifth cycle is shown in FIG.

(第6サイクル)
第6サイクルにおいて、選択部213−2は、入力された〈v1*v2, 1,o,2〉と、遅延部114−2に格納されている〈v2+v3,1,n,2〉とについて、出力ポートの使用権の調停を行う。
(6th cycle)
In the sixth cycle, the selection unit 213-2 receives the input <v1 * v2, 1, o, 2> and <v2 + v3,1, n, 2> stored in the delay unit 114-2. For the output port.

ここで、後者の結果データ〈v2+v3,1,n,2〉のノード識別情報が自ノードを表しており、かつ、新旧識別情報は新処理を表している。そこで、選択部213−2は、この処理識別情報“1”に対応する通過完了表のエントリを参照し、その値が“N”であるため、この結果データを選択しない(S32)。   Here, the node identification information of the latter result data <v2 + v3,1, n, 2> represents the own node, and the old and new identification information represents a new process. Therefore, the selection unit 213-2 refers to the entry of the passage completion table corresponding to the process identification information “1”, and does not select the result data because the value is “N” (S32).

また、選択部213−2は、前者の結果データ〈v1*v2,1,o,2〉のノード識別情報が自ノードを表しており、新旧識別情報が旧処理を表しているため、この結果データを選択する(S32)。   In addition, the selection unit 213-2 obtains this result because the node identification information of the former result data <v1 * v2,1, o, 2> represents the own node, and the old and new identification information represents the old process. Data is selected (S32).

また、選択部213−2は、選択した〈v1*v2,1,o,2〉のノード識別情報が自ノードを表しており、新旧識別情報が旧処理を表しているため、この処理識別情報“1”に対応する通過完了表のエントリを“Y”に更新する(S33)。   Further, the selection unit 213-2 selects the process identification information because the selected node identification information of <v1 * v2,1, o, 2> represents the own node and the old and new identification information represents the old process. The entry in the passage completion table corresponding to “1” is updated to “Y” (S33).

そして、選択部213−2は、この結果データ〈v1*v2,1,o,2〉を、装置外部へ出力する(S34)。   Then, the selecting unit 213-2 outputs the result data <v1 * v2,1, o, 2> to the outside of the apparatus (S34).

また、選択部213−2は、選択しなかった〈v2+v3,1,n,2〉を、遅延部114−2に挿入する(S35)。   Further, the selection unit 213-2 inserts <v2 + v3,1, n, 2> that has not been selected into the delay unit 114-2 (S35).

第6サイクルの終了時における時系列データ処理装置200の内部の出力情報を図12に示す。   FIG. 12 shows output information inside the time-series data processing device 200 at the end of the sixth cycle.

(第7サイクル)
第7サイクルにおいて、選択部213−2は、遅延部114−2に格納されている〈v2+v3,1,n,2〉について、出力ポートの使用権の調停を行う。
(7th cycle)
In the seventh cycle, the selection unit 213-2 mediates the right to use the output port for <v2 + v3,1, n, 2> stored in the delay unit 114-2.

ここで、〈v2+v3,1,n,2〉のノード識別情報は自ノードを表しており、かつ、新旧識別情報は新処理を表している。そこで、選択部213−2は、その処理識別情報“1”に対応する通過完了表のエントリを参照し、その値が“Y”であるため、この結果データを選択する(S32)。   Here, the node identification information of <v2 + v3,1, n, 2> represents the own node, and the old and new identification information represents a new process. Therefore, the selection unit 213-2 refers to the entry of the passage completion table corresponding to the process identification information “1”, and selects the result data because the value is “Y” (S32).

そして、選択部213−2は、この結果データ〈v2+v3,1,n,2〉を、装置外部へ出力する(S34)。   Then, the selection unit 213-2 outputs the result data <v2 + v3,1, n, 2> to the outside of the apparatus (S34).

第7サイクルの終了時の、時系列データ処理装置200の内部の出力情報を図13に示す。   Output information inside the time-series data processing device 200 at the end of the seventh cycle is shown in FIG.

以上で、時系列データ処理装置200の具体的な動作の一例の説明を終了する。   Above, description of an example of the specific operation | movement of the time series data processing apparatus 200 is complete | finished.

この具体例において、時系列データ処理装置200は、時刻の若い順に、〈v2-v3,3,n,-〉、〈v1*v2, 1, o, 2〉、〈v2+v3, 1, n, 2〉の結果データを出力した。このように、時系列データ処理装置200は、旧処理の特定の結果データ〈v1*v2, 1, o, 2〉の次に、新処理の特定の結果データ〈v2+v3, 1, n, 2〉を出力することができる。   In this specific example, the time-series data processing device 200 is arranged in the order of increasing time, <v2-v3,3, n,->, <v1 * v2, 1, o, 2>, <v2 + v3, 1, n. , 2> result data was output. As described above, the time-series data processing device 200 includes the specific result data <v2 + v3, 1, n, new process after the specific result data <v1 * v2, 1, o, 2> of the old process. 2> can be output.

また、時系列データ処理装置200は、処理の変更指示に伴い処理部101−2に対して新処理が定義された第2サイクル以降も、有用で利用可能な旧処理の結果データ〈v1*v2, 1, o, 2〉を、第6サイクルにおいて装置外部に出力することができた。   The time-series data processing device 200 also provides useful and usable old process result data <v1 * v2 after the second cycle in which a new process is defined for the processing unit 101-2 in accordance with a process change instruction. , 1, o, 2> could be output to the outside of the apparatus in the sixth cycle.

これに対して、例えば、上述した関連技術では、新処理の書き込み時点で旧処理が停止される。あるいは、上述した特許文献1〜4には、新処理の動作開始後にも有用で利用可能な旧処理の結果データを出力することについての記載はない。したがって、本実施の形態は、関連技術に比べて、有用で利用可能な旧処理の結果データをより多く出力することができる。   In contrast, for example, in the related art described above, the old process is stopped at the time of writing the new process. Alternatively, Patent Documents 1 to 4 described above do not describe outputting the result data of the old process that is useful and usable even after the start of the operation of the new process. Therefore, this embodiment can output more useful and usable old process result data as compared with the related art.

次に、本発明の第2の実施の形態の効果について述べる。   Next, the effect of the second exemplary embodiment of the present invention will be described.

本発明の第2の実施の形態としての時系列データ処理装置は、時系列データ処理における処理内容の変更に伴い、出力の新旧切り替え前後の結果データを指定可能として、新旧の各処理による結果データの有用なものをより多く出力する。その際、時系列データ処理装置は、処理の結果データに付加する情報量の増大を抑えながら、新旧の各処理による結果データの出力を混在させることはない。   The time-series data processing apparatus according to the second embodiment of the present invention can specify the result data before and after the output switching between the new and old processes in accordance with the change of the processing contents in the time-series data processing. Output more useful stuff. At that time, the time-series data processing apparatus does not mix the output of the result data by the old and new processes while suppressing an increase in the amount of information added to the process result data.

その理由は、制御部が、最後の旧処理の結果データに対して、処理の種類を識別する処理識別情報、旧処理を示す新旧識別情報、および、待ち合わせのノード識別情報を付加する。それとともに制御部が、最初の新処理の結果データに、旧処理と同一の処理識別情報、新処理を示す新旧識別情報、および、旧処理の結果データとの待ち合わせのノード識別情報を付加するからである。そして、待ち合わせ場所として指定されたノード内の選択部が、変更対象の処理識別情報に対応付けて通過済でないことを表す情報を記憶する。そして選択部が、自ノードに到着した結果データまたは遅延部に格納されている結果データのノード識別情報が自ノードを示し、かつ、新旧識別情報が新処理を表していれば、その処理識別情報に対応する選択情報を参照して通過済でなければこれを選択しないからである。また、選択部は、それ以外の結果データについては、優先度にしたがって1つを選択して出力するからである。また、選択部は、選択した結果データのノード識別情報が自ノードを示し、かつ、新旧識別情報が旧処理を示す場合には、その処理識別情報に対応する選択情報を通過済に更新するからである。   The reason is that the control unit adds process identification information for identifying the type of process, new / old identification information indicating the old process, and waiting node identification information to the result data of the last old process. At the same time, the control unit adds the same process identification information as the old process, the new and old identification information indicating the new process, and the node identification information for waiting for the result data of the old process to the result data of the first new process. It is. And the selection part in the node designated as a meeting place memorize | stores the information showing that it has not passed by matching with the process identification information of change object. If the node identification information of the result data arriving at the own node or the result data stored in the delay unit indicates the own node and the new and old identification information indicates a new process, the selection unit indicates the process identification information. This is because the selection information corresponding to is not selected unless it has been passed. Further, the selection unit selects and outputs one of the other result data according to the priority. In addition, when the node identification information of the selected result data indicates the own node and the new and old identification information indicates the old process, the selection unit updates the selection information corresponding to the process identification information to “passed”. It is.

これにより、本実施の形態は、処理変更指示後、指定された最後の旧処理の結果データを外部に出力して旧処理が停止可能な状態になるまでは旧処理の結果データ列を出力し、指定された最初の新処理の結果データを先頭とする新処理の結果列を装置外部へ出力する。すなわち、処理の変更の前後において、旧処理、新処理の結果データが混在して装置外部に出力されることがない。また、本実施の形態は、処理変更指示に伴い新処理が動作を開始した後も、より多くの有用で利用可能な旧処理の結果データを出力する。   As a result, after the processing change instruction, this embodiment outputs the result data string of the old process until the specified result of the old process is externally output until the old process can be stopped. The new process result string starting from the designated first new process result data is output to the outside of the apparatus. That is, before and after the process change, the result data of the old process and the new process are not mixed and output outside the apparatus. Also, the present embodiment outputs more useful and usable result data of the old process even after the new process starts operating in accordance with the process change instruction.

しかも、本実施の形態は、旧処理から新処理へ変更の際に上述の効果を奏することにより、結果データに付加する必要のある情報量を、関連技術に比べて大幅に削減できる。その理由について説明する。   In addition, this embodiment can greatly reduce the amount of information that needs to be added to the result data by producing the above-described effect when changing from the old process to the new process. The reason will be described.

ここで、装置内で同時動作する処理数をNとし、そのうち新旧変更処理が同時進行する数をnとする。また、説明を簡単にするため、Nおよびn+1は、それぞれ2のべき乗とする。すると、結果データに付加される情報のうち、処理識別情報は、同時進行する新旧変更処理のn種類および新旧変更処理対象でない処理を識別できればよい。したがって、処理識別情報は、log(n+1)ビットで表すことができる。なお、log(X)は、2を底とするXの対数を表す。また、新旧識別情報は、新処理であるか旧処理であるかを区別できればよいので、1ビットで表すことができる。また、ネットワーク部から構成されるネットワークが2分木である場合は、ノード識別情報は、ネットワークの深さを表せばよい。ネットワークの深さは、log(N)で表される。したがって、ノード識別情報は、ceil(log(log(N)+1))ビットで表すことができる。ここで、ceil(X)は、Xを下回らない最小の整数を表す。また、ネットワーク部のエッジの本数は(2N−1)である。したがって、旧処理から新処理への変更に対応するために本実施の形態の時系列データ処理装置に追加されるワイヤの本数は、次式(1)で表される。Here, N is the number of processes that operate simultaneously in the apparatus, and n is the number of processes in which new and old change processes proceed simultaneously. Further, for simplicity of explanation, N and n + 1 are assumed to be powers of 2, respectively. Then, among the information added to the result data, the process identification information only needs to be able to identify n types of new and old change processes that are simultaneously progressing and processes that are not the target of the old and new change processes. Therefore, the process identification information can be represented by log 2 (n + 1) bits. Log 2 (X) represents the logarithm of X with 2 as the base. Further, since the new / old identification information only needs to be able to distinguish between the new process and the old process, it can be represented by 1 bit. In addition, when the network configured by the network unit is a binary tree, the node identification information may represent the depth of the network. The depth of the network is represented by log 2 (N). Therefore, the node identification information can be represented by ceil (log 2 (log 2 (N) +1)) bits. Here, ceil (X) represents the smallest integer not lower than X. The number of edges of the network part is (2N−1). Therefore, the number of wires added to the time-series data processing apparatus of the present embodiment in order to cope with the change from the old process to the new process is expressed by the following equation (1).

(2N−1)*(log(n+1)+1+ceil(log(log(N)+1)))
・・・(1)
さらに、各選択部に格納される選択情報は、新旧変更処理が同時進行する処理数だけ必要となるため、nビットである。また、装置内で同時動作する処理数がNであるため、ネットワークが2分木であれば、ネットワーク部の数は、N−1となる。したがって、選択部の数は、N−1である。このため、旧処理から新処理への変更に対応するために本実施の形態における選択部に追加される記憶素子の数は、次式(2)で表される。
(2N-1) * (log 2 (n + 1) + 1 + ceil (log 2 (log 2 (N) +1)))
... (1)
Furthermore, the selection information stored in each selection unit is n bits because the number of processes for which the old and new change processes are simultaneously required is required. In addition, since the number of processes simultaneously operating in the apparatus is N, if the network is a binary tree, the number of network units is N-1. Therefore, the number of selection units is N-1. Therefore, the number of storage elements added to the selection unit in the present embodiment in order to cope with the change from the old process to the new process is expressed by the following equation (2).

(N−1)*n・・・(2)
また、遅延部には、各種情報が付加された結果データが格納される。このとき、同じノードの遅延部で、複数の新旧処理ペアが同時に合流する可能性がある。このため、遅延部には、少なくとも結果データn個に付加される情報分の記憶素子が、旧処理から新処理への変更に対応するために追加される。前述のようにネットワーク部の数がN−1であるため、遅延部の数は、N−1である。そこで、旧処理から新処理への変更に対応するために本実施の形態における遅延部に追加される記憶素子の最小の数は、次式(3)で表される。
(N-1) * n (2)
The delay unit stores result data to which various information is added. At this time, there is a possibility that a plurality of old and new processing pairs join at the same time in the delay unit of the same node. For this reason, at least a storage element corresponding to information added to n result data is added to the delay unit in order to cope with a change from the old process to the new process. As described above, since the number of network units is N-1, the number of delay units is N-1. Therefore, the minimum number of storage elements added to the delay unit in the present embodiment in order to cope with the change from the old process to the new process is expressed by the following equation (3).

(N−1)*n*(log(n+1)+1+ceil(log(log(N)+1)))・・・(3)
これに対して、特許文献5〜6に記載された関連技術を組み合わせた時系列データ処理装置は、各処理部の出力データに、処理を識別する情報、待ち合わせ(同期)を行うネットワークのノードを識別する情報、および、出力予定時刻を追加する必要がある。ここで、処理数をN、新旧処理変更の同時進行数をnとすれば、処理を識別する情報は、log(n+1)ビットで表すことができる。また、ネットワークのノードの識別情報は、ネットワークが2分木であるとすれば、ceil(log(log(N)+1))ビットで表すことができる。また、出力予定時刻は、例えば64ビットで表すことができる。ネットワーク部のエッジの本数は、前述のように(2N−1)である。したがって、旧処理から新処理への変更に対応するために関連技術において追加されるワイヤの本数は、次式(4)で表される。
(N−1) * n * (log 2 (n + 1) + 1 + ceil (log 2 (log 2 (N) +1))) (3)
On the other hand, a time-series data processing device that combines related techniques described in Patent Documents 5 to 6 includes information for identifying processing and a network node that performs waiting (synchronization) in the output data of each processing unit. It is necessary to add information to be identified and scheduled output time. Here, if the number of processes is N and the number of simultaneous progresses of new and old process changes is n, the information for identifying the process can be represented by log 2 (n + 1) bits. Further, the identification information of the nodes of the network can be represented by ceil (log 2 (log 2 (N) +1)) bits if the network is a binary tree. Further, the scheduled output time can be represented by 64 bits, for example. The number of edges of the network part is (2N−1) as described above. Therefore, the number of wires added in the related art to cope with the change from the old process to the new process is expressed by the following equation (4).

(2N−1)*(log(n+1)+64+ceil(log(log(N)+1)))・・・(4)
また、関連技術の遅延部には、各種情報が付加された結果データが格納される。同じノードで複数の新旧処理ペアが同時に合流する可能性を考慮し、少なくとも結果データn個に付加される情報分の記憶素子が、旧処理から新処理への変更に対応するために遅延部に追加される。ここで、処理数がNであるため、ネットワークが2分木であれば、遅延部の数は、N−1である。このため、旧処理から新処理への変更に対応するために関連技術において遅延部に追加される記憶素子の最小の数は、次式(5)で表される。
(2N−1) * (log 2 (n + 1) + 64 + ceil (log 2 (log 2 (N) +1))) (4)
Further, the result data with various information added is stored in the delay section of the related art. Considering the possibility of multiple old and new processing pairs joining at the same node at the same time, at least the storage elements for the information added to the n result data are added to the delay unit to cope with the change from the old process to the new process. Added. Here, since the number of processes is N, if the network is a binary tree, the number of delay units is N-1. For this reason, the minimum number of storage elements added to the delay unit in the related art in order to cope with the change from the old process to the new process is expressed by the following equation (5).

(N−1)*n*(log(n+1)+64+ceil(log(log(N)+1)))・・・(5)
ここで、例えば、装置内で同時動作する処理数Nを128とする。また、装置内で同時進行する新旧変更処理数nを1つに制限する。すると、本実施の形態において、装置全体に追加が必要なワイヤ数は、式(1)により次のように算出される。
(2N−1)*(log(n+1)+1+ceil(log(log(N)+1)))
=1275(N=128, n=1)
一方、関連技術の組み合わせにおいて、装置全体に追加が必要なワイヤ数は、式(4)により次のように算出される。
(2N−1)*(log(n+1)+64+ceil(log(log(N)+1)))
=17340(N=128, n=1)
また、本実施形態において、装置全体として追加される記憶素子数は、式(2)および式(3)により次のように算出される。
(N−1)*n+(N−1)*n*(log(n+1)+1+ceil(log(log(N)+1)))=762(N=128, n=1)
一方、関連技術の組み合わせにおいて、装置全体として追加される記憶素子数は、式(5)により次のように算出される。
(N−1)*n*(log(n+1)+64+ceil(log(log(N)+1)))=8636(N=128, n=1)
この比較を図14に示す。このように、本実施の形態の時系列データ処理装置は、関連技術に比べて、結果データに追加する情報量を削減することができ、その結果、装置全体に必要な追加資源を大幅に削減している。
(N-1) * n * (log 2 (n + 1) + 64 + ceil (log 2 (log 2 (N) +1))) (5)
Here, for example, the number N of processes simultaneously operating in the apparatus is 128. Further, the number n of old and new change processes that proceed simultaneously in the apparatus is limited to one. Then, in the present embodiment, the number of wires that need to be added to the entire apparatus is calculated as follows using Equation (1).
(2N-1) * (log 2 (n + 1) + 1 + ceil (log 2 (log 2 (N) +1)))
= 1275 (N = 128, n = 1)
On the other hand, in the combination of related technologies, the number of wires that need to be added to the entire apparatus is calculated as follows using Equation (4).
(2N-1) * (log 2 (n + 1) + 64 + ceil (log 2 (log 2 (N) +1)))
= 17340 (N = 128, n = 1)
Further, in the present embodiment, the number of storage elements added as a whole apparatus is calculated as follows using Expression (2) and Expression (3).
(N−1) * n + (N−1) * n * (log 2 (n + 1) + 1 + ceil (log 2 (log 2 (N) +1))) = 762 (N = 128, n = 1)
On the other hand, in the combination of related technologies, the number of storage elements added as a whole apparatus is calculated as follows using Equation (5).
(N−1) * n * (log 2 (n + 1) + 64 + ceil (log 2 (log 2 (N) +1))) = 8636 (N = 128, n = 1)
This comparison is shown in FIG. As described above, the time-series data processing apparatus according to the present embodiment can reduce the amount of information added to the result data as compared with the related technology, and as a result, the additional resources necessary for the entire apparatus can be greatly reduced. doing.

なお、上述した本発明の第2の実施の形態において、装置内で同時進行する新旧変更処理の種類数を1つに限定する具体例について説明したが、装置内で複数の種類の処理について新旧変更処理が同時進行してもよい。   In the above-described second embodiment of the present invention, a specific example has been described in which the number of types of new and old change processes that proceed simultaneously in the apparatus is limited to one. However, a plurality of types of processes in the apparatus are old and new. The change process may proceed simultaneously.

また、上述した本発明の各実施の形態において、本発明の時系列データ処理装置を、FPGAのように再構成可能な回路素子を有するハードウェアによって構成する例を中心に説明した。この他、時系列データ処理装置は、各部の動作を、本発明のコンピュータ・プログラムとしてコンピュータ装置の記憶装置(記憶媒体)に格納しておき、係るコンピュータ・プログラムを当該CPUが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコードあるいは記憶媒体によって構成される。   Further, in each of the above-described embodiments of the present invention, the example in which the time-series data processing device of the present invention is configured by hardware having reconfigurable circuit elements such as an FPGA has been mainly described. In addition, the time-series data processing device stores the operation of each unit as a computer program of the present invention in a storage device (storage medium) of the computer device so that the CPU reads and executes the computer program. It may be. In such a case, the present invention is constituted by the code of the computer program or a storage medium.

また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。   Moreover, each embodiment mentioned above can be implemented in combination as appropriate.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2013年7月19日に出願された日本出願特願2013−150426を基礎とする優先権を主張し、その開示の全てをここに取り込む。
While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2013-150426 for which it applied on July 19, 2013, and takes in those the indications of all here.

100、200 時系列データ処理装置
101 処理部
111、211 ネットワーク部
112 伝達部
113、213 選択部
114 遅延部
121、221 制御部
600、700 時系列データ処理装置
601、701 処理部
611 制御部
621 選択部
631 同期部
701 処理部
731 ネットワーク部
732 伝達部
733 時刻比較部
734 遅延部
100, 200 Time-series data processing device 101 Processing unit 111, 211 Network unit 112 Transmission unit 113, 213 Selection unit 114 Delay unit 121, 221 Control unit 600, 700 Time-series data processing device 601, 701 Processing unit 611 Control unit 621 Selection Unit 631 synchronization unit 701 processing unit 731 network unit 732 transmission unit 733 time comparison unit 734 delay unit

本発明は、時系列データを処理する技術に関し、特に、時系列データに対する処理の内容が変化する時系列データ処理装置、時系列データ処理方法、および、プログラムに関する。 The present invention relates to a technique for processing time-series data, and more particularly to a time-series data processing apparatus, a time-series data processing method, and a program in which the content of processing on time-series data changes.

また、本発明のプログラムは、入力データに基づき第1の処理の結果データを出力する第1の処理から、入力データに基づき第2の処理の結果データを出力する第2の処理への変更指示を受信し、前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加し、前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加し、前記各ノードにおいて、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理または前記第2の処理により出力されて自ノードに到着した結果データおよび保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを遅延させる、をコンピュータ装置に実行させる。

In addition, the program of the present invention provides a change instruction from the first process that outputs the result data of the first process based on the input data to the second process that outputs the result data of the second process based on the input data. Of the first process result data and the result data determined to be output to the outside of the apparatus last (result data of the last old process), either the old process or the new process Additional information including information indicating the old process as the old and new identification information indicating that it is, and node identification information indicating the node in the apparatus that waits for the result data of the old process and the result data of the new process, and Information indicating the new process as the new / old identification information for the result data (result data of the first new process) that is first determined to be output to the outside of the apparatus among the result data of process 2 And additional information including the node identification information, and at each of the nodes, selection information representing information for selecting result data to be output from the own node is stored, and the first process or When selecting one of the result data output from the second process and arriving at its own node and the result data held and outputting it to another node or outside, it is added to each result data. Based on the additional information and the stored selection information, the result data of the last old process is selected before selecting the result data of the first new process, and the result of not selecting The computer apparatus is caused to delay the data.

Claims (10)

選択手段と遅延手段を備える複数のノードと、
入力データに対して第1の処理を実行することにより、第1の処理の結果データを出力する第1の処理手段と、
入力データに対して第2の処理を実行することにより、第2の処理の結果データを出力する第2の処理手段と、
前記第1の処理から前記第2の処理への変更指示を外部から受信したとき、前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加するとともに、前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加する制御手段と、備え、
前記選択手段は、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理手段または前記第2の処理手段から出力されて自ノードに到着した結果データおよび前記遅延手段に保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを前記遅延手段に挿入し、
前記遅延手段は、前記各ノードに含まれ、前記選択手段により選択されなかった結果データを保持することにより遅延させる、
時系列データ処理装置。
A plurality of nodes comprising selection means and delay means;
First processing means for outputting result data of the first processing by executing the first processing on the input data;
Second processing means for outputting result data of the second processing by executing the second processing on the input data;
When the change instruction from the first process to the second process is received from the outside, the result data determined to be output to the outside of the apparatus at the end of the result data of the first process (last In the device that waits for old processing result data and new processing result data as old / new identification information indicating that it is either old processing or new processing. And additional information including node identification information indicating the current node, and among the result data by the second process, the result data determined to be output to the outside of the apparatus first (result of the first new process) Control means for adding additional information including information indicating new processing as the new and old identification information and the node identification information to the data),
The selection means stores selection information representing information for selecting result data to be output from the own node, and is output from the first processing means or the second processing means and arrives at the own node. When the result data selected from the result data and the result data held in the delay means are selected and output to another node or outside, the additional information added to each result data is stored. Based on the selection information and selecting the result data of the last old process before selecting the result data of the first new process, and inserting the result data not selected into the delay means,
The delay means is delayed by holding result data included in each node and not selected by the selection means,
Time-series data processing device.
前記選択手段は、前記選択情報として、前記最後の旧処理の結果データが自ノードを通過済でないことを示す情報を記憶しておき、選択した結果データに付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が旧処理を表すとき、前記選択情報が前記通過済を示すよう更新し、到着した結果データおよび前記遅延手段に保持されている結果データについて、付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が新処理を表すとき、前記選択情報が前記通過済を示していない場合、該結果データを選択しないことを特徴とする請求項1に記載の時系列データ処理装置。   The selection means stores, as the selection information, information indicating that the result data of the last old process has not passed through its own node, and the node identification information added to the selected result data is automatically stored. When the new and old identification information indicates the old process, the selection information is updated to indicate that it has passed, and the result data that has arrived and the result data held in the delay means are added. The result data is not selected when the node identification information indicates a self-node and the new and old identification information indicates a new process, and the selection information does not indicate the passed. The time-series data processing device according to 1. 前記制御手段は、前記最後の旧処理の結果データおよび前記最初の新処理の結果データに対して、前記新旧識別情報および前記ノード識別情報に加えて、新旧変更対象の処理の種類を新旧変更対象でない処理から識別する処理識別情報を含む前記付加情報を付加し、
前記選択手段は、前記処理識別情報毎に前記選択情報を記憶し、選択した結果データに付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が旧処理を表すとき、該結果データに付加されている処理識別情報に対応する前記選択情報が前記通過済を示すよう更新し、到着した結果データおよび前記遅延手段に保持されている結果データについて、付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が新処理を表すとき、該結果データに付加されている前記処理識別情報に対応する前記選択情報が前記通過済を示していない場合、該結果データを選択しないことを特徴とする請求項2に記載の時系列データ処理装置。
In addition to the new / old identification information and the node identification information, the control means sets the type of the new / old change target process to the old / old change target for the result data of the last old process and the result data of the first new process. Adding the additional information including process identification information for identifying from a process that is not,
The selection means stores the selection information for each processing identification information, and when the node identification information added to the selected result data indicates the own node, and the old and new identification information represents an old process, The selection information corresponding to the process identification information added to the result data is updated so as to indicate the passing, and the arrived result data and the result data held in the delay means are added to the node When the identification information indicates the own node and the old and new identification information indicates a new process, and the selection information corresponding to the process identification information added to the result data does not indicate the passed, 3. The time-series data processing apparatus according to claim 2, wherein no result data is selected.
前記制御手段は、前記最後の旧処理の結果データの計算に必要な最後の入力データが入力されると、前記第1の処理手段に対して前記付加情報を送信することにより、該付加情報が付加された前記最後の旧処理の結果データを前記第1の処理手段に出力させるとともに、前記最初の新処理の結果データの計算に必要な最後の入力データが入力されると、前記第2の処理手段に対して前記付加情報を送信することにより、該付加情報が付加された前記最初の新処理の結果データを前記第2の処理手段に出力させることを特徴とする請求項1から請求項3のいずれか1項に記載の時系列データ処理装置。   When the last input data necessary for calculation of the result data of the last old process is input, the control means transmits the additional information to the first processing means, so that the additional information is When the added result data of the last old process is output to the first processing means and the last input data necessary for calculation of the result data of the first new process is input, the second data 2. The data processing apparatus according to claim 1, wherein the second processing unit outputs the result data of the first new process to which the additional information is added by transmitting the additional information to a processing unit. 4. The time-series data processing device according to any one of items 3. 前記制御手段は、前記最後の旧処理の結果データを計算するのに必要な最後の入力データが入力されたタイミングを、前記第1の処理手段または前記第2の処理手段の処理状況に関する情報、もしくは、前記結果データの出力状況に関する情報に基づいて判定するとともに、前記最初の新処理の結果データを計算するのに必要な最後の入力データが入力されたタイミングを、前記第1の処理手段または前記第2の処理手段の処理状況に関する情報、もしくは、前記結果データの出力状況に関する情報に基づいて判定することを特徴とする請求項1から請求項4のいずれか1項に記載の時系列データ処理装置。   The control means is information about the processing status of the first processing means or the second processing means, the timing at which the last input data necessary for calculating the result data of the last old processing is input, Alternatively, it is determined based on information related to the output status of the result data, and the timing at which the last input data necessary for calculating the result data of the first new process is input is determined by the first processing means or 5. The time-series data according to claim 1, wherein the time-series data is determined based on information on a processing status of the second processing unit or information on an output status of the result data. Processing equipment. 前記制御手段は、前記第1の処理手段に対して、前記最後の旧処理の結果データの出力以降、結果データを出力しないよう指示する情報を送信するとともに、前記第2の処理手段に対して、前記最初の新処理の結果データの出力以前、結果データを出力しないよう指示する情報を送信することを特徴とする請求項1から請求項5のいずれか1項に記載の時系列データ処理装置。   The control means transmits information instructing the first processing means not to output the result data after the output of the result data of the last old process, and to the second processing means. 6. The time-series data processing device according to claim 1, wherein information instructing not to output the result data is transmitted before the output of the result data of the first new process. . 入力データに基づき第1の処理の結果データを出力する第1の処理から、入力データに基づき第2の処理の結果データを出力する第2の処理への変更指示を受信すると、
前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加し、
前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加し、
前記各ノードにおいて、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、前記第1の処理または前記第2の処理により出力されて自ノードに到着した結果データおよび保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを遅延させる、時系列データ処理方法。
When receiving a change instruction from the first process that outputs the result data of the first process based on the input data to the second process that outputs the result data of the second process based on the input data,
Of the result data of the first process, the result data determined to be the last output to the outside of the apparatus (the result data of the last old process) is either the old process or the new process Additional information including information indicating the old process as the old and new identification information indicating, and node identification information indicating the node in the apparatus that waits for the result data of the old process and the result data of the new process,
Information indicating new processing as the new / old identification information with respect to result data (result data of the first new processing) that is first determined to be output to the outside of the apparatus among the result data of the second processing; , Adding additional information including the node identification information,
In each of the nodes, selection information representing information for selecting result data to be output from the own node is stored, and the result that is output by the first process or the second process and arrives at the own node When selecting one of the data and the result data to be held and outputting it to another node or the outside, the additional information added to each result data and the stored selection information A time-series data processing method that selects the result data of the last old process before selecting the result data of the first new process, and delays the result data not selected based on the result data.
前記各ノードは、前記選択情報として、前記最後の旧処理の結果データが自ノードを通過済でないことを示す情報を記憶しておき、選択した結果データに付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が旧処理を表すとき、前記選択情報が前記通過済を示すよう更新し、到着した結果データおよび保持されている結果データについて、付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が新処理を表すとき、前記選択情報が前記通過済を示していない場合、該結果データを選択しない、請求項7に記載の時系列データ処理方法。   Each node stores, as the selection information, information indicating that the result data of the last old process has not passed through its own node, and the node identification information added to the selected result data is automatically stored. When the new and old identification information indicates an old process, the selection information is updated so as to indicate passing, and the node identification added to the arrived result data and the retained result data is indicated. The time-series data processing according to claim 7, wherein when the information indicates a local node and the new / old identification information indicates a new process, the result data is not selected if the selection information does not indicate the passed. Method. 入力データに基づき第1の処理の結果データを出力する第1の処理から、入力データに基づき第2の処理の結果データを出力する第2の処理への変更指示を受信すると、
前記第1の処理の結果データのうち最後に装置外部へ出力されるものであると判定した結果データ(最後の旧処理の結果データ)に対して、旧処理および新処理のいずれかであることを表す新旧識別情報として旧処理を表す情報と、旧処理の結果データおよび新処理の結果データを待ち合わせる装置内のノードを示すノード識別情報とを含む付加情報を付加し、
前記第2の処理による結果データのうち最初に装置外部へ出力されるものであると判定した結果データ(最初の新処理の結果データ)に対して、前記新旧識別情報として新処理を表す情報と、前記ノード識別情報とを含む付加情報を付加し、
前記各ノードにおいて、自ノードからの出力対象となる結果データを選択するための情報を表す選択情報を記憶し、
前記第1の処理または前記第2の処理により出力されて自ノードに到着した結果データおよび保持される結果データのうちいずれかの結果データを選択して他のノードまたは外部に出力する際に、各結果データに付加された前記付加情報と、記憶している前記選択情報とに基づいて、前記最初の新処理の結果データを選択するより前に前記最後の旧処理の結果データを選択するとともに、選択しなかった結果データを遅延させること、
をコンピュータ装置に実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
When receiving a change instruction from the first process that outputs the result data of the first process based on the input data to the second process that outputs the result data of the second process based on the input data,
Of the result data of the first process, the result data determined to be the last output to the outside of the apparatus (the result data of the last old process) is either the old process or the new process Additional information including information indicating the old process as the old and new identification information indicating, and node identification information indicating the node in the apparatus that waits for the result data of the old process and the result data of the new process,
Information indicating new processing as the new / old identification information with respect to result data (result data of the first new processing) that is first determined to be output to the outside of the apparatus among the result data of the second processing; , Adding additional information including the node identification information,
In each of the nodes, selection information representing information for selecting result data to be output from the own node is stored,
When selecting any one of the result data output from the first process or the second process and arriving at its own node and the result data held and outputting it to another node or outside, Based on the additional information added to each result data and the selection information stored, the result data of the last old process is selected before the result data of the first new process is selected. , Delaying the result data not selected,
A computer-readable recording medium on which a program for causing a computer device to execute is recorded.
前記選択情報の記憶は、前記選択情報として、前記最後の旧処理の結果データが自ノードを通過済でないことを示す情報を記憶し、
前記結果データを選択して出力する際に、選択した結果データに付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が旧処理を表すとき、前記選択情報が前記通過済を示すよう更新し、到着した結果データおよび保持されている結果データについて、付加されている前記ノード識別情報が自ノードを示し、かつ、前記新旧識別情報が新処理を表すとき、前記選択情報が前記通過済を示していない場合、該結果データを選択しない、請求項9に記載のコンピュータ読取り可能な記録媒体。
The storage of the selection information stores, as the selection information, information indicating that the result data of the last old process has not passed through its own node,
When the result data is selected and output, when the node identification information added to the selected result data indicates the own node and the new and old identification information indicates an old process, the selection information is passed. For the result data that has been updated to indicate completion and arrived and retained result data, when the added node identification information indicates the own node and the new and old identification information indicates a new process, the selection information The computer-readable recording medium according to claim 9, wherein when the data does not indicate the passing, the result data is not selected.
JP2015527177A 2013-07-19 2014-07-15 Time-series data processing device, time-series data processing method, and program Active JP6394599B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013150426 2013-07-19
JP2013150426 2013-07-19
PCT/JP2014/003736 WO2015008481A1 (en) 2013-07-19 2014-07-15 Time series data processing device, time series data processing method, and computer-readable storage medium

Publications (2)

Publication Number Publication Date
JPWO2015008481A1 true JPWO2015008481A1 (en) 2017-03-02
JP6394599B2 JP6394599B2 (en) 2018-09-26

Family

ID=52345957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015527177A Active JP6394599B2 (en) 2013-07-19 2014-07-15 Time-series data processing device, time-series data processing method, and program

Country Status (2)

Country Link
JP (1) JP6394599B2 (en)
WO (1) WO2015008481A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7102142B2 (en) * 2017-12-27 2022-07-19 株式会社東芝 How to switch between monitoring control system and monitoring control system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001309167A (en) * 2000-04-20 2001-11-02 Noritsu Koki Co Ltd Time series data processing unit
US20090024427A1 (en) * 2007-07-19 2009-01-22 Shan Jerry Z Analyzing time series data that exhibits seasonal effects
JP2013030906A (en) * 2011-07-27 2013-02-07 Fujitsu Ltd Programmable logic device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001309167A (en) * 2000-04-20 2001-11-02 Noritsu Koki Co Ltd Time series data processing unit
US20090024427A1 (en) * 2007-07-19 2009-01-22 Shan Jerry Z Analyzing time series data that exhibits seasonal effects
JP2013030906A (en) * 2011-07-27 2013-02-07 Fujitsu Ltd Programmable logic device

Also Published As

Publication number Publication date
JP6394599B2 (en) 2018-09-26
WO2015008481A1 (en) 2015-01-22

Similar Documents

Publication Publication Date Title
US9418096B2 (en) Control method, and information processing system
EP1861786B1 (en) Enforcing strongly-ordered requests in a weakly-ordered processing system
WO2012077704A1 (en) Debug stub server, debugging method and program
US9104320B2 (en) Data integrity protection in storage volumes
JPH03116382A (en) Logic circuit simulator and method of detecting spike of the same
US8874966B1 (en) Storage device error simulator tool
JP6394599B2 (en) Time-series data processing device, time-series data processing method, and program
JP6138375B2 (en) controller
US20130262383A1 (en) Control method and storage controller apparatus
CN107204922B (en) Apparatus and method for filtering transactions
JP6036835B2 (en) Time-series data processing device, time-series data processing method, and time-series data processing program
CN108734398B (en) Task flow synchronization control method and device, storage medium and electronic equipment
JP6040980B2 (en) Time-series data processing device, time-series data processing method, and time-series data processing program
US10747546B2 (en) Distributed allocation device, distributed allocation system, and distributed allocation method
CN114253718A (en) Data processing method and device, electronic equipment and storage medium
KR101552119B1 (en) OPTIMAL PHASING OF NODES SEARCH SYSTEM FOR EtherCAT
JP2003015968A (en) Bus simulator
US10416888B2 (en) Parallel processing device, method for controlling parallel processing device, and controller used in parallel processing device
JP6473023B2 (en) Performance evaluation module and semiconductor integrated circuit incorporating the same
US20130132692A1 (en) Storage devices and storage systems
JP5697102B2 (en) Configuration apparatus and configuration method of image processing system
JP6040979B2 (en) Time-series data processing device, time-series data processing method, and time-series data processing program
JP3813756B2 (en) Programmable controller
KR20060080666A (en) Apparatus and method for load sharing in multi processor systems
JPWO2013111547A1 (en) Route control device, control information generation method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180813

R150 Certificate of patent or registration of utility model

Ref document number: 6394599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150