JPH06511585A - データ伝送の自動開始装置 - Google Patents

データ伝送の自動開始装置

Info

Publication number
JPH06511585A
JPH06511585A JP6504767A JP50476794A JPH06511585A JP H06511585 A JPH06511585 A JP H06511585A JP 6504767 A JP6504767 A JP 6504767A JP 50476794 A JP50476794 A JP 50476794A JP H06511585 A JPH06511585 A JP H06511585A
Authority
JP
Japan
Prior art keywords
transmission
data
buffer
frame
host
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
JP6504767A
Other languages
English (en)
Other versions
JP3863912B2 (ja
Inventor
ピーターセン ブライアン
ブラウン ディヴィッド アール
Original Assignee
3コム コーポレイション
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25444577&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH06511585(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 3コム コーポレイション filed Critical 3コム コーポレイション
Publication of JPH06511585A publication Critical patent/JPH06511585A/ja
Application granted granted Critical
Publication of JP3863912B2 publication Critical patent/JP3863912B2/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/9063Intermediate storage in different physical parts of a node or terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • 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/9031Wraparound memory, e.g. overrun or underrun detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • H04L49/9073Early interruption upon arrival of a fraction of a packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9078Intermediate storage in different physical parts of a node or terminal using an external memory or storage device
    • 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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Selective Calling Equipment (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

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

Description

【発明の詳細な説明】
データ伝送の自動開始装置 関連出願についての説明 本願は、1992年7月28日に出願され、発明の出願時に、現在の誼渡人に譲 渡された「ホストから独立したバッファ管理によるネットワーク・インタフェー ス」と題する係属中の米国出願第07/921,519と関連するものである。 発明の分野 本願発明は、通信ネットワークとデータ処理装置間のインタフェース、特に通信 ネットワークをとおしてデータのパケット或いはフレームの伝送に関連するシス テムに関する。 関連技術の説明 データ通信システムは、しばしば送信側で作られたデータのパラケラトあるいは フレームの伝送に基づかれている。データのパケットあるいはフレームは通信シ ステムに含まれるネットワーク・プロトコルと互換性があるように設計される。 従って、伝送システムは、データ伝送の開始前にネットワーク・プロトコルに従 ってデータ・フレームを構成しなければならない。しばしば、伝送システムはネ ットワーク・アダプタに送られるデータのフレームが続く仕事を行う、例えば伝 送されるへきデータの第2のフレームを構成する前に伝送されているという承認 を待ってあろう。 幾つかのネットワーク・アダプタ・インタフェースは、伝送システムによって作 られたデータ・フレームは伝送システムによってダウンロードされ得る専用送信 バッファを有している。このフレームは、ネットワークにフレームを伝送するこ とに関連する媒体アクセス制御機能がフレームを首尾よく伝送するか、フレーム 伝送をキャンセルするまで、伝送データ・バッファに格納されている。もしフレ ーム伝送かキャンセルされれば、データは、伝送システムがフレームを伝送ため に第2の試みを開始するまで、伝送データ・バッファに保持されていてもよい。 伝送データ・バッファはF I F O(first−in−first−ou t)システムとは区別される一\きである。FIFOシステムにおいては、伝送 システムはフレームのデータをFIFOにダウンロートする。一方、ネットワー ク・アダプタは伝送中にFIFOをアンロードする。FIFOのデータは、伝送 データ・バッファのデータのように、媒体アクセス制御機能やホストによって残 したり、再使用することができない。 伝送データ・バッファは伝送システムがフレームを伝送データ・バッファに構成 したり、ダウンロードしたりすることを、またネットワーク・アダプタがフレー 19を伝送するようにする間に他の仕事をすることを可能にするけれとも、フレ ームの伝送は、完全なフレームがバッファにダウンロードされるまで遅らされる という欠点がある。従って、伝送データ・バッファ型のシステムはネットワーク ・スルーブツトを犠牲にしで、ホスト・システムを効率的に改善する。集中的な 通信の動作は特性を低下する。 更に、伝送データ・バッファを用いる従来のシステムはホストや伝送システムに 伝送F−夕・バ、ファを管理するように要求する。ネットワーク・インタフェー ス・コントローラは、インタフェース・コントローラ内とネットワークへのFI FOバッファを通してDMA技術を用いて、ホストが管理した伝送データ・ノく ソファからデータを転送する。 代表的な従来システムはナショナルセミコンダクタのDP83932B、システ ム−オリエンrソド・ネットワーク・インタフェース・コントローラ(SONI C)およびインテル82586 LANコープロセツサ(coprocesso r)を有している。 簡素化FIFOを基本としたシステムから利用可能な通信スループ・ソトを維持 している間、伝送データ・バッファの利点を与えることが必要である。 本発明の概要 本発明は、専用伝送バッファを有するネットワーク・インタフェースにおけるデ ータ伝送の開始のために、提供する。本システムは、ホストコンピュータによっ て伝送バッファに作られるデータのフレームを伝送するための論理装置を有して いる。また、ホストによって伝送バッファにダウンロードされるフレームのデー タ量は伝送バッファに残っているフレームのデータ量のスレッショルドを判定す るために監視される。スレッショルドの判定はフレームの大部分が伝送バッファ に残っていることを示すとき、およびフレームの全てのデータを伝送バッファに 転送する前に、ネットワーク・インタフェース・コントローラはフレームの伝送 を開始するための論理装置を有している。本発明の第1の特徴においては、監視 論理装置はスレッショルド・メモリを有しており、このメモリはスレッショルド 値を格納するためのホストコンピュータおよびホストへステータス情報(状態情 報)を記入するための論理装置によってプログラム可能である。従ってスレッシ ョルド値は、変更可能なスレッショルド・メモリや記入されたステータス情報を 用いて、特性を最適化するためにホスト・システムによってセットすることがで きる。 本発明の他の特徴によれば、伝送バッファは伝送記述子リングと伝送データ・バ ッファを有している。ホストシステムはアダプタが管理している伝送記述子リン グに伝送記述子を格納することによって、フレームを構成する。アダプタが伝送 記述子の処理を始めると、アダプタは記述子自身から直接データを取り上げ、記 述子において識別されるデータの伝送データ・バッファへのダウンロード処理を 開始する。スレッショルド・論理装置は記述子からの直接データ量を決定し、ダ ウンロード領域へのフレームのデータのダウンロードを監視する。組み合わせが スレッショルドに合致すると、フレームの実際の伝送が開始される。従ってフレ ームの伝送は、完全なフレームがダウンロード領域へダウンロードされる前に、 開始されてもよい。 よって、本発明はデータのフレームを構成し、伝送する場合に、集中的通信であ る応用に対しての通信スルーブツトを監視している間に、ホストシステムのため の柔軟性を非常に増加するネットワーク・インタフェース・コントローラ用のア ーキテクチャを提供する。 本発明のだの特徴および利点は図面の簡単な説明および請求範囲に基づいて理解 されるであろう。 図1は、本発明によるネットワーク・インタフェースを有するシステムの簡単な ブロック図である。 図2は、本発明による伝送システムの機能的ブロック図である。 図3は、本発明によるホストシステムとネットワーク・インタフェースの好まし い実施のブロック図である。 図4は、本発明を実施する図3のネットワーク・インタフェース・プロセッサの ブロック図である。 図4Aは、図4のシステムに対する自律アクセス・アドレス・バスの構造を図示 する。 図5は、本発明による、アダプタを通してホスト・メモリ空間からネットワーク へのデータの流れを図示する。 図6は、本発明による、データ伝送に使用されるホスト・システムのアドレス空 間のマツプである。 図7は、ホスト・システムのアドレス空間と独立しているアダプタ・メモリのメ モリ・マツプである。 図8は、本発明の特徴によるトランススクリプト記述子のデータ構造を示す。 図9は、本発明による、伝送記述子リング・バッファと伝送データ・バッファ、 及び伝送オペレーション中に用いられるポインタの管理を示す。 図10A−10Eは、伝送記述子リング・バッファと伝送データバッファ用のポ インタの管理を示す図である。 図]lは、図4のネットワーク・インタフェース・コントローラ用の伝送機能に 用いられるデータバス演算を示す論理装置図である。 図12は、図4のネットワーク・インタフェース・アダプタ用の伝送開始制御論 理装置の論理装置図である。 図13、は図12の論理装置用の伝送開始スレッショルド・レジスタの論理装置 図である。 図14は、図13の伝送開始スレッショルド・レジスタの状態図である。 図15は、図12のダウンロート比較論理装置の論理装置図である。 図16は、図12の直接データ比較器の論理装置図である。 図17は、図12の論理装置におけるデータ利用制御機能の状態図である。 図18は、本発明による、伝送論理装置の簡単なブロック図である。 好適実施例の説明 本発明の好適実施例の詳細な説明は図面を参照してなされる。図1および図2は 本発明によるデータ通信システムの概観図を示している。図3から図10A−図 10Eは、データ構造とデータの流れ含む、本発明の好ましい実施の詳細な説明 を与える。図11−図18は、本発明の伝送特徴を実施するための論理装置の実 行を与えている。 ]、 システムの概要 図1は、伝送バッファ・メモリで利用できるバイト数がプログラムされたスレッ ショルドを越えると、ネットワーク上にフレームの送信を開始することを自動的 に可能にする専用伝送バッファ・メモリを用いる制御回路を有する、本発明によ るデータ通信システムを示している。図1に示されているように、通信データ用 のこのシステムは、参照番号1によって示されるホスト・データ処理システムを 有し、この処理システムはホスト・システム・バス2、ホストCPU3、ホスト メモリ4及びバス2を介して全ての通信を行う他のホスト装置5を有している。 ネットワーク・インタフェース・アダプタ6はホストバス2に接続されている。 次に、アダプタ6は、同軸線、捩れ対導体、光ファイバー、サテライト、無線或 いは他の通信媒体のようなネットワーク媒体8に接続されているトランシーバ7 に結合されている。また、ネットワーク・アダプタ6は、インタフェース・コン トローラ6あるいはホストCPU3により管理され、与えられた特別な実施に依 存しているアダプタ・メモリ9に接続されている。更に、アダプタ6は、ホスト ・システムlからアダプタ・メモリ9へのデータの伝送を監視するための開始伝 送論理装置6Aを有している。開始伝送論理装置6AはホストIからアダプタ6 へ伝送される与えられたフレームのためのスレッショルド判定を行う。スレッシ ョルドが適合されると、アダプタ6はネットワークを通してフレームの伝送を開 始する。勿論、これらの構成要素の池の幅広い変更が行われてもよい。例えば、 アダプタメモリ9は、ホストバス2に直接接続することも可能である。また多重 バス構造のものか利用されてもよい。 図2は本発明による開始伝送システムの機能的な構成要素を示している。図2に おいて、幾つかの機能ブロックが表されている。ホスト・コンピュータ或いは送 信システム30は、ライン32で示されたデータとライン33で示された制御信 号を受信してホスト・インタフェース論理装置31と通信する。ホスト・インタ フェース論理装置31はライン35を通して伝送バッファ34にデータを送る。 またスレッショルド・論理装置36はホストコンピュータ3oからフレーム・バ ッファ34へのデータ伝送を監視するためにホスト・インタフェース論理装置3 1に結合される。ライン37はスレッショルド論理装置36とホスト・インタフ ェース論理装置31との結合を示している。スレッショルド論理装置はスレッシ ョルド判定を行い、且つライン38で示された信号を、例えばメディア・アクセ ス制御(Media Access Control) MAC論理装置を有す る伝送論理装置39へ発生する。伝送論理装置39はライン40を通してバッフ ァ34からのデータを受信し、且つライン41て示されたそのデータをネットワ ーク媒体42へ供給する。 フレームバッファ34に残されなければならないフレームのデータ量を示すスレ ッショルド値を格納するスレッショルド記憶装置43は、そのフレームの伝送が 伝送りMA論理装置及びMAC39によって開始される前に、スレッショルド論 理装置36に結合される。 好ましいシステムにおいては、スレッショルド記憶装置43はホスト・コンピュ ータ30によってプログラムすることができる。この実施例においては、スレッ ショルド記憶装置43はインタフェース論理装置31を通してホストによりアク セス制御なレジスタである。代わりに、スレッショルド記憶装置は製造中にセン トされるROMであってもよい。更に代わりのものとして、スレッショルド記憶 装置は、EEPR,OM、フラツシユEPROM或いは他のメモリ記憶装置のよ うな不揮発性メモリにユーザが特定したデータを用いて実施されてもよい。 伝送論理装置39は、ホスト・システムに記入するためにライン44を通してホ スト・インタフェース31に状況情報を供給する。状況情報は、実行中の状態の 表示を存し、且つスレノノヨルト記憶装置43の値を最適化するためにホストに よって使用されることができる。 動作においては、ホストコンピュータはネットワーク媒体42へ伝送されるべき データのフレームをつくる。ホストコンピュータ3oはホスト・インタフェース 31を通してそのフレームを識別する。フレームの識別器に結合されたホスト・ インタフェースはフレームの記述に従ってホスト・コンピュータ3oからバッフ ァ34ヘデータを移動する。スレッショルド36はバッファ34へのデータ伝送 を監視する。データのスレッショルド量がバッファ34に残っていると、伝送論 理装置39はフレームの伝送を開始するように命令される。従って、もし伝送論 理装置39がホスト・コンピュータ3oからの進行中のダウンロードのフレーム 主題を伝送するために利用でき、バッファにダウンロードされているフレームが スレッショルド記憶装置43によりセットされたスレシュホルトより大きく、且 つホスト・コンピュータ30は、データの直接伝送が要求されることを示してい るならば、この動作は、完全なフレームがホスト・コンピュータ3oからバッフ ァ34へ転送去れる前に、開始する。 上述のように、バッファ34はホスト・コンピュータ30により直接アドレス可 能であってもよく、好ましいシステムでは、ホスト・コンピュータ3oが伝送動 作に関連するデータと制御信号を書き込むホスト・アドレス空間の予め特定され た領域からなるホスト・インタフェース31を通してアドレス可能である。従っ てホスト・インタフェース31はその予め特定されたアドレス空間からバッファ およびホストと無関係なホスト・アクセス可能レジスタへのデータ伝送をマツプ する。 本発明の好適実施例の更に詳細な説明が図3に示されている。 図3は、本発明によるネットワーク・インタフェース・コントローラを有するコ ンピュータ・システムを図示したものである。コンピュータ・システムは、プロ セッサIO、ホスト・メモリ11及びEISAバスのようなホスト・システム・ バス13を通して全ての通信をする他のホスト装置I2を含むホスト・システム を有している。ホスト・システム・バス13はホスト・システム・アドレス空間 を定義するアドレス・ラインを有している。典型的には、EISAバスに対して 、約4ギガバイトのホスト・アドレス空間を確立する32のアドレス・ラインが ある。 ネットワーク・インタフェース・コントローラは、(Cadence、 Inc 、、 San Jose。 Ca1iforniaの利用可能な)技術により公知のVERILOG設計装置 を用いて以下にa括している機能を実行するために設計された応用特定集積回路 として、好適システムにおいて実施されているネットワーク・インタフェース・ プロセッサ!4を有している。このネットワーク・インタフェース・プロセッサ 14は適当なバッファを介してバス13に結合されている。また、このネットワ ーク・インタフェース・プロセッサ14はRAM15.BiO2ROM16とI NFOEEPROM17、テストポート18、エンコード/デコードチップ19 及びネットワーク・トランシーバ20にも結合されている。次に、ネットワーク ・トランシーバ20はネットワーク媒体に結合されている。 大多数の機能はネットワーク・インタフェース・プロセッサ14に組み込まれて いる。好適実施例では、ホストシステムによりバスを通してアクセスできる全て のレジスタはプロセッサ14かRAM14の何れかにある。もしRAM15にあ れば、それらのアクセスはネットワーク・インタフェース・プロセッサ14によ って管理される。 RAM15はネットワーク・インタフェース・コントローラ上の第1の資源であ る。この資源はネットワーク・インタフェースの送受信動作に用いられるホスト ・アドレス空間の外部にあるバッファ・メモリを与える。このRAMl5の構成 と利用に関する詳細は以下に説明される。 BiO2ROM+6は、開始中のネットワーク・インタフェース・プロセッサ1 4を介して、ホスト・システムの基本人出力コードへの拡張を与える。BiO2 ROM16のためのアドレスとBiO2ROM16からのデータはRAMl5に よって分割されているそれぞれのバス21と22を通してネットワーク・インタ フェース・プロセッサ14へ結合される。 INFOEEPROMI7は駆動装置、診断装置およびネットワーク管理ソフト ウェアにより用いられる臨界的なアダプタ特定データを格納する。このデータは 製造プロセス中に格納される。インタフェース・コントローラの開始中に、EE PROMI 7の内容は動作中の使用のためにRAM15の予め特定された領域 にロードされる。 ナショナル セミコンダクタ(National Sem1conductor ) 8391マンチエスタ(Manchester )エンコード/デコードチ ップのようなエンコード/デコードチップがインタフェース・プロセッサI6に 結合される。AUI接続器に結合された信号はボード外のトランシーバの使用を 許容するために与えられる。 好適実施例におけるトランシーバ20は薄いエサ−ネット(coax/BNC)  hランシーバ或いは10 B a s e T (Type 3/RJ−45 ) )ランシーバの何れかを有している。トランシーバ20用の制御信号はエン コード/デコードチップ19上の変換論理装置を用いて、ネットワーク・インタ フェース・プロセッサ14上に作られる。 テストポートI8は、好適実施例で は製造及び試験中に使用されるために与えられる。 IIl、コントローラ機能ユニット 図4は機能ブロックとデータバスを有する、図3のネットワーク・インタフェー ス・プロセッサ14のブロック図である。実際には、図示されている以外にもい ろいろなデータ・フロー径路の制御と関係する非常に多くの接続がなされている 。図示されたインタフェースはRAMインタフェース50、ホスト・バス・イン タフェース51及びトランシーバ・インタフェース52を存している。バス・イ ンタフェース5IはEISAバスのために設けられているもので、バス上のマス ター或いはスレーブの何れかとして所定の時に動作する。図4に示された構成に おける各々の機能ユニットについて説明する。 A、 EISAスレーブ・インタフェース54ETSAスレーブ・インタフェー ス54によって、ネットワーク・インタフェース・コントローラによって管理さ れるレジスタ、およびバッファにアクセスするためのEISAホストのバスが提 供される。このモジュールにはコントローラの構成レジスタが含まれており、ル ーティン信号のためにEISAバスの粗コード化を行う。EISAスレーブ・イ ンタフェース54は、コントローラ中に分布している個々のl/ジスタのアドレ ス指定に対する解釈は全く行わない。 EISAスレーブ・インタフェースは、連続的にEISAアドレス・バスを監視 して、構成レジスタ、メモリ・マツプ・ネットワーク・レジスタ、あるいはアダ プタのBiO2ROMがアクセスされているかどうかの判定動作を行う。 更には、EISAハスがメモリ・スレーブ・サイクルを開始する度ごとにEIS Aスレーブ・インタフェースは、サイクル・アービタ56に対してサイクル・リ クエストを通知する。このサイクルが起こると、リクエストが許可されるまでの 間、ホスト・システムは待ち状態となる。 また、EISAスレーブ・インタフェースによって、残りのネットワーク・コン トローラに対する汎用32ビツト・バス、インタフェースが提供される。このイ ンタフェースは汎用的な特性を有しているので、チップの他の部分の再設計を行 うことなしにマイクロチャネルなどのだの種類のバスに対して容易に設計を適合 させることが可能である。 EISAアドレス・バスのビット14−2は、ラッチされて、他のモジュールを 通過していく。ア)・レスの最下位の2ビツト(1,0)は4バイト・イネーブ ルによ−)で表され、これはデータ転送サイクル全体を通して有効である。8ビ ツト・ハイドからなる4つのレーンによってスレーブ・データ・チャネルが構成 される。好適なシステムにおいては、データ・バスは実際には1対の単方向バス から成っており、そのうちの1つか書き込み用として、他方が読み取り用として 用いられる。データ書き込みバスは、スレーブ・インタフェースを介してEIS Aデータ・バスへの接続を必要とする全てのモジュールに対して多重引込みの形 で結線される。読み取りバスは、多重化されRAMインタフェース・モジュール 50中にマスクによって形成される。EISAバスからの書き込みリクエストは 、サイクル・アービタ56からの承認か得られるまで保持てきる。あるサイクル か保持されているとき、アダプタへのそのサイクルが終了する間、EISAバス を待機状懸から開放することができる。第1のサイクルがまた保留中となってい るときに、第2のサイクルがEISAバスから発生されると、保留中の書き込み が実行されるまてEISAハスの開放は延期される。この特定の実施例において は、EJSA読み取りのパイプライン方式による実行はサポートされていない。 また、EISAスレーブ・インタフェースは、EEPROMI 7へのインタフ ェースも提供する。このインタフェースは、EEPROMI7の内容をアダプタ ・メモリに対してリセットした後に転送するように動作する。 EISAスレーブ・インタフェース・モジュール54は、主にEISAバス仕様 のアダプタ構成と関連する多数のレジスタを有している。これらのレジスタは、 アダプタのメモリ・バス・アドレスおよび割り込みレベルのセットアツプ、トラ ンシーバのタイプの選択、BiO2ROMのイネーブルなどを行うのに用いられ る。また、構成レジスタによって、ホストが明確にアダプタの種類を識別し、そ のアダブアを全体的にディスエーブルとする手段が与えられる。 B、ETSAマスター・インタフェース55EISAマスター・インタフェース 55は、アップロードDMA57およびダウンロードDMA58からのEJSA バスを介してのバス主要動作実行リクエストを処理するためのものである。好適 な実施例のDMA動作において用いられるバスト転送の実行においては、EIS Aバスは読み取りと書き込みとを混合して実行することを許容しないので、EI SAマスター・インタフェース55は自発的に保留中のアップロートとダウンロ ード要求との間での仲裁を行う。 バス主要転送は、アップロードDMA57か、或いはダウンロードDMA58か のどちらかによって必ず開始される。この転送は、この転送が終了したときにD MAモジュールによって、或いはEISAバス上の任意の装置の優先使用のため にETSAマスター・インタフェースによって中断させることができる。 このように、EISAマスター・インタフェース56の機能は、アップロードD MA57、或いはダウンロードDMA58のいずれか、或いはこれらの両方から の転送リクエストか保留されているときに、EISAバスへのアクセスに対する 仲裁を行うことである。EISAマスター・インタフェース55は、バス上のア ドレス・スレーブを用いて、第1の転送を行うのに必要な信号の発信を行う。 これによって、ETSAバス定義にしたがった動作が保証される。 また、このモジュールは、アダプタモート論理装置59によってイネーブルされ たときには、リアルモード・セグメントの変換、すなわち、オフセット・アドレ スの20ビツト線形アドレスへの変換も行う。 C9マスター/スレーブ・ユニオン・モジュール53マスター/スレーブ・ユニ オン・モジュール53は、EISAマスター・インタフェース55とEISAス レーブ・インタフェース54とがEISAバスへの接続を共用することを可能に するためのものである。このユニオン・モジュール53は、主に一連の2:1マ ルチプレツクサによって構成されている。 D、 割り込みコントローラ・モジュール60コントローラには、割り込みコン トローラ・モジュール60が含まれている。 割り込みコントローラ・モジュール60は、いろいろな割り込みの実行と、マス クおよびイネーブル/ディスエーブル機構を含む支持動作とを行う。割り込み信 号がコントローラ内部のいろいろなモジュールから発生されて、割り込みコント ローラ・モジュール60まで送られてくる。すると、割り込みコントローラ・モ ジュール60は、この割り込み信号を各種のイネーブルおよびマスクを通過させ てOR動作を実行し、その結果をホスト・バスに送る。 割り込みコントローラ・モジュール60は、割り込みが価値ある事象であるかど うかの検出やホストへの割り込みの承認を行うわけではない。割り込みコントロ ーラ・モジュール60は、ASICに設けられた割り込み処理動作に用いられる 多数のレジスタを含んでいる。 E アダプタ・モード・モジュール59アダプタ・モード・モジュール59は、 コントローラのいろいろな基本動作モートの設定とコントローラのいろいろな状 態の報告とを含む多くの機能を提供するものである。また、アダプタ・モード・ モジュール59は、ホスト・システムが診断に用いるウィンドウ・レジスタのベ ース・アドレスの設定も行う。さらに、アダプタ・モート・モジュール59は、 アダプタのリセット動作を行う。また、このモジュールは、コントローラ内部の いろいろなモジュール及びホスト・システムどの通信のための、デバイスによっ て実行される媒体アクセス・コントローラを識別する媒体アクセス・コントロー ラ識別レジスタを提供する。 F、 サイクル・アービタ・モジュール56サイクル・アービタ・モジュール5 6は、アダプタのRAMに内蔵されているレジスタ或いはASICに内蔵されて いるレジスタへのアクセスを、RAMインタフェース50を介しているいろなレ クエスタ間に分配するためのものである。 これによって、モジュールは優先順位によるオーバラン或いはアンダーランに悩 まされることなく、RAMにタイミングよくアクセスすることが可能となる。 G、 マルチキャスト・コンパレータ・モジュール61図4に示されているコン トローラには、マルチキャスト・コンパレータ・モジュール6■が含まれている 。マルチキャスト・コンパレータ・モジュール61は、アダプタ・モード・モジ ュール59によってイネーブルにされると、受信したフレームの宛先アドレス・ フィールドとマルチキャスト・アドレス・テーブルの内容とをビットごとに比較 する。マルチキャスト・アドレス・テーブルがポストに作成されて、RAM15 に格納される。この比較において、個々のアドレスにもまた同報通信アドレスに も一致が見いだされない場合には、入力フレームは棄却される。 このようにして、マルチキャスト・コンパレータ・モジュール61は、イーサネ ット受信モジュール62と受信DMAモジュール63の動作を監視し、何時新し いフレームが受信されるかの判定を行う。イーサネット・レシーバ62によって 受信され、レシーバの並列インタフェース64に供給された各バイトはマルチキ ャスト・コンパレータ・モジュール61によってシャドーされる。次いで、これ らのバイトは、マルチキャスト・コンパレータ・モジュール61がアクセスする こと力何能なマルチキャスト・アドレス・テーブルの中の存効なエントリーに対 して比較される。 マルチキャスト・コンツルータロ1はいマルチキャスト・アドレス・テーブルの 内容を作成したり、あるいは維持を行ったりすることはない。しかし、モジュー ルは、ホストのテーブルへのアクセスを検出し、RAMインタフェース・モジュ ール50に対して適当なりダイレクション・オフセットを供給する。 H6統計量コントローラ・モジュール65好適なシステムは、また統計量コント ローラ・モジュール65も存している。 このモジュールは、コントローラのその他のいろいろなモジュール、特にイーサ ネット伝送モジュールとイーサネット受信モジュールの動作を監視し、当てはま る事象か発生する度に、RAMl5中に保持されている統計量を更新する。 ■、ダウンロードDMAモジュール58ダウンロードDMAモジュール58は、 データをホストシステムからアダプタ・メモリへバス・マスター・ダウンロード するリクエストを発するためのものである。次に、このデータは、アダプタのオ ンボード送信データ・バッファ内に保管され、直ちに送信するか、或いは後に送 信するかされる。 以下に説明するように、バッファ記述子が定義され、伝送データ・バッファのど れがか利用可能となると、直ちに、ダウンロー1”DMAモジュールはEISA マスター・インタフェース55へのダウンロード・バス・マスター動作リクエス トを受け入れる。ダウンロートDMAモジュール58は、ホストおよびアダプタ のそれぞれの開始アドレスによって、指示されているとおりにデータを整列する ために必要とされるバックとアンパンツクとを含む全てのバイト整列を実行する 。 また、ダウンロードDMAモジュール58は、アダプタのRAMの内部に伝送記 述子リング・バッファを維持するための論理装置を存している。ダウンロートD MAモジュール58は、ダウンロード動作の終了を指示するための割り込みを適 当なモートて発生する。また、ダウンロードDMAモジュール58は、伝送りM Aモノニール67に、いつ伝送を開始するへきかを伝える。ダウンロードDMA 動作に必要となるいろいろなレジスタについては、以下に説明するが、これらの レジスタは、本発明のデータのバッファリング処理に直接必要となるものである 。 J、 伝送りMAモジュール67 伝送りMAモジュール67は、ダウンロードDMA論理装置58の指示に従って 、伝送記述子バッファから、或いは伝送データ・バッファから、或いはこれらの 両方からのバイトを、以下に説明するようにフェッチする。さらに、フェッチさ れたバイトは順次イーサネット伝送モジュール66に供給される。 こうして伝送りMAモジュール67は、伝送記述子リング・バッファの内容を読 み取って、即値データの内容と伝送すべきフレーム全体の長さを判定する。もし 、指定されたフレームがネットワーク仕様と合わない場合、例えば802.3の 最小値よりも短く、且つアダプタがそのようにイネーブルされているような場合 には、このモジールは、無定義のデータ・バイトをパッディングしてイーサネッ ト伝送モジュール66にさらに供給する。 C3MA/CDネットワークにおける衝突再試行は、伝送りMAモジュール67 によって処理される。衝突かイーサネット伝送モジュール66から通知された場 合には、伝送りMAモジュール67はバッファ中のフレーム記述子を再解釈する ことによって、同しフレームの再受入れを行う。 もし、可能であるならば、また伝送終了条件が満たされている場合には、伝送終 了割り込みが発生されて伝送りMAモジュール67の割り込みコントローラ60 による処理が行われる。 また、伝送が終了すると、伝送りMAモジュール67は、アダプタの送信記述子 リング・バッファに適当なフレーム状態を記憶する。 また、伝送に利用可能なデータがショートフォールを起こすと、伝送りMAモジ ュール67はアンダーラン条件を検出する。 伝送りMAモジュール67の動作に必要なレジスタについて再度さらに詳細に説 明する。 K、イーサネット伝送装置モジュール66イーサネツト伝送装置モジユール66 は、802.3標準ネツトワークのための伝送に関連する媒体アクセス制御機能 を提供する。このモジュールは、伝送りMAモジュール67から並列データバイ トを受取り、802.3のアクセス規則を適用して直列データを外部エンコーダ /デコーダ・チップに対して供給する。 L、イーサネット受信装置モジュール62同様に、イーサネット受信装置モジュ ール62は、本質的に802.3を具現化したものである。このモジコールは外 部エンコーダ/デコーダから直列データを受取り、そのデータに対して802. 3の規則を適用して並列形式のデータを生成し、受信DMAモジュール63の使 用に供する。このようにイーサネット伝送装置66とイーサネット受信装置は標 準C3MA/CD動作を実行する。 M、 受信DMAモジュール63 受信DMAモジュール63は、伝送りMAモジュール67と相補的な動作を行う ものである。このモジュールは、イーサネット受信装置62がら並列データバイ トを受取り、これをアダプタの受信リング・バッファに保管する。 受信DMAモジュール63は、イーサネット受信装置から受け取ったバイトを3 2ビツト・ワードにアッセンブルしてからアダプタのRAMに格納するようにす るためのものである。フレームの受信終了時点において、フレームの状態と長さ が受信リング・バッファ内に記憶され、ホストシステムの使用に供される。 また、以下に説明するように、受信DMAモジュール63は、アダプタのRAM 内に受信バッファ・リングを形成して、これを保持する。更に、「ルック・バッ フアコレジスタを配置することによって、以下に説明するように、受信DMAモ ジュール63によって処理された受信データをホストが見ることか可能にされる 。 また、受信DMAモジュール63は、割り込み通知信号を適当な条件のもとで処 理する。 N アップロートDMAモノ1−ル57アツプロードDMAモジトル57は、R AMインタフェース50を介して受信バッファからホストシステムへのデータの 転送を行う。従って、受信リング・バッファは、受信DMAモジュール63によ って管理され、またアップロートDMA57によって解釈が行われる。実際のバ ス・マスター転送は、EISAマスター・インタフェース・モジュール55によ って実行される。 アップロードDMAモジュール57は、受信DMAモジュール63によって受信 リング・バッファに記憶された、受信フレームの位置と長さを含むデータ構造の 解釈を行う。またアップロードDMAモジュール57は、ホストシステムが定義 した転送記述子を読み取って、何バイトのフレームを転送しようとしているのか 、およびそのフレームをホスト・メモリのどこへ転送しようとしているのかを判 定する。 ホストの有効な転送リクエストに応答して、アップロードDMAモジュール57 は、EISAマスター・インタフェース・モジュールからのバス・マスター・サ イクルを行うようにリクエストする。 また、アップロードDMAモジュール57は、受信DMAモジュール63じよア ップロードDMAモジュール57との間でのインターロックを用いてホストシス テムへの転送速度を低減し、受信DMAモジュール63を介して受信されたフレ ームが先走ることを防ぐ。最後に、このモジュールは、転送終了を示す割り込み を生成し、ホストの使用に供する。 0、RAMインタフェース・モジュール50RAMインタフェース・モジュール 50は、RAMのアドレス指定を行うのに必要となるいろいろな動作のためのマ ルチプレクサとマスクとを提供するものである。このモジュールは、いろいろな アドレスとデータソースをいっしょに多重化して、RAMのアクセス・サイクル のためのパラメータを形成するものである。 このモジュール50は、ホストシステムが読み取ることができるコントローラの いろいろなその他のモジュールからデータを寄せ集めるものである。更に、この モジュールは、データに対してマスクを施して用いられない上位ビットを強制的 にゼロとし、データ・ワードをラッチしてマルチサイクル読み取りを行う。 P、JTAGモジュール 図示されていないか、コントローラには、JTAGモジュールが含まれている。 これは1990年5月21日のIEEE標準1149.11990に定められて いる状態機械を具現化したものである。このモジュールによって、製造において 、ASICのビンのスキャン・テストか可能となる。 Q、 自律アクセス・アドレス・バス定義マルチキ4・スト・コンパレータ61 、統計量コントローラ65、ダウンローFDMA58、伝送りMA67、受信D MA63、EISAスレーブ・インタフェース54、およびアップロードDMA 57は、全て自律アクセス能力をRAMインタフェース50を介してアダプター のRAMに要求する。自律アクセスはホスト・バス上に発生する全てのサイクル と無関係に発生するものである。 この要求は、RAMインタフェース50によって使用するためのアドレス情報を 発生し、通信するの能力を要求する。受信DMA63、伝送りMA67およびダ ウンロー ドDMA58に対す場合、能力はオフセットバスを作動するDMA論 理装置によって含まれている。自律アクセスに専用の同様なオフセットバスは統 計量コントローラ65、アンプロードDMA57及びマルチキャスト・コンパレ ータ61によって使用のために提供される。 図4Aは自律アクセス・アドレス・バスの構造を図式的に定義している。いろい ろな機能的なモジュールには、図4に示されたと同し参照番号が与えられている 。 マルチキャスト・コンパレータ61は、マルチキャスト・アドレス・テーブル内 の個々のロケーションをアドレスするためのRAMインタフェース50に可変オ フセットを供給するために、マルチキャスト・オフセット・バス(6: 2)を ドライブする。有効な値は関連する自律アクセス・サイクル中に表わされる。 統計量コントローラ65は、アダプタのRAMの統計領域内の個々のロケーショ ンをアドレスするためのRA〜1インタフェース50に可変オフセットを供給す るために、統計量オフセット・バス(7: 2)をドライブする。有効な値は関 連する自律アクセス・サイクル中に表わされる。 アップロー)”DMA57は、受信バッファ・リング内の個々のロケーションを アドレスするためのRAMインタフェース50に可変オフセットを供給するため に、アップロードDMAオフセット・バス(14: 2)をドライブする。有効 な値は関連する自律アクセス・サイクル中に表わされる。 ダウンロードDMA58は、自律サイクル中にRAMの伝送バッファ/伝送記述 子領域へ可変オフセットを供給するためにダウンロードDMAオフセット・バス (12: 2)をドライブする。ダウンロードDMA論理装置58によって発生 された2つの選択信号は2つのRAM領域間を区別するために用いられる。また 、ダウンロードDMA58は、ダウンロードDMA58からRAMインタフェー ス50へ延びている32ビツト・データ・バスのとのバイト・レインが有効なデ ータを存しているかを示すために、ダウンロードDMAバイト・イネーブル〔3 :0〕を発生する。有効な値は関連する自律サイクル中に表わされる。 受信DMA63は、RAMの22にバイト受信バッファ領域内の可変オフセット を運ぶために受信DMAオフセット・バス(14: 2)をドライブする。 最後に、伝送りMA論理装置は、自律サイクル中のRAMの伝送バッファ/伝送 記述子領域へ可変オフセットを供給するために、伝送りMAオフセット・バス( 12: 2)をドライブする。伝送りMA67によって発生された2つの選択信 号は2つのRAM領域間を区別するために用いられる。 IV、伝送および受信におけるデータの流れとデータ構造図5は、本発明のアダ プタにおけるデータの流れを図示したものであり、特にホスト・インタフェース 、アダプタ・メモリ、およびネットワークのインタフェースについて伝送および 受信におけるデータの流れを強調して示したものである。 先にも述べたように、ホストシステムは、ホストバスのアドレスによって定義さ れるホストメモリ空間(全体を100として図示)を有している。このホストメ モリ空間のあらかじめ指定されたブロック101が、アダプタのインタフェース ・アドレスのために確保される。アダプタは、ホスト・バスを介したアダプタ・ インタフェース・アドレス・ブロック101内へのアクセスに対して応答するホ スト・インタフェース+02を含んでいる。また、アダプタには、ホストから独 立したメモリ103が含まれている。ホスト・インタフェースは、指定されたア ドレス・ブロック101と独立メモリとの間での転送データの動作を行う。また 、アダプタは、アダプタ・メモリに接続されているネットワーク・インタフェー ス論理装置104を含んでいる。ネットワーク・インタフェースは、独立メモリ 103の中のバッファおよびネットワーク・トランシーバ105からのデータ転 送の管理を行う。ネットワーク・トランシーバ105は、データをネットワーク 媒体106に対して供給する。 ホスト・インタフェース論理装置は伝送処理において用いられる伝送記述子論理 装置とダウンロードDMA理装置(全体を107として図示)、および受信処理 において用いられるビュー論理装置、転送記述子論理装置、およびアップロード DMA論理装置(全体を108として図示)を有している。基本的には、これら のモジュールはホスト・システムによるアダプタ・インタフェース・アドレス・ ブロック101への読み取り/書き込みに応答して、独立メモリ103とホスト とのあいだのデータ通信の管理を行うものである。これによって、ホストは受信 および伝送動作におけるアドレスの翻訳とバッファの管理動作とから全く開放さ れる。 ネットワーク・インタフェース論理装置104は、伝送りMA論理装置(総括的 に109として図示)と受信DMA論理装置(総括的に110として図示)とを 有している。伝送りMA論理装置109は、以下に説明するようにアダプタ・メ モi月03に記憶されている記述子に応じて、データを独立アトブタ・メモリ1 03から取り出して、ネットワーク・トランシーバ105に移動させる。同様に 、受信DMA論理装置110は、データをネットワーク・トランシーバ105か ら独立アダプタ・メモ1月03中に移動させる。このように、ネットワーク媒体 106からのすべてのデータ通信は、ホストから独立したメモ1月03に直接的 に結合される。次に、ホスト独立メモ1月03からの通信は、ホスト・メモリ空 間のメモリ・マツプ領域に応じて、ホスト・インタフェース論理装置+02によ って制御され、これによりネットワークとの通信に必要なプロトコル・ソフトウ ェアか非常に簡略化されるのである。 図6は、ホスト・インタフェースによって使用されるホスト・アドレス・ブロッ ク+01のマツプの略図である。好適なシステムでは、このブロック内のアドレ スは、ホストにとってはホストのアドレス空間の連続した8にのブロックのメモ リ・マツプ・レジスタのように見える。 EISAの実施例の場合は、ブロック101の中の「レジスタ」あるいはマツプ された領域は、倍長ワードのアドレスごとに区切って配置されており、従ってア ドレスは40倍数となっている。多くの「レジスタJが倍長ワードの数倍(50 9もの大きな量)のメモリ空間を占める。 「レジスタ」は、ホストのアドレス空間の任意のあらかじめ指定されたブロック にメモリマツプされているが、ホスト・システムがこれらのレジスタに対して実 行する読み取りあるいは書き込みは、実際には、直接的にアダプタ・メモリに対 してアクセスがなされる訳ではない。メモリ・マツプ空間へのアクセスは、ホス ト・システムに対して透過的なホスト・インタフェース論理装置104によって 翻訳されて実行される。従って、アダプタのメモリは、ホストのアドレス空間お よびホストの管理から独立している。図6は、これらのレジスタへのアクセスに 用いられるホスト・アドレス空間のマツピングの概略を示したものである。これ らのレジスタに含まれる主要なものとしては、0010 (hex)のオフセッ ト位置の伝送領域レジスタ(trawit area register) ( XM IT AREA) 、0800(hex)のオフセット位置の転送領域レ ジスタ(transfer area register)(XFERAREA ) 、およびl OQC(hex)のオフセット位置のルック・バッファ(LO OKBUP)がある。状態、統計量、情報、および指示レジスタが、多数、領域 内にバランスして分布している。 rXMIT AREAJ レジスタは、ホストが伝送記述子をアダプタに書き込 むために用いられる。伝送記述子については、以下に詳細に説明するが、コンパ イルしてフレームとして伝送すべきデータを識別するデータを含んでおり、また 即値データを含むことができる。0010(heX)のオフセット位置のrXM IT AREA、Jは、はぼ2にハイドのサイズを有している。このデータは、 以下に説明するように、独立アダプタ・メモリの中の伝送記述子リングにマツプ される。 アダプタ・インタフェース・ホスト・アドレス・ブロックの中の0800(he x)のオフセット位置のrXFERAREAJは、およそIKバイトのバッファ であり、これを介して転送記述子かアダプタの独立メモリに書き込まれる。 100C(heX)のオフセット位置(7)rLOOKBUFJ It、およそ 2にバイトのバッファであり、これによってホストの独立アダプタ・メモリ内の 受信リング・バッファへのリード・オンリー・ウィンドウが提供される。受信プ ロセスの詳細は、 [ホストから独立したバッファ管理によるネットワーク・イ ンタフェース」と題する出願に述べられている。 図7は、アダプタのホスト独立メモリのマツプを示したものである。このメモリ 構成は、独立メモリの中のオフセット0の位置のおよそ3にバイトの伝送データ ・バッファ、オフセット0COO(hex)の位置のおよそ5にバイトの伝送記 述子リング、オフセット2000(hex)のおよそ22にバイトの受信バッフ ァ・リング、およびオフセット7800(heX)の位置のおよそIKバイトの 転送記述子領域とから成っている。メモリの中の最後の3領域には、アダプタの 使用に供されるアダプタ情報、ネットワーク統計量、およびマルチキャスト・ア ドレス・テーブルが記憶される。 好適なシステムにおいては、アダプタは、伝送バッファ、受信バッファ、統計構 造、およびいろいろな状態レジスタと統計量レジスタのために32にバイトのS RΔM(スタティックRAM)を用いる。図5に定義されているアダプタのメモ リの中のい(っかの領域によって被定義データ構造が提供される。 A、 伝送データ・バッファ 上記のように、伝送データ・バッファは、3にバイトを占める。この領域は、2 つの1.5にバッファに分割される。これらのバッファは、バス・マスター転送 によってアダプタにダウンロードされるデータだけを記憶する。コントローラは 、伝送データ・バッファと伝送記述子の即値データ部分の両方の内容を用いれフ レームをカプセル化して伝送する。アダプタは、起動時のデフオールドとしてメ モリの基底に最も近いバッファを選択し、その後は自動的にバッファの使用を変 更していく。 伝送バッファは、ダウンロードDMA論理装置と伝送りMA論理装置とによって 共同使用される。伝送りMA論理装置は、バッファOからバッファlに切り換え たり、あるいは元に戻したりすることか自由にできる。唯一存在する制約は、伝 送開始スレッシュールド・レジスタによってさだめられる伝送データの使用可能 性である。伝送りMAモジュールは、ある1つの伝送を終了したときにはいっで も1つのバッファから他のバッファへ切り換わることができる。このバッファの 切り換えは、伝送が成功したかどうかとはかかわりなく、また、前回の伝送にお いてマスター・ダウンロード・データが用いられていたかどうかとはかがわりな く起こる。 ダウンロードDMAモジュールは、切り換わろうとしている相手のバッファが伝 送りMAモジュールによって用いられていない場合においてだけ、あるバッファ から他方のバッファへ切り換わることができる。ダウンロードDMAは、伝送記 述子の処理を終了する度ごとに、以下に説明するように、直前の記述子中に何ら かのバス・マスター動作が呼び出されていたかどうかにはかかわりなく、あるバ ッファから他のバッファに切り換わろうと試みる。ただし、伝送りMAモジュー ルが使用中のバッファに切り換わらない。 B、 伝送記述子 伝送記述子は、伝送を保留しているフレームを定義し、また伝送されたフレーム の状態を保持するものである。これらの記述子は可変長であり、上記のように5 にバイト・リング・バッファに連続的に配置される。最初に配置される記述子は 倍長ワードごとに区切られて配置されなければならない。図8aに伝送記述子の データ構造を示す。 伝送記述子領域に記述されるエントリーの全体の内容は、ホスト・プロセッサか ら図6に示されている「伝送領域Jを介して供給されるデータをそのまま丸ごと コピーしたものである。しかし、 「伝送プロトコル識別子」と[伝送フレーム 状態Jレジスタのフォーマットを要求に応じるため、またフレーム伝送とバッフ ァ管理に関する充分な情報を供給するために、1つの値を再配置し、また幾つか を自動的に保存することが必要である。 ホスト・プロセッサの「伝送領域」への書き込みは、最初に書き込まれる値、即 ち[伝送プロトコル識別子」と「伝送リクエスト処理Jの値がリング内の次に利 用可能なデータ構造内の5番目の32ビツト・ワードの位置(10(hex)の オフセット位置)で終わるように、アダプタによって自動的にオフセットがかけ られる。これは「伝送リクエスト処理Jの値が[媒体アクセス・コントローラ識 別子」の値に予約されている場所にホストによって書き込まれることを意味して いる。「伝送リクエスト処理」の値がアダプタのRAMに書き込まれると、アダ プタは直ちに、5番目の32ビツト・ワード記憶場所の最下位16ビツトの内容 を4番目の32ビット・ワード記憶場所の最上位16ビツトにコピーする必要が ある。[伝送リクエスト処理Jのコピーを行った後に、アダプタは「媒体アクセ ス・コントローラ識別子J (MACID)の値を[「媒体アクセス・コントロ ーラ識別子J 1./ジスタから検索して、これを「伝送リクエスト処理」によ って空けられた場所に書き込む。フレームの送信が終了した後に、4番目の32 ビツト記憶場所(C(hex)のオフセット位置)の最下位16ビツトが伝送フ レーム状態に置き換えられる。 「次の記述子ポインタ」のエンi・リ−は、[送信バッファ・カウント」と「伝 送即値長さ」の値がアダプタによって更新することができる。 「伝送領域」レジスタに書き込まれるデータは正確な順序で正しい位置に書き込 まれるようになされるので、これらの2つの値の書き込みは容易に検出すること が可能であり、これらを用いて、値をRAMから検索する必要なしに、次の記述 子の開始の判定に必要とされる記述子のサイズを算出することができる。 最後の「伝送データ長」の値がアダプタに書き込まれてしまえば、フレームの長 さを算出して、これをデータ構造の「フレーム長」の位置を保管することが可能 である。またこの値は、ホストが直ちに使用できるように、コントローラ・チッ プの中の「伝送フレーム長」レジスタにコピーされる。 11下の数ハラグラフにおいて、伝送記述子データ構造の各フィールドについて 定義する。 [次の記述子ポインタ」の値は、次の記述子の最初のワード゛を指し示すもので ある。この値は、ホストが「伝送待ち行列状態」を読み取ると直ちに更新される 。 定義された1次の記述子ポインタ」は、これによって指し示された場所か妥当な 記述子を含んでいるということを必ずしも意味するものではない。これは、単に 次の妥当な記述子が定義されるとしたら、これをとこに発見することができるか を示すだけに過ぎない。 「フレーム長」フィールドはアダプタによって計算されて更新される。フレーム の長さは、「伝送データ長」の値と「伝送即値長さ」の値とをすべて計算するこ とによってめられる。この結果として得られる和が伝送フレームの全バイト数で ある。もしもこの和が802.3最小フレーム長よりも小さい場合には、和を最 小−ム長の値と等しくなるように設定する。この和は、伝送記述子の「フレーム 長」の行に書き込まれ、 「伝送フレーム長」レジスタを介してホストが利用で きるようになされる。 「伝送失敗」フィールドは、伝送が終了した後にイーサネット・トランスミッタ から寄せ集めた状態ビットからなるエラー・コードを含む。このフィールドは「 伝送失敗」レジスタにマツプされ、ホストがアクセスできるようになされる。 「伝送リクエスト処理」の値は、伝送りMAコントローラによって解釈され、関 連するフレームの伝送の試みが終了したことの指示信号を発するべきかどうかが 判定される。もし、このフィールドがゼロでなければ、指示信号が発せられる。 また、伝送記述子リングの中のフレームのエントリーは、ホストが伝送状態を調 べることができるようになるまで保持される。指示信号が発せられているときに は、 「伝送リクエスト処理」、 「伝送状態」、 [伝送プロトコル識別子」 、 [媒体アクセス・コントローラ識別子」の各フィールドをホストが利用可能 なようになされる。もし、「伝送リクエスト処理」がゼロである場合には、ホス トに何らかの指示を行うことなく、伝送終了後に伝送記述子待ち行列エントリー が破棄さある。伝送アンダーライン状懸は、 [伝送リクエスト処理」がゼロで あるかどうかにはかかわりなく通知される。 「伝送状態」フィールドは、関連するフレームの送信状態を含むものである。 このフィールドの内容は、伝送の試みが終了した直後に更新される。リターン・ コードが「伝送状態」レジスタ定義に定義される。 このフィールドの[伝送プロトコル識別子」の値は、伝送が終了したときに、ホ ストがフレームと係わる特定のプロトコルを識別するのに使用するためたけに  −待ち行列内に維持される。このようにすることによって、複数のプロトコルを 同時にもちいることが可能となる。[伝送プロトコル識別子」と「伝送リクエス ト処理」の両方によって、アダプタを通過するフレームが一意的に識別される。 「媒体アクセス・コントローラ識別子」は、 「伝送プロトコル識別子」と同様 に、待ち行列中に保持されて、イ云送終了時に使用される。しかし、ホストはこ の値を「伝送領域J [/ジスタを介してアダプタに書き込むことはしない。そ うではなく、ホストはこの値をいったん「媒体アクセス・コントローラ識別子」 レジスタ中に記憶し、その後、この値を、 [伝送リクエスト処理」がその最終 的な位置にコピーされた後に、アダプタに応じて記述そデータ構造中に保管する 。 [伝送バッファ・カウント」フィールドの内容は、ホストが「伝送領域」へ書き 込むことによって供給される。このフィールドは、伝送フレームを構成するのに 用いられるホストのメモリ内のバッファの数を指定する。各バッファは、2つの 伝送データ・バッファのうちの1つが利用可能となると、直ちにホストのメモリ からアダプタの伝送データ・バッファにリストされた順序に従って転送される。 もしも[伝送バッファ・カウント」がゼロである場合には、このフレームに対し ては、バス・マスター動作は実行されない。 「伝送即値データ長」フィールドはホストから「伝送領域Jに対する書き込みに よって定められ、ホストから供給されようとしている「即値」データのバイト数 を表すものである。このフィールドがゼロである場合には、次の32ビツト・ワ ード位置が最初のホスト・データ・バッファ記述子を含んでおり、バス・マスタ ー・サイクルにおいてフレーム全体がアダプタに転送される。「伝送即値データ 長」の値は、必ずしも4の倍数である必要はない。最初のホスト・データ・バッ ファ記述子の位置は次のように定められる。 記述子オフセット=((伝送即値データ長)+3)&fffc (hex)+1 8 (hex)可変長の「即値データ」フィールドは、ホストが「伝送領域」へ のメモリ書き込みを用いてアダプタに保管する即値データを含む。このフィール ドの長さは0から1.514バイトの範囲で変わる。即値データは、伝送に際し て、アダプタによって伝送フレームのプリアンプルと伝送バッファ・データ(も し存在すれば)との間に挿入される。一般に、即値データは宛先アドレス、発信 元アドレス、およびプロトコル特有のヘッダー・データで構成される。しかし、 伝送フレーム全体を即値データであると見なすこともできる。このようにすると 、アダプタは、伝送フレームの残りをヘエッチするためのバス・マスター動作の 実行が全く必要な(なる。「伝送即値データ長」がゼロである場合には、このフ ィールドはスキップされて、フレーム全体がホスト・メモリ中のデータ・バッフ ァ中に存在するものと仮定される。もし、「伝送即値データ長」が倍長ワードの 整数倍以外の長さを指定している場合には、ホストは最も近い40倍数に丸めて 、そのバイト数だけ書き込みを行うことができる。「伝送即値データ長」を越え る余分のバイトは無視され、伝送フレームの一部として含まれることはない。 「伝送即値データ長」フィールドは、ホスト・データ・バッファ記述子当たりの 2つのエントリーのうちの1つであり、関連するホスト・バッファのバイト・数 を定義するものである。この値は4の倍数である必要はない。 32ビツトの「伝送データ・ポインタ」の値は、関連するホスト・データ・バッ ファの物理開始アドレスである。この値は4の倍数である必要はない。 ■、 伝送処理 図9は、アダプタ上の独立メモリ内の伝送データ・バッファと伝送記述子リング ・バッファの管理に用いられるネットワーク・インタフェース・ロツジクとホス ト・インタフェース論理装置とについて示したものである。ホスト・インタフェ ースの側の論理装置には、ホスト記述子論理装置150とダウンロードDMA論 理装置151とが含まれる。ホスト記述子論理装置150およびダウンロードD MA論理装置151は「伝送領域」レジスタ、[伝送終了スレッショルド」レジ スタ、 「伝送失敗」レジスタ、 「伝送フレーム状態」レジスタ、[伝送プロ トコル識別子」レジスタ、 「伝送待ち行列状態」レジスタ、 「伝送開始スレ ッショルド」レジスタ、を含む伝送“レジスタ”を介してホスト・アドレス空間 に接続される。これらのレジスタの詳細については以下に説明する。 図8aに示されている記述子は、アサブタのホストの独立RAMの伝送記述子領 域に、ホストにはる「伝送領域」アドレス・ブロックへの書き込みによって記憶 される。3つの異なった処理が、記述子待ち行列のエントリーに対してなされる 。ホストは、最初に伝送記述子を作成するための書き込みを行い、バッファのデ ータをホストのメモリから伝送データ・バッファに移動させるためのバス・マス ター・ダウンロード、および記述されたフレームのネットワークへの伝送を行う 。最初の2つの処理は、ダウンロードDMA論理装置151およびホスト記述子 論理装置150において行われる。伝送は、伝送りMA論理装置155によって 実行される。伝送記述子リング・バッファ152内の記述子の数と状態とは、ホ ストの書き込み、ダウンロード、および伝送処理の相対速度に従ってアダプタの 動作過程において変化する。 ダウンロードDMA論理装置151ないの2つの変数によって伝送記述子待ち行 列の状態が記述される。「ゼロ・ダウンロード保留」は、ダウンロードDMA論 理装置151によるダウンロード処理が未だ行われていない完全フレーム記述子 が存在しないことを示すものである。「ゼロ・フレーム存在」変数は、すでにダ ウンロード処理が終了したけれども伝送がすんでいない記述子が存在しないこと を示す。 これらの伝送機構を構成している3つの処理の各々が記述子待ち行列を指し示す それぞれのポインタの集合を保持する。 ホスト記述子論理装置150は、アダプタ・メモリ上の伝送記述子リング・バッ ファ152のポインタの生成を行う。これらのポインタは、現在のホスト記述子 ポインタ“CHD“およびホスト書き込みポインタ“HW”として表されている 。現在のホス1〜記述子ポインタCHDは、ホストによって現在書き込みが行わ れているか、あるいは書き込まれようとしている記述子のベース・アドレスを指 し示す。ホスト書き込みポインタHWは、(CHDポインタが指し示している) カレント記連子内のホストが次に書き込みを行おうとしている位置を指し示す。 すなわち、HWポインタは、ホストがカレント記述子を完成するために書き込み を行おうとしている「伝送領域Jアドレス・ブロック内のオフセットを予測する ものである。 ホスト・システムから「伝送データ・バッファ0J153と[伝送データ・バッ ファIJ154へのダウンロードを管理している間に、ダウンロードDMA論理 装置151は3つのポインタとバッファ選択信号を生成する。ダウンロードDM A論理装置151によって生成さたポインタはバス・マスター・ダウンロードD MA論理装置151によって現在処理されている記述子のベース・アドレスを指 し示す現在のダウンロード記連子ポインタCDDを含んでいる。ダウンロードD MA論理装置によって生成される第2のポインタは、現在の伝送データ・バッフ ァ(「伝送データ・バッファ0」または「伝送データ・バッファl」のいずれか )内のダウンロード処理によってデータが書き込まれている位置を指し示すダウ ンロード・ポインタDDを含む。ダウンロードDMA論理装置151によって生 成される第3のポインタは、カレント・ダウンロード・バッファCDBポインタ を含む。CDBポインタは、CDBポインタによって指し示されている伝送記述 子内の、現在ダウンロード処理がなされているホスト・メモリの仕様が存在する バッファ記述子を指し示す。 また、ダウンロードDMA論理装置は、バス・マスター動作において、ダウンロ ードDMA論理装置からデータの転送を行う相手先のカレント伝送データ・バッ ファ153と154を、発見的に示されているように、信号BUFI10を用い て選択する。 伝送りMA論理装置+55は、伝送処理のための3つのポインタの生成を行う。 これらのポインタのうちにカレント伝送記述子CXDポインタが含まれるが、こ のポインタは、伝送論理装置155によって現在処理が行われている、伝送記述 子リング・バッファ152内の記述子のベース・アドレスを指し示すものである 。 伝送読み取りXRポインタは、カレント記述子あるいはカレント伝送データ・バ ッファ(153または154)ないの、伝送処理において、伝送すべきデータの 読み取りが行われている位置を示すものである。 伝送末端ポインタ(XT)は待ち行列のバックエンドを指し示すものである。 このXTポインタは、伝送をすでに終了したけれともステータス情報がホストシ ステムによって読み取られていないフレームが存在する場合には、CXDポイン タではなく伝送記述子リング・バッファ12内の古い記述子を指し示す。 好適なシステムにおいては、ホストに対する伝送終了指示信号の生成に関して2 つの動作モードが存在する。以上のパラグラフにおいて説明したホスト書き込み 、バス・マスター・ダウンロード、および伝送処理に関連するデータ構造におい て、「ダウンロード伝送終了」変数が偽である場合には、伝送が終了したときあ るいは「伝送終了スレッショルド」 (以下に説明)が満たされたとき(こ、指 示信号の発生が行われる。一方、「ダウンロード伝送終了」が真である場合(二 番よ、ダウンロードDMA論理装置151は、状態の読み取りがまだ行われて0 なし1フレームの追尾を行う。このモードでは、ホストは、フレームのダウンロ ードにおおいて、フレームの伝送終了指示信号を受け取る。従って、ホストがそ の指示信号に応答することができるようになる以前にフレームを伝送すること力 (可能である。 このような状態においては、 [伝送末端」はもはや記述子リング・)<・ソフ ァな(1の最も古い有用なエントリーを定義することができなし1゜従って、フ レーム状態処理が必要である。フレーム状態ポインタFSは、このモード(こお し1て、ホストによる状態の読み取りがまだ行われていない最も古0記述子のベ ース・アドレスを指し示すものである。FSポインタは伝送処理と関連するもの であるので、図9の伝送りMA論理装置155に示した。しかし、好適なシステ ムにお0て番よ、1(Sポインタは、ダウンロートDMA論理装置151の方に 論理的な接続力くなされる。 また、伝送りMAは、カレント伝送フレームを構成するカレント伝送データ・バ ッファ103あるいは104を、発見的に図示されてし)るよう(こ、信号BU FO/1を用いて選択する。 ホストからアダプタへのインタフェースを見ると、あた力1も、あら力Aじめ指 定されたアドレス・ブロックの1組のレジスタの集合である力1のよう(二見え る。伝送に必要となる重要な゛レジスタ“について次にその概要を説明する。 Δ、 伝送領域 このレジスタの目的は、ホストがアダプタに対して、(もし残りのフレーム力く あるとしたら)即値データとホストのメモリ・システムのと°こ(こ残りのフレ ームか存在するかを表すデータ構造を供給するための機構を提供することである 。アダプタはこの情報を伝送記述子リング12内に記憶し、記述されてしするこ のフレー1、か最終的に伝送できるようになったときに用し)る。 アダプタは、データが書き込まれているアドレスと書き込まれている順序とから 、そのデータが何を表すのかを判定する。アダプタへのデータの書き込みは、図 6に関連して先に説明した構造と順序とを用いて行われねばならない。 バス・マスター・ダウンロードは、記述子が「伝送領域」に書き込まれ、[伝送 待ち行列状態」 (以下に説明)がホストによって読み取られた後に、開始され る。 いったん、ホストが伝送記述子バッファ構造の「伝送領域」への転送を終了して しまうと、ホストは、 「伝送フレーム長」を読み取って、ホストが伝送フレー ム内に含むように指定したバイト数を判定することができる。次に、 [伝送待 ち行列状態」を読み取り、他のフレームをこのレジスタに書き込むことが可能な ようにCHDポインタを進めることが必要である。「伝送待ち行列状態」の読み 取りの後において、「伝送領域」が再び満たされるまで、「伝送フレーム長」は 無定義状態となる。 ネットワークへの実際のフレームの伝送は、次の2つの条件が満たされたときに 開始する。: (1)フレーム全体がアダプタのRAMへコピーされたとき、[ 伝送開始スレッショルド」 (後に説明)条件がみたされているか、あるいは[ 伝送開始スレッショルド」がゼロである場合。(2)以前から待ち行列状態にあ るリクエストが存在しない場合。もし、 「伝送開始スレッシタルト」バイト以 上の即値データが「伝送領域」に書き込まれた場合には、[伝送待ち行列状態」 を読み取る前に開始される。 ホストがデータを「伝送領域」に書き込んでいるときに、アダプタが「伝送領域 」の資源を使い果たしてしまった場合には、ホストが「伝送待ち行列状態」の読 み取りを行ったときに、ホストに対して6の値が戻される。記述子バッファの容 量を越えた書き込みはアダプタにすでに待ち行列状態にあるデータには何らの邪 魔することはないてあろう。 伝送フレーム宛先アドレスおよび発信元アドレスは、ホストからの各伝送フレー ムごとにアダプタに対して、明示的に供給されなければならない。この情報は、 即値データの一部として供給するともてきるし、あるいは、もし即値データが存 在しない場合には、記述子に指定された最初のデータ・バッファの最初の12バ イトとして供給するようにもできる。 本質的に、ホストは、フレームの各バイトの供給を「伝送領域」レジスタを介し て、あるいはダウンロードDMA動作によって、フレーム・デリッミタの初めと フレーム検査シーケンス(CRC)との間に行う。 B、 伝送終了スレッショルド [伝送終了スレッショルド」は、伝送終了の早期指示信号のためのものである「 伝送終了スレッショルド」レジスタは、アダプタが「伝送終了」指示信号を発す る前に伝送すべき、あるいはアダプタへダウンロードすべき(アダプタ・モード に依存する)残りの伝送バイト数を指定するのに用いられる。このレジスタは1 0からOまでのビットだけで具現化される。もし、最大フレーム長よりも大きな 値が与えられると、この動作は正しく機能しない。この機能をディスエーブルす るときには、レジスタをOにセットすればよい。[伝送フレーム長」の値(以下 を参照のこと)はどこで伝送フレームが終わるのかを判定するのにもちいられる 。 もし、このスレッショルドが大きすぎる値に設定されていると、アダプタが指示 信号に応答してしまう。もし、 「伝送フレーム状態」がff(hex)を返し た場合には、指示信号をわずかに遅らせるように[伝送終了スレッショルド」レ ジスタの値を低減することによって実現される。このレジスタの動作は、フレー ムの最初の60バイトを伝送している間、ディスエーブルとされる。このレジス タはリセットによって0にクリアされる。 C1伝送失敗 「伝送失敗」は、伝送失敗の原因を返す。 このレジスタは、待ち行列中で待機していたフレームの伝送失敗原因を返す。 0以外の値か返されたときには、伝送の試み中に1あるいはそれ以上のエラーに 遭遇したこを示す。 このレジスタの各ビットは以下のように定義される。 ビットODMAアンダーラン ビット1 キャリアの不検出 ビット2 最大衝突 ビット3 SQEテスト失敗 このレジスタは、フレーム伝送の試みが成功したか失敗したかにかかわらず有効 なデータを含む。失敗がなりかた場合には、このレジスタはその値として0(h  e x)を含む。このレジスタの内容は、フレームの送信が終了しく「伝送フ レーム状態」の低位バイトがff(hex)以外の値となる。)、「伝送プロト コル識別子」が読み取られる前において有効である。 データにアンダーラインが発生した場合には、宛先のデバイスが確実にそのフレ ームを不良フレームとして受取り、これを棄却するように、アダプタは強制的に そのフレームの送信中にCRエラーを発する。 D、伝送フレーム長 「伝送フレーム長」は、伝送すべきバイト数を返す。 レジスタは、待ち行列中でCXDポインタによって示される現在の位置の伝送フ レーム記述子による伝送を待機している総バイト数を返す。この値は、即値デー タのバイト数とアダプタにダウンロードされたこのフレームに関するすべてのバ ッファ長フィールドの総数である。このレジスタによって返される値は、フレー ムの長さが60バイトよりも短いときにアダプタによって行われるパッディング の影響をなんら受けない。 「伝送フレーム長」レジスタは、ホストが最後のバイトを「伝送領域」に書き込 んだ直後に有効となり、「伝送待ち行列状態Jを読み取った後の最後の書き込み が[伝送領域」に行われるまで有効である。 E、伝送フレーム状態 「伝送フレーム状態」は、伝送の試みの結果を返す。 このレジスタの最下位の16ビツトは、待ち行列中で待機していたフレームの伝 送の試みについての状態を返す。最上位の16ビツトは、そのフレームの[伝送 リクエスト処理」を返す。伝送が成功したときには、値としてxxxxoo。 O(hex)(XXXXはこの特定のフレームの「伝送リクエスト処理」である 。 が返され、一方、伝送が失敗した場合には、XXXX0OOa (hex)が返 される。アダプタが、衝突の後の伝送再試行処理を行っている場合には、xxx xoofe(hex)が返される。伝送がまだ信号中である場合には、 「伝送 フレーム状態」は、XXXX0Of f (hex)を返す。 もし、フレームの送信が成功しなかった場合には、伝送が失敗した具体的な理由 を「伝送失敗」によって知ることができる。「伝送プロトコル識別子」を読み取 って、もし次に伝送されるフレームがあれば「伝送フレーム状態」がこの次に伝 送されるフレームに進められる。 「伝送フレーム状態」を読み取ったときに、 状態の値として“再試行”が返された場合には、この[伝送フレーム状態」の読 み取りによって同時に「送信終了」指示信号がクリアされる。 F、伝送プロトコル識別子 「伝送プロトコル識別子」は、伝送フレームのプロトコル識別子を返す。 アダプタが待ち行列で待機していたフレームの伝送の試みを終了し、その状態を 指示すると、直ちに、ホストは「伝送プロトコル識別子」を読み取って、そのフ レームを識別することが可能である。ここで返される値は、フレームを[伝送領 域Jに待機させる際に、「伝送プロトコル識別子」フィールドに書き込まれた値 と同じ値である。 このレジスタの読み取りが行われると、「伝送フレーム状態」の値として“再試 行”が読み取られた場合を除いて「伝送終了」指示信号がクリアされる。「伝送 フレーム状態」の読み取りによって、“再試行”が読み取られた場合には、「伝 送終了」がクリアさfる。 「伝送プロトコル識別子」の値は、32ビツト・レジスタの上位16ビツトに存 在する。このレジスタの最下位の16ビツトは、「媒体アクセス・コントローラ 識別子」レジスタに書き込まれる「媒体アクセス・コントローラ識別子」を返す 。倍長ワード読み取りによって、これらの両方の値が同時に返される。 多数のフレームを伝送待ち行列中に待機させて、多数伝送を行わせることが可能 である。[伝送プロトコル識別子」の両ワードを読み取ると、 [伝送フレーム 状態」の終了状態および「伝送失敗」が進められ、また、もし次のフレームが存 在すれば、 「伝送プロトコル識別子」が伝送したフレームの次のフレームに進 められる。 C9伝送待ち行列状態 [伝送待ち行列状態」は、伝送フレームを待ち行列中に待機させた結果を返す。 「伝送待ち行列状態」レジスタ読み取ることによって、ホストが伝送フレームを 「伝送領域」に待ち行列として待機させた試みの結果が返される。 2(hex)−成功:リクエストされた伝送を待ち行列中へ待機させるのに成功 した場合には、この値が「伝送待ち行列状態」を読み取ったときに返される。 6 (hex)−資源の使い果たし:アダプタが待ち行列記憶用RAMを使い果 たしてしまった場合には、状態の値として6 (hex)が返される。 7(hex)−長過ぎるフレーム:伝送しようとしている単一のフレームの総バ イト数が最大フレーム長をこえている場合には、このレジスタは7(hex)を 返す。 a(hex)−順序違反:データが順番通りに「伝送領域」に書き込まれなかっ た場合には、このエラー・コードが返される。 ff(hex)−アダプタの準備未了二 「伝送領域」への書き込みが終了した 後に、「伝送待ち行列状態」を読み取るのが早過ぎた場合には、待ち行列処理が 終了する前に状態の値を読み取るようにすることが可能である。 また、このレジスタが読み取られると、 「伝送領域」が進められて、他の伝送 を待ち行列中に待機させることが可能なようになされる。このレジスタの読み取 りは、「伝送領域」へ全データか書き込まれた後に、かつ、「伝送領域」への次 の伝送リクエストか行われる前に行う必要がある。 「伝送待ち行列状態」から、エラー・コード(6(hex)、7(h、ex)、 a(hex)あるいはf f (hex))が返された場合には、そのフレーム は待ち行列中に待機されておれず、ホストはこれを別の時に再び待ち行列に待機 させる試みを行う必要がある。フレームが長過ぎたことを示すフラッグが立って いる場合には、再度待ち行列に待機させる試みを行う前に、フレームを複数のフ レームに分割する必要がある。 成功を示すコード(2)が返された場合には、ホストは直ちに次の他のフレーム を待ち行列中に待機させる試みに進むことができる。待ち行列中に待機させる1 :とが可能なフレーム数は、この目的のために割り当てられたアダプタのRAM 容量と、各フレームに含まれる即値データ量とに依存する。 ホストが、利用可能な「伝送記述子」の自由空間を越える大き過ぎるフレームを 待ち行列中に待機させようと試みた場合には、まずエラーが起こり、次いで、こ のエラーがホストに対して返される。 H伝送開始スレッショルド [伝送開始スレツシヨルド」は、伝送を早期に開始させるためのものである。 「伝送開始スレッシ3ルドJレジスタは、伝送を開始する前にアダプタに存在し ている必要がある伝送バイト数を指定するのに用いられる。最大フレーム長より も大きな値が4入られると、この機能は正しく動作しない。レジスタをゼロにセ ットすると、この機能をディスエーブルどすることができる。バイト数のカウン トは、伝送)l/−ムの宛先フィールドの最初のバイトから開始される。 利用可能であると見なすことができるバイト数は、ホストによって「伝送領域」 に書き込まれた即値データとバス・マスターDMA動作を用いてアダプタの伝送 データ・バッファに転送されたバイトとの和である。[伝送開始スレッショルド 」を満たす伝送フレーム・バイトの即値データが準備されたか、あるいはアダプ タがバス・マスクを用いて、「伝送開始スレッショルドJ−r伝送即値データ長 」のハイドをアダプタ上に転送されると、直ちに伝送リクエストが発せられる。 アダプタ中に存在するバイト数は、フレームの全サイズが「伝送開始スレッシ→ ルト」よりも小さい場合を除いて、伝送を開始するのに必要な「伝送開始スレソ ノヨル1〜」に等しいか、またはこねよりも大きいことか必要である。フレーム の全サイズか[伝送開始スレッショルド」よりも小さい場合には、このフレーム の伝送は全フレームのアダプタへのコピーが終了した時点で開始される。前に保 留となっている伝送フレームが存在したり、あるいはネットワークのトラフィッ クが滞留しているために実際の送信が遅滞することが起こり得る。 1、 伝送リング管理 図10A−10Eは、伝送動作にもちいられるポインタの進みかたを示したもの である。図10A−10Eにおいて、伝送記述子リングの全体部分が200でし めされており、伝送データ・バッファが201−0および201−1で示されて いる。また、上記のポインタか略記号を用いて表されている。 図10Aにおいて、ホスト記述子論理装置が伝送記述子リング200中に第1の 記述子の書き込みを行う。こうして、CXDポインタが第1の記述子のベース・ アドレスを指し示し、また、HWポインタが、ホストが次に書き込もうとしてい る倍長ワードの記述子のベース・アドレスからのオフセットを指し示す。またC DD、CDBを含むダウンロード・ポインタによって、第1の記述子のダウンロ ート動作か開始される前のベース・アドレスが指し示される。同様に、伝送記述 子CXDおよびXRが同しベース・アドレスを指し示している。また、ダウンロ ード・データ・ポインタDDによって第1のバッファ、例えばバッファ0の先頭 が指し示される。 CJloBにおいては、11の記述子の書き込みが終了してダウンロード処理が 開始され、ホストは、第2の記述子の書き込みを開始している。このようにして 、ホスト記述子論理装置・ポインタCHDは、次の記述子のベース・アドレスを 指し示し、またHWが次のハイドと考えられるアドレスを指し示す。ダウンロー ド・ポインタCDDは、第」の記述子のベース・アドレスを指し示す。ダウンD MA論理装置は、ホストから伝送データ・バッファへのバッファ転送処理を行っ ている最中であるものと仮定されている。こうして、CCDポインタは、第1の 記述子ダウンロート・バッファの記述子を指し示し、DDポインタは、指し示す 伝送データ・バッファ内のデータがダウンロー1・されている位置を表すオフセ ットを指し示す。スレツシヨルドにはまだ達していないので、伝送動作はまだ開 始されていない。従って、伝送ポインタ及び末端ポインタは、依然として第」の 記述子を指し示している。 図10Cにおいて、ホスト記述子論理装置は、第3の記述子に関する動作を行っ ており、また、ダウンロード論理装置は、第2の記述子に関する動作を行ってお り、伝送論理装置は、第1の記述子に関する動作を行っている。また、ホスト記 述子論理装置・ポインタCXDおよびXRは、第1の記述子に関する動作を行、 っている。従−て、CXDポインタは第1の記述子のベース・アドレスを指し示 し、一方、XRポインタは、舖送りMA論理装置による伝送のために読み取って いる即値データを指し示す。 伝送読み取りポインタXRは、即値データの読み取りを終了して、第1の記述f を処理する際に図、10Bに示されているように、ダウンロードDMΔ論理装置 に、よって満たされた伝送データ・バッファに移動する。 伝送末尾ポインタXTは、依然として第1の記述子のベース・アドレスを指し示 している。 ダウンロー1・論理装置は、第2の記述に関する動作を行っている。従って、C DDポインタは第2の記述子のベース・アドレスを指し示し、またCDBポイン タは、第2の記述子内のバッファ記述子を指し示し、DDポインタは、ダウンロ ー ドDMA論理装置がホストからのデータをそこへ転送している先である第2 の伝送データ・バッファ内のオフセットを指し示す。 図10Cにおいては、ホストは、第3の記述子を「伝送領域」レジスタに書き込 んでいる。従って、CHDポインタは、第3の記述子のベース・アドレスを指し 示し、またHWポインタは、ホス)・によって次のバイトが書き込まれようとし ているオフセットを指し示す。 11110Dにおいては、ホストが第4の記述子の書き込み処理を行うための処 理が続行している。こうして、CF(Dポインタは、第4の記述子のベース・ア ドレスを指し示し、また)(Wポインタは、「伝送領域」レジスタへの次の書き 込みにおける予測アドレスを指し示す。 ダウンロート論理装置は、第3の記述子に関する動作を行っている。こうしてC DDポインタは、第3の記述子のベース・アドレスを指し示し、また、CDBポ インタは、第3の記述子内のバッファ記述子を指し示し、ダウンローF・データ DDポインタは、第1のデータ・バッファのダウンロードが行われている位置を 指し示す。この動作において、第1の記述子の伝送によって、第1のデータ・バ ッファがすでに開放さオ]ており、ダウンロード論理装置が第4のデータ・バッ ファを使用することができるようになっているもの仮定されている。 伝送論理装置は、第2の記述子に関する動作を行っている。こうして、CXDポ インタは、第2の記述子のベース・アドレスを指し示し、XRポインタは、伝送 論理装置がそこからデータを読み取っている伝送データ・バッファ内の位置を指 し示す。第1の記述子の状態は依然どして読み取られるようになっているので、 伝送末尾XTポインタは依然として第1の記述子のベース・アトlノスを指し示 している。 図10Eにおける処理においては、第4の記述子の書き込みが終了したけれとも 、ホストは、新たな記述子の書き込みを一時的に中断しているものと仮定されて いる。この場合には、CHDポインタおよびHWポインタは、ホストによってさ らにアクションが取られるのを待機している第5の記述子のベース・アドレスを 指し示す。ここで、ダウンロード処理については、第3に記述子のダウンロード を終了させる必要があるものと仮定されている。こうして、CDDポインタの現 在値あは第3の記述子のベース・アドレスを指し示し、また、CDBポインタは 第3の記述子内のバッファ記述子を指し示す。DDポインタは、そこへダウンロ ード処理によってデータがダウンロードを行っている伝送データ・バッファ内の 位置を指し示す。 また、図10Eにおいては、第2の記述子によって表されているフレームの伝送 か終了し、伝送論理装置は、第3の記述子に関するダウンロード動作が終了する か、あるいは伝送論理装置が伝送を開始するのに十分な量のデータがダウンロー ドされるのを待機しているものと仮定されている。こうして、CXDおよびXR ポインタは、第3の記述子のベース・アドレスを指し示す。 ホストは、第1の記述子の伝送状態を読み取るものと仮定されている。これはX Tポインタを第2の記述子のベース・アドレスに移動することの効果を有してい る。 この処理は、アダプタか取り扱う記述子か自動てきなリング循環されることによ って続行されていく。またオーバランとアンダーラン状態がモニタされて、適当 なエラー信号がアダプタから発せられる。 Vl、早期伝送論理装置 図1に示されている早期伝送論理装置6Aは、好適な実施においてはダウンロー ドDMA論理装置58において最初に実行される。好適な実施のキー要素は図1 1を参照して述べられているデータ路演算、および図12−図17を参照して述 べられている伝送開始制御論理装置を含んでいる。 図11は、データ路演算の基本論理装置を示す。この論理装置は、11ビツト・ カウンタ300上に最初に見いだされる。Ifビット・カウンタ300はテスト 入力、Δ(デルタ)入力、カウンタ・イネーブルCE入カ、クロック入力および リセットR入力を有する。】lビット・カウンタ300はキャリーアウトTCお よびカウンタ出力(10・0〕を有する。テスト入力は、本発明に関係のないテ ストに用いられる。デルタ入力は、ダウンロードDMAバイト・イネーブル(3 : 0)によってドライブされ、ダウンロード過程において活性化している32 ビツト・バスのバイト数に基づいて、カウンタ300のために1と4の間の増加 量をセットする。 カウンタ・イネーブルCE入力はANDゲートの出力によってドライブされる。 ANDゲー1−301への入力は、サイクル終了信号と遅延回路302の出力を 存している。遅延回路302は、入力としてクロックとバッファ・ダウンロード 指示バッファDwnAck信号を受信する。サイクル終了信号は伝送サイクルの 最後のクロックの間に現れ、ダウンロードDMA内に読み取りと書き込みストロ ーブを発生するために、他の制御信号と共に用いられる。バッファDwnAck 信号は、アダプタ上のバッファ・ダウンロード自律アクセス用のサイクル指示信 号である。これはバッファ・ダウンロード要求に応答して現れる。遅延回路30 2は、カウンタの適切な増加を保証することがサイクル終了信号の間少なくとも 真のままであることを保証するために動作する。 サイクル終了信号は、伝送サイクルお最後のクロックの間に発生する。それはデ ータ路バイト・エネーブル(3二0)により示される量によって、カウンタ30 0を増加するための基本である。 クロック入力300はシステム・クロックによってドライブされる。リセッ入力 はORゲート303によってドライブされる。ORゲートへの入力は、新しい記 述子がダウンロード・バッファ、ダウンロードDMAリセット信号およびアダプ タ上のカウンタをクリアするための全カウンタをクリアする信号によって、処理 されているときを示す新しい記述子信号を有している。カウンタ300の出力は 、11ビツト線Q(10:0)上に供給される。この出力は、アダプタ304へ 与えられる。アダプタ304への第2の入力はカレント記述子から読み取られる 即時長さ値(i[1edLenValue) (10: 0 )である。即時長 さ値とカウンタ3゜Oの出力の合計はダウンロード駐留バイト値(10: 0) として供給される。 図11のデータ路演算は、駐留バイト有効信号の発生を示している。この信号は 、通常は真である駐留バイト有効信号を、カウンタが値を変更するときはいつも 3つのクロックに対して不活性にする一連のD盟フリップ・フロップ305゜3 06によって発生される。これは、ダウンロード駐留バイト値(10: 0)を 加算器の外部に設定し、以下に説明する伝送開始制御論理装置の比較器を介して 伝送する。従って、lフリップ・フロップ305,306はANDゲート301 の出力によってドライブされるリセット入力とクロック信号によってドライブさ れるクロックを有している。これらのフリップ・フロップはカウンタ300が増 加されるときは何時もリセットされる。 また、この論理装置はORゲート307の出力にデータ用意(dataRead y)信号を発生するためにも用いられる。このORゲート307への入力はデー タ路バイトE n (dataPathByteEn)信号(3: O)である 。従って、データ用意信号は、有効なデータ路バイトEn信号が発生されるとき は何時も発生されるダウンロード実行(downloadcarryout)信 号は、カウンタ300の実行信号TCによるテスト目的のために発生される。 また、この論理装置は、ダウンロード・データ・ポインタ(downloadD ataPointer) (11: 2)を発生するためにも用いられる。ダウ ンロード・データ・ポインタは、加算器308の出力に発生される。加算器30 8への入力は、カウンタ300の出力Qと伝送バッファ選択MUX309の出力 のビット(10: 2)を有している。伝送バッファ選択MUX309への入力 は、選択入力での伝送バッファ選択信号に応答して選択される2つの伝送データ ・バッファのオフセットを含んでいる。最後に、この論理装置は、減算器310 の出力にデータ路オフセッ)(dataPathOffset)信号(1:O) を発生する。減算器はその入力に供給された信号AおよびBrF!Iの差異を発 生する。信号Aはラッチ311の出力に供給される。 ラッチ311は、カウンタ300の出力Qの2つの最小重要ビット(1: 0) をラッチする。これらの2ビツトはdoAバッファ(doABuffer)信号 に応答してラッチされる。doAバッファ信号は、伝送記述子に記述されたバッ ファのバス・マスター・ダウンロートを達成するためにバッファ・ダウンロード 論理装置に供給されたコマンドである。従って、これらの2ビツトは、ダウンロ ード動作の開始時にラッチされる。32ビツト・ダウンロート開始アドレスの対 応ビットはバッファ転送用のデータ路オフセットを判定するために、それらから 引かれる。 従って、この論理装置は、ホスト・アドレスに結合され、アダプタ・メモリの与 えられたフレーム・レジデントのデータ量のスレッショルドの判定に使用する、 ホストから伝送データ・バッファへのデータのダウンローディグを監視する。 ダウンロート・バイト・レジデント(downloadBytesReslde nt) (10: 0)の値は、図12−15を参照して述へられている伝送開 始制御論理装置に供給される。伝送開始制御論理装置のブロック図が図12に示 されている。図12のブロック図の各々の機能的な要素は図13−17を参照し て述べられている。 図12は、伝送開始制御論理装置のブロック図である。伝送開始制御論理装置は 開始スレッショルド・レジスタ320および開始スレッヨールドの値と図11の データ路演算において発生したダウンローF・バイト・レジデントの値を比較す るダウンロート比較ブロック321を有している。また、即値データ比較器32 2は、即値データが伝送記述子に存在する事象において、比較を行うために含ま れている。最後に、アダプタの伝送りMA論理装置ブロックに供給するだめの利 用可能な伝送データ(xmi tDataAvai 1able)信号を発生す る利用可能なデータ制御ブロック323が含まれている。 図12の伝送開始制御論理装置は利用可能な伝送データ信号を発生するためのも のであり、ネットワークに伝送すべき利用可能なデータかあることを指示するめ に伝送りMAモジュールに供給される。利用可能な伝送データ信号は3つの条件 の下で発生される。(1)伝送されるべく用意されたアダプタ上の、lまたはそ れ以上の終了フレーム・レジデントがある場合。(2)アダプタ上には終了フレ ームはないが、現在ダウンロードされているフレームのためのバイト・レジデン トの数が伝送開始スレッショルド・レジスタの値より大きい場合。(3)アダプ タ上に終了フレームがなく、かつベンディング・ダウンロード動作がなく、現在 伝送領域レジスタに書き込まれているフレームのための即時バイト・レジデント の数が伝送開始スレッショルドの値より大きい場合。 開始スレッショルド・レジスタ320は、物理的な「伝送開始スレッショルド」 レジスタとレジスタの値が有効である場合に判定する論理装置を含んでいる。特 に、 [伝送開始スレッショルド」の値がある時刻に1バイト書き込まれる場合 、[伝送開始スレッショルドJ信号は、第2のバイトが書き込まれるまで発生さ れない。これは、ダウンロード比較321と即時比較322を過渡的な値につい て比較することをしない。開始スレッショルドレジスタ320への入力は、書き 込む間開始スレッショルド・レジスタ320を介してデータをホスト・インタフ ェースの[伝送開始スレッショルドjレジスタへ運ぶホスト書き込みデータ(h ostWriteData) (10: 0)を含む。開始スレッショルド書き 込み(startThreshWrite)(1:03信号は「伝送開始スレッ ショルド」レジスタのための書き込みストローブである。開始スレッショルド・ レジスタ320は、開始スレッショルドの値(startThreshValu e) (10: 0)と開始スレッショルド有効信号を含んでいる。 ダウンロード比較モジュール321への入力は開始スレッショルドの値(sta rtThreshValue) C10: 0)と開始スレッショルド有効信号 を含んでいる。また、ダウンロード・バイト・レジデント(donloadBy tesResident) (10: 0)とバイト・レジデント有効(byt esResidentValid)信号は入力として比較モジュール321へ供 給される。ダウンロード比較モジュール321の出力はダウンロード・スレッソ ヨルド到達信号である。 即値比較モジュール322への入力は開始スレッショルドの値(I O: O) と開始スレッショルド可動信号を有している。また、即値長さく1m1ledl 、engthvalue)(10: O〕は伝送記述子から即値長さ有効信号を 読み取る。即値長さ有効信号は即値長さに関する値が有効であることを指示する 。他の入力は、即値データあるいはバッファ記述子データのホスト書き込みを指 示するストローブである他のホスト書き込み(3: 0)信号を有している。こ の信号の4ビツトは4つのEISAバス・バイト・レーン上の転送に相当する。 ホストを指示する待ち行列状態読み取り(queueStatusRead)信 号は、新しい伝送記述子、アダプタの他の部分からの制御信号であるダウンロー ドDMAリセット信号、クロック、伝送領域レジスタへのホストの書き込みにお けるエラーを指示する待ち行列エラー(queueErr。 r)信号、および診断やテストのために用いられる全カウンタ・テストと金カウ ンタ・クリア信号の書き込みを準備するために読み取り状態である。 即値比較モジュール322の出力は、即値スレッショルド到達信号である。ダウ ンロード・スレッショルド到達信号と即値スレッショルド到達信号は、利用可能 なデータ制御ブロック322に供給される。他の入力は、ダウンロードDMAリ セット信号、クロック信号および待ち行列エラー信号を含んでいる。また、ゼロ ・ダウンロード・ベンディング(zeroDownloadPending)信 号とゼロ1フレーム・レジデント(zeroFrameResident)信号 は、利用可能なデータ制御ブロック323に供給される。これらの信号は、アダ プタ上に終了伝送フレームがない場合およびベンディング・ダウンロート動作の 発生がない場合をそれぞれ示している。 利用可能なデータ制御ブロック323の出力は利用可能な伝送データ(xmi  tDataAvai fable)信号である。 図13は、図12の開始スレッショルド・レジスタ320の実行を示す。このレ ジスタは、IIビット・スレッショルド値の高および低バイトを保持するために 3ビツト・レジスタ330と8ビツト・レジスタから成っている。3ビツト・レ ジスタはホスト書き込みデータ(hostWriteData) (l O:  0)バスのビット108を記憶する。8ビツト・レジスタはビット7:0を記憶 する。3ビツト・レジスタ330は、開始スレッショルド書き込み(start ThreshWri te) (1)ストローブによってクロックされ、8ビツ ト・レジスタ331は、開始スレッショルド書き込み
〔0〕ストローブによって クロックされる。両方のレジスタはダウンロードDMAリセットでリセットされ る。レジスタ330と331の出力は伝送開始データ(xmitStartDa ta) (l O: 0)として供給される。 開始スレッショルド有効状態マシン332が用いられている。この状態マシンは 、開始スレッショルド書き込みストローブci : O) 、ダウンロードDM Aリセット信号およびクロックを入力として受信する。それは、図14に示され るように簡単な状態マシンを存しており、開始スレッショルド書き込み(1:  O)を監視し、開始スレッショルド値(startThreshValue)バ イトの1つが有効であるときは何時も開始スレッショルド値信号を発生しない。 従って、状態マシンは3つの状態を有している。第1の状態NNITIJ 33 5は、ダウンロードDMAリセットに入れられる。もし開始スレッショルド書き 込み
〔0〕信号が真であって、開始スレッショルド書き込み(1)信号が偽であ れば、状態マシンは低バイト書き込み状態(LOW BYTE WRITrEN )状態336になる。次に、開始スレッショルド書き込み(13信号が発生され ると、状態マシンはrlNITIJ状態335に戻る。もし、rlNITTJ状 態335で、開始スレッショルド書き込み〔1]信号が有効で、開始スレッショ ルド値き込み
〔0〕信号が真でないなら、第3の状態、高バイト書き込み(HI GHBYTE 胃[TTEN) 337が入れられる。開始スレッショルド書き 込み(0)信号が発生されると、状態マシンは、開始スレッショルド有効信号が 発生される間に、rlNITI」状態335に戻る。 ダウンロード比較モジュール321が図15に示されている。この論理装置は図 11のデータ路演算からのダウンロード・バイト・レジデント(downlca dBytesResident) (10: 0)の値と開始スレッショルド・ レジスタ320からの伝送開始データ(xmitStartData) (l  O: O)を受信する比較器340を有している。 もし、ダウンロード・バイト・レジデントの値が伝送開始データの値より大きい か、等しいければ、比較器の出力が発生される。比較器340の出力はANDゲ ート341に供給される。ANDゲート341は比較器340の出力に加えて3 つの入力を有している。入力は、開始スレッショルド・レジスタ・モジュール3 20からの開始スレッショルド有効信号と送信開始データの値がゼロに等しいか どうかをテストする論理装置342の出力を含んでいる。もし、それがゼロでな いなら、信号が発生される。 最後にデータ路演算からのバイト・レジデント有効(bytesResiden tValid)信号は、ダウンロード・スレッショルド到達信号がANDゲート 341によって発生さられる前に、発生されなければならない。 即値比較モジュール322か図16に示されている。即値比較モジュール322 は11ビツト・カウンター350、第1の比較器351、第2の比較器352お よび第3の比較器を有している。また、これらの比較器の出力はマルチプレック サ354を介して供給される。即値スレッショルド到達信号はANDゲート35 5の出力に発生される。またORゲート356とゼロに等しくないテスト論理装 置!357も含まれている。即値比較モジュールは11ビツトカウンター350 を用いて即値データ・バイト・レジデントの数のトラックを保持する。11ビツ トカウンターへの入力はテスト信号、各々のクロックによって加えられたデータ あるいはインクレメントを示す他のホスト・書き込み(otherHostWr ite) (3:0〕信号およびクロック信号を含んでいる。 11ビツト・カウンター350はORゲート356の出力でリセットされる。 ORゲートへの入力はダウンロー)”DMAリセット信号、待ち行列状態読み取 り信号、待ち行列エラー信号および全カウンター・クリアー信号を含んでいる。 出力はTC出力での即値終了信号と格納された即値バイトの数を示すQ(10: 0)バスを有している。即値バイト出力は第1および第2の比較器351と35 2へ入力として供給される。第1の比較器351への第2人力は現在書き込まれ ている記述子から検索される即値長さ値(imn+edLengthValue )である。第2の比較器352への第2人力は開始スレショールド・レジスタ・ モジュール320からの伝送開始データ(xmjtStartData) (1 0: O)である。 第3の比較器353は即値長さ値と伝送開始データ値を含む入力を受信する。 第1の比較器351は、即値バイトが即値長さ値より大きい場合に、′クリップ ”信号を発生する。第2の比較器352は、即位バイトが即値長さ値より大きい か等しい場合に、カウント・クロス・スレショールド(countcrossT hresh)信号を発生する。第3の比較器353は、即値バイトが伝送開始デ ータ値より大きいか等しい場合に、即値クロス・スレソヨールド(imn+ed crossedValue)信号を発生する。クリップされた信号は、マルチプ レックサ354の選択入力に供給される。これは、即値バイトの数か即値長さ値 を越えない限り、マルチプレックサ354が出力Yとしてカウント・クロス・ス レッショルド信号を選択させるために動作する。即値バイトの数が即値長さ値を 越えると、即値クロス・スレショールト信号がマルチプレックサの出力Yに供給 される。 11ビツトカウンター350は、他のホスト書き込み(3: 0)の値に従って 、l、2.3あるいは4と増加される。 即値スレッショルド到達信号はANDゲート355の出力に供給される。AND ゲート355への入力は、伝送開始データ(xmi tStartData)値 がゼロでないとき、発生される論理装置357の出力を含んでいる。また、開始 スレッショルド有効(startThreshVal id)信号と即値長さ値 信号がゲート355へ入力として供給される。これら3つの全ての信号が発生さ れると、マルチプレックサ354の出力は、即値スレッショルド到達信号として 供給のためにイネーブルされる。即値バイト(imdiateBytes)が即 値長さ値より少ないと、クリップされた信号は不活性であり、比較器352の出 力は即値スレッショルド到達として供給される。 即値バイトが即値長さ値を越えると、即値バイトの値は無視され、即値クロス・ スレッショルド(im団crossedThresh)比較器353が継続する 。 待ち行列状態読み取り(queueStausRead)の発生は、それが常に 新しいフレーム記述子の伝送領域への書き込みに同期されることを確実にして、 カウンターをクリアーする。 利用可能データ制御モジュール323は図17に示される4状態−状態マシンか ら成っている。4つの状態は、INIT2状態370、即値スレッショルド到N T)状t!1373を育している。INIT2状態370は、ダウンロードDM Aリセット(downloadDmaReset)に入れられる。もしゼロ・フ レーム・レジデント(2eroFramesRasident)、ゼロ゛ダウン ロード9ベンディング(zeroDovmloadPending)および即値 スレッンヨルド到達(ianediateThreshMet)信号が真であれ ば、即値スレッショルド到達状態371が入れられる。この状態では、利用可能 な伝送データ(xmi tDataAvai fable)信号が発生される。 即値スレッショルド到達状態は待ち行列エラーの発生に従って、INIT2状懸 370に戻る。代わりに、ゼロ・ダランロード・ベンディング信号と待ち行列エ ラー信号が発生されないと、制御は即値スレッショルド到達状態371からダウ ンロード・スレッショルド到達状態372へ進む。コノ状態の間、利用可能な伝 送データ(xmi tDataAvai 1able)信号は真である。もしゼ ロ・フレーム・レジデント(zeroFramesRasident)信号が真 でないと、状態マシンはダウンロード・スレッショルド到達(DOWNLOAD  THRESHMET)状態372から7L/−ム・レジデント(FRAME  RESIDE!NT)状111373へと進む。この状態では、発生された利用 可能な伝送データ信号は残る。ゼロ・フレーム・レジデントの発生に従って、状 態マシンは、利用可能な伝送データあが偽であれば、INIT2状態370に戻 る。 代わりに、もし、INIT2状態370からゼロ・フレーム・レジデント信号が 発生されると、状態マシンはフレーム・レジデント(FRAME RESIDE NT)状o373へ直接進む。またゼロ・フレーム・レジデント信号が真で、ゼ ロ・ダウンロード・ベンディング信号は偽で、ダウンロード・スレッショルド到 達信号が真である場合には、状態マシンはTNIT2状聾370からダウンロー ド・スレッショルド到達(DOWNLOAD THRESHMET)状態372 へ進む。状態マシンハ利用可能なデータ制御入力変数(ダウンロード・スレッシ ョルド到達、即値スレッショルド到達、ゼロ・ダウンロード・ベンディング、ゼ ロ・フレーム・レジデント)上の転送が利用可能な伝送データ制御ライン上に偽 りの指示をすることを妨げる。 Vll、アンダーラン制御論理装置 図2の伝送論理装置39は、図18の簡単なブロック図に示されたデータ径路に 結合されたアンダーラン制御論理装置を有する。図18において、伝送データ径 路400は伝送りMA論理装置からライン401を通って伝送バイトを受信する ことを示している。また、伝送書き込み信号「TXWR」はライン402を通し て伝送データ径路400へ供給される。伝送データ径路は、ライン401を通っ て伝送バイトを受信し、出力ライン403へ供給するためにそれらを直列にする 。また、フレームからのデータは、標準媒体アクセス制御機能によるフレームの 終わりに付加されているエラー検出コードを発生するための「CRC」ロツジク 405ヘライン404を通して供給される。「CRC」ロツジク405の出力は 、排他的ORゲート407ヘライン406を通して供給される。排他的ORゲー ト407は、悪いフレーム信号がライン409に発生されないならば、ライン4 08へ[CRC」コードを通過させる。 ライン403上のデータとライン408上の「CRC」は、有効フレーム用のフ レームの「CRC」に従ったフレームのデータを直列出力ライン412へ供給す るために、伝送制御論理装置411によって制御されるマルチプレックサ41O に供給される。ライン412はネットワーク上の伝送用トランシーバに結合され る。 本発明によれば、この伝送データ径路は条件を検出するためのアンダーラン検出 器413を存している。そしてアンダーラン検出器においては、ホスト・インタ フェースによる伝送データ・バッファへのデータの転送あるいは伝送記述子バッ ファへの即値データが伝送りMA論理装置による伝送データ径路400へのデー タの伝送より遅れる。アンダーラン検出器413は伝送制御論理装置411によ って制御される。伝送制御論理装置411は、ライン402上に伝送書き込み「 TXWR」信号が予期されている間、ライン414を通して間隔を指示する。 アンダーラン検出器は、伝送書き込み「TXWR」信号がフレーム伝送の予期し た間隔の間に存在しない、従って、悪いフレーム信号がライン409に発生去れ ないことを判定する。悪いフレーム信号に応答して、 rcRc」データは、ア ンダーランを受けているフレームの既に伝送された部分のために、悪い「CRC 」が発生されるようにする排他的ORゲート407によって反転される。また、 伝送制御論理装置411はマルチプレックサ410を介して悪い「CRC」デー タを選択するためにライン409上の悪いフレーム信号に応答もする。最後に、 ライン409上の慝いフレーム信号は、アンダーラン条件の伝送失敗レジスタ( xa+itFailureRegister)を介してステータス情報を仕分け するために用いられる。 V[[+、結び 本発明は、上述のシステムにおいて早期の伝送開始のためのものである。「伝送 開始スレッショルド」レジスタ(XMIT 5TART THRESHregi ster)をロードすることにより、本システムは、アダプターのバッファへ全 フレームを伝送する前にネットワーク媒体へフレームの伝送を開始することを可 能にする。早期の伝送開始は、 「伝送開始スレッショルド」レジスタをゼロで ない値にセットすることによって可能になる。 [伝送開始スレッショルド」は、アダプターが、フレームを伝送することに関連 した媒体アクセス制御機能と共に開始する前に、即値データとして或いはバス・ マスター・データ転送を介してアダプターに転送されるデータとして、またはこ れら2つの組み合わせとして、アダプター上になければならない伝送フレームの バイト数を記入するために用いられる。 もし、アダプター(「伝送領域J (XMIT AREA)の「伝送即値長さ」 フィールド(XM[T IMMEDIATE LENGTH)i:書かれた値に よッテ判定される)によって予期される即値データ・バイト数が「伝送開始スレ ッショルド」にセットされた値を越えると、アダプターは、「伝送領域」へ十分 な書き込みが行われた後に、直ちにフレームを伝送開始する。さもなければ、バ ス・マスターとしてアダプターが早期の伝送開始スレッショルド要求を満足する ために、オンボード・バッファヘデータを十分にダウンロードするまで、伝送開 始は遅延される。しかしながら、もし、スレッショルド値がフレーム長より大き いか、等しいならば、完全なフレームがアダプター上に残っている限り、伝送は 開始するであろう。勿論、伝送の開始は他の待ち行列伝送によって、あるいはネ ットワーク・トラフィックへの遅れによって遅延されてもよい。 このレジスタがゼロにセットされると、早期伝送の特徴は無能化され、アダプタ ーが一全伝送フレームを伝送開始する前に、全伝送フレームはアダプター上に存 在しなければならない。 このレジスタに対する値は動作を最適化するためにホストによってプログラムさ れる得る。もし、その値か、低過ぎてセットされると、システムの待ち時間やバ ンド輻の制限は、保証された悪いrCRCJのある部分的なフレームが伝送され るようにしてアダプターが伝送中にネットワークをアンダーランするようにする 。もし、その値が、高過ぎてセットされると、伝送の開始前に不必要な遅延が発 生するであろう。アダプターは、[伝送失敗(XMIT FAILURE)J  レジスタを介してホストへ利用可能にされるアンダーラン条件の指示を発生する 。もし、このアンダーラン指示が発生すると、ホスト・ドライブは「伝送開始ス レッショルド」レジスタ上の値を増加するべきである。更に、アンダーラン指示 は、ドライブ装置が[伝送開始スレッショルド」値を連続的に増加するようにす る。もし、[伝送開始スレッショルド」値がシステムによって期待される最大の 長さより大きな値まで増加されると、早期伝送の特徴は、 「伝送開始スレッシ ョルド」レジスタヘゼロを書き込むことによって、無能化される。 本発明の前述の好ましい実施例は、あくまでも例示的なものである。本発明は上 述の詳細な形だけに限定されることを意図するものでない。明らかに、多くの変 形や変更が可能であることは当業者にとって明らかであろう。上記の実施例は本 発明の原理とその実際の応用とについて説明するのに最も適切なものを選んだも のであり、本発明を特定の用途に対して適するようにいろいろな形で実施し、変 形することが可能であることは、当業者には明らかであろう。本発明の範囲は以 下の請求の範囲によって定義され、またこれと等価なものを含むものである。 自律アクセス・アドレス・バス構造 FIG、−4A FIG、−9 特表千6−511585 (20)

Claims (23)

    【特許請求の範囲】
  1. 1.通信媒体を介してデータ・フレームを伝送するシステムのための装置であっ て、 通信媒体上の伝送用ホスト・コンピュータによって作成されたフレーム・データ を格納するためのバッファ・メモリと、ホスト・システム・インタフェースを有 し、前記バッファへフレーム・データを転送するための手段と、 前記バッファ・メモリに結合され、バッファ・メモリへ転送されたフレーム・デ ータの量のスレッショルド判定を行うために、バッファ・メモリヘのフレーム・ データの転送を監視するための手段と、監視するための手段のスレッショルド判 定に応答して、ホスト・コンピュータからバッファ・メモリへ全てのフレーム・ データの伝送前に、フレームの伝送を開始するための手段、 を有する装置。
  2. 2.伝送バッファは、伝送記述子リング・バッファ、伝送データ・バッファ、ネ ットワーク上に伝送されるべきデータを識別するデータを有する伝送記述子と選 択的即値データを有し、且つ監視するための手段はスレッショルド判定における 即値データを有している請求の範囲第1項に記載の装置。
  3. 3.前記バッファ・メモリはホスト・アドレス空間と独立したバッファを有する 請求の範囲第1項に記載の装置。
  4. 4.監視するための手段は、スレッショルド値を格納するためのシステムによっ て変更可能なスレッショルド記憶装置とスレッショルド判定判定ためのスレッシ ョルド値に応答する論理装置を有する請求の範囲第1項に記載の装置。
  5. 5.前記フレームは、識別できるはじまりを有しており、スレショールド値はフ レームのはじまりからデータ量を仕分ける請求の範囲第4項に記載の装置。
  6. 6.伝送バッファは伝送記述子リング・バッファと伝送データ・バッファを有し ており、且つ転送するための手段は、 システムから伝送記述子リング・バッファへ伝送記述子をマッピングするための 伝送記述子論理装置と、 伝送記述子リング・バッファの伝送記述子に応答して、システムのメモリからデ ータを検索し、伝送データバッファに検索去れたデータを格納するためのダウン ロード論理装置、 を有する請求の範囲第1項に記載の装置。
  7. 7.伝送記述子は、更にネットワーク上に伝送されるべき即値データを有し、監 視するための手段は、スレッショルド判定における即値データを有している請求 の範囲第6項に記載の装置。
  8. 8.更に、伝送リング・バッファの伝送記述子および伝送を開始するための手段 に応答して、伝送記述子リング・バッファと伝送データ・バッファからのデータ を検索し、且つネットワーク上に伝送用検索データを供給するための伝送論理装 置を有している請求の範囲第7項に記載の装置。
  9. 9.更に、転送するための手段が伝送論理装置に遅れる条件を検出し、悪いフレ ーム信号を、アンダーラン条件に応答して通信媒体へ供給するアンダーラン制御 論理装置を有する請求の範囲第8項に記載の装置。
  10. 10.伝送論理装置は、伝送されたフレームに誤り検出コードを付加するための 手段を有し、且つ悪いフレーム信号はコラプトされた(corrupted)誤 り検出コードを有している請求の範囲第9項に記載の装置。
  11. 11.更に、伝送を開始するための手段に応答して、バッファ・メモリからデー タを検出し、ネットワークへ伝送用の検索されたデータを供給するための伝送論 理装置と、 転送するための手段が伝送論理装置に遅れる条件を検出し、悪いフレーム信号を 、アンダーラン条件に応答して通信媒体へ供給するアンダーラン制御論理装置を 有する請求の範囲第1項に記載の装置。
  12. 12.伝送論理装置は、伝送されたフレームに誤り検出コードを付加するための 手段を有し、且つ悪いフレーム信号はコラプトされた(corrupted)誤 り検出コードを有している請求の範囲第11項に記載の装置。
  13. 13.ホスト・システムとネットワークに結合されたネットワーク・トランシー バ間の通信を制御するための装置であって、バッファ・メモリと、 ホスト・システムとのインタフェースを有し、ホスト・システムとバッファ・メ モリ間のデータを転送するためのホスト・インタフェース手段と、バッファ・メ モリに結合し、かつスレッショルド値を格納するためのスレッショード記憶装置 に変更できるホスト・システムを有していて、バッファ・メモリに転送されたフ レームのデータ量のスレッショルド判定を行うために、バッファ・メモリヘのフ レームデータの転送を監視するための手段と監視するための手段のスレッショル ド判定に応答して、ホスト・コンピュータからバッファ・メモリヘのフレームの 全データの転送前に、フレームの伝送を開始するための手段と、 ネットワークヘのインタフェースを有し、且つ開始するためのの手段に応答して 、バッファ・メモリと伝送用ネットワークトランシーバ間のデータを転送するた めのネットワーク・インタフェース手段と、ネットワーク・インタフェース手段 と結合し、スレッショルド値を最適化するためのフィードバックとしてのホスト ・システムにより用いられることができるステータス情報を位置するための制御 手段、を有する装置。
  14. 14.前記ホスト・インタフェース手段は、ホスト・システムからバッファ・メ モリへ伝送されるべきデータを識別する伝送記述子を転送するための伝送記述子 論理装置と、バッファ・メモリの伝送記述子に応答して、ホスト・システムのメ モリからデータを検索し、検索されたデータをバッファ・メモリに格納するため のダウンロード論理装置、 を有する請求の範囲第13項に記載の装置。
  15. 15.前記伝送記述子は即値データを有する請求の範囲第14項に記載の装置。
  16. 16.前記監視するための手段は、伝送記述子の即値データ量を判定するための 論理装置を有する請求の範囲第15項に記載の装置。
  17. 17.前記監視するための手段は、伝送記述子の即値データ量を判定するための 論理装置、およびスレッショルド判定を行う場合に伝送記述子に応答して、ダウ ンロード論理装置によって検索されたデータの量を有している請求の範囲第15 項に記載の装置。
  18. 18.前記制御手段は、バッファ・メモリへデータを転送する場合のホスト・イ ンタフェース手段トランシーバへデータを転送する場合のネットワーク・インタ フェース手段に遅れているアンダーアラン条件を検出する手段とアンダーラン条 件に応答して、通信媒体に悪いフレーム信号を供給するための手段を有している 請求の範囲第13項に記載の装置。
  19. 19.前記制御手段は伝送されたフレームに誤り検出コードを付加するための手 段を有し、前記悪いフレーム信号はコラプトされた誤り検出コードを有している 請求の範囲第18項に記載の装置。
  20. 20.前記制御手段によって位置されるステータス情報はアンダーラン条件の指 示を有している請求の範囲第18項に記載の装置。
  21. 21.ホスト・システムとネットワークに結合されたネットワーク・トランシー バ間の通信を制御するための装置であって、伝送されるべき、ホスト・システム のデータを識別する伝送記述子を格納するための伝送記述子バッファを含み、且 つ即値データと、ホスト・システムから転送されるフレームのデータをバッファ するための伝送データ・バッファを含むバッファ・メモリと、 ホスト・システムヘのインタフェースを有し、ホスト・システムと、伝送記述子 バッファの伝送記述子に応答して、ホスト・システムから伝送データ・バッファ へフレーム・データをダウンロードするための手段を含むバッファ・メモリ間の 伝送記述子とフレーム・データを転送するためのホスト・インタフェース手段と 、 バッファ・メモリに結合され、伝送記述子バッファの伝送記述子の即値データと 、バッファ・メモリへ転送されたフレームのデータ量のシュレショールド判定を するために、伝送データ・バッファへフレーム・データのダウンロードを監視す るための手段と、 監視する手段のシュレショールド判定に応答して、ホスト・コンピュータからの バッファ・メモリへフレームの全データを転送する前に、フレームの伝送を開始 するための手段と、 ネットワーク・トランシーバヘのインタフェースを有し、開始するための手段に 応答して、バッファ・メモリと伝送用ネットワーク・トランシーバ間のデータを 転送するためのネットワーク・インタフェース手段と、ネットワーク・インタフ ェース手段に結合され、伝送データ・バッファへデータをダウンロードする場合 のホスト・インタフェース手段がトランシーバへデータを転送する場合のネット ワーク・インタフェース手段に遅れているアンダーラン条件を検出するため、お よびアンダーラン条件に応答してネットワーク・トランシーバへ悪いフレーム信 号を供給するためのアンダーラン制御手段、を有する装置。
  22. 22.前記監視するための装置は、スレッショルド値を格納するためのシステム によって変更可能なスレッショルド記憶装置とスレッショルド判定を行うための スレッショルド値に応答する論理装置を有し、且つアンダーラン制御手段は、ス レッショルド値を最適化するためのフィードバックとしてホスト・システムによ って用いられることができるステータス情報を位置する手段を有している請求の 範囲第21項に記載の装置。
  23. 23.前記ネットワーク・インタフェース手段は、伝送されたフレームに誤り検 出コードを付加するための手段を有し、前記悪いフレーム信号はコラプトされた 誤り検出コードを有している請求の範囲第21項に記載の装置。
JP50476794A 1992-07-28 1993-07-27 データ伝送の自動開始装置 Expired - Lifetime JP3863912B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US920,893 1992-07-28
US07/920,893 US5434872A (en) 1992-07-28 1992-07-28 Apparatus for automatic initiation of data transmission
PCT/US1993/007060 WO1994002891A1 (en) 1992-07-28 1993-07-27 Apparatus for automatic initiation of data transmission

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005282538A Division JP2006114030A (ja) 1992-07-28 2005-09-28 データ伝送の自動開始装置

Publications (2)

Publication Number Publication Date
JPH06511585A true JPH06511585A (ja) 1994-12-22
JP3863912B2 JP3863912B2 (ja) 2006-12-27

Family

ID=25444577

Family Applications (2)

Application Number Title Priority Date Filing Date
JP50476794A Expired - Lifetime JP3863912B2 (ja) 1992-07-28 1993-07-27 データ伝送の自動開始装置
JP2005282538A Pending JP2006114030A (ja) 1992-07-28 2005-09-28 データ伝送の自動開始装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2005282538A Pending JP2006114030A (ja) 1992-07-28 2005-09-28 データ伝送の自動開始装置

Country Status (6)

Country Link
US (2) US5434872A (ja)
EP (1) EP0606466A1 (ja)
JP (2) JP3863912B2 (ja)
AU (1) AU666769B2 (ja)
CA (1) CA2119151C (ja)
WO (1) WO1994002891A1 (ja)

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6018771A (en) * 1992-11-25 2000-01-25 Digital Equipment Corporation Dynamic assignment of multicast network addresses
US5717908A (en) * 1993-02-25 1998-02-10 Intel Corporation Pattern recognition system using a four address arithmetic logic unit
US5825921A (en) * 1993-03-19 1998-10-20 Intel Corporation Memory transfer apparatus and method useful within a pattern recognition system
US5581790A (en) * 1994-06-07 1996-12-03 Unisys Corporation Data feeder control system for performing data integrity check while transferring predetermined number of blocks with variable bytes through a selected one of many channels
US6351780B1 (en) * 1994-11-21 2002-02-26 Cirrus Logic, Inc. Network controller using held data frame monitor and decision logic for automatically engaging DMA data transfer when buffer overflow is anticipated
US5796738A (en) * 1995-03-13 1998-08-18 Compaq Computer Corporation Multiport repeater with collision detection and jam signal generation
US5961614A (en) * 1995-05-08 1999-10-05 Apple Computer, Inc. System for data transfer through an I/O device using a memory access controller which receives and stores indication of a data status signal
US5740448A (en) * 1995-07-07 1998-04-14 Sun Microsystems, Inc. Method and apparatus for exclusive access to shared data structures through index referenced buffers
US5982772A (en) * 1995-11-06 1999-11-09 Sun Microsystems, Inc. Cell interface block partitioning for segmentation and re-assembly engine
US5745684A (en) * 1995-11-06 1998-04-28 Sun Microsystems, Inc. Apparatus and method for providing a generic interface between a host system and an asynchronous transfer mode core functional block
US5778175A (en) * 1995-12-22 1998-07-07 Digital Equipment Corporation Method implemented by a computer network adapter for autonomously adjusting a transmit commencement threshold valve upon concurrence of an underflow condition
KR0172310B1 (ko) * 1995-12-29 1999-03-30 김주용 교착 상태 방지를 위한 버스 유닛
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
US5829042A (en) 1996-02-15 1998-10-27 Hewlett-Packard Company Prefetch operation for network peripheral device having shared memory
US5778194A (en) * 1996-04-08 1998-07-07 Symbios, Inc. Method and apparatus for measuring performance of a computer bus
US5764896A (en) * 1996-06-28 1998-06-09 Compaq Computer Corporation Method and system for reducing transfer latency when transferring data from a network to a computer system
US6038620A (en) * 1996-09-09 2000-03-14 International Business Machines Corporation Method and system for optimal high speed match in a high performance controller which ensures an input/output interface stays ahead of a host interface
US6260096B1 (en) * 1999-01-08 2001-07-10 Intel Corporation Read latency across a bridge
US5950014A (en) * 1997-03-21 1999-09-07 Lsi Logic Corporation Methodology for pull model invocation
US6477584B1 (en) 1997-03-21 2002-11-05 Lsi Logic Corporation Message FIFO empty early warning method
US6370323B1 (en) * 1997-04-03 2002-04-09 Lsi Logic Corporation Digital video disc decoder including command buffer and command status pointers
US6128715A (en) * 1997-05-30 2000-10-03 3Com Corporation Asynchronous transmit packet buffer
US6188670B1 (en) * 1997-10-31 2001-02-13 International Business Machines Corporation Method and system in a data processing system for dynamically controlling transmission of data over a network for end-to-end device flow control
US6167032A (en) * 1997-11-07 2000-12-26 International Business Machines Corporation System and method for avoiding host transmit underruns in a communication network
US6088701A (en) * 1997-11-14 2000-07-11 3Dfx Interactive, Incorporated Command data transport to a graphics processing device from a CPU performing write reordering operations
US6137804A (en) * 1997-12-02 2000-10-24 International Business Machines Corporation System and method for automatic retry of transmit, independent of a host processor, after an underrun occurs in a LAN
US6061768A (en) * 1997-12-18 2000-05-09 Advanced Micro Devices, Inc. Apparatus and method in a network interface device for storing tracking information indicating stored data status between contending memory controllers
US6192428B1 (en) * 1998-02-13 2001-02-20 Intel Corporation Method/apparatus for dynamically changing FIFO draining priority through asynchronous or isochronous DMA engines in response to packet type and predetermined high watermark being reached
US6298407B1 (en) * 1998-03-04 2001-10-02 Intel Corporation Trigger points for performance optimization in bus-to-bus bridges
US6094700A (en) * 1998-03-13 2000-07-25 Compaq Computer Corporation Serial bus system for sending multiple frames of unique data
US6065070A (en) * 1998-03-18 2000-05-16 National Semiconductor Corporation DMA configurable channel with memory width N and with steering logic comprising N multiplexors, each multiplexor having a single one-byte input and N one-byte outputs
US6092140A (en) * 1998-05-15 2000-07-18 Hewlett-Packard Company Low latency bridging between high speed bus networks
US20040208158A1 (en) * 1998-08-19 2004-10-21 Fellman Ronald D. Methods and apparatus for providing quality-of-service guarantees in computer networks
US6215797B1 (en) * 1998-08-19 2001-04-10 Path 1 Technologies, Inc. Methods and apparatus for providing quality of service guarantees in computer networks
US6246702B1 (en) * 1998-08-19 2001-06-12 Path 1 Network Technologies, Inc. Methods and apparatus for providing quality-of-service guarantees in computer networks
US6154796A (en) * 1998-09-03 2000-11-28 Advanced Micro Devices, Inc. Apparatus and method in a network interface device for storing receiving frame status in a holding register
US6161160A (en) * 1998-09-03 2000-12-12 Advanced Micro Devices, Inc. Network interface device architecture for storing transmit and receive data in a random access buffer memory across independent clock domains
US6381218B1 (en) 1998-09-11 2002-04-30 Compaq Computer Corporation Network controller system that uses directed heartbeat packets
US6272113B1 (en) 1998-09-11 2001-08-07 Compaq Computer Corporation Network controller system that uses multicast heartbeat packets
US6229538B1 (en) 1998-09-11 2001-05-08 Compaq Computer Corporation Port-centric graphic representations of network controllers
US6308228B1 (en) * 1998-11-23 2001-10-23 Duke University System and method of adaptive message pipelining
US6665728B1 (en) * 1998-12-30 2003-12-16 Intel Corporation Establishing optimal latency in streaming data applications that use data packets
US6341315B1 (en) * 1999-02-26 2002-01-22 Crossroads Systems, Inc. Streaming method and system for fiber channel network devices
US6137734A (en) * 1999-03-30 2000-10-24 Lsi Logic Corporation Computer memory interface having a memory controller that automatically adjusts the timing of memory interface signals
US6253250B1 (en) * 1999-06-28 2001-06-26 Telocity, Incorporated Method and apparatus for bridging a plurality of buses and handling of an exception event to provide bus isolation
EP1065831B1 (en) 1999-06-30 2006-05-17 Texas Instruments Incorporated Early preamble transmission
GB9916718D0 (en) * 1999-07-17 1999-09-15 Racal Airtech Limited Adaptive equalising FIFO
US6298394B1 (en) * 1999-10-01 2001-10-02 Stmicroelectronics, Ltd. System and method for capturing information on an interconnect in an integrated circuit
US6581168B1 (en) * 1999-12-29 2003-06-17 Advanced Micro Devices, Inc. Method and apparatus for automatic receive verification
US6477610B1 (en) 2000-02-04 2002-11-05 International Business Machines Corporation Reordering responses on a data bus based on size of response
US6956818B1 (en) * 2000-02-23 2005-10-18 Sun Microsystems, Inc. Method and apparatus for dynamic class-based packet scheduling
US6643719B1 (en) 2000-03-27 2003-11-04 Racal Airtech Limited Equalizing FIFO buffer with adaptive watermark
US7032031B2 (en) * 2000-06-23 2006-04-18 Cloudshield Technologies, Inc. Edge adapter apparatus and method
US7107378B1 (en) * 2000-09-01 2006-09-12 Sandisk Corporation Cooperative interconnection and operation of a non-volatile memory card and an input-output card
US20020078118A1 (en) * 2000-12-19 2002-06-20 Cone Robert W. Network interface application specific integrated circuit to allow direct attachment for an appliance,such as a printer device
GB2372667B (en) * 2001-02-21 2003-05-07 3Com Corp Apparatus and method for providing improved stress thresholds in network management systems
GB2372673B (en) * 2001-02-27 2003-05-28 3Com Corp Apparatus and method for processing data relating to events on a network
GB2372674B (en) * 2001-02-27 2003-05-07 3Com Corp Network management apparatus and method for determining network events
GB2372671B (en) * 2001-02-27 2003-04-30 3Com Corp Processing network events to reduce the number of events to be displayed
US7369902B2 (en) * 2001-05-31 2008-05-06 Omron Corporation Slave units and network system as well as slave unit processing method and device information collecting method
JP3997988B2 (ja) * 2001-05-31 2007-10-24 オムロン株式会社 安全ユニット及びコントローラシステム並びにコントローラの連結方法及びコントローラシステムの制御方法
US7162311B2 (en) * 2001-05-31 2007-01-09 Omron Corporation Safety network system, safety slaves unit, safety controller and communication method and information collecting method and monitoring method for the safety network system
DE60237888D1 (de) * 2001-06-22 2010-11-18 Omron Tateisi Electronics Co Sicherheitsnetzwerksystem, sicherheits-slave und sicherheitssteuerung
EP1404061B1 (en) * 2001-06-22 2011-08-10 Omron Corporation Safety network system and safety slave
EP1473606A4 (en) * 2001-06-22 2009-03-11 Omron Tateisi Electronics Co SECURITY NETWORK SYSTEM, SECURITY SLAVE, AND COMMUNICATION METHOD
GB0127650D0 (en) * 2001-11-19 2002-01-09 Nokia Corp Improvements in and relating to content delivery
US7149213B1 (en) * 2001-12-28 2006-12-12 Advanced Micro Devices, Inc. Wireless computer system with queue and scheduler
US7313104B1 (en) * 2001-12-28 2007-12-25 Advanced Micro Devices, Inc. Wireless computer system with latency masking
AU2003220678A1 (en) 2002-04-08 2003-10-27 Socket Communications, Inc Wireless enabled memory module
JP3988559B2 (ja) * 2002-07-18 2007-10-10 オムロン株式会社 通信システム、通信装置及び通信制御方法
US6985459B2 (en) * 2002-08-21 2006-01-10 Qualcomm Incorporated Early transmission and playout of packets in wireless communication systems
US20040059954A1 (en) * 2002-09-20 2004-03-25 Rainer Hoehler Automatic low power state entry
US7367503B2 (en) 2002-11-13 2008-05-06 Sandisk Corporation Universal non-volatile memory card used with various different standard cards containing a memory controller
US20050055479A1 (en) * 2002-11-21 2005-03-10 Aviad Zer Multi-module circuit card with inter-module direct memory access
US8037229B2 (en) 2002-11-21 2011-10-11 Sandisk Technologies Inc. Combination non-volatile memory and input-output card with direct memory access
US7305535B2 (en) 2003-04-17 2007-12-04 Sandisk Corporation Memory cards including a standard security function
US20050094584A1 (en) * 2003-11-04 2005-05-05 Advanced Micro Devices, Inc. Architecture for a wireless local area network physical layer
US7209995B2 (en) * 2003-12-09 2007-04-24 Sandisk Corporation Efficient connection between modules of removable electronic circuit cards
US7424553B1 (en) * 2004-04-15 2008-09-09 Xilinx, Inc. Method and apparatus for communicating data between a network transceiver and memory circuitry
US7496699B2 (en) * 2005-06-17 2009-02-24 Level 5 Networks, Inc. DMA descriptor queue read and cache write pointer arrangement
DE602006013197D1 (de) * 2006-01-04 2010-05-06 Freescale Semiconductor Inc Verfahren zur verwaltung von unterläufen und einrichtung mit unterlauf-verwaltungsfähigkeiten
JP2007206799A (ja) * 2006-01-31 2007-08-16 Toshiba Corp データ転送装置、情報記録再生装置およびデータ転送方法
US8201071B2 (en) * 2006-11-15 2012-06-12 Qimonda Ag Information transmission and reception
US8004988B2 (en) * 2007-11-21 2011-08-23 Microchip Technology Incorporated Ethernet controller
US7991927B2 (en) * 2008-03-31 2011-08-02 Lsi Corporation Reduction of latency in store and forward architectures utilizing multiple internal bus protocols
TWI379554B (en) * 2008-05-21 2012-12-11 Realtek Semiconductor Corp Data access device and method for communication system
US8370603B2 (en) * 2008-12-23 2013-02-05 Apple Inc. Architecture for address mapping of managed non-volatile memory
US8438453B2 (en) * 2009-05-06 2013-05-07 Apple Inc. Low latency read operation for managed non-volatile memory
GB2481613A (en) * 2010-06-30 2012-01-04 Skype Ltd Updating regions of shared images using a server that records image status
GB2481612A (en) 2010-06-30 2012-01-04 Skype Ltd Updating image regions in a shared image system
US8621337B1 (en) * 2010-09-30 2013-12-31 Juniper Networks, Inc. Detecting memory corruption
JP5732806B2 (ja) * 2010-10-15 2015-06-10 富士通株式会社 データ転送装置及びデータ転送方法
US8775699B2 (en) * 2011-03-01 2014-07-08 Freescale Semiconductor, Inc. Read stacking for data processor interface
US8959278B2 (en) 2011-05-12 2015-02-17 Freescale Semiconductor, Inc. System and method for scalable movement and replication of data
US9374106B2 (en) 2013-08-28 2016-06-21 International Business Machines Corporation Efficient context save/restore during hardware decompression of DEFLATE encoded data
US9800640B2 (en) * 2013-10-02 2017-10-24 International Business Machines Corporation Differential encoder with look-ahead synchronization
US9608842B2 (en) * 2013-12-13 2017-03-28 Intel Corporation Providing, at least in part, at least one indication that at least one portion of data is available for processing
CN104023037A (zh) * 2014-07-02 2014-09-03 浪潮集团有限公司 一种低系统开销的rapidio数据传输方法
US11044183B2 (en) 2015-12-29 2021-06-22 Xilinx, Inc. Network interface device
US11165683B2 (en) 2015-12-29 2021-11-02 Xilinx, Inc. Network interface device
KR20180108939A (ko) * 2017-03-23 2018-10-05 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10684963B2 (en) * 2018-12-28 2020-06-16 Intel Corporation Fixed ethernet frame descriptor
CN114338530B (zh) * 2021-12-21 2023-09-29 浙江华锐捷技术有限公司 设备状态的调整方法、装置、存储介质及电子装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4258418A (en) * 1978-12-28 1981-03-24 International Business Machines Corporation Variable capacity data buffer system
US4590467A (en) * 1983-10-13 1986-05-20 Rockwell International Corporation Local area network interface controller
US5133062A (en) * 1986-03-06 1992-07-21 Advanced Micro Devices, Inc. RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory
US4860193A (en) * 1986-05-22 1989-08-22 International Business Machines Corporation System for efficiently transferring data between a high speed channel and a low speed I/O device
US4715030A (en) * 1986-08-04 1987-12-22 General Electric Company Local area network bridge
US4852088A (en) * 1987-04-03 1989-07-25 Advanced Micro Devices, Inc. Packet-at-a-time reporting in a data link controller
ZA883232B (en) * 1987-05-06 1989-07-26 Dowd Research Pty Ltd O Packet switches,switching methods,protocols and networks
US5133078A (en) * 1989-08-11 1992-07-21 International Business Machines Corporation Serial frame processing system in which validation and transfer of a frame's data from input buffer to output buffer proceed concurrently
JPH0687569B2 (ja) * 1989-09-28 1994-11-02 アメリカン テレフォン アンド テレグラフ カムパニー 端末アダプタおよびデータ伝送方法
AU637432B2 (en) * 1989-10-10 1993-05-27 Storage Technology Corporation Multiple step data read apparatus
US5278956A (en) * 1990-01-22 1994-01-11 Vlsi Technology, Inc. Variable sized FIFO memory and programmable trigger level therefor for use in a UART or the like
EP0453863A2 (en) * 1990-04-27 1991-10-30 National Semiconductor Corporation Methods and apparatus for implementing a media access control/host system interface
US5136582A (en) * 1990-05-29 1992-08-04 Advanced Micro Devices, Inc. Memory management system and method for network controller
US5119374A (en) * 1990-05-29 1992-06-02 Advanced Micro Devices, Inc. Method of and system for implementing multiple levels of asynchronous priority in FDDI networks
US5247626A (en) * 1990-05-29 1993-09-21 Advanced Micro Devices, Inc. Fddi controller having flexible buffer management
US5043981A (en) * 1990-05-29 1991-08-27 Advanced Micro Devices, Inc. Method of and system for transferring multiple priority queues into multiple logical FIFOs using a single physical FIFO
US5210749A (en) * 1990-05-29 1993-05-11 Advanced Micro Devices, Inc. Configuration of srams as logical fifos for transmit and receive of packet data
US5195093A (en) * 1991-02-14 1993-03-16 Motorola, Inc. Method and apparatus for ensuring CRC error generation by a data communication station experiencing transmitter exceptions
GB9111524D0 (en) * 1991-05-29 1991-07-17 Hewlett Packard Co Data storage method and apparatus
US5293487A (en) * 1991-12-27 1994-03-08 Digital Equipment Corporation Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting
US5434872A (en) * 1992-07-28 1995-07-18 3Com Corporation Apparatus for automatic initiation of data transmission
US5299313A (en) * 1992-07-28 1994-03-29 3Com Corporation Network interface with host independent buffer management

Also Published As

Publication number Publication date
US5732094A (en) 1998-03-24
WO1994002891A1 (en) 1994-02-03
CA2119151C (en) 2001-05-01
US5434872A (en) 1995-07-18
AU4788193A (en) 1994-02-14
AU666769B2 (en) 1996-02-22
JP2006114030A (ja) 2006-04-27
JP3863912B2 (ja) 2006-12-27
EP0606466A4 (en) 1994-04-29
CA2119151A1 (en) 1994-02-03
EP0606466A1 (en) 1994-07-20

Similar Documents

Publication Publication Date Title
JPH06511585A (ja) データ伝送の自動開始装置
JP3336816B2 (ja) マルチメディア通信装置及び方法
JP3339860B2 (ja) ホストから独立したバッファ管理によるネットワーク・インタフェース
US9769274B2 (en) Data transfer, synchronising applications, and low latency networks
JP2539614B2 (ja) ポインタアドレスを発生するための装置および方法
US7865652B2 (en) Power control by a multi-port bridge device
US5307459A (en) Network adapter with host indication optimization
JPH08506674A (ja) ホスト割込み信号およびホスト指示信号の管理を行うネットワーク・アダプタ
JP4317365B2 (ja) 周辺デバイスからホスト・コンピュータ・システムに割込みを転送する方法および装置
JPH04233653A (ja) 速度差が大きい協同プロセッサ間のメッセージ・キュー処理
EP1302854B1 (en) Asynchronous Data transfer
US6463498B1 (en) Transmission of FCP response in the same loop tenancy as the FCP data with minimization of inter-sequence gap
US6845402B1 (en) Descriptor burst read-ahead

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040323

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040623

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040809

A313 Final decision of rejection without a dissenting response from the applicant

Free format text: JAPANESE INTERMEDIATE CODE: A313

Effective date: 20041101

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050928

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20051020

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: 20060919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061002

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: 20091006

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

EXPY Cancellation because of completion of term