JP5644060B2 - Data processing device - Google Patents

Data processing device Download PDF

Info

Publication number
JP5644060B2
JP5644060B2 JP2009079110A JP2009079110A JP5644060B2 JP 5644060 B2 JP5644060 B2 JP 5644060B2 JP 2009079110 A JP2009079110 A JP 2009079110A JP 2009079110 A JP2009079110 A JP 2009079110A JP 5644060 B2 JP5644060 B2 JP 5644060B2
Authority
JP
Japan
Prior art keywords
data
program module
synchronization
integration
data processing
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.)
Active
Application number
JP2009079110A
Other languages
Japanese (ja)
Other versions
JP2010231556A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2009079110A priority Critical patent/JP5644060B2/en
Publication of JP2010231556A publication Critical patent/JP2010231556A/en
Application granted granted Critical
Publication of JP5644060B2 publication Critical patent/JP5644060B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のプログラムモジュールを同期させてデータ処理を行うデータ処理装置に関する。   The present invention relates to a data processing apparatus that performs data processing by synchronizing a plurality of program modules.

複雑なデータ処理を行う場合に、複数の装置やプログラムモジュールを組み合わせることでその処理を行うシステムが知られている。こうしたシステムで周期的なデータ処理を行う場合には、各装置やプログラムモジュールを同期させて、適切なタイミングで処理を行う必要がある。特許文献1に記載されている技術では、第1、第2のECUからは出力結果に時間データを付して第3のECUへと送信し、第3のECUは、第1のECUと第2のECUの出力結果中の時間データの差が所定時間内の場合に、それらを利用した処理を行うというものである。   A system is known that performs complex data processing by combining a plurality of devices and program modules. When periodic data processing is performed in such a system, it is necessary to synchronize each device and program module and perform processing at an appropriate timing. In the technique described in Patent Document 1, time data is attached to output results from the first and second ECUs and transmitted to the third ECU, and the third ECU is connected to the first ECU and the first ECU. When the difference between the time data in the output results of the two ECUs is within a predetermined time, processing using them is performed.

特開2005−201144号公報JP 2005-2011144 A

この特許文献1の技術では、所定時間内に出力されたデータを用いて処理を行うことは可能となるものの、例えば、各ECUの処理を確実に同期させるものではない。システムの設計段階でこれらの同期周期を設定する手法もあるが、システム更新や統合の度に同期周期の設定を見直す必要があり、煩雑になる。また、システム内に同期周期の異なるプロセスが存在するような場合や同期周期が可変のプロセスが存在するような場合には対応が困難である。 In the technique of Patent Document 1, although it is possible to perform processing using data output within a predetermined time, for example, the processing of each ECU is not reliably synchronized. Although there is a method of setting these synchronization periods at the system design stage, it is necessary to review the setting of the synchronization period every time the system is updated or integrated, which is complicated. In addition, it is difficult to cope with the case where there are processes with different synchronization periods in the system or when there are processes with variable synchronization periods.

そこで、本発明は、プログラムモジュール間の同期周期を自動的に設定して制御することを可能としたデータ処理装置を提供することを課題とする。 Therefore, an object of the present invention is to provide a data processing apparatus that can automatically set and control a synchronization period between program modules.

上記課題を解決するため、本発明に係るデータ処理装置は、複数のプログラムモジュール間で、タイムスタンプが割り当てられたデータの授受を行うデータ処理装置において、各プログラムモジュールにおける、前記データ授受を行う他のプログラムモジュールとの接続関係基づいて、同じタイムスタンプのデータ同士を用いることで同期処理を行うプログラムモジュールを1つの同期グループとして形成させる統合用プログラムモジュールを備えており、この統合用プログラムモジュールは、各同期グループが前記接続関係に基づいて設定した同期周期で作動するよう各プログラムモジュールの処理タイミングを調整して処理を行わせることを特徴とする。 To solve the above problems, the data processing apparatus according to the present invention, among a plurality of program modules, the data process unit for exchanging data timestamp is assigned, in each program module, and exchanges the data based on the connection relationship with other program modules, provided with a single integrated program modules Ru is formed as a synchronization group program modules for performing a synchronization process by using the data between the same timestamp, the integration program The module is characterized in that the processing is performed by adjusting the processing timing of each program module so that each synchronization group operates in a synchronization cycle set based on the connection relationship .

各プログラムモジュールは、個々に識別符号を有しており、統合用プログラムモジュールは、各プログラムモジュールが起動処理を行う際に、自身のプログラムモジュールの起動と自身のプログラムモジュールが接続を希望する他のプログラムモジュールとを、当該識別符号を用いて通知させることにより、前記接続関係をたどってこの形成を行うとよい。 Each program module individually has an identification code, and when the program module performs an activation process, each program module activates its own program module and other program modules that the program module wishes to connect to This formation may be performed by following the connection relationship by notifying the program module using the identification code .

本発明によれば、統合用プログラムモジュールが、各モジュールのデータ授受の接続関係に基づいてデータ同期が必要なモジュールを区分けし、同期グループとしてまとめて統合するので、自動的に同期グループの統合を行うことができるので、同期周期の異なるプロセスが含まれている場合もそれぞれを最適な同期周期で動作させることができる。また、同期周期が可変のプロセスが存在する場合にも、周期の変化に対応した動作が可能である。そのため、システム更新や統合も容易になる。識別符号を用いてこの同期処理の統合を行うことで統合処理が容易になり、利便性が向上する。   According to the present invention, the integration program module classifies the modules that require data synchronization based on the data transmission / reception connection relationship of the modules and integrates them together as a synchronization group. Therefore, even when processes having different synchronization cycles are included, each can be operated with an optimum synchronization cycle. Further, even when there is a process with a variable synchronization period, an operation corresponding to the change in the period is possible. Therefore, system update and integration are easy. By integrating the synchronization processing using the identification code, the integration processing becomes easy and convenience is improved.

本発明に係るデータ処理装置の第1の実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 1st Embodiment of the data processor which concerns on this invention. データ構造を説明する図である。It is a figure explaining a data structure. 本発明に係るデータ処理装置における同期処理の課題を説明する図である。It is a figure explaining the subject of the synchronous process in the data processor which concerns on this invention. 本発明に係るデータ処理装置における同期グループを説明する図である。It is a figure explaining the synchronous group in the data processor concerning the present invention. 統合用プログラムモジュールによる統合処理を説明する図である。It is a figure explaining the integration process by the program module for integration. 本発明に係るデータ処理装置による緊急停止通知機能を説明する図である。It is a figure explaining the emergency stop notification function by the data processor concerning the present invention. 本発明に係るデータ処理装置による自動停止伝播機能を説明する図である。It is a figure explaining the automatic stop propagation function by the data processor concerning the present invention. 本発明に係るデータ処理装置による動作周期検証機能について説明する図である。It is a figure explaining the operation period verification function by the data processor concerning the present invention. 本発明に係るデータ処理装置による保守機能の階層処理を説明する図である。It is a figure explaining the hierarchy process of the maintenance function by the data processor which concerns on this invention.

以下、添付図面を参照して本発明の好適な実施の形態について詳細に説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の参照番号を附し、重複する説明は省略する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described in detail with reference to the accompanying drawings. In order to facilitate the understanding of the description, the same reference numerals are given to the same components in the drawings as much as possible, and duplicate descriptions are omitted.

図1は、本発明に係るデータ処理装置の第1の実施形態の構成を示すブロック図である。このデータ処理装置は、車両用のデータ処理装置であり、図示していないカメラからの入力画像(動画像)を基に、特徴点抽出を用いて、歩行者検出、姿勢推定等を行うものである。各プログラムモジュール(PU:Processing Unit)1〜4、7、9は、任意のユーザーアルゴリズムを実行するアルゴリズム実行部を中心に構成され、必要に応じてその入出力のため、任意のデータ(11〜13、31、32)を指定した別のPUに要求するデータ要求部と、別のPUの要求に応じてデータ(11〜13、31、32)を送信するデータ出力部とを備えている。   FIG. 1 is a block diagram showing a configuration of a first embodiment of a data processing apparatus according to the present invention. This data processing apparatus is a data processing apparatus for vehicles, and performs pedestrian detection, posture estimation, etc. using feature point extraction based on an input image (moving image) from a camera (not shown). is there. Each of the program modules (PU: Processing Unit) 1 to 4, 7, and 9 is mainly configured by an algorithm execution unit that executes an arbitrary user algorithm. 13, 31, 32), and a data output unit that transmits data (11-13, 31, 32) in response to a request from another PU.

このうちPU7は、他のPU(1〜4、9)を自動的に接続して、そのデータ授受に基づいて前後のPU間の接続関係をたどり、同期テーブルを自動生成する統合機能を有している。PU1は、入力画像を受けて前処理等を行うものであり、その動作周期は30msである。PU3は、画像中の特徴点を抽出するものであり、その動作周期は50msである。PU2は、特徴点抽出結果を基にして歩行者を検出するものであり、その動作周期は150msである。PU4は、特徴点抽出結果を基にして自車両の姿勢を推定するものであり、その動作周期は500msである。PU9は、PU1で処理した画像データの任意のデータを表示するものである。   Of these, PU7 has an integrated function that automatically connects other PUs (1 to 4, 9), traces the connection relationship between previous and next PUs based on the data exchange, and automatically generates a synchronization table. ing. PU1 receives an input image and performs preprocessing and the like, and its operation cycle is 30 ms. PU3 extracts feature points in the image, and its operation cycle is 50 ms. PU2 detects a pedestrian based on the feature point extraction result, and its operation cycle is 150 ms. The PU 4 estimates the posture of the host vehicle based on the feature point extraction result, and its operation cycle is 500 ms. The PU 9 displays arbitrary data of the image data processed by the PU 1.

このPU7が自動生成した同期テーブルに基づき、上記実施形態においては、PU1〜3がGroup0として1つの同期グループ5を形成する一方、PU1、3、4がGroup1として1つの同期グループ6を形成する。同期グループ5は、周期150msで同期する一方、グループ6は、周期500msで同期する。PU9は、これらに対して独立して別個の周期で稼働する。   Based on the synchronization table automatically generated by the PU 7, in the above embodiment, the PUs 1 to 3 form one synchronization group 5 as Group 0, while the PUs 1, 3, and 4 form one synchronization group 6 as Group 1. Synchronization group 5 synchronizes with a period of 150 ms, while group 6 synchronizes with a period of 500 ms. The PU 9 operates independently of these in a separate cycle.

次に、具体的な統合手法について説明する。図2は、各データ11〜13、31、32のデータ構造を説明する図である。各データはヘッダ部H、グループID記述部Gとデータ部Dからなる。ヘッダ部Hには、出力元のPUを識別する情報が記載されているほか、他のPUと同期する必要の有無が記載されている。以下、図3に示されるようなデータ処理装置を例に説明する。このデータ処理装置は、カメラ90で取得した画像を基にして自動運転を行うシステムである。本システムは、画像からPU20が特徴点を抽出し、その特徴点データを利用して、PU10による障害物検出、PU30による自己位置推定を実施する。PU40は、障害物との衝突回避動作を行う必要性を判断して、非常停止等の衝突回避動作を実行する。PU50は、現在位置や設定された目的地情報にもとづいて経路案内のための経路計画を作成する。   Next, a specific integration method will be described. FIG. 2 is a diagram for explaining the data structure of each of the data 11 to 13, 31 and 32. Each data includes a header part H, a group ID description part G, and a data part D. In the header portion H, information for identifying the output source PU is described, and whether or not it is necessary to synchronize with other PUs is described. Hereinafter, a data processing apparatus as shown in FIG. 3 will be described as an example. This data processing apparatus is a system that performs automatic operation based on an image acquired by a camera 90. In this system, the PU 20 extracts feature points from the image, and using the feature point data, the obstacle detection by the PU 10 and the self-position estimation by the PU 30 are performed. The PU 40 determines the necessity of performing a collision avoidance operation with an obstacle, and executes a collision avoidance operation such as an emergency stop. The PU 50 creates a route plan for route guidance based on the current position and the set destination information.

このシステムにおいては、障害物判定で判定した障害物位置と自己位置推定とで推定した現在位置とが同時刻のものでないと、衝突回避判定や経路計画において正しい判定を行うことができない。そこで、障害物検出を行うPU10と自己位置推定を行うPU30とは同期している必要がある。一方、PU40による非常停止処理はこれより短い周期で実行することが可能である。このシステム全体を同期させると、最も処理速度の遅いPU30の自己位置推定の周期である5Hzで動作させることになるが、緊急回避を行うには同期速度が遅すぎる。   In this system, if the obstacle position determined by the obstacle determination and the current position estimated by the self-position estimation are not at the same time, correct determination cannot be performed in collision avoidance determination or route planning. Therefore, the PU 10 that performs obstacle detection and the PU 30 that performs self-position estimation need to be synchronized. On the other hand, the emergency stop process by the PU 40 can be executed in a shorter cycle. When this entire system is synchronized, it operates at 5 Hz, which is the self-position estimation period of the PU 30 with the slowest processing speed, but the synchronization speed is too slow for emergency avoidance.

本発明によれば、図示していない統合PUにより、各PUの接続関係に基づき、図4に示されるように、PU10、PU40を同期グループとして、周期15Hzで同期させる一方、PU30、50は、別の同期グループとして周期5Hzで同期させる。具体的には、カメラ90からのデータにタイムスタンプを割り当て、これに対応するデータについては、同じタイムスタンプを継承させる。同じタイムスタンプのデータ同士を用いることで同期をとることができる。例えば、カメラからの出力データを画像(1)、画像(2)、画像(3)、…、画像(n)とすると、PU20による特徴点抽出処理は、カメラ90に対して動作周期が半分なので、入力データは、画像(1)、画像(3)、画像(5)、…、画像(2m−1)となり、出力データは、特徴点(1)、特徴点(3)、特徴点(5)、…、特徴点(2m−1)となる。   According to the present invention, as shown in FIG. 4, the PU 10 and PU 40 are synchronized with a synchronization group as shown in FIG. It synchronizes with a period of 5 Hz as another synchronization group. Specifically, a time stamp is assigned to data from the camera 90, and the same time stamp is inherited for data corresponding thereto. Synchronization can be achieved by using data of the same time stamp. For example, if the output data from the camera is image (1), image (2), image (3),..., Image (n), the feature point extraction processing by the PU 20 is half the operation cycle with respect to the camera 90. The input data is image (1), image (3), image (5),..., Image (2m−1), and the output data is feature point (1), feature point (3), feature point (5). , ..., the feature point (2m-1).

同様に、PU10における障害物検出処理の入力データは、画像(1)、画像(3)、画像(5)、…、画像(2m+1)と、特徴点(1)、特徴点(3)、特徴点(5)、…、特徴点(2m+1)であり、出力データは、障害物(1)、障害物(3)、障害物(5)、…、障害物(2m+1)となる。一方、PU30における自己位置推定の動作周期は、カメラ90の1/6なので、その入力データは、特徴点(1)、特徴点(7)、特徴点(13)、…、特徴点(6j+1)であり、出力データは、現在位置(1)、現在位置(7)、現在位置(13)、…、現在位置(6j+1)となる。   Similarly, the input data of the obstacle detection process in the PU 10 includes an image (1), an image (3), an image (5),..., An image (2m + 1), a feature point (1), a feature point (3), and a feature. The point (5), ..., the feature point (2m + 1), and the output data are the obstacle (1), the obstacle (3), the obstacle (5), ..., the obstacle (2m + 1). On the other hand, since the operation period of self-position estimation in the PU 30 is 1/6 of that of the camera 90, the input data is the feature point (1), the feature point (7), the feature point (13), ..., the feature point (6j + 1). The output data is the current position (1), the current position (7), the current position (13), ..., the current position (6j + 1).

PU40、PU50の各処理は、PU10やPU30より速い動作周期で行うことができる。この場合、所望のタイムスタンプの入力データが得られない場合があるが、受信した入力データから所定の補間処理や予測処理により所望のタイムスタンプの入力データに相当するデータを求めて、使用するとよい。これにより、各PUを効率よく同期させることができる。   Each process of PU40 and PU50 can be performed with an operation cycle faster than PU10 and PU30. In this case, input data with a desired time stamp may not be obtained. However, data corresponding to the input data with the desired time stamp may be obtained from the received input data by a predetermined interpolation process or prediction process and used. . Thereby, each PU can be synchronized efficiently.

統合用PUによる統合処理を図5(a)、(b)を参照して説明する。ここで、各PU(15、25、35)には識別符号が付されている。図5(a)に示されるように、各PU(15、25、35)は、初回起動時に、統合用PU55に対して、自身の起動と自身が接続を希望するPU(そのPUがデータ要求を行うPU)を、この識別符号を用いて通知する。なお、同期が不要な場合には、他のPUの識別符号は通知しなくともよいし、同期が不要な旨を明示して通知する形式をとってもよい。統合用PU55は、こうして各PUから寄せられた接続を希望するPUの情報に基づいて各PUの接続関係をたどり、同期テーブルを生成する。各PUの接続関係をたどる手法は、前処理側から後処理側へと処理の方向にたどっていってもよいし、後処理側から前処理側へと処理の方向とは逆方向にたどっていってもよい。   The integration process by the integration PU will be described with reference to FIGS. Here, each PU (15, 25, 35) is assigned an identification code. As shown in FIG. 5 (a), each PU (15, 25, 35), when it is first activated, is the PU that it wishes to activate and connect to the integration PU 55 (the PU requests a data request). Is notified using this identification code. When synchronization is not required, the identification code of another PU may not be notified, or a format may be used in which notification is given that synchronization is not required. The integration PU 55 traces the connection relationship of each PU based on the information of the PUs desired to connect from each PU in this way, and generates a synchronization table. The method of tracing the connection relationship of each PU may follow the direction of processing from the preprocessing side to the postprocessing side, or from the postprocessing side to the preprocessing side in the opposite direction to the processing direction. May be.

そして、統合用PU55は、接続を希望されたPUがすでに起動済みである場合には、その旨を識別符号により、PU(25、35)に対して通知する。これにより、PU間でネットワークが形成される。次回以降のサイクルにおいては、生成された同期テーブルに基づいて統合用PU55が各PUの起動タイミングを制御することで、各PUを同期させる。   Then, when the PU for which connection is desired has already been activated, the integration PU 55 notifies the PU (25, 35) to that effect using an identification code. Thereby, a network is formed between PUs. In the next and subsequent cycles, the integration PU 55 controls the activation timing of each PU based on the generated synchronization table to synchronize each PU.

各PUのいずれかが処理速度を変更可能な場合には、統合用PU55は、同期テーブルに基づいて当該PUの変更に合わせた同期処理の変更を行うことができる。例えば、こうした処理速度の変更としては、車線認識処理において、高速道路では、移動速度が高速になるので、白線の認識を簡易に行うことで、周期を高速化させる一方、一般道路では、周期を下げて認識処理に避ける時間を長くとることで、少し剥げた白線でも認識できるようにする。このように一部のPUの処理周期が変更された場合でも、本発明によれば各PUを自動的に同期させて動作させることができる。さらに、本発明によれば、図1に示されるPU9のように他のPUと同期を行う必要のないPUについては独立して動作させるので、効率よく動作させることができる。   When any of the PUs can change the processing speed, the integration PU 55 can change the synchronization process in accordance with the change of the PU based on the synchronization table. For example, as a change in the processing speed, in the lane recognition process, the moving speed is high on a highway, so the white line is easily recognized to speed up the cycle, while on a general road, the cycle is speeded up. By lowering the time to avoid the recognition process, it is possible to recognize even a slightly stripped white line. Thus, even when the processing cycle of some PUs is changed, according to the present invention, each PU can be automatically synchronized and operated. Furthermore, according to the present invention, PUs that do not need to be synchronized with other PUs, such as PU 9 shown in FIG. 1, are operated independently, so that they can be operated efficiently.

以下、本発明に係るデータ処理装置における別の機能のいくつかを例示する。図6は、本発明に係るデータ処理装置による緊急停止通知機能を説明する図である。このデータ処理装置は、例えば、サーバ150とクライアント100とが協働して処理をおこなうものであり、統合用PU151は、サーバ150上で稼働している。データ処理用のPUは、サーバ150上で稼働するPU152と、クライアント100上で稼働するPU110で構成される。そして、サーバ150、PU100のそれぞれで、診断用アプリケーション153、113が作動している。クライアント用の診断用アプリケーション113は、周期的にサーバ150の診断用アプリケーション153と通信するが、診断用アプリケーション153はタイムアウト監視を行う。   Hereinafter, some of the other functions in the data processing apparatus according to the present invention will be exemplified. FIG. 6 is a diagram for explaining an emergency stop notification function by the data processing apparatus according to the present invention. In this data processing apparatus, for example, the server 150 and the client 100 cooperate to perform processing, and the integration PU 151 operates on the server 150. The data processing PU is composed of a PU 152 operating on the server 150 and a PU 110 operating on the client 100. The diagnostic applications 153 and 113 are operating on the server 150 and the PU 100, respectively. The client diagnosis application 113 periodically communicates with the diagnosis application 153 of the server 150, but the diagnosis application 153 performs timeout monitoring.

タイムアウトが発生しない場合には、通常の処理を継続するが、タイムアウトが発生した場合には、診断用アプリケーション153、113はそれぞれ動作中のPU152、110に対してシグナルを送信する。図6に示される例では、診断用アプリケーション113からPU110に対してシグナルS2が送信される。受診したPU110では、異常時処理として登録された処理を実行する。図6に示される例では、メイン関数111が異常時処理ハンドラ112を呼び出して所定の異常時処理を実行する。   When the timeout does not occur, normal processing is continued. However, when the timeout occurs, the diagnostic applications 153 and 113 transmit signals to the operating PUs 152 and 110, respectively. In the example shown in FIG. 6, the signal S <b> 2 is transmitted from the diagnostic application 113 to the PU 110. In the PU 110 that has received the medical checkup, a process registered as an abnormal process is executed. In the example shown in FIG. 6, the main function 111 calls the abnormal process handler 112 to execute a predetermined abnormal process.

このように、診断用アプリケーションをPUとは別のプログラムとして構成することで、PUが応答不能となった場合でもその動作異常を検地することができる。また、各PUに診断機能を持たせるのではなく、クライアント、サーバごとに診断アプリケーションを動作させることで、無駄な通信を防ぎ、通信オーバーフローも防ぐことができる。   In this way, by configuring the diagnostic application as a program different from the PU, even when the PU becomes unresponsive, the operation abnormality can be detected. In addition, by not causing each PU to have a diagnostic function but by running a diagnostic application for each client and server, useless communication can be prevented and communication overflow can also be prevented.

図7は、本発明に係るデータ処理装置による自動停止伝播機能を説明する図である。複数のモジュールが連動して動作している場合に、例えば、下流側のPU−H208が何らかの事情で停止してしまった場合、このPU−H208につながる系列のみにデータを送っているPU(本例では、PU−D204、PU−F206、PU−G207が該当する。)は不要となる。これらのPUが駆動し続けるとネットワークリソース、CPUリソース等を消費することになり、好ましくない。そこで、各PUは、データ出力に際して、送信先PUのステータスを確認し、送信先の全てのPUが停止か、異常状態にある場合には、当該PUも作動を停止させる。この結果、本鈴では、PU−D204、PU−G207は、PU−H208のステータス210を確認してPU−H208の停止を確認し、自己のステータス211、212にその旨を記述し、作動を停止させる。PU−F206は、PU−G207のステータス212を確認し、PU−G207の停止を確認して、自己のステータス213にその旨を記述し、作動を停止させる。一方、PU−B202は、PU−C203、PU−E205側が動作しているので、作動を停止することはない。このように、接続関係に基づいて不要なPUの作動を停止させることで、ネットワークリソースやCPUリソースの消費を防止することができる。   FIG. 7 is a diagram for explaining the automatic stop propagation function by the data processing apparatus according to the present invention. When a plurality of modules are operating in conjunction with each other, for example, if the downstream PU-H 208 is stopped for some reason, the PU that sends data only to the series connected to this PU-H 208 (this book In the example, PU-D204, PU-F206, and PU-G207 are applicable). If these PUs continue to drive, network resources, CPU resources and the like are consumed, which is not preferable. Therefore, each PU checks the status of the transmission destination PU at the time of data output, and if all the PUs at the transmission destination are stopped or in an abnormal state, the PU also stops its operation. As a result, in the main bell, the PU-D 204 and PU-G 207 confirm the status 210 of the PU-H 208, confirm the stop of the PU-H 208, describe that in their own status 211, 212, and operate. Stop. The PU-F 206 confirms the status 212 of the PU-G 207, confirms the stop of the PU-G 207, describes that fact in its own status 213, and stops the operation. On the other hand, since the PU-C 203 and PU-E 205 are operating, the PU-B 202 does not stop operating. In this way, it is possible to prevent consumption of network resources and CPU resources by stopping unnecessary PU operations based on the connection relationship.

図8は、本発明に係るデータ処理装置による動作周期検証機能について説明する図である。このデータ処理装置300では、統合用PU301のもと、PU302〜304が稼働している。統合用PU301は、PUヘルスチェック機能306を有しており、各PUの処理遅延、出力データのタイムスタンプ、待ちPU数等のデータ(PUステータスデータと呼ぶ。)をチェックする。具体的には、統合用PU301は、収集したPUステータスデータを解析することで、各PUの動作周期等をモニタリングし、遅延が大きい場合には、任意のPUを停止するなどのエラー処理を実行する。なお、統合用PU301や各PU302〜304とは独立して緊急停止機能305を提供するとよい。統合用PU301により、処理周期や処理の健全性を評価することで設計者が期待した動作効率が得られているか確認が容易になり、設計効率を向上させることができる。また、設計者が期待したとおりの動作周期を達成することが容易になり、システムの破綻を効果的に防止できる。   FIG. 8 is a diagram for explaining the operation cycle verification function by the data processing apparatus according to the present invention. In this data processing device 300, PUs 302 to 304 are operating under the integration PU 301. The integration PU 301 has a PU health check function 306, and checks data such as processing delay of each PU, time stamp of output data, number of waiting PUs, etc. (referred to as PU status data). Specifically, the integration PU 301 analyzes the collected PU status data to monitor the operation cycle of each PU, and executes error processing such as stopping an arbitrary PU if the delay is large. To do. Note that the emergency stop function 305 may be provided independently of the integration PU 301 and the PUs 302 to 304. By evaluating the processing cycle and the soundness of the processing by the integration PU 301, it is easy to confirm whether the operation efficiency expected by the designer is obtained, and the design efficiency can be improved. In addition, it becomes easy to achieve the operation cycle as expected by the designer, and system failure can be effectively prevented.

図9は、本発明に係るデータ処理装置による保守機能の階層処理を説明する図である。本発明に係るデータ処理装置は、ネットワークによって構成することも可能である。そして、データ処理装置のシステムが大規模なものとなった場合、統合用PUによるヘルスチェック機能の通信が、ネットワークを圧迫してしまうおそれがある。そこで、各PU311〜317のPUステータスデータを直接集約するのではなく、集約モジュール(aggregator)321〜324を設けてネットワークの通信を分散させることで、ヘルスチェック機能等の通信付加を軽減し、大規模システムにも適用することが可能となる。   FIG. 9 is a diagram for explaining the hierarchical processing of the maintenance function by the data processing apparatus according to the present invention. The data processing apparatus according to the present invention can also be configured by a network. And when the system of a data processing apparatus becomes a large-scale thing, there exists a possibility that the communication of the health check function by PU for integration may press the network. Therefore, instead of directly collecting the PU status data of each of the PUs 311 to 317, aggregation modules (aggregators) 321 to 324 are provided to distribute network communication, thereby reducing communication addition such as a health check function. It can be applied to a scale system.

本発明に係るデータ処理装置は、単一のコンピュータ、制御装置で実行されるプログラムによるデータ処理装置だけでなく、複数のコンピュータ、制御装置を組み合わせて動作するデータ処理装置においても好適である。   The data processing apparatus according to the present invention is suitable not only for a data processing apparatus based on a program executed by a single computer and control apparatus, but also for a data processing apparatus that operates in combination with a plurality of computers and control apparatuses.

1〜4、9、10、15、20、25、30、35、40、50、110、152、201〜208、302〜304、311〜317…PU(プログラムモジュール、Processing Unit)、5、6…同期グループ、7、55、301…統合用PU、11〜13、31、32…データ、90…カメラ、100…クライアント、111…メイン関数、112…異常時処理ハンドラ、113、153…診断用アプリケーション、150…サーバ、210〜213…ステータス、300…データ処理装置、305…緊急停止機能、306…PUヘルスチェック機能、321〜324…集約モジュール。   1-4, 9, 10, 15, 20, 25, 30, 35, 40, 50, 110, 152, 201-208, 302-304, 311-317 ... PU (Program Module, Processing Unit), 5, 6 ... Synchronization group, 7, 55, 301 ... PU for integration, 11-13, 31, 32 ... Data, 90 ... Camera, 100 ... Client, 111 ... Main function, 112 ... Processing handler in case of abnormality, 113, 153 ... For diagnosis Application, 150 ... server, 210-213 ... status, 300 ... data processing device, 305 ... emergency stop function, 306 ... PU health check function, 321-324 ... aggregation module.

Claims (2)

複数のプログラムモジュール間で、タイムスタンプが割り当てられたデータの授受を行うデータ処理装置において、
プログラムモジュールにおける、前記データ授受を行う他のプログラムモジュールとの接続関係基づいて、同じタイムスタンプのデータ同士を用いることで同期処理を行うプログラムモジュールを1つの同期グループとして形成させる統合用プログラムモジュールを備えており、
前記統合用プログラムモジュールは、各同期グループが前記接続関係に基づいて設定した同期周期で作動するよう各プログラムモジュールの処理タイミングを調整して処理を行わせることを特徴とするデータ処理装置。
In a data processing apparatus that exchanges data with a time stamp assigned between a plurality of program modules,
In each program module, based on the connection relationships with other program modules for exchanging said data, one of integration of Ru was formed as a synchronous group program modules for performing a synchronization process by using the data together with the same time stamp A program module,
The data processing apparatus, wherein the integration program module adjusts the processing timing of each program module so that each synchronization group operates in a synchronization cycle set based on the connection relationship .
各プログラムモジュールは、個々に識別符号を有しており、前記統合用プログラムモジュールは、各プログラムモジュールが起動処理を行う際に、自身のプログラムモジュールの起動と自身のプログラムモジュールが接続を希望する他のプログラムモジュールとを、当該識別符号を用いて通知させることにより、前記接続関係をたどって前記形成を行うことを特徴とする請求項1記載のデータ処理装置。 Each program module individually has an identification code, and the integration program module, when each program module performs a startup process , activates its own program module and connects to its own program module. The data processing apparatus according to claim 1, wherein the formation is performed by following the connection relationship by notifying the program module using the identification code .
JP2009079110A 2009-03-27 2009-03-27 Data processing device Active JP5644060B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009079110A JP5644060B2 (en) 2009-03-27 2009-03-27 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009079110A JP5644060B2 (en) 2009-03-27 2009-03-27 Data processing device

Publications (2)

Publication Number Publication Date
JP2010231556A JP2010231556A (en) 2010-10-14
JP5644060B2 true JP5644060B2 (en) 2014-12-24

Family

ID=43047298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009079110A Active JP5644060B2 (en) 2009-03-27 2009-03-27 Data processing device

Country Status (1)

Country Link
JP (1) JP5644060B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5819184B2 (en) * 2011-12-28 2015-11-18 富士通株式会社 Information processing apparatus and information processing apparatus control method
US10007269B1 (en) * 2017-06-23 2018-06-26 Uber Technologies, Inc. Collision-avoidance system for autonomous-capable vehicle

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3030490B2 (en) * 1994-03-18 2000-04-10 富士通株式会社 Synchronous control method and device
JP2001256064A (en) * 2000-03-10 2001-09-21 Mitsubishi Electric Corp Optimization scheduling system of plural periodic performance tasks
JP4089620B2 (en) * 2004-01-15 2008-05-28 株式会社デンソー Vehicle control system
WO2008105051A1 (en) * 2007-02-26 2008-09-04 Toshiba Mitsubishi-Electric Industrial Systems Corporation Scheduler

Also Published As

Publication number Publication date
JP2010231556A (en) 2010-10-14

Similar Documents

Publication Publication Date Title
CN104169905B (en) Utilize the methods, devices and systems of configurable and fault-tolerant baseboard management controller arrangement
TWI618380B (en) Management methods, service controller devices and non-stransitory, computer-readable media
CN102724083A (en) Degradable triple-modular redundancy computer system based on software synchronization
CN110376876B (en) Double-system synchronous safety computer platform
EP3002682A1 (en) Method for redundant operation of a controller
CN104977875B (en) Controller system with redundancy between peer and the method for operating the system
CN104821870A (en) Master station smart power grid scheduling technology support system-based clock synchronization method
US20120136970A1 (en) Computer system and method for managing computer device
JP2006209593A (en) Information processor and information processing method
CN109885151A (en) A kind of server power supply monitoring method and system
CN104854845A (en) Method and apparatus using high-efficiency atomic operations
JP5644060B2 (en) Data processing device
CN114064217B (en) OpenStack-based node virtual machine migration method and device
CN104808620A (en) GJB289A serial bus-based distributed aircraft management system architecture
JP3891994B2 (en) System and method for draining an in-order queue
US20200074213A1 (en) Gpb algorithm based operation and maintenance multi-modal decision system prototype
CN103326897A (en) Distributed computing environment general monitoring device and failure detection method
CN102955444A (en) PLC network extension system
CN104750087A (en) System and method for diagnosing external clock source
CN107659413B (en) Small-sized communication equipment
JPS59112306A (en) Process controlling system
KR101294308B1 (en) Facilities control system and operating method of the system
EP3982250A1 (en) Generation of code for a system
KR101231933B1 (en) System and method for managing error of electronic devices
JP5672225B2 (en) HARDWARE MANAGEMENT DEVICE, INFORMATION PROCESSING DEVICE, HARDWARE MANAGEMENT METHOD, AND COMPUTER PROGRAM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130528

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140326

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: 20141007

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141020

R151 Written notification of patent or utility model registration

Ref document number: 5644060

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151