JP2000512099A - 高性能で複数の伝送パケットをサポートするためのデータ構造 - Google Patents

高性能で複数の伝送パケットをサポートするためのデータ構造

Info

Publication number
JP2000512099A
JP2000512099A JP10500543A JP50054398A JP2000512099A JP 2000512099 A JP2000512099 A JP 2000512099A JP 10500543 A JP10500543 A JP 10500543A JP 50054398 A JP50054398 A JP 50054398A JP 2000512099 A JP2000512099 A JP 2000512099A
Authority
JP
Japan
Prior art keywords
data
bit
fifo
ethernet
row
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
JP10500543A
Other languages
English (en)
Other versions
JP3684405B2 (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.)
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 JP2000512099A publication Critical patent/JP2000512099A/ja
Application granted granted Critical
Publication of JP3684405B2 publication Critical patent/JP3684405B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 イーサネットコントローラ(14)の送信部内で高性能を提供するためのデータ構造である。データ構造は、送信されるべきデータ(58,60,76,82)と、送信されるべきデータのSTATUS情報(62,84)と、送信されるべきデータのDESCRIPTOR情報(64,86)とを含む。データは32ビットの行の8ビットバイトに編成され、32ビットのSTATUS情報は32ビットの行の4つの8ビットバイトに編成され、32ビットのDESCRIPTOR情報は32ビットの行の4つの8ビットバイトに編成される。1ビットのタグフィールド(66,72)が各行に関連づけされ、タグフィールド内の1はそのタグに関連する行内にパケットの終わりがあることを示す。STATUSバイトの下位4ビットは行内のどのバイトがパケットの終わりを含むかを示す情報を含む。

Description

【発明の詳細な説明】 高性能で複数の伝送パケットをサポートするためのデータ構造発明の背景 1.発明の分野 この発明は、一般に、イーサネットへのおよびイーサネットからの情報の局に よる伝送を制御するための方法および装置に関し、特に、情報伝送の性能を上げ るための方法および装置に関し、さらに特に、高性能のため複数の伝送パケット をサポートするデータ構造に関する。 2.背景技術の説明 ローカルエリアネットワーク(LAN)とは、職場、建物または建物群などの ような限定された地理区域内に位置する、パーソナルコンピュータ、ワークステ ーション、ファイルサーバ、リピータ、データ端末装置(DTE)および他のこ のような情報処理装置が相互に情報を電子的に転送することを可能にする通信シ ステムである。LAN内の各情報処理装置は、ネットワークの動作を定義する固 定されたプロトコル(または規格)に従うことで、LAN内の他の情報処理装置 と通信する。 ISOオープンシステム間相互接続基本参照モデルが、LAN内のデータ通信 の7層モデルを定義する。このモデルの最下層は、(a)ネットワークのノード を相互接続しかつ電子的に伝送されるべきデータの通り道となる物理媒体、(b )ネットワークのノードが物理的伝送媒体とインタフェースする態様、(c)物 理的媒体を通じてデータを転送するためのプロセスおよび(d)データストリー ムのプロトコル、を特定するモジュールからなる物理層である。 IEEE規格802.3、衝突検出を伴う搬送波感知多重アクセス方式(Carr ier Sense Multiple Access with Collision Detection(CSMA/CD))お よび物理層の仕様は、物理層に関し最も一般的に使用されている規格の1つであ る。一般にイーサネットと呼ばれるIEEE規格802.3は、撚線対ケーブル または典型的には撚線対ケーブルよりも価格の高い同軸ケーブルを通じてのデー タ転送を扱う。IEEE規格802.3の10Base−Tプロトコルは、撚線 対ケーブルを通じてのデータ転送速度を10メガビット/秒(Mbps)と定め ている。 図面を参照し、図1は、CPU12で表わされる、ワークステーション、パー ソナルコンピュータ、ファイルサーバ、データ端末装置または他のこのような情 報処理装置を備える先行技術のシステム10がどのようにイーサネット22また は媒体独立インタフェース24で表わされる他の型のデータ通信装置に接続され るかを図示する。図1中、一般にネットワークインタフェースコントローラとし ても知られるイーサネットコントローラ14は、CPU12とイーサネット22 の入力(および出力)ラインとの間に位置づけられる。典型的には、イーサネッ ト22の接続は2対の撚線対銅ケーブルからなり、入力対は10R、出力対は1 0Tと呼ばれる。 イーサネットコントローラ14は、出力対またはケーブルへの出力データの送 信および入力対またはケーブルからの入力データの受信の制御の役割を持つ。た とえば、出力データは、出力対またはケーブルに送られる前に、電磁干渉を減じ るためマンチェスター符号化される。マンチェスター符号化により、データスト リームのいくつかの部分は10MHzのパルスとなり、データストリームの他の 部分は5MHzのパルスとなる。 より多くの情報をより高速で転送する必要性がさらに高まり同時にデータ処理 能力が向上することで、10Base−Tプロトコルにより規定される10Mb psの速度よりもはるかに高速のデータ転送速度への拡張が必要となっている。 その結果、現在の既存システムの撚線対ケーブルを通じて100Mbpsの有効 転送速度で移動するデータに対処するため、IEEE規格802.3を拡張する 100Base−TXプロトコルがある。物理伝送媒体が、100Base−T Xの速度およびより遅い10Base−Tの速度の両方で、撚線対ケーブルを通 じて転送されるデータを処理できることが望ましい場合がある。現在、0.96 マイクロ秒のパケット間間隔の全二重モード動作をサポートするため、100メ ガビット/秒の動作のため最大25MHzのイーサネット速度をサポートする必 要、および、内部PCIバスにおいて33MHzのPCI速度をサポートする必 要がある。 イーサネットまたは媒体独立インタフェースを通じての様々な速度でのデータ 伝送に関連する問題に加えて、パーソナルコンピュータ、ワークステーション、 ファイルサーバ、リピータ、データ端末装置および他のこのような情報処理装置 のデータ処理能力が相違することに関連する問題がある。たとえば、パーソナル コンピュータシステムにおいては、イーサネット22を通じてのデータの受送信 に加え、CPU12が処理しなければならない他の装置または任務があるかもし れない。 イーサネットコントローラ14は、CPU12からイーサネット22へのデー タの伝送の制御の役割を持つ。イーサネットコントローラ14が直面する主要な 問題の1つは、さまざまな構成要素内の異なったメモリ装置のサイズが異なるこ とである。たとえば、可能な限り半導体装置を小さく維持しようという要件があ る。この理由により、装置の性能を劣化させることなく可能な限りバスのサイズ を小さくすることが有利である。理解できるように、16ビットのバスは32ビ ットのバスの半分のサイズであり、もし16ビットのバスで32ビットのバスと 同じ性能を提供できるのであればその部分を16ビットのバスで設計することが 好ましい。加えて、バスの大きさが小さければ小さいほど、バス内に欠陥が生じ る可能性も低い。 図2を参照し、異なったサイズの構成要素が図示される。SRAM16は16 ビットのメモリ装置であり、データバス20は16ビットのデータバスであり、 PCI BUS18は典型的には32ビットのバスである。現在64ビットのP CIバスが存在するが、将来のコンピュータシステムはすべて64ビットのPC Iバスを標準バスサイズとして有するであろう。SRAM16は、イーサネット 22からCPU12への、またはCPU12からイーサネット22へのデータの 伝送において遅延が生じるのを防止するため、イーサネットコントローラ14に よりバッファとして使用される。このような遅延は、たとえば、CPU12にお ける長い待ち時間によって、または、送信局に送ったばかりの情報を再送信しな ければならなくさせるイーサネット22での衝突によって生じ得る。さまざまな FIFO、BX FIFO26、MX FIFO28、BR FIFO30およ びMR FIFO32が、さまざまな構成要素間でのデータ伝送の制御の役割を 持つ。たとえば、BX FIFO26は、PCI BUS18を通じてCPU1 2からデータを受信し、16ビットのデータバス20を通じてSRAM16へ送 信できるようにフォーマットを32ビットから16ビットに変える役割を持つ。 加えて、BX FIFO26およびMR FIFO32により、情報をSRAM 16内に入れることができ、かつ、SRAM16から受けとられるときの16ビ ットから32ビットにフォーマットを変える役割を持つMX FIFO28およ びBR FIFO30によりそれぞれ効率的に取出すことができるようにアドレ スを発生させる必要がある。 加えて、データを受信する必要があると同時にイーサネット22を通じてデー タを送信する必要があるかもしれず、かつまた、イーサネットコントローラ14 がCPU12からデータを受信する必要があると同時にCPU12へデータを送 信する必要があるかもしれないので、イーサネットコントローラ14が、どのデ ータを最初に受信または送信するか、かつどのような順序で続くデータを送信ま たは受信するかについてインテリジェントな選択をする必要がある。 CPU12からのデータはイーサネット22へと送信されるので、送信されて いるデータの状態を維持および更新する要件がある。データがうまく送信された か、誤伝送されたか、または、うまく送信されていないかどうかなどを示すエラ ーコードおよびコンディションがある。 パケットの状態の維持および更新のため、パケットに対し「ピギーバック方式 で送る」ことができる効率的かつ有効なデータ構造が必要とされている。発明の概要 この発明により、イーサネットコントローラの送信部において高性能を提供す るデータ構造が記載される。このデータ構造は、送信されるべきデータと、送信 されるべきデータのSTATUS情報と、送信されるべきデータのDESCRI PTOR情報とを含む。 送信されるべきデータは、32ビットの行の8ビットバイトに編成され、32 ビットのSTATUS情報は32ビットの行の4つの8ビットバイトに編成され 、32ビットのDESCRIPTOR情報は32ビットの行の4つの8ビットバ イトに編成される。 1ビットのタグフィールドが各行に関連づけされ、タグフィールド内の1は、 そのタグに関連する行内にパケットの終わりが位置することを示す。STATU Sバイトの下位4ビットは、行内のどのバイトがパケットの終わりを含むかを示 す情報を含む。 この発明は、添付図面に関連し以下の詳細な説明を考慮するとよりよく理解さ れる。以下の説明から当業者には容易に明らかとなるであろうように、この発明 の好ましい実施例はこの発明の実施に適したべストモードの単なる例として図示 および説明される。理解されるように、全くこの発明の範囲から逸脱することな く、この発明には他の異なった例があり得、そのいくつかの詳細にはさまざまな 明らかな局面において修正を加えることができる。したがって、本図面および明 細書は本質的に例示的なものとみなされ限定的なものとみなされるものではない 。図面の簡単な説明 本明細書に組み入れられその一部を形成する添付の図面はこの発明を図示し、 説明とともに、この発明の原理を説明するために役立つ。 図1は、イーサネットコントローラ、CPU、イーサネット接続および媒体独 立インタフェース接続を備える先行技術のシステムの全体図である。 図2は、この発明のシステムの全体図である。 図3は、この発明のイーサネットコントローラの図である。 図4は、この発明のデータ構造の図である。詳細な説明 次に図1を参照し、CPU12と、イーサネット22および媒体独立インタフ ェース24への接続を備えるイーサネットコントローラ14とを備える先行技術 によるシステム10の概観を示す。CPU12はBUS17によりイーサネット コントローラ14に接続される。 次に図2を参照し、この発明により教示されるシステム11を示す。この図面 および続く図面においては、同様の構成要素を示すため同様の番号を使用する。 イーサネットコントローラ14の部分を図2に示す。イーサネットコントローラ 14がこの発明により教示される機能以外にも多くの他の機能を有すること、お よび、この発明に関連する構成要素のみを説明することが理解されねばならない 。 イーサネットコントローラ14の図示される部分の機能は、イーサネット22 および/または媒体独立インタフェース24へのおよびからのデータの伝送の管 理である。イーサネットコントローラ14は、CPU12、イーサネット22ま たは媒体独立インタフェース24のいずれかへのおよびいずれかからのデータの 伝送の低速化を防止するためSRAM16をバッファとして利用することにより 、データ伝送を管理する。データ伝送が低速化し得るのにはさまざまな理由があ るが、たとえば、CPU12の待ち時間が長く、CPU12が他の割り込みから 解放されるまで、イーサネット22からのデータ伝送が停止することがあり得る 。逆に、CPU12がイーサネット22を通じてデータを送信しようとするとき に、イーサネット22が使用中であるかもしれず、それによってイーサネット2 2の使用が終わるまでCPU12からのデータが停止または一時中断されること になる。 情報の送信または受信を完了できないために生じる問題を回避するため、イー サネットコントローラ14は4つのFIFOを有し、その各々はイーサネットコ ントローラ14の性能を最大にするための選択されたサイズを持つ。BX FI FO26は180バイトのFIFOであり、MX FIFO28は112バイト のFIFOであり、BR FIFO30は160バイトのFIFOであり、かつ MR FIFO32は108バイトのFIFOである。BX FIFO26とB R FIFO30とはイーサネットコントローラ14のBUS側にあり、かつ、 MX FIFO28とMR FIFO32とはイーサネットコントローラ14の MAC(媒体アクセス制御)側にある。各FIFOは入力機能または出力機能の いずれかを管理する。BX FIFO26は、CPU12からSRAM16への データの伝送を管理する。MX FIFO28は、SRAM16からイーサネッ ト22または媒体独立インタフェース24へのデータの伝送を管理する。同様に 、MR FIFO32はイーサネット22または媒体独立インタフェース24の いずれかからのデータの伝送を管理する。 次に図3を参照し、イーサネットコントローラ14をより詳細に図示する。図 2に関連して説明した4つのFIFOは各々論理ブロックを含むかまたは論理ブ ロックと関連づけされる。BX FIFO26は、SRAM16に対するアドレ スを発生しかつ16ビットのデータ経路20を通じてSRAM16に送信される べきCPUからの32ビットのデータを準備するBX LOGIC34に関連づ けされ、MX FIFO28は、SRAM16から検索されるべき16ビットの データに対するアドレスを発生しSRAM16内の16ビットのデータを読出し SRAM16から検索された16ビットのデータを32ビットに変換しかつ32 ビットのデータをMX FIFO28に書込むMX LOGIC36に関連づけ されている。MR FIFO32は、イーサネット22からMR FIFO32 により受信されたデータを16ビットサイズに変換しかつSRAM16内に書込 まれるべき16ビットのデータに対するアドレスを発生するMR LOGIC3 8に関連づけされ、BR FIFO30は、イーサネット22から受信されたS RAM16内のデータを読出し、データを16ビットサイズから32ビットサイ ズに変えかつBR FIFO30内に32ビットサイズのデータを書込むBRL OGIC40に関連づけされ、このデータはBR FIFO30からCPU12 に送られるであろう。 SRAM CONTROLLER42は、4つのFIFOを制御し、かつ、コ ンフリクトの場合には、すなわち2つ以上のFIFOがデータ伝送のためバスを 要求したときは、どのような順序でどのFIFOが優先順位を有するかを決定す る予め定められたアルゴリズムに従いSRAM CONTROLLER42が調 停を行なう。以下にアルゴリズムを説明する。 図3に図示するシステムの全体動作は以下のとおりである。イーサネットコン トローラ14は、CPU12からイーサネット22へのデータ伝送の全体動作お よびイーサネット22からCPU12へのデータ伝送を管理する。上に説明した ように、イーサネット22へのおよびイーサネット22からのデータ伝送につい ての主要な問題の1つは、任意のこのようなデータの効率的な伝送に影響を与え 得るさまざまな要因が存在することである。要因の1つは、対応しなければなら ない異なった速度である。0.96マイクロ秒のパケット間間隔で全二重動作を サポートする100メガビットの動作のために、イーサネット22は25MHz の最大速度で動作し、PCI BUS18は33MHzの速度で動作する。イー サネットコントローラ14の主要な機能の1つは、このようなデータの受信また は送信のいずれにおいてもいかなる遅延をも最小にするような態様で、さまざま な構成要素間でのデータ転送を管理することである。たとえば、CPU12(図 示せず)がイーサネット22にデータを送信したいときは、CPU12はBX FIFO26と通信しかつこれにデータを送信する。BX FIFO26は、B X REQUEST LINE44を通じてSRAM CONTROLLER4 2からバスにアクセスを要求する。BX LOGIC34が、BX CONTR OL LINE46を通じてSRAM CONTROLLER42から許可を受 信するとき、BX LOGIC34はCPU12から受信した32ビットサイズ のデータを16ビットサイズのデータに変え、かつ、16ビットフォーマットで のデータの記憶のためSRAM16に対するアドレスを発生する。変換されたデ ータは16ビットのバス20を通じてSRAM16へ通信されかつそこに書込ま れる。BX LOGIC34は、BX FIFO26からSRAM16へのデー タのフローを制御する状態機械であり、かつ、一旦SRAM CONTROLL ER42から許可信号を得ると動作する。BX FIFO26は32ビット幅で ありかつデータバス20は16ビット幅であるため、各サイクルにおいて16ビ ットサイズのデータバス上では16ビットしか書込むことができないので、BX LOGIC34が16ビットサイズのデータをSRAM16に書込むには2サ イクルかかるであろう。180バイトのサイズのBX FIFO26を有するこ とによつて、BX FIFO26を通じてのデータ転送が最大にされること、す なわち、BX FIFO26を通じてのデータ転送におけるいかなる遅延も最小 にされることがわかっている。以下に説明するように、SRAM CONTRO LLER42は、システム11の性能を最大にする調停アルゴリズムに従い、B X FIFO26を含むすべてのFIFOを通じてデータの受信および送信を管 理する。 SRAM16のサイズは選択可能であり、この実施例においては64キロバイ トが選択されているが、少なくとも128キロバイトまで拡張可能である。した がって、各メモリロケーションにアクセスするために16ビットのアドレスを有 する必要がある。しかし、イーサネットコントローラ14は、空間を節約しかつ 費用対効果をよりよくするため8ビットのアドレスポートしか有さない。この理 由のため、16ビットのアドレスは上位8ビット部分と下位8ビット部分とに分 割されなければならず、8ビットアドレスバスを通じて伝送され、そしてイーサ ネットコントローラ14の外で16ビットアドレスに再組立されなければならな い。アドレス発生と伝送の詳細については図3および図4に関連し以下に説明す る。 イーサネットコントローラ14は、MX FIFO28を通じてイーサネット ネットワークと絶えず通信しており、使用されるプロトコルの型に依存して、シ ステムはいつイーサネット22を通じてデータを送信し得るかを決定する。イー サネット22を通じてデータを送信し得るときには、MX FIFO28は、S RAM CONTROLLER42からMX REQUEST LINE47を 通じてデータバス20へのアクセスを要求する。アクセスが許可されかつMXC ONTROL LINE48を通じてMX LOGIC36に通信されるときは 、SRAM16内に一時的に書込まれたかまたはMX FIFO28内にあるデ ータが、BX FIFO26によりCPU12から受信されたときのもとの32 ビット形式に変換されるかまたは変換されており、イーサネット22を通じてM X FIFO28により送信されるであろう。MX FIFO28は、SRAM 16からMX FIFO28へのデータのフローを制御する状態機械であり、か つSRAM CONTROLLER42から許可信号を得るとき動作する。MX FIFO28は32ビット幅であり、データバス20は16ビット幅であり、 したがって、MX LOGIC36が16ビットのデータを2回読出し終え、こ れらを倍長語(32ビット)に組立てるため論理を使用した後、書込信号がMX FIFO28に与えられる。つまり、MX FIFO28への書込みは1サイ クルおきに行なわれ、かつSRAM16からの読出しは毎サイクル行なわれると いうことを意味する。MX FIFO28は、SRAM16からの読出しおよび MX FIFO28への書込みを制御する。 MR FIFO32が受信されるべきイーサネットからの情報が存在すること を感知するとき、MR FIFO32は、MR REQUEST LINE50 を通じてSRAM CONTROLLER42からデータバス20へのアクセス を要求する。SRAM CONTROLLER42がMR CONTROL L INE52を通じてのアクセスを許可するとき、MR FIFO32により受信 されたデータはMR LOGIC38により16ビットのフォーマットに変換さ れ、16ビットデータバス20を通じてSRAM16に送信される。MR LO GIC38の動作は、先に説明したBX LOGIC34の動作と同様である。 CPUが、イーサネットから受信されたデータを受信する準備のあるときは、 BR FIFO38はSRAM CONTROLLER42からBR REQU EST LINE54を通じてデータバス20へのアクセスを要求する。アクセ スが許可されるとき、SRAM CONTROLLER42は、SRAM16か らデータを読出し16ビットデータフォーマットで記憶されていたデータを32 ビットデータフォーマットに変換し、続いてCPUにデータを送信するBR F IFO30へデータを送るBR LOGIC40と通信する。BR LOGIC 40の動作は、先に説明したMX LOGIC36の動作と同様である。 次に図4を参照し、この発明のデータ構造およびイーサネットコントローラ1 4(図3)において高性能を提供するためのその利用法を図示する。以下の説明 においては、D0からD4の5バイトのデータを含むパケットを説明し、各バイ トは8ビットである。5バイトのデータは、56で示すようにCPU12により 、指示されるように、メモリから受信される。BX FIFO26は32ビット 幅でありかつ5バイトのデータは図4に示すように位置づけられる。一番目の4 つのバイトD0からD4は、BX FIFO26の58で示される行内に位置づ けられる。最後のバイトD4は、BX FIFO26内の60で示される32ビ ットの行の下位8ビット内に単独で位置づけられる。少なくとも1バイトのデー タを含む行のすぐ後に続く62で示される行は、データがイーサネットを通じて うまく送信されたか否かを示すためシステムにより維持および更新されなければ ならない、S0からS3のSTATUS情報4バイトを含む。STATUS情報 を含む行のすぐ後に続く64で示される行は、上位プロトコルのために、送信さ れたパケットの状態を更新する必要があるDESCRIPTORメモリのアドレ スを含む、DA0からDA3の4バイトのDESCRIPTOR情報を含む。理 解できるように、この発明のデータ構造は、データとともに「ピギーバック方式 で」伝送されるべきデータのパケットに関係するSTATUS情報およびDES CRIPTOR情報をすべて有し、したがって、STATUS情報およびDES CRIPTOR情報の記憶のため別個のメモリロケーションを提供するためのい かなるシステムの要件も不要である。 BX FIFO26内のメモリの各行と、以下に説明する66で示す1ビット のタグフィールドが関連する。先に説明したように、STATUS情報およびD ESCRIPTOR情報を含むデータは、示されるようにSRAM16に書込ま れかつ16ビットメモリ内に書込まれる。D0からD4の5バイトのデータに加 えて、SRAM16内には、パケットの終わり(EOP)情報のために予約され た、68で示されるメモリの第1の行がある。第1の予約された行68内におか れたパケットの終わり情報は、パケットの最後のバイトが書込まれる、SRAM 16内のロケーションの16ビットのアドレスであり、この場合には、バイトD 4が書込まれるメモリロケーションは行68内に書込まれるであろう。70で示 される次の行は、パケットの終わりがメモリ内に書込まれたかどうかをシステム に示す有効ビットのため予約されている。SRAM16は16ビットメモリであ るため、32ビットのデータ、STATUSおよびDESRCIPTOR情報は 、SRAM16内に書込まれる前に16ビットのフォーマットにフォーマット変 更される。 先に説明したように、データ、STATUSおよびDESCRIPTOR情報 は、MX FIFO28へと書込まれかつ図4に図示するように書込まれる。加 えて、BX FIFO26に関連するタグフィールド66内の情報は、MX F IFO28に関連する72で示されるタグフィールドに通信される。読出しポイ ンタ74により示されるようにMX FIFO28が読まれているとき、タグフ ィールド72の内容が読出される。タグフィールドの内容は、以下のことを示す 。タグフィールド内の0は、パケットの終わりに達していないことを示し、すな わち、現在読まれているMX FIFO28内の行がパケットの最後のバイトを 含んでいないことを示し、タグフィールド内の1は読まれている行内にパケット の終わりが含まれていることを示す。たとえば、ポインタ74が行76を指し示 しているとき、この0はパケットの終わりが行76内にないことを示す。ポイン タ 74が行80を指し示しているときは、80のタグフィールド72には1が書込 まれているであろう。80内の1はパケットの終わりが行82内にあることを示 す。 読まれている行内にパケットの終わりが含まれていることを示すのに加えて、 タグは、84で示される第1のSTATUSバイトS0内の下位4ビットが、行 内の4バイトのうちどのバイトがパケットの終わりを含むかを示すことをシステ ムに示す。たとえば、この場合、パケットの終わりバイトは行82内の最下位バ イト内に位置づけられているので、第1のSTATUSバイトS084内の下位 4ビットは0001と読まれるであろう。先に説明したように、残りのSTAT US情報は、データの状態、すなわち、データがイーサネットを通じてうまく送 信されたかどうかに関係する。また先に説明したように、その次の行86は、上 位プロトコルのために、送信されたパケットの状態を更新する必要がある、DE SCRIPTORメモリ内のロケーションに関係する4バイトのDESCRIP TOR情報を含む。 上述のこの発明の好ましい実施例の説明は、例示および説明の目的で提示され た。これは包括的なものまたはこの発明を開示された形態に厳密に限定すること を意図するのではない。上の教示に照らし明らかな修正例または変形例が考えら れる。この実施例は、この発明の原理およびその実際の応用例の最良の例を提供 し、それによって、企図される特定の用途に適したさまざまな修正を加えてさま ざまな例においてこの発明を当業者が利用することを可能にするため、選択され かつ説明された。このような修正および変更は、それらが公正に、法的にかつ公 平に与えられる権利の範囲により解釈されるとき添付の請求の範囲により決定さ れるこの発明の範囲内にある。
【手続補正書】 【提出日】平成10年12月8日(1998.12.8) 【補正内容】 (1) 明細書第4頁第19行ないし第5頁第3行を下記の文章に補正する。 記 「EP−A−459 752、EP−A−459 753およびEP−A−42 9 055も参照されよう。 この発明は、 CPUからイーサネットへのおよびイーサネットからCPUへのデータの伝送 を制御するためのイーサネットコントローラであって、 各々32ビット幅を有する行を備える第1のFIFOを含み、第1のFIFO は、32ビットのバスを通じてCPUからイーサネットへ送信されるべきデータ のパケットを受信し、前記イーサネットコントローラはさらに、 第1のFIFOと関連付けられる第1のLOGIC要素を含み、第1のLOG IC要素は、CPUから受信される、イーサネットへ送信されるべきデータのパ ケットを第1のFIFOに、8ビットバイトのフォーマットで行ごとに位置付け 、前記イーサネットコントローラはさらに、 第1のFIFO内の各行に関連付けられるタグビットを含み、タグビットは、 どの行の中にパケットの終わりが位置付けられているかを示し、 第1のLOGIC要素は、パケットの終わりが位置付けられている行のすぐ後 の行内に8ビットバイトのフォーマットで、32ビットのステータス情報を、第 1のFIFO内に位置付け、 第1のLOGIC要素は、32ビットのステータス情報が位置付けられる行の すぐ後の行内に8ビットバイトのフォーマットで、32ビットの記述子情報を、 第1のFIFOへ位置付け、ステータス情報および記述子情報は、イーサネット へ送信されるべきデータとともにピギーバック方式で送られ、前記イーサネット コントローラはさらに、 16ビット幅を有するSRAMを含み、 第1のLOGIC要素は、第1のFIFO内の32ビットの情報を16ビット の情報に変換し、かつ、イーサネットへ送信されるべきデータおよびピギーバッ ク方式で送られる情報を、SRAM内に位置付けるためのアドレスを発生し、 イーサネットへ送信されるべき変換された32ビットのデータおよびピギーバ ック方式で送られる情報は、16ビットのバスを通じてSRAMへ書込まれるこ とを特徴とする、イーサネットコントローラを提供する。」 (2) 明細書第9頁第17行の「MX FIFO28」を、「MX LOG IC36」に補正する。 (3) 明細書第9頁第25行の「MX FIFO28」を、「MX LOG IC36」に補正する。 (4) 請求の範囲を別紙のとおり補正する。請求の範囲 1.CPU(12)からイーサネット(22)へのおよびイーサネットからCP Uへのデータの伝送を制御するためのイーサネットコントローラであって、 各々32ビット幅を有する行を備える第1のFIFO(26)を含み、第1の FIFOは、32ビットのバス(18)を通じてCPUからイーサネットへ送信 されるべきデータのパケットを受信し、前記イーサネットコントローラはさらに 、 第1のFIFOと関連付けらる第1のLOGIC要素(34)を含み、第1の LOGIC要素は、CPUから受信される、イーサネットへ送信されるべきデー タのパケットを第1のFIFOに、8ビットバイトのフォーマットで行ごとに位 置付け、前記イーサネットコントローラはさらに、 第1のFIFO内の各行に関連付けられるタグビット(66)を含み、タグビ ットは、どの行の中にパケットの終わりが位置付けられているかを示し、 第1のLOGIC要素は、パケットの終わりが位置付けられている行(60) のすぐ後の行(62)内に8ビットバイトのフォーマットで、32ビットのステ ータス情報を、第1のFIFO内に位置付け、 第1のLOGIC要素は、32ビットのステータス情報が位置付けられる行の すぐ後の行(64)内に8ビットバイトのフォーマットで、32ビットの記述子 情報を、第1のFIFO内に位置付け、ステータス情報および記述子情報は、イ ーサネットへ信されるべきデータとともにピギーバック方式で送られ、前記イー サネットコントローラはさらに、 16ビット幅を有するSRAM(16)を含み、 第1のLOGIC要素は、第1のFIFO内の32ビットの情報を16ビット の情報に変換し、かつ、イーサネットへ送信されるべきデータおよびピギーバッ ク方式で送られる情報を、SRAM内に位置付けるためのアドレスを発生し、 イーサネットへ送信されるべき変換された32ビットのデータおよびピギーバ ック方式で送られる情報は、16ビットのバス(20)を通じてSRAMへ書込 まれる、ことを特徴とする、イーサネットコントローラ。 2.前記イーサネットコントローラはさらに、 各々32ビット幅を有する行を備える第2のFIFO(28)を含み、第2の FIFOは、イーサネットへ送信されるべきデータのパケットおよびピギーバッ ク方式で送られる情報を16ビットのバスを通じてSRAMから受信し、前記イ ーサネットコントローラはさらに、 第2のFIFOに関連付けられる第2のLOGIC要素(36)を含み、第2 のLOGIC要素は、16ビットのバスを通じて受信された16ビットの情報を 32ビットの情報に変換し、かつ、SRAMからの、イーサネットへ送信される べきデータのパケットおよびピギーバック方式で送られる情報を、8ビットのフ オーマットで行ごとに第2のFIFO内に位置付け、前記イーサネットコントロ ーラはさらに、 第2のFIFO内の各行に関連付けられるタグビットを含み、タグビットはイ ーサネットへ送信されるべきデータのパケットの終わりがどの行内に位置付けら れているかを示し、 イーサネットへ送信されるべきデータのパケットはイーサネットへ送信される 、請求項1に記載のイーサネットコントローラ。 3.前記イーサネットコントローラはさらに、 各々32ビット幅を有する行を備える第3のFIFO(32)を含み、第3の FIFOは、CPUへ送信されるべきデータのパケットを、32ビットのフォー マットでイーサネットから受信し、前記イーサネットコントローラはさらに、 第3のFIFOに関連付けられる第3のLOGIC要素(38)を含み、第3 のLOGIC要素は、イーサネットから受信されたCPUへ送信されるべきデー タのパケットを、8ビットバイトのフォーマットで行ごとに第3のFIFO内に 位置付け、前記イーサネットコントローラはさらに、 第3のFIFO内の各行に関連付けられるタグビットを含み、タグビットは、 パケットの終わりがどの行内に位置付けられているかを示し、 第3のLOGIC要素は、パケットの終わりが位置付けられている行のすぐ後 の行内に、32ビットのステータス情報を、第3のFIFO内に位置付け、 第3のLOGIC要素は、ステータス情報が位置付けられている行のすぐ後の 行内に、32ビットの記述子情報を第3のFIFO内に位置付け、ステータス情 報および記述子情報は、CPUへ送信されるべきデータとともにピギーバック方 式で送られ、 第3のLOGIC要素は、第3のFIFO内の32ビットの情報を16ビット の情報に変換し、かつ、CPUへ送信されるべきデータおよびピギーバック方式 で送られる情報を、SRAM内に位置付けるためアドレスを発生し、 CPUへ送信されるべき変換された32ビットのデータおよびピギーバック方 式で送られる情報は、16ビットのバスを通じてSRAMに書込まれる、請求項 2に記載のイーサネットコントローラ。 4.前記イーサネットコントローラはさらに、 各々32ビット幅を有ずる行を備える第4のFIFO(30)を含み、第4の FIFOは、CPUへ送信されるべきデータのパケットおよびピギーバック方式 で送られる情報を、16ビットのバスを通じてSRAMから受信し、前記イーサ ネットコントローラはさらに、 第4のFIFOに関連付けられる第4のLOGIC要素(40)を含み、第4 のLOGIC要素は、SRAMから受信した16ビットの情報を32ビットの情 報に変換し、かつ、SRAMからのCPUへ送信されるべきデータのパケットお よびピギーバック方式で送られる情報を、8ビットのフォーマットで行ごとに第 4のFIFO内に位置付け、前記イーサネットコントローラはさらに、 第4のFIFO内の各行に関連付けられるタグビットを含み、タグビットは、 CPUへ送信されるべきデータのパケットの終わりがどの行内に位置付けられて いるかを示し、 CPUへ送信されるべきデータのパケットは、32ビットのバスを通じてCP Uへ送信される、請求項3に記載のイーサネットコントローラ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドゥウォーク,ジェフリー アメリカ合衆国、95124 カリフォルニア 州、サン・ノゼ、トゥポロ・ドライブ、 1682 (72)発明者 フィッシャー,ジェニー・リュウ アメリカ合衆国、94040 カリフォルニア 州、マウンテン・ビュー、メドウ・レー ン、1426

Claims (1)

  1. 【特許請求の範囲】 1.イーサネットコントローラの送信部で使用するためのデータ構造であって、 イーサネットを通じて通信されるべき8ビットバイトのデータの第1の数のロ ケーションと、 通信されるべきデータに関連する8ビットバイトのSTATUS情報を含む第 2の数のロケーションと、 通信されるべきデータに関連する8ビットバイトのDESCRIPTOR情報 を含む第3の数のロケーションとを含む、データ構造。 2.8ビットバイトのデータの第1の数のロケーションは、32ビットの行に編 成され、 第2の数のロケーションは32ビットの行を構成する4つの8ビットバイトに 編成され、 第3の数のロケーションは、32ビットの行を構成する4つの8ビットバイト に編成される、請求項1に記載のイーサネットコントローラの送信部で使用する ためのデータ構造。 3.各行に関連する1ビットのタグフィールドをさらに含む、請求項2に記載の イーサネットコントローラの送信部で使用するためのデータ構造。 4.行に関連する1ビットのタグフィールド内の1は、データの最後のバイトが その行内に含まれることを示す、請求項3に記載のイーサネットコントローラの 送信部で使用するためのデータ構造。 5.1ビットのタグフィールド内の1は、STATUS情報のバイトがデータの 最後のバイトを含む行内のどのバイトがデータの最後のバイトを含むかを示すこ とをさらに示す、請求項4に記載のイーサネットコントローラの送信部で使用す るためのデータ構造。 6.行が連続している、請求項5に記載のイーサネットコントローラの送信部で 使用するためのデータ構造。
JP50054398A 1996-06-06 1997-02-04 高性能で複数の伝送パケットをサポートするためのデータ構造 Expired - Fee Related JP3684405B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/659,733 US5878028A (en) 1996-06-06 1996-06-06 Data structure to support multiple transmit packets for high performance
US08/659,733 1996-06-06
PCT/US1997/001858 WO1997047116A1 (en) 1996-06-06 1997-02-04 Data structure to support multiple transmit packets for high performance

Publications (2)

Publication Number Publication Date
JP2000512099A true JP2000512099A (ja) 2000-09-12
JP3684405B2 JP3684405B2 (ja) 2005-08-17

Family

ID=24646600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50054398A Expired - Fee Related JP3684405B2 (ja) 1996-06-06 1997-02-04 高性能で複数の伝送パケットをサポートするためのデータ構造

Country Status (6)

Country Link
US (1) US5878028A (ja)
EP (1) EP0903029B1 (ja)
JP (1) JP3684405B2 (ja)
DE (1) DE69729190T2 (ja)
TW (1) TW332362B (ja)
WO (1) WO1997047116A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001237864A (ja) * 2000-02-25 2001-08-31 Toyo Commun Equip Co Ltd データ伝送装置及び方法
JP2017034671A (ja) * 2015-07-22 2017-02-09 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング データ伝送のタイムスタンプの妥当性を確認するための方法及び装置

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021133A (en) * 1997-03-07 2000-02-01 Advanced Micro Devices Inc. Communication processing method using a buffer array as a virtually circular buffer
US6172984B1 (en) * 1997-06-19 2001-01-09 Siemens Information And Communication Networks, Inc. System and method for reducing the latency for time sensitive data over CSMA/CD networks
US6363067B1 (en) 1997-09-17 2002-03-26 Sony Corporation Staged partitioned communication bus for a multi-port bridge for a local area network
US6617879B1 (en) 1997-09-17 2003-09-09 Sony Corporation Transparently partitioned communication bus for multi-port bridge for a local area network
US6252879B1 (en) 1997-09-17 2001-06-26 Sony Corporation Single counter for controlling multiple finite state machines in a multi-port bridge for local area network
US6301256B1 (en) 1997-09-17 2001-10-09 Sony Corporation Selection technique for preventing a source port from becoming a destination port in a multi-port bridge for a local area network
US6446173B1 (en) 1997-09-17 2002-09-03 Sony Corporation Memory controller in a multi-port bridge for a local area network
US6442168B1 (en) 1997-09-17 2002-08-27 Sony Corporation High speed bus structure in a multi-port bridge for a local area network
US6744728B1 (en) 1997-09-17 2004-06-01 Sony Corporation & Sony Electronics, Inc. Data pipeline timing optimization technique in a multi-port bridge for a local area network
US6308218B1 (en) 1997-09-17 2001-10-23 Sony Corporation Address look-up mechanism in a multi-port bridge for a local area network
US6768745B1 (en) * 1998-04-29 2004-07-27 Zhone Technologies, Inc. Flexible SONET access and transmission system
US6067300A (en) * 1998-06-11 2000-05-23 Cabletron Systems, Inc. Method and apparatus for optimizing the transfer of data packets between local area networks
US6385211B1 (en) * 1998-08-19 2002-05-07 Intel Corporation Network controller
US7013304B1 (en) 1999-10-20 2006-03-14 Xerox Corporation Method for locating digital information files
US7046628B2 (en) * 2001-09-24 2006-05-16 Intel Corporation Apparatus and method for just-in-time transfer of transmit commands to a network interface
US7346701B2 (en) * 2002-08-30 2008-03-18 Broadcom Corporation System and method for TCP offload
US7826614B1 (en) 2003-11-05 2010-11-02 Globalfoundries Inc. Methods and apparatus for passing initialization vector information from software to hardware to perform IPsec encryption operation
US7757020B2 (en) * 2005-06-29 2010-07-13 Intel Corporation Point-to-point link negotiation method and apparatus
EP2736220B1 (en) * 2012-11-22 2019-10-23 NXP USA, Inc. Method and apparatus for network streaming
US9485333B2 (en) 2013-11-22 2016-11-01 Freescale Semiconductor, Inc. Method and apparatus for network streaming

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991004540A1 (en) * 1989-09-08 1991-04-04 Auspex Systems, Inc. Multiple facility operating system architecture
AU624274B2 (en) * 1989-11-20 1992-06-04 Digital Equipment Corporation Data format for packets of information
US5247626A (en) * 1990-05-29 1993-09-21 Advanced Micro Devices, Inc. Fddi controller having flexible buffer management
US5136582A (en) * 1990-05-29 1992-08-04 Advanced Micro Devices, Inc. Memory management system and method for network controller
JPH0548638A (ja) * 1991-08-15 1993-02-26 Fujitsu Ltd Atm網におけるエンド・エンド間輻輳対処制御処理方式
US5461618A (en) * 1992-06-30 1995-10-24 Industrial Technology Research Institute Adapter for transmission lines using HDLC frames
US5481735A (en) * 1992-12-28 1996-01-02 Apple Computer, Inc. Method for modifying packets that meet a particular criteria as the packets pass between two layers in a network
DE4323471C2 (de) * 1993-07-14 1996-10-17 Atecom Advanced Telecommunicat Anordnung und Verfahren zum Bearbeiten von Datenstrukturen bei deren Durchlauf durch einen Netzwerkknoten

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001237864A (ja) * 2000-02-25 2001-08-31 Toyo Commun Equip Co Ltd データ伝送装置及び方法
JP2017034671A (ja) * 2015-07-22 2017-02-09 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング データ伝送のタイムスタンプの妥当性を確認するための方法及び装置

Also Published As

Publication number Publication date
EP0903029A1 (en) 1999-03-24
DE69729190T2 (de) 2005-05-19
DE69729190D1 (de) 2004-06-24
EP0903029B1 (en) 2004-05-19
WO1997047116A1 (en) 1997-12-11
US5878028A (en) 1999-03-02
TW332362B (en) 1998-05-21
JP3684405B2 (ja) 2005-08-17

Similar Documents

Publication Publication Date Title
JP3803722B2 (ja) 複数の伝送されるパケットに対処するためのアドレス発生およびsramへのおよびsramからのデータ経路の調停
JP3684405B2 (ja) 高性能で複数の伝送パケットをサポートするためのデータ構造
US5247626A (en) Fddi controller having flexible buffer management
JP3448067B2 (ja) ネットワークアダプタのためのネットワークコントローラ
CA2304340C (en) Full-duplex communication processor
US6957269B2 (en) Method and apparatus for performing priority-based flow control
US7110359B1 (en) System and method for dynamically updating weights of weighted round robin in output queues
US6516352B1 (en) Network interface system and method for dynamically switching between different physical layer devices
US6625157B2 (en) Apparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US6701406B1 (en) PCI and MII compatible home phoneline networking alliance (HPNA) interface device
US20050132089A1 (en) Directly connected low latency network and interface
JPH02196541A (ja) ワークステーシヨンをローカル・エリヤ・ネツトワークに接続する方法および装置
WO2003052617A1 (en) A system and method for efficient handling of network data
US6771654B1 (en) Apparatus and method for sharing memory using a single ring data bus connection configuration
US6084878A (en) External rules checker interface
US6393028B1 (en) Method and apparatus for providing EOF for frame modification
US6574231B1 (en) Method and apparatus for queuing data frames in a network switch port
US6108694A (en) Memory disk sharing method and its implementing apparatus
US6990535B1 (en) Device and method for multi-ported, single bus-mastering data buffer management
JP3435736B2 (ja) 通信制御装置
JP3811759B2 (ja) 複数のパケットをsram内に記憶するためのパケットの終わり検出
KR100474658B1 (ko) 다수의전송패킷들에대처하기위한어드레스생성및sram으로/으로부터의데이터경로조정
US6954427B1 (en) Method and apparatus for performing priority-based admission control
US6853645B1 (en) PCI and MII compatible home phoneline networking alliance (HPNA) interface device
JP2001257686A (ja) 計算機システム及び計算機システムのデータ通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050426

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090610

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090610

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100610

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110610

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110610

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees