JP2002323988A - Method and system for processing remote interrupt signal, and network interface system - Google Patents

Method and system for processing remote interrupt signal, and network interface system

Info

Publication number
JP2002323988A
JP2002323988A JP2002036939A JP2002036939A JP2002323988A JP 2002323988 A JP2002323988 A JP 2002323988A JP 2002036939 A JP2002036939 A JP 2002036939A JP 2002036939 A JP2002036939 A JP 2002036939A JP 2002323988 A JP2002323988 A JP 2002323988A
Authority
JP
Japan
Prior art keywords
raw
interrupt signal
packet
network
raw packet
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.)
Granted
Application number
JP2002036939A
Other languages
Japanese (ja)
Other versions
JP4034572B2 (en
Inventor
Hirohide Sugawara
博英 菅原
Takashi Miyoshi
貴史 三吉
Jeffrey D Larson
ディー ラルソン ジェフリー
Kenji Horie
健志 堀江
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2002323988A publication Critical patent/JP2002323988A/en
Application granted granted Critical
Publication of JP4034572B2 publication Critical patent/JP4034572B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/24Interrupt
    • G06F2213/2418Signal interruptions by means of a message

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To process an interrupt that occurs in a remote node connected to a network. SOLUTION: When the interrupt occurs in the remote node, a raw packet including the address of a host device that should process the interrupt and an event identifier is selected among preprepared raw packets and transmitted to a host node through the network 115.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、遠隔割り込み、よ
り具体的には、遠隔割り込みに応答してネットワーク上
に生パケットを発行することに関する。
The present invention relates to remote interrupts, and more particularly, to issuing raw packets on a network in response to remote interrupts.

【0002】[0002]

【従来の技術】割り込みは、特定のイベントが生じたこ
とをホストデバイスまたはプログラムに通知する信号で
ある。ホストが割り込み信号を受信した場合、ホストは
指定された動作をとるか、あるいは割り込み信号を単に
無視することができる。ある割り込み信号には、他の割
り込み信号または処理よりも高い優先度を割り当てるこ
とができる。すなわち、高い優先度の割り込み信号は、
そのより高い優先度の割り込みが処理される間、より低
い優先度の処理を一時的に停止させることができる。簡
単に言えば、割り込み信号はハードウェアまたはソフト
ウェアによって生成することができ、これによって、あ
るイベントが生じたことを指示する。しかし、割り込み
信号がその意図する目的を果たすためには、割り込み信
号は、割り込みを解釈して対応する動作をとることがで
きるデバイスによって受信されなければならない。
2. Description of the Related Art An interrupt is a signal that notifies a host device or a program that a specific event has occurred. If the host receives an interrupt signal, the host can take the specified action or simply ignore the interrupt signal. Certain interrupt signals can be assigned a higher priority than other interrupt signals or processes. That is, a high priority interrupt signal
While the higher priority interrupt is being serviced, lower priority processing can be temporarily halted. Briefly, an interrupt signal can be generated by hardware or software, thereby indicating that an event has occurred. However, for an interrupt signal to serve its intended purpose, the interrupt signal must be received by a device that can interpret the interrupt and take the corresponding action.

【0003】従来のコンピュータシステムでは、入力/
出力デバイス(IOデバイス)またはコンピュータアプ
リケーションによって生成される割り込みは、一般的
に、割り込みデバイスに対してローカルな割り込みコン
トローラおよび中央処理ユニット(CPU)によって処
理される。ローカルホストCPUは、ローカルホストバ
スに結合された各デバイスタイプからの割り込み要求に
応答する。IOデバイスは、ダイレクトラインによって
または共有ラインによって割り込みコントローラに結合
できる。割り込みコントローラは割り込み要求を受信
し、それらを割り込みに関連する割り込みの番号と共に
CPUに提供する。このように、割り込み要求の処理
は、ホストCPUのような、割り込みデバイスに対して
ローカルなインテリジェントホストデバイスを必要とす
る。
In a conventional computer system, input / output
Interrupts generated by output devices (IO devices) or computer applications are typically handled by an interrupt controller and central processing unit (CPU) local to the interrupt device. The local host CPU responds to interrupt requests from each device type coupled to the local host bus. IO devices can be coupled to the interrupt controller by direct lines or by shared lines. The interrupt controller receives the interrupt requests and provides them to the CPU along with the number of the interrupt associated with the interrupt. Thus, processing of an interrupt request requires an intelligent host device, such as a host CPU, local to the interrupt device.

【0004】インテリジェントデバイスに関するこの必
要条件は問題となり得る。例えば、ネットワークインタ
フェースカード(NIC)を介してネットワークに結合
されたいくつかのアンインテリジェントIOデバイスの
みを含む遠隔ノードを有するネットワーク環境について
考えてみよう。各IOデバイスは、割り込み要求をホス
トCPUノードに通知するためのユニークな1組の必要
条件を有する。すなわち、サポートされた各IOデバイ
スに関する種々のパラメータを記憶するために、遠隔N
ICに含まれる専用レジスタが使用される。このように
して、遠隔NICを利用して遠隔割り込みを処理でき
る。
[0004] This requirement for intelligent devices can be problematic. For example, consider a network environment having remote nodes that include only some unintelligent IO devices coupled to a network via a network interface card (NIC). Each IO device has a unique set of requirements for notifying the host CPU node of an interrupt request. That is, to store various parameters for each supported IO device, the remote N
A dedicated register included in the IC is used. In this manner, the remote interrupt can be processed using the remote NIC.

【0005】しかし、IOデバイスが実行する各動作
は、異なる1組の割り込みパラメータまたは必要条件を
有する場合がある。さらに、各IOデバイスは、そのノ
ードの他のIOデバイスの割り込み必要条件と異なる種
々の割り込み必要条件を有する場合がある。このよう
に、IOデバイスおよびそれらのIOデバイスの各々に
よって実行される動作の多様性は、遠隔NICに相当量
のレジスタ空間を必要とする可能性がある。この問題に
対する1つの解決方法は、各IOデバイスのためのサポ
ート操作の数を単に制限することである。しかし、この
ような解決方法は、必ずしも望ましくまた実用的とは限
らない。さらに、IOデバイスの割り込み必要条件が未
知または明らかでないならば、そのデバイスのために遠
隔NICを構成することができない。
However, each operation performed by an IO device may have a different set of interrupt parameters or requirements. Further, each IO device may have various interrupt requirements that are different from the interrupt requirements of other IO devices at that node. Thus, the variety of IO devices and the operations performed by each of those IO devices can require a significant amount of register space on the remote NIC. One solution to this problem is to simply limit the number of support operations for each IO device. However, such a solution is not always desirable and practical. Furthermore, if the interrupt requirements of an IO device are not known or apparent, a remote NIC cannot be configured for that device.

【0006】[0006]

【発明が解決しようとする課題】したがって、必要なこ
とは、遠隔およびアンインテリジェントノードにおいて
発生した割り込みを処理するための技術である。この技
術は、複数の多様な割り込み必要条件と、種々の割り込
みデバイスおよびイベントを収容するようにフレキシブ
ルでなければならない。
Therefore, what is needed is a technique for handling interrupts that occur at remote and unintelligent nodes. This technique must be flexible to accommodate multiple and diverse interrupt requirements and various interrupt devices and events.

【0007】[0007]

【課題を解決するための手段】本発明の1つの実施形態
は、遠隔割り込み信号を処理するための方法を提供す
る。本方法は、遠隔ノードにおいて割り込み信号源から
割り込み信号を受信することを含む。さらに、本方法
は、受信された割り込み信号に基づき生パケットを選択
することを含み、生パケットは割り込み信号源の識別子
を含む。本方法は、遠隔ノードからホストノードへネッ
トワークを介して選択された生パケットを送出すること
をさらに含む。
SUMMARY OF THE INVENTION One embodiment of the present invention provides a method for handling a remote interrupt signal. The method includes receiving an interrupt signal at a remote node from an interrupt signal source. Further, the method includes selecting a raw packet based on the received interrupt signal, wherein the raw packet includes an identifier of the interrupt signal source. The method further includes sending the selected raw packet from the remote node to the host node over the network.

【0008】本発明の他の実施形態は、遠隔割り込みに
応答してネットワークを介して生パケットを発行するた
めのシステムを提供する。本システムは、処理ユニット
を含むホストノードを含む。ホストノードはネットワー
クに動作的に結合され、また発行された生パケットを受
信するためにある。本システムの本実施形態は、ネット
ワークインタフェースモジュールと割り込み信号源とを
含む遠隔ノードをさらに含む。ネットワークインタフェ
ースモジュールは、割り込み信号源から受信された割り
込み信号に基づき生パケットを発行するためにある。生
パケットは割り込み信号源の識別子を含む。
Another embodiment of the present invention provides a system for issuing raw packets over a network in response to a remote interrupt. The system includes a host node that includes a processing unit. The host node is operatively coupled to the network and is for receiving issued raw packets. This embodiment of the system further includes a remote node that includes a network interface module and an interrupt signal source. The network interface module is for issuing a raw packet based on the interrupt signal received from the interrupt signal source. The raw packet contains the interrupt source identifier.

【0009】本発明の他の実施形態はネットワークイン
タフェースシステムを提供する。このネットワークイン
タフェースシステムは、いくつかの生パケットを記憶す
るための生パケットバッファを含み、各生パケットは、
対応する割り込み信号源の識別子を含む。割り込み信号
源が割り込み信号をネットワークインタフェースシステ
ムに供給することに応答して、ネットワークインタフェ
ースシステムは、対応する生パケットをネットワークを
介してホストノードに発行する。
[0009] Another embodiment of the present invention provides a network interface system. The network interface system includes a raw packet buffer for storing a number of raw packets, each raw packet comprising:
Contains the identifier of the corresponding interrupt signal source. In response to the interrupt source supplying the interrupt signal to the network interface system, the network interface system issues a corresponding raw packet to the host node via the network.

【0010】本明細書に記述した特徴および利点はすべ
てが包括的とは限らず、また特に、図面、明細書および
請求の範囲を考慮すれば、追加の多くの特徴および利点
が当業者に明白となるであろう。さらに、本明細書で用
いた用語は、主に読みやすさと説明目的のために選択さ
れており、また創意に富んだ主題の範囲を限定するもの
でないことを指摘する。
[0010] Not all features and advantages described herein are all-inclusive, and many additional features and advantages will be apparent to those skilled in the art, especially in light of the drawings, specification and claims. It will be. Furthermore, it is pointed out that the terms used herein have been chosen primarily for readability and explanatory purposes and do not limit the scope of the inventive subject matter.

【0011】[0011]

【発明の実施の形態】図1は、本発明の一実施形態によ
る遠隔割り込みに応答して生パケットを送出できるシス
テムのブロック図である。システムは、ネットワーク1
15を介して遠隔ノードに関連したホストノードを含
む。ホストノードは、ホストバスによってネットワーク
インタフェースカード(NIC)110に動作的に結合
される中央処理ユニット(CPU)105を含む。他方
で、遠隔ノードは、システムバスまたはIOバス等によ
ってCPU125と、いくつかの入力/出力(IO)デ
バイス130(例えば130aと130b)とに動作的
に結合されるNIC120を含む。遠隔ノードに含まれ
るデバイスの各々は、ハードウェア割り込みまたはソフ
トウェア割り込みであるにせよ、割り込み信号を生成で
きる。
FIG. 1 is a block diagram of a system capable of sending raw packets in response to a remote interrupt according to one embodiment of the present invention. The system is network 1
15 includes a host node associated with a remote node. The host node includes a central processing unit (CPU) 105 operatively coupled to a network interface card (NIC) 110 by a host bus. On the other hand, the remote node includes a NIC 120 operatively coupled to the CPU 125 and some input / output (IO) devices 130 (eg, 130a and 130b), such as by a system bus or IO bus. Each of the devices included in the remote node can generate an interrupt signal, whether a hardware or software interrupt.

【0012】いくつかの異なる代替実施形態を構成する
ことが可能であり、本発明は、任意の1つの特定の実施
形態または構成に限定することを意図するものではない
ことに留意されたい。例えば、遠隔ノードはCPU12
5を含む必要がないか、あるいは1つ以上のCPU12
5を含み得る。さらに、ネットワーク115に関連する
任意の数のノードがあり得る。一実施形態では、遠隔ノ
ードは、ネットワークカード120の機能が統合された
単一のIOデバイス130を含む。ホストノードのホス
トバスならびに遠隔ノードのシステム/IOバスは、周
辺装置相互接続(PCI)バスまたは他の従来のバスの
技術であり得る。本開示を考慮すると、他の実施形態お
よび構成が明白である。
It should be noted that several different alternative embodiments can be configured and the invention is not intended to be limited to any one particular embodiment or configuration. For example, the remote node is the CPU 12
5 or one or more CPUs 12
5 may be included. Further, there can be any number of nodes associated with network 115. In one embodiment, the remote node includes a single IO device 130 that integrates the functions of the network card 120. The host bus of the host node as well as the system / IO bus of the remote node may be a Peripheral Component Interconnect (PCI) bus or other conventional bus technology. Other embodiments and configurations are apparent in light of the present disclosure.

【0013】一般に、イベントは、生成されるべき割り
込み信号をトリガする遠隔ノードに生じる。割り込み信
号源は、遠隔ノードに含まれるデバイスの任意のデバイ
スからのものであり得る。例えば、この割り込み信号
は、CPU125により実行されるプログラムが、例え
ばデータをプログラムに提供するというような、何かを
ホストノードのCPU105が行うことを要求する場合
にプログラムによって生成される。同様に、割り込み信
号は、印刷要求を受けたが目下用紙が切れているプリン
タのようなIOデバイス130によって生成される。割
り込み信号がCPU125またはIOデバイス130等
によって生成される要因には、他の多くの要因がある。
一般的に、割り込みは、エラー、動作完了(例えばダイ
レクトメモリアクセスの完了)、あるいは他の特殊なイ
ベントによって生成される。
Generally, an event occurs at a remote node that triggers an interrupt signal to be generated. The interrupt signal source may be from any of the devices included in the remote node. For example, the interrupt signal is generated by the program when the program executed by the CPU 125 requests that the CPU 105 of the host node perform something, for example, providing data to the program. Similarly, the interrupt signal is generated by an IO device 130, such as a printer, that has received a print request but has run out of paper. There are many other factors that cause the interrupt signal to be generated by the CPU 125, the IO device 130, or the like.
Generally, an interrupt is generated by an error, operation completion (eg, completion of a direct memory access), or other special event.

【0014】割り込み信号が生成される理由に関係な
く、応答動作をとることができるようにホストノード
(例えばCPU105)に割り込みを認識させなければ
ならない。割り込みがホストノードに通信されないなら
ば、おそらく望ましくない結果ではあるが、あたかも割
り込みが生成されなかったとして、それは単に無視され
るであろう。図示した実施形態では、NIC120は、
ホストノードによって予め準備された生パケットを発行
または「送出する」ことによって、割り込み信号源の1
つにより生成される割り込み信号に応答する。例えば、
生パケットは、処理ホストデバイスのアドレスと、生成
された割り込み信号に関連したデバイスまたはイベント
の識別子と、ホストが割り込み要求を処理する際に必要
とする他の関連情報とを指定できる。例えば、生パケッ
トはまた、割り込みデバイスに関する情報または割り込
みデバイスに関連した状態コードを含む。
Regardless of why the interrupt signal is generated, the host node (eg, CPU 105) must recognize the interrupt so that a response operation can be taken. If the interrupt was not communicated to the host node, it would simply be ignored, as if no interrupt was generated, probably with undesirable consequences. In the illustrated embodiment, NIC 120 includes:
By issuing or "sending" a raw packet prepared by the host node, one of the interrupt signal sources
Respond to an interrupt signal generated by the For example,
The raw packet can specify the address of the processing host device, the identifier of the device or event associated with the generated interrupt signal, and other relevant information needed by the host to process the interrupt request. For example, the raw packet also includes information about the interrupting device or status code associated with the interrupting device.

【0015】生パケットは、初期のシステム設定セッシ
ョンの間に、あるいは新しい割り込み信号源(例えば、
CPU125、IOデバイス130またはあるイベン
ト)がシステムに加えられるとき、ホストソフトウェ
ア、ハードウェア、ファームウェアまたは任意のそれら
の組合せによって準備できる。生パケットが準備される
と、生パケットは、対応する遠隔ノード(例えばNIC
120)に伝達され、記憶される。図示した実施形態で
は、準備された生パケットは、NIC120に含まれる
バッファに記憶される。遠隔割り込み信号源の1つが割
り込み信号を生成するとき、その信号はNIC120に
よって受信される。
[0015] Raw packets may be transmitted during an initial system setup session or at a new interrupt source (eg,
When CPU 125, IO device 130 or certain events) are added to the system, they can be provisioned by host software, hardware, firmware or any combination thereof. Once the raw packet is prepared, the raw packet is sent to the corresponding remote node (eg, NIC
120) and stored. In the illustrated embodiment, the prepared raw packets are stored in a buffer included in NIC 120. When one of the remote interrupt signal sources generates an interrupt signal, that signal is received by NIC 120.

【0016】いくつかの方法で、例えば電気信号(例え
ばロジックハイまたはロウ信号)の形態でまたはイベン
トの発生(例えばタイマの経過)により、割り込み信号
を表し得ることに留意されたい。NIC120は、その
特定の割り込み信号に対応する生パケットを発行するこ
とによって割り込み信号に応答する。この生パケット
は、ネットワーク115上を転送され、ホストノードに
よって受信される。次に、ホストノード(例えばCPU
105)は生パケットを調べ、関連割り込み要求を評価
し、また応答動作をとることができる。
Note that the interrupt signal may be represented in several ways, for example, in the form of an electrical signal (eg, a logic high or low signal) or by the occurrence of an event (eg, the passage of a timer). NIC 120 responds to the interrupt signal by issuing a raw packet corresponding to that particular interrupt signal. This raw packet is transferred over the network 115 and received by the host node. Next, the host node (for example, CPU
105) can examine the raw packet, evaluate the associated interrupt request, and take action.

【0017】図2は、本発明の一実施形態による遠隔ネ
ットワークインタフェースシステムの概略ブロック図で
ある。図から理解できるように、NIC120の本実施
形態は生パケットバッファ205を含む。この生パケッ
トバッファ205は、いくつかの生パケット(例えば、
生パケット0、生パケット1、生パケット2、等)を含
む。これらの生パケットの各々は、特定の割り込み線に
関連され、各割り込み線は特定の割り込み信号源(例え
ば、IOデバイス130、CPU135またはイベン
ト)に関連される。割り込み線がアクティブになること
に応答して、関連生パケットがネットワーク115に発
行される。以前に示したように、生パケットバッファ2
05に記憶された生パケットは、システム設定セッショ
ン等の間に予め準備され、次に、生パケットバッファ2
05に記憶するためにNIC120に提供される。
FIG. 2 is a schematic block diagram of a remote network interface system according to one embodiment of the present invention. As can be seen, this embodiment of NIC 120 includes a raw packet buffer 205. This raw packet buffer 205 stores several raw packets (for example,
Raw packet 0, raw packet 1, raw packet 2, etc.). Each of these raw packets is associated with a particular interrupt line, and each interrupt line is associated with a particular interrupt signal source (eg, IO device 130, CPU 135 or event). In response to the activation of the interrupt line, an associated raw packet is issued to the network 115. As previously shown, raw packet buffer 2
05 is prepared in advance during a system setting session or the like, and then the raw packet buffer 2
05 is provided to the NIC 120 for storage.

【0018】一実施形態では、生パケットバッファ20
5はスタティックランダムアクセスメモリ(SRAM)
で実現される。しかし、他のメモリ手段を使用して、生
パケットバッファ205を実現できる。例えば、生パケ
ットバッファ205はダイナミックランダムアクセスメ
モリで実現し得る。或いは、生パケットバッファ205
は、フラッシュメモリチップまたは電子的に消去可能な
プログラマブルリードオンリメモリ(EEPROM)の
ような不揮発性メモリで実現し得る。或いは、生パケッ
トバッファは、それぞれが特定の生パケットの内容に対
応するデータ構造の連結リストであり得る。要するに、
アドレス可能、さもなければインデックス可能な内容を
提供する任意の記憶媒体(例えば、ハードウェア、ソフ
トウェア、ファームウェア)を使用して、生パケットバ
ッファ205を実現できる。
In one embodiment, the raw packet buffer 20
5 is a static random access memory (SRAM)
Is realized. However, the raw packet buffer 205 can be implemented using other memory means. For example, raw packet buffer 205 may be implemented with a dynamic random access memory. Alternatively, raw packet buffer 205
Can be implemented with a non-volatile memory such as a flash memory chip or an electronically erasable programmable read only memory (EEPROM). Alternatively, the raw packet buffer may be a linked list of data structures, each corresponding to the contents of a particular raw packet. in short,
The raw packet buffer 205 may be implemented using any storage medium (eg, hardware, software, firmware) that provides addressable or otherwise indexable content.

【0019】図3は、本発明の一実施形態による遠隔ネ
ットワークインタフェースシステムの詳細なブロック図
である。NIC120の本実施形態は、生パケットバッ
ファ205、パケットレシーバ210、パケットアセン
ブラ215、いくつかの状態マシン220(例えば、S
M0、SM1、SM2、SMN)、ポインタセレクタ2
25、割り込みコントローラ230およびパケット準備
手段へのインタフェース235を含む。例えば、これら
のコンポーネントの各々は、ハードウェア、ソフトウェ
ア、ファームウェアまたは任意のそれらの組合せで実現
し得る。これらのコンポーネントは、物理的には、互い
に独立して物理的に実現可能であり(例えば、個々のモ
ジュールまたは集積回路)、あるいは単一の集積回路ま
たはチップセット等で実現可能である。
FIG. 3 is a detailed block diagram of a remote network interface system according to an embodiment of the present invention. This embodiment of NIC 120 includes a raw packet buffer 205, a packet receiver 210, a packet assembler 215, and some state machines 220 (eg, S
M0, SM1, SM2, SMN), pointer selector 2
25, an interrupt controller 230 and an interface 235 to the packet preparation means. For example, each of these components may be implemented in hardware, software, firmware, or any combination thereof. These components can be physically realizable independently of each other (eg, individual modules or integrated circuits), or can be realized on a single integrated circuit or chipset, or the like.

【0020】パケットレシーバ210はネットワークか
らパケット(ネットワークパケットと呼ぶ)を受信し、
パケットから情報を抽出し、またその情報をNIC12
0に包括的に利用可能にする。図示した実施形態では、
ネットワークパケットから抽出された情報は状態情報を
含む。次に、この状態情報は状態出力を介して状態マシ
ン220に提供される。例えば、パケットレシーバ21
0の状態出力は、ノーマル、エラーまたはリトライの状
態を指示し得る。ノーマルは、以前の生パケットの転送
が成功したこと、および現在異常状態がないことを指示
する。しかし、エラーまたはリトライの状態は、以前に
転送された生パケットが拒絶されたことを指示する。エ
ラー状態は、以前に送出された生パケットに不具合があ
ったか、さもなければエラー状態に関連していたことを
指定し、一方、リトライ状態は、以前に送出された生パ
ケットの目標ノードがビジーまたは使用できなかったこ
とを指定する。どちらの場合も、割り込み要求は、この
転送が成功し、認識されるまで複数回試みることができ
る。状態マシン220にカウンタを使用して、リトライ
の数を追跡し、永続的な繰返し状態を防止することがで
きる。
The packet receiver 210 receives a packet (called a network packet) from the network,
Extract information from the packet and send the information to NIC12
Make it comprehensively available to 0. In the illustrated embodiment,
Information extracted from the network packet includes state information. This state information is then provided to state machine 220 via a state output. For example, the packet receiver 21
A status output of 0 may indicate a normal, error or retry status. Normal indicates that the transfer of the previous raw packet was successful and that there is currently no abnormal condition. However, an error or retry status indicates that a previously transmitted raw packet was rejected. The error condition specifies that the previously sent raw packet was defective or otherwise related to an error condition, while the retry condition indicates that the target node of the previously sent raw packet was busy or Specifies that it could not be used. In either case, the interrupt request can be tried multiple times until this transfer is successful and acknowledged. A counter may be used in state machine 220 to keep track of the number of retries and prevent a permanent repeated state.

【0021】割り込みコントローラ230は、IOデバ
イスおよびソフトウェアアプリケーションのような割り
込み信号源からの割り込み線に結合される。割り込みコ
ントローラ230は割り込み要求を受信し、対応する状
態マシン220にその割り込み要求を行う。例えば、割
り込み2に関連した割り込み線が受信されたならば、割
り込みコントローラは、状態マシン220のSM2にこ
の割り込み要求を提供する。一実施形態では、割り込み
コントローラ230によって受信される各割り込み線は
状態マシン220に関連される(例えば、割り込み線0
はSM0に対応し、割り込み線1はSM1に対応し、割
り込み線2はSM2に対応する、等々)。しかし、割り
込みコントローラ230によって受信される割り込み線
はまた、特定の状態マシン220を共有し得る(例え
ば、割り込み線0と1はSM0に対応し得る)。割り込
み線/状態マシン対の数は、割り込み信号源の多様性お
よび割り込み信号源に関連した様々な割り込み必要条件
のような要因に関係する。
The interrupt controller 230 is coupled to an interrupt line from an interrupt signal source such as an IO device and a software application. Interrupt controller 230 receives the interrupt request and makes the interrupt request to corresponding state machine 220. For example, if the interrupt line associated with interrupt 2 is received, the interrupt controller provides this interrupt request to SM2 of state machine 220. In one embodiment, each interrupt line received by interrupt controller 230 is associated with a state machine 220 (eg, interrupt line 0).
Corresponds to SM0, interrupt line 1 corresponds to SM1, interrupt line 2 corresponds to SM2, and so on). However, the interrupt lines received by the interrupt controller 230 may also share a particular state machine 220 (eg, interrupt lines 0 and 1 may correspond to SM0). The number of interrupt line / state machine pairs depends on factors such as the variety of interrupt sources and the various interrupt requirements associated with the interrupt sources.

【0022】状態マシン220は、1組の状態(例え
ば、初期状態、現在の状態および次の状態)、1組の入
力イベント、1組の出力イベントおよび状態遷移機能を
含む。状態遷移機能は現在の状態と入力イベントとを取
り、新しい組の出力イベントおよび次の状態を返す。図
示した実施形態では、各状態マシン220に対する入力
イベントは、割り込みコントローラ230の出力とパケ
ットレシーバ210の状態出力とを含む。各状態マシン
220の出力イベントは、受信された割り込み要求に関
連する要求と、いくつかの生パケットセレクタ出力とを
含む。出力イベントおよび次の状態の値は、状態マシン
および入力イベントの現在の状態に依存する。一般に、
状態マシン220は、順序づけられた1組の入力イベン
トを対応する1組の出力イベントに、マッピングする。
State machine 220 includes a set of states (eg, initial state, current state, and next state), a set of input events, a set of output events, and state transition functions. The state transition function takes a current state and an input event and returns a new set of output events and the next state. In the illustrated embodiment, the input events for each state machine 220 include the output of the interrupt controller 230 and the state output of the packet receiver 210. The output events for each state machine 220 include the request associated with the received interrupt request and some raw packet selector outputs. Output event and next state values depend on the state machine and the current state of the input event. In general,
State machine 220 maps an ordered set of input events to a corresponding set of output events.

【0023】一実施形態では、状態マシン220は、特
定の割り込み要求に応答して生パケットが転送される回
数を追跡するカウンタを保持する。ホストノードによっ
て拒絶された生パケットは、例えば、送信エラーのた
め、あるいはパケットレシーバ210の状態出力により
指定されたようにホストノードがビジーだったため、再
送信する必要があるかもしれない。状態マシン220の
現在の状態が、生パケットが最大許容回数リトライされ
たこと(例えば、エラーまたは輻奏のため)を示すなら
ば、対応する出力イベントおよび次の状態は、要求をリ
トライし続けるのでなくエラーを記録する。本開示を考
慮すると、状態マシン220のカウンタの別形態が明白
である。例えば、輻奏に基づく理由のため拒絶された生
パケットは複数回リトライされ、一方、エラーに基づく
理由のため拒絶された生パケットは、全くリトライされ
ない。エラーという状態は即座に記録されるか、さもな
ければ、システム管理者またはユーザに知らされる。
In one embodiment, state machine 220 maintains a counter that tracks the number of times a raw packet is transferred in response to a particular interrupt request. Raw packets rejected by the host node may need to be retransmitted, for example, due to a transmission error or because the host node was busy as specified by the status output of packet receiver 210. If the current state of the state machine 220 indicates that the raw packet has been retried a maximum number of times (eg, due to an error or radiation), the corresponding output event and the next state will continue to retry the request. And record the error. In view of the present disclosure, another form of counter for state machine 220 is apparent. For example, a raw packet rejected for a reason based on radiation is retried multiple times, while a raw packet rejected for an error-based reason is not retried at all. An error condition is logged immediately or otherwise signaled to the system administrator or user.

【0024】ポインタセレクタ225は、状態マシン2
20の生パケットセレクタ出力を、生パケットバッファ
205内の対応する生パケットの位置を識別するアドレ
スに変換する。次に、選択された生パケットは、受信さ
れた割り込み信号に関連する要求と共に、パケットアセ
ンブラ215に提供される。次に、パケットアセンブラ
215は、要求しているデバイスの識別子を含む受信さ
れた割り込み信号および生パケットに関連する要求を含
むネットワークパケットを生成する。パケットアセンブ
ラ215の出力はネットワーク115に動作的に結合さ
れ、これによって、組み立てられたネットワークパケッ
トがネットワーク115を介してホストノードに転送さ
れるのを可能にする。ネットワーク115は、家庭また
は事務所のローカルエリアネットワークまたは複数の事
務所または家庭等の範囲にわたる広域ネットワーク(イ
ンターネットを含む)であり得ることに留意されたい。
The pointer selector 225 is a state machine 2
The output of the raw packet selector 20 is converted to an address identifying the position of the corresponding raw packet in the raw packet buffer 205. The selected raw packet is then provided to packet assembler 215, along with the request associated with the received interrupt signal. Next, the packet assembler 215 generates a network packet that includes the request associated with the raw packet and the received interrupt signal that includes the identifier of the requesting device. The output of the packet assembler 215 is operatively coupled to the network 115, thereby enabling assembled network packets to be transferred over the network 115 to a host node. Note that network 115 can be a local area network of a home or office or a wide area network (including the Internet) that spans multiple offices or homes.

【0025】インタフェース235は、パケット準備手
段をNIC120の生パケットバッファ205にインタ
フェースする。例えば、インタフェース235は、パケ
ット準備手段から準備された生パケットを受信するRS
232Cデータポートであり得る。しかし、RS−42
2、RS−423、USBおよびIEEE1394のよ
うな他のシリアルポート技術も本実施例において利用で
きる。また、SCSIポート、セントロニクスタイプの
ポート、エンハンストパラレルポートおよびエクステン
ディッドケパビリティポートのようなパラレルポート技
術を利用して、インタフェース235を実現できる。一
実施形態では、パケット準備手段はホストノードで動作
するソフトウェアプログラムである。このソフトウェア
プログラムは、設定セッションの間に(例えば、各割り
込み信号源がシステムに加えられるか、さもなければ導
入されるとき)、各割り込み信号源に関する割り込み必
要条件情報を受信できる。次に、準備された生パケット
は、インタフェース235を介して生パケットバッファ
205に提供できる。
The interface 235 interfaces the packet preparation means to the raw packet buffer 205 of the NIC 120. For example, the interface 235 receives the raw packet prepared from the packet preparing unit.
232C data port. However, RS-42
2, other serial port technologies such as RS-423, USB and IEEE 1394 can also be used in this embodiment. Further, the interface 235 can be realized by using a parallel port technology such as a SCSI port, a Centronics type port, an enhanced parallel port, and an extended capability port. In one embodiment, the packet preparation means is a software program running on the host node. The software program can receive interrupt requirement information for each interrupt source during a configuration session (eg, when each interrupt source is added or otherwise introduced to the system). The prepared raw packet can then be provided to the raw packet buffer 205 via the interface 235.

【0026】代替実施形態では、インタフェース235
は、準備された生パケットを含むネットワークパケット
を受信するパケットレシーバであり得る。生パケット
は、受信されたネットワークパケットから抽出され、次
に、生パケットバッファ205に提供される。このよう
な一実施形態では、インタフェース235はパケットレ
シーバ210に含まれ、このパケットレシーバは、生パ
ケットバッファ205に結合して、ネットワーク115
から受信されたネットワークパケットから生パケットを
抽出するようにプログラミングするか、さもなければ構
成し得る。次に、抽出された生パケットはパケットレシ
ーバ210から生パケットバッファ205に提供され
る。
In an alternative embodiment, interface 235
May be a packet receiver that receives network packets, including prepared raw packets. Raw packets are extracted from the received network packets and then provided to raw packet buffer 205. In one such embodiment, interface 235 is included in packet receiver 210, which is coupled to raw packet buffer 205 and connects to network 115.
Can be programmed or otherwise configured to extract raw packets from network packets received from Next, the extracted raw packet is provided from the packet receiver 210 to the raw packet buffer 205.

【0027】図4と図5は、本発明の一実施形態による
遠隔割り込み信号を処理するための方法を示したフロー
チャートである。例えば、この方法は、図3の状態マシ
ン220のような状態マシンによって実施できる。しか
し、従来のCPUまたはマイクロコントローラ上で動作
する1組のソフトウェアインストラクションのような、
この方法を実行するために利用できるいくつかの処理環
境があり、また本発明は、1つの特定の実施形態に限定
することを意図するものではない。
FIGS. 4 and 5 are flowcharts illustrating a method for processing a remote interrupt signal according to one embodiment of the present invention. For example, the method can be implemented by a state machine such as state machine 220 of FIG. However, such as a set of software instructions running on a conventional CPU or microcontroller,
There are several processing environments available to perform this method, and the invention is not intended to be limited to one particular embodiment.

【0028】本方法は、IOデバイスまたはソフトウェ
アアプリケーションのような割り込み信号源からの割り
込み信号の受信305に始まる。本方法は、受信された
割り込み信号に基づく生パケットの選択310に進む。
一実施形態では、対応する生パケットを収容するバッフ
ァ位置がビジーかさもなければ使用できないならば、プ
ロセスは、受信された割り込み信号に関連する生パケッ
トが使用可能になるまで選択ステップを複数回繰り返す
ステップを含み得る。生パケットは、割り込み要求を処
理するか、あるいはそれに応答するために、ホストノー
ドが必要とする要求デバイスまたはイベントの識別子の
ような情報を含む。
The method begins with receiving 305 an interrupt signal from an interrupt signal source, such as an IO device or a software application. The method proceeds to raw packet selection 310 based on the received interrupt signal.
In one embodiment, if the buffer location containing the corresponding raw packet is otherwise not available, the process repeats the selection step multiple times until a raw packet associated with the received interrupt signal is available. Steps may be included. The raw packet contains information such as the identifier of the requesting device or event that the host node needs to process or respond to the interrupt request.

【0029】本方法は、選択された生パケットの発行3
15をさらに含む。一実施形態では、選択された生パケ
ットはネットワークパケット内に埋め込まれ、ネットワ
ークを介してホストノードに転送される。ネットワーク
パケットはまた、意図する受信者のアドレスまたは識別
子、および受信された割り込み信号に関連する要求、命
令または指示のような他の情報を含み得る。本方法は、
ホストからの応答を待つ待機320も含み得る。例え
ば、この応答は、選択された生パケットを含むネットワ
ークパケットが受信され、然るべく応答されたことを指
示し得る。或いは、この応答は、ネットワークパケット
の転送が、輻奏(例えば、ホストノードがビジー)また
はエラー(例えば、パケットに欠陥)により成功しなか
ったことを指示し得る。
The method includes issuing a selected raw packet 3
15 is further included. In one embodiment, the selected raw packet is embedded in a network packet and forwarded over the network to the host node. The network packet may also include the address or identifier of the intended recipient, and other information such as requests, instructions or instructions related to the received interrupt signal. The method is
A wait 320 waiting for a response from the host may also be included. For example, the response may indicate that a network packet, including the selected raw packet, has been received and responded accordingly. Alternatively, the response may indicate that the transfer of the network packet was unsuccessful due to radiation (eg, the host node was busy) or an error (eg, a defective packet).

【0030】一実施形態では、本方法は、発行された生
パケットが拒絶されたかどうかの決定325をさらに含
む。例えば、この決定は、ホストノードから受信された
応答に基づくことができる。本方法は、発行された生パ
ケットが輻奏のため拒絶されたかどうかの決定330を
さらに含み得る。発行された生パケットが輻奏のために
拒絶されたならば、本方法は、リトライカウンタの増加
335を含み得る。リトライカウンタは、特定の生パケ
ットが特定の割り込み要求に応答して何回発行されたか
を追跡するための手段を提供する。このような実施形態
では、本方法は、リトライカウンタがその最大許容値に
あるかどうかの決定340をさらに含み得る。リトライ
カウンタがその最大許容値にあるならば、リトライはそ
れ以上試みられない。むしろ、本方法はエラー記録34
0に進む。
In one embodiment, the method further includes determining 325 whether the issued raw packet was rejected. For example, the decision can be based on a response received from the host node. The method may further include determining 330 whether the issued raw packet was rejected due to a radiation. If the issued raw packet was rejected due to radiation, the method may include increasing the retry counter 335. The retry counter provides a means for keeping track of how many times a particular raw packet has been issued in response to a particular interrupt request. In such embodiments, the method may further include determining 340 whether the retry counter is at its maximum allowable value. If the retry counter is at its maximum allowed value, no further retries are attempted. Rather, the method uses the error record 34
Go to 0.

【0031】他方、輻奏でなく、他のある理由のために
生パケットが拒絶されたならば、本方法はエラー記録3
40に進む。この場合、パケットは、例えばパケットの
欠陥のため拒絶された可能性がある。さらに、ホストノ
ードからの応答なしに経過する時間の最大値を設定すれ
ば、タイムアウト状態を示すことができる。この場合、
本方法は、タイムアウトエラーを記録するか、あるいは
タイムアウトメッセージを表示することによって、タイ
ムアウト状態を表すことを含み得る。代替実施形態で
は、輻奏でない事象に関連した失敗のためのリトライカ
ウンタを設けることができ、これによって、このような
失敗の場合に複数回のリトライを可能にすることに留意
されたい。
On the other hand, if the raw packet was rejected for some other reason, not for the radiation, then the method should be used for error record 3
Proceed to 40. In this case, the packet may have been rejected, for example, due to a packet defect. Further, if a maximum value of the time that elapses without a response from the host node is set, a timeout state can be indicated. in this case,
The method may include indicating a timeout condition by recording a timeout error or displaying a timeout message. Note that in an alternative embodiment, a retry counter for failures associated with non-radiation events may be provided, thereby allowing multiple retries in the event of such failures.

【0032】本発明の実施形態に関する上述の説明は、
例示と説明のために提示されている。この説明は、開示
した正確な形態に対し網羅的であること、あるいは本発
明を前記形態に限定することを意図するものではない。
多くの修正と変更が、当業者によって理解されるよう
に、上記の内容を考慮して可能である。
The above description of the embodiments of the present invention
They are provided for illustration and explanation. This description is not intended to be exhaustive of the precise form disclosed, or to limit the invention to that form.
Many modifications and variations are possible in light of the above, as will be appreciated by those skilled in the art.

【0033】例えば、NIC120の機能はマイクロコ
ントローラユニット(MCU)で実現することができ、
この場合、割り込み信号源からの割り込み線はMCUの
IOポートに結合し得る。MCUは、MCUに含まれた
不揮発性メモリに記憶される1命令セットを実行できる
プロセッサを含む。また、このメモリを使用して生パケ
ットバッファ205を記憶できるであろう。命令セット
により、状態マシン220、パケットレシーバ210、
パケットアセンブラ215およびポインタセレクタ22
5等の機能を実現し得る。生パケットバッファ205は
また、ソフトウェアベースのメモリによって実現し得
る。また、MCUは、インタフェース235を実現する
ためのデータポート資源(例えば、USBまたはRS2
32C)を含み得る。要するに、本発明の機能性を実行
するために利用される技術は、目標とする実現コスト、
割り込み信号源の複雑さと多様性、および生パケットが
遠隔割り込みに応答して送出されるネットワークの特性
のような要因に依存する。
For example, the function of the NIC 120 can be realized by a microcontroller unit (MCU).
In this case, the interrupt line from the interrupt signal source can be coupled to the MCU's IO port. The MCU includes a processor that can execute one instruction set stored in a nonvolatile memory included in the MCU. Also, the raw packet buffer 205 could be stored using this memory. Depending on the instruction set, state machine 220, packet receiver 210,
Packet assembler 215 and pointer selector 22
Functions such as 5 can be realized. Raw packet buffer 205 may also be implemented by software-based memory. In addition, the MCU provides a data port resource (for example, USB or RS2) for realizing the interface 235.
32C). In short, the technology used to implement the functionality of the present invention is the target implementation cost,
It depends on factors such as the complexity and diversity of the interrupt source and the nature of the network from which raw packets are sent in response to remote interrupts.

【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)
It is intended that the scope of the invention be limited not by the detailed description of the present application, but rather by the appended claims. (Supplementary Note 1) A method for processing a remote interrupt signal, comprising: receiving an interrupt signal from an interrupt signal source at a remote node; and generating a raw packet including an interrupt signal source identifier based on the received interrupt signal. A method comprising the steps of selecting and issuing selected raw packets from a remote node to a host node over a network. (1) (Supplementary note 2) The method according to supplementary note 1, wherein the interrupt signal source is an event generated in the remote node, and the interrupt signal is an indication of the event. (Supplementary note 3) The supplementary note 1, wherein the selecting step further includes a step of repeating the selecting step a plurality of times until the raw packet becomes available in response to the raw packet associated with the received interrupt signal being unavailable. The described method.
(Supplementary note 4) The method according to Supplementary note 1, wherein the step of issuing is achieved by embedding the selected raw packet in a network packet and forwarding the network packet to the host node via the network. (Supplementary note 5) The method according to supplementary note 4, wherein the network packet includes an address associated with the host and a request associated with the received interrupt signal. (Supplementary Note 6) Based on the response received from the host node,
The method of claim 1, further comprising determining a state of the issued raw packet. (Supplementary note 7) The method according to Supplementary note 1, further comprising increasing a retry counter in response to the issued raw packet being rejected. (Supplementary note 8) The method according to supplementary note 7, further comprising the step of recording an error in response to the retry counter being at the maximum allowable value. (Supplementary Note 9) The method further includes recording an error in response to the issued raw packet being rejected.
The method according to supplementary note 1. (Supplementary note 10) The method according to supplementary note 1, further comprising the step of indicating a timeout condition in response to receiving no response from the host node regarding the issued raw packet. (Supplementary Note 11) A system for issuing a raw packet via a network in response to a remote interrupt, comprising:
A host node operatively coupled to the network for receiving the issued raw packets, including a processing unit; a network interface module and an interrupt signal source, based on the interrupt signal received from the interrupt signal source. A remote node for issuing a raw packet including an identifier of an interrupt signal source. (Supplementary note 12) The supplementary note, wherein the remote node includes a number of various interrupt signal sources, each interrupt signal source being associated with at least one raw packet stored in the remote node's network interface module. 12. The system according to 11. (Supplementary note 13) The network interface system, wherein a raw packet buffer for storing a number of raw packets, wherein each raw packet includes an identifier of a corresponding interrupt signal source, and the interrupt signal source outputs an interrupt signal. A network interface system comprising a raw packet buffer, wherein the network interface system issues corresponding raw packets to a host node via a network in response to supplying the network interface system. (Supplementary Note 14) An interrupt signal input operatively coupled to several interrupt signal sources, and a raw packet select output operatively coupled to a raw packet buffer, wherein the interrupt from the interrupt signal source is provided. 14. The system of claim 13, further comprising a processor for receiving the signal and selecting a raw packet stored in the raw packet buffer based on the received interrupt signal. (6) (Supplementary note 15) A packet assembler having a selected raw packet input and a network output, embedding the selected raw packet in a network packet, and issuing the network packet to the host node via the network. 15. The system of claim 14, further comprising: (Supplementary note 16) The system of Supplementary note 15, wherein the packet assembler has a request input operatively coupled to a request output of the processor, and wherein the network packet includes a request related to the received interrupt signal. . (Supplementary note 17) The system according to supplementary note 14, further comprising a packet receiver having a network input and a status output, for determining a status of the issued raw packet based on a response received from the host node. (8) (Supplementary note 18) In response to the issued raw packet being associated with a reject condition, the processor increments a retry counter for tracking unsuccessful transfer attempts of the issued raw packet. 15. The system according to claim 14, wherein
(9) (Supplementary note 19), wherein the processor records an error in response to the retry counter being at a maximum allowable value;
The system according to attachment 18. (Supplementary note 20) The system of Supplementary note 14, wherein the processor logs an error in response to the issued raw packet being associated with a rejected condition. (Supplementary note 21) The system according to supplementary note 14, wherein the processor indicates a time-out state in response to receiving the no response from the host node. (Supplementary note 22) The system according to supplementary note 13, wherein the raw packet is prepared in the host node in advance, and the prepared raw packet is supplied to the raw packet buffer. (10)

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態による遠隔割り込みに応答
して生パケットを送出するためのシステムのブロック図
である。
FIG. 1 is a block diagram of a system for sending raw packets in response to a remote interrupt according to one embodiment of the present invention.

【図2】本発明の一実施形態による遠隔ネットワークイ
ンタフェースシステムの概略ブロック図である。
FIG. 2 is a schematic block diagram of a remote network interface system according to an embodiment of the present invention.

【図3】本発明の一実施形態による遠隔ネットワークイ
ンタフェースシステムの詳細なブロック図である。
FIG. 3 is a detailed block diagram of a remote network interface system according to an embodiment of the present invention.

【図4】本発明の一実施形態による遠隔割り込み信号を
処理するための方法を示したフローチャートの前半であ
る。
FIG. 4 is a first half of a flowchart illustrating a method for processing a remote interrupt signal according to an embodiment of the present invention.

【図5】本発明の一実施形態による遠隔割り込み信号を
処理するための方法を示したフローチャートの後半であ
る。
FIG. 5 is a second half of a flowchart illustrating a method for processing a remote interrupt signal according to one embodiment of the present invention.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェフリー ディー ラルソン アメリカ合衆国,カリフォルニア 95125, サンノゼ,ロボイ ウェイ 1029 (72)発明者 堀江 健志 アメリカ合衆国,カリフォルニア 94304, パロ アルト,サンド ヒル ロード 1700,ナンバー 205 Fターム(参考) 5B045 BB28 BB42 FF03 5B098 AA10 BA11 BB11  ────────────────────────────────────────────────── ─── Continued on the front page (72) Inventor Jeffrey Dee Larson United States, California 95125, San Jose, Roboway 1029 (72) Inventor Takeshi Horie United States, California 94304, Palo Alto, Sand Hill Road 1700, Number 205 F-term ( Reference) 5B045 BB28 BB42 FF03 5B098 AA10 BA11 BB11

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 遠隔割り込み信号を処理するための方法
であって、 遠隔ノードにおいて割り込み信号源から割り込み信号を
受信するステップと、 受信された割り込み信号に基づき、割り込み信号源の識
別子を含む生パケットを選択するステップと、 遠隔ノードからホストノードへネットワークを介して選
択された生パケットを発行するステップと、を含む方
法。
1. A method for processing a remote interrupt signal, comprising: receiving an interrupt signal from an interrupt signal source at a remote node; and a raw packet including an interrupt signal source identifier based on the received interrupt signal. And issuing the selected raw packet from the remote node to the host node via the network.
【請求項2】 選択ステップが、受信された割り込み信
号に関連した生パケットが使用できないことに応答し
て、生パケットが使用可能になるまで、選択ステップを
複数回繰り返すステップをさらに含む、請求項1に記載
の方法。
2. The method of claim 1, wherein the selecting step further comprises: repeating the selecting step a plurality of times in response to the raw packet being unavailable associated with the received interrupt signal until the raw packet becomes available. 2. The method according to 1.
【請求項3】 ホストノードから受信された応答に基づ
き、発行された生パケットの状態を決定するステップを
さらに含む、請求項1に記載の方法。
3. The method of claim 1, further comprising determining a status of the issued raw packet based on a response received from the host node.
【請求項4】 遠隔割り込みに応答して、ネットワーク
を介して生パケットを発行するためのシステムであっ
て、 処理ユニットを含み、ネットワークに動作的に結合され
て、発行された生パケットを受信するためのホストノー
ドと、 ネットワークインタフェースモジュールと割り込み信号
源とを含み、割り込み信号源から受信された割り込み信
号に基づき割り込み信号源の識別子を含む生パケットを
発行するための、遠隔ノードと、を具備するシステム。
4. A system for issuing raw packets over a network in response to a remote interrupt, the system including a processing unit and operatively coupled to the network for receiving the issued raw packets. A remote node for issuing a raw packet including an interrupt signal source identifier based on the interrupt signal received from the interrupt signal source, the remote node including a network interface module and an interrupt signal source. system.
【請求項5】 ネットワークインタフェースシステムで
あって、 いくつかの生パケットを記憶するための生パケットバッ
ファであって、各生パケットが、対応する割り込み信号
源の識別子を含み、割り込み信号源が割り込み信号をネ
ットワークインタフェースシステムに供給することに応
答して、ネットワークインタフェースシステムが、ネッ
トワークを介してホストノードに対応する生パケットを
発行する、生パケットバッファを具備するネットワーク
インタフェースシステム。
5. A network interface system, comprising: a raw packet buffer for storing a number of raw packets, wherein each raw packet includes an identifier of a corresponding interrupt signal source; Network interface system comprising a raw packet buffer, wherein the network interface system issues a raw packet corresponding to the host node via the network in response to supplying the raw packet buffer to the network interface system.
【請求項6】 いくつかの割り込み信号源に動作的に結
合される割り込み信号入力と、生パケットバッファに動
作的に結合される生パケットセレクト出力とを有し、割
り込み信号源からの割り込み信号を受信し受信された割
り込み信号に基づき、生パケットバッファに記憶された
生パケットを選択するためのプロセッサをさらに具備す
る、請求項5に記載のシステム。
6. An interrupt signal input operatively coupled to a number of interrupt signal sources and a raw packet select output operatively coupled to a raw packet buffer, wherein the interrupt signal from the interrupt signal source is provided. The system of claim 5, further comprising a processor for selecting a raw packet stored in a raw packet buffer based on a received and received interrupt signal.
【請求項7】 選択された生パケット入力とネットワー
ク出力とを有し、選択された生パケットをネットワーク
パケット内に埋め込み、ホストノードへ前記ネットワー
クを介してネットワークパケットを発行するためのパケ
ットアセンブラをさらに具備する、請求項6に記載のシ
ステム。
7. A packet assembler having a selected raw packet input and a network output, embedding the selected raw packet in a network packet, and issuing a network packet to the host node via the network. The system of claim 6, comprising a system.
【請求項8】 ネットワーク入力と状態出力とを有し、
ホストノードから受信された応答に基づき、発行された
生パケットの状態を決定するためのパケットレシーバを
さらに具備する、請求項6に記載のシステム。
8. It has a network input and a status output,
The system of claim 6, further comprising a packet receiver for determining a status of the issued raw packet based on a response received from the host node.
【請求項9】 発行された生パケットが拒絶状態に関連
していることに応答して、前記プロセッサが、発行され
た生パケットの不成功の転送試みを追跡するためのリト
ライカウンタを増加する、請求項6に記載のシステム。
9. In response to the issued raw packet being associated with a rejection condition, the processor increments a retry counter for tracking unsuccessful transfer attempts of the issued raw packet. The system according to claim 6.
【請求項10】 生パケットがホストノードに予め準備
され、準備された生パケットが生パケットバッファに供
給される、請求項5に記載のシステム。
10. The system according to claim 5, wherein raw packets are prepared in a host node, and the prepared raw packets are supplied to a raw packet buffer.
JP2002036939A 2001-02-14 2002-02-14 Remote interrupt signal processing method, system, and network interface system Expired - Fee Related JP4034572B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/785071 2001-02-14
US09/785,071 US6732212B2 (en) 2001-02-14 2001-02-14 Launch raw packet on remote interrupt

Publications (2)

Publication Number Publication Date
JP2002323988A true JP2002323988A (en) 2002-11-08
JP4034572B2 JP4034572B2 (en) 2008-01-16

Family

ID=25134366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002036939A Expired - Fee Related JP4034572B2 (en) 2001-02-14 2002-02-14 Remote interrupt signal processing method, system, and network interface system

Country Status (2)

Country Link
US (1) US6732212B2 (en)
JP (1) JP4034572B2 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
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 (en) * 2012-04-20 2013-10-27 Открытое акционерное общество "Научно-исследовательский институт конструкционных материалов на основе графита "НИИграфит" Method of producing high-density graphite
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
EP3942749A4 (en) 2019-05-23 2023-06-07 Hewlett Packard Enterprise Development LP Optimized adaptive routing to reduce number of hops
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920008461B1 (en) * 1989-05-15 1992-09-30 인터내셔널 비지네스 머신즈 코포레이션 Process interrupting system and its method
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

Also Published As

Publication number Publication date
JP4034572B2 (en) 2008-01-16
US20020120800A1 (en) 2002-08-29
US6732212B2 (en) 2004-05-04

Similar Documents

Publication Publication Date Title
KR100290597B1 (en) Apparatus and method of implementing a usb endpoint pipe with double buffering support
KR100290943B1 (en) An Apparatus and Method For Handling Universal Serial Bus Control Transfer
KR100290944B1 (en) An apparatus and method for providing an interface to a compound universal serial bus controller
TWI458307B (en) Method and system for an os virtualization-aware network interface card
JP3783017B2 (en) End node classification using local identifiers
US7069373B2 (en) USB endpoint controller flexible memory management
JP4086472B2 (en) Method, system, and program for determining system configuration
US7234004B2 (en) Method, apparatus and program product for low latency I/O adapter queuing in a computer system
US20050169066A1 (en) Storage controlling device and control method for a storage controlling device
JP2561759B2 (en) Multiprocessor system and message transmission / reception control device thereof
US7302699B2 (en) Logged-in device and log-in device
JP4034572B2 (en) Remote interrupt signal processing method, system, and network interface system
KR100644596B1 (en) Bus system and bus arbitration method thereof
US5204954A (en) Remote storage management mechanism and method
KR102303424B1 (en) Direct memory access control device for at least one processing unit having a random access memory
EP2096550B1 (en) Information processing apparatus and control method thereof
JP2004334863A (en) System and method for in-order queue draining
JP4524112B2 (en) Access to implicit addressing sequential data storage
WO2013027297A1 (en) Semiconductor device, managing apparatus, and data processor
JP7363344B2 (en) Memory control device and control method
US20030212850A1 (en) Log-in device and logged-in device
JP3379377B2 (en) Data processing system
EP0609082A1 (en) Information transfer in a data processing system
JP2652989B2 (en) File transfer device
CN116644022A (en) Data processing node and 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