JP4034572B2 - 遠隔割り込み信号の処理方法、システムおよびネットワークインターフェースシステム - Google Patents
遠隔割り込み信号の処理方法、システムおよびネットワークインターフェースシステム Download PDFInfo
- Publication number
- JP4034572B2 JP4034572B2 JP2002036939A JP2002036939A JP4034572B2 JP 4034572 B2 JP4034572 B2 JP 4034572B2 JP 2002036939 A JP2002036939 A JP 2002036939A JP 2002036939 A JP2002036939 A JP 2002036939A JP 4034572 B2 JP4034572 B2 JP 4034572B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- interrupt signal
- raw
- network
- interrupt
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/24—Interrupt
- G06F2213/2418—Signal interruptions by means of a message
Description
【発明の属する技術分野】
本発明は、遠隔割り込み、より具体的には、遠隔割り込みに応答してネットワーク上に生パケットを発行することに関する。
【0002】
【従来の技術】
割り込みは、特定のイベントが生じたことをホストデバイスまたはプログラムに通知する信号である。ホストが割り込み信号を受信した場合、ホストは指定された動作をとるか、あるいは割り込み信号を単に無視することができる。ある割り込み信号には、他の割り込み信号または処理よりも高い優先度を割り当てることができる。すなわち、高い優先度の割り込み信号は、そのより高い優先度の割り込みが処理される間、より低い優先度の処理を一時的に停止させることができる。簡単に言えば、割り込み信号はハードウェアまたはソフトウェアによって生成することができ、これによって、あるイベントが生じたことを指示する。しかし、割り込み信号がその意図する目的を果たすためには、割り込み信号は、割り込みを解釈して対応する動作をとることができるデバイスによって受信されなければならない。
【0003】
従来のコンピュータシステムでは、入力/出力デバイス(IOデバイス)またはコンピュータアプリケーションによって生成される割り込みは、一般的に、割り込みデバイスに対してローカルな割り込みコントローラおよび中央処理ユニット(CPU)によって処理される。ローカルホストCPUは、ローカルホストバスに結合された各デバイスタイプからの割り込み要求に応答する。IOデバイスは、ダイレクトラインによってまたは共有ラインによって割り込みコントローラに結合できる。割り込みコントローラは割り込み要求を受信し、それらを割り込みに関連する割り込みの番号と共にCPUに提供する。このように、割り込み要求の処理は、ホストCPUのような、割り込みデバイスに対してローカルなインテリジェントホストデバイスを必要とする。
【0004】
インテリジェントデバイスに関するこの必要条件は問題となり得る。例えば、ネットワークインタフェースカード(NIC)を介してネットワークに結合されたいくつかのアンインテリジェントIOデバイスのみを含む遠隔ノードを有するネットワーク環境について考えてみよう。各IOデバイスは、割り込み要求をホストCPUノードに通知するためのユニークな1組の必要条件を有する。すなわち、サポートされた各IOデバイスに関する種々のパラメータを記憶するために、遠隔NICに含まれる専用レジスタが使用される。このようにして、遠隔NICを利用して遠隔割り込みを処理できる。
【0005】
しかし、IOデバイスが実行する各動作は、異なる1組の割り込みパラメータまたは必要条件を有する場合がある。さらに、各IOデバイスは、そのノードの他のIOデバイスの割り込み必要条件と異なる種々の割り込み必要条件を有する場合がある。このように、IOデバイスおよびそれらのIOデバイスの各々によって実行される動作の多様性は、遠隔NICに相当量のレジスタ空間を必要とする可能性がある。この問題に対する1つの解決方法は、各IOデバイスのためのサポート操作の数を単に制限することである。しかし、このような解決方法は、必ずしも望ましくまた実用的とは限らない。さらに、IOデバイスの割り込み必要条件が未知または明らかでないならば、そのデバイスのために遠隔NICを構成することができない。
【0006】
【発明が解決しようとする課題】
したがって、必要なことは、遠隔およびアンインテリジェントノードにおいて発生した割り込みを処理するための技術である。この技術は、複数の多様な割り込み必要条件と、種々の割り込みデバイスおよびイベントを収容するようにフレキシブルでなければならない。
【0007】
【課題を解決するための手段】
本発明の1つの実施形態は、遠隔割り込み信号を処理するための方法を提供する。本方法は、遠隔ノードにおいて割り込み信号源から割り込み信号を受信することを含む。さらに、本方法は、受信された割り込み信号に基づき生パケットを選択することを含み、生パケットは割り込み信号源の識別子を含む。本方法は、遠隔ノードからホストノードへネットワークを介して選択された生パケットを送出することをさらに含む。
【0008】
本発明の他の実施形態は、遠隔割り込みに応答してネットワークを介して生パケットを発行するためのシステムを提供する。本システムは、処理ユニットを含むホストノードを含む。ホストノードはネットワークに動作的に結合され、また発行された生パケットを受信するためにある。本システムの本実施形態は、ネットワークインタフェースモジュールと割り込み信号源とを含む遠隔ノードをさらに含む。ネットワークインタフェースモジュールは、割り込み信号源から受信された割り込み信号に基づき生パケットを発行するためにある。生パケットは割り込み信号源の識別子を含む。
【0009】
本発明の他の実施形態はネットワークインタフェースシステムを提供する。このネットワークインタフェースシステムは、いくつかの生パケットを記憶するための生パケットバッファを含み、各生パケットは、対応する割り込み信号源の識別子を含む。割り込み信号源が割り込み信号をネットワークインタフェースシステムに供給することに応答して、ネットワークインタフェースシステムは、対応する生パケットをネットワークを介してホストノードに発行する。
【0010】
本明細書に記述した特徴および利点はすべてが包括的とは限らず、また特に、図面、明細書および請求の範囲を考慮すれば、追加の多くの特徴および利点が当業者に明白となるであろう。さらに、本明細書で用いた用語は、主に読みやすさと説明目的のために選択されており、また創意に富んだ主題の範囲を限定するものでないことを指摘する。
【0011】
【発明の実施の形態】
図1は、本発明の一実施形態による遠隔割り込みに応答して生パケットを送出できるシステムのブロック図である。システムは、ネットワーク115を介して遠隔ノードに関連したホストノードを含む。ホストノードは、ホストバスによってネットワークインタフェースカード(NIC)110に動作的に結合される中央処理ユニット(CPU)105を含む。他方で、遠隔ノードは、システムバスまたはIOバス等によってCPU125と、いくつかの入力/出力(IO)デバイス130(例えば130aと130b)とに動作的に結合されるNIC120を含む。遠隔ノードに含まれるデバイスの各々は、ハードウェア割り込みまたはソフトウェア割り込みであるにせよ、割り込み信号を生成できる。
【0012】
いくつかの異なる代替実施形態を構成することが可能であり、本発明は、任意の1つの特定の実施形態または構成に限定することを意図するものではないことに留意されたい。例えば、遠隔ノードはCPU125を含む必要がないか、あるいは1つ以上のCPU125を含み得る。さらに、ネットワーク115に関連する任意の数のノードがあり得る。一実施形態では、遠隔ノードは、ネットワークカード120の機能が統合された単一のIOデバイス130を含む。ホストノードのホストバスならびに遠隔ノードのシステム/IOバスは、周辺装置相互接続(PCI)バスまたは他の従来のバスの技術であり得る。本開示を考慮すると、他の実施形態および構成が明白である。
【0013】
一般に、イベントは、生成されるべき割り込み信号をトリガする遠隔ノードに生じる。割り込み信号源は、遠隔ノードに含まれるデバイスの任意のデバイスからのものであり得る。例えば、この割り込み信号は、CPU125により実行されるプログラムが、例えばデータをプログラムに提供するというような、何かをホストノードのCPU105が行うことを要求する場合にプログラムによって生成される。同様に、割り込み信号は、印刷要求を受けたが目下用紙が切れているプリンタのようなIOデバイス130によって生成される。割り込み信号がCPU125またはIOデバイス130等によって生成される要因には、他の多くの要因がある。一般的に、割り込みは、エラー、動作完了(例えばダイレクトメモリアクセスの完了)、あるいは他の特殊なイベントによって生成される。
【0014】
割り込み信号が生成される理由に関係なく、応答動作をとることができるようにホストノード(例えばCPU105)に割り込みを認識させなければならない。割り込みがホストノードに通信されないならば、おそらく望ましくない結果ではあるが、あたかも割り込みが生成されなかったとして、それは単に無視されるであろう。図示した実施形態では、NIC120は、ホストノードによって予め準備された生パケットを発行または「送出する」ことによって、割り込み信号源の1つにより生成される割り込み信号に応答する。例えば、生パケットは、処理ホストデバイスのアドレスと、生成された割り込み信号に関連したデバイスまたはイベントの識別子と、ホストが割り込み要求を処理する際に必要とする他の関連情報とを指定できる。例えば、生パケットはまた、割り込みデバイスに関する情報または割り込みデバイスに関連した状態コードを含む。
【0015】
生パケットは、初期のシステム設定セッションの間に、あるいは新しい割り込み信号源(例えば、CPU125、IOデバイス130またはあるイベント)がシステムに加えられるとき、ホストソフトウェア、ハードウェア、ファームウェアまたは任意のそれらの組合せによって準備できる。生パケットが準備されると、生パケットは、対応する遠隔ノード(例えばNIC120)に伝達され、記憶される。図示した実施形態では、準備された生パケットは、NIC120に含まれるバッファに記憶される。遠隔割り込み信号源の1つが割り込み信号を生成するとき、その信号はNIC120によって受信される。
【0016】
いくつかの方法で、例えば電気信号(例えばロジックハイまたはロウ信号)の形態でまたはイベントの発生(例えばタイマの経過)により、割り込み信号を表し得ることに留意されたい。NIC120は、その特定の割り込み信号に対応する生パケットを発行することによって割り込み信号に応答する。この生パケットは、ネットワーク115上を転送され、ホストノードによって受信される。次に、ホストノード(例えばCPU105)は生パケットを調べ、関連割り込み要求を評価し、また応答動作をとることができる。
【0017】
図2は、本発明の一実施形態による遠隔ネットワークインタフェースシステムの概略ブロック図である。図から理解できるように、NIC120の本実施形態は生パケットバッファ205を含む。この生パケットバッファ205は、いくつかの生パケット(例えば、生パケット0、生パケット1、生パケット2、等)を含む。これらの生パケットの各々は、特定の割り込み線に関連され、各割り込み線は特定の割り込み信号源(例えば、IOデバイス130、CPU135またはイベント)に関連される。割り込み線がアクティブになることに応答して、関連生パケットがネットワーク115に発行される。以前に示したように、生パケットバッファ205に記憶された生パケットは、システム設定セッション等の間に予め準備され、次に、生パケットバッファ205に記憶するためにNIC120に提供される。
【0018】
一実施形態では、生パケットバッファ205はスタティックランダムアクセスメモリ(SRAM)で実現される。しかし、他のメモリ手段を使用して、生パケットバッファ205を実現できる。例えば、生パケットバッファ205はダイナミックランダムアクセスメモリで実現し得る。或いは、生パケットバッファ205は、フラッシュメモリチップまたは電子的に消去可能なプログラマブルリードオンリメモリ(EEPROM)のような不揮発性メモリで実現し得る。或いは、生パケットバッファは、それぞれが特定の生パケットの内容に対応するデータ構造の連結リストであり得る。要するに、アドレス可能、さもなければインデックス可能な内容を提供する任意の記憶媒体(例えば、ハードウェア、ソフトウェア、ファームウェア)を使用して、生パケットバッファ205を実現できる。
【0019】
図3は、本発明の一実施形態による遠隔ネットワークインタフェースシステムの詳細なブロック図である。NIC120の本実施形態は、生パケットバッファ205、パケットレシーバ210、パケットアセンブラ215、いくつかの状態マシン220(例えば、SM0、SM1、SM2、SMN)、ポインタセレクタ225、割り込みコントローラ230およびパケット準備手段へのインタフェース235を含む。例えば、これらのコンポーネントの各々は、ハードウェア、ソフトウェア、ファームウェアまたは任意のそれらの組合せで実現し得る。これらのコンポーネントは、物理的には、互いに独立して物理的に実現可能であり(例えば、個々のモジュールまたは集積回路)、あるいは単一の集積回路またはチップセット等で実現可能である。
【0020】
パケットレシーバ210はネットワークからパケット(ネットワークパケットと呼ぶ)を受信し、パケットから情報を抽出し、またその情報をNIC120に包括的に利用可能にする。図示した実施形態では、ネットワークパケットから抽出された情報は状態情報を含む。次に、この状態情報は状態出力を介して状態マシン220に提供される。例えば、パケットレシーバ210の状態出力は、ノーマル、エラーまたはリトライの状態を指示し得る。ノーマルは、以前の生パケットの転送が成功したこと、および現在異常状態がないことを指示する。しかし、エラーまたはリトライの状態は、以前に転送された生パケットが拒絶されたことを指示する。エラー状態は、以前に送出された生パケットに不具合があったか、さもなければエラー状態に関連していたことを指定し、一方、リトライ状態は、以前に送出された生パケットの目標ノードがビジーまたは使用できなかったことを指定する。どちらの場合も、割り込み要求は、この転送が成功し、認識されるまで複数回試みることができる。状態マシン220にカウンタを使用して、リトライの数を追跡し、永続的な繰返し状態を防止することができる。
【0021】
割り込みコントローラ230は、IOデバイスおよびソフトウェアアプリケーションのような割り込み信号源からの割り込み線に結合される。割り込みコントローラ230は割り込み要求を受信し、対応する状態マシン220にその割り込み要求を行う。例えば、割り込み2に関連した割り込み線が受信されたならば、割り込みコントローラは、状態マシン220のSM2にこの割り込み要求を提供する。一実施形態では、割り込みコントローラ230によって受信される各割り込み線は状態マシン220に関連される(例えば、割り込み線0はSM0に対応し、割り込み線1はSM1に対応し、割り込み線2はSM2に対応する、等々)。しかし、割り込みコントローラ230によって受信される割り込み線はまた、特定の状態マシン220を共有し得る(例えば、割り込み線0と1はSM0に対応し得る)。割り込み線/状態マシン対の数は、割り込み信号源の多様性および割り込み信号源に関連した様々な割り込み必要条件のような要因に関係する。
【0022】
状態マシン220は、1組の状態(例えば、初期状態、現在の状態および次の状態)、1組の入力イベント、1組の出力イベントおよび状態遷移機能を含む。状態遷移機能は現在の状態と入力イベントとを取り、新しい組の出力イベントおよび次の状態を返す。図示した実施形態では、各状態マシン220に対する入力イベントは、割り込みコントローラ230の出力とパケットレシーバ210の状態出力とを含む。各状態マシン220の出力イベントは、受信された割り込み要求に関連する要求と、いくつかの生パケットセレクタ出力とを含む。出力イベントおよび次の状態の値は、状態マシンおよび入力イベントの現在の状態に依存する。一般に、状態マシン220は、順序づけられた1組の入力イベントを対応する1組の出力イベントに、マッピングする。
【0023】
一実施形態では、状態マシン220は、特定の割り込み要求に応答して生パケットが転送される回数を追跡するカウンタを保持する。ホストノードによって拒絶された生パケットは、例えば、送信エラーのため、あるいはパケットレシーバ210の状態出力により指定されたようにホストノードがビジーだったため、再送信する必要があるかもしれない。状態マシン220の現在の状態が、生パケットが最大許容回数リトライされたこと(例えば、エラーまたは輻奏のため)を示すならば、対応する出力イベントおよび次の状態は、要求をリトライし続けるのでなくエラーを記録する。本開示を考慮すると、状態マシン220のカウンタの別形態が明白である。例えば、輻奏に基づく理由のため拒絶された生パケットは複数回リトライされ、一方、エラーに基づく理由のため拒絶された生パケットは、全くリトライされない。エラーという状態は即座に記録されるか、さもなければ、システム管理者またはユーザに知らされる。
【0024】
ポインタセレクタ225は、状態マシン220の生パケットセレクタ出力を、生パケットバッファ205内の対応する生パケットの位置を識別するアドレスに変換する。次に、選択された生パケットは、受信された割り込み信号に関連する要求と共に、パケットアセンブラ215に提供される。次に、パケットアセンブラ215は、要求しているデバイスの識別子を含む受信された割り込み信号および生パケットに関連する要求を含むネットワークパケットを生成する。パケットアセンブラ215の出力はネットワーク115に動作的に結合され、これによって、組み立てられたネットワークパケットがネットワーク115を介してホストノードに転送されるのを可能にする。ネットワーク115は、家庭または事務所のローカルエリアネットワークまたは複数の事務所または家庭等の範囲にわたる広域ネットワーク(インターネットを含む)であり得ることに留意されたい。
【0025】
インタフェース235は、パケット準備手段をNIC120の生パケットバッファ205にインタフェースする。例えば、インタフェース235は、パケット準備手段から準備された生パケットを受信するRS232Cデータポートであり得る。しかし、RS−422、RS−423、USBおよびIEEE1394のような他のシリアルポート技術も本実施例において利用できる。また、SCSIポート、セントロニクスタイプのポート、エンハンストパラレルポートおよびエクステンディッドケパビリティポートのようなパラレルポート技術を利用して、インタフェース235を実現できる。一実施形態では、パケット準備手段はホストノードで動作するソフトウェアプログラムである。このソフトウェアプログラムは、設定セッションの間に(例えば、各割り込み信号源がシステムに加えられるか、さもなければ導入されるとき)、各割り込み信号源に関する割り込み必要条件情報を受信できる。次に、準備された生パケットは、インタフェース235を介して生パケットバッファ205に提供できる。
【0026】
代替実施形態では、インタフェース235は、準備された生パケットを含むネットワークパケットを受信するパケットレシーバであり得る。生パケットは、受信されたネットワークパケットから抽出され、次に、生パケットバッファ205に提供される。このような一実施形態では、インタフェース235はパケットレシーバ210に含まれ、このパケットレシーバは、生パケットバッファ205に結合して、ネットワーク115から受信されたネットワークパケットから生パケットを抽出するようにプログラミングするか、さもなければ構成し得る。次に、抽出された生パケットはパケットレシーバ210から生パケットバッファ205に提供される。
【0027】
図4と図5は、本発明の一実施形態による遠隔割り込み信号を処理するための方法を示したフローチャートである。例えば、この方法は、図3の状態マシン220のような状態マシンによって実施できる。しかし、従来のCPUまたはマイクロコントローラ上で動作する1組のソフトウェアインストラクションのような、この方法を実行するために利用できるいくつかの処理環境があり、また本発明は、1つの特定の実施形態に限定することを意図するものではない。
【0028】
本方法は、IOデバイスまたはソフトウェアアプリケーションのような割り込み信号源からの割り込み信号の受信305に始まる。本方法は、受信された割り込み信号に基づく生パケットの選択310に進む。一実施形態では、対応する生パケットを収容するバッファ位置がビジーかさもなければ使用できないならば、プロセスは、受信された割り込み信号に関連する生パケットが使用可能になるまで選択ステップを複数回繰り返すステップを含み得る。生パケットは、割り込み要求を処理するか、あるいはそれに応答するために、ホストノードが必要とする要求デバイスまたはイベントの識別子のような情報を含む。
【0029】
本方法は、選択された生パケットの発行315をさらに含む。一実施形態では、選択された生パケットはネットワークパケット内に埋め込まれ、ネットワークを介してホストノードに転送される。ネットワークパケットはまた、意図する受信者のアドレスまたは識別子、および受信された割り込み信号に関連する要求、命令または指示のような他の情報を含み得る。本方法は、ホストからの応答を待つ待機320も含み得る。例えば、この応答は、選択された生パケットを含むネットワークパケットが受信され、然るべく応答されたことを指示し得る。或いは、この応答は、ネットワークパケットの転送が、輻奏(例えば、ホストノードがビジー)またはエラー(例えば、パケットに欠陥)により成功しなかったことを指示し得る。
【0030】
一実施形態では、本方法は、発行された生パケットが拒絶されたかどうかの決定325をさらに含む。例えば、この決定は、ホストノードから受信された応答に基づくことができる。本方法は、発行された生パケットが輻奏のため拒絶されたかどうかの決定330をさらに含み得る。発行された生パケットが輻奏のために拒絶されたならば、本方法は、リトライカウンタの増加335を含み得る。リトライカウンタは、特定の生パケットが特定の割り込み要求に応答して何回発行されたかを追跡するための手段を提供する。このような実施形態では、本方法は、リトライカウンタがその最大許容値にあるかどうかの決定340をさらに含み得る。リトライカウンタがその最大許容値にあるならば、リトライはそれ以上試みられない。むしろ、本方法はエラー記録340に進む。
【0031】
他方、輻奏でなく、他のある理由のために生パケットが拒絶されたならば、本方法はエラー記録340に進む。この場合、パケットは、例えばパケットの欠陥のため拒絶された可能性がある。さらに、ホストノードからの応答なしに経過する時間の最大値を設定すれば、タイムアウト状態を示すことができる。この場合、本方法は、タイムアウトエラーを記録するか、あるいはタイムアウトメッセージを表示することによって、タイムアウト状態を表すことを含み得る。代替実施形態では、輻奏でない事象に関連した失敗のためのリトライカウンタを設けることができ、これによって、このような失敗の場合に複数回のリトライを可能にすることに留意されたい。
【0032】
本発明の実施形態に関する上述の説明は、例示と説明のために提示されている。この説明は、開示した正確な形態に対し網羅的であること、あるいは本発明を前記形態に限定することを意図するものではない。多くの修正と変更が、当業者によって理解されるように、上記の内容を考慮して可能である。
【0033】
例えば、NIC120の機能はマイクロコントローラユニット(MCU)で実現することができ、この場合、割り込み信号源からの割り込み線はMCUのIOポートに結合し得る。MCUは、MCUに含まれた不揮発性メモリに記憶される1命令セットを実行できるプロセッサを含む。また、このメモリを使用して生パケットバッファ205を記憶できるであろう。命令セットにより、状態マシン220、パケットレシーバ210、パケットアセンブラ215およびポインタセレクタ225等の機能を実現し得る。生パケットバッファ205はまた、ソフトウェアベースのメモリによって実現し得る。また、MCUは、インタフェース235を実現するためのデータポート資源(例えば、USBまたはRS232C)を含み得る。要するに、本発明の機能性を実行するために利用される技術は、目標とする実現コスト、割り込み信号源の複雑さと多様性、および生パケットが遠隔割り込みに応答して送出されるネットワークの特性のような要因に依存する。
【0034】
本発明の範囲は本出願の詳細な説明でなく、むしろ添付請求項によって限定されることが意図される。
(付記1)遠隔割り込み信号を処理するための方法であって、
遠隔ノードにおいて割り込み信号源から割り込み信号を受信するステップと、受信された割り込み信号に基づき、割り込み信号源の識別子を含む生パケットを選択するステップと、
遠隔ノードからホストノードへネットワークを介して選択された生パケットを発行するステップと、
を含む方法。(1)
(付記2)割り込み信号源が、遠隔ノードに生じたイベントであり、また割り込み信号がイベントの表示である、付記1に記載の方法。
(付記3)選択ステップが、受信された割り込み信号に関連した生パケットが使用できないことに応答して、生パケットが使用可能になるまで、選択ステップを複数回繰り返すステップをさらに含む、付記1に記載の方法。(2)
(付記4)発行するステップが、選択された生パケットをネットワークパケット内に埋め込み、ホストノードへネットワークを介してネットワークパケットを転送することによって達成される、付記1に記載の方法。
(付記5)ネットワークパケットが、ホストに関連したアドレスと、受信された割り込み信号に関連した要求とを含む、付記4に記載の方法。
(付記6)ホストノードから受信された応答に基づき、発行された生パケットの状態を決定するステップをさらに含む、付記1に記載の方法。(3)
(付記7)発行された生パケットが拒絶されていたことに応答して、リトライカウンタを増加するステップをさらに含む、付記1に記載の方法。
(付記8)リトライカウンタが最大許容値にあることに応答して、エラーを記録するステップをさらに含む、付記7に記載の方法。
(付記9)発行された生パケットが拒絶されていたことに応答して、エラーを記録するステップをさらに含む、付記1に記載の方法。
(付記10)発行された生パケットに関するホストノードからの無応答の受信に応答して、タイムアウト状態を指示するステップをさらに含む、付記1に記載の方法。
(付記11)遠隔割り込みに応答して、ネットワークを介して生パケットを発行するためのシステムであって、
処理ユニットを含み、ネットワークに動作的に結合されて、発行された生パケットを受信するためのホストノードと、
ネットワークインタフェースモジュールと割り込み信号源とを含み、割り込み信号源から受信された割り込み信号に基づき割り込み信号源の識別子を含む、生パケットを発行するための、遠隔ノードと、
を具備するシステム。(4)
(付記12)遠隔ノードが、いくつかの多様な割り込み信号源を含み、各割り込み信号源が、前記遠隔ノードのネットワークインタフェースモジュールに記憶された少なくとも1つの生パケットに関連される、付記11に記載のシステム。
(付記13)ネットワークインタフェースシステムであって、
いくつかの生パケットを記憶するための生パケットバッファであって、各生パケットが、対応する割り込み信号源の識別子を含み、割り込み信号源が割り込み信号をネットワークインタフェースシステムに供給することに応答して、ネットワークインタフェースシステムが、ネットワークを介してホストノードに対応する生パケットを発行する、生パケットバッファを具備するネットワークインタフェースシステム。(5)
(付記14)いくつかの割り込み信号源に動作的に結合される割り込み信号入力と、生パケットバッファに動作的に結合される生パケットセレクト出力とを有し、割り込み信号源からの割り込み信号を受信し受信された割り込み信号に基づき、生パケットバッファに記憶された生パケットを選択するためのプロセッサをさらに具備する、付記13に記載のシステム。(6)
(付記15)選択された生パケット入力とネットワーク出力とを有し、選択された生パケットをネットワークパケット内に埋め込み、ホストノードへ前記ネットワークを介してネットワークパケットを発行するためのパケットアセンブラをさらに具備する、付記14に記載のシステム。(7)
(付記16)パケットアセンブラが、プロセッサの要求出力に動作的に結合される要求入力を有し、ネットワークパケットが、受信された割り込み信号に関連した要求を含む、付記15に記載のシステム。
(付記17)ネットワーク入力と状態出力とを有し、ホストノードから受信された応答に基づき、発行された生パケットの状態を決定するためのパケットレシーバをさらに具備する、付記14に記載のシステム。(8)
(付記18)発行された生パケットが拒絶状態に関連していることに応答して、前記プロセッサが、発行された生パケットの不成功の転送試みを追跡するためのリトライカウンタを増加する、付記14に記載のシステム。(9)
(付記19)前記リトライカウンタが最大許容値にあることに応答して、前記プロセッサがエラーを記録する、付記18に記載のシステム。
(付記20)発行された生パケットが拒絶された状態に関連されることに応答して、前記プロセッサがエラーを記録する、付記14に記載のシステム。
(付記21)前記ホストノードからの無応答の受信に応答して、前記プロセッサがタイムアウトの状態を指示する、付記14に記載のシステム。
(付記22)生パケットがホストノードに予め準備され、準備された生パケットが生パケットバッファに供給される、付記13に記載のシステム。(10)
【図面の簡単な説明】
【図1】本発明の一実施形態による遠隔割り込みに応答して生パケットを送出するためのシステムのブロック図である。
【図2】本発明の一実施形態による遠隔ネットワークインタフェースシステムの概略ブロック図である。
【図3】本発明の一実施形態による遠隔ネットワークインタフェースシステムの詳細なブロック図である。
【図4】本発明の一実施形態による遠隔割り込み信号を処理するための方法を示したフローチャートの前半である。
【図5】本発明の一実施形態による遠隔割り込み信号を処理するための方法を示したフローチャートの後半である。
Claims (10)
- 遠隔割り込み信号を処理するための方法であって、
遠隔ノードにおいて割り込み信号源から割り込み信号を受信するステップと、
受信された割り込み信号に基づき、割り込み信号源の識別子を含む生パケットを選択するステップと、
遠隔ノードからホストノードへネットワークを介して、選択された生パケットおよびホストノードの識別子を含むネットワークパケットを発行するステップと、
を含み、ホストノードは受信したネットワークパケットに含まれる生パケットにより遠隔ノードにおける割り込みの発生を認識する方法。 - 選択ステップが、受信された割り込み信号に対応する生パケットの転送に失敗したことに応答して、生パケットの転送が成功するまで、選択ステップを複数回繰り返すステップをさらに含む、請求項1に記載の方法。
- ホストノードから受信された応答に基づき、発行された生パケットの状態を決定するステップをさらに含む、請求項1に記載の方法。
- 遠隔割り込みに応答して、ネットワークを介してネットワークパケットを発行し受信するためのシステムであって、
処理ユニットを含み、ネットワークに動作的に結合されて、発行されたネットワークパケットを受信するためのホストノードと、
ネットワークインタフェースモジュールと割り込み信号源とを含み、割り込み信号源から受信された割り込み信号に基づき割り込み信号源の識別子を含む生パケットおよびホストノードの識別子を含むネットワークパケットを発行するための、遠隔ノードと、
を具備し、ホストノードは受信したネットワークパケットに含まれる生パケットにより遠隔ノードにおける割り込みの発生を認識するシステム。 - ネットワークインタフェースシステムであって、
いくつかの生パケットを記憶するための生パケットバッファであって、各生パケットが、対応する割り込み信号源の識別子を含み、割り込み信号源が割り込み信号をネットワークインタフェースシステムに供給することに応答して、ネットワークインタフェースシステムが、ネットワークを介してホストノードに、割り込み信号に対応する生パケットおよびホストノードの識別子を含むネットワークパケットを発行し、ホストノードは受信したネットワークパケットに含まれる生パケットにより遠隔ノードにおける割り込みの発生を認識する、生パケットバッファを具備するネットワークインタフェースシステム。 - いくつかの割り込み信号源に動作的に結合される割り込み信号入力と、生パケットバッファに動作的に結合される生パケットセレクト出力とを有し、割り込み信号源からの割り込み信号を受信し受信された割り込み信号に基づき、生パケットバッファに記憶された生パケットを選択するためのプロセッサをさらに具備する、請求項5に記載のシステム。
- 選択された生パケット入力とネットワークパケット出力とを有し、選択された生パケットをネットワークパケット内に埋め込み、ホストノードへ前記ネットワークを介してネットワークパケットを発行するためのパケットアセンブラをさらに具備する、請求項6に記載のシステム。
- ネットワーク入力と状態出力とを有し、ホストノードから受信された応答に基づき、発行された生パケットの状態を決定するためのパケットレシーバをさらに具備する、請求項6に記載のシステム。
- 発行された生パケットが拒絶状態に関連していることに応答して、前記プロセッサが、発行された生パケットの不成功の転送試みを追跡するためのリトライカウンタを増加する、請求項6に記載のシステム。
- 生パケットがホストノードに予め準備され、準備された生パケットが生パケットバッファに供給される、請求項5に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/785,071 US6732212B2 (en) | 2001-02-14 | 2001-02-14 | Launch raw packet on remote interrupt |
US09/785071 | 2001-02-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002323988A JP2002323988A (ja) | 2002-11-08 |
JP4034572B2 true JP4034572B2 (ja) | 2008-01-16 |
Family
ID=25134366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002036939A Expired - Fee Related JP4034572B2 (ja) | 2001-02-14 | 2002-02-14 | 遠隔割り込み信号の処理方法、システムおよびネットワークインターフェースシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US6732212B2 (ja) |
JP (1) | JP4034572B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6904489B2 (en) * | 2001-10-23 | 2005-06-07 | Digi International Inc. | Methods and systems for remotely accessing universal serial bus devices |
US7139218B2 (en) * | 2003-08-13 | 2006-11-21 | Intelliserv, Inc. | Distributed downhole drilling network |
US8234421B2 (en) * | 2004-04-21 | 2012-07-31 | Stmicroelectronics, Inc. | Smart card with selectively allocatable data buffers and associated methods |
US7831732B1 (en) * | 2005-07-29 | 2010-11-09 | Federal Reserve Bank Of Chicago | Network connection utility |
RU2496714C1 (ru) * | 2012-04-20 | 2013-10-27 | Открытое акционерное общество "Научно-исследовательский институт конструкционных материалов на основе графита "НИИграфит" | Способ получения высокоплотного графита |
US10216662B2 (en) * | 2015-09-26 | 2019-02-26 | Intel Corporation | Hardware mechanism for performing atomic actions on remote processors |
US10142425B2 (en) * | 2016-05-23 | 2018-11-27 | Wyse Technology L.L.C. | Session reliability for a redirected USB device |
US10867092B2 (en) | 2017-12-16 | 2020-12-15 | Intel Corporation | Avoiding asynchronous enclave exits based on requests to invalidate translation lookaside buffer entries |
US10725946B1 (en) * | 2019-02-08 | 2020-07-28 | Dell Products L.P. | System and method of rerouting an inter-processor communication link based on a link utilization value |
DE112020002497T5 (de) | 2019-05-23 | 2022-04-28 | Hewlett Packard Enterprise Development Lp | System und verfahren zur dynamischen zuweisung von reduktionsmotoren |
US11196799B2 (en) * | 2020-02-03 | 2021-12-07 | Dell Products L.P. | Redirection of USB devices from hardware isolated virtual desktop infrastructure clients |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR920008461B1 (ko) * | 1989-05-15 | 1992-09-30 | 인터내셔널 비지네스 머신즈 코포레이션 | 프로세스 인터럽팅 시스템 및 그 방법 |
US5842026A (en) * | 1996-07-01 | 1998-11-24 | Sun Microsystems, Inc. | Interrupt transfer management process and system for a multi-processor environment |
US6247091B1 (en) * | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6170025B1 (en) * | 1997-08-29 | 2001-01-02 | Intel Corporation | Distributed computer system supporting remote interrupts and lock mechanism |
US6233636B1 (en) | 1998-12-03 | 2001-05-15 | International Business Machines Corporation | Method and system for allowing PCI bus transactions to be performed at higher operating frequencies |
US6205508B1 (en) | 1999-02-16 | 2001-03-20 | Advanced Micro Devices, Inc. | Method for distributing interrupts in a multi-processor system |
US6684281B1 (en) * | 2000-11-02 | 2004-01-27 | Fujitsu Limited | Fast delivery of interrupt message over network |
US6658521B1 (en) * | 2000-12-22 | 2003-12-02 | International Business Machines Corporation | Method and apparatus for address translation on PCI bus over infiniband network |
-
2001
- 2001-02-14 US US09/785,071 patent/US6732212B2/en not_active Expired - Lifetime
-
2002
- 2002-02-14 JP JP2002036939A patent/JP4034572B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20020120800A1 (en) | 2002-08-29 |
US6732212B2 (en) | 2004-05-04 |
JP2002323988A (ja) | 2002-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100290943B1 (ko) | 유니버설 시리얼 버스 제어 이전을 처리하는 장치 및 방법 | |
KR100290944B1 (ko) | 복합 유니버설 시리얼 버스 제어기에 인터페이스를 제공하기 위한 장치 및 방법 | |
KR100290597B1 (ko) | 이중 버퍼링을 지원하는 유니버설 시리얼 버스 종단점 파이프의 실시장치 및 실시방법 | |
US7069373B2 (en) | USB endpoint controller flexible memory management | |
US6826123B1 (en) | Global recovery for time of day synchronization | |
US6427198B1 (en) | Method, system, and program for determining system configuration | |
US8499308B2 (en) | Initiator notification method and apparatus | |
US20050081080A1 (en) | Error recovery for data processing systems transferring message packets through communications adapters | |
US20050080933A1 (en) | Master-slave adapter | |
JP4034572B2 (ja) | 遠隔割り込み信号の処理方法、システムおよびネットワークインターフェースシステム | |
CN105373345B (zh) | 存储器设备和模块 | |
US20050080869A1 (en) | Transferring message packets from a first node to a plurality of nodes in broadcast fashion via direct memory to memory transfer | |
US20050080920A1 (en) | Interpartition control facility for processing commands that effectuate direct memory to memory information transfer | |
US7281163B2 (en) | Management device configured to perform a data dump | |
CN114868117A (zh) | 通过控制总线进行的对等存储设备消息传送 | |
CN101447931B (zh) | 一种排他操作的实现方法和装置 | |
US20050080945A1 (en) | Transferring message packets from data continued in disparate areas of source memory via preloading | |
US20050078708A1 (en) | Formatting packet headers in a communications adapter | |
KR102303424B1 (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
US5343480A (en) | System for detecting loss of message | |
JP4572138B2 (ja) | サーバ装置、サーバシステム、及びサーバシステムでの系切り換え方法 | |
CN111930582A (zh) | 系统管理总线检测平台、处理器及系统管理总线检测方法 | |
CN111083072A (zh) | 交换机报文传输装置及方法 | |
JPWO2007096987A1 (ja) | エラー制御装置 | |
US6938078B1 (en) | Data processing apparatus and data processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060919 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070409 |
|
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: 20070925 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071025 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101102 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4034572 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101102 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111102 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111102 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121102 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121102 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131102 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |