(57)【要約】【課題】複数のデータ出力装置からの非同期の割り込み要求信号を用いて、欠落なく効率的に確実に、データ受信装置に任意のタイミングでデータを送信するデータ受信システムおよび割り込み実行方法を提供する。【解決手段】複数のデータ出力装置からの複数のデータを一時的に保持するデータバッファ回路部と、割り込み信号を受信した際に、全てのデータ出力装置に対してデータが保持されているか否かを判断し、入力されているデータを順次受信する割り込みルーチン手段と、割り込み要求信号に応じてデータバッファ回路部からデータを取得し、データの優先順位を判断して並び替える優先データ判断回路部と、並び替えられた複数のデータを、一時的に保持する並べ替え済データバッファ回路部と、前記割り込み要求信号に応じて、前記並べ替え済データバッファ回路部からデータを取得するＣＰＵと、を有することを特徴とするデータ受信システム。【選択図】図１
2011192135.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータ出力装置から、非同期で割り込み要求信号やデータを受信するデータ受信システムであって、
前記複数のデータ出力装置から割り込み要求信号および受信データを取得し、複数のデータを一時的に保持するデータバッファ回路部と、
前記データ出力装置からの割り込み信号を受信した際に、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信する割り込みルーチン手段と、
前記割り込み要求信号に応じて前記データバッファ回路部からデータを取得し、データの優先順位を判断して並び替える優先データ判断回路部と、
前記優先データ判断回路部が優先順位を判断した複数のデータを、一時的に保持する並べ替え済データバッファ回路部と、
前記割り込み要求信号に応じて、前記並べ替え済データバッファ回路部からデータを取得するＣＰＵと、を有することを特徴とするデータ受信システム。
【請求項２】
データ出力装置から取得した複数のデータをデータバッファ回路部に一時的に保持するデータ受信システムにおける割り込み実行方法であって、
データ出力装置から割り込み要求信号をデータバッファ回路部が受信した場合に、優先データ判断回路部に割り込みを行い、全てのデータ出力装置に対してデータが入力されているか否か、および、データの優先順位を判断し、優先度の高いデータから、データを並べ替えた後、データを並べ替え済データバッファ回路部にデータを送信し、ＣＰＵが割り込み要求信号に応じて、前記データバッファ回路部から全てのデータ受信が終了するまで処理を行うことを特徴とする割り込み実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、優先順位付けされたデータを出力する、複数のデータ出力装置から非同期に出力されるデータを、任意のタイミングで欠落することなく受信するデータ受信システムおよび割り込み実行方法に関するものである。
【背景技術】
【０００２】
コンピュータがデータ演算装置としてシステムに組み込まれることは、増加の一途を辿っている。前記システムが肥大化、高速化していくことに伴い、前記システムを構成するサブシステム間の情報伝達は、より複雑化してきている。複雑化したシステムでは、複数のサブシステムから非同期に出力されるデータを任意のタイミングで受信することが数多く発生する。そのため、サブシステム間のデータの送受信を、効率的に、確実に行い、また、より簡易的に実施することが望まれている。
【０００３】
一般的に、データ出力装置から効率的にデータを受信するための手段として、割り込み処理が知られている。割り込み処理とは、実行中の処理を中断して、優先度の高い別の処理を行うことである。具体的には、データ出力装置からのデータ出力が行われる際に、コンピュータなどのデータ受信装置内のＣＰＵに対し、データ転送要求信号を送り、前記ＣＰＵは前記データ転送要求信号を受けた際に、実行中のプログラムを中断し、割り込みルーチンと呼ばれる前記データ出力装置に対応した処理を行い、前記処理が終了すると、ＣＰＵはプログラムの中断した部分の処理を再開するという一連の処理のことである。
【０００４】
割り込み処理は、効率的で正確なデータ取得を比較的に容易に実現できるため、定期的に受信有無を確認する手法であるポーリング処理より優れている。
【０００５】
しかし、データ出力装置を複数有するシステムにおいて、各々のデータ出力装置からほぼ同時に割り込みが発生した場合に、一部の割り込み処理を欠落してしまうといった問題が生ずる可能性がある。
【０００６】
たとえば、複数の通信回線からデータを受信する複数の受信処理装置と、前記複数の受信処理装置の各々に対応して設けられそれら受信処理装置からの受信データを制御信号に応答して蓄積する複数の記憶装置と、前記複数の受信処理装置に同時に割込信号を定期的に出力する割込発生装置と、前記複数の受信処理装置の予め設定した一つが受信完了時に出力する通知信号を受け前記複数の記憶装置に蓄積された前記受信データを収集し合成する受信データ取得部とから構成されたことを特徴としている受信データ取得システムが公知である（特許文献１参照）。
【０００７】
このように、複数のデータ出力装置からデータを取得する方法は存在するが、以下の問題がある。データ受信処理装置が複数あること、そして、前記受信処理装置が取得したデータを合成するための受信データ取得部が必要であるため、システムが複雑化している。
【０００８】
また、複数のデータ出力装置から優先順位付けされたデータが出力される場合において、前記優先順位に応じて、データを取得することはできていないといった問題がある。
【０００９】
システム全体をより簡易的に同様の動作が可能であれば、システム開発時間の削減やシステムエラーの発生頻度の抑制、さらなる大規模システムの容易な開発につながると考える。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平９−８３６０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明の目的は、複数のデータ出力装置からの非同期の割り込み要求信号を用いて、欠落なく効率的に確実に、データ受信装置に任意のタイミングでデータを送信するデータ受信システムおよび割り込み実行方法を提供することを目的とする。
【００１２】
また、優先順位付けされたデータを出力する複数のデータ出力装置から出力される際に、優先度の高いデータからデータ受信装置に受信するデータ受信システムおよび割り込み実行方法を提供することにある。
【課題を解決するための手段】
【００１３】
上記課題を解決するために請求項１に係る発明としては、複数のデータ出力装置から、非同期で割り込み要求信号やデータを受信するデータ受信システムであって、
前記複数のデータ出力装置から割り込み要求信号および受信データを取得し、複数のデータを一時的に保持するデータバッファ回路部と、
前記データ出力装置からの割り込み信号を受信した際に、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信する割り込みルーチン手段と、
前記割り込み要求信号に応じて前記データバッファ回路部からデータを取得し、データの優先順位を判断して並び替える優先データ判断回路部と、
前記優先データ判断回路部が優先順位を判断した複数のデータを、一時的に保持する並べ替え済データバッファ回路部と、
前記割り込み要求信号に応じて、前記並べ替え済データバッファ回路部からデータを取得するＣＰＵと、を有することを特徴とするデータ受信システムである。
【００１４】
また、請求項２に係る発明としては、データ出力装置から取得した複数のデータをデータバッファ回路部に一時的に保持するデータ受信システムにおける割り込み実行方法であって、
データ出力装置から割り込み要求信号をデータバッファ回路部が受信した場合に、優先データ判断回路部に割り込みを行い、全てのデータ出力装置に対してデータが入力されているか否か、および、データの優先順位を判断し、優先度の高いデータから、データを並べ替えた後、データを並べ替え済データバッファ回路部にデータを送信し、ＣＰＵが割り込み要求信号に応じて、前記データバッファ回路部から全てのデータ受信が終了するまで処理を行うことを特徴とする割り込み実行方法である。
【発明の効果】
【００１５】
本発明によれば、複数のデータ出力装置から、非同期で割り込み要求、もしくはデータを受信するシステムにおいて、複数のデータ出力装置からの割り込み要求信号を用いて、欠落なく、効率的に確実に、データ受信装置に、任意のタイミングでデータを送信することが可能となる。
【００１６】
そのうえ、複数のデータ出力装置から、優先順位付けされた優先順位の高いデータから順次、効率的に確実にデータ受信装置に任意のタイミングでデータを送信することが可能となる。
【００１７】
また、構成が簡素であるため、開発時間の削減、エラー発生頻度の抑制、更なる大規模
システムの開発が容易となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係るシステムの一例を示すブロック図である。
【図２】本発明の実施の形態に係るシステムにおいて、データバッファ回路部がデータを確実に優先データ判断回路部に送信するための構成を示すブロック図である。
【図３】本発明の実施の形態に係るシステムにおいて、割り込み要求信号の発生から、受信データをＣＰＵ内ソフトウェアにより取得するまでの処理のフローチャートを示す図である。
【図４】本発明の実施の形態に係るシステムにおいて、３個のデータバッファ回路部にデータが保持されている場合の処理におけるタイムチャートを示す図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施の形態について、図面を参照して詳細に説明する。
図１は、本発明の実施の形態に係るシステムの一例を示すブロック図である。以下の実施の形態は、本発明の適用物又はその用途を制限することを意図するものではない。
【００２０】
図１に示すように、データバッファ回路部２１の入力端子には、割り込み要求信号伝送路５１とデータ伝送路５２を通り、データ出力装置１１が接続されている。データバッファ回路部２１の出力端子には、割り込み要求信号伝送路５３とデータ伝送路５４を通り、優先データ判断回路部３１が接続されている。前記割り込み要求信号伝送路５３を介して、優先データ判断回路部３１に割り込みがかけられる。優先データ判断回路部３１の入力端子には、割り込み要求信号伝送路５３とデータ伝送路５４を通り、データバッファ回路部２１、２２、…、２Ｎが接続されている。優先データ判断回路部３１の出力端子には、割り込み要求信号伝送路５５とデータ伝送路５６を通り、並び替え済データバッファ回路部３２が接続されている。並び替え済データバッファ回路部３２の入力端子には、割り込み要求信号伝送路５５とデータ伝送路５６を通り、優先データ判断回路部３１が接続されている。並び替え済データバッファ回路部３２の出力端子には、割り込み要求信号伝送路５７とデータ伝送路５８を通り、ＣＰＵ４１が接続されている。前記割り込み要求信号伝送路５７を介して、ＣＰＵ４１に割り込みがかけられる。
【００２１】
優先データ判断回路部３１は、複数のデータ出力装置１１、１２、…、１Ｎから出力されたデータを、割り込み要求信号を受け、非同期に、データバッファ回路部２１、２２、…、２Ｎから、優先順位の高い順を判断し、優先順位の高い順に、並べ替え済みデータバッファ回路部に、データを送信するものである。データバッファ回路部２１、２２、…、２Ｎは、前記複数のデータ出力装置１１、１２、…、１Ｎからの割り込み要求信号を受け、前記優先データ判断回路部３１に割り込みを発生させること、前記複数のデータ出力装置１１、１２、…、１Ｎから出力されたデータを一時的に保持することを行うものである。
【００２２】
また、並び替え済データバッファ回路部３２は、優先順位の高い順にデータを一時的に保持すること、前記優先データ判断回路部３１からの割り込み要求信号を受け、ＣＰＵ４１に割り込みを発生させることを行うものである。ＣＰＵ４１は、前記並び替え済データバッファ回路部３２からの割り込み要求信号を受け、データを取得するものである。
【００２３】
データ出力装置１１、１２、…、１Ｎは、数がＮ個である。データ出力装置から１１、１２、…、１Ｎからの伝送路５１、５２の端子の形状やサイズ等の制約がない限り、接続数Ｎの上限に制約はない。なお、データの優先順位は高い順に１Ｎ、…、１２、１１とする。これらは、読み出し側である優先データ判断回路部３１と、ＣＰＵ４１内ソフトウェアと、の処理において、予め、対象のデータ出力装置に優先順位の高い順に、１Ｎ、…、
１２、１１と識別番号を割り振っておけばよい。前記番号の割り振りも本発明を制約するものではなく、一例に過ぎない。優先順位を把握できる方法であれば、どのような方法でも構わない。
【００２４】
図２は、本発明の実施の形態に係るシステムにおいて、データバッファ回路部２Ｎがデータを確実に優先データ判断回路部３１に送信するための構成を示すブロック図である。なお、並び替え済データバッファ回路部がデータを確実にＣＰＵ４１に送信するための構成も同様である。
【００２５】
図２に示すように、データ出力装置１Ｎはデータをデータバッファ回路部２Ｎに書き込むが、データバッファ回路部が満杯になっていると、次の書き込みの際に、データが上書きされ、古いデータが消えてしまう。そこで、満杯かどうかを示すＦＵＬＬ信号をデータ出力装置に返すことで、データ喪失を防いでいる。また、優先データ判断回路部３１に対しては、空かどうかを示すＥＭＰＴＹ信号を返すことで、読み込む必要があるかを判断させている。
【００２６】
図３は、本発明の実施の形態に係るシステムにおいて、割り込み要求信号の発生から、受信データをデータバッファ回路部に保存するまでの処理のフローチャートを示す図である。
【００２７】
図３に示すように、割り込み要求信号が任意のデータ出力装置から発生した際に（Ｓ１）、まず、データバッファ回路部が、割り込み要求信号を取得する（Ｓ２）。次に、割り込み要求信号を受け、優先データ判断回路部３１が割り込みルーチン、つまり、割り込みルーチン手段である割り込み要求信号に対応するデータバッファ回路部２Ｎにデータが入っているかの確認を実行する（Ｓ３）。続いて、優先データ判断回路部３１は、優先順位の最も高いデータが保持されているデータバッファ回路部２Ｎにデータが入っているかを確認する（Ｓ５）。
【００２８】
この確認を、全てのデータバッファ回路部において、優先順位の高い順から、処理が完了、すなわちａ＝Ｎ（Ｓ４）から１まで処理したか判断し（Ｓ６）、完了していないと次の処理に移る（Ｓ７）。全てのデータバッファ回路部の確認が終わったら、優先データ判断回路部３１が、データバッファ回路部に入っているデータの優先順位を把握する（Ｓ８）。優先データ判断回路部３１が、データの優先順位の高いデータの入っているデータバッファ回路部から並び替え済データバッファ回路部３２へデータを移動する（Ｓ９）。優先データ判断回路部３１は、割り込み要求信号をＣＰＵ４１に送信する（Ｓ１０）。ＣＰＵ４１内ソフトウェアは、割り込み要求信号が来たら、並び替え済データバッファ回路部３２からデータを取得する（Ｓ１１）。そして、ＣＰＵ４１は再び割り込み要求信号が入るまで、他の処理を行う。
【００２９】
図４は、本発明の実施の形態に係るシステムにおいて３個のデータバッファ回路部にデータが保持されている場合の処理におけるタイムチャートを示す図である。
【００３０】
図４に示すように、８１は割り込み要求信号の波形であり、立ち上がっている際（矢印１０１）に、データバッファ回路部２１は割り込み要求信号を受信する。この際に、他のデータバッファ回路部にデータがあるかを確認し、他の割り込み要求信号も受信する。図中１０７は、時間Ｔの推移を示す。
【００３１】
８２、８３、８４はデータバッファ回路部２１、２２、２３内に保持してあるデータを示している。優先データ判断回路３１は割り込み要求信号を受け、対応するデータバッファ回路部２１、また、他の全てのデータバッファ回路部に対し、データの有無を確認する
。データバッファ回路部の確認順を優先順位順とし、データバッファ回路部２Ｎから２１まで確認を行う（矢印１０２、１０３、１０４はデータを取りにいくタイミングを示す）。
【００３２】
全てのデータバッファ回路部のデータ有無の確認が終わったら、前記優先データ判断回路３１は取得したデータのうち、優先順位の高いデータから、並び替え済データバッファ回路部３２にデータを書き込む（矢印１０５はデータを取得するタイミングを示す）。上記にも示したように、データの優先順位は高い順に、データバッファ回路部２Ｎ、…、２２、２１に入力されているデータである。そして、前記優先データ判断回路部３１は割り込み要求信号をＣＰＵ４１に送信する。
【００３３】
次に、ＣＰＵ４１内ソフトウェアは、割り込み要求信号を受信したら、並び替え済データバッファ回路部３２からデータ取得を行う（矢印１０６はデータを取得するタイミングを示す）。もし、割り込み要求信号がほぼ同時に入力されているとしても、最初の一つを前記優先データ判断回路部３１が受信した際に、全てのデータバッファ回路部に対し、確認を行うため、データの取りこぼしが起きることはない。
【００３４】
以上のように、本発明のデータ受信システムおよび割り込み実行方法によれば、複数のデータ出力装置からの非同期の割り込み要求信号を用いて、欠落なく効率的に確実に、データバッファ回路部に任意のタイミングでデータを送信することが可能となる。そのうえ、優先順位付けされた複数のデータ出力装置から、優先順位の高いデータから優先し、効率的に確実に、ＣＰＵに任意のタイミングでデータを送信することが可能となる。また、構成が簡素であるため、開発時間の削減、エラー発生頻度の抑制、更なる大規模システムの容易な開発が可能となる。
【符号の説明】
【００３５】
１１〜１Ｎ・・・データ出力装置
２１〜２Ｎ・・・データバッファ回路部 
３１・・・優先データ判断回路部
３２・・・並び替え済データバッファ回路部
４１・・・ＣＰＵ
５１、５３、５５、５７・・・割り込み要求信号伝送路
５２、５４、５６、５８・・・データ伝送路
１０１・・・データ出力装置からの割り込み要求信号の立ち上がりのタイミングを示す矢印
１０２、１０３、１０４・・・データを取りにいくタイミングを示す矢印
１０５、１０６・・・データを取得するタイミングを示す矢印
１０７・・・時間Ｔの推移を示す矢印
【図１】
2011192135.tif 000003
【図２】
2011192135.tif 000004
【図３】
2011192135.tif 000005
【図４】
2011192135.tif 000006