JPH04233352A - システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法 - Google Patents

システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法

Info

Publication number
JPH04233352A
JPH04233352A JP3126174A JP12617491A JPH04233352A JP H04233352 A JPH04233352 A JP H04233352A JP 3126174 A JP3126174 A JP 3126174A JP 12617491 A JP12617491 A JP 12617491A JP H04233352 A JPH04233352 A JP H04233352A
Authority
JP
Japan
Prior art keywords
data
fifo
network
transmission
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.)
Granted
Application number
JP3126174A
Other languages
English (en)
Other versions
JP3452590B2 (ja
Inventor
Farzin Firoozmand
フィルツィン・フィルーツマン
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH04233352A publication Critical patent/JPH04233352A/ja
Application granted granted Critical
Publication of JP3452590B2 publication Critical patent/JP3452590B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9031Wraparound memory, e.g. overrun or underrun detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/521Static queue service slot or fixed bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9036Common buffer combined with individual queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Optical Communication System (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【関連の出願への総合参照】この出願はこの発明の譲渡
人により所有され、かつこれとともに同じ日付に出願さ
れる次の同時係属出願に関するものである。
【0002】1)  フィルーツマン(Firoozm
and)の「フレキシブルバッファ管理を有するFDD
Iコントローラ」(FDDI CONTROLLER 
HAVING FLEXIBLE BUFFER MA
NAGEMENT )連続番号07/529,364、
2)  フィルーツマンの「メモリ管理システムおよび
方法」(MEMORY MANAGEMENT SYS
TEM AND METHOD )連続番号07/52
9,362。
【0003】 3)  フィルーツマン、他の「FDDIネットワーク
における多重レベルの非同期式優先順位実現と、するた
めの方法およびシステム」(METHOD OFAND
 SYSTEM FOR IMPLEMENTING 
MULTIPLE LEVELS OF ASYNCH
RONOUS PRIORITY IN FDDI N
ETWORKS )連続番号07/529,365。、 4)  フィルーツマンの「多重優先順位待ち行列を単
一物理FIFOを用いて多重論理FIFOに転送するた
めの方法およびシステム」(METHOD OFAND
 SYSTEM FOR TRANSFERRING 
MULTIPLE PRIORITY QUES IN
TO MULTIPLE LOGICAL FIFOs
 USING A SINGLE PHYSICAL 
FIFO )連続番号07/529,366。
【0004】
【技術分野】この発明は一般的にはデータ操作、および
より特定的にはフレームに配列されるデータをネットワ
ークアダプタのバッファを介して通過させるための方法
およびシステムに関するものである。この発明は特定的
には、完全なフレームがバッファにストアされる前に、
データをシステムとネットワークとの間に転送すること
により、ネットワークアダプタのデータスループットを
増加させることに関するものである。この発明の1つの
利用は、ファイバ分布されたデータインタフェース(F
DDI)である。
【0005】
【背景技術】フレーム(あるフレーミングまたは「ハウ
スキーピング」ビットを含むデータのパケットまたはバ
ーストは「フレーム」として規定され、フレームの形で
送られるデータは「フレーム化されたデータ」と称され
る)に配列されるデータのパケットを処理するデータ操
作システムにおいて、しばしばデータのフレームをシス
テムとネットワークの別の位置との間に転送する必要が
ある。データのフレームは同じまたは異なるレベルの優
先順位を呈示する待ち行列に配列されてもよい。
【0006】ローカルシステムおよびネットワークとの
間にあるインタフェース回路は「ネットワークコントロ
ーラ」と称される。システムとネットワークとの間の時
間不一致を補償するためにデータをバッファすること、
何らかの必要なプロトコル変換を与えること、およびコ
ントローラを通過するデータにビットを加え、またはそ
こからビットを取ることにより“ハウスキーピング”を
実行することを含み、ネットワークコントローラはシス
テムとネットワークとの間のデータフローを管理する。 種々のタイプのネットワークコントローラアーキテクチ
ャは、用いられるネットワーク動作システム、および他
の考慮すべき事柄に基づいて実現される。
【0007】たとえば、ここで参照することにより援用
する前の同時係属出願(1)「フレキシブルバッファ管
理を有するFDDIコントローラ」に対して説明される
タイプのネットワークにおいて、バスマスタアーキテク
チャを含むネットワークコントローラがあり、ネットワ
ークに対する伝送のためフレーム化されたデータの待ち
行列は、システムメモリにおいて確立されるバッファか
ら出力バッファにおいて論理FIFOにより形成される
対応する領域に転送される。システムメモリと出力バッ
ファとの間には出力バッファへの途中、一時的にフレー
ム化されたデータをストアするための予め定められた記
憶容量、たとえば32バイトを有する物理FIFOがあ
る。物理FIFOの1つの目的は、システムおよびネッ
トワーククロックのクロック速度における差の結果必要
とされるデータのバッファリングを与えることである。
【0008】「トークン」を受けてネットワークへ伝送
するための要求(FDDIにおいては、ネットワークは
光学媒体から構成される)と、伝送に利用可能なデータ
とに応答して、FDDIネットワークコントローラによ
り処理されるデータの待ち行列は、一度に1つのフレー
ムずつシステムメモリにおけるバッファ領域から出力バ
ッファに転送される。データの待ち行列は出力バッファ
において「論理FIFO」によって形成される対応する
待ち行列にストアされる。
【0009】同じ優先順位を有する付加的なデータが伝
送のために利用可能でなくなり、またはトークンの受信
の間終了していないトークンを保持する時間(THT)
がその優先順位に対するしきい値よりも小さくなるまで
、データは最も高いもので始まる優先順で転送される。 このプロトコルについての詳細はここで参照することに
より援用する前の同時係属出願(3)の「FDDIネッ
トワークにおける多重レベルの非同期式優先順位を実現
するための方法およびシステム」に与えられる。
【0010】システムメモリから物理FIFOを介して
出力バッファへのフレーム化されたデータの各々の転送
に続いて、同じ優先順位を有する付加的なデータを物理
FIFOに転送し、その後同じ出力バッファの待ち行列
に転送するか、または異なる優先順位を有するデータを
物理FIFOに転送し、もし付加的なデータが利用可能
であれば、その後別の出力バッファの待ち行列に転送す
るかのどちらかの決定がなされる。ここで参照すること
により援用される同時係属出願(4)「単一の物理FI
FOを用いて多重優先順位待ち行列を多重論理FIFO
に転送するための方法およびシステム」は、いかにして
FIFOの「ロックアップ」を防ぐかを説明する。書込
まれるべき特定の待ち行列を含む論理FIFOにおいて
利用できる残っている記憶の量が、物理FIFOの記憶
容量よりも少ないときロックアップは起こる。この状態
で、物理FIFOはバッファにおける論理FIFOにア
ンロードできない。
【0011】ネットワークコントローラを特徴付ける重
要なパラメータはそのデータスループットの速度、また
は単に「スループット」であり、これはコントローラが
システムとネットワークとの間で両方向にデータを転送
できる速度である。コントローラスループットは通常は
、データがネットワークに転送され得る最高速度を決定
するので、コントローラのスループットはできるだけ高
くなるべきである。ネットワークコントローラの第2に
重要なパラメータはその待ち時間、つまり、ネットワー
クコントローラに初めに「与えられる」データと、デー
タがネットワークに「現われる」時間(または逆も同様
である)との間の時間遅延である。
【0012】ネットワークコントローラのスループット
においては自然の制限がある。たとえば、システムおよ
びネットワーククロック速度はデータがコントローラを
通過し得る速度を制限するであろう。ネットワークスル
ープットを制限する傾向のある別の要因は、システムと
ネットワークとの間で転送されているデータについて実
行されなければならない「ハウスキーピング」の量であ
る。
【0013】待ち時間の例に対しては、フレームまたは
パケットの形式のデータが、システムとネットワークと
の間で大きいバッファメモリを有するネットワークコン
トローラを介して転送されるとき、待ち時間は増加され
る傾向がある。これはシステムから伝送データフレーム
を受けるバッファが、ネットワークへのデータの転送を
開始する前に完全なフレームが受けられるまで待つであ
ろうからである。データのストリングにおけるデータの
各フレームまたはパケットの長さは変わってもよい。伝
送データは十分なデータが受けられるとすぐにバッファ
から転送されることが望ましい。もしフレームが長けれ
ば、「アンダーラニング」として知られる状態を防ぐた
めに、コントローラはバッファにより十分なバイトが受
取られるとネットワークへのデータの転送を開始するべ
きであり、「アンダーラニング」とは、バッファが伝送
データを使い果たさないようにするぐらい早く、システ
ムがバッファを一杯にできない状態である。完全なフレ
ームよりも少ない伝送データをネットワークに転送しな
いことが重要である、なぜならば、不完全なフレームは
その目的地に到達しないであろうし、かつネットワーク
帯域幅を無駄にするであろうからである。
【0014】一方、データをネットワークに転送し始め
るために、完全なフレームがバッファによって受けられ
るまで待つ必要はない。システムおよびネットワークの
待ち時間によっては、時々完全なフレームがシステムか
ら受けられる前にデータの転送をバッファからネットワ
ークに開始することが可能であろう。これはもし、十分
な量の伝送データがバッファにあれば、少なくともその
一部分がまだバッファにあり、かつフレームがネットワ
ークに転送されている間、フレームは完全になるであろ
うからである。ワークに転送されているからである。言
換えれば、バッファに入ってくるデータはフレームが伝
送される前に、そこにある前のデータに「追いつく」で
あろう。
【0015】データスループットを最大にするために、
(1)完全なフレームの伝送データがバッファに受けら
れたとき、または(2)バッファにおけるデータがネッ
トワークに転送されている間フレームが完全になること
を可能にさせるのに十分な、完全なフレームより少ない
量の伝送データをバッファが含むときのどちらかの場合
、どちらが少なくとも、ネットワークへの完全なフレー
ムの伝送データの転送を開始することが望ましいという
ことを発明者は発見した。
【0016】ネットワークからデータが受けられると、
完全なフレームがバッファにより受けられるまで待つこ
とは必要でない、なぜならば、残りの部分のフレームは
必ずその後到達するであろうからである。理想的には、
受信データは第1のバイトが受けられると、できるだけ
すぐにバッファからシステムに転送されるべきである。 しかしながら、いくつかの受信フレームはネットワーク
コントローラによって受けられなくてもよい。フレーム
はシステムへアドレスされないので、またはフレームは
いくつかのほかの態様においては不十分であるため、フ
レームはコントローラによって「流され(flushe
d )」てもよい。受信データは一部分のフレームが受
けられるとすぐに、コントローラによって評価されるこ
とができない。したがって少なくとも予め定められた量
のデータが受けられた後にのみ、バッファからの受信デ
ータをアンロードし始めることが望ましい。
【0017】
【発明の開示】この発明の目的はフレームに配列される
伝送、および受信データをストアするためのバッファを
有するネットワークコントローラのデータスループット
を改良することである。
【0018】この発明の別の目的は、バスマスタアーキ
テクチュアを有するネットワークコントローラにおける
フレーム化されたデータのスループットを改良すること
である。
【0019】別の目的は、データがバッファからネット
ワークに転送されている間システムからバッファに伝送
データを読出すことにより、バッファを有するネットワ
ークコントローラにおけるフレーム化されたデータのス
ループットを改良することである。
【0020】この発明のさらなる目的は、データがネッ
トワークから入ってくる間、データをバッファからシス
テムに転送することにより、バッファを有するネットワ
ークコントローラにおけるフレーム化されたデータのス
ループットを改良することである。
【0021】またさらなる目的は、システムおよびネッ
トワークバス待ち時間に従ってシステムまたはネットワ
ークに対するデータの転送を開始することにより、ネッ
トワークコントローラにおけるフレーム化されたデータ
のスループットを改良することである。
【0022】また、さらなる目的は、完全なフレームお
よびバッファにより受けられるデータの量の両方に基づ
いてバッファからのデータの転送を開始することにより
、ネットワークコントローラにおけるフレーム化された
データのデータ処理を改良することである。
【0023】この発明の別の目的は、完全なフレームお
よびバッファにおいて構成される論理FIFOにストア
されるFDDIパケットデータの量の両方に基づいて、
データをバッファからネットワークまたはシステムに転
送することにより、FDDIネットワークコントローラ
におけるデータスループットを改良することである。
【0024】またこの発明の別の目的は、データがFI
FOに受けられている間、そこからのデータの転送を開
始することにより、フレーム化されたデータの待ち行列
をストアする論理FIFOを有するFDDIネットワー
クコントローラにおけるデータスループットを改良する
ことである。
【0025】この発明の別の目的は、完全なフレームお
よびFIFOにストアされるデータの量の両方に基づい
て、対応する論理FIFOへの、およびそこからの待ち
行列に配列されるFDDIパケットデータのフローを制
御することにより、FDDIネットワークコントローラ
によるデータ処理を改良することである。この発明の上
のおよび他の目的は、システムメモリからネットワーク
へのパケットに配列されるデータのフローを制御するネ
ットワークアダプタにより満たされる。コントローラは
、伝送および受信データをストアするための論理先入先
出メモリとして構成されるバッファメモリと、ネットワ
ークに対するデータの伝送に対する要求を検出するため
の手段とを含む。ネットワークへの伝送に対する要求に
応答して、データは一度に1つのパケットずつ、システ
ムメモリから伝送FIFOに転送され、かつそれからデ
ータがまだネットワークから入ってくる間、伝送FIF
Oからネットワークに転送される。これは完全なフレー
ムが受けられる前にFIFOがネットワークへ伝送する
ことを可能にさせる。この発明の別の局面に従って、パ
ケット検出手段は伝送FIFOにおいてネットワークに
伝送されるべき少なくとも1つのデータのフレームの存
在を検出する。データがシステムから受けられている間
、フレーム検出手段がFIFOにおける完全なフレーム
の伝送データの存在を検出するとき、データは伝送FI
FOからネットワークに転送される。
【0026】この発明の別の局面は、ネットワークに伝
送されるべき少なくとも予め定められた量のデータの伝
送FIFOにおける存在を検出するための伝送データし
きい値検出手段を提供する。データしきい値検出手段が
伝送FIFOにおいて、少なくとも予め定められた伝送
データの存在を検出したとき、データは伝送FIFOか
らネットワークに転送される。システムおよびネットワ
ーク待ち時間、ならびに別の要因に基づいて選択された
予め定められた量の伝送データは、FIFOからネット
ワークへのデータの転送の間データ「アンダーラニング
」を防ぐのに十分な伝送FIFOにストアされるデータ
の量である。
【0027】好ましくは、データしきい値検出手段およ
びフレーム検出手段の両方は、完全なフレームがFIF
Oにストアされるか、または少なくとも予め定められた
量のデータがストアされるかのどちらかの場合、データ
が伝送FIFOからネットワークに転送されるようにコ
ントローラに組込まれる。
【0028】この発明のさらなる局面に従って、受信デ
ータしきい値検出手段は、受信FIFOにおいてネット
ワークから受けられる少なくとも予め定められた量のデ
ータの存在を検出する。少なくとも予め定められた量の
受信データがFIFOにあるとき、受信FIFOにスト
アされるデータはシステムに転送される。受信しきい値
は、受けられたデータが流されるべきではないというこ
とを確実にするのに十分なデータの量である。
【0029】好ましくは、FIFOにストアされる伝送
および受信データは、各々がタッグビットによりマーク
付けされない1つの終わりを有するパケットの形であり
、前記アダプタはさらにパケットの終わりを検出するタ
ッグビットに応答する手段を含む。
【0030】この発明の別の局面に従って、伝送FIF
OはSTARTおよびENDポインタによって規定され
、かつそれぞれ、FIFOにデータを読出し、かつFI
FOからデータを書込むためのREADポインタおよび
WRITEポインタを含む。SHADOW  WRIT
Eポインタは伝送FIFOにストアされる完全なフレー
ムの終わりを指す。SHADOW  WRITEポイン
タがREADポインタを超えるとき伝送しきい値は検出
される。好ましくは、伝送しきい値はREADとWRI
TEポインタとの間の差と比較して、レジスタから読出
される。
【0031】この発明の好ましい実施例は、各々が複数
個の異なる待ち行列に配列されるデータのフレームをス
トアするためのシステムメモリ手段を有する、複数個の
プロセッサを有するファイバ分布されたデータインタフ
ェース(FDDI)にある。インタフェースの出力バッ
ファメモリはそれぞれ、媒体に伝送されるべきフレーム
化されたデータの複数個の待ち行列をストアするための
複数個の論理先入先出(FIFO)メモリ領域を有する
ように構成される。出力バッファメモリの論理FIFO
メモリ領域にストアされるフレーム化されたデータは媒
体に伝送される。
【0032】システムは予め定められた状態に応答して
トークンを捕獲すると、光学媒体にアクセスすることに
より光学媒体とインタフェースされる。応じて、(a)
優先順に一度に1つの待ち行列ずつフレーム化されたデ
ータをシステムメモリ手段からバッファメモリにおける
対応する論理FIFOに伝送することにより、かつ(b
)データが前記システムメモリ手段から論理FIFOに
入ってくる間、論理FIFOにストアされるフレーム化
されたデータを媒体に伝送することにより、フレーム化
されたデータは媒体に転送される。この発明の特定的な
局面に従って、FIFOにおける完全なフレームのデー
タ、または少なくとも予め定められた量のデータのどち
らかが検出されるとすぐに、伝送データの論理FIFO
から媒体への転送を開始することにより、ネットワーク
への待ち時間は減少される。
【0033】インタフェースのスループットはデータが
媒体から入ってくる間、受信FIFOに受けられるデー
タを転送することによりさらに増加される。この発明の
この局面に従ってより特定的には、システムメモリ手段
にストアされるべき媒体から入ってくるデータは検出さ
れ、かつデータは媒体から受信FIFOに転送される。 受信FIFOにストアされる予め定められた量、つまり
、データが流されるべきかどうかを決定するのに十分な
量のデータが検出されるとすぐに、データは受信FIF
Oから前記システムメモリ手段に転送される。
【0034】この発明のまた他の目的および利点は、こ
の発明を実行するように熟考されたベストモードの例示
によって簡単に、この発明の好ましい実施例のみが示さ
れ、かつ説明される次の詳細な説明より当業者にはすぐ
に明らかになるであろう。認識されるであろうように、
この発明はすべてこの発明から逸脱することなく、ほか
のおよび異なる実施例が可能であり、かつそのいくつか
の詳細は種々の明白な点において修正が可能である。し
たがって、図面および説明は事実上例示的であり、かつ
制限的でないようにみなされるべきである。
【0035】
【好ましい実施例の詳細な説明】
この発明はフレーム化された、またはパケットデータ操
作の分野における一般的な適応性を有するが、熟考され
た特定的な利用はFDDIネットワークにおいてある。 したがって、この発明の開示はFDDIの分野において
なされるであろうが、この発明はそれほど制限されるべ
きではないということが理解されるべきである。
【0036】
【FDDI;概略】その環境における発明の理解を得る
のに役立つFDDIについてのいくつかの背景情報は今
提供される。
【0037】ファイバ光学成分およびシステムに基づい
て、かつアメリカンナショナルスタンダーズインスティ
チュート(American National St
andards Institute (ANSI) 
x3T9.5 Committee )によって開発さ
れる「ファイバ分布されたデータインタフェース」(F
DDI)は2重の逆回転する物理的リングを実現する1
秒あたり100メガビットの時間決めされたトークンプ
ロトコールを規定する。図1は種々のステーションタイ
プを構成するFDDIリングの簡略化されたブロック図
である。 時々「2重アタッチメントステーション」と称されるク
ラスAステーションはネットワークの一次リングおよび
二次リングの両方に接続される。矢印で示されるように
2つのリング上でデータは反対方向に流れる。クラスA
ステーションはいくつかの単一アタッチメント、または
クラスBステーションをリングに接続するのに役立つ配
線コンセントレータとして動作し得る。図1においては
、ステーション2はステーション3、4、および5のた
めの配線コンセントレータであり、コンセントレータは
ネットワーク管理装置に多数のステーションのための1
つのメンテナンスポインタを設ける。ステーションの間
で転送されるデータはフレーム化されたパケットの形で
ある。
【0038】FDDIパケットのフォーマットは図2に
示される。パケットは最小限の16アイドルコントロー
ル記号(プリアンブル)により先行される。パケットは
技術において周知の4B/5BコードのJおよびKコン
トロール記号から構成されるスタートデリミタ(SD)
で始まる。これはパケットのタイプを識別する2−デー
タ記号のフレームコントロール(FC)フィールドによ
り続けられる。目的地アドレス(DA)はパケットの意
図された受信者を識別する。同様にソースアドレス(S
A)はパケットの送信者を識別する。アドレスは長さに
おいて26または48ビットのどちらかになり得る。D
Aフィールドは単一ステーション、グループのステーシ
ョン、またはリング上のすべてのステーションを指すこ
とができる。
【0039】SAに続くのは可変長情報フィールドであ
る。フレームチェックシーケンス(FCS)フィールド
は4バイトのデータを含む。これらのデータは32ビッ
トオートディン(Autodin)II周期冗長検査多
項式の結果である。FCSはFC、DA、SA、INF
OおよびPCSフィールドのデータ完全性を確実にする
【0040】FCSフィールドに続いて、T記号により
形成されるエンドデリミタ(ED)は伝送される。フレ
ーム状態(FS)フィールドはパケットがエラーを有し
て受けられていたか、アドレスが認められていたか、ま
たはパケットがコピーされていたかどうかを決定する記
号のために用いられる。
【0041】パケットは親ステーションによりFDDI
から除去される。「ストリッピング」と称され、かつ図
3(a)および(b)に示されるこのプロセスにおいて
は、媒体アクセスコントローラ(MAC)20はリング
上の伝送のためのIDLEコントロール記号のソースを
選択する。スタートデリミタが到達したとき、コントロ
ーラはリピート経路に切換える。パケットは監視され、
もし要求されればコピーされ、かつ同時にリピートされ
る。媒体アクセスコントローラ20はまたそれ自身のパ
ケットをソースに切換え、またはトークンを出すことが
できる。
【0042】トークンパッシングにおいて、ステーショ
ンはそれを受けるステーションに伝送する権利を割当て
る特別のビットパターンである「トークン」をを循環す
ることにより、媒体に伝送する権利を分布させる。伝送
することを願うステーションは、それが前のステーショ
ンからのトークンパッシングの順序でトークンを受ける
まで、待つ。ステーションがトークンを受けると、それ
はそのデータを伝送し、それからトークンを次のステー
ションに通過させる。
【0043】伝送することを待つFDDIステーション
はまず、ストリッピング動作を実行することによりトー
クンを「捕獲」しなければならない。トークンSDフィ
ールドのみがリング上でリピートされる。トークンが一
旦捕獲されると、ステーションはパケットを伝送し始め
ることができる。最後のパケットが送られたときステー
ションはすぐに新しいトークンを出すことによって続け
られる。
【0044】トークンを捕獲するための規則、およびデ
ータ伝送のために割当てられた時間の量はFDDI仕様
において規定され、かつここで参照することにより援用
された前の同時係属出願(3)において要約される「時
間決めされたトークンプロトコル」によって制御される
。プロトコルは最大トークン回転時間(TRT)を確実
にするために設計されて、初期設定についてのクレーム
プロセスの間ステーションの中の命令プロセスにおいて
決定される。命令プロセスはトークン到達の間の最も速
い時間を必要とするステーションが、リングのため目標
トークン回転時間(TTRT)を命令することを許容す
る。
【0045】時間決めされたトークンプロトコルは伝送
サービスの2つのタイプ、すなわち同期サービスおよび
非同期サービスを提供する。ステーションには同期サー
ビスにより各トークン回転上に予め定められた量の伝送
帯域幅が与えられ、残りのリング帯域幅は非同期サービ
スを用いてステーションの中で共有される。トークンサ
ービスが予想されていたよりも早く到達したとき、ステ
ーションは非同期伝送を送ることを許容される。非同期
伝送のために割当てられた時間の量は、トークンによる
到達の現実の時間と予想されていたトークンの到達時間
との間の差に制限される。非同期伝送のための帯域幅の
割当は、同期伝送のためのどの用いられていない帯域幅
もトークン回転上の非同期伝送のために自動的に再び割
当てられて、ダイナミックである。
【0046】図4を参照すると、前の同時係属出願(2
)においてより詳細に説明されたタイプのFDDIイン
タフェースにおいて、一般的に116として示されるバ
スマスタアーキテクチュアはシステム、またはユーザバ
スとネットワークとの間にファイバ光学媒体の形で設け
られる。バスマスタアーキテクチュア116の主コンポ
ーネントはデータフレームをコントローラ120から受
け、かつデータを並列から直列フォーマットに変換する
前にフレームの適当な符号化を実行するエンコーダ/デ
コーダ(ENDEC)132を介して媒体にアクセスし
、かつFDDI要求を満たすためにほかの「ハウスキー
ピング」機能を実行する媒体アクセスコントローラ(M
AC)120を含む。ネットワークDMA(直接メモリ
アクセス)コントローラ124は、システムバス上の少
なくとも1つのシステムメモリ(図示されず)と少なく
とも1つのFIFO(先入先出)メモリを有するように
構成され、ネットワークDMAコントローラと媒体アク
セスコントローラとの間に接続される出力バッファ12
6との間のデータの転送を制御する。媒体アクセスコン
トローラ120はフレームストリッピング、エラーチェ
ッキングおよびバスアービトレーションのような何らか
の要求されるハウスキーピング機能を実行する間データ
のフレームを受け、かつ伝送する適切なネットワークア
クセスプロトコルを実現する。ネットワークDMAコン
トローラ124は、フロントエンドバスマスタとして動
作し、ホストまたはノードプロセッサと一緒に通信し、
メモリにおけるデータの動きを最小にしながらシステム
メモリからバッファにデータを分散し、かつ収集する。
【0047】図5に示され、かつ後により詳細に説明さ
れる媒体アクセスコントローラ120は、データバス1
34およびアドレスバス136を介してバッファメモリ
126にインタフェースされ、かつデータバス134を
介してネットワークDMAコントローラ124にインタ
フェースされる。媒体へのおよび媒体からのデータの動
きを制御するために、ハンドシェイキングはコントロー
ラ124および120の間のバス140で実行される。
【0048】ネットワークDMAコントローラ124は
、共有されるデータバス144ならびにアドレスおよび
コントロールバス146、148を含むホストバス14
2にある。ネットワークDMAコントローラ124に対
する制御信号はバス要求および肯定応答線150でホス
トにインタフェースされる。媒体アクセスおよびネット
ワークDMAコントローラ120ならびに124は出力
バッファメモリ126と一緒に協働して、後で説明され
、かつより詳細にはここで参照することによって援用さ
れる前の同時係属出願(1)において説明され、示され
る種々のバス上でネットワークインタフェース動作を実
行する。
【0049】図6のブロック図を参照すると、図7にお
いて詳細に示され、かつ後により詳細に説明される出力
バッファ126は、媒体から受けられるデータの待ち行
列を含む受信FIFO175、および少なくとも1つ、
好ましくは4つの各々が媒体に与えられるべきデータの
待ち行列を含む伝送FIFO177を有するように構成
される。図7において示される4つの待ち行列は、1つ
の同期待ち行列およびFDDI仕様に従う3つの異なる
割当てられたレベルの優先順位を有するデータを含む待
ち行列を呈示する。好ましくはスタティックランダムア
クセスメモリ(SRAM)である出力バッファ126は
、各々が異なる優先順位のデータ待ち行列を含む4つの
FIFOを有するようにファームウェアによってプログ
ラムされ、特定的には各FIFOは後に詳細に説明され
るような「ポインタ」を用いて規定される。
【0050】媒体から受けられたデータはネットワーク
DMAコントローラ124によりリンクリスト待ち行列
178を介してシステムメモリに与えられ、かつ同様に
、同期および3つのレベルの非同期優先順位に対応する
リンクリスト待ち行列180を介してシステムメモリか
ら媒体にデータは伝送される。このシステムにおいて実
現されるバッファメモリ管理についての説明のため、こ
こにおいて参照することにより援用された前出の同時係
属出願(2)の参照はここにおいてなされる。
【0051】出力バッファ126を含むいかなる動作よ
りも先に、ノードプロセッサはバッファにすべての待ち
行列のエンドアドレスをロードしなければならない。待
ち行列ポインタは図7に示される順序、つまりポインタ
はまず特定のフレーム領域の終りを規定しそれから、待
ち行列を受け、かつ次に3つのレベルの優先順位を有す
る非同期待ち行列によって従われる同期待ち行列の順序
で待ち行列を伝送する。またノードプロセッサによって
プログラムされるのは、図7の右側の欄に示されるよう
な用いられるすべての待ち行列の読出し/書込みポイン
タであり、エンドアドレスポインタは図面の左側の欄に
示される。
【0052】より特定的には、図7に示されるFIFO
の各待ち行列は、接頭語「EA」を有する「アドレスの
エンド」により特徴付けられる。たとえば、SPECI
ALFRAME  AREAを無視する。同期データを
含む同期待ち行列はアドレスのエンドポインタ「EAS
」によって特徴付けられ、3つの非同期待ち行列はアド
レスのエンドポインタ「EAA0−EAA2」により特
徴付けられる。さらに各待ち行列は、従来の態様ではそ
こからデータが読出され、かつそこにデータが書込まれ
る位置を指すREAD、WRITEポインタにより規定
される。READおよびWRITEポインタの間の差は
待ち行列にストアされるデータの量を呈示する。たとえ
ば、図7においては、RPRおよびRPXA0−RPX
A2は、FDDI標準に従って同期および3つのレベル
の非同期データ待ち行列のためのREADポインタを呈
示する。すべてのこれらのREADポインタはそれぞれ
の待ち行列の上にある。ポインタWPXSおよびWPX
A0−WPXA2は、それぞれの待ち行列の終りにおい
て同期および3つのレベルの非同期データのためのWR
ITEポインタを呈示する。
【0053】この発明の局面に従って、SHADOW 
 WRITEポインタ(SWP)は最もおそく待ち行列
にストアされたフレームの終わりを指す。待ち行列が空
であるとき初めは、SHADOW  WRITEポイン
タは待ち行列の上にあるREADおよびWRITEポイ
ンタに等しい。データが待ち行列の上に書込まれるので
、SHADOW  WRITEポインタはREADポイ
ンタに等しいままである。フレームの終わりが待ち行列
に書込まれ、図9と関連して後に説明される「タッグ」
ビットにより検出されるとき、SHADOW  WRI
TEポインタは今待ち行列にストアされたフレームの終
わりにジャンプすることにより更新する。もし完全なフ
レームよりも少ないものが待ち行列にあれば、SHAD
OW  WRITEポインタはREADポインタに等し
い。逆に、もし少なくとも1つの完全なフレームのデー
タが待ち行列にストアされれば、FIFOのSHADO
WWRITEおよびREADポインタは互いに等しくな
い。
【0054】たとえば、図7におけるポインタSWPR
は、RECEIVE待ち行列のためのSHADOW  
WRITEポインタである。SWPXSおよびSWPA
0−SWPA2は伝送データの同期および非同期待ち行
列のためのSHADOW  WRITEポインタである
。各待ち行列における少なくとも1つのデータのフレー
ムはストアされるべきと考えられるので、SHADOW
  WRITEポインタはREADおよびWRITEポ
インタの中間にあるように示される。空の待ち行列(図
示せず)は待ち行列に対するすべての3つのポインタが
互いに等しいことにより特徴付けられるであろう。1つ
のデータの完全なフレームよりも少ないものを含む空で
ない待ち行列は、等しいREADおよびWRITE  
SHADOWポインタならびに等しくないWRITEポ
インタにより特徴付られる。
【0055】スタックを形成すると共にバッファメモリ
126において構成されるFIFOは「閉じている」の
で、ポインタはバッファの終りを「ラップアラウンド」
し、かつポインタがFIFOスタックの終りに到達した
とき再循環するであろう。
【0056】これらの2つの原理、すなわち、(1)待
ち行列におけるデータの量がREADおよびWRITE
ポインタの間の差に等しい、かつ(2)SHADOW 
 WRITEおよびREADポインタが等しくなければ
、少なくとも1つの完全なデータのフレームが待ち行列
においてあるというこれらの2つの原理は、データがネ
ットワークからバッファに入ってくる間、またはデータ
がシステムによってバッファに与えられている間、バッ
ファ126からのデータを転送するためにこの発明にお
いて実現される。完全なフレームのデータがバッファに
ある時か、または入ってくるデータを能動化するのに十
分なデータがバッファにあるいずれかの場合、アンダー
ラニングを防ぐためにバッファにあるデータに「追いつ
く」ために、かつ伝送フレームを完全にするために、シ
ステムおよびネットワークバス待ち時間を考慮して、伝
送データはバッファ126からネットワークに転送され
る。システムによって受けられるように、またはそれが
処理され得る形でないため「流される」ようにのいずれ
かのため、データを能動化させるのに十分なデータがバ
ッファにあるとき、受信データはバッファ126からシ
ステムに転送される。
【0057】データがバッファ126からネットワーク
またはシステムのどちらかに「早く」転送されるため、
インタフェースのデータスループットは増加させられる
。この動作は図11および図14と関連して後により詳
細に説明されるであろう。
【0058】ネットワークアクセスおよびネットワーク
DMAコントローラ120、124がバッファメモリ1
26と一緒に協働して、いかにして示される種々のバス
上のネットワークインタフェース動作を実行するかが後
に説明されるはずである。さしあたりインタフェースの
主コンポーネント、すなわちネットワークDMAコント
ローラ124、媒体アクセスコントローラ120および
出力バッファ126のより詳細な説明が今与えられるで
あろう。
【0059】
【ネットワークDMAコントローラ124】図8に詳細
に示されるネットワークDMAコントローラ124は、
媒体アクセスコントローラ120とネットワークDMA
コントローラ124との間に接続されるインタフェース
回路150を含む。インタフェース150は少なくとも
1つの、かつ好ましくは4つのFIFO152を含む伝
送セクションと、FIFOを含む受信セクション154
と、パケットバッファ管理回路156と通信する。イン
タフェース150はデータをバッファ126から受信セ
クション154に転送すると同様に伝送セクション15
2にストアされるデータをバッファメモリ126に転送
する。ネットワークのデータはシステムに利用可能であ
り、少なくとも予め定められた量のバッファにおける受
信データの受信を含むほかの状態が満たされたとき、バ
ッファ126から受信セクション154へのデータの転
送は媒体アクセスコントローラ120によるコマンドで
なされる。システムメモリからのデータが伝送セクショ
ンにおいて利用可能で、そこのデータ待ち行列がアンロ
ックされ、かつ少なくとも完全なフレームか、または少
なくとも予め定められた量のバッファにストアされる伝
送データを含むほかの状態が満たされたとき、伝送セク
ション152からのデータの転送は実行される。
【0060】FIFO仕様に従うデータの優先順位によ
る適当な待ち行列でバッファメモリをロードするため、
パケットバッファ管理回路156は媒体アクセスコント
ローラ120に、どのタイプのデータが伝送セクション
にあるかを示す。もし待ち行列が一杯になれば、インタ
フェース150はパケットバッファ管理回路156に、
現在のFIFOを空にし終えるために、その待ち行列を
ロックし、かつその待ち行列を中断するように信号する
。もし転送が不完全であれば、インタフェース150が
その待ち行列がアンロックされたと信号するまで、回路
156はほかの起ころうとする転送を続ける。そのとき
には、どの中断された転送も続けられる。もし伝送およ
び受信データがセクション152および154における
FIFOから同時に要求されれば、インタフェース15
0は予め定められた伝送および受信優先順に従って、イ
ベントの順序に基づいてこれらの転送を優先付ける。
【0061】パケットバッファ管理回路156は、コマ
ンドワードコードをデコードし、伝送し、明白なエラー
コマンドを要求し、かつ伝送セクション152と同様シ
ステムメモリインタフェース160に適当な情報を送る
。パケットバッファ管理回路156はコマンド要求FI
FO152からの伝送要求、およびFIFO154から
の受信要求を優先付ける。管理回路156はそれから、
システムメモリインタフェース160にコマンドを出し
て伝送、または受信のいずれかを認めるのか、もしくは
コマンドのうちの1つを処理し、かつCPUインタフェ
ース161を介してシステムにインタフェースされる。
【0062】伝送セクション152はすべての伝送待ち
行列を維持し、かつ予め定められた優先順位における動
作を優先付ける。FIFO152はバイトを順序付け、
かつデータを収集することを実行し、かつ媒体アクセス
コントローラ120によって処理されるべきFIFO配
向されたパケットにデータをフォーマット化する。伝送
セクション152における種々の伝送待ち行列は、バッ
ファメモリ126が待ち行列を一杯にしたとき待ち行列
の切換えが実行されるように制御される。待ち行列がア
ンロックされたとき動作が再開し得るように、ロックさ
れた待ち行列のためのすべての必要な情報はストアされ
る。
【0063】伝送セクション152に含まれるFIFO
はまた、システムメモリインタフェース160とネット
ワークアクセスコントローラインタフェース150との
間のデータバッファリングおよび速度調整のために用い
られる。システムメモリバス、およびネットワークのデ
ータ転送速度が独立しているので、バッファリングがネ
ットワークDMAコントローラ138において要求され
る。
【0064】受信セクション154は出力バッファメモ
リ126からのFIFO配向されたフレームを受け、か
つそれらをシステムメモリにおける受信バッファに分散
させる。受信バッファは記述リングによって指される。 セクション154はさらに、伝送FIFO152と同じ
態様で、ネットワークおよびシステムメモリの間の速度
調整を与えるためにFIFOを含む。
【0065】システムメモリインタフェース(SMI)
160はシステムメモリのため高速プログラマブルバス
インタフェースと、アドレス生成回路と、記憶装置とを
含む。インタフェース160はまた、システムメモリに
おけるバッファ管理のためのリングの端検出回路と、シ
ステムメモリインタフェースのための主コントロール状
態機械とを含む。
【0066】回線163においてシステムメモリインタ
フェース160からシステムに与えられる信号は、シス
テムクロックSCLK(図示せず)と同期している。こ
れらの信号は外部アービタ(図示せず)からの1つのシ
ステムメモリのアクセスを要求する。別の信号はネット
ワークDMAコントローラ124に、システムメモリに
アクセスする権利を認める。SMI160の出力におけ
るアドレスバスは、すべてのシステムメモリアクセスを
アドレスし、かつシステムメモリ読出し/書込み線は、
データがシステムメモリからコントローラ124に転送
されているのか、またはコントローラからシステムメモ
リに転送されているのかどうかを示す。SMI160の
出力におけるほかの信号は、システムメモリの状態を示
し、エラーを示し、かつシステムメモリに対する読出し
および書込みの間のバスコンテンションを防ぐために外
部データバッファを能動化し、または不能化する。別の
SMI信号は、書込み動作のためシステムメモリにデー
タをラッチするためにSMIにおけるラッチを活性化す
る。
【0067】CPUインタフェース161における信号
線は、ネットワークDMAコントローラ124がメモリ
からのコマンドを読出さなければならないということを
示し、かつコントローラにメモリアクセスを実行するよ
うに指示する信号を含む。別の線はネットワークDMA
コントローラがメモリにおける新しい状態ワードを書込
んだということをCPUに信号し、かつ別のものは割込
みを解除する。
【0068】インタフェース150の出力においては、
媒体アクセスコントローラ120を介してバッファメモ
リ126にアクセスするために符号化された要求を含む
ホスト要求バスがある。ホスト要求バスに搬送されるコ
ードによって、バッファメモリ126は4つの伝送待ち
行列のうちのいずれかにおいてデータを読出し、または
データを書込むためにアクセスされる。読出し要求はバ
ッファ126から受信パケットを検索し、かつそれらを
システムメモリにストアする。書込み要求は伝送のため
バッファメモリにパケットを転送する。またインタフェ
ース150の出力においては、ネットワークDMAコン
トローラ124の現在の書込み、または読出し要求が媒
体アクセスコントローラ120によって認められている
ということを示す信号を搬送するホスト肯定線がある。 この信号と一緒に、バッファメモリ126は能動化され
、かつ後(図17)で説明されるようにデータはデータ
バス、データパリティバスおよびデータタグバスにある
。媒体アクセスコントローラ120がバッファメモリ1
26からDMAコントローラにデータを読出すとき、イ
ンタフェースはまたデータをネットワークDMAコント
ローラ124にラッチするために読出し出力を与える。 受けられたデータ線は、受けられたデータがバッファ1
26にあり、かつシステムメモリに転送される準備が整
っているということを示す。後で説明されるほかの線は
、バッファ126において現在アクセスされた伝送待ち
行列の状態を示す。
【0069】
【媒体アクセスコントローラ120】図5により詳細に
示される媒体アクセスコントローラ120は、FDD 
 IMACプロトコルを処理するためのコア媒体アクセ
スコントローラ(MAC)162を含む。MAC162
のデータ入出力ポートは、伝送および受信FIFO16
4および166に接続される。ネットワークから受けら
れるデータは受信FIFO166により外部バッファメ
モリ126に与えられ、ネットワークに与えられるべき
外部バッファからのデータは伝送FIFO164にスト
アされる。FIFOコントロール回路168は、メモリ
アービタ170によってなされるメモリアービトレーシ
ョン決定に基づいて伝送および受信FIFO164およ
び166のローディングならびにアンローディングを調
整する。
【0070】ネットワークまたはノードプロセッサのど
ちらがバッファメモリにアクセスできるかどうかを決定
するアービタのアクセス決定に基づいて、アドレス生成
器172は要求される外部バッファメモリアドレスをア
ドレスバス136に与える。そのデータ入力がゲート1
73を介してアドレス生成器172によって制御される
ノードプロセッサインタフェース174は、ノードプロ
セッサからの命令をデコードし、チップ状態を収集し、
かつコントローラ124を通じて制御情報を分布する。
【0071】媒体アクセスコントローラ120とオン−
チップの伝送および受信FIFO164ならびに166
は、ネットワークDMAコントローラ124の伝送およ
び受信セクション152ならびに154に類似する態様
で、主にシステムバスの待ち時間およびバーストの長さ
によって多数のデータパケットをストアする。
【0072】
【バッファメモリ126】図6に一般的に、かつ図7に
より詳細に示される出力バッファメモリ126は、ネッ
トワークから受けられたデータの待ち行列を含む受信F
IFO175および、少なくとも1つの、好ましくは4
つの各々がネットワークに与えられるべきデータの待ち
行列を含む、伝送FIFO177を有するように構成さ
れる。前に説明された4つの待ち行列は図7に示され、
1つの同期待ち行列およびFDDI仕様に従ってデータ
の3つのレベルの非同期優先順位を含む待ち行列を呈示
する。いかにしてデータ優先順位が互いに関連付けられ
、かつネットワークに与えられるかは、ここで参照する
ことにより援用された前の同時係属出願(3)および(
4)において説明される。
【0073】図9に示される伝送フレームのフォーマッ
トは、ビット位置0−31におけるデータとタッグビッ
トとを含み、かつ記述ワードによって続けられる。記述
ワードと同様に各フレームの最後のワードは、「1」に
セットされるタッグビットを有し、フレームの終わりを
マーク付けしない。伝送されるべきパケットはホストま
たはノードプロセッサにより、システムメモリにセット
アップされる。READ、SHADOW  WRITE
、WRITEおよびEND  OF  ADDRESS
ポインタは示されるように位置決めされる。
【0074】
【バッファメモリにおける伝送フレームのローディング
】伝送順序は図10における概観図に示される。システ
ムメモリにおけるデータのセットアップに続いて、ステ
ップ182において、もし出力バッファ126における
現在の伝送待ち行列が「ほとんど一杯」でないと決定さ
れれば、前の同時係属出願(4)に従ってネットワーク
DMAコントローラ124はデータをシステムメモリか
ら図8に示される内部伝送FIFO152に転送する(
ステップ184)。データは次に、伝送FIFO152
から(外部)出力バッファメモリ126に転送される(
ステップ186)。
【0075】より詳述すれば、図9に示される伝送フレ
ームはホストおよびネットワークDMAコントローラ1
24により、媒体アクセスコントローラ120の管理下
でバッファメモリ126にロードされる。これはデータ
をバッファ126に要求されている特定の待ち行列に基
づいて、符号化された書込むためのネットワークDMA
コントローラ124による要求に応答して実行される。 下の図11と関連して説明されるように、好ましくはバ
ス利用効率を最大にし、かつオーバランまたはアンダー
ラン状態を避けるためにバッファはネットワークに対す
る伝送のためにアンロードされているのと同時に、パケ
ットはバッファ126にロードされる。
【0076】
【バッファメモリからの伝送フレームのアンローディン
グ】フレームがバッファメモリ126にロードされた後
、フレーム全体がロードされたということ、またはメモ
リに書込まれるフレームのワードの数が伝送しきい値を
超えたということのどちらかが、媒体アクセスコントロ
ーラ124により確認されたとき、フレームはネットワ
ークに対する伝送の準備が整う。
【0077】ネットワークに対する伝送がシステムに利
用できるとき、つまり、FDDIネットワーク上のトー
クンが待ち行列を伝送するために捕獲され、かつその待
ち行列に対する伝送状態が満たされれば、伝送は始まり
、かつ論理「1」タッグビットによって特徴付けられる
フレームの終りが遭遇されるまで、フレームは媒体アク
セスコントローラ124によって読出される。このとき
バッファが空にされる前に、データのフレームは後続の
伝送のためにバッファに既に読出されている。つまり伝
送が進行中である間、かつフレームの完全な伝送の後、
完全なフレームがバッファにあるか、またはバッファの
内容が伝送しきい値を超えれば、媒体アクセスコントロ
ーラ124は伝送のためFIFOの選択された待ち行列
からオンチップ伝送FIFO164に、より多くのデー
タを取出す。もしいずれの状態も満たされなければ、媒
体アクセスコントローラ124はほかの待ち行列を優先
順に伝送のために検査する。
【0078】待ち行列からの伝送は待ち行列が空にされ
たとき完了される。しかしながら、もし伝送FIFO1
64がフレームの途中で空になれば、アンダーラン状態
は暗示されかつ現在のフレームは打切られる。
【0079】少なくとも1つの完全なフレーム、または
少なくとも予め定められた量の伝送データがバッファ1
26にあるとき、いかにしてシステムからネットワーク
へのデータの伝送が実行されるかは図11を参照して今
より詳細に説明される。
【0080】ステップ186aにおいて、そこからデー
タが初めに伝送されるべき待ち行列は、同時係属出願(
4)に説明されるように、待ち行列がロックされたかど
うかを決定するために検査する。もし待ち行列がロック
されれば、プロセッサは別の待ち行列に対して続けられ
、ステップ186gを実行する。もし待ち行列がロック
されなければ、その待ち行列に対するSHADOW  
WRITEおよびREADポインタの値をテストするこ
とにより、ステップ186bは完全なフレームが待ち行
列にあるかどうかを決定する。もし2つのポインタが互
いに等しくなければ、少なくとも1つの完全なフレーム
がバッファ126にあるので、プログラムはネットワー
クに対する伝送を開始するためにステップ186eにジ
ャンプする。もしSHADOW  WRITEおよびR
EADポインタが互いに等しければ、プログラムは次に
待ち行列の内容をテストし、それが少なくともしきい値
量のデータを含むかどうかを決定する。これはステップ
186dにおいて、待ち行列におけるデータの量を呈示
するREADおよびWRITEポインタの値の間の差と
、伝送データのしきい値XTHRを比較することにより
なされる。
【0081】伝送しきい値の値XDHRは、バッファ1
26に入ってくる伝送データがデータアンダーラニング
を防ぐためにバッファから出ていくデータと結合し得る
速度に依存する。データアンダーラニングは打切られな
ければならない「ボイドデータ」をつくるであろう。し
きい値XTHRはシステムおよびネットワークバス待ち
時間に基づき、かつバスのデータ伝送の速度と反比例す
る。
【0082】バッファメモリにストアされた伝送データ
の待ち行列は、図12に示されるフォーマットを有し、
そこにおいて各フレームはタッグビット「0」により特
徴付けられる長いワードおよびタッグビット「1」によ
って特徴付けられる最後の長いワードを含む。パケット
の最後のワードに続いて、またタッグビット「1」によ
って特徴付けられる状態ワードがある。状態ワードはど
のバイト境界において、データの最後のワードが終るか
を規定し、ネットワークDMAコントローラがシステム
メモリから得た状態からコピーされ、かつパケットがエ
ラーを含み、かつ打切られるべきかどうかを示す多数の
予め定められたビット含むパケットの状態と同様に、デ
ータバッファの状態を反映する。
【0083】
【バッファメモリにおける受信パケットのローディング
】図13における概観図に示されるフレーム化されたパ
ケットの受信は、外部バッファメモリ126における記
憶のために媒体アクセスコントローラ124によるデー
タパケットの受信(ステップ190)、およびバッファ
からネットワークDMAコントローラ124の内部受信
FIFO154へのデータパケットの転送(ステップ1
92)を必要とする。バッファメモリ126にストアさ
れる受信フレームのフォーマットは図15に示される。
【0084】媒体アクセスコントローラ120によりバ
ッファメモリ126にストアされるネットワークから受
けられるパケットは、図16に示される態様でメモリに
配列される。バッファメモリにおける受信パケットは連
続して接近してストアされ、バッファメモリ受信領域が
循環する待ち行列の構成を有するようにさせる。各パケ
ットの終りにおいて、媒体アクセスコントローラ120
はパケットの状態をストアする。タッグビットはデータ
のために0に、かつ状態ワードを識別するために1にセ
ットされる。
【0085】
【バッファメモリからの受信フレームのアンローディン
グ】バッファ126にストアされるデータの量が受信し
きい値を超えたとき、ネットワークDMAコントローラ
124は次に、パケットデータを内部受信FIFO15
4からシステムメモリに転送し(ステップ194)、ホ
ストまたはノードプロセッサによって処理される(ステ
ップ196)。これは媒体アクセスコントローラ120
によって制御され、ネットワークDMAコントローラ1
24にデータをバッファメモリ126からシステムメモ
リに転送するように命令する。これはバッファメモリに
おけるワードの数がプログラムされた受信しきい値を超
えたとき行なわれる。フレーム受信の間の受信バッファ
待ち行列のいかなるオーバーフロー状態も状態ワードに
より示され、フレームが流されるべきであることを示す
【0086】少なくとも予め定められた量の受信データ
がバッファ126の受信FIFOにあるとき、いかにし
てシステムによるデータの受信が実行されるかは、今図
14を参照してより詳細に説明される。ステップ194
aを参照すると、受信しきい値の値RTHRは図18に
おけるレジスタ187から読出される。このしきい値は
伝送しきい値XTHRのように、データがネットワーク
から入ってくる間バッファ126がシステムに受信デー
タを転送し始めることを可能にする。データ受信の各フ
レームがシステムにアドレスされ、かつそうでなければ
打切られないことを確実にするためにインタフェースを
能動化するため、受信しきい値の値RTHRはシステム
およびネットワークバス待ち時間に基づいて、十分であ
るバッファの受信FIFOにおいて受けられるワードの
数を呈示する。もしネットワークから受けられるバッフ
ァ126におけるワードの数が受信しきい値の値RTH
Rを超えれば、ステップ194bにおいて、バッファか
らの受信データがシステムに転送されるステップ194
dにプログラムはジャンプする。
【0087】バッファに受けられるデータのフレームが
流されるべきであるかどうかを決定するために、ステッ
プ194cはバッファ126における受信FIFOの内
容をテストする。これは、SHADOW  WRITE
ポインタの値SWPRとWRITEポインタの値WPR
を比較することにより実行される。SHADOW  W
RITEポインタおよびWRITEポインタは初めは、
データが書込まれるべき待ち行列の位置にある。フレー
ムが待ち行列に書込まれるとき、WRITEポインタの
みが増加する。受信フレームがシステムのアドレスを含
まないか、またはそれが不完全であるかのどちらかの理
由で、もし受信フレームが流されるべきであれば、フレ
ームがバッファから「流される」(ステップ194f)
ようにWRITEポインタはSHADOW  WRIT
Eポインタに再びセットされる。このゆえに、もし受信
データが受信しきい値を超え、フレームが流されるべき
でなければ、ステップ194cは受信データをシステム
に転送する。
【0088】
【ネットワークアクセスおよびネットワークDMAコン
トローラインタフェス】図17は媒体アクセスコントロ
ーラ120、ネットワークDMAコントローラ124お
よびバッファメモリ126の間の信号フロー経路を示す
。バッファ126と同様に、媒体アクセスコントローラ
120とネットワークDMAコントローラ124との間
に接続されるバッファデータバスBDATAは好ましく
は32ビットバスであり、かつ付加的な線BTAGはB
Dバスが、フレームデータまたはフレームの終りにフレ
ーム状態を含むかどうかを規定するタッグビットを搬送
する。バスBDPはBDバスおよびBDTAGバスのた
めにバッファメモリデータパリティビットを搬送する。 これら3つのすべてのバス、すなわちBDATA、BT
AGおよびBDPはバッファメモリ126に与えられる
。またバッファメモリ126に与えられるのは、媒体ア
クセスコントローラ120によって与えられたアドレス
、好ましくは16ビットアドレスを搬送するアドレスバ
スBADDRである。
【0089】ネットワークに伝送するために必要とされ
る信号は前の同時係属出願(3)に説明されるように優
先順位によって、コントロールバスQCNTRL上のデ
ータによって決定された多数の異なる待ち行列のいずれ
かに与えられる。コントロールバスQCNTRLはまた
、前に一杯であった待ち行列が今付加的なデータを受け
る準備ができているということを、ネットワークDMA
コントローラ124に示す。
【0090】QCNTRLバスによってまた搬送される
のは、媒体にデータを転送するために待ち行列、すなわ
ち同期待ち行列および3つのレベルの非同期待ち行列の
うちどれか1つのデータの転送状態を示すデータである
。媒体アクセスコントローラ120によって与えられる
転送状態は、ネットワークDMAコントローラ124に
、コントローラ120がトークンを有し、かつ現在はバ
ッファメモリ126から媒体に特定の待ち行列を伝送し
ているということを知らせる。
【0091】現在のネットワークDMAコントローラ書
込み、または読出し要求が媒体アクセスコントローラ1
20によって認められているということを示す信号を、
バスHSACK(ホスト応答)は搬送する。この信号と
一緒に、バッファメモリ126は能動化され、かつデー
タはBD(バスデータ)、BDP(バスデータ優先順位
)およびBDTAGバスに上に現われる。
【0092】RDATAは媒体アクセスコントローラ1
20が受信データをネットワークからネットワークDM
Aコントローラ124によってシステムメモリに転送さ
れるようにバッファメモリにストアしたときアサートさ
れる。応じて、ネットワークDMAコントローラはバス
に対するアクセスを要求し、それは媒体アクセスコント
ローラ120によって応答される。媒体アクセスコント
ローラ120は、BADDRバス上のデータによって特
定化されるアドレスでバッファメモリ126においてデ
ータをストアし、かつバッファにおいてストアされるデ
ータは、その後バッファのREAD端子の媒体アクセス
コントローラ120によるアサートに応答して、ネット
ワークDMAコントローラ124に転送される。
【0093】ホスト要求バスHSREQ上で実行される
ネットワークDMAコントローラ124と、媒体アクセ
スコントローラ120との間のハンドシェイキングは図
17、および図19−21の時間変化図において示され
る。図17および19を参照すると、ネットワークアク
セスコントローラ120、ネットワークDMAコントロ
ーラ124およびバッファ126とインタフェースする
バス上の信号の時間は、そこに示されるバッファメモリ
クロックBMCLK信号と同期され、かつバッファメモ
リ126における受信データがネットワークDMAコン
トローラ124によって、読出される準備が整っている
ということを示すために、RDATAはアサートされる
。RDATAに応答して、ネットワークからデータフレ
ームを読出すようにネットワークアクセスコントローラ
120に要求するために、ネットワークDMAコントロ
ーラ124は適当なコードで、ホスト要求バスHSRE
Q上でホスト要求を実行する。ネットワークアクセスコ
ントローラ120はバッファメモリ126のバスを仲裁
し、かつHSACK上に肯定応答を与える。ネットワー
クアクセスコントローラはまた、バッファメモリ126
にアドレスし、データがある位置を指し、バッファに読
出しコマンドをアサートし、かつバッファからのBDA
TA上のデータをメモリDMAコントローラ124にラ
ッチする。
【0094】このように、ネットワークアクセスコント
ローラ120はフレームにおけるネットワークデータを
バッファメモリ126にストアし、かつそこのデータの
量が受信しきい値RTHRを超えたとき、システムメモ
リにおいてどこにネットワークデータがストアされるべ
きかを決定するために、コントローラ120はネットワ
ークDMAコントローラ124に、システムメモリから
記述子を取出させるためにRDATAをアサートする。 記述子によって指されたシステムメモリにおけるバッフ
ァが利用可能になったとき、DMAコントローラ124
はホスト肯定応答HSACKをネットワークアクセスコ
ントローラ120に与える。ネットワークアクセスコン
トローラ120は応じて、仲裁する。なぜならばそれは
すでに占有されており、データをネットワークに伝送し
、または他の機能を実行しているかもしれないからであ
る。もしネットワークネットワークコントローラ120
が利用可能であれば、それは肯定応答(HSACK)を
DMAコントローラ124に再び与え、かつそれから読
出しコマンドによって続けられる記憶アドレスをバッフ
ァ126に出力する。バッファ126にアドレスされた
データはBDATAに書込まれ、かつネットワークから
データを受けるために必要なハンドシェイキングを完全
にするために、システムメモリにおいて指定されたバッ
ファに与えられるようにネットワークDMAコントロー
ラ124にラッチされる。
【0095】図18を参照すると、現在伝送されるべき
データは図8におけるオンチップFIFO152にスト
アされ、かつそのデータをバッファメモリ126におけ
る論理FIFOに転送する準備が整っている。データを
ネットワークに伝送する要求に応答して、ネットワーク
DMAコントローラはホスト要求信号HSREQをネッ
トワークアクセスコントローラ120に与え、ホストが
ネットワークに対する書込みを要求するということを示
す。ホストが書込むであろう特定の待ち行列は、HSR
EQバス上のコードによって決定される。この例におい
て、データの同期フレームがネットワークに与えられる
ように、ホストが同期待ち行列に書込むことを要求する
ということが想定される。応じて、ネットワークアクセ
スコントローラ120は仲裁し、かつ時間があればホス
トに対する肯定応答信号(HSACK)に応答する。ネ
ットワークアクセスコントローラ120はまた、ネット
ワークに伝送されるべきデータのフレームが一時的にス
トアされるバッファメモリ126にアドレスを与え、か
つバッファに書込みパルスを与える。したがって、BD
ATAバス上でネットワークDMAコントローラ124
により与えられるデータは、BDADDR上のネットワ
ークアクセスコントローラ120によって特定化される
位置において、バッファメモリ126に形成される論理
FIFOに書込まれる。
【0096】もしネットワークに伝送されるべきデータ
がなければ、ネットワークDMAコントローラ124は
ネットワークアクセスコントローラ120に対するHS
REQ上にさらなる要求を与えない。もし付加的なデー
タがネットワークに伝送されるべきであれば、他方、H
SREQバスはそのままアサートされ、かつその時間を
仲裁するネットワークアクセスコントローラ120が利
用可能なとき、それはHSACK上のコントローラ12
4に応答した後、バッファ126に付加的なアドレスお
よび書込みパルスを与える。
【0097】図21ははバック・ツー・バック読出しお
よび書込み動作の間のバス上のデータの時間関係を示す
。示された例においては、ネットワークアクセスコント
ローラ120は初めは書込み動作、それから読出し動作
を実行し、かつそれから書込み動作に戻る。含まれる種
々のバスに与えられる信号は、図19および図20に示
されるそれらと連続して対応する。
【0098】
【結論】バッファ126における受信および伝送データ
の量を検出し、かつデータがバッファに入ってくる間、
ネットワークに対する伝送データおよびシステムメモリ
に対する受信データをアンロードすることによって、イ
ンタフェースのデータスループットは改良される。バッ
ファにおける伝送データの量がレジスタから読出される
伝送しきい値を超えたとき、または少なくとも1つの完
全なフレームのデータがバッファにあるとき、伝送デー
タはバッファからネットワークに送られる。伝送しきい
値はシステムおよびバス待ち時間ならびにほかの要因に
よって決定される多数のワードであり、それがバッファ
にストアされたときアンダーラニングを避けるために、
入ってくるデータが「追いつく」ことを可能にするであ
ろう。バッファにおける受信データの量がレジスタから
読出される受信しきい値を超えるとすぐに、受信データ
はバッファからシステムメモリに転送される。
【0099】この開示において、この発明の好ましい実
施例のみが説明され、かつ示されるが、前述のように、
この発明は種々のほかの組合わせおよび環境における使
用も可能であり、かつここに表わされるような発明の概
念の範囲内での変更、または修正が可能であるというこ
とが理解されるべきである。たとえばこの発明はFDD
Iの環境において説明されるが、これはそんなに制限さ
れるべきではない。
【図面の簡単な説明】
【図1】先行技術において知られるタイプのFDDIネ
ットワークの典型的な実現化例のブロック図である。
【図2】FDDIパケットのフォーマットを示す図であ
る。
【図3】FDDI仕様におけるMACサブレイヤの動作
を示す図である。
【図4】別々のノードプロセッサおよびホストとインタ
フェースするネットワークの実現化例のブロック図であ
る。
【図5】図4に示される媒体アクセスコントローラのよ
り詳細な図である。
【図6】ネットワークインタフェースにおいて実行され
るデータフローを示す図である。
【図7】ネットワークインタフェースにおいて実現され
る待ち行列におけるバッファメモリの構成を示す図であ
る。
【図8】図4に示されるネットワークインタフェースア
ーキテクチュアにおけるネットワークDMAコントロー
ラのより詳細な図である。
【図9】バッファメモリ伝送待ち行列を示す図である。
【図10】いかにしてネットワークに伝送されるべきデ
ータがシステムメモリから動かされるかを示す一般化さ
れたフローチャートの図である。
【図11】完全なフレームのデータ、または少なくとも
予め定められた量のデータのどちらかが伝送FIFOに
受けられたとき、いかにして伝送データが伝送FIFO
からネットワークに転送されるかを示す、より詳細なフ
ローチャートの図である。
【図12】バッファメモリにおいて待ち行列化された伝
送パケットの図である。
【図13】いかにしてネットワークから受けられるデー
タが、システムメモリに動かされるかを示す一般化され
たフローチャートの図である。
【図14】少なくとも予め定められた量のデータが受信
FIFOに受けられたとき、いかにして受信データが受
信FIFOからシステムに転送されるかを示す、より詳
細なフローチャートの図である。
【図15】バッファメモリ受信待ち行列の構造を示す図
である。
【図16】バッファメモリにストアされる受信パケット
のフォーマットを示す図である。
【図17】媒体アクセスコントローラ、ネットワークD
MAコントローラおよびバッファメモリの間の信号のフ
ローを示す図である。
【図18】伝送および受信FIFOからのデータを転送
するための伝送および受信しきい値をストアするフレー
ムしきい値レジスタの図である。
【図19】バッファメモリによる受信フレームのローデ
ィングすること示す信号時間変化図である。
【図20】バッファメモリにおいて伝送フレームのロー
ディングを示す信号時間変化図である。
【図21】バッファメモリによりバック・ツー・バック
読出しおよび書込みを示す時間変化図である。
【符号の説明】
(116)  バスマスタアーキテクチュア(120)
  媒体アクセスコントローラ(MAC)(132) 
 エンコーダ/デコーダ(ENDEC)(126)  
バッファメモリ

Claims (47)

    【特許請求の範囲】
  1. 【請求項1】  システムメモリからネットワークへの
    パケットに配列されるデータのフローを制御するネット
    ワークアダプタであって、データをストアするためのバ
    ッファメモリ手段と、論理先入先出メモリ(FIFO)
    として前記バッファメモリ手段を構成するための手段と
    、ネットワークに対するデータの伝送のための要求を検
    出するための手段と、一度に1つのパケットずつデータ
    を前記システムメモリから前記FIFOに転送するため
    の前記ネットワークに対する伝送のための要求に応答す
    る第1の手段と、データがネットワークから前記FIF
    Oに入ってくる間、前記データを前記FIFOから前記
    ネットワークに転送するための第2の手段とを含む、ネ
    ットワークアダプタ。
  2. 【請求項2】  ネットワークに伝送されるべき少なく
    とも1つの前記データのパケットの前記FIFOにおけ
    る存在を検出するためのパケット検出手段を含み、かつ
    前記第2の手段が前記FIFOにおける前記データを前
    記ネットワークに転送するための前記パケット検出手段
    に応答する手段を含む、請求項1記載のアダプタ。
  3. 【請求項3】  前記ネットワークに伝送されるべき少
    なくとも予め定められた量のデータの前記FIFOにお
    ける存在を検出するための伝送データしきい値検出手段
    を含み、かつ前記第2の手段は前記FIFOにおける前
    記データを前記ネットワークに転送するための前記デー
    タしきい値検出手段に応答する手段を含む、請求項1記
    載のアダプタ。
  4. 【請求項4】  少なくとも1つの前記データのパケッ
    トの前記FIFOにおける存在を検出するためのパケッ
    ト検出手段を含み、かつ少なくともデータのパケットま
    たは少なくとも予め定められた量のデータのどちらかが
    前記FIFOにあるとき、前記第2の手段は前記パケッ
    トに応答する手段および、前記データを前記ネットワー
    クに転送するためのしきい値検出手段を含む、請求項3
    記載のアダプタ。
  5. 【請求項5】  ネットワークから受けられる少なくと
    も予め定められた量のデータの前記FIFOにおける存
    在を検出するための受信データしきい値検出手段を含み
    、かつ前記第2の手段は前記FIFOにおける前記デー
    タを前記システムメモリ手段に転送するための前記受信
    データしきい値検出手段に応答する手段を含む、請求項
    1記載のアダプタ。
  6. 【請求項6】  前記FIFOにストアされるデータは
    、各々がタッグビットによってマークづけされない1つ
    の終りを有するパケットの形であり、かつ前記アダプタ
    はさらにパケットの終りを検出する前記タッグビットに
    応答する手段を含む、請求項1記載のアダプタ。
  7. 【請求項7】  前記FIFOはSTARTおよびEN
    Dポインタによって規定され、かつそれぞれ、前記FI
    FOにデータを読出し、かつ前記FIFOからデータを
    書込むための、READポインタおよびWRITEポイ
    ンタ、ならびに前記伝送FIFOにストアされる完全な
    フレームの終りを指すSHADOW  WRITEポイ
    ンタを含み、前記第2の検出手段は、前記SHADOW
      WRITEポインタが前記READポインタを超え
    るとき検出するための手段を含む、請求項2記載のアダ
    プタ。
  8. 【請求項8】  データしきい値をストアするレジスタ
    を含み、かつ前記データしきい値検出手段は、前記FI
    FOの内容と前記データしきい値を比較するための手段
    を含む、請求項3記載のアダプタ。
  9. 【請求項9】  前記データしきい値検出手段は、前記
    データしきい値と前記READポインタと前記WRIT
    Eポインタとの間の差を比較するための手段を含む、請
    求項7記載のアダプタ。
  10. 【請求項10】  システムメモリとネットワークとの
    間のパケットに配列されるデータのフローを制御するネ
    ットワークアダプタのための装置であって、データをス
    トアするためのバッファメモリ手段と、複数個の論理先
    入先出メモリ(FIFO)として前記バッファメモリ手
    段を構成するための手段と、ネットワークからシステム
    に入ってくるデータを検出するための手段と、一度に1
    つのパケットずつデータを前記ネットワークから前記F
    IFOに転送するための第1の手段と、前記ネットワー
    クから受けられる前記FIFOにおける予め定められた
    量のデータを検出するための手段と、データがネットワ
    ークから前記FIFOに入ってくる間、前記データを前
    記FIFOから前記システムメモリに転送するための前
    記検出手段に応答する第2の手段とを含む、装置。
  11. 【請求項11】  システムメモリとネットワークとの
    間のパケットに配列されるデータのフローを制御するネ
    ットワークアダプタであって、伝送データをストアする
    ための第1のメモリ手段と、第1の論理先入先出メモリ
    (伝送FIFO)として前記第1のメモリ手段を構成す
    るための手段と、ネットワークに対するデータの伝送の
    ための要求を検出するための手段と、一度に1つのパケ
    ットずつデータを前記システムメモリから前記伝送FI
    FOに転送するための前記ネットワークに対する伝送の
    ための要求に応答する第1の手段と、前記伝送FIFO
    が前記ネットワークからデータを受ける間、前記データ
    を前記伝送FIFOから前記ネットワークに転送するた
    めの第2の手段と、受信データをストアするための第2
    のメモリ手段と、第2の論理先入先出メモリ(受信FI
    FO)として前記第2のメモリ手段を構成するための手
    段と、システムメモリにストアされるべきネットワーク
    から入ってくるデータを検出するための手段と、データ
    を前記ネットワークから前記受信FIFOに転送するた
    めの第3の手段と、前記受信FIFOが前記ネットワー
    クからデータを受ける間、前記データを前記受信FIF
    Oから前記システムメモリに転送するための第4の手段
    とを含む、ネットワークアダプタ。
  12. 【請求項12】  前記FIFOにストアされるデータ
    は、各々がタッグビットによってマークづけされない1
    つの終りを有するパケットの形であり、前記アダプタは
    さらにパケットの終りを検出する前記タッグビットに応
    答する手段を含む、請求項11記載のアダプタ。
  13. 【請求項13】  システムメモリとネットワークとの
    間のパケットに配列されるデータのフローを制御するネ
    ットワークアダプタのための装置であって、前記ネット
    ワークに伝送されるべきデータをストアするための第1
    のバッファメモリ手段と、第1の論理先入先出メモリ(
    伝送FIFO)として前記第1のバッファメモリ手段を
    構成するための手段と、ネットワークに対するデータの
    伝送のための要求を検出するための第1の検出手段と、
    一度に1つのパケットずつデータを前記システムメモリ
    から前記伝送FIFOに転送するための前記第1の検出
    手段に応答する手段と、少なくとも1つの前記伝送デー
    タの完全なパケットの前記伝送FIFOにおける存在を
    検出するための第2の検出手段と、少なくとも予め定め
    られた量の伝送データの前記伝送FIFOにおける存在
    を検出するための第3の検出手段と、少なくとも完全な
    パケットのデータまたは少なくとも予め定められた量の
    データのどちらかが前記伝送FIFOにストアされると
    き、データを前記伝送FIFOから前記ネットワークに
    転送するための前記第2および第3の検出手段に応答す
    る手段と、前記ネットワークから受けられるデータをス
    トアするための第2のメモリ手段と、第2の論理先入先
    出メモリ(受信FIFO)として前記第2のメモリ手段
    を構成するための手段と、システムメモリにストアされ
    るべきネットワークから入ってくるデータを検出するた
    めの第4の検出手段と、データを前記ネットワークから
    前記受信FIFOに転送するための手段と、前記ネット
    ワークから前記受信FIFOにストアされる予め定めら
    れた量のデータを検出するための第5の検出手段と、前
    記受信データを前記受信FIFOから前記システムメモ
    リに転送するための前記第5の検出手段に応答する手段
    とを含む、装置。
  14. 【請求項14】  前記伝送FIFOはSTARTおよ
    びENDポインタによって規定され、かつそれぞれ、前
    記伝送FIFOにデータを読出し、かつ前記伝送FIF
    Oからデータを書込むためのREADポインタおよびW
    RITEポインタ、ならびに前記伝送FIFOにストア
    される完全なフレームの終りを指すSHADOW  W
    RITEポインタを含み、前記第2の検出手段は、前記
    SHADOW  WRITEポインタが前記READポ
    インタを超えるとき検出するための手段を含む、請求項
    12記載の装置。
  15. 【請求項15】  データしきい値をストアするレジス
    タを含み、かつ前記第3の検出手段は前記伝送FIFO
    の内容と前記データしきい値を比較するための手段を含
    む、請求項13記載の装置。
  16. 【請求項16】  前記第3の検出手段は前記データし
    きい値と、前記READポインタと前記WRITEポイ
    ンタとの間の差を比較するための手段を含む、請求項1
    4記載の装置。
  17. 【請求項17】  少なくともデータビットおよびパケ
    ットの終り(タッグ)ビットにより特徴付けられるフレ
    ームに配列されるデータのパケットをストアするための
    少なくとも1つのプロセッサおよび、システムメモリ手
    段を含むネットワークアダプタのためのネットワークコ
    ントローラであって、ランダムアクセスメモリと、前記
    ランダムアクセスメモリにおいて、伝送FIFOとして
    構成されるバッファメモリを規定するための手段と、前
    記タッグビットによってマークづけされない、かつ伝送
    されるべき待ち行列を形成する連続するフレームを前記
    システムメモリ手段から前記伝送FIFOに転送するた
    めの手段と、少なくとも1つの完全なフレームのデータ
    が前記伝送FIFOにストアされることを検出するため
    の第1の検出器手段と、少なくとも予め定められた量の
    データが前記伝送FIFOにストアされることを検出す
    るための第2の検出器手段と、ネットワークに対する前
    記伝送FIFOの内容を伝送するための、前記第1およ
    び第2の検出器手段のうちの少なくとも1つに応答する
    手段とを含む、ネットワークコントローラ。
  18. 【請求項18】  前記転送手段は、前記伝送FIFO
    が前記ネットワークに伝送する間、データのフレームを
    前記伝送FIFOに転送するための第1の手段を含む、
    請求項17記載のコントローラ。
  19. 【請求項19】  前記伝送FIFOはSTARTおよ
    びENDポインタにより規定され、かつそれぞれ、前記
    伝送FIFOにデータを読出し、かつ前記伝送FIFO
    からデータを書込むためのREADポインタおよびWR
    ITEポインタ、ならびに前記伝送FIFOにストアさ
    れる完全なフレームの終りを指すSHADOW  WR
    ITEポインタを含み、前記第1の検出器手段は、前記
    SHADOW  WRITEポインタが前記READポ
    インタを超えるとき検出するための手段を含む、請求項
    17記載のコントローラ。
  20. 【請求項20】  データしきい値をストアするレジス
    タを含み、かつ前記第2の検出器手段は前記伝送FIF
    Oの内容と前記データしきい値を比較するための手段を
    含む、請求項17記載のコントローラ。
  21. 【請求項21】  前記第2の検出器手段は前記データ
    しきい値と、前記READポインタと前記WRITEポ
    インタとの間の差を比較するための手段を含む、請求項
    19記載のコントローラ。
  22. 【請求項22】  少なくともデータビットおよびパケ
    ットの終り(タッグ)ビットにより特徴付けられるフレ
    ームに配列されるデータのパケットをストアするための
    少なくとも1つのプロセッサおよび、システムメモリ手
    段を含むネットワークアダプタのためのネットワークコ
    ントローラであって、ランダムアクセスメモリと、前記
    ランダムアクセスメモリにおいて受信FIFOとして構
    成されるバッファメモリを規定するための手段と、前記
    タッグビットによりマークづけされない、かつ受信待ち
    行列を形成する入ってくる受信データパケットを前記受
    信FIFOにストアするための手段と、受信データしき
    い値をストアするための手段と、前記受信FIFOの内
    容が前記受信データしきい値を超えることを検出するた
    めの手段と、データを前記受信FIFOから前記システ
    ムメモリ手段に転送するための前記検出手段に応答する
    手段とを含む、ネットワークコントローラ。
  23. 【請求項23】  前記受信FIFOはSTARTおよ
    びENDポインタにより規定され、かつREADおよび
    WRITEポインタと、受信FIFOに受けられている
    最もおそいフレームの始まりを指すSHADOW  W
    RITEポインタと、受信しきい値とを含み、前記受信
    データは、前記WRITEポインタが前記しきい値を超
    えたとき、前記システムメモリに転送され、かつ前記受
    信データが流されたときは、WRITEポインタはSH
    ADOW  WRITEポインタにより置換えられる、
    請求項22記載のコントローラ。
  24. 【請求項24】  システムメモリとネットワークバス
    との間のパケットに配列されるデータのフローを制御す
    る方法であって、第1の論理先入先出メモリ(伝送FI
    FO)として第1のメモリを構成するステップと、ネッ
    トワークバスに対するデータの伝送のための要求を検出
    するステップと、前記ネットワークバスに対する伝送の
    ための要求に応答して、一度に1つのパケットずつデー
    タを前記システムメモリから前記伝送FIFOに転送す
    るステップと、データが前記システムメモリから前記伝
    送FIFOに入ってくる間、前記データを前記伝送FI
    FOから前記ネットワークバスに転送するステップとを
    含む、方法。
  25. 【請求項25】  少なくとも1つの前記データの完全
    なパケットの前記伝送FIFOにおける存在を検出し、
    かつ応答し、前記データを前記ネットワークバスに転送
    するステップをさらに含む、請求項24記載の方法。
  26. 【請求項26】  少なくとも予め定められた量のデー
    タの前記第2のFIFOにおける存在を検出し、かつ応
    答し、前記データを前記ネットワークバスに転送するス
    テップをさらに含む、請求項24記載の方法。
  27. 【請求項27】  少なくとも予め定められた量のデー
    タの前記伝送FIFOにおける存在を検出し、かつ応答
    し、少なくとも前記データのパケット、または少なくと
    も予め定められた量のデータのどちらかが伝送FIFO
    にストアされるとき、前記データを前記ネットワークバ
    スに転送するステップをさらに含む、請求項26記載の
    方法。
  28. 【請求項28】  第2の論理先入先出メモリ(受信F
    IFO)として第2のメモリを構成するステップと、シ
    ステムにストアされるべきネットワークから入ってくる
    データを検出するステップと、データを前記ネットワー
    クから前記受信FIFOに転送するステップと、前記ネ
    ットワークから前記受信FIFOにストアされる予め定
    められた量のデータを検出するステップと、応答し、前
    記データを前記受信FIFOから前記システムメモリに
    転送するステップをさらに含む、請求項24記載の方法
  29. 【請求項29】  各待ち行列のフレームが他の待ち行
    列のデータのフレームの優先順位とは異なる優先順位を
    有する、複数個の異なる待ち行列に配列されるデータの
    フレームをストアするための複数個のプロセッサ、およ
    びシステムメモリ手段を含むネットワークアダプタのた
    めの、前記システムメモリ手段と前記ネットワークとの
    間の前記データのフレームの伝送を制御するための装置
    であって、それぞれ、ネットワークに転送され、または
    ネットワークから受けられるべきフレーム化されたデー
    タの複数個の待ち行列をストアするための複数個の論理
    先入先出(FIFO)メモリ領域を有するように構成さ
    れる出力バッファメモリと、優先順に一度に1つの待ち
    行列ずつ、前記システムメモリ手段から前記バッファメ
    モリの対応するFIFOメモリ領域への前記フレーム化
    されたデータのフローを、制御するための第1のデータ
    コントローラ手段と、データが前記メモリ手段から前記
    バッファメモリの前記FIFOメモリ領域に入ってくる
    間、前記出力バッファメモリの前記FIFOメモリ領域
    にストアされる前記フレーム化されたデータを前記ネッ
    トワークに伝送するための手段とを含む、装置。
  30. 【請求項30】  前記ネットワークから前記バッファ
    メモリの対応するFIFO領域へのフレーム化されたデ
    ータのフローを制御するための第2のデータコントロー
    ラ手段と、データが前記ネットワークから前記バッファ
    メモリに入ってくる間、前記出力バッファメモリの前記
    FIFOメモリ領域にストアされる前記フレーム化され
    たデータを前記システムメモリ手段に伝送するための手
    段とを含む、請求項29記載の装置。
  31. 【請求項31】  少なくとも1つの完全なフレームの
    伝送データの前記バッファメモリにおける存在を検出す
    るための伝送フレーム検出手段、および伝送データを前
    記ネットワークに転送するための前記伝送フレーム検出
    手段に応答する手段を含む、請求項29記載の装置。
  32. 【請求項32】  少なくとも予め定められた量の伝送
    データの前記バッファメモリにおける存在を検出するた
    めのデータしきい値検出手段を含み、かつ前記データを
    前記ネットワークに転送するための前記データしきい値
    検出手段に応答する手段を含む、請求項31記載の装置
  33. 【請求項33】  少なくとも予め定められた量の伝送
    データの前記バッファメモリにおける存在を検出するた
    めのデータしきい値検出手段をさらに含み、かつ前記第
    2の手段は前記フレームに応答する手段と、少なくとも
    完全なフレームのデータか、または少なくとも予め定め
    られた量のデータのどちらかが前記バッファメモリにあ
    るとき、前記データを前記ネットワークに転送するため
    のデータしきい値検出手段をさらに含む、請求項31記
    載の装置。
  34. 【請求項34】  各々が待ち行列に配列され、かつ複
    数個の異なる伝送優先順位を有するデータのフレームを
    ストアするためのシステムメモリ手段を含む複数個のプ
    ロセッサ、および前記プロセッサにデジタルデータ通信
    経路を形成する光学媒体を有するファイバ分布されたデ
    ータインタフェース(FDDI)のためのネットワーク
    コントローラであって、前記光学媒体にアクセスするた
    め時間決めされたトークンデータプロトコルを実現する
    第1の手段と、前記ランダムアクセスメモリにおいて、
    出力バッファを形成するランダムアクセスメモリと、そ
    れぞれ、前記複数個の異なる伝送優先順位を有する前記
    待ち行列化されたデータのフレームを、そこにストアす
    るための複数個の論理FIFOを構成するための第2の
    手段と、前記バッファメモリにおける対応する論理FI
    FOに対する前記フレーム化されたデータのフローを制
    御するための手段とを含み、前記フレーム化されたデー
    タフロー制御手段は、優先順に一度に1つの待ち行列ず
    つ、前記システムメモリ手段から前記バッファメモリに
    おける対応する論理FIFOへの前記フレーム化された
    データのフローを、制御するための第1の手段と、デー
    タが前記システムメモリ手段から前記バッファメモリに
    おける前記FIFOに入ってくる間、前記論理FIFO
    にストアされる前記フレーム化されたデータを前記媒体
    に伝送するための第2の手段とを含む、ネットワークコ
    ントローラ。
  35. 【請求項35】  少なくとも1つの完全なフレームの
    伝送データの前記バッファメモリにおける存在を検出す
    るための伝送フレーム検出手段と、伝送データを前記媒
    体に転送するための前記伝送フレーム検出手段に応答す
    る手段を含む、請求項34記載のネットワークコントロ
    ーラ。
  36. 【請求項36】  少なくとも予め定められた量の伝送
    データの前記バッファにおける存在を検出するためのデ
    ータしきい値検出手段を含み、かつ前記データを前記媒
    体に転送するための前記データしきい値検出手段に応答
    する手段を含む、請求項34記載のコントローラ。
  37. 【請求項37】  少なくとも予め定められた量の伝送
    データの前記バッファメモリにおける存在を検出するた
    めのデータしきい値検出手段をさらに含み、前記転送手
    段は前記フレームに応答する手段と、少なくとも完全な
    フレームのデータ、または少なくとも予め定められた量
    のデータのどちらかが前記バッファメモリにあるとき、
    前記データを前記媒体に転送するためのデータしきい値
    検出手段とを含む、請求項35記載のコントローラ。
  38. 【請求項38】  各前記論理FIFOはSTARTお
    よびENDポインタにより規定され、かつそれぞれ、前
    記論理FIFOからデータを書込み、かつ前記論理FI
    FOからデータを書込むためのREADポインタおよび
    WRITEポインタ、ならびに前記論理FIFOにスト
    アされる完全なレームの終りを指すSHADOW  W
    RITEポインタを含み、かつ前記データフロー制御手
    段は、前記SHADOW  WRITEポインタが前記
    READポインタを超えたとき検出するための手段を含
    む、請求項34記載のコントローラ。
  39. 【請求項39】  データしきい値をストアするレジス
    タを含み、かつ前記データフロー制御手段は前記論理F
    IFOの内容と前記データしきい値を比較するための手
    段を含む、請求項38記載のコントローラ。
  40. 【請求項40】  前記しきい値検出手段は、前記デー
    タしきい値と、前記READポインタと前記WRITE
    ポインタとの間の差を比較するための手段を含む、請求
    項39記載のコントローラ。
  41. 【請求項41】  媒体からの少なくとも予め定められ
    た量の受信データの前記論理FIFOにおける存在を検
    出するための受信データしきい値検出手段を含み、かつ
    前記データフローコントローラ手段は、前記論理FIF
    Oにおける前記受信データを前記システムメモリ手段に
    転送するための前記受信データしきい値検出手段に応答
    する手段を含む、請求項34記載のコントローラ。
  42. 【請求項42】  前記システムメモリ手段と前記バッ
    ファメモリとの間の前記フレーム化されたデータのため
    の単一信号フロー経路を確立する物理FIFOメモリを
    含む、請求項34記載のコントローラ。
  43. 【請求項43】  複数個のプロセッサを有し、各々が
    複数個の異なる待ち行列に配列されるデータのフレーム
    をストアするためのシステムメモリ手段を有し、各待ち
    行列のフレームは他の待ち行列のデータのフレームの優
    先順位とは異なる優先順位を有し、前記プロセッサにデ
    ジタルデータ通信経路を形成する光学媒体と、それぞれ
    、媒体に伝送されるべきフレーム化されたデータの複数
    個の待ち行列をストアするための複数個の論理先入先出
    (FIFO)メモリ領域を有するように構成される出力
    バッファメモリと、前記出力バッファメモリの前記論理
    FIFOメモリ領域にストアされる前記フレーム化され
    たデータを前記媒体に伝送するための手段とを有するフ
    ァイバ分布されたデータインタフェース(FDDI)ネ
    ットワークのための前記システムバスおよび前記光学媒
    体とインタフェースする方法であって、予め定められた
    状態に応答して、トークンを捕獲すると、前記光媒体に
    アクセスするステップと、かつ応答し、(a)  優先
    順に一度に1つの待ち行列ずつ前記フレーム化されたデ
    ータを、前記システムメモリ手段から前記バッファメモ
    リにおいて対応する論理FIFOに、伝送し、 (b)  データが前記システムメモリ手段から前記論
    理FIFOに入ってくる間、前記論理FIFOにストア
    される前記フレーム化されたデータを前記媒体に伝送す
    ることにより、前記媒体に伝送されるべきフレーム化さ
    れたデータの動きを制御するステップとを含む、システ
    ムバスおよび光学媒体とインタフェースする、方法。
  44. 【請求項44】  前記論理FIFOは伝送および受信
    論理FIFOを含み、その方法は少なくとも1つの完全
    なパケットの前記データの伝送FIFOにおける存在を
    検出し、かつ応答し、前記データを前記媒体に転送する
    ステップをさらに含む、請求項43記載の方法。
  45. 【請求項45】  前記論理FIFOは伝送および受信
    論理FIFOを含み、その方法は少なくとも予め定めら
    れた量のデータの伝送FIFOにおける存在を検出し、
    かつ応答し、前記データを前記媒体に転送するステップ
    をさらに含む、請求項43記載の方法。
  46. 【請求項46】  少なくとも予め定められた量のデー
    タの前記伝送FIFOにおける存在を検出し、かつ応答
    し、少なくとも前記データのパケット、または少なくと
    も予め定められた量のデータのどちらかが伝送FIFO
    にストアされる時、前記データを前記媒体に転送するス
    テップをさらに含む、請求項44記載の方法。
  47. 【請求項47】  システムメモリ手段にストアされる
    べき媒体から入ってくるデータを検出するステップと、
    データを前記媒体から前記受信FIFOに転送するステ
    ップと、前記媒体から前記受信FIFOにストアされる
    予め定められた量のデータを検出するステップと、かつ
    応答し、前記データを前記受信FIFOから前記システ
    ムメモリ手段に転送するステップをさらに含む、請求項
    45記載の方法。
JP12617491A 1990-05-29 1991-05-29 システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法 Expired - Lifetime JP3452590B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US529363 1990-05-29
US07/529,363 US5210749A (en) 1990-05-29 1990-05-29 Configuration of srams as logical fifos for transmit and receive of packet data

Publications (2)

Publication Number Publication Date
JPH04233352A true JPH04233352A (ja) 1992-08-21
JP3452590B2 JP3452590B2 (ja) 2003-09-29

Family

ID=24109607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12617491A Expired - Lifetime JP3452590B2 (ja) 1990-05-29 1991-05-29 システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法

Country Status (5)

Country Link
US (1) US5210749A (ja)
EP (1) EP0459758B1 (ja)
JP (1) JP3452590B2 (ja)
AT (1) ATE182240T1 (ja)
DE (1) DE69131436T2 (ja)

Families Citing this family (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5388220A (en) * 1991-03-19 1995-02-07 Matsushita Electric Industrial Co., Ltd. Parallel processing system and data transfer method which reduces bus contention by use of data relays having plurality of buffers
JP2744865B2 (ja) * 1991-04-30 1998-04-28 インターナショナル・ビジネス・マシーンズ・コーポレイション シリアルチャネルアダプタ
US5392412A (en) * 1991-10-03 1995-02-21 Standard Microsystems Corporation Data communication controller for use with a single-port data packet buffer
US5440690A (en) * 1991-12-27 1995-08-08 Digital Equipment Corporation Network adapter for interrupting host computer system in the event the host device driver is in both transmit and receive sleep states
JP2731878B2 (ja) * 1992-02-18 1998-03-25 三菱電機株式会社 通信装置
US5267240A (en) * 1992-02-20 1993-11-30 International Business Machines Corporation Frame-group transmission and reception for parallel/serial buses
US5325401A (en) * 1992-03-13 1994-06-28 Comstream Corporation L-band tuner with quadrature downconverter for PSK data applications
US5444853A (en) * 1992-03-31 1995-08-22 Seiko Epson Corporation System and method for transferring data between a plurality of virtual FIFO's and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO's
US5742760A (en) * 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
US5412782A (en) * 1992-07-02 1995-05-02 3Com Corporation Programmed I/O ethernet adapter with early interrupts for accelerating data transfer
US5434872A (en) * 1992-07-28 1995-07-18 3Com Corporation Apparatus for automatic initiation of data transmission
US5363485A (en) * 1992-10-01 1994-11-08 Xerox Corporation Bus interface having single and multiple channel FIFO devices using pending channel information stored in a circular queue for transfer of information therein
US5664104A (en) * 1992-12-18 1997-09-02 Fujitsu Limited Transfer processor including a plurality of failure display units wherein a transfer process is prohibited if failure is indicated in a failure display unit
US5379291A (en) * 1992-12-29 1995-01-03 International Business Machines Corporation Apparatus for fiber distributed data interface dynamic station bypass via skipping and hopping
US6067408A (en) * 1993-05-27 2000-05-23 Advanced Micro Devices, Inc. Full duplex buffer management and apparatus
US5835492A (en) * 1993-09-08 1998-11-10 Hitachi, Ltd. Network for mutually connecting computers and communicating method using such network
JP3473975B2 (ja) * 1993-09-08 2003-12-08 株式会社日立製作所 ネットワークシステムおよびネットワークにおける通信方法
CA2130064C (en) * 1993-10-27 1999-05-18 Cory A. Cherichetti Method and apparatus for transferring data between a host processor and a subsystem processor in a data processing system
US5400326A (en) * 1993-12-22 1995-03-21 International Business Machines Corporation Network bridge
US5448558A (en) * 1994-04-05 1995-09-05 International Business Machines Corporation Method and apparatus for managing packet FIFOS
US5471487A (en) * 1994-04-26 1995-11-28 Unisys Corporation Stack read/write counter through checking
US5983275A (en) * 1994-05-04 1999-11-09 Cirrus Logic, Inc. Apparatus for and method of providing interrupts to a host processor in a frame receiving system
US5602537A (en) * 1994-05-13 1997-02-11 Zilog, Inc. Technique for eliminating data transmit memory underruns
US5564023A (en) * 1994-06-30 1996-10-08 Adaptec, Inc. Method for accessing a sequencer control block by a host adapter integrated circuit
US5742831A (en) * 1994-06-30 1998-04-21 Intel Corporation Methods and apparatus for maintaining cache coherency during copendency of load and store operations
US5625800A (en) * 1994-06-30 1997-04-29 Adaptec, Inc. SCB array external to a host adapter integrated circuit
JP3810449B2 (ja) * 1994-07-20 2006-08-16 富士通株式会社 キュー装置
US5828903A (en) * 1994-09-30 1998-10-27 Intel Corporation System for performing DMA transfer with a pipeline control switching such that the first storage area contains location of a buffer for subsequent transfer
US5764377A (en) * 1994-12-15 1998-06-09 Xerox Corporation Video interlace system for multibeam raster output scanner
US5617544A (en) * 1994-12-23 1997-04-01 United Technologies Corporation Interface having receive and transmit message label memories for providing communication between a host computer and a bus
US5774745A (en) * 1995-03-31 1998-06-30 Cirrus Logic, Inc. Method and apparatus for writing and reading entries in an event status queue of a host memory
US5608341A (en) * 1995-05-09 1997-03-04 Level One Communications, Inc. Electrical circuit for setting internal chip functions without dedicated configuration pins
US5926504A (en) * 1995-06-05 1999-07-20 Level One Communications, Inc. Electrical circuit for selectively connecting a repeater to a DTE port
JPH098989A (ja) * 1995-06-19 1997-01-10 Brother Ind Ltd パラレルデータ転送システム及び電子機器
US5752078A (en) * 1995-07-10 1998-05-12 International Business Machines Corporation System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory
US5752076A (en) * 1995-08-31 1998-05-12 Intel Corporation Dynamic programming of bus master channels by intelligent peripheral devices using communication packets
US6122279A (en) * 1995-10-02 2000-09-19 Virata Limited Asynchronous transfer mode switch
US5797039A (en) * 1995-12-29 1998-08-18 Intel Corporation Method of efficiently sending packets onto a network by eliminating an interrupt
US5859980A (en) * 1996-02-08 1999-01-12 Advanced Micro Devices, Inc. Network interface having adaptive transmit start point for each packet to avoid transmit underflow
US5864713A (en) * 1996-02-12 1999-01-26 Hewlett-Packard Company Method for determining if data should be written at the beginning of a buffer depending on space available after unread data in the buffer
US5854900A (en) * 1996-05-31 1998-12-29 Advanced Micro Devices, Inc. Method and apparatus avoiding capture effect by adding a slot time to an interpacket gap interval in a station accessing an ethernet network
US5809334A (en) * 1996-09-24 1998-09-15 Allen-Bradley Company, Llc Receive packet pre-parsing by a DMA controller
US5901291A (en) * 1996-10-21 1999-05-04 International Business Machines Corporation Method and apparatus for maintaining message order in multi-user FIFO stacks
US5860119A (en) * 1996-11-25 1999-01-12 Vlsi Technology, Inc. Data-packet fifo buffer system with end-of-packet flags
US5933413A (en) * 1997-01-13 1999-08-03 Advanced Micro Devices, Inc. Adaptive priority determination for servicing transmit and receive in network controllers
US6076115A (en) * 1997-02-11 2000-06-13 Xaqti Corporation Media access control receiver and network management system
US6085248A (en) * 1997-02-11 2000-07-04 Xaqtu Corporation Media access control transmitter and parallel network management system
TW457444B (en) * 1997-02-11 2001-10-01 Xaqti Corp Media access control architectures and network management systems
US6108713A (en) 1997-02-11 2000-08-22 Xaqti Corporation Media access control architectures and network management systems
US6487212B1 (en) * 1997-02-14 2002-11-26 Advanced Micro Devices, Inc. Queuing structure and method for prioritization of frames in a network switch
US6111858A (en) * 1997-02-18 2000-08-29 Virata Limited Proxy-controlled ATM subnetwork
US6105079A (en) * 1997-12-18 2000-08-15 Advanced Micro Devices, Inc. Apparatus and method in a network interface device for selectively supplying long bit information related to a data frame to a buffer memory and a read controller for initiation of data transfers
US6363076B1 (en) 1998-01-27 2002-03-26 International Business Machines Corporation Phantom buffer for interfacing between buses of differing speeds
US5991304A (en) * 1998-02-13 1999-11-23 Intel Corporation Method and apparatus for minimizing asynchronous transmit FIFO under-run and receive FIFO over-run conditions
US6016513A (en) * 1998-02-19 2000-01-18 3Com Corporation Method of preventing packet loss during transfers of data packets between a network interface card and an operating system of a computer
US6662234B2 (en) * 1998-03-26 2003-12-09 National Semiconductor Corporation Transmitting data from a host computer in a reduced power state by an isolation block that disconnects the media access control layer from the physical layer
US6115771A (en) * 1998-03-31 2000-09-05 Lsi Logic Corporation Method and system for converting computer peripheral equipment to SCSI-compliant devices
US6631484B1 (en) 1998-03-31 2003-10-07 Lsi Logic Corporation System for packet communication where received packet is stored either in a FIFO or in buffer storage based on size of received packet
US6304553B1 (en) 1998-09-18 2001-10-16 Lsi Logic Corporation Method and apparatus for processing data packets
US6243778B1 (en) * 1998-10-13 2001-06-05 Stmicroelectronics, Inc. Transaction interface for a data communication system
US6304936B1 (en) * 1998-10-30 2001-10-16 Hewlett-Packard Company One-to-many bus bridge using independently and simultaneously selectable logical FIFOS
US6269413B1 (en) * 1998-10-30 2001-07-31 Hewlett Packard Company System with multiple dynamically-sized logical FIFOs sharing single memory and with read/write pointers independently selectable and simultaneously responsive to respective read/write FIFO selections
US6490639B1 (en) * 1998-12-09 2002-12-03 Globespanvirata, Inc. Peripheral component interconnect (PCI) single channel master direct memory access (DMA) serving two separate channels
EP1026593A1 (en) * 1999-02-06 2000-08-09 Motorola, Inc. Multi channel controller
JP2000307681A (ja) * 1999-04-16 2000-11-02 Fujitsu Ltd 中継装置およびフレームトレース方法
US6789144B1 (en) * 1999-05-27 2004-09-07 Advanced Micro Devices, Inc. Apparatus and method in a network interface device for determining data availability in a random access memory
US6347346B1 (en) 1999-06-30 2002-02-12 Chameleon Systems, Inc. Local memory unit system with global access for use on reconfigurable chips
US6457072B1 (en) * 1999-07-29 2002-09-24 Sony Corporation System and method for effectively performing physical direct memory access operations
US6876664B1 (en) * 2000-04-03 2005-04-05 International Business Machines Corporation Asynchronous data buffer and a method of use thereof
US6842459B1 (en) * 2000-04-19 2005-01-11 Serconet Ltd. Network combining wired and non-wired segments
US20020083189A1 (en) * 2000-12-27 2002-06-27 Connor Patrick L. Relay of a datagram
JP3393127B2 (ja) * 2001-07-09 2003-04-07 沖電気工業株式会社 通信端末装置およびそのデータ送信方法
US7630304B2 (en) * 2003-06-12 2009-12-08 Hewlett-Packard Development Company, L.P. Method of overflow recovery of I2C packets on an I2C router
US20040257856A1 (en) * 2003-06-23 2004-12-23 Texas Instruments Incorporated Dual-port functionality for a single-port cell memory device
US7360026B1 (en) * 2003-10-06 2008-04-15 Altera Corporation Method and apparatus for synchronizing data with a reduced clock cycle response time
US7412726B1 (en) 2003-12-08 2008-08-12 Advanced Micro Devices, Inc. Method and apparatus for out of order writing of status fields for receive IPsec processing
US20050232298A1 (en) * 2004-04-19 2005-10-20 Beverly Harlan T Early direct memory access in network communications
US7350066B2 (en) * 2005-01-25 2008-03-25 Inventec Corporation Computer peripheral operating event responding method and system
JP2007235211A (ja) * 2006-02-27 2007-09-13 Fujitsu Ltd データ送受信装置、データ送受信方法およびデータ送受信プログラム
TWI379554B (en) * 2008-05-21 2012-12-11 Realtek Semiconductor Corp Data access device and method for communication system
US9870220B2 (en) * 2008-12-05 2018-01-16 Advanced Micro Devices, Inc. Memory flash apparatus and method for providing device upgrades over a standard interface
US9811455B2 (en) * 2013-03-15 2017-11-07 The Boeing Company Accessing different types of memory by respective distinct command with different timing requirements
WO2017132391A1 (en) 2016-01-27 2017-08-03 Innovasic, Inc. Ethernet frame injector
US10218358B2 (en) 2017-06-16 2019-02-26 Intel Corporation Methods and apparatus for unloading data from a configurable integrated circuit
US11281195B2 (en) 2017-09-29 2022-03-22 Intel Corporation Integrated circuits with in-field diagnostic and repair capabilities

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4663706A (en) * 1982-10-28 1987-05-05 Tandem Computers Incorporated Multiprocessor multisystem communications network
US4635254A (en) * 1984-12-13 1987-01-06 United Technologies Corporation Coherent interface with wraparound receive memory
US4920534A (en) * 1986-02-28 1990-04-24 At&T Bell Laboratories System for controllably eliminating bits from packet information field based on indicator in header and amount of data in packet buffer
US4942515A (en) * 1986-03-31 1990-07-17 Wang Laboratories, Inc. Serial communications controller with FIFO register for storing supplemental data and counter for counting number of words within each transferred frame
KR920001576B1 (ko) * 1987-09-09 1992-02-18 가부시끼가이샤 도시바 토큰패싱 버스 방식을 사용한 네트워크 시스템
US4866704A (en) * 1988-03-16 1989-09-12 California Institute Of Technology Fiber optic voice/data network
US4878219A (en) * 1988-04-28 1989-10-31 Digital Equipment Corporation Method and apparatus for nodes in network to avoid shrinkage of an interframe gap
US4914652A (en) * 1988-08-01 1990-04-03 Advanced Micro Devices, Inc. Method for transfer of data between a media access controller and buffer memory in a token ring network
US4964113A (en) * 1989-10-20 1990-10-16 International Business Machines Corporation Multi-frame transmission control for token ring networks

Also Published As

Publication number Publication date
EP0459758A3 (ja) 1994-01-19
EP0459758A2 (en) 1991-12-04
DE69131436T2 (de) 2000-04-13
US5210749A (en) 1993-05-11
ATE182240T1 (de) 1999-07-15
JP3452590B2 (ja) 2003-09-29
DE69131436D1 (de) 1999-08-19
EP0459758B1 (en) 1999-07-14

Similar Documents

Publication Publication Date Title
JP3452590B2 (ja) システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法
JP3361824B2 (ja) 複数個のプロセッサとシステムメモリ手段とを含むネットワークアダプタのための装置、ネットワーク制御装置、制御方法
US5136582A (en) Memory management system and method for network controller
US5247626A (en) Fddi controller having flexible buffer management
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
US6442137B1 (en) Apparatus and method in a network switch for swapping memory access slots between gigabit port and expansion port
US5619651A (en) I/O data unit symmetry in a media access control/host system interface unit
US5758075A (en) Multimedia communication apparatus and methods
US5546543A (en) Method for assigning priority to receive and transmit requests in response to occupancy of receive and transmit buffers when transmission and reception are in progress
US6970921B1 (en) Network interface supporting virtual paths for quality of service
EP1014648A2 (en) Method and network device for creating buffer structures in shared memory
EP1014626A2 (en) Method and apparatus for controlling network congestion
EP1014649A2 (en) Method and system of data transfer control
US5119374A (en) Method of and system for implementing multiple levels of asynchronous priority in FDDI networks
US7860120B1 (en) Network interface supporting of virtual paths for quality of service with dynamic buffer allocation
US6501734B1 (en) Apparatus and method in a network switch for dynamically assigning memory interface slots between gigabit port and expansion port
US5347514A (en) Processor-based smart packet memory interface
US6622183B1 (en) Data transmission buffer having frame counter feedback for re-transmitting aborted data frames
EP0459756A2 (en) Fiber distributed data interface network
JPH09506219A (ja) ネットワーク・インタフェース・コントローラ

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030610

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070718

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080718

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090718

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100718

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100718

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110718

Year of fee payment: 8

EXPY Cancellation because of completion of term