JP2011065537A - データ受信システムおよび割り込み実行方法 - Google Patents

データ受信システムおよび割り込み実行方法 Download PDF

Info

Publication number
JP2011065537A
JP2011065537A JP2009217174A JP2009217174A JP2011065537A JP 2011065537 A JP2011065537 A JP 2011065537A JP 2009217174 A JP2009217174 A JP 2009217174A JP 2009217174 A JP2009217174 A JP 2009217174A JP 2011065537 A JP2011065537 A JP 2011065537A
Authority
JP
Japan
Prior art keywords
data
interrupt
data output
interruption
cpu
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.)
Pending
Application number
JP2009217174A
Other languages
English (en)
Inventor
Haruki Otsuka
春樹 大塚
Shinji Okaya
真治 岡谷
Naoki Kasai
直樹 笠井
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.)
Toppan Inc
Original Assignee
Toppan Printing Co Ltd
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 Toppan Printing Co Ltd filed Critical Toppan Printing Co Ltd
Priority to JP2009217174A priority Critical patent/JP2011065537A/ja
Publication of JP2011065537A publication Critical patent/JP2011065537A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】複数のデータ出力装置からの非同期の割り込み要求信号を欠落なく、効率的に確実に、データ受信装置に、任意のタイミングでデータを送信するデータ受信システムおよび割り込み実行方法を提供する。
【解決手段】複数のデータ出力装置から非同期で割り込み要求もしくはデータを受信するデータ受信システムにおいて、データ出力装置からの割り込み要求信号を検出し、CPUに割り込み信号を送信する割り込み発生回路部と、データ出力装置から受信データを取得した複数のデータを一時的に保持するデータバッファ部と、割り込み発生回路部からの割り込み信号を受信した際に全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信する割り込みルーチンと、全てのデータ受信が終了した場合に割り込みリセットを実行するCPUを有するデータ受信システムを提供する。
【選択図】図1

Description

本発明は、複数のデータ出力装置から非同期に出力されるデータを、任意のタイミングで欠落することなく受信するデータ受信システムおよび割り込み実行方法に関するものである。
コンピュータがデータ演算装置としてシステムに組み込まれることは、増加の一途を辿っている。前記システムが肥大化、高速化していくことに伴い、前記システムを構成するサブシステム間の情報伝達は、より複雑化してきている。複雑化したシステムでは、複数のサブシステムから非同期に出力されるデータを任意のタイミングで受信することが数多く発生する。そのため、サブシステム間のデータの送受信を、効率的に、確実に行い、また、より簡易的に実施することが望まれている。
一般的に、データ出力装置から効率的にデータを受信するための手段として、割り込み処理が知られている。割り込み処理とは、実行中の処理を中断して、優先度の高い別の処理を行うことである。具体的には、データ出力装置からのデータ出力が行われる際に、コンピュータなどのデータ受信装置内のCPUに対し、データ転送要求信号を送り、前記CPUは前記データ転送要求信号を受けた際に、実行中のプログラムを中断し、割り込みルーチンと呼ばれる前記データ出力装置に対応した処理を行い、前期処理が終了すると、CPUはプログラムの中断した部分の処理を再開するという一連の処理のことである。
割り込み処理は、効率的で正確なデータ取得を比較的に容易に実現できるため、定期的に受信有無を確認する手法であるポーリング処理より優れている。
しかし、データ出力装置を複数有するシステムにおいて、各々のデータ出力装置からほぼ同時に割り込みが発生した場合に、一部の割り込み処理を欠落してしまうといった問題が生ずる可能性がある。
たとえば、複数の通信回線からデータを受信する複数の受信処理装置と、前記複数の受信処理装置の各々に対応して設けられそれら受信処理装置からの受信データを制御信号に応答して蓄積する複数の記憶装置と、前記複数の受信処理装置に同時に割込信号を定期的に出力する割込発生装置と、前記複数の受信処理装置の予め設定した一つが受信完了時に出力する通知信号を受け前記複数の記憶装置に蓄積された前記受信データを収集し合成する受信データ取得部とから構成されたことを特徴としている受信データ取得システムが公知である(特許文献1参照)。
このように、複数のデータ出力装置からデータを取得する方法は存在するが、以下の問題がある。データ受信処理装置が複数あること、そして、前記受信処理装置が取得したデータを合成するための受信データ取得部が必要であるため、システムが複雑化している。
システム全体をより簡易的に同様の動作が可能であれば、システム開発時間の削減やシステムエラーの発生頻度の抑制、さらなる大規模システムの容易な開発につながると考える。
特開平9−83607号公報
本発明の目的は、複数のデータ出力装置からの非同期の割り込み要求信号を欠落なく、効率的に確実に、データ受信装置に、任意のタイミングでデータを送信するデータ受信システムおよび割り込み実行方法を提供することにある。
上記課題を解決するために請求項1に係る発明としては、複数のデータ出力装置から、非同期で割り込み要求、もしくはデータを受信するデータ受信システムにおいて、
前記データ出力装置からの割り込み要求信号を検出し、CPUに割り込み信号を送信する割り込み発生回路部と、
前記データ出力装置から受信データを取得した複数のデータを一時的に保持するデータバッファ部と、
割り込み発生回路部からの割り込み信号を受信した際に、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信する割り込みルーチンと、全てのデータ受信が終了した場合に割り込みリセットを実行するCPUと、を有することを特徴とするデータ受信システムを提供するものである。
また、請求項2に係る発明としては、割り込みがかかっていない状態でデータ出力装置から取得した複数のデータをデータバッファ部に一時的に保持するデータ受信システムにおける割り込み実行方法において、
データ出力装置から割り込み要求信号を割り込み発生回路部から受信した場合にCPUに割り込みを行い、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信し、全てのデータ受信が終了した場合に割り込みリセットを実行する割り込み実行方法を提供するものである。
本発明によれば、複数のデータ出力装置から、非同期で割り込み要求、もしくはデータを受信するシステムにおいて、複数のデータ出力装置からの割り込み要求信号を欠落なく、効率的に確実に、データ受信装置に、任意のタイミングでデータを送信することが可能となる。
また、構成が簡素であるため、開発時間の削減、エラー発生頻度の抑制、更なる大規模システムの容易な開発という利点が挙げられる。
本発明の実施の形態1に係るシステムの一例を示すブロック図である。 本発明の実施の形態1に係るシステムにおいて、CPUがどの割り込み発生回路から割り込みが発生したかを特定するための構成の一例を示すブロック図である。 本発明の実施の形態1に係るシステムにおいて、データバッファ部がデータを確実にマルチプレクサに送信するための構成を示すブロック図である。 本発明の実施の形態1に係るシステムにおいて、割り込み要求信号の発生から、受信データをCPU内ソフトウェアにより取得するまでの処理のフローチャートを示す図である。 本発明の実施の形態1に係るシステムにおいて、3個のデータ出力装置からほぼ同時に割り込み要求信号が発生した場合の処理におけるタイムチャートを示す図である。
次に、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係るシステムの一例を示すブロック図である。以下の実施の形態1は、本発明の適用物又はその用途を制限することを意図するものではない。
図1に示すように、割り込み発生回路部21の入力端子には、割り込み要求信号伝送路61を通り、データ出力装置11と、割り込み応答信号伝送路66を通り、デマルチプレクサ43と、が接続されている。割り込み発生回路部21の出力端子には、割り込み要求信号伝送路64を通り、マルチプレクサ41が接続されている。マルチプレクサ41の入力端子には、割り込み要求信号伝送路63を通り、割り込み発生回路部21、22、…、2Nが接続されている。マルチプレクサ41の出力端子には、割り込み要求信号伝送路64を通り、CPU51が接続されている。前期割り込み要求信号伝送路64を介して、CPU51に割り込みがかけられる。デマルチプレクサ43の入力端子には、割り込み応答信号伝送路65を通り、CPU51が接続されている。
割り込みが発生した場合、割り込み箇所識別信号伝送路72の状態を読むことにより、どのデータ出力装置から割り込みが発生したかを知ることが出来る。デマルチプレクサ43の出力端子には、割り込み応答信号伝送路65を通り、割り込み発生回路部が接続されている。
また、データバッファ部31の入力端子には、データ伝送路62を通り、データ出力装置11が接続されている。データバッファ部31の出力端子には、データ伝送路67を通り、マルチプレクサ42が接続されている。マルチプレクサ42の入力端子には、データ伝送路を通り、データバッファ部31、32、…、3Nが接続されている。マルチプレクサ42の出力端子にはデータ伝送路68を通り、CPU51が接続されている。
CPU51は、複数のデータ出力装置11、12、…、1Nから非同期にデータを受信する。割り込み発生回路部21、22、…、2Nは、割り込み要求信号と割り込み応答信号を受け、割り込みを発生させるものである。マルチプレクサ41は、割り込み発生回路部21、22、…、2Nからの割り込み要求信号を受け、どのデータ出力装置からの信号であるかという情報を含め、CPU51に割り込み情報を伝えるものである。デマルチプレクサ43は、CPU51からの割り込み応答信号をどの割り込み発生回路に送るかを振り分けるものである。
また、データバッファ部31、32、…、3Nはデータ出力装置11、12、…、1Nからのデータを一時的に保持するものである。マルチプレクサ42は、データバッファ部31、32、…、3Nからのデータを、どのデータ出力装置からのデータであるかという情報を含め、CPU51にデータを伝えるものである。CPU51は、割り込み要求信号を受け、割り込みルーチンと呼ばれる割り込み要求信号の発生をCPU51内ソフトウェアに通知する処理を行う。CPU内ソフトウェアは、割り込みルーチンを受け、割り込み処理を実行するためのものである。
データ出力装置11、12、…、1Nは、数がN個である。データ出力装置から11、12、…、1Nからの伝送路61、62の端子の形状やサイズ等の制約がない限り、接続数Nの上限に制約はない。
図2は、本発明の実施の形態1に係るシステムにおいて、CPUがどの割り込み発生回路から割り込みが発生したかを特定するための構成を示すブロック図である。
図2に示すように、CPU51がどの割り込み発生回路からの割り込みかを特定するために、nビットエンコーダ71を用いている。例えば、データ出力装置が32個の場合、
各々の割り込み要求信号伝送路の状態を、割り込み有なら1、割り込み無なら0という情報で定義すると、2進数32桁分で表せる。32は2の5乗であるから、32ビット分の情報でどの割り込み要求伝送路から割り込みが入っているかの判別が可能となる。このとき、伝送路は、5本分必要となる。N個のデータ出力装置の場合は、nビット分必要とすると、式は以下のようになる。
N=2 式(1)
logN=log(2) 式(2)
n=logN 式(3)
つまり、N個のデータ出力装置からの割り込みを判別するには、logNビットカウンタが必要となる。伝送路は、logN本分必要となる。この情報を元に、CPU51はどのデータ出力装置からの割り込みかを特定している。
図3は、本発明の実施の形態1に係るシステムにおいて、データバッファ部がデータを確実にマルチプレクサに送信するための構成を示すブロック図である。
図3に示すように、データ出力装置1Nはデータをデータバッファ部3Nに書き込むが、データバッファ部が満杯になっていると、次の書き込みの際に、データが上書きされ、古いデータが消えてしまう。そこで、満杯かどうかを示すFULL信号をデータ出力装置に返すことで、データ喪失を防いでいる。また、マルチプレクサ42に対しては、空かどうかを示すEMPTY信号を返すことで、読み込む必要があるかを判断させている。
図4は、本発明の実施の形態1に係るシステムにおいて、割り込み要求信号の発生から、受信データをデータバッファ部に保存するまでの処理のフローチャートを示す図である。
図4に示すように、割り込み要求信号が任意のデータ出力装置から発生した際に(S1)、まず、割り込み発生回路部が、割り込み要求信号を取得する(S2)。次に、割り込み要求信号を受け、CPU51が割り込みルーチンを実行する(S3)。次に、割り込みルーチンを受け、CPU44内ソフトウェアはデータバッファ部からデータを取得する(S4)。続いて、他のデータ出力装置から割込みが入っているかを、CPU51が割り込み要求信号を用いて、確認する(S6)。もし、割り込みがあったら、データバッファ部からデータを読み込む(S7)。当然、割り込みがなかった場合はこの処理は行われない。
この確認、読み出しを、全てのデータ出力部において、処理が完了、すなわちa=1(S5)からNまで処理したか判断し(S8)、完了していないと次の処理に移り(S9)、読み出しをしたデータ出力装置に対応する割り込み発生回路に対し、割り込み応答信号を返し(S10)、割り込み状態をリセットする。そして、再び割り込み要求信号が入るまで、CPU51は他の処理を行う。
図5は、本発明の実施の形態1に係るシステムにおいて3個のデータ出力装置からほぼ同時に割り込み要求信号が発生した場合の処理におけるタイムチャートを示す図である。説明の都合上、3個の割り込み処理81、82、83は、多少ずらして表記しているが、ほぼ同時に入力されていることとする。
図5に示すように、81、82、83は信号の波形であり、立ち上がっている際に、割り込み発生回路21、22,23は割り込み要求信号を受信する。この際に、他の割り込み要求信号の状態も見て、立ち上がっていれば、他の割り込み要求信号も受信する。
87、88、89はデータバッファ部31,32,33内に保持してあるデータを示している。CPU51は割り込み要求信号から受け、CPU51内ソフトウェアに対し、割り込みルーチンを実行する。CPU51内ソフトウェアは割り込み要求信号に対応するデータバッファ部31,32,33に対し、データ読み込みを行う。
次に、CPU51内ソフトウェアは、データ取得が完了したら、84、85、86の割り込み応答信号を用いて、81、82、83の割り込み要求信号を立ち下げる。よって、割り込み要求信号が立ち上がっている際は、割り込みデータが出力されており、前記信号が立ち下がっている際は、割り込みデータが出力されていないと判断できる。
以上のことから、複数のデータ出力装置からの非同期の割り込み要求信号を欠落なく、効率的に確実に、データ受信装置に、任意のタイミングでデータを送信することが可能となる。また、構成が簡素であるため、開発時間の削減、エラー発生頻度の抑制、更なる大規模システムの容易な開発が可能となる。
11〜1N データ出力装置
21〜2N 割り込み発生回路部
31〜3N データバッファ部
41、42 マルチプレクサ
43 デマルチプレクサ
51 CPU
61、63、64 割り込み要求信号伝送路
62、67、68 データ伝送路
65、66 割り込み応答信号伝送路
71 10ビットエンコーダ
72 割り込み箇所識別信号伝送路

Claims (2)

  1. 複数のデータ出力装置から、非同期で割り込み要求、もしくはデータを受信するデータ受信システムにおいて、
    前記データ出力装置からの割り込み要求信号を検出し、CPUに割り込み信号を送信する割り込み発生回路部と、
    前記データ出力装置から受信データを取得した複数のデータを一時的に保持するデータバッファ部と、
    割り込み発生回路部からの割り込み信号を受信した際に、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信する割り込みルーチンと、全てのデータ受信が終了した場合に割り込みリセットを実行するCPUと、を有することを特徴とするデータ受信システム。
  2. 割り込みがかかっていない状態でデータ出力装置から取得した複数のデータをデータバッファ部に一時的に保持するデータ受信システムにおける割り込み実行方法において、
    データ出力装置から割り込み要求信号を割り込み発生回路部から受信した場合にCPUに割り込みを行い、全てのデータ出力装置に対してデータが入力されているか否かを判断し、入力されているデータを順次受信し、全てのデータ受信が終了した場合に割り込みリセットを実行する割り込み実行方法。
JP2009217174A 2009-09-18 2009-09-18 データ受信システムおよび割り込み実行方法 Pending JP2011065537A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009217174A JP2011065537A (ja) 2009-09-18 2009-09-18 データ受信システムおよび割り込み実行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009217174A JP2011065537A (ja) 2009-09-18 2009-09-18 データ受信システムおよび割り込み実行方法

Publications (1)

Publication Number Publication Date
JP2011065537A true JP2011065537A (ja) 2011-03-31

Family

ID=43951689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009217174A Pending JP2011065537A (ja) 2009-09-18 2009-09-18 データ受信システムおよび割り込み実行方法

Country Status (1)

Country Link
JP (1) JP2011065537A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020198044A (ja) * 2019-06-05 2020-12-10 富士通株式会社 並列処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020198044A (ja) * 2019-06-05 2020-12-10 富士通株式会社 並列処理装置

Similar Documents

Publication Publication Date Title
US10621025B2 (en) Methods for data acquisition systems in real time applications
CN108052473B (zh) 串行通信装置
CN112765082A (zh) 多主机仲裁方法、装置和可读存储介质
CN114584492B (zh) 一种延时测量方法、系统以及相关设备
CN108369565B (zh) 通信装置、通信方法、存储介质、以及通信系统
US6678756B1 (en) Method for controlling a first-in-first-out array to facilitate data transmissions between a lower frequency domain and a higher frequency domain of a computer system
JP2015225574A (ja) 制御装置、制御方法及びプログラム
US20060184708A1 (en) Host controller device and method
JP2010211322A (ja) ネットワークプロセッサ、受信コントローラ、及びデータ受信処理方法
WO2012081085A1 (ja) 割込み要因管理装置及び割込み処理システム
JP2011065537A (ja) データ受信システムおよび割り込み実行方法
US20130067130A1 (en) Bus control apparatus and bus control method
CN107391406B (zh) 一种用于协议处理的微处理器及处理协议的方法
JP2011192135A (ja) データ受信システムおよび割り込み実行方法
JP5334173B2 (ja) データ転送システム及びリトライ制御方法
JP2000299716A (ja) データ受信装置及びデータ受信方法
CN109284243B (zh) 基于usb的fpga通信控制装置及方法
JP5093986B2 (ja) プロセッサ間通信方法及びプロセッサ間通信装置
US10452579B2 (en) Managing input/output core processing via two different bus protocols using remote direct memory access (RDMA) off-loading processing system
CN107544618B (zh) 指针同步电路及方法,消息交换装置及方法
JP6272600B2 (ja) プロセス監視装置、プロセス監視方法及びプロセス監視プログラム
JP2007156940A (ja) 処理装置
JPH11232210A (ja) 情報処理装置
WO2010061482A1 (ja) 試験装置、シリアル伝送システム、プログラム、および、記録媒体
JP3179367B2 (ja) 非同期データ転送装置における障害検出方式