JP2507230B2 - インタ―フェ―ス装置および方法並びに通信アダプタ - Google Patents

インタ―フェ―ス装置および方法並びに通信アダプタ

Info

Publication number
JP2507230B2
JP2507230B2 JP6031414A JP3141494A JP2507230B2 JP 2507230 B2 JP2507230 B2 JP 2507230B2 JP 6031414 A JP6031414 A JP 6031414A JP 3141494 A JP3141494 A JP 3141494A JP 2507230 B2 JP2507230 B2 JP 2507230B2
Authority
JP
Japan
Prior art keywords
packet
data
communication
adapter
memory
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 - Lifetime
Application number
JP6031414A
Other languages
English (en)
Other versions
JPH076107A (ja
Inventor
ゴードン・テイラー・デイビス
ドナルド・ジョーゼフ・ドナヒー
ローレンス・ヴィクター・マークス
チャリス・ルエラン・プリントン
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH076107A publication Critical patent/JPH076107A/ja
Application granted granted Critical
Publication of JP2507230B2 publication Critical patent/JP2507230B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、全般的には通信アダプ
タに関する。より具体的には、本発明は、通信アダプタ
用のパケット・メモリ・インターフェースを対象とし、
さらに具体的には、プロセッサ・ベースのパケット・メ
モリ・インターフェースに関する。
【0002】
【従来の技術】現代の計算環境におけるコンピュータ・
システムは、コンピュータ間およびプロセッサ間の通信
を可能にするため、ローカル・エリア・ネットワーク
(LAN)や広域通信網(WAN)を使用して相互接続
されることがしばしばである。多くの環境では、このネ
ットワーキングという概念を拡張して、複数のLAN
が、中間ノードまたはゲートウェイを使用して互いにネ
ットワーク化される。したがって、統合されたネットワ
ークは、同種ネットワークであってもよいし、ゲートウ
ェイを介してまたは高帯域幅バックボーン・ネットワー
クを介して相互接続された、複数の異なるタイプのネッ
トワークを含んでもよい。
【0003】ネットワーク上の装置は、プリンタ、モデ
ム、端末などの単純な装置から、プロセッサ、ワークス
テーション、メインフレーム・ホスト、ネットワーク制
御機構などの知能装置までの範囲に及ぶことができる。
これらのネットワーク化された装置の間で行われる大量
の情報交換を用いて、広範囲のトラフィックを運ぶよう
に通信ネットワークが設計される。このトラフィック
は、時間がクリティカルな緊急トラフィックや帯域幅が
クリティカルな同期トラフィックから、時間があまりク
リティカルでない非同期の背景トラフィックまでの範囲
に及ぶ。
【0004】これらのネットワークを流れるトラフィッ
クは、「パケット」と称するデータ・ストリーム・セグ
メントの形で運ばれる。ネットワーク装置は、ネットワ
ークを介して情報を送りたい時、パケットの形で情報を
送る。各パケットには、一般に、通信関連(制御)情報
とデータ情報の2種類の情報が含まれる。データ情報と
は、単に、ある装置がネットワークを介して別の装置
(1つまたは複数)に送りたい実際のデータである。制
御情報とは、ある装置からネットワークを介して別の装
置にパケットを送るために通信プロトコルが必要とする
情報である。制御情報は、通常、パケットのうち、「ヘ
ッダ」と称する別の部分に含まれる。ヘッダ内の制御情
報は、そのパケットを受信側アプリケーションに渡す前
に、通信プロトコル・プロセッサによって解釈される。
制御情報には、送信元ID、宛先ID、経路指定情報、
エラー制御情報などの情報が含まれる。
【0005】制御情報を使用して、送信元から指定され
た宛先までのパケットの経路指定を管理することによっ
て、単一の統合ネットワーク上で複数の独自の通信経路
を定義することができる。これにより、単一の物理リン
ク上で複数の仮想チャネルを作成するという効果があ
る。したがって、単一のネットワークを介して、複数の
パケットを複数の宛先に経路指定することができる。
【0006】あるパケットが、その宛先に到着する前
に、通信アダプタと称する複数の中間ネットワーク・ノ
ードを通過することがある。これらの通信アダプタで
は、パケットが、ネットワーク・レベルのプロトコル実
体に達する前にソフトウェアとハードウェアの複数の層
によって影響を受けることがある。パケット・ヘッダ内
の制御情報を用いると、中間ノードのネットワーク層の
実体が、そのパケットを経路指定すべきアウトバウンド
・リンクを決定できるようになる。通信アダプタは、通
信の「ボトルネック」にならないようにするために、少
なくともパケットの予定到着速度に等しい速度でパケッ
トの処理と経路指定を行えることが必要である。
【0007】通信アダプタの設計の1つでは、パケット
・メモリを使用して、アダプタのマイクロプロセッサに
よる処理のためにパケットを待ち行列化する。マイクロ
プロセッサは、パケットの制御情報を処理して、そのパ
ケットの経路指定方法を決定する。パケットがその最終
宛先に到着した場合、通信アダプタのマイクロプロセッ
サは、システム・バスまたはシステム入出力チャネルに
接続されたポートに、処理済みのパケットを転送する。
パケットが最終宛先に到着していない場合、マイクロプ
ロセッサは、そのパケットを次にどのネットワークに経
路指定すべきかを決定する。その後、マイクロプロセッ
サは、目標のネットワーク・リンクに接続されたアウト
バウンド・ポートにそのパケットを転送する。どちらの
場合でも、ポートは、送出の準備ができたパケットがあ
るとの通知を受ける。通知を受けたポートは、そのパケ
ットをパケット・メモリから移動し、パケット送信を開
始する。
【0008】大量の個々の仮想チャネルを扱うチャネル
化されたネットワークでは、各送信チャネルがそれぞ
れ、パケット・メモリにパケットを記憶するために別々
の待ち行列を必要とする。優先順位トラフィックを収容
する場合、チャネルごとに複数の待ち行列が必要となる
可能性がある。たとえば、T−1やISDN(統合サー
ビス・ディジタル網)などのチャネル化されたインター
フェースを使用する時には、1方向あたり31個ものメ
ッセージが同時に活動状態になる可能性がある。これら
のタイプのチャネル化されたインターフェースでは、通
信アダプタが複数のインターリーブされた並行パケット
を転送する必要があるが、そのためには、パケットごと
に別々の待ち行列を設ける必要がある。パケット・メモ
リの受信部分では、要求元識別(ID)を使用して、所
与のチャネルに関する受信処理で活動状態のパケット・
メモリのセグメント(たとえば256バイト)を識別す
る。従来のシステムでは、使用可能な要求元IDの数
は、その機能のために割り振られるビット数によって制
限される。典型的なシステムでは、8つの活動状態の要
求元IDだけが、任意の時点で有効になることができ
る。これにより、任意の時点で受信できる活動状態のチ
ャネルの数が制限されるという効果がある。
【0009】各要求元IDは、実際には、特定の送信処
理または受信処理を識別するための参照番号である。従
来の通信アダプタでは、並行送受信処理の数が、そのア
ダプタがサポートできる要求元IDの数までに制限され
る。並行処理の数が制限される時には、同時にサポート
できる通信チャネルの数も制限される。
【0010】以下のシナリオは、この従来の解決策の制
限を示すためのものである。通信アダプタがパケット・
データを受信するようにセットアップされる時、そのプ
ロセッサが、データのパケットを受信するためにパケッ
ト・メモリを割り振る。このパケット・メモリは、通常
は256バイト程度のメモリ・セグメントの形で割り振
られる。各メモリ・セグメントにそれぞれ1つの要求元
IDが関連する。その後の各パケットのメモリ割振りに
も、この要求元ID情報が必要である。通信アダプタ
は、要求元ID情報から、同一のパケットに属するすべ
てのバッファを互いに連係することができる。こうし
て、プロセッサが正しい要求元IDを供給できる限り、
複数のインターリーブされたパケットを受信することが
できる。この機構は、複数のインターリーブされたパケ
ットを送信するのにも使用できる。
【0011】受信回路は、データのパケットを受信し、
パケット制御情報に従ってこれらを適当なメモリ・セグ
メントに記憶する(すなわち、各チャネルに、それ自体
のメモリ・セグメントが割り振られる)。要求元ID番
号は、前述したように、待ち行列が満杯であり、適当な
アウトバウンド・ポートに送る準備ができたパケットが
あることをプロセッサに知らせるのに使用される。同時
に使用できる活動状態のチャネルの数は、この場合、一
意的な要求元ID番号によって識別できるメモリ・セグ
メントの数に制限される。
【0012】
【発明が解決しようとする課題】このようにして統合ネ
ットワークが処理できる有効チャネル数の制限は、現在
のシステムで望まれる高速タイプの複数のインターリー
ブ式パケット通信に対する障害となっている。1ネット
ワーク・ノードによって処理できるインターリーブされ
た並行パケットの数を増やす技法が求められている。
【0013】
【課題を解決するための手段】本明細書では、通信アダ
プタの能力を拡張するためのシステムおよび方法を提供
する。通信アダプタは、通常、通信チャネルからのパケ
ット・データをアダプタ・ポートで受信し、このデータ
をアダプタのパケット・メモリに記憶する。パケット
は、アダプタのプロセッサによる処理のため待ち行列に
入れられ、その後、処理される。パケットは、パケット
制御情報に基づいて、アダプタ・ポートを経て、システ
ム・バス、システム入出力チャネル、目標ネットワーク
・リンクなどの通信チャネルに送信される。
【0014】本発明によれば、プロセッサ・ベースのパ
ケット・メモリ・インターフェース(PMI)が、通信
チャネルと通信アダプタのパケット・メモリの間のパケ
ット・データの転送を管理する。プロセッサ・ベースP
MIは、バッファ・ポインタとバッファ・テーブル項目
を使用して、通信アダプタが、プロセッサ・ベースPM
Iなしでは不可能であろうほどの多数の通信チャネルと
インターフェースできるようにする。
【0015】プロセッサ・ベースPMIとは、パケット
・データの転送を管理し、バッファ・ポインタとバッフ
ァ・テーブル項目を記憶する、マイクロプロセッサによ
って制御されるインターフェースである。着信パケット
・データと発信パケット・データの一時記憶域として、
また、バッファ・ポインタとバッファ・テーブル項目の
記憶域として、マイクロプロセッサRAMを設ける。こ
のRAM内に通信チャネルFIFOを形成して、パケッ
ト・メモリからの発信パケット・データを待ち行列化す
る。
【0016】選択されたプロセッサによっては、プロセ
ッサ・ベースPMIを、通信アダプタ・バスに直接結合
することができる。プロセッサ・ベースPMIのための
代替バス構成を選択する場合、インターフェース論理機
構を使用して、その代替バスを通信アダプタ・バスと一
体化することができる。
【0017】通信アダプタへのアクセス権を得るための
アービトレーションを処理するために制御論理機構を設
ける。この制御論理機構は、通信アダプタへのインター
フェース論理機構も制御する。
【0018】プロセッサ・ベースPMIのマイクロプロ
セッサは、パケット・メモリ内のブロック・バッファ空
間を要求する。バッファ空間が割り振られると、マイク
ロプロセッサにポインタが返され、このポインタがRA
Mに記憶される。マイクロプロセッサは、使用可能なメ
モリ空間の連鎖が割り振られるまで、バッファ空間の要
求とポインタの記憶を継続する。割り振られたブロック
は、同報通信または予約されるので、通信チャネルごと
に一意的な要求元IDを必要としない。通信チャネルか
らデータを受信すると、マイクロプロセッサは、このデ
ータを、ポインタが示す適当なバッファに記憶する。
【0019】あるパケットを通信チャネルに送信しよう
とする時、マイクロプロセッサは、まず、どのチャネル
を送信に使用するかを決定する。次に、マイクロプロセ
ッサは、そのチャネル用のFIFO内の適当なバッファ
を指すポインタをRAMに記憶する。パケットの準備が
できると、そのパケットが送信される。
【0020】本発明のその他の特徴と長所、ならびに本
発明の様々な実施例の構造と動作を、添付の図面に関し
て以下で詳細に説明する。
【0021】
【実施例】
1.本発明の概要と考察 本発明の特徴は、通信アダプタによって処理できるイン
ターリーブされた並行パケットの数を増大するためのプ
ロセッサ・ベースのパケット・メモリ・インターフェー
ス(PMI)にある。このプロセッサ・ベースPMI
は、マイクロコードを介してアダプタ管理機構へのプリ
ミティブ・コマンド(基本命令)を直接制御する。した
がって、PMIプロセッサは、通常は主アダプタ・プロ
セッサ用に予約されるプリミティブ・コマンド、ならび
に通常はハードウェア・ベースPMIによって発行され
るプリミティブ・コマンドを発行することができる。
【0022】送信動作の場合、この能力により、PMI
プロセッサは、アダプタ内の単一の大きな待ち行列か
ら、その局所メモリ内に複数の送信待ち行列を作成でき
るようになる。その後、PMIプロセッサは、個々のチ
ャネルがパケット送信の準備ができた時に、パケットを
送信できる。言い換えると、PMIプロセッサは、単一
の待ち行列を取り上げ、これをその外部メモリ(アウト
ボード・メモリ)内で複数の小さな待ち行列に分解す
る。
【0023】受信動作の場合、PMIプロセッサは、バ
ッファ・ポインタ自体を変更し、あるパケット連鎖から
別のパケット連鎖にバッファを移動することによって新
しいバッファを要求することができる。したがって、複
数の入力バッファ「チャネル」が、PMIプロセッサに
よって作成され管理される。
【0024】好ましい実施例によれば、プロセッサ・ベ
ースPMI用に選択されるプロセッサは、DSP(ディ
ジタル信号処理)プロセッサである。RISC(縮小命
令セット計算)プロセッサやピコプロセッサなど、他の
プロセッサを使用することも可能である。
【0025】2.環境の例 プロセッサ・ベースPMIは、データのパケットをパケ
ット・メモリに記憶し、IDタグを使用してそのデータ
を追跡するように構成された、複数の異なるアーキテク
チャへのインターフェースとして実施することができ
る。例としてそのようなアーキテクチャの1つを図1に
示す。
【0026】図1は、パケット・メモリを使用してデー
タの着信パケットと発信パケットを記憶するネットワー
ク・アダプタを示すブロック図である。これから図1を
参照して、本発明によるプロセッサ・ベースPMIを、
通信アダプタ環境に関して説明する。この通信アダプタ
は、プロセッサ・サブシステム101を使用して、パケ
ット待ち行列の処理時に通信マイクロコードを実行す
る。この例の環境では、プロセッサ・サブシステム10
1は、RISCマイクロプロセッサに基づくものであ
る。プロセッサ・サブシステム101は、RISCプロ
セッサ102と、プロセッサ・インターフェース104
と、局所メモリ(RAM)106と、その他マイクロプ
ロセッサ動作に不可欠な補助回路を含む。図を簡単にす
るため、これらの補助回路は図1には示してないが、補
助回路には、ハードウェア・タイマ、割り込み制御機構
および局所メモリ制御機構が含まれる。
【0027】個々のアダプタ・ポート118に到着した
データのパケットは、パケット・メモリ108に記憶さ
れ、そこで後処理を待つ。パケット・メモリ108は、
一般に、高速のランダム・アクセス・メモリ(RAM)
を備える。パケット・メモリ108には、一般に、アー
キテクチャ上の制限があり、通常は16メガバイト程度
までに制限される。この例の環境では、このメモリは、
それぞれが256バイトのバッファの組にセグメント化
される。データのパケットは、パケット・メモリ内の1
つまたは複数のバッファに記憶され、プロセッサ・サブ
システム101によって削除し、または複数のアダプタ
・ポート118のうちの1つに経路指定することができ
る。
【0028】パケット・メモリ制御機構110は、パケ
ット・メモリ108に対して、アダプタ・バス(「GA
Bバス122」と称する)へのインターフェース機能を
提供する。パケット・メモリ制御機構110は、パケッ
ト・メモリ108を、パリティ生成や応答生成などGA
Bバス122の要件から分離する。
【0029】GABバス122は、物理信号インターフ
ェース・レベルでは同期バスである。すべてのバス信号
が、バス・クロックに同期化される。しかし、実際のバ
ス動作は非同期式であり、コマンド/応答方式で動作す
る。GABバス122の速度は、クリティカルな性能パ
ラメータであり、アダプタの入力要件に適合する必要が
ある。アダプタ管理機構112は、アダプタ管理機能を
実行する複数の機能構成要素を含む。これには、アダプ
タ管理機構カーネル、GABバス122用のアービタ、
GABバス122用のモニタ、およびアダプタ管理機構
の局所メモリが含まれる。これら個々の構成要素は、図
を簡単にするため、図1には示してない。アダプタ管理
機構112は、各プロセッサ・ベースPMI114から
のプリミティブ・コマンドに応答する。
【0030】アダプタ管理機構カーネルは、パケット・
メモリ108内のデータ構造を実施し、すべてのデータ
管理機能を実行する。3つの主なデータ構造は、バッフ
ァとパケットと待ち行列である。これらの構造に基づい
て、アダプタ管理機構112は、パケット・トラフィッ
クの制御、バッファ/パケットの管理、入出力待ち行列
のスケジューリングなど、複数の重要な機能を実行す
る。
【0031】アダプタ管理機構アービタは、優先順位が
最高の要求元にGABバス122の制御を与える。アダ
プタ管理機構モニタは、パリティ検査やバス・サイクル
長検査などのGABバス監視機能を実行する。
【0032】プロセッサ・ベースPMI114は、通信
アダプタ内の各ポートごとに1つずつ設けられる。プロ
セッサ・ベースPMI114は、GABバス122に接
続され、パケット・メモリ108との間でパケットを転
送するための機構を提供する。たとえば、プロセッサ・
ベースPMI114に接続されたマイクロチャネル・イ
ンターフェースは、PS/2システム(米国インターナ
ショナル・ビジネス・マシーンズ社から市販)に、通信
ネットワークにパケットを配布するための経路を提供す
ることができる。プロセッサ・ベースPMI114は、
インターフェース・ドライバ/レシーバ116を介して
外部ネットワークへの接続を提供する。インターフェー
ス・ドライバ/レシーバ116は、RS/422、X.
21、V.35、RS−449、T−1、ISDNな
ど、複数の異なるインターフェースを提供するように選
択できる。
【0033】プロセッサ・ベースPMI114の重要な
機能の1つは、到着するパケットをパケット・メモリ1
08に記憶するためにパケット・メモリ108内でバッ
ファを獲得することである。このバッファは、アダプタ
管理機構112から獲得される。プロセッサ・ベースP
MI114は、パケット・メモリ108からパケットを
読み取り、これらをインターフェース・ドライバ/レシ
ーバ116を介して外部ネットワークに渡すこともでき
る。
【0034】この例の環境によれば、プロセッサ・ベー
スPMI114は、個々のアダプタ・ポート118とG
ABバス122の間の唯一のインターフェースである。
【0035】上に記載の例の環境では、GABバス12
2が、ハードウェア・ベースの状態機械を使用して、デ
ータの移動とメモリの割振りを制御する。これによっ
て、プロセッサ・サブシステム101がこれらのタスク
から解放され、通信アダプタの性能が最大になる。その
結果、GABバス122にインターフェースするため
に、従来のパケット・メモリ・インターフェースは、通
常は、FIFOバッファならびにハードウェア状態機械
を含む比較的複雑な論理チップ(またはチップ・セッ
ト)を使用して、パケット・メモリ108との間での転
送を制御することとなる。アダプタ管理機構112と通
信するために、各インターフェースに追加の状態機械も
必要である。
【0036】RS−422、X.21、T−1などのイ
ンターフェースに接続する時は、必要なスループット
が、GABバス122上で得られる帯域幅より大幅に低
くなる。したがって、ハードウェア機能をディジタル信
号プロセッサ(DSP)などの高速出力プロセッサ上の
マイクロコードに移すことによって、プロセッサ・ベー
スPMI114の設計を大幅に単純化する可能性が得ら
れる。好ましい実施例では、DSPを使用して、以前に
は通常のパケット・メモリ・インターフェース内のハー
ドウェア状態機械によって実行されていた機能の多くを
実施する。たとえば、DSPは、CRC、ビット挿入削
除、フラグ検出などの下位層機能を実施することができ
る。同じDSPが、GABバス122(アドレス・バス
とデータ・バス)に直接マッピングされるデータ転送の
セットアップなど、他のアダプタがハードウェア状態機
械のために予約している多くの機能を実行することがで
きる。これによって、DSPが、パケット・メモリ10
8との間でのデータ転送と、アダプタ管理機構112に
対する送信用データ要求、受信用バッファ要求およびバ
ス上の他の装置へのパケットの待ち行列化のためのプリ
ミティブ・コマンドとを共に直接制御できるようにな
る。
【0037】バースト式のデータ・ストリーミングでは
なく、一時に1ワードずつGABバス122を介してデ
ータを転送することによって、ハードウェア設計をさら
に簡単にすることができる。データ・ストリーミング
は、より高速のインターフェースで要求されるバス・ス
ループットを達成するために必要である。この動作モー
ドは、FIFOバッファと、より複雑なシーケンス化論
理機構を必要とすることに留意されたい。好ましい実施
例では、データ・ストリーミング・バーストを使用しな
くても十分な帯域幅が提供されるので、プロセッサ・ベ
ースPMI114にこの複雑さがなくなる。
【0038】3.パケット・メモリによる読取動作およ
び書込動作 図2は、好ましい実施例によるプロセッサ・ベースPM
I114のハードウェア設計を示すブロック図である。
インターフェース論理機構202を使用して、プロセッ
サ・ベースPMI114をGABバス122に接続す
る。インターフェース論理機構202は、トライステー
ト出力を有する1組の双方向ラッチを含んでいる。
【0039】マイクロプロセッサ・バス222は、アダ
プタ・ポート118とインターフェース論理機構202
の間でのアドレスとデータ情報の転送を提供する。マイ
クロプロセッサ・バス222を、バースト・データの持
続時間(通常は1サイクルあたり320ナノ秒で33サ
イクル)の間、ディジタル信号プロセッサ(DSP)2
04に与えることができる。最初のサイクルで、GAB
バス122の転送に関するアドレス情報を供給する。マ
イクロプロセッサ・バス222上のアドレス・フィール
ドとデータ・フィールドを組み合わせて、GABバス・
アドレスを生成する。最初のサイクルの後に、マイクロ
プロセッサ・バス222上の16ビット・サイクルの各
対(16×2=32ビット)がそれぞれ、GABバス1
22上の単一の32ビット転送に変換される。
【0040】制御論理機構206は、インターフェース
論理機構202の出力状態を制御する。制御論理機構2
06は、インターフェース論理機構202の出力をトラ
イステート化することができる。制御論理機構206
は、実際には、マイクロプロセッサ制御バス224を介
してDSP204によって制御される。
【0041】プロセッサ・ベースPMI114のため
に、別のアーキテクチャを選択することもできる。たと
えば、32ビットのアダプタ・バスとインターフェース
するために、32ビットのマイクロプロセッサ・バス2
22を選択することができる。また、追加のプロセッサ
(DSP204)をマイクロプロセッサ・バス222に
結合して、多重ポート応用例を処理することもできる。
【0042】好ましい実施例でマイクロプロセッサ・バ
ス222を使用するのは、これによって、最小の論理機
構で既存の使用可能なDSPプロセッサにインターフェ
ースできるからである。この設計を拡張して、GABバ
スをDSPチップ内に組み込み、マイクロプロセッサ・
バス222を除去する方法は、当業者には明白であろ
う。
【0043】マイクロプロセッサ・バス222の例は、
マイクロチャネル・バス、IndustryStandard Architect
ure(ISA)バス、INTEL社の80186バスな
どである。これらは、DSPプロセッサ内に組み込ま
れ、GABバス122とのインターフェースに使用でき
るバスの例である。これらのバスのそれぞれや、選択で
きる他の任意のバスを、GABバス122または通信ア
ダプタに使用される他のバスにインターフェースする方
法は、当業者には明白であろう。あるいは、DSP20
4を、通信アダプタ・バス(GABバス122)に直接
インターフェースすることもできる。
【0044】次に、プロセッサ・ベースPMI114の
動作を、パケット・メモリ108への書込みと読取りに
関して発生する事象のシーケンスに関して説明する。
【0045】図3は、パケット・メモリ108への書込
みに用いられるステップを示す流れ図である。図3を参
照すると、ステップ302で、DSP204が、DSP
RAM208からDMA(直接メモリ・アクセス)制
御ブロック210A(図2)にアクセスする。ステップ
304で、DSP204が、パケット・メモリ108に
書き込むべきデータをDSP RAM208から読み取
る。好ましい実施例では、DSP204は、DSP R
AM208から最高32バイトまでのデータを読み取る
ことができる。好ましい実施例では、DSP204内で
実行中のコードが、ブロック転送をセットアップし、ハ
ードウェア・シーケンサが、その転送を完了するのに必
要な個々のバス・サイクルを管理する。
【0046】このデータをパケット・メモリ108に転
送するために、DSP204は、まずマイクロプロセッ
サ・バス222にアクセスしなければならない。したが
って、ステップ306で、DSP204が、マイクロプ
ロセッサ・バス222へのアクセスを要求する。アクセ
スが許可されると、DSP204は、インターフェース
論理機構202へのデータ転送を開始する。
【0047】ステップ308で、データがインターフェ
ース論理機構202にラッチされる。この処理を、図4
の流れ図に示す。ここで図3と図4を参照すると、ステ
ップ402で、各バス・サイクル対(2サイクルを1対
とする)の第1サイクル中に、GABバス122の下位
半分用の2バイトのラッチ202Aにデータを転送す
る。ステップ404で、各バス・サイクル対の第2サイ
クル中に、GABバス122の上位半分用の2バイトの
ラッチ202Bにデータを転送する。
【0048】ステップ310で、この第2の転送(ステ
ップ404)が進行している間に、制御論理機構206
が、GABバス122の所有権を要求する。インターフ
ェース論理機構202にデータがラッチされた後、ステ
ップ312で、DSP204が、マイクロプロセッサ・
バス222の制御を放棄する。
【0049】GABバス122の所有権を与えられる
と、ステップ314で、制御論理機構206は、インタ
ーフェース論理機構202からパケット・メモリ108
へのデータの転送を完了する。
【0050】アドレス・ラッチであるラッチ202Aお
よび202Bは、各転送の後に起動される増分機能を含
んでいる。この増分機能の結果、マイクロプロセッサ・
バス222の各サイクル毎にDSP204から新しいア
ドレス情報を要求する必要がなくなる。GABバス12
2は、各転送(ステップ312参照)の後に解放される
が、マイクロプロセッサ・バス222は、ブロック転送
の次のサイクルに進むことに留意されたい。言い換える
と、マイクロプロセッサ・バス222の書込みは、マイ
クロプロセッサ・バス222の転送に対応するGABサ
イクルと、1サイクルの間オーバーラップする。GAB
バス122へのアクセス権の取得が遅延した場合、それ
でも次のマイクロプロセッサ・バス・サイクルは開始す
るが、1つまたは複数の待機状態を挿入して、GABバ
ス122へのアクセスの遅延を補償する。
【0051】バースト転送の場合、バーストが完了する
まで、ステップ308ないし316を繰り返す。好まし
い実施例では、1バーストで書き込まれるバイト数の最
大値は32である。これは、判断ブロック318とフィ
ードバック・ループ342によって示される。
【0052】ブロック転送の場合、ブロック転送が完了
するまで、多バイト・バースト(好ましい実施例では3
2バイト)の送信を繰り返す。これは、判断ブロック3
22とフィードバック・ループ344によって示され
る。好ましい実施例では、1ブロックあたりのバイト数
の最大値は256バイトである。
【0053】読取サイクルも、同様にして実行される。
図5は、読取サイクルに関して発生する事象を示す流れ
図である。これから図2と図5を参照して、パケット・
メモリ108からパケットを読み取るのに用いられるス
テップを説明する。ステップ502で、DSP204
が、DSP RAM208からDMA制御ブロック21
0Bにアクセスする。DSP204は、この時点で、マ
イクロプロセッサ・バス222にアクセスしなければな
らない。したがって、ステップ504で、DSP204
が、マイクロプロセッサ・バス222へのアクセスを要
求する。
【0054】アクセスが許可されると、ステップ506
で、マイクロプロセッサ・バス222の読取サイクルが
発生する。この読取サイクルの要素を、図6に示す。こ
れから図2、図5および図6を参照して、ステップ50
6のマイクロプロセッサ・バス222の読取サイクルを
説明する。ステップ602で、制御論理機構206が、
GABバス122の制御を争奪する。制御を得ると、即
座に読取サイクルを開始する。ステップ604で、適当
なデータを読み取るためにGABバス122上でアドレ
スを活動化する。ステップ606で、GABバス122
を介してデータを読み取り、インターフェース論理機構
202にラッチする。ステップ607の間に、インター
フェース論理機構202がGABバス122を解放す
る。ステップ602、604、606および607の
間、マイクロプロセッサ・バス222は、1つまたは複
数の待機状態に入っている。したがって、この時点ま
で、マイクロプロセッサ・バス222は保留される。
【0055】ステップ608で、インターフェース論理
機構202内のデータが、サイクルの完了によってDS
P RAM208にゲートされる。ステップ610で、
残りのすべてのビットがDSP RAM208にゲート
される。たとえば、GABバスが32ビット幅であり、
マイクロプロセッサ・バス222が16ビット幅の場
合、32ビットがインターフェース論理機構202にラ
ッチされ、一時に16ビットずつ、2サイクルで転送さ
れる(ステップ608および610)。GABアービト
レーションによってパケット・メモリ108からのパケ
ットの転送が遅延される場合には、待機状態を用いてマ
イクロプロセッサ・バス222の読み取りを延長できる
ことに留意されたい。
【0056】バースト・データ転送の場合、バーストが
完了するまでステップ506を繰り返す。これは、判断
ブロック508とフィードバック経路522によって示
される。
【0057】マイクロプロセッサ・バス222の最後の
読取動作の後に、ステップ510で、DSP204がマ
イクロプロセッサ・バス222を解放する。ステップ5
12で、DSP204が、DSP RAM208にデー
タを書き込む。好ましい実施例では、1回のバースト
で、最高32バイトまでのデータをDSP RAM20
8に書き込むことができる。
【0058】ブロック転送の場合、ブロックが転送され
るまで、ステップ502ないし512を繰り返す。好ま
しい実施例では、ブロックは最高256バイトまでであ
る。
【0059】4.チャネル化されたアダプタによる動作 プロセッサ・ベースPMI114の長所の1つは、アダ
プタと複数のチャネル上の通信ネットワークの間で情報
を転送するのにそれが使用できることである。送信動作
中にこの機能を実行するため、プロセッサ・ベースPM
I114は、単一の待ち行列からデータを取り出し、こ
のデータを複数の待ち行列に分割する能力を有する。
【0060】実際には、好ましい実施例では、プロセッ
サ・ベースPMI114が、データを指示するポインタ
を取り出し、これらのポインタを複数の送信チャネルに
待ち行列化する。チャネルが、送信しようとするデータ
に関する準備ができた時に、そのデータが、ポインタが
指示するパケット・メモリ108の記憶位置から取り出
され、送信される。この実施例では、アダプタは、ポイ
ンタが取り出されるとデータを送信するものと考える。
したがって、実際に送信するまで、パケットをパケット
・メモリ108から消去しないことが重要である。これ
は、DSP204に、パケットを破棄すべき時をアダプ
タ管理機構112に伝えさせることによって達成でき
る。あるいは、宛先から受信確認信号(ACK)を受け
取った時にパケットを破棄することもできる。
【0061】パケット・メモリ108からのデータ・パ
ケットの送信を、次に詳細に説明する。図7は、チャネ
ル化動作(channelized operation)に使用される制御
ステップを示す流れ図である。図1、図2および図7を
参照すると、RISCプロセッサ102は、アダプタ・
ポート118を介して外部ネットワークに送信すべきパ
ケット・データを、待ち行列に置く。ステップ701
で、DSP204が、待ち行列状況をポーリングするこ
とによって、この要求を検出する。送信待ち行列内でパ
ケットが検出されると、DSP204は、アダプタ管理
機構112に送信要求プリミティブを発行する。ステッ
プ702で、アダプタ管理機構112が、送信しようと
するパケットの制御ブロックを指示するポインタを返し
て応答する。DSP204は、このパケット制御ブロッ
クを取り出し、検査し、ステップ704で、送信に使用
するチャネルを決定する。
【0062】ステップ706で、パケット・メモリ10
8からポインタを取り出し、DSPRAM208に記憶
する。具体的に言うと、このポインタは、正しいチャネ
ル用に指定されたチャネルFIFO(先入れ先出しバッ
ファ)に記憶される。DSP RAM208はスタティ
ックRAMであるので、ポインタだけが取り出される。
このタイプのメモリに付随するコストのために、取り出
されたデータ・パケットをすべて記憶するのに十分なメ
モリを設けると、コスト効率は悪くなる。
【0063】待ち行列にまだパケットがある場合、ステ
ップ706で、これらのパケットのポインタもチャネル
FIFOに記憶する。1つまたは複数のパケット・ポイ
ンタがFIFOにロードされた後、ステップ710で、
通信チャネルを介して転送を開始する。FIFO内に追
加の空間が必要な場合には、パケット・メモリ108内
にチャネルFIFOを拡張できることに留意されたい。
【0064】あるチャネルが送信用に割り振られた後、
DSP204の動作はタイム・スライスされる。DSP
204は、図7に示された方法を使用して、データを取
り出し、これを環状バッファ(circular buffer)に置
き、図8に関して説明する方法を使用して、この環状バ
ッファからデータを取り出し、通信チャネルを介してそ
のデータを送信する。したがって、ステップ710を完
了した後、DSP204は、ステップ714で、図8に
示す方法を実行して、通信チャネルを介してパケットを
送信することができる。図8については後で詳細に説明
する。
【0065】アダプタが、送信待ち行列内にまだデータ
を有する場合、ステップ701からの処理をもう一度開
始する。送信すべきデータがもう残っていない場合、別
のパケットが待ち行列に置かれない限り、動作は完了す
る。これは、判断ブロック712と経路724によって
示される。
【0066】上述の方法の結果として、送信チャネル待
ち行列は、送信すべきパケット・データ(またはそれを
指示するポインタ)によって常に満杯になっている。チ
ャネルは待ち行列と同様に扱われるので、前のパケット
を送る前であっても、追加のパケットを適当な送信チャ
ネル待ち行列から取り出し、あるいはそこに記憶するこ
とができる。したがって、GABバス122とマイクロ
プロセッサ・バス222の動作は、通信チャネルにデー
タ・パケットを実際に送信するという「外部」動作に依
存しない。
【0067】上記の議論は、パケット・データ(実際に
はポインタによって表される)を、複数のチャネルを介
して送信するために複数の出力待ち行列に待機させる方
法を述べたものである。このデータの実際の送信を、図
8の流れ図に関して詳細に説明する。図8は、実際のデ
ータ転送に用いられるステップを示す図である。図1、
図2および図8を参照すると、ステップ802で、通信
チャネルがデータ送信の準備ができた時、DSP RA
M208内の送信チャネル待ち行列の最初のバッファ・
ポインタを読み取る。ステップ804で、このポインタ
に関連するデータを、パケット・メモリ108から読み
取り、DSP RAM208に記憶する。
【0068】ステップ806で、現バッファ・テーブル
項目を使用して、このパケット内の次のバッファのバッ
ファ・テーブル項目を決定する。ステップ808で、こ
の次バッファ内のデータを取り出し、DSP RAM2
08に記憶する。このパケットの最後のデータをパケッ
ト・メモリ108から取り出し終えるまで、ステップ8
06とステップ808を継続する。これは、判断ブロッ
ク810とループ822によって示される。
【0069】ステップ812で、パケットが完了した
時、アダプタ・ポート118を介して適当な通信チャネ
ルにそのパケットを送信する。ステップ812を、ステ
ップ806およびステップ808とオーバーラップさせ
て、バッファ要件とDSP204の待ち時間を最小にす
ることができる。ステップ813で、追加のプロセッサ
・サイクルが使用でき、その間に追加のパケットが送信
できるかどうかを判定する。そうでない場合、処理は終
了している。追加のプロセッサ・サイクルが使用できる
場合、ステップ814に進んでこの動作を継続する。保
留中のパケットを有する各送信チャネル待ち行列につい
て、ステップ802ないし813を繰り返す。これは、
判断ブロック814と経路824によって示される。パ
ケットのデータの取出しに関連する読取動作は、図3に
関して上記で述べたように行われる。
【0070】上述のように、パケット・データの転送を
管理するのにポインタを使用することによって、プロセ
ッサ・ベースPMI114は、そうでない場合に通信ア
ダプタがサポートできる通信チャネルの数よりも多数の
使用可能な通信チャネルへの通信をサポートすることが
できる。これは、プロセッサ・ベースPMI114がポ
インタを使用すると、DSP204がデータのパケット
を管理し、どのパケットがどの通信チャネルに属するの
かを追跡することができるようになるからである。この
ようにして、本発明の方法によらずに通信アダプタの要
求元IDによってサポートできる場合よりも数が多い複
数の使用可能な通信チャネルのうちの少なくとも1つ
に、DSP204がパケットを送ることができる。
【0071】パケット・メモリ108への受信パケット
の記憶も、同様にして行われる。データ・チャネルのハ
ウスキーピングは、ポインタの使用によって維持され
る。図9は、チャネル化されたアダプタのパケット受信
の方法を示す流れ図である。図1、図2および図9を参
照すると、ステップ902で、DSP204が、パケッ
ト・メモリ108内に、着信データを記憶するのに使用
できる1ブロックのメモリを予約するように要求する。
これに応答して、アダプタ管理機構112が、このブロ
ックを予約し、DSP204に最初のバッファ・ポイン
タを返す。ステップ904で、DSP204がこのバッ
ファ・ポインタを受け取る。ステップ906で、最初の
バッファ・ポインタを、「空きバッファ・プール」のバ
ッファ・ポインタとして、DSP RAM208に記憶
する。好ましい実施例では、このメモリのブロックは2
56バイトである。
【0072】従来のPMI実施態様では、予約されたメ
モリのブロックがそれぞれ、関連する要求元ID(RI
D)を有していた。アダプタ管理機構112は、同時に
8つの活動状態のRIDしか扱えないので、普通ならこ
れが問題になるはずである。通常は、どの時点でも各チ
ャネル内で少なくとも2つのパケットが活動状態になり
得るので、8つのRIDがすべて使用中であるならば、
既存ブロック内のすべてのデータが別の装置またはバス
に送信するために送信待ち行列に置かれる(すなわち、
データが「待ち行列化される」)まで、別のさらなるR
IDが作成できず、したがって追加のブロックのメモリ
を作成することができない。したがって、8つを越える
チャネルはサポートできないことになる。
【0073】しかし、この問題は、ステップ912でパ
ケット・バッファを予約することによって解決される。
予約とは、バッファにデータを待機させず、また、アダ
プタ管理機構112によって管理される空きバッファ・
プールに返さずに、バッファをとっておく方法である。
これによって、将来の使用のためにバッファが予約され
ると同時に、追加の使用のためにRIDが解放される。
言い換えると、予約の結果、既存ブロック内のデータを
捨てることなく、あるRIDが別のブロックを識別する
ために使用できるようになる。
【0074】本発明によってRID制限が克服されるの
で、通信アダプタは、以前にサポートできた通信チャネ
ルの数より多数の通信チャネルで、データのパケットを
受信し、メモリに記憶し、処理と再送信を行うことがで
きる。
【0075】チャネルごとに2つの空のバッファができ
るように、上のステップを繰り返す。これは、判断ブロ
ック914とループ924によって示される。その背後
にある考え方は、あるバッファの使用中に、第2のバッ
ファを使用してデータを受信することである。このよう
にして、追加のデータ・パケットの受信中に、特定のチ
ャネルのデータ動作を行うことができる。バッファを予
約する処理を迅速に行うために、判断ブロック914と
経路924によって形成されるループを通る複数のパス
を処理するのに、複数のRIDを使用することもでき
る。
【0076】図10は、アダプタ・ポート118でのデ
ータ受信に用いられるステップを示す流れ図である。図
1、図2および図10を参照すると、ステップ1002
で、データを受信した時、それをDSP RAM208
に記憶する。ステップ1004で、DSP204が、空
きバッファ・プールから最初のバッファ・ポインタを読
み取って、そのデータ用に使用されるバッファのバッフ
ァ・テーブル項目212を決定する。バッファ・テーブ
ル項目212によって、DSP204は、受信データの
送り先を知る。その後、ステップ1005で、このデー
タを、バッファ・テーブル項目212によって指定され
る位置に転送する。このデータ転送は、図3に関して上
記で述べたようにして行われる。
【0077】バッファ・テーブル項目212は、バッフ
ァ・テーブル項目212が指示するバッファに別のバッ
ファが連結されるかどうかを示すフィールドを含んでい
る。バッファ・テーブル項目212のこのフィールドを
変更して、そのバッファを空きバッファ・プールから取
り除き、指定されたパケットに関連付ける。
【0078】そのパケット内に、まだ記憶されていない
追加データがある場合、パケット全体が記憶されるまで
ステップ1004ないし1008を繰り返す。これは、
判断ブロック1010とループ1022によって示され
る。
【0079】ステップ1012で、RISCプロセッサ
102または別のプロセッサ・ベースPMI114によ
る処理のため、記憶されたパケットを待機させる。
【0080】保留中のデータを有する追加チャネルが1
つまたは複数存在する場合、各チャネルについてステッ
プ1002ないし1012を繰り返す。これは、判断ブ
ロック1014とループ1024によって示される。こ
のようにして、各チャネルで受信されたすべてのデータ
を、パケット・データとしてバッファに記憶し、そのパ
ケットを、適当な宛先に向けて待機させる。
【0081】複数チャネルの動作がインターリーブでき
ることに留意されたい。
【0082】チャネル化されたアダプタの受信データ・
パケットを記憶し待機させるための代替方法を、図11
と図12に示す。図11は、この代替受信動作の制御ス
テップを示す流れ図であり、図12は、この代替方法に
用いられるデータ転送ステップを示す流れ図である。
【0083】図1、図2および図11を参照すると、ス
テップ1102で、DSP204が、パケット・メモリ
108内に1ブロックのメモリを予約するよう要求す
る。アダプタ管理機構112が、予約されたブロックの
記憶位置を示すポインタを返す。ステップ1104で、
DSP204が、このポインタをDSP RAM208
のチャネルFIFOに記憶する。ステップ1106で、
ブロックを予約する。言い換えると、このブロックに関
連するすべてのRIDが、活動状態のブロックと共に自
由に使用できるように、このブロックをとっておく。
【0084】ステップ1102ないし1106の動作を
繰り返して、各チャネルごとに2つの空のバッファをと
っておく。これは、判断ブロック1108とループ11
22によって示される。
【0085】図1、図2および図12を参照すると、ス
テップ1202で、DSP RAM208のチャネルF
IFOに記憶された最初のバッファ・ポインタを使用し
て、最初のチャネルの受信パケット・データをバッファ
のどこに記憶するのかを示すバッファ・テーブル項目2
12を読み取る。ステップ1204で、最初のチャネル
からの受信パケット・データがDSP RAM208に
存在するならば、図3に関して上記で述べたようにし
て、そのデータをパケット・メモリ108に記憶する。
【0086】受信パケットを記憶するのに追加のメモリ
空間が必要な場合、ステップ1206で、DSP204
は、そのチャネルの受信パケット・データに既に割り当
てられている空間に、追加のバッファ空間を追加するよ
う要求する。
【0087】そのチャネルの受信待ち行列に追加データ
が存在する場合、最後の受信データがパケット・メモリ
108に書き込まれるまで、ステップ1202ないし1
206を繰り返す。これは、判断ブロック1208とル
ープ1222によって示される。
【0088】1つまたは複数のチャネルが保留中の受信
データを有する場合、各チャネルについて、ステップ1
202ないし1208を繰り返す。これは、判断ブロッ
ク1210とループ1224によって示される。
【0089】複数チャネルの動作がインターリーブでき
ることに留意されたい。
【0090】上の説明では、チャネル化されたアダプタ
に関して受信動作と送信動作を説明したが、単一チャネ
ル動作というより一般的な場合にこれらの方法がどのよ
うに動作するかは、当業者には明白であろう。
【0091】本欄のまとめとして、本発明の構成を以下
のとおりに開示する。
【0092】1.送信処理または受信処理を識別する一
意的な参照番号である1つまたは複数の要求元IDを使
用して、通信アダプタ内のパケット・メモリと複数の通
信チャネルとの間でのデータ転送を制御する、プロセッ
サ・ベースのインターフェース装置であって前記通信ア
ダプタで読取動作および書込動作を実行し、並行処理の
数が前記通信アダプタによって扱うことのできる要求元
IDの数に制限されることなく前記パケット・メモリ内
で少なくとも1ブロックのメモリを予約する、プロセッ
サと、前記プロセッサに結合され、パケット・メモリ内
の前記少なくとも1ブロックのメモリを指示する少なく
とも1つのポインタを記憶し、前記通信チャネルと通信
アダプタとの間で転送するパケット・データを一時的に
記憶する、プロセッサRAMとを具備する、インターフ
ェース装置。
【0093】2.上記1.に記載の装置において、前記
プロセッサに結合され、前記通信アダプタ内のバスへの
アクセスを要求するための制御論理機構を具備する構
成。
【0094】3.上記1.に記載の装置において、前記
プロセッサに結合され、該プロセッサと通信アダプタの
間でデータおよびポインタを転送するためのバスを具備
する構成。
【0095】4.上記3.に記載の装置において、前記
バスに結合され、該バスを通信アダプタにインターフェ
ースするインターフェース論理機構を具備する構成。
【0096】5.上記4.に記載の装置において、前記
インターフェース論理機構に結合され、該インターフェ
ース論理機構を制御するとともに、前記通信アダプタ内
のバスへのアクセスを要求するための制御論理機構を具
備する構成。
【0097】6.パケット・メモリとアダプタ・バスと
を有するとともに、送信処理または受信処理を識別する
一意的な参照番号である1つまたは複数の要求元IDを
使用する通信アダプタに、複数の通信チャネルをインタ
ーフェースするための方法であって、(a)複数の通信
チャネルからパケット・データを受信するステップと、
(b)受信したパケット・データをパケット・メモリに
記憶し、要求元IDを使用して通信アダプタによって指
定できる通信チャネルの数より多数の通信チャネル上で
パケット・データを受信するためにパケット・メモリの
割振りを制御するステップと、(c)指定された通信チ
ャネルにパケット・メモリからパケット・データを転送
するステップと、(d)使用可能な通信チャネルの数
が、通信アダプタが要求元IDによってサポートできる
数よりも多い数の複数の使用可能な通信チャネルのうち
の少なくとも1つにパケット・データを転送するため
に、バッファ・ポインタを使ってパケット・データの転
送を管理するステップとを含む、インターフェース方
法。
【0098】7.上記6.に記載の方法において、前記
ステップ(b)が(i)パケット・メモリ内に少なくと
も1ブロックのメモリを予約するステップと、(ii)前
記ステップ(i)で予約された前記少なくとも1ブロッ
クのメモリを指示するバッファ・ポインタを、通信アダ
プタから受け取り記憶するステップと、(iii)通信ア
ダプタが、パケット・メモリの代替ブロックを識別する
ために関連する要求元IDを使用できるように、パケッ
ト・メモリの前記予約されたブロックを予約するステッ
プとを含む構成。
【0099】8.上記7.に記載の方法において、通信
チャネルごとに少なくとも2ブロックのメモリを予約す
るために、前記ステップ(i)ないし(iii)を繰り返
すステップを含む構成。
【0100】9.上記7.に記載の方法において、(i
v)受信したパケット・データをRAMに記憶するステ
ップと、(v)前記ステップ(ii)で受け取った前記バ
ッファ・ポインタを読み取って、前記パケット・メモリ
内のどこに前記受信したパケットを記憶するかを決定す
るステップと、(vi)前記パケット・データを、前記ス
テップ(v)で決定された前記パケット・メモリ内の記
憶位置に記憶するステップと、(vii)前記記憶された
パケットを待機させるステップとを含む構成。
【0101】10.上記9.に記載の方法において、前
記パケット・メモリ内に、前記受信したパケット・デー
タを記憶するために指定されたバッファが複数存在する
かどうかを判定するステップと、存在する場合に、前記
受信したパケット・データが適当なバッファに記憶され
るようにバッファ・テーブル項目を変更するステップと
を含む構成。
【0102】11.上記6.に記載の方法において、前
記ステップ(c)および(d)が(i)送信チャネル待
ち行列内のバッファ・ポインタを読み取るステップと、
(ii)前記バッファ・ポインタに基づき、パケット・メ
モリからパケット・データを読み取り、前記パケット・
データをRAMに記憶するステップと、(iii)指定さ
れた通信チャネルを介して前記パケット・データを送信
するステップとを含む構成。
【0103】12.上記11.に記載の方法において、
(iv)前記読み取られるパケット・データが属するパケ
ットの追加パケット・データを記憶するのに使用される
次バッファを識別するステップと、(v)前記次バッフ
ァから追加パケット・データを取り出すステップと、
(vi)前記ステップ(v)で取り出された追加パケット
・データを前記RAMに記憶するステップとを含む構
成。
【0104】13.上記6.に記載の方法において、前
記ステップ(c)および(d)が(i)パケット・デー
タの転送を求める転送要求を通信アダプタから受け取る
ステップと、(ii)複数の通信チャネルのうち、前記パ
ケット・データの転送に使用される1つの通信チャネル
を決定するステップと、(iii)前記複数の通信チャネ
ルのうちの1つに関するチャネルFIFOに、前記パケ
ット・データに関連するバッファ・ポインタを記憶する
ステップと、(iv)前記バッファ・ポインタを使って、
前記パケット・データを含むバッファの記憶位置を決定
するステップと、(v)複数の通信チャネルのうちの前
記1つの通信チャネルを介して前記パケット・データを
転送するステップとを含む構成。
【0105】14.上記6.に記載の方法において、前
記ステップ(c)および(d)が(i)RAM内の送信
チャネル待ち行列内のバッファ・ポインタを読み取っ
て、送信すべきパケットの記憶位置を決定するステップ
と(ii)送信すべき前記パケットのデータを前記バッフ
ァ・ポインタの指示するパケット・メモリの記憶位置か
ら読み取り、前記読み取られたデータをRAMに記憶す
るステップと、(iii)前記読み取られたデータを通信
チャネルを介して送信するステップとを含む構成。
【0106】15.上記14.に記載の方法において、
(iv)バッファ・テーブル項目を使って、送信すべき前
記パケットの追加データを記憶するのに使用される次バ
ッファを決定するステップと、(v)前記次バッファか
らデータを読み取り、前記追加データをRAMに記憶す
るステップとを含む構成。
【0107】16.複数の通信チャネルから受信したデ
ータのパケットを記憶するパケット・メモリと、前記パ
ケット・メモリに結合され、通信アダプタの動作を管理
するアダプタ管理機構と、前記アダプタ管理機構に結合
され、前記パケット・メモリとの間でデータを転送する
アダプタ・バスと、前記アダプタ・バスに結合され、受
信されたパケット用のパケット・メモリを予約し、通信
チャネルからの通信チャネルの数が、プロセッサ・ベー
スのパケット・メモリ・インターフェース・システムな
しで前記アダプタ管理機構によってサポートできる数に
制限されないようにパケットの受信および通信チャネル
へのパケットの送信を調整するように構成された、プロ
セッサ・ベースのパケット・メモリ・インターフェース
・システムとを具備する、複数の通信チャネルのうちの
少なくとも1つからデータのパケットを受信し、該受信
したパケットを記憶するとともに、該受信したパケット
を複数の通信チャネルのうちの少なくとも1つに送信す
るための通信アダプタ。
【0108】17.上記16.に記載の通信アダプタに
おいて、前記パケット・メモリ・インターフェース・シ
ステムが、前記通信アダプタで読取動作および書込動作
を実行し、通信チャネルの数が前記通信アダプタによっ
て扱うことのできる数に制限されることなく前記パケッ
ト・メモリ内で少なくとも1ブロックのメモリを予約す
る、プロセッサと、前記プロセッサに結合され、パケッ
ト・メモリ内の前記少なくとも1ブロックのメモリを指
示する少なくとも1つのポインタを記憶し、前記通信チ
ャネルと通信アダプタとの間で転送するパケット・デー
タを一時的に記憶するプロセッサRAMとを具備する構
成。
【0109】18.上記16.に記載の通信アダプタに
おいて、前記プロセッサに結合され、該プロセッサと通
信アダプタの間でデータおよびポインタを転送するため
のバスを具備する構成。
【0110】19.上記18.に記載の通信アダプタに
おいて、前記バスに結合され、該バスを通信アダプタに
インターフェースするインターフェース論理機構を具備
する構成。
【0111】20.上記19.に記載の通信アダプタに
おいて、前記インターフェース論理機構に結合され、該
インターフェース論理機構を制御するとともに、前記通
信アダプタ内のバスへのアクセスを要求するための制御
論理機構を具備する構成。
【0112】
【発明の効果】上述のように、パケット・データの転送
を管理するのにポインタを使用することによって、プロ
セッサ・ベースPMI114は、そうでない場合に通信
アダプタがサポートできる通信チャネルの数よりも多数
の使用可能な通信チャネルへの通信をサポートすること
ができる。これは、プロセッサ・ベースPMI114が
ポインタを使用すると、DSP204がデータのパケッ
トを管理し、どのパケットがどの通信チャネルに属する
のかを追跡することができるようになるからである。こ
のようにして、本発明の方法によらずに通信アダプタの
要求元IDによってサポートできる場合よりも数が多い
複数の使用可能な通信チャネルのうちの少なくとも1つ
に、DSP204がパケットを送ることができる。
【0113】また、従来のPMI実施態様では、予約さ
れたメモリのブロックがそれぞれ、関連する要求元ID
(RID)を有していた。アダプタ管理機構112は、
同時に8つの活動状態のRIDしか扱えないので、普通
ならこれが問題になるはずである。通常は、どの時点で
も各チャネル内で少なくとも2つのパケットが活動状態
になり得るので、8つのRIDがすべて使用中であるな
らば、既存ブロック内のすべてのデータが別の装置また
はバスに送信するために送信待ち行列に置かれる(すな
わち、データが「待ち行列化される」)まで、別のさら
なるRIDが作成できず、したがって追加のブロックの
メモリを作成することができない。したがって、8つを
越えるチャネルはサポートできないことになる。
【0114】しかし、この問題は、ステップ912でパ
ケット・バッファを予約することによって解決される。
予約とは、バッファにデータを待機させず、また、アダ
プタ管理機構112によって管理される空きバッファ・
プールに返さずに、バッファをとっておく方法である。
これによって、将来の使用のためにバッファが予約され
ると同時に、追加の使用のためにRIDが解放される。
言い換えると、予約の結果、既存ブロック内のデータを
捨てることなく、あるRIDが別のブロックを識別する
ために使用できるようになる。
【0115】本発明によってRID制限が克服されるの
で、通信アダプタは、以前にサポートできた通信チャネ
ルの数より多数の通信チャネルで、データのパケットを
受信し、メモリに記憶し、処理と再送信を行うことがで
きる。
【図面の簡単な説明】
【図1】本発明によるプロセッサ・ベースのパケット・
メモリ・インターフェース(PMI)を有する通信アダ
プタを示すブロック図である。
【図2】本発明によるプロセッサ・ベースのパケット・
メモリ・インターフェースを示すブロック図である。
【図3】パケット・メモリへの書込みに使用されるステ
ップを示す流れ図である。
【図4】プロセッサ・ベースのパケット・メモリ・イン
ターフェースのインターフェース論理機構にデータをラ
ッチするのに使用されるステップを示す流れ図である。
【図5】パケット・メモリからパケットを読み取るのに
使用されるステップを示す流れ図である。
【図6】マイクロプロセッサ・バスの読取サイクルに使
用されるステップを示す流れ図である。
【図7】チャネル化されたアダプタを用いる情報転送に
使用されるステップを示す流れ図である。
【図8】複数の通信チャネルを介するデータ送信に使用
されるステップを示す流れ図である。
【図9】チャネル化されたアダプタを用いるパケット受
信に使用されるステップを示す流れ図である。
【図10】通信アダプタのアダプタ・ポートでのデータ
受信に使用されるステップを示す流れ図である。
【図11】チャネル化されたアダプタに関して受信パケ
ット・データを記憶するのに使用されるステップを示す
流れ図である。
【図12】チャネル化されたアダプタに関して受信パケ
ット・データの記憶および待機に使用されるデータ転送
ステップを示す流れ図である。
【符号の説明】
114 プロセッサ・ベースPMI 116 インターフェース・ドライバ/レシーバ 118 アダプタ・ポート 122 GABバス 202 インターフェース論理機構 202A ラッチ 202B ラッチ 204 ディジタル信号プロセッサ(DSP) 208 DSP RAM 206 制御論理機構 210A DMA制御ブロック 210B DMA制御ブロック 212 バッファ・テーブル項目 222 マイクロプロセッサ・バス 224 マイクロプロセッサ制御バス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドナルド・ジョーゼフ・ドナヒー アメリカ合衆国27613 ノース・カロラ イナ州レイリー ファームウッド・ドラ イブ 11016 (72)発明者 ローレンス・ヴィクター・マークス アメリカ合衆国27612 ノース・カロラ イナ州レイリー ノース・ヒルズ・ドラ イブ 4901 (72)発明者 チャリス・ルエラン・プリントン アメリカ合衆国27607 ノース・カロラ イナ州レイリー シュヴェル・ストリー ト 1806

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】送信処理または受信処理を識別する一意的
    な参照番号である1つまたは複数の要求元IDを使用し
    て、通信アダプタ内のパケット・メモリと複数の通信チ
    ャネルとの間でのデータ転送を制御する、プロセッサ・
    ベースのインターフェース装置であって前記通信アダプ
    タで読取動作および書込動作を実行し、並行処理の数が
    前記通信アダプタによって扱うことのできる要求元ID
    の数に制限されることなく前記パケット・メモリ内で少
    なくとも1ブロックのメモリを予約する、プロセッサ
    と、 前記プロセッサに結合され、パケット・メモリ内の前記
    少なくとも1ブロックのメモリを指示する少なくとも1
    つのポインタを記憶し、前記通信チャネルと通信アダプ
    タとの間で転送するパケット・データを一時的に記憶す
    る、プロセッサRAMとを具備する、 インターフェース装置。
  2. 【請求項2】前記プロセッサに結合され、前記通信アダ
    プタ内のバスへのアクセスを要求するための制御論理機
    構を具備する、請求項1のインターフェース装置。
  3. 【請求項3】前記プロセッサに結合され、該プロセッサ
    と通信アダプタの間でデータおよびポインタを転送する
    ためのバスを具備する、請求項1のインターフェース装
    置。
  4. 【請求項4】前記バスに結合され、該バスを通信アダプ
    タにインターフェースするインターフェース論理機構を
    具備する、請求項3のインターフェース装置。
  5. 【請求項5】前記インターフェース論理機構に結合さ
    れ、該インターフェース論理機構を制御するとともに、
    前記通信アダプタ内のバスへのアクセスを要求するため
    の制御論理機構を具備する、請求項4のインターフェー
    ス装置。
  6. 【請求項6】パケット・メモリとアダプタ・バスとを有
    するとともに、送信処理または受信処理を識別する一意
    的な参照番号である1つまたは複数の要求元IDを使用
    する通信アダプタに、複数の通信チャネルをインターフ
    ェースするための方法であって、 (a)複数の通信チャネルからパケット・データを受信
    するステップと、 (b)受信したパケット・データをパケット・メモリに
    記憶し、要求元IDを使用して通信アダプタによって指
    定できる通信チャネルの数より多数の通信チャネル上で
    パケット・データを受信するためにパケット・メモリの
    割振りを制御するステップと、 (c)指定された通信チャネルにパケット・メモリから
    パケット・データを転送するステップと、 (d)使用可能な通信チャネルの数が、通信アダプタが
    要求元IDによってサポートできる数よりも多い数の複
    数の使用可能な通信チャネルのうちの少なくとも1つに
    パケット・データを転送するために、バッファ・ポイン
    タを使ってパケット・データの転送を管理するステップ
    とを含む、 インターフェース方法。
  7. 【請求項7】前記ステップ(b)が (i)パケット・メモリ内に少なくとも1ブロックのメ
    モリを予約するステップと、 (ii)前記ステップ(i)で予約された前記少なくとも
    1ブロックのメモリを指示するバッファ・ポインタを、
    通信アダプタから受け取り記憶するステップと、 (iii)通信アダプタが、パケット・メモリの代替ブロ
    ックを識別するために関連する要求元IDを使用できる
    ように、パケット・メモリの前記予約されたブロックを
    予約するステップとを含む請求項6の方法。
  8. 【請求項8】通信チャネルごとに少なくとも2ブロック
    のメモリを予約するために、前記ステップ(i)ないし
    (iii)を繰り返すステップを含む、請求項7の方法。
  9. 【請求項9】(iv)受信したパケット・データをRAM
    に記憶するステップと、 (v)前記ステップ(ii)で受け取った前記バッファ・
    ポインタを読み取って、前記パケット・メモリ内のどこ
    に前記受信したパケットを記憶するかを決定するステッ
    プと、 (vi)前記パケット・データを、前記ステップ(v)で
    決定された前記パケット・メモリ内の記憶位置に記憶す
    るステップと、 (vii)前記記憶されたパケットを待機させるステップ
    とを含む、 請求項7の方法。
  10. 【請求項10】前記パケット・メモリ内に、前記受信し
    たパケット・データを記憶するために指定されたバッフ
    ァが複数存在するかどうかを判定するステップと、存在
    する場合に、前記受信したパケット・データが適当なバ
    ッファに記憶されるようにバッファ・テーブル項目を変
    更するステップとを含む、請求項9の方法。
  11. 【請求項11】前記ステップ(c)および(d)が (i)送信チャネル待ち行列内のバッファ・ポインタを
    読み取るステップと、 (ii)前記バッファ・ポインタに基づき、パケット・メ
    モリからパケット・データを読み取り、前記パケット・
    データをRAMに記憶するステップと、 (iii)指定された通信チャネルを介して前記パケット
    ・データを送信するステップとを含む、 請求項6の方法。
  12. 【請求項12】(iv)前記読み取られるパケット・デー
    タが属するパケットの追加パケット・データを記憶する
    のに使用される次バッファを識別するステップと、 (v)前記次バッファから追加パケット・データを取り
    出すステップと、 (vi)前記ステップ(v)で取り出された追加パケット
    ・データを前記RAMに記憶するステップとを含む、 請求項11の方法。
  13. 【請求項13】前記ステップ(c)および(d)が (i)パケット・データの転送を求める転送要求を通信
    アダプタから受け取るステップと、 (ii)複数の通信チャネルのうち、前記パケット・デー
    タの転送に使用される1つの通信チャネルを決定するス
    テップと、 (iii)前記複数の通信チャネルのうちの1つに関する
    チャネルFIFOに、前記パケット・データに関連する
    バッファ・ポインタを記憶するステップと、 (iv)前記バッファ・ポインタを使って、前記パケット
    ・データを含むバッファの記憶位置を決定するステップ
    と、 (v)複数の通信チャネルのうちの前記1つの通信チャ
    ネルを介して前記パケット・データを転送するステップ
    とを含む、 請求項6の方法。
  14. 【請求項14】前記ステップ(c)および(d)が (i)RAM内の送信チャネル待ち行列内のバッファ・
    ポインタを読み取って、送信すべきパケットの記憶位置
    を決定するステップと (ii)送信すべき前記パケットのデータを前記バッファ
    ・ポインタの指示するパケット・メモリの記憶位置から
    読み取り、前記読み取られたデータをRAMに記憶する
    ステップと、 (iii)前記読み取られたデータを通信チャネルを介し
    て送信するステップとを含む、 請求項6の方法。
  15. 【請求項15】(iv)バッファ・テーブル項目を使っ
    て、送信すべき前記パケットの追加データを記憶するの
    に使用される次バッファを決定するステップと、 (v)前記次バッファからデータを読み取り、前記追加
    データをRAMに記憶するステップとを含む、 請求項14の方法。
  16. 【請求項16】複数の通信チャネルから受信したデータ
    のパケットを記憶するパケット・メモリと、 前記パケット・メモリに結合され、通信アダプタの動作
    を管理するアダプタ管理機構と、 前記アダプタ管理機構に結合され、前記パケット・メモ
    リとの間でデータを転送するアダプタ・バスと、 前記アダプタ・バスに結合され、受信されたパケット用
    のパケット・メモリを予約し、通信チャネルからの通信
    チャネルの数が、プロセッサ・ベースのパケット・メモ
    リ・インターフェース・システムなしで前記アダプタ管
    理機構によってサポートできる数に制限されないように
    パケットの受信および通信チャネルへのパケットの送信
    を調整するように構成された、プロセッサ・ベースのパ
    ケット・メモリ・インターフェース・システムとを具備
    する、 複数の通信チャネルのうちの少なくとも1つからデータ
    のパケットを受信し、該受信したパケットを記憶すると
    ともに、該受信したパケットを複数の通信チャネルのう
    ちの少なくとも1つに送信するための通信アダプタ。
  17. 【請求項17】前記パケット・メモリ・インターフェー
    ス・システムが、 前記通信アダプタで読取動作および書込動作を実行し、
    通信チャネルの数が前記通信アダプタによって扱うこと
    のできる数に制限されることなく前記パケット・メモリ
    内で少なくとも1ブロックのメモリを予約する、プロセ
    ッサと、 前記プロセッサに結合され、パケット・メモリ内の前記
    少なくとも1ブロックのメモリを指示する少なくとも1
    つのポインタを記憶し、前記通信チャネルと通信アダプ
    タとの間で転送するパケット・データを一時的に記憶す
    るプロセッサRAMとを具備する、 請求項16の通信アダプタ。
  18. 【請求項18】前記プロセッサに結合され、該プロセッ
    サと通信アダプタの間でデータおよびポインタを転送す
    るためのバスを具備する、請求項16の通信アダプタ。
  19. 【請求項19】前記バスに結合され、該バスを通信アダ
    プタにインターフェースするインターフェース論理機構
    を具備する、請求項18の通信アダプタ。
  20. 【請求項20】前記インターフェース論理機構に結合さ
    れ、該インターフェース論理機構を制御するとともに、
    前記通信アダプタ内のバスへのアクセスを要求するため
    の制御論理機構を具備する、請求項19の通信アダプ
    タ。
JP6031414A 1993-03-26 1994-03-01 インタ―フェ―ス装置および方法並びに通信アダプタ Expired - Lifetime JP2507230B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US037196 1993-03-26
US08/037,196 US5347514A (en) 1993-03-26 1993-03-26 Processor-based smart packet memory interface

Publications (2)

Publication Number Publication Date
JPH076107A JPH076107A (ja) 1995-01-10
JP2507230B2 true JP2507230B2 (ja) 1996-06-12

Family

ID=21892965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6031414A Expired - Lifetime JP2507230B2 (ja) 1993-03-26 1994-03-01 インタ―フェ―ス装置および方法並びに通信アダプタ

Country Status (4)

Country Link
US (1) US5347514A (ja)
EP (1) EP0618709A3 (ja)
JP (1) JP2507230B2 (ja)
CA (1) CA2110134A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5448698A (en) * 1993-04-05 1995-09-05 Hewlett-Packard Company Inter-processor communication system in which messages are stored at locations specified by the sender
JP3473975B2 (ja) * 1993-09-08 2003-12-08 株式会社日立製作所 ネットワークシステムおよびネットワークにおける通信方法
US5528763A (en) * 1993-09-14 1996-06-18 International Business Machines Corporation System for admitting cells of packets from communication network into buffer of attachment of communication adapter
GB9509484D0 (en) * 1995-05-10 1995-07-05 Gen Datacomm Adv Res Atm network switch
US6185207B1 (en) 1997-06-19 2001-02-06 International Business Machines Corporation Communication system having a local area network adapter for selectively deleting information and method therefor
US6308234B1 (en) * 1997-10-17 2001-10-23 Acuity Imaging, Llc Flexible processing hardware architecture
DE19904084B4 (de) * 1999-02-02 2008-12-11 Force Computers Gmbh Computer
US6591316B1 (en) * 1999-05-20 2003-07-08 Marconi Communications, Inc. Avoiding fragmentation loss in high speed burst oriented packet memory interface
GB2379284A (en) 2001-09-01 2003-03-05 Zarlink Semiconductor Ltd Multiple level photolithography
GB2379796A (en) 2001-09-14 2003-03-19 Zarlink Semiconductor Ltd A method of forming a low resistance contact
GB2381407B (en) * 2001-10-24 2004-06-30 Zarlink Semiconductor Ltd Dynamic buffering in packet systems
US7356680B2 (en) * 2005-01-22 2008-04-08 Telefonaktiebolaget L M Ericsson (Publ) Method of loading information into a slave processor in a multi-processor system using an operating-system-friendly boot loader
KR100737722B1 (ko) * 2005-08-19 2007-07-10 (주)씨앤에스 테크놀로지 멀티 채널 수신이 가능한 dab 모뎀 인터페이스 시스템및 그 동작방법
JP4996929B2 (ja) * 2007-01-17 2012-08-08 株式会社日立製作所 仮想計算機システム
WO2008095201A1 (en) * 2007-02-02 2008-08-07 Psimast, Inc. Processor chip architecture having integrated high-speed packet switched serial interface
US9047019B2 (en) * 2011-11-08 2015-06-02 Sybase, Inc. Shared temporary storage management in a shared disk database cluster

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4614841A (en) * 1982-06-29 1986-09-30 At&T Bell Laboratories Geographically distributed multiprocessor time-shared communication processing system
US4622631B1 (en) * 1983-12-30 1996-04-09 Recognition Int Inc Data processing system having a data coherence solution
US5226039A (en) * 1987-12-22 1993-07-06 Kendall Square Research Corporation Packet routing switch
US5167035A (en) * 1988-09-08 1992-11-24 Digital Equipment Corporation Transferring messages between nodes in a network
US5237567A (en) * 1990-10-31 1993-08-17 Control Data Systems, Inc. Processor communication bus

Also Published As

Publication number Publication date
EP0618709A2 (en) 1994-10-05
JPH076107A (ja) 1995-01-10
CA2110134A1 (en) 1994-09-27
EP0618709A3 (en) 1998-03-18
US5347514A (en) 1994-09-13

Similar Documents

Publication Publication Date Title
JP3448067B2 (ja) ネットワークアダプタのためのネットワークコントローラ
US11855881B2 (en) System and method for facilitating efficient packet forwarding using a message state table in a network interface controller (NIC)
US5367643A (en) Generic high bandwidth adapter having data packet memory configured in three level hierarchy for temporary storage of variable length data packets
CA2124452C (en) Method and apparatus for processing data within stations of a communication network
JP2507230B2 (ja) インタ―フェ―ス装置および方法並びに通信アダプタ
Kanakia et al. The VMP network adapter board (NAB): High-performance network communication for multiprocessors
JP3361824B2 (ja) 複数個のプロセッサとシステムメモリ手段とを含むネットワークアダプタのための装置、ネットワーク制御装置、制御方法
KR0169248B1 (ko) 패킷 상호 연결망에서의 메시지 송신 장치 및 메시지 송신 제어방법
JP3452590B2 (ja) システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法
US5931915A (en) Method for processing early arrival messages within a multinode asynchronous data communications system
US6922749B1 (en) Apparatus and methodology for an input port of a switch that supports cut-through operation within the switch
JP3322195B2 (ja) Lanスイッチ
US6501734B1 (en) Apparatus and method in a network switch for dynamically assigning memory interface slots between gigabit port and expansion port
US6816889B1 (en) Assignment of dual port memory banks for a CPU and a host channel adapter in an InfiniBand computing node
JP4391819B2 (ja) コンピュータ・システムの入出力ノード
US5878226A (en) System for processing early arrival messages within a multinode asynchronous data communications system
KR100298961B1 (ko) 메시지도착통지를위한소스및수신지개시인터럽트시스템
US6098105A (en) Source and destination initiated interrupt method for message arrival notification
JPH0831877B2 (ja) パケツトスイツチ
US6098104A (en) Source and destination initiated interrupts for message arrival notification, and related data structures
JP3023339B2 (ja) メッセージ着信通知方法及びシステム
JPH0621925A (ja) 多重化伝送路通信制御方式
JPS62221238A (ja) パケツト転送処理装置
JP2000090060A (ja) マルチプロセッサコンピュ―タシステムにおけるオ―バラン保護用クレジットベ―ズドメッセ―ジプロトコル