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