JPH09506219A - ネットワーク・インタフェース・コントローラ - Google Patents

ネットワーク・インタフェース・コントローラ

Info

Publication number
JPH09506219A
JPH09506219A JP7515589A JP51558995A JPH09506219A JP H09506219 A JPH09506219 A JP H09506219A JP 7515589 A JP7515589 A JP 7515589A JP 51558995 A JP51558995 A JP 51558995A JP H09506219 A JPH09506219 A JP H09506219A
Authority
JP
Japan
Prior art keywords
input
output
clock
flop
flip
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.)
Ceased
Application number
JP7515589A
Other languages
English (en)
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.)
National Semiconductor Corp
Original Assignee
National Semiconductor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Semiconductor Corp filed Critical National Semiconductor Corp
Publication of JPH09506219A publication Critical patent/JPH09506219A/ja
Ceased legal-status Critical Current

Links

Classifications

    • 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
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation
    • H04J3/0697Synchronisation in a packet node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • 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)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Dram (AREA)

Abstract

(57)【要約】 改良型ネット・ワーク・インタフェース・コントローラ・システム及び、それに関連する方法が、拡張媒体コントローラ・システムで構成される。拡張媒体アクセス・コントローラ・システムは、クロック出力(1つ又は複数)に関するデータの変更が、中間ビット時間位置にほぼ集中したままでいるように、前記クロック出力(1つ又は複数)を、第1のエッジから第2のエッジに切り替えるための、活動クロック・エッジ・スイッチ回路を含むクロック調整回路を含む。活動クロック・エッジ・スイッチ回路は、追加の単一サイクルの抑止を提供する回路を含む。活動クロック・エッジ・スイッチ回路は、クロック出力(1つ又は複数)を1サイクルで第1のエッジから第2のエッジに切り替えるサイクル抑山回路を含み、更に好ましくは、複数の入力と出力、及びストローブ入力を備えるマルチプレクサを含む。前記複数の入力はクロック調整回路に接続され、クロック入力、及び逆クロック入力を受信する。ストローブ入力は選択クロック入力に接続される。出力は送信機、及び受信機に接続される。

Description

【発明の詳細な説明】 ネットワーク・インタフェース・コントローラ 発明の属する分野 本発明は、一般にネットワーク・インタフェース・コントローラ・システムと それに関する方法に関し、より詳しくは、単一サイクルの抑止を備える活動クロ ック・エッジ・スイッチに関するものであるが、このためだけに制限されるもの ではない。 発明の概要 一般に、本発明は改良型ネットワーク・インタフェース・コントローラ・シス テムとそれに関する方法を提供し、より詳しくは、拡張型媒体コントローラ・シ ステムを開示する。拡張媒体アクセス・コントローラ・システムは、少なくとも 1つのクロック入力及びクロック出力を備えた、少なくとも1つの入力クロック 調整回路、及び少なくとも1つの出力クロック調整回路と、巡回冗長検査回路、 受信回路、及び送信回路を含んでいる。クロック調整回路は、活動クロック・エ ッジ・スイッチ回路を含み、出力(1つ又は複数)に関するデータの変更が、中 間ビット(mid-bit)時間位置にほぼ集中したままでいることができるように、第 1のエッジから第2のエッジにクロック出力(1つ又は複数)を切り替える。巡 回冗長検査回路 は、クロック調整回路からクロック出力(1つ又は複数)を受信する。受信回路 は、その入力(1つ又は複数)から少なくとも1つのデータ入力信号を受信する 。この受信回路は巡回冗長検査回路に接続され、かつクロック調整回路に接続さ れている。この受信回路は、巡回冗長検査回路と関連してデータ入力信号(1つ 又は複数)のエラーを検査する。送信回路は、出力(1つ又は複数)に関する、 少なくとも1つのデータ出力信号を送信する。送信回路は巡回冗長検査回路とク ロック調整回路に接続されており、巡回冗長検査回路と関連してデータ出力信号 (1つ又は複数)のエラーを検査するよう動作する。第1エッジは立ち上がりエ ッジで、第2エッジは下降エッジであることが望ましいが、このことは設計上入 れ替えることができる。活動クロック・エッジ・スイッチ回路は、追加的な単一 サイクルの抑止を提供する回路を含む。更に、媒体アクセス・コントローラは、 タリー回路も含み、データ出力信号(1つ又は複数)及びデータ入力信号(1つ 又は複数)に見られるエラーを一覧表示する。活動クロック・エッジ・スイッチ 回路は、1サイクル内の第1エッジから第2エッジにクロック出力(1つ又は複 数)を切り替えるためのサイクル抑止回路を含む。更に、活動クロック・エッジ ・スイッチ回路は、複数の入出力、及びストローブ入力を備えるマルチプレクサ を含むことが望ましい。複数の入力は、クロック調整回路に接続され、クロック 入力と逆クロック入力を受信する。ストローブ入力は選択クロック入力に接続さ れる。出力は送信機及び受信機に接続される。より詳しくは、サイクル抑止回路 は、ORゲート、 第1のANDゲート、第1のフリップフロップ、第2のフリップフロップ、インバ ータ、及び第2のANDゲートを含む。ORゲートは第1と第2の入力、及び出力を 有し、ORゲートの第2の入力はスイッチ入力に接続されている。第1のANDゲー トは第1、第2の入力、及び出力を有している。第1のANDゲートの第1の入力 は、電気的にリセット入力に接続されている。第1のフリップフロップは入力、 出力、逆出力、クリア入力、及びクロック入力を有している。第1のフリップフ ロップの入力はORゲートの出力に接続されている。第1のフリップフロップの出 力は、ORゲートの第1の入力に接続されている。第1のフリップフロップのクロ ック入力は、第1のクロック入力に接続されており、第1のフリップフロップの クリア入力は第1のANDゲートの出力に接続されている。第2のフリップフロッ プは、入力、出力、逆出力、クリア入力、及びクロック入力を有する。クロック 入力は、(インバータによって)遅れが生じている第2のクロック入力に接続さ れている。第2のフリップフロップの逆出力は、第1のANDゲートの第2の入力 に接続されている。第2のフリップフロップのクリア信号は、リセット入力に接 続されている。この入力はインバータの入力に接続されている。インバータは入 力及び出力を有している。第2のANDゲートは、第1、第2の入力と出力を有す る。第1の入力はマルチプレクサの出力に接続されている。第2の入力はインバ ータの出力に接続されている。インバータの入力は、第1のフリップフロップの 出力、及び第2のフリップフロップの入力に接続されている。更に、遅延線も第 1のフリップフロップの出力と インバータの入力の間に接続されうる。媒体アクセス・コントローラ、クロック 調整回路、及び活動クロック・エッジ・スイッチ回路は、好ましくは単一の半導 体基板(例えばシリコン)上に集積された、集積回路である。 好適なシステムの実施例は多数の特徴と利点を有する。このシステムはIEEE 8 02.3 CSMA/CD規格と互換性があり、8/16ビット・インタフェースが可能である。 このシステムはまた、DP8390Dと互換性を有するいくつかの機能を実行するため のソフトウエアも有している。開示されたシステム及び方法は、2.7Vないし5.5V の動作範囲、DMA動作に対する大幅なクロック・サイクルの低減、4.5V SLOWで40 MHzのバス・クロック、及び2.7V SLOWで20MHzのバス・クロックといった、拡張 システム性能を提供する。更に、このシステムは、受信されたパケットの終わり でのバースト時間の決定、FIFO空き/満杯モード、システム構成に最大の柔軟性 を与えるプログラム可能メモリ待ち状態、及び拡張モードにアクセスするために レジスタ・ファイルに追加された互換性モード選択レジスタといった、拡張動作 モードを提供する。更に、このシステムは追加のカスタマイズが行えるという特 徴を提供する。特に、このシステムは、Verilog HDLと同期可能に実装可能で、N SC Verilog符号化標準と互換性を有している。この開示されたシステム、及び方 法はSynopsys Design Compiler V3.0と互換性がある。クロック・ツリー、及び ドライブ・バッファリングに関するセル具体化は、代替簡易セルの個別階層ブロ ックに分離される。同期、単一クロック状態マシン設計方法は、将来のカストマ イ ズに関する拡張性を与える。 図面の簡単な説明 本発明の更なる特徴と利点は、添付の図面に示されるような、様々な本発明の 実施例に関する、以下の、より詳細な説明によって明らかとなる。 図1Aは、拡張ネットワーク・インタフェース・コントローラ標準セル・コアの 全体システムの好適実施例に関するブロック図である。 図1Bは、媒体アクセス・コントローラ(MAC)の好適実施例に関するブロック図 である。 図1Cは、単一サイクル抑止を備えた活動クロック・エッジ・スイッチの回路図 である。 図1Dは、図1Cに示した回路のタイミング図である。 図2は、これらの情報のパケットの典型的フォーマットを示す図である。 図3は、ローカルDMAモジュール8(図1A)及びリモートDMAモジュール20(図 1A)の好適な構成のブロック図である。 図4Aは、好適システム実施例における受信バッファ・リングを示す図である。 図4Bは、好適システム実施例における、初期化時点の受信バッファ・リングを 示す図である。 図4Cは、バッファ・リングに入力される受信パケットを示す図である。 図4Dは、受信バッファ・ページのリンク付けを示す図である。 図4Eは、パケットが境界ポインタにヒットした場合のパケット受信の中断を示 す図である。 図4Fは、パケット受信の終了−パケットの受け取りを示す図である。 図4Eは、パケット受信の終了−−パケット拒絶を示す図である。 図4Hは、リモートDMAによって除去された第1の受信パケットを示す図である 。 図5は、一般的な送信パケット・フォーマットを示す図である。 図6Aは、8390D互換モードに従うパケット処理の終わりを示すタイミング図で ある。 図6Bは、厳密なバースト・モードのパケット処理の終わりを示すタイミング図 である。 図6Cは、送信先取り(prefetch)タイミングに関するタイミング図である。 図6Dは、バッファ・リングからのリモートDMA自動初期化を示す図である。 図7Aは、レジスタ・アドレス・マッピングを示す図である。 図7Bは、DMAレジスタを示す図である。 図7Cは、CRCロジックによってハッシュされるマルチキャスト・アドレスのフ ィルタリングを提供する、マルチキャスト・アドレス・レジスタの動作を示す図 である。 図8は、好適なシステム実施例のネットワーク管理機能を示す図 である。 図9Aは、ローカルDMAサイクル、16ビット・アドレス、0の待ち状態を示すタ イミング図である。 図9Bは、FIFOバースト制御を示すタイミング図である。 図9Cは、AD_MUX_H、AD_MUX_L波形を示すタイミング図である。 図9Dは、リモートDMA送信に関する、バス・ハンドシェーク信号を示すタイミ ング図である。 図9Eは、リモートDMA読み取りサイクルを示すタイミング図である。 図9Fは、リモートDMA書き込みサイクルを示すタイミング図である。 図9Gは、スレーブ・モード・タイミングを示すタイミング図である。 図10は、レジスタ読み取り動作を示すタイミング図である。 図11は、レジスタ書き込み動作を示すタイミング図である。 図12は、ローカルDMA読み取りサイクル動作を示すタイミング図である。 図13は、ローカルDMA書き込みサイクルを示すタイミング図である。 図14Aは、ホスト書き込みサイクル復旧時間を示すタイミング図である。 図14Bは、ホスト読み取りサイクル復旧時間を示すタイミング図である。 図15は、リモートDMA動作(読み取り、送信コマンド)を示すタイミング図で ある。 図16は、リモートDMA(書き込みサイクル)動作を示すタイミング 図である。 図17は、待ち状態挿入動作を示すタイミング図である。 図18Aは、連続タイミング図−受信(フレームの開始)である。 図18Bは、連続タイミング図−受信(フレームの終わり)である。 図19Aは、連続タイミング図−送信(フレームの開始)である。 図19Bは、連続タイミング図−送信(フレームの終わり、CDハートビート)で ある。 好適実施例の詳細な説明 図1Aは、拡張ネットワーク・インタフェース・コントローラ標準セルの全体シ ステムの好適実施例を示すブロック図である。これは、ソフトウエア及びネット ワークがDP8390Dネットワーク・インタフェース・コントローラと互換性がある ように設計されたCMOS標準セル機能コアであることが望ましい。DP8390Dネット ワーク・インタフェース・コントローラは、パーソナル・コンピュータのイーサ ーネット接続において業界標準となってきている。ソフトウエアに関してDP8390 Dと互換性を有する拡張ネットワーク・コントローラを設計するために、ソフト ウエアのコストが非常に高くなっている。 好適実施例は、イーサーネットのローカル・エリア・ネットワークのIEEE 802 .3 CSMA/CD規格に基づいて、情報のパケットの送信と受信に関する全ての媒体ア クセス・コントロール(MAC)層機能を実装する。一般的には、シンクロナイザ・ モジュール4は、MACモジュール2からの入力線、Mac_rd_zとMac_wr_z、及びMAC モジュール6から のデータ線、Tx/Rx、及びMACモジュール2からのMAC状態線を有する。シンクロ ナイザ・モジュール4もまた、出力線、BRQ、Back、PRQ、及びACK_Zと、入力線 、READY_Z、Rack_Z、及びWack_Zを有する。MAC 2は、入力、COL、RXC、RXD、CRS 、TXC及びBackoff_Clockと、出力、TXE、TXD及びLBKを有する。シンクロナイザ ・モジュール4は、Tx/Rxデータ線と、線MAC_rd_z_sync、MAC_wr_z_synを介して FIFOモジュール6に接続されている。他の接続は図1Aに示されている。local_dm aモジュール8は、単一の線L-dma_rd_z、L-dma_wr_zを介してFIFOモジュール6 に接続されている。local_dmaモジュール8はまた、線L-bus_cycle_requestを介 して、bus_cycle_generatorモジュール16に接続されている。local_dmaモジュー ル8はまた、線Clda、Tbcr、Ac、及びBcを介して、address_counterモジュール1 2に接続され、更にホスト・モジュール10及びシンクロナイザ・モジュール4に 接続されている。local_dmaモジュール8はまた、ホスト・モジュール10からの 出力、LOCAL_DMA_STATE_OUT、L_DMA_ACTIVE_OUTと、入力H_reqを有している。ホ スト・モジュール10は、出力Cs_Z、SRD_Z、SWR_Z、出力TEST_Register、出力pag e_zero、及び出力INTを有している。シンクロナイザ・モジュール4は、remote_ dmaモジュール20に接続されている。remote_dmaモジュール8は、4ビット出力 、R_DMA_State_Outを有し、local_dmaモジュール8とシンクロナイザ・モジュー ル4に接続されている。DMA_cellsモジュール14は、入力BSCK、及び内部リセッ トと内部クロック・ツリー出力を有している。Bus_cycle_generatorモジュール1 6は出力ADSO、ADSO_EN、MRD_Z、MW R_Z、PRD_Z、PER_Z、AD_MUX_H/L、及びDATA_H/L_EN_OUTと、3ビットの出力、Bu s_Cycle、State_Outを有する。シンクロナイザ・モジュール4、fifoモジュール 6、local_dmaモジュール8、ホスト・モジュール10、及びremote_dmaモジュー ル20は、状態バス28に接続されている。MACモジュール2、FIFOモジュール6、l ocal_dmaモジュール8、ホスト・モジュール10、及びremote_dmaモジュール20は 、線Ra_lat、Cr_ps1/0、H_rd_z、及びH_wr_zに関する8ビット・バス24と、data _tに関する16ビット・バス26に接続される。図1Aに示される、モジュールの重要 な動作上の特性及び特徴が、対応するテキストによって、より詳細に説明される 。それ以外の細部にわたる重要な点は、図1A内に示されている。更に、以下の表 は、図1Aにおける多くの接続を記述するのに使われる頭文字を定義しており、こ れによって、当業者であれば、図1Aに示される好適なシステムの実施例を十分に 理解することができる。図1A及び1Bで用いられているラベルは表1に定義されて いる。 図1Bは、図1AのMACモジュール2の好適実施例のブロック図であり、以下の記 述、及び追加の図面によって、より詳しく説明される。特に、図1Cは、単一サイ クル抑止を有する活勤クロック・エッジ・スイッチ回路120の回路図であり、図1 Dは、図1Cに示された回路のタイ ミング図であり、グリッチ・フリー動作で単一サイクル抑止の特徴を示すもので ある。拡張媒体アクセス・コントローラ・システム2は、少なくとも1つの入力 、少なくとも1つの出力、少なくとも1つのクロック入力と少なくとも1つのク ロック出力を有する、図1Bのクロック・モジュール3内に設置されたクロック調 整回路120、巡回冗長検査回路、受信回路、及び送信回路を備える。クロック調 整回路120は、クロック出力(1つ又は複数)を第1のエッジから第2のエッジ に切り替えて、その出力(1つ又は複数)に関するデータ変更が、ほぼ中間ビッ ト時間位置に集中したままでいるようにする、活動クロック・エッジ・スイッチ 回路120を備える。巡回冗長検査回路5(図1B)は、クロック調整回路120からク ロック出力(1つ又は複数)を受信する。受信回路7(図1B)は、その入力(1 つ又は複数)から少なくとも1つのデータ入力信号を受信する。受信回路7は巡 回冗長検査回路と、クロック調整回路120に接続されている。この受信回路7は 、巡回冗長検査回路5(図1B)と関連してデータ入力信号(1つ又は複数)のエ ラーを検査する。送信回路は、その出力(1つ又は複数)に関する、少なくとも 1つのデータ出力信号を送信する。送信回路9(図1B)は巡回冗長検査回路5と クロック調整回路120に接続されており、巡回冗長検査回路5と関連してデータ 出力信号(1つ又は複数)のエラーを検査するよう動作する。第1エッジは立ち 上がりエッジで、第2エッジは下降エッジであることが望ましいが、このことは 設計上入れ替えることができる。活動クロック・エッジ・スイッチ回路120は、 追加的な単一サイクルの抑止 を提供する回路を含む。更に、媒体アクセス・コントローラは、タリー回路も含 み、データ出力信号(1つ又は複数)及びデータ入力信号(1つ又は複数)に見 られるエラーを一覧表示する。活動クロック・エッジ・スイッチ回路120は、1 サイクル内の第1エッジから第2エッジにクロック出力(1つ又は複数)を切り 替えるためのサイクル抑止回路を含む。更に、活動クロック・エッジ・スイッチ 回路120は、複数の入出力、及びストローブ入力を備えるマルチプレクサ102を含 むことが望ましい。複数の入力は、クロック調整回路120に接続され、クロック 入力と逆クロック入力100を受信する。ストローブ入力は選択クロック入力に接 続される。この出力は送信機及び受信機に接続される。より詳しくは、サイクル 抑止回路101は、ORゲート116、第1のANDゲート114、第1のフリップフロップ11 0、第2のフリップフロップ108、インバータ106、及び第2のANDゲート104を含 む。全てのフリップフロップは、ポジティブ・エッジが非同期活動低レベルのク リア入力でトリガされるようなDタイプであることが好ましい。ORゲート116は 第1、第2の入力(A及びB)と出力(Y)を有し、ORゲート116の第2の入力 はスイッチ入力に接続されている。第1のANDゲート114は第1、第2の入力(A 及びB)、及び出力(Y)を有している。第1のANDゲート114の第1の入力(A )は、電気的にリセット入力に接続されている。第1のフリップフロップ110は 入力(D)、出力(Q)、逆出力(QZ)、クリア入力(CLRZ)、及びクロック入 力(CLK)を有している。第1のフリップフロップ110の入力はORゲート116の出 力に接続されている。第1のフ リップフロップ110の出力は、ORゲート116の第1の入力に接続されている。第1 のフリップフロップ110のクロック入力は、第1のクロック入力に接続されてお り、第1のフリップフロップのクリア入力は第1のANDゲート114の出力に接続さ れている。第2のフリップフロップ108は、入力、出力、逆出力、クリア入力、 及びクロック入力を有する。クロック入力は、(インバータ112及び118に よって)遅れが生じている第2のクロック入力に接続されている。第2のフリッ プフロップ108の逆出力は、第1のANDゲート114の第2の入力に接続されている 。第2のフリップフロップ108のクリア信号は、リセット入力に接続されている 。この入力はインバータ106の入力に接続されている。インバータ106は入力及び 出力を有している。第2のANDゲート104は、第1、第2の入力(A及びB)と出 力(Y)を有する。第1の入力はマルチプレクサ102の出力に接続されている。 第2の入力はインバータ106の出力に接続されている。インバータ106の入力は、 第1のフリップフロップ110の出力、及び第2のフリップフロップ108の入力に接 続されている。更に、遅延線107も第1のフリップフロップ110の出力とインバー タ106の入力の間に接続されうる。遅延線107(1Dセル)は、グリッチ・キル・フ リップフロップの出力をTXCとtxc_zの間のスキュー(skew)危険域(>5ns)の外に移 動させるのに用いられる、制御された遅延バッファを表している。媒体アクセス ・コントローラ2、クロック調整回路120、及び活勤クロック・エッジ・スイッ チ回路120は、好ましくは単一のシリコン基板上に集積された、集積回路である 。 送信/受信パケットのカプセル化/非カプセル化 図2Aは規格IEEE802.2の情報パケットの典型的フォーマットを示しており、一 般的には、プリアンブル21、フレーム区切りの開始(SFD)23、目的アドレス25 、発信元アドレス27、長さ29、データ31、及びフレーム検査シーケンス(FSC)3 3を含む。このパケットはマンチェスタ符号化され、外部endecによって復号化さ れ、更に、クロックとともにNRZデータを用いる好適システムの実施例に対し、 連続して送信される。全てのフィールドは、データ・フィールド31を除いて固定 長であることが望ましい。好適システムの実施例は、プリアンブル21、SFD 23、 及びFCS 33のフィールドを、送信の間に生成し、付加する。フィールド、プリア ンブル21とSFD23は、受信時に除去される(受信時にCRCがバッファ・メモリに対 して行われる)。 プリアンブル21とフレーム区切りの開始23 マンチェスタ符号化され、1、0どちらかのプリアンブル・フィールドは、入 力パケットとのビット同期をもたらすように、外部連続(serial)ネットワーク・ インタフェース(SNI)によって使用される。送信時に、各パケットは1か0のど ちらかである62ビットのプリアンブルを含む。このプリアンブル21のいくつかは 、パケットがネットワークを送信されている間に失われる。好適なシステムの実 施例は、このプリアンブル・フィールドを除去する。バイト調整が、2つの連続 する1を含むSFDパターンを用いて行われる。図1Aに示すよ うな好適なシステムの実施例は、SFD 23のパターンを1バイトとして取り扱わず 、2ビットのパターンのみを検出する。このことによって、SFD 23内で先行する どのプリアンブル21も、フェーズ・ロッキングに使用することができる。 目的アドレス25 目的アドレス25は、ネットワーク上のパケットの目的地を示し、ノードに到達 したものから不要なパケットをフィルタするのに用いられる。この好適システム の実施例によってサポートされる3つのアドレス・フォーマットのタイプは、物 理アドレス、マルチキャスト・アドレス、及びブロードキャスト・アドレスであ る。物理アドレスは単一ノードのみに対応するユニークなアドレスである。全て の物理アドレスは「0」のLSBを有している。これらのアドレスは内部的に記憶さ れている物理アドレス・レジスタと比較される。目的アドレス内の各ビットは、 好適システムの実施例がパケットを受け入れるために、順序正しくマッチしてい なければならない。マルチキャスト・アドレスはLSBに「1」を有するものとし て開始される。好適システムの実施例は、全てのマルチキャスト・アドレスを6 ビット値にマッピングする、標準ハッシュ・アルゴリズムを用いてマルチキャス ト・アドレスをフィルタする。この6ビット値は、その値をフィルタする64ビッ ト配列をインデックス付けする。アドレスが全て1からなる場合、それはブロー ドキャスト・アドレスであり、パケットが全てのノードに関するものであること が示される。無差 別なモードによって、情報の全パケットの受信が可能になる。しかし、目的アド レスはどんなフィルタとのマッチングも必要とされない。物理アドレス、ブロー ドキャスト・アドレス、マルチキャスト・アドレス、及び無差別アドレス・モー ドが選択されうる。 発信元アドレス27 発信元アドレス27は、パケットを好適システムの実施例による処理無しに送信 するノードの物理アドレスである。このフィールドは通常、バッファ・メモリに 送信される。 長さフィールド29 2バイトの長さフィールド29は、パケットのデータ・フィールド内に含まれる バイト数を示す。このフィールドは好適システムの実施例によっては解釈されな い。 データ・フィールド31 データ・フィールド31は46バイトないし1500バイトのうちいずれかのデータを 含む。1500バイトより長いメッセージは、複数パケットに分割する必要がある。 46バイトより短いメッセージは、データ・フィールドを最低46バイトの長さにな るようにデータを埋め込む必要がある。データ・フィールドが埋め込まれた場合 、有効データ・バイト数は、その長さより小さい数になる。好適システムの実施 例は、短いパケットに対しては除去や埋め込みを行わず、サイズを 超えたパケットに対しては検査を行わない。 フレーム検査シーケンス・フィールド33 FCS 33は、計算され、送信の間にパケットに付加されて、パケット受信時にエ ラーの検出が行えるようになる、32ビットCRCフィールドである。受信の間、エ ラー・フリー・パケットは結果的にCRC生成器内の特定のパターンである。不適 当なCRCを有するパケットは拒絶される。AUTODIN II多項式(X32+X26+X23X22 +X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+1)が、CRCの計算に用いら れる。直接ホスト・アクセスが、初期化及び状態収集に関してサポートされ、2 重DMAチャネル構成が受信パケットのローカル・メモリへの効果的な記憶を可能 にする。好適システムの実施例は、体系的な変更とバス・クロック・スピードの 改良によって、元のNICに対して大幅な性能向上を実現した。好適システムの実 施例はまた、多重機能VLSIデバイスとカストマイゼーションに関する追加のコア 機能との統合を行い、最小のリスクで短時間のうちに特定の顧客要求を満足させ る。 直接メモリ・アクセス制御 好適システムの実施例のDMA機能は、様々なシステム構成における好適システ ムの実施例の使用を極めて簡略化するものである。ローカルDMAモジュール8( 図1A)のチャネルは、FIFOモジュール6(図1A)と(一般的に同一のシリコン基 板上にない)メモリの間でデー タを送信する。送信の際、図2に示すようなパケットは、バースト・モードでメ モリからFIFOモジュール6に直接メモリ・アクセス(DMA)される。競合が発生す ると(15回まで)、パケットはプロセッサの介入なしに再送信される。受信の際 の、ローカルDMAモジュール8を介する、FIFOモジュール6から受信バッファ・ リングへのパケットの送信が、以下でより詳細に説明される。 リモートDMAチャネルは、好適システムの実施例に関して、バッファ・メモリ とシステム・メモリ間の送信を実現する。DP8390の32ビットDMA機能を実装する ことは望ましくないことに注意すべきである。 2重DMA構成 図3は、ローカルDMAモジュール8(図1A)とリモートDMAモジュール20(図1A )を実装した好適実施例のブロック図である。この好適な構成は、ローカルDMA モジュール8(図1A)とリモートDMAモジュール20(図1A)によって提供される チャネルの両方を使用している。ネットワークの活動はローカル・バス44から分 離され、この場合、好適システムの実施例のローカルDMAチャネルは、バッファ ・メモリ32と図1AのFIFOモジュール6間のバースト送信を実行する。リモートDM Aモジュール20は、バッファ・メモリ32とホスト・メモリ間で、双方向I/Oポート を介してデータを送信する。リモートDMAモジュール20は、ローカル・アドレッ シング機能を提供し、ホスト・モジュール10によってスレーブDMAとして使用さ れる。ホスト側のアドレッシングは、ホストDMAまたはCPUによって提供されなけ ればなら ない。ホストDMAまたはCPUステートメントは、ホスト側のアドレッシングが、( ネットワーク・インタフェース・コントローラ(NIC)にとって)外部の発信元に よって実行されなければならないという事実を伝えるものである。好適システム の実施例は、ローカル、及びリモートDMAモジュール8及び20の動作がインタリ ーブされることを可能とする。 パケット受信 図4A、4B、4C、4D、4E、4F、4G、4H、及び4Iに示すように、ローカルDMAアド レス8の受信チャネルは、受信パケットを記憶するための、一連の連続した固定 長256バイト(128語)のバッファからなるバッファ・リング構造を使用する。受 信バッファ・リングの位置は、2つのレジスタ、ページ開始レジスタ50及びペー ジ終了レジスタ52(図4B)内にプログラムされる。イーサーネット・パケットは 通常、より短いリンク制御パケットと、より長いデータ・パケットの分配からな っている。この256バイトのバッファ長は、メモリの最も高い使用効率を提供す るために、短いパケットと、より長いパケットの間の良好な妥協を提供する。更 に、これらのバッファは負荷の高いネットワーク内の連続(back-to-back)パケ ットを記憶するためのメモリ資源を提供する。パケットを記憶するためのバッフ ァの割り当ては、好適システムの実施例ではバッファ管理ロジックによって制御 される。バッファ管理ロジックは3つの基本機能、長いパケットに関する受信バ ッファのリンク、パケットが拒絶された場合のバ ッファの復旧、及びホスト・モジュール10によって読み取られているバッファ・ ページの再循環を提供する。 図4A、及び4Bに示されているように、初期化においては、64Kバイト(即ち32K 語)のアドレス空間の一部が、受信バッファ・リング用に予約される。2つの8 ビット・レジスタ、ページ開始アドレス・レジスタ(PSTART)52とページ終了アド レス・レジスタ(PSTOP)50は、バッファが常駐する物理的な境界を定義する。好 適システムの実施例は、そのバッファのリストを論理的なリングとして扱う。DM Aアドレスがページ終了アドレス53に達した時はいつも、DMAはページ開始アドレ ス51にリセットされる。第1の受信パケットに関してリング・バッファ・オーバ フローを発生するので、ページ開始アドレス51は、ページ終了アドレス53と同じ にセットされることはない。 バッファ・リングの初期化 図4Bに示すように、2つの静的レジスタ、及び2つの作業レジスタは、バッフ ァ・リング58の動作を制御する。それは、ページ開始レジスタ50(前述)、ペー ジ終了レジスタ50(前述)、現在ページ・レジスタ54、及び境界ポインタ・レジ スタ56である。現在ページ・レジスタ54は、パケットを記憶するのに用いられる 第1のバッファを指し、状態をバッファ・リング58に書き込むか、Runtパケット やCRC、又はフレーム調整エラーが発生した場合にDMAアドレスを復旧するための ローカルDMAモジュール8を復旧するのに用いられる。Runtパケットは要求され た64データ・バイトよりも少ないバイトを 含むパケットとして定義される。境界ポインタ・レジスタ56は、まだホストに読 み取られていないリング内の第1のパケットを指す。ローカルDMAアドレス境界 レジスタに達すると、情報の入力パケット受信は中断される。境界レジスタ・ポ インタ56は、パケットを除去するためにリモートDMAモジュール20(図1A)を初 期化し、パケットが除去されると先に進められる。要するに、現在ページ・レジ スタ54は、書き込みポインタとして作用し、境界ポインタ・レジスタは、読み取 りポインタとして作用する。初期化の際に、ページ開始レジスタ52の値が現在ペ ージ・レジスタ54と、境界ポインタ・レジスタ56の両方にロードされる。 受信の開始 図4Cに示されるように、第1のパケットが到着すると、好適システム実施例は そのパケットを、現在ページ・レジスタ54によって指された位置に記憶し始める 。4バイトの初期オフセットは、このパケットに対応する受信状態を記憶する記 憶域を使用可能にするために使用される。 受信バッファ・ページのリンク 図4Dに示すように、パケット長が第1の256バイトのバッファを使い果たした 場合、ローカルDMAモジュール8は次のバッファへの前方向リンクを行って、そ のパケットの残りを記憶する。最大長のパケットに対して、バッファ・ロジック は6つのバッファをリンクして、 そのパケット全体を記憶する。リンク時には、バッファをスキップすることはで きず、従ってパケットは常時連続したバッファ内に記憶されている。次のバッフ ァがリンクされる前に、バッファ管理ロジックは2つの比較を行う。第1の比較 検査は、次のバッファのDMAアドレスと、ページ終了レジスタ50との同一性に関 してである。バッファ・アドレスがベージ終了レジスタ50と等しい場合、バッフ ァ管理ロジックはDMAを、ページ開始アドレス・レジスタ52内にプログラムされ た受信バッファ・リング58の値で、第1のバッファに復旧する。第2の比較検査 は、次のバッファ・アドレスのDMAアドレスと、境界ポインタ・レジスタ56の内 容との同一性に関してである。この2つの値が等しい場合、受信は中断される。 バッファのリンク、及び比較処理は、余分なバス・クロック・サイクルをとらな い。境界ポインタ・レジスタ56は、まだ読み取られていない受信機バッファ・リ ング内のどのエリアも上書きされないように保護するのに用いられうる。バッフ ァのリンクの際には、バッファ管理は決してこのポインタと一致しない。そのた め、効果的にどんな上書きでも避けることができる。バッファ・アドレスが境界 ポインタ56にも、ページ終了アドレス52にも一致しない場合、次のバッファへの リンク付けが実行される。 バッファ・リング・オーバフロー 図4Eに示されているように、バッファ・リング58が満杯でかつ、ローカルDMA モジュール8が境界ポインタ・アドレス56に達した場合、 入力パケットの受信は好適システム実施例によって中断される。従って、以前に 受信しており、今もバッファ・リング58内に含まれているパケットは、無効とは ならない。 極端に負荷の高いネットワークでは、ローカルDMAモジュール8は、バッファ ・リング58のオーバフローによって使用不能となる可能性があり、それによって 好適システムの実施例の、ネットワークからのパケットのバッファリングが抑止 される。この状況から復旧するには、1つ以上のパケットがバッファ・リングか らアンロードされなければならない。リモートDMAは、OVWビットがセットされて いる間は依然として機能している。パケットの除去後、STAビットを1、STPビッ トを0にして好適システムの実施例を再スタートさせる。 パケット操作の終了 図4F及び4Gに示すように、パケットの最後で、好適システムの実施例は、受信 パケットが受け入れられるものか拒絶されるものかを判定する。その実施例はバ ッファ・ヘダーの記憶を行うルーチン、又はパケットを記憶するのに用いられる バッファを回復する別のルーチンに分岐する。 成功した受信 図4Fに示すように、情報パケットの受信が成功した場合、ローカルDMAモジュ ール8はパケットを記憶するのに使用される第1のバッファ(現在ページ・レジ スタ54によって指される)に復旧される。 ローカルDMAモジュール8は次に、受信状態レジスタ、次のパケットが記憶され る(バッファ4)場所を指すポインタ、及び受信バイトの数からなる、4バイト のパケット・ヘダーを記憶する。最後のバッファの残りのバイトは廃棄され、次 のパケットの受信が、次の空の256バイト・バッファ境界に関して開始される。 現在ページ・レジスタ54は次に、バッファ・リング58内の次の可能なバッファに セットされる。受信されたCRCはバッファ・メモリ内において、パケットの受信 データの最後のバイトの後に、常に記記憶される。 拒絶されたパケットのバッファ回復 図4Gに示すように、パケットがRuntパケットであるか、又はCRCやフレーム調 整エラー60を含む場合、そのパケットは拒絶される。バッファ管理ロジックは、 DMAをバケットの記憶に使用される第1のバッファ・ページ(CURRによって指さ れる)に再びリセットし、拒絶されたパケットを記憶するのに使用されている全 てのバッファを回復させる。この動作は、好適システムの実施例がruntパケット 、又はCRCやフレーム調整エラー60を有するパケットを受け入れるようにプログ ラムされた場合には、行われない。 リングからのパケットの除去 図4Hに示すように、パケットは、リモートDMAモジュール20や外部装置を用い てリングから除去される。リモートDMAモジュール20を用いる場合、送信パケッ ト・コマンドが使用されうる。これは、リモ ートDMAモジュール20が自動的に、境界ポインタ56によって指される受信パケッ トを除去するようにプログラムしてある。送信の終わりで、好適システムの実施 例が境界ポインタ56を移動し、受信用の追加バッファを開放する。境界ポインタ 56はまた、境界ポインタ・レジスタのプログラミングによって、手動で移動され ることもある。 受信パケットの記憶フォーマット 表2、3、及び4は、どのようなフォーマットでパケットがローカルDMAチャ ネルのモジュール8(図1A、及び特に図3に示される)によってメモリ内に配置 されるかを示している。これらのモードはデータ構成レジスタ内から選択される 。 記憶フォーマット 以下のフォーマットはシリーズ32000、及び808Xタイプ・プロセッサで使用さ れる。 以下のフォーマットは68000タイプのプロセッサで使用される。 以下のフォーマットは一般的な8ビットCPUで使用される。 パケット送信 ローカルDMAモジュール8は、パケットの送信中にも使用される。3つのレジ スタ、送信ページ開始アドレス・レジスタ(TPSR)と送信バイト・カウント・レジ スタ(TBCR0、1)が、送信中のDMA送信を制御する。好適システムの実施例が、こ れらのレジスタによって指さ れたパケットを送信するコマンドを受信した場合、バッファ・メモリ・データは 、送信中に要求されたものとしてFIFOモジュール6内に移動される。好適システ ムの実施例はプリアンブル、同期、及びCRCフィールドを生成して付加する。 送信パケットの組立 好適システムの実施例は、図5に示すフォーマットを有した、連続的に組み立 てられたパケットを要求する。送信バイト・カウントは目的アドレス、発信元ア ドレス、長さフィールド、及びデータを含んでおり、プリアンブルとCRCは含ん でいない。送信パケットが64バイトより小さい場合、合計パケット・サイズは最 小サイズの64バイトになるよう埋め込みがなされなければならない。プログラマ は、埋め込みバイト及びその除去に責任がある。このことによってパケットは、 IEEE802.3で設定された最小パケット仕様に保持される。 送信 送信前に、TPSR(送信ページ開始レジスタ)及びTBCR0、TBCR1(送信バイト・ カウント・レジスタ)が初期化されなければならない。パケットの送信を初期化 するために、コマンド・レジスタ内のTXPビットがセットされる。送信状態レジ スタ(TSR)がクリアされ、好適システムの実施例は(それが現在受信中でない限 り)メモリから送信データのプリ・フェッチを開始する。フレーム間のギャップ が一時中断になっていれば、好適システムの実施例は送信を開始す る。 送信開始の条件 パケットを送信するには、以下の3つの条件を満たす必要がある。 1.フレーム間のギャップ・タイマがフレーム間のギャップの最初の9.6μsで 一時中断していること。 2.少なくとも1バイトがFIFOモジュール6に入力されていること。 (これはバースト送信が開始されていることを示す。) 3.好適システムの実施例が競合を発生させている場合には、バックオフ・タイ マが時間切れとなること。 プリアンブルが開始される前にキャリア検知が表明される場合、好適システム の実施例は受信機となる。 競合からの回復 送信の間、バッファ管理ロジックが送信状態を監視して、競合が発生したかど うか判定する。競合が検出された場合、バッファ管理ロジックはFIFOモジュール 6をリセットし、パケットの再送信用に送信DMAポインタを復旧する。COLビット がTSR内にセットされ、NCR(競合レジスタの数)がインクリメントされる。15よ り多い競合が検出されると、送信が中断され、TSR内にABTビットがセットされる 。過度の競合が発生した場合、NCRは0として読み取られる。 送信パケット組立フォーマット 以下の図は、個別バイト順序づけ技法に関して、送信前にパケットがどのよう に組み立てられるかを示すものである。データ構成レジスタ内で様々なフォーマ ットが選択される。このフォーマットはシリーズ32000、及び808Xタイプ・プロ セッサで使用される。表5、6、及び7は好適フォーマットの詳細である。 以下のフォーマットはシリーズ32000、及び808Xタイプ・プロセッサで使用さ れる。 以下のフォーマットは6800タイプ・プロセッサで使用される。 以下のフォーマットは一般的な8ビットCPUで使用される。 リモートDMAモジュール20 リモートDMAモジュール20によって提供されたチャネルは、送信パケットの組 立、及び受信パケットの受信バッファ・リングからの除去に用いられる。そのチ ャネルはまた、ホスト・メモリとローカル・バッファ・メモリの間でデータのブ ロック、又はコマンドを移動させるための汎用DMAチャネルとしても使用される 。3つの動作モード、リモート書き込み、リモート読み取り、及びパケット送信 がある。2つのレジスタ対が、リモートPMAモジュール20、リモート開始アドレ ス(RSAR0、RSAR1)、及びリモート・バイト・カウント(RBCR0、RBCR1)レジスタ対 を制御するために使用される。ブロックの開始を指す開始アドレス・レジスタ対 ポインタが動かされる。このポインタは、リモートDMAモジュール20が処理中の 場合に、現在アドレス・ポインタとしても機能する。バイト・カウント・レジス タ対は、送信されるバイト数を示すために使用される。完全ハンドシェーク・ロ ジックが提供され、ローカル・バッファ・メモリと双方向I/Oポート間でデータ の移動が行われる。 リモート書き込み リモート書き込み送信は、ホストからローカル・バッファ・メモリ内にデータ のブロックを移動するために使用される。リモートDMAモジュール20によって提 供されるチャネルは、データをI/Oポートから読み取り、リモート開始アドレス の先頭のローカル・バッファ・メモリに、それを順に書き込む。各送信の後で、 DMAアドレスはインクリメントされ、バイト・カウンタはデクリメントされる。D MAは、リモート・バイト・カウント・レジスタがカウント0に達したときに終了 する。 リモート読み取り リモート読み取り送信は、データのブロックをローカル・バッファ・メモリか らホストに移動させるために使用される。リモートDMAモジュール20は順にデー タをリモート開始アドレスの先頭のローカル・バッファ・メモリから読み取り、 I/Oポートにそのデータを書き込む。各送信の後で、DMAアドレスはインクリメン トされ、バイト・カウンタはデクリメントされる。DMAは、リモート・バイト・ カウント・レジスタが0に達したときに終了する。32ビット・アドレス・モード では、LASがDCR内にセットされ、リモートDMAモジュール20による動作が使用で きなくなる。 FIFOとバス動作の概観 ネットワークから入力され(又はネットワークに出力され)、システム・メモ リに出力される(又はシステム・メモリから入力される)データの様々な速度に 対応するために、好適システムの実施例はバスと媒体間のデータをバッファリン グする16バイトのFIFOを含んでいる。FIFOの閾値は、様々な速度でFIFOが満たさ れ(又は空にされ)ることができるように、選択可能である。FIFOモジュール6 にプログラムされた閾値が入力されている場合、ローカルDMAチャネルは、これ らのバイト(又は語)をローカル・メモリ内に送信する。ローカルDMAには、最 小バス待ち時間内でのバスに対するアクセスが与えられているが、それ以外の場 合、FIFOのアンダラン(又はオーバラン)が発生するということは重要である。 FIFOのアンダラン、又はオーバランを理解するために、この状態を発生させる 2つの要因がある。 1.ローカルDMAがFIFOの機能を提供する前に、ネットワークによってFIFOが満 杯(又は空)になるほど、バスの待ち時間が長い。 2.バスの待ち時問、又はバスのデータ速度が、ネットワークのデータ速度(10M b/s)より遅いポイントへのローカルDMAのスループットを低下させる。 第2の状態はバス・クロック及び語の幅(バイトの大きさ又は語の大きさ)にも 依存する。 最悪の場合の状態は、好適システムの実施例が許容できる全体のバス待ち時間を 最終的に制限することになる。 受信の終わりでのFIFO動作:8390D互換モード 図6Aに示すように、キャリア検知が低レベルになってきた場合、好適システム の実施例はパケット処理シーケンスの終わりを入力し、パケットの開始で、FIFO を空にし、状態情報を書き込む。好適システムの実施例はその全体シーケンスに 関してバスを使用する。ちょうど好適システムの実施例のように、パケットの端 が最後のFIFOバーストを実行する場合に、BREQが拡張できる最も長い時間が生じ る。この場合、好適システムの実施例は、プログラムされたバースト送信を実行 した後にFIFOモジュール6内の残りのバイトを一斉に出力し、ヘダー情報をメモ リに書き込むことによって完了する。この順序は通常、以下のステップを含む。 1.好適システムの実施例は、FIFOの閾値に達したために、BREQを発行する。 2.バーストの間、パケットの終わりによって結果的にBREQが拡張される。 3.好適システムの実施例がFIFOから一斉に残りのバイトを出力する。 4.好適システムの実施例は内部処理を実行してヘダー書き込みの準備をする。 5.好適システムの実施例は4バイト(2言)のヘダーを書き込む。 6.好適システムの実施例がBREQの表明を終了する。 受信の終わりでのFIFO動作:完全バースト・モード 互換性選択モード・レジスタが完全バースト・モードにプログラムされた場合 、好適システムの実施例は、現在のローカルDMAバーストを終了させ、バスを開 放する。好適システムの実施例は再び要求を発行し、再受信をした後で、FIFOを 空にし、次のページ位置を計算し、パケットのヘダーを書き込む。このモードは 8390にパケット受信の終わりで例外的に長い時間バスの制御を維持させるDP8390 内の問題を除去する。 閾値検出(バス待ち時間) 許容可能なバス待ち時間は、BREQと、FIFOオーバランとアンダランが発生しな いBACKの間での、最大の遅れである。FIFOアンダランは、好適システムの実施例 が空のFIFOを読み取る場合、パケット送信の間に発生する。FIFOオーバランは、 好適システムの実施例が一杯になったFIFOに書き込みを行う場合、パケット受信 の間に発生する。FIFOは、プログラム可能な閾値に達した場合はいつでも、ロー カルDMAからの供給を要求する。FIFO内のデータの量がプログラムされた閾値以 上であった場合、パケット受信の間に閾値指標が与えられる。FIFO内の空になっ ている位置の数がプログラムされた閾値以上であった場合、パケット送信の間に 閾値指標が与えられる。従って、プログラムされた閾値が小さいほど、FIFOが早 く供給を要求してしまい、大きなバスの待ち時間を許してしまう。 送信の開始時におけるFIFO 図6Cを参照すると、好適システムの実施例は、TXE出力が高レベルになる(こ のことは好適システムの実施例がプリアンブルの送信を開始したことを示す)ま で、データ送信の最初のバーストに対する直接メモリ・アクセスを起動しない。 このことによって、好適システムの実施例は、物理媒体を介した実際の送信より 前の、どんな時においても、入力メッセージに応答することができる。こうした 実装の結果、好適システムの実施例に関する初期メモリ待ち時間要件が、FIFO閾 値設定に関係なく、6μsになる。 パケット・コマンドの送信 リモートDMAモジュール20によって提供されるチャネルは、受信バッファ・リ ングからの単一パケットを送信するために、自動的に初期化されうる。CPUはこ の送信を、「パケット送信」コマンドを発行することによって開始する。ローカ ルDMAモジュール20は、境界ポインタ・レジスタ56内に含まれる値に初期化され 、リモート・バイト・カウント・レジスタ対(RBCR0、RBCR1)は、BNRYによって 指されたパケットのバッファ・ヘダーにある受信バイト・カウントの値に初期化 される。データが送信された後に、境界ボインタ56は、バッファが新しい受信パ ケット用に使用されるように進められる。バイト・カウントが0と等しい場合、 リモート読み取りは終了する。リモートDMAモジュール20は次に、受信バッファ ・リング58から次のパケットを読み取るよう準備される。DMAポインタは、ペー ジ終了レジスタと重なると、ページ開始アドレスにリセットされる。これによっ てリモートDMAモジュール20は、受信バッファ・リング58の頂部を覆っていたパ ケットを除去することができる。 内部レジスタ 概観 全てのユーザ・レジスタは8ビット幅であり、コマンド・レジスタ(PS0、PS1) 内で選択された3つのページにマッピングされる。ピンRA0ないしRA3は、レジス タを各ページ内にアドレス付けするために使用される。ページ0レジスタは好適 システムの実施例の動作中に、普通にアドレス付けされるレジスタであり、ペー ジ1レジスタは主に初期化に用いられる。これらのレジスタは、普通に使用され るレジスタにアクセスするために2つの書き込み/読み取りサイクルを実行しな ければならないということを避けるために、区分化される。ページ3レジスタは 、ユーザによってアクセスされることのない、特別な目的の検査レジスタである 。PS0、PS1をページ3を指すように設定することは、好適システムの実施例に有 害な影響をもたらすものではないが、I/O読み取りと書き込みは、好適システム の動作中は厳密に禁止される。 レジスタの記述 表8、9、及び10は、好適システムの実施例に関する、対応レジスタ・マップ を示している。 レジスタの記述 −コマンド・レジスタ(CR) 表11はコマンド・レジスタ(CR)を示す図である。 コマンド・レジスタは送信を初期化し、リモートDMAモジュール20による動作 を使用可能、又は使用不能にし、及びレジスタ・ページを選択するのに使用され る。コマンドを発行するために、マイクロプロセッサは対応するビット(1つ又 は複数)(RD2、RD1、RD0、TXP)をセットする。更にコマンドが重複する可能性が あるが、その場合には以下のルールが使用される。 1.送信コマンドがリモートDMAモジュール20による動作と重複する場合、ビッ トRD0、RD1、及びRD2は、TXPビットをセットする際にリモートDMAコマンドに関 して保持されなければならない。送信コマンドを与えたときにリモートDMAコマ ンドが再発行された場合、DMAは、リモート・バイト・カウント・レジスタが再 初期化されていなければ、すぐに完了することに注意が必要である。 2.リモートDMAモジュール20の動作が送信と重複した場合、RD0、RD1、及びRD2 は望ましい値で書き込まれ、「0」がTXPビットに書き込まれる。このビットに 「0」を書き込むことによる影響はない。 3.リモート書き込みDMAは、リモート読み取り動作に重複しないことがあり、 又リモート読み取り動作がリモート書き込みDMAに重複しないこともある。こう した動作のどちらかは、他の動作が開始される前に完了するか、中断させられる 。ビットPS1、PS0、RD2、及びSTPはいつでもセットすることができる。 D0 STP−停止:MACオフライン・コマンド:イーサーネット・媒体アクセス・コ ントローラ・モジュール2をオフラインでとる。進行中のパケット受信が中断さ れ、バッファ資源が再度請求される。現在送信している送信パケット(TXEが高 レベル)は、正常終了まで継続される。現在延期されている送信パケット(TXP= 1,TXEが低レベル)は、TXPビットの残りのセットで中断される。リモートDMA機 能は、STPが高レベルである場合、起動を続ける。STPは電源オン時には高レベル である。好適システムの実施例が以前開始モードであり、STPがセットされてい た場合、STPとSTAビットはセットされたままとなる。 D1 STA−開始:このビットは、電源オンの後か、又は好適システムの実施例が 、STP=1にセットするかエラーのためにリセット・モードにおかれている場合に 、好適システムの実施例を起動するのに用いられる。STAは電源オン時には低レ ベルである。 D2 TXP−送信パケット:このビットはパケットの送信を初期化するためにセッ トされなければならない。TXPは、送信の完了後、又は中断後に内部リセットさ れる。このビットは、送信バイト・カウント、及び送信ページ開始レジスタがプ ログラムされた後でのみセットさ れる。 D3-D5 RD0-RD2−リモートDMAコマンド:これら3つの符号化ビットは、リモー トDMAモジュール20のチャネルの動作を制御する。RD2は、処理中のどんなリモー トDMAコマンドも中断するようにセットされうる。リモート・バイト・カウント ・レジスタは、リモートDMAが中断されたときにクリアされる。リモート開始ア ドレスは、リモートDMAが中断された場合は、その開始アドレスに復旧されない 。 表12は、RD2、RD1、及びRD0の関係を要約している。 D6,D7 PS0,PS1−ページ選択:これらの2つの符号化ビットは、どのレジスタ・ ページがアドレス付けられたRA0-3によってアクセスされるかを選択する。 表13は、PS1とPS0の関係を要約している。 −中断状態レジスタ(ISR) 表14は、中断状態レジスタ(ISR)を示している。 このレジスタは、中断の要因を判定するためにホスト・コンピュータによって アクセスされる。いかなる中断も中断マスク・レジスタ(IMR)内にマスクされう る。個別の中断ビットは、ISRの対応するビットに「1」を書き込むことによっ てクリアされる。マスクされていない信号がセットされている限り、INT信号が 起動され、このレジスタ内の全てのマスクされていないビットがクリアされるま で低レベルには遷移しない。ISRは、全て「1」で書き込まれることによって、 電源オンの後でクリアされなければならない。 D0 PRX−受信パケット:エラー無しで受信されたパケットを示す。 D1 PTX−送信パケット:エラー無しで送信されたパケットを示す。 D2 RXE−受信エラー:CRCエラー、フレーム調整エラー、FIFOオーバラン、及び /又はパケット喪失のうちの、1つ以上のエラーでパケットが受信されたことを 示す。 D3 TXE−送信エラー:パケットが、過度の競合、及び/又はFIFOア ンダランのうちの1つ以上のエラーで送信された場合にセットされる。 D4 OVW−上書き警告:受信バッファ・リングの記憶資源が尽きた(ローカルDMA が境界ポインタに達した)場合にセットされる。 D5 CNT−カウンタ・オーバフロー:1つ以上のネットワーク・タリー・カウン タのMSBがセットされている場合にセットされる。 D6 RDC−リモートDMA完了:リモートDMA動作が完了した場合にセットされる。 D7 RST−リセット状態:好適システムの実施例がリセット状態に入った場合に セットされ、状態コマンドがCRに対して発行された場合にクリアされる。このビ ットへの書き込みによる影響はない。このビットは中断を発生させるものではな く、単なる状態指標である。 −中断マスク・レジスタ(IMR) 表15は、中断マスク・レジスタ(IMR)を示している。 D0 PRXE−受信パケットの中断可能 0:中断不能 1:パケット受信時の中断可能 D1 PTXE−送信パケットの中断可能 0:中断不能 1:パケット送信時の中断可能 D2 RXEE−受信エラーの中断可能 0:中断不能 1:パケットをエラーで受信した場合に中断可能 D3 TXEE−送信エラーの中断可能 0:中断不能 1:パケット送信がエラーになった場合に中断可能 D4 OVWE−上書き警告の中断可能 0:中断不能 1:バッファ管理ロジックが入力パケットを記憶する十分なバッファを備え ていない場合に中断可能 D5 CNTE−カウンタ・オーバフローの中断可能 0:中断不能 1:1つ以上のネットワーク統計カウンタのMSBがセットされている場合に 中断可能 D6 RDCE−DMA完了中断可能 0:中断不能 1:リモートDMA送信が完了した場合に中断可能 D7 予約:予約されている。電源オン時には高レベル。 −データ構成レジスタ(DCR) 表16は、データ構成レジスタ(DCR)を示している。 このレジスタは、8又は16ビット・メモリ・インタフェース用の好適システム の実施例のプログラミング、16ビット・アプリケーションでのバイト順の選択、 及びFIFO閾値の確立を行うために使用される。DCRはリモート・バイト・カウン ト・レジスタをロードするメモリに初期化されなければならない。LASは電源オ ンでセットされる。 D0 WTS−語送信選択 0:バイト幅DMA送信を選択する 1:語幅DMA送信を選択する WTSはリモート及びローカルDMA送信両方に関するバイト、又は語送信を確立 する。語幅モードが選択された場合、32K語までアドレス付けすることができる ことに注意が必要である。A0は低レベルのままである。 D1 B0S−バイト順選択 0:AD15-AD8上にMSバイトが置かれ、AD7-AD8上にLSバイトが置かれる(3200 0,8086)。 1:AD7-AD0上にMSバイトが置かれ、AD15-AD8上にLSバイトが置かれる(6800 0)。 WTSが低レベルの場合は無視される。 D2 未使用 1または0をセットすることによる好適システムの実施例に対する影響はな い。 D3 未使用 1または0をセットすることによる好適システムの実施例に対する影響はな い。 D4 AR−自動初期化リモート 0:送信コマンドは実行されない。バッファ・リングから除去されたパケッ トは全てプログラム制御の下にある。 1:送信コマンドが実行される。リモートDMAが自動初期化されてバッファ ・リングからパケットを除去する。 D5,D6 FT0,FT1−FIFO閾値選択 符号化されたFIFO閾値。FIFOが満杯、又は空になった場合にバスが要求した ポイントを確立する。受信の間、FIFO閾値は、FIFOがバス要求(BREQ)が表明され る前に、ネットワークからFIFOが連続して充填されてきたバイト数(又は語数) を示している。FIFO閾値のセットがDMAバースト長を決定することに注意された い。 送信の間、FIFO閾値は、FIFOがBREQが表明される前に、MACによって除去さ れてきたバイト数(又は語数)を示している。従って、送信閾値は、受信閾値よ り16バイト小さい。表17は受信閾値の動作の詳細を示す。 D7 予約−0 −送信構成レジスタ(TCR) 表18は送信構成レジスタ(TCR)0DH(書き込み(write))を示している。 送信構成レジスタは、ネットワーク上にパケットを送信する間、好適システム の実施例の送信セクションの活動を確立する。ループバック・モードを選択する LB1とLB0は、電源オン時には0である。 D0 CRC−CRCの禁止 0:送信機によりCRCが付加される。 1:送信機によりCRCが禁止される。 ループバック・モードでは、CRCはCRCロジックのテストをするために、使用 可能、又は使用不能にされうる。 D1,D2 LB0,LB1−符号化ループバック制御:これらの符号化構成ビットは、実行 されるループバックのタイプをセットする。モード2でのループバックはLPBKピ ンを高レベルにセットすることに注意されたい。これは、SNIをルーブバック・ モードに設定し、DCRのD3はループバック動作に関して0にセットされなければ ならない。 表19は符号化されたループバック制御を要約した図である。 D3 ATD−自動送信使用不能:このビットで他のステーションが、特定のマルチ キャスト・パケットを送信することによって、好適システムの実施例の送信機を 使用不能にすることができる。この送信機は、このビットをリセットすることに よって、または第2の特定マルチキャスト・パケットを送信することによって、 再度使用可能とすることができる。 0:通常動作 1:ビット62に対するマルチキャスト・アドレス・ハッシングの受信は、受 信機を使用不能にする。 ビット63に対するマルチキャスト・アドレス・ハッシ ングの受信は、受信機を使用可能にする。 D4 OFST−競合オフセット使用可能:このビットはバックオフ・アルゴリズムを 修正して、ノードの優先順位付けを可能とする。 0:バックオフ・ロジックが通常アルゴリズムを装備する。 1:バックオフ・アルゴリズムの修正を、最初の3つの競合の間、0ないし 2min(3+n,10)スロット・タイムとし、その次に標準バックオフが続けられる。 (最初の3つの競合の間、ステーションは、低優先順位モードを形成する、より 高い平均バックオフ遅延を有す る。) D5 未使用 1または0をセットしても、好適システムの実施例には影響がない。 D6 予約:0 D7 予約:1 −送信状態レジスタ(TSR) 表20は送信状態レジスタ(TSR)0DH(読み取り(Read))を示している。 このレジスタは、パケット送信の間に媒体上で発生したイベントを記録する。 次の送信がホストによって初期化される時間が明確になる。特定ビットに対応す るイベントが送信中に発生しない限り、全てのビットは低レベルのままである。 各送信の後に、このレジスタが読み取られなければならない。このレジスタの内 容は、最初の送信が終わるまで識別されない。 D0 PTX−パケット送信:エラー(過度の競合やFIF0アンダラン)(ABT=「0」,FU =「0」)無しの送信を示す。 D1 DFR−ネットワークに対する遅延: 送信コマンドが発行されたときに、ネットワークが活動中であることを示す 。好適システムの実施例は、送信前にネットワークに 対して遅延が行われる。 D2 COL−送信競合:少なくとも1度、ネットワーク上の別のステーションと競 合した送信を示す。競合数は競合数レジスタ(NCR)に記録される。 D3 ABT−送信の中断:過度の競合によって好適システムの実施例が送信を中断 したことを示す。(元の送信の試行を含む合計送信数が16と等しい) D4 CRS−キャリア検出喪失:このビットは、パケット送信中にキャリアが失わ れた場合にセットされる。キャリア検知は、TXENがドロップされるまでプリアン ブル/同期の最後から監視される。パケット送信は中断されない。 D5 FU−FIFOアンダラン:好適システムの実施例が、FIFOが空になる前に、バス にアクセスできない場合、このビットがセットされる。パケット送信は中断され る。 D6 CDH−CDハートビート:トランシーバがパケット送信の後に、競合信号の送 信を失敗すると、このビットがセットされる。競合検出(CD)ハートビート信号は 、送信の前の最初の6.4μsのフレーム間ギャップの間に開始されなければなら ない。ある競合では、トランシーバがCDハートビートの検査を実行していなくて も、CDハートビート・ビットがセットされる。 D7 OWC−ウインドウ外の競合:スロット・タイム(51.2μs)の後で発生した競 合を示す。送信は通常の競合と同様に再スケジュールされる。 −受信構成レジスタ(RCR) 表21は受信構成レジスタ(RCR)0CH(書き込み(Write))を示す。 DO SEP−エラー・パケットの格納 0:受信エラーのパケットは拒絶される。 1:受信エラーのパケットは受け入れられる。受信エラーはCRCとフレーム 調整エラーである。 D1 AR−Runtパケットの受け入れ:このビットによって受信機が、64バイトより 小さいパケットを受信できる。パケットがruntとして受信されるには、少なくと も8バイトの長さが必要である。 0:64バイトより小さいパケットは拒絶される。 1:64バイトより小さいパケットは受け入れられる。 D2 AB−ブロードキャスト受け入れ:受信機が、全て1から成る目的アドレスを 有するパケットを受信可能である。 0:ブロードキャスト目的アドレスを有するパケットは拒絶される。 1:ブロードキャスト目的アドレスを有するパケットは受け入れられる。 D3 AM−マルチキャスト受け入れ:受信機が、マルチキャスト・アドレスを有す るパケットを受信可能である。全てのマルチ キャスト・アドレスはハッシング・アレイを通過しなければならない。 0:マルチキャスト目的アドレスを有するパケットは検査されない。 1:マルチキャスト目的アドレスを有するパケットは検査される。 D4 PRO−無差別な物理アドレス:受信機が、物理アドレスを有する全てのパケ ットを受信可能である。 0:ノードの物理アドレスは、PAE0-PAR5でプログラムされたステーション ・アドレスとマッチしなければならない。 1:物理アドレスを有する全てのパケットが受け入れられる。 D5 MON−監視モード:受信機が、メモリへのバッファリングなしに、入力パケ ットに関するアドレスとCRCを検査することができる。 0:パケットがメモリにバッファリングされる。 1:パケットは、アドレスのマッチング、良好なCRC、及びフレーム調整に 関して検査されるが、メモリにはバッファリングされない。 D6 予約:0 D7 予約:1 D2とD3は一緒にORされる。即ち、D2とD3がセットされていれば、好適システムの 実施例がブロードキャスト、マルチキャスト・アドレス、及びそれ自身の物理ア ドレスを受け取る。完全無差別モードを 確立するため、ビットD2、D3、及びD4がセットされる。更に、全てのマルチキャ スト・アドレスを受け取るために、マルチキャスト・ハッシング・アレイは全て 1にセットされなければならない。 −受信状態レジスタ(RSR) 表22は受信状態レジスタ(RSR)0CH(読み取り(Read))を示す。 このレジスタは、エラー、及び物理アドレスやマルチキャスト・アドレスのマ ッチングのタイプに関する情する情報を含む、受信パケットの状態を記録する。 このレジスタの内容は、良好なパケットを受信した後で、DMAによってバッファ ・メモリに書き込まれる。エラーのあるパケットが格納されると、エラー・パケ ットの先頭で、受信状態がメモリに書き込まれる。エラーのあるパケットが拒絶 されるものである場合、RSRはメモリに書き込まれない。その内容は、次のパケ ットが到着するとクリアされる。CRCエラー、フレーム調整エラー、及び喪失パ ケットは、ネットワーク管理機能に関するエラーを記録するためにリアルタイム でRSRを読み取ることによってホストを放棄する、好適システムの実施例によっ て内部的にカウントされる。このレジスタの内容は、最初の受信が行われるまで 指定されない。 D0 PRX−受信パケットの完全性:エラー無しで受信されたパケットを示す。( ビットCRC、FAE、F0、及びMPAは受信パケット に関して0である)。 D1 CRC−CRCエラー:CRCエラーを有する受信パケットを示す。タリー・カウン タ(CNTR1)をインクリメントする。このビットはまた、フレーム調整エラーに関 してもセットされる。 D2 FAE−フレーム調整エラー:入力パケットがバイトの境界で終了せず、CRCが その最後のバイトの境界でマッチしないことを示す。タリー・カウンタ(CNTRO) をインクリメントする。 D3 F0−FIF0オーバラン:このビットは、FIF0が提供されず、受信時にオーバフ ローが発生した場合にセットされる。パケット受信は中断される。 D4 MPA−喪失パケット:ノードに向けられたパケットが、受信バッファの不足 のために好適システムの実施例によって受信されなかった場合、又はコントロー ラが監視モードで、パケットをメモリにバッファリングしなかった場合にセット される。タリー・カウンタ(CNTR2)をインクリメントする。 D5 PHY−物理/マルチキャスト・アドレス:受信パケットが物理アドレス・タ イプを有するかマルチキャスト・アドレス・タイプを有するかを示す。 0:物理アドレス・マッチ 1:マルチキャスト/ブロードキャスト・アドレス・マッチ D6 DIS−受信機使用不能:監視モードに入ることによって受信機が使用不能な 場合にセットされる。監視モードが解除され、受信機が再度使用可能になった場 合にリセットされる。 D7 DFR−遅延:CRSまたはCOL入力が起動された場合にセットされる。トランシ ーバがCD線をジャバー(jabber)の結果として表明した場合、このビットは、その ジャバー状態を示す設定であり続ける。 注:以下の符号化コードをCRC及びFAEビットに適用する。 FAE CRC エラーのタイプ 0 0 エラー無し(良好なCRC及び6より小さいドリ ブル・ビット(Drlbble Blts)) 0 1 CRCエラー 1 0 無効、発生しない 1 1 フレーム調製エラー及びCRCエラー −ページ2互換モード選択レジスタ(CMSR) 表23は、ページ2互換モード選択レジスタ(CMSR)08H(読み取り/書き込み(Rea d/Write))を示す。 電源オンの状態は00hで、8390D完全互換モードである。このレジスタは、DMA コントローラが起動されていない場合のみ書き込まれる。このレジスタは、初期 化の間、又は停止(Stop)コマンドの発行、及び完了後にのみ、プログラムされる 。 D0 EXBst−完全なバースト・モード 0:互換モード。次のバケット処理が完了するまで、BREQを最後の受信パケ ットに関して保持する。 1:完全バースト・モード。通常のバーストの後でBREQを開放し、空のFIFO へのバスを再取得し、次のページ位置を計算してパケット・ヘダーを書き込む。 D1 E/F−FIFO空/満杯モード 0:互換モード。FIFOへの、及びFIFOからの閾値サイズのバーストだけが受 信/送信動作に関して使用される。 1:FIFO空/満杯モード。各DMAバーストがFIFOを空に(受信)又は満杯に (送信)し、様々なザイズのローカル・メモリ・バーストが可能である。 D2,3 予約 D3 予約 D4,5 待ち状態選択:ローカルDMAメモリ・アクセス・タイミングの待ち状態選 択。 表24は、ローカルDMAメモリの待ち状態選択の関係を示す。 D6,7 予約 −DMAレジスタ DMAレジスタは3つのグループ、送信、受信、及びリモートDMAレジスタに区分 化される。送信レジスタは、パケット送信に関するローカルDMAチャネルを初期 化するために使用され、受信レジスタは、パケット受信に関するローカルDMAチ ャネルを初期化するために使用される。ページ終了、ページ開始、現在、及び境 界レジスタは、バッファ管理ロジックによって使用され、受信バッファ・リング を管理する。リモートDMAレジスタはリモートDMAを初期化するために使用される 。 図7Bは、レジスタを8又は16ビット幅で示している。16ビット内部レジスタで あるレジスタもあるが、全てのレジスタは8ビット・レジスタとしてアクセスさ れる。従って、16ビット送信バイト・カウント・レジスタは、2つの8ビット・ レジスタ、TBCR0、TBCR1に分割される。また、TPSR、PSTART、PSTOP、CURR、及 びBNDRYは、バス上のアドレス情報の上位8ビットを検査または制御するだけで あ る。従って、これらは、図の15-8の位置にシフトされる。 −送信DMAレジスタ 表25は、送信ページ開始レジスタ(TPSR)を示す。 ビット割当て このレジスタは、送信される、組み立てられたパケットを指す。 このアドレスの上位8ビットのみが指定され、従って、全ての送信パケットは、 256バイトのページ境界上で組み立てられる。ビット割当ては前述の通りである 。ビットD7-D0に配置された値は、送信に関するローカルDMAの下位アドレス(A8- A15)を初期化するのに用いられる。 表26は、送信バイト・カウント・レジスタ(TBCRO,1)を示している。 この2つのレジスタは送信されるパケットのバイト長を示してい る。そのカウントは、発信元、目的、長さ、及びデータ・フィールドのバイト数 を含んでいなければならない。許される送信バイト数の最大値は、64Kバイトで ある。好適システムの実施例は、1500バイトより長い送信データを切り詰めない 。ビット割当ては前述の通りである。 −ローカルDMA受信レジスタ 表27は、ページ開始、終了レジスタ(PSTART,PSTOP)が示されている。 ページ開始、及びページ終了レジスタは、受信バッファ・リングの開始及び終 了アドレスをプログラムする。好適システムの実施例が、ページ境界上で調整さ れた固定256バイト・バッファを使用するため、開始及び終了アドレスの上位8 ビットのみが指定される。 表28は現在ページ・レジスタ(CURR)を示している。 このレジスタはバッファ管理ロジックによって、受信に関するバックアップ・ レジスタとして内部的に使用される。CURRはパケット 受信に使用される第1のバッファのアドレスを含み、受信エラーが発生した際に DMAポインタを復旧するために使用される。このレジスタはPSTARTと同じ値で初 期化され、コントローラがリセットされるまで書き込まれない。 表29は境界レジスタ(BNDRY)を示す。 このレジスタは、受信バッファ・リングのオーバフローを防止するために使用 される。バッファ管理は、バッファを一緒にリンク付けする際に、このレジスタ の内容を次のバッファ・アドレスと比較する。このレジスタの内容が次のバッフ ァ・アドレスとマッチした場合、ローカルDMA動作は中断される。 表30は、現在ローカルDMAレジスタ0、1(CLDA0,1)を示している。この2つの レジスタは、現在ローカルDMAアドレスを決定するためにアクセスされうる。 表31はリモート開始アドレス・レジスタ(RSAR0,1)を示している。 リモートDMA操作は、リモート開始アドレス(RSAR0,1)とリモート・バイト・カ ウント(RBCR0,1)レジスタによってプログラムされる。リモート開始アドレスは 、送信されるデータのブロックの開始部分を指すために使用され、リモート・バ イト・カウントは、そのブロック長を(バイトで)示すために使用される。 表32は、リモート・バイト・カウント・レジスタ(RBCR0,1)を示している。 RSAR0は、開始アドレス・ビットA0-A7をプログラムする。RSAR1は、開始アド レス・ビットA8-A15をプログラムする。このアドレスは、語の送信に関しては2 だけインクリメントされ、バイトの送信に関しては1だけインクリメントされる 。バイト・カウントは、語の送信に関しては2だけデクリメントされ、バイトの 送信に関しては1だけデクリメントされる。RBCR0はLSBバイト・カウントをプロ グラムする。RBCR1はMSBバイト・カウントをプログラムする。 表33は、現在リモートDMAアドレス(CRDA0,1)を示す。 現在リモートDMAレジスタは、リモートDMAの現在アドレスを含む。ビット割当 ては前述の通りである。RSAR0とCRDA0は物理的に同一のレジスタであることに注 意されたい。RSAR1とCRDA1の関係も同様である。 −物理アドレス・レジスタ 表34に示すように、物理アドレス・レジスタは、パケットの拒絶、又は受け入 れを行うために、入力パケットの目的アドレスを比較するのに使用される。以下 に示すビット割当ては、PAR0-PAR5内の順序を、受信パケットのビット順に関連 づける。 −マルチキャスト・アドレス・レジスタ(MAR0-MAR7) 図7Cは、CRCロジックによってハッシュされるマルチキャスト・ア ドレスのフィルタリングを行う、マルチキャスト・アドレス・レジスタの動作を 示す図である。全ての目的アドレスは、CRCロジックを通って供給され、目的ア ドレスの最後のビットがCRCに入ると、CRC生成器の上位6ビットがラッチされる 。この6ビットは次に、マルチキャスト・アドレス・レジスタ内のユニークなフ ィルタ・ビット(FB0-63)にインデックス付けするために、1 of 64復号によって 復号化される。選択されたフィルタ・ビットがセットされている場合、マルチキ ャスト・パケットは受け入れられる。システム設計者は、マルチキャスト・レジ スタ内にセットされるフィルタ・ビットはどれかを決定するためのプログラムを 使用する。ノードによって受け入れられたマルチキャスト・アドレスに対応する 全てのマルチキャスト・フィルタ・ビットは次に、1にセットされる。全てのマ ルチキャスト・パケットを受け入れるために、レジスタ全てが全て1にセットさ れる。 ハッシング・アルゴリズムは、マルチキャスト・アドレスの完全なフィルタリ ングを保証していないが、これらのアドレスが、マルチキャスト・フィルタ内の ユニークな位置にマッピングされるように選択されると、64までのマルチキャス ト・アドレスが、完全にフィルタリングされることに注意されたい。 表35に示すように、アドレスYが値32(20H)にハッシュされるようであれば、M AR4内のFB32が「1」に初期化される。このことによって、好適システムの実施 例は、アドレスYを有するどんなマルチキャスト・パケットも受信することがで きる。 −ネットワーク・タリー・カウンタ 3つの8ビット・カンンタが、CRCエラー、フレーム調整エラー、及びパケッ ト喪失の数を監視するために提供される。どのカウンタも到達可能な最大カウン トは192(C0H)である。これらのレジスタは、CPUによって読み取りが行われた場 合にクリアされる。カウントは、各タリー・レジスタのCT0-CT7に2進で記録さ れる。これらのレジスタはEFhに初期化される。 表36は、フレーム調製エラー・タリー(CNTR0)を表で表したレジスタを示して いる。 このカウンタは、パケットがフレーム調製エラーで受信される毎にインクリメ ントされる。パケットはアドレス認識ロジックによって認識されていなければな らない。カウンタは、それがプロセッサによって読み取られた後でクリアされる 。 表37はCRCエラー・タリー(CNTR1)を表で表したレジスタを示している。 このカウンタは、パケットがCRCエラーで受信される毎にインクリ メントされる。パケットはアドレス認識ロジックによって最初に認識されなけれ ばならない。カウンタは、それがプロセッサによって読み取られた後でクリアさ れる。 表38はフレーム喪失タリー・レジスタ(CNTR2)を示している。 このカウンタは、パケットがバッファ資源の不足で受信されなかった場合にイ ンクリメントされる。監視モードでは、このカウンタが、アドレス認識ロジック を通過したパケットの数をカウントする。 −FIFOレジスタ(FIFO) 表39は、FIFOレジスタを示す。 これは、CPUがループバックの後でFIFOの内容を検査できる、8ビット・レジ スタである。FIFOは、ループバック・パケットで送信された最後の8バイトのデ ータを含む。FIFOからの順次読み取りは、FIFO内のポインタを進め、全ての8バ イトの読み取りを可能にする。好適システムの実施例がループバックでない場合 のFIFOレジスタの読み取りは無視され、データ・バスはトライステートのままで あることに注意されたい。 −競合数レジスタ(NCR) 表40は、NCRレジスタを示している。 このレジスタは、パケット送信を試みる際に、ノードが被る競合数を含む。送 信を行う間に競合が発生しない場合、TSRのCOLビットはセットされず、NCRの内 容は0になる。過度の競合が発生した場合、TSRのABTビットがセットされ、NCR の内容は0になる。CRのTXPビットがセットされた後で、NCRはクリアされる。 初期化手順 好適システムの実施例は、ネットワークからのパケットを送信又は受信する前 に、初期化されなければならない。電源オンによるリセットが、好適システムの 実施例のリセット・ピンに適用される。以下のビットのクリア/セットが、表41 に示される。 好適システムの実施例は、開始(Start)コマンドが発行されるまで、オフライ ン状態のままである。このことは、パケットの送受信が行われず、全ての適当な 内部レジスタがプログラムされるまで、好適システムの実施例がバスをスレーブ のままにすることを保証する。初期化の後で、コマンド・レジスタのSTPビット がリセットされ、STAビットがセットされて、パケットの送受信が行われる。 初期化の順序 以下の初期化手順が命令される。 1.ページ0に関するコマンド・レジスタをプログラムする(コマンド・レジス タ=21H) 2.データ構成レジスタ(DCR)の初期化 3.受信構成レジスタ(RCR)の初期化 4 好適実施例をループバック・モード1または2に設定する(送信構成レジス タ=02H、又は04H0) 5.受信バッファ・リングの初期化:境界ポインタ(BNDRY)、ページ開始(PSTART )、及びページ終了(PSTOP) 6.中断状態レジスタ(ISR)にを0FFhを書き込むことによってそのレ ジスタをクリアする 7.中断マスク・レジスタ(IMR)を初期化する 8.ページ1に関するコマンド・レジスタをプログラムする(コマンド・レジス タ=61H) a.物理アドレス・レジスタ(PAR0-5)を初期化する b.マルチキャスト・アドレス・レジスタ(MAR0-7)を初期化する c.現在のポインタを初期化する 9.好適システムの実施例を開始(START)モードにする(コマンド・レジスタ=22H )。好適システムの実施例がループバック・モードではないので、ローカル受信D MAは依然として起動されていない。 10.意図した値に関する送信構成を初期化する。ここで好適実施例が、送受信可 能となる。 パケットを受信する前に、ユーザは受信バッファ・リングの位置を指定しなけ ればならない。これはページ開始レジスタ、及びページ終了レジスタ内にプログ ラムされる。更に、境界レジスタ、及び現在ページ・レジスタは、ページ開始レ ジスタの値に初期化されなければならない。これらのレジスタは、パケット受信 の間に変更される。 ループバック診断 ローカル・ループバックの3つの形式が、好適システムの実施例に関して提供 される。ユーザは、トランシーバ回路を経由したリンクを検査するために、好適 システムの実施例上の直並列変換器を経 由し、SNIを経由し、その同軸ケーブル(coax)に達するループバックを行うこと ができる。好適実施例の半2重アーキテクチャのために、ループバック検査は、 以下の制限を有する特別なモードの動作となる。 ループバックの間の制限 FIFOは半分に分割され、1つは送信に、もう1つは受信に使用される。8ビッ ト・フィールドだけがメモリからフェッチされるので、16ビット・システムに対 して、全体データ・パスの完全性を確認するには、2回の検査が必要になる。ル ープバックの間に、BREQの表明から、戻るまでの最犬待ち時間は2.0μsである。 まだこの待ち時間を満足していないループバック検査を使用しようとするシステ ムは、ループバック・パケットをアンダフローの発生無しで、7バイトに制限で きる。ループバック・パケットの最後の8バイトだけが、FIFO内に保持される。 その最後の8バイトは、FIFOレジスタを介して読み取り可能であり、受信パケッ トを順次読み取れるように、FIFOによって進められる。表42は、この動作をより 詳しく示している。 表43を参照すると、バイト順選択がセットされた語幅モードでは、以下のよう に、ループバック・パケットは偶数バイトの位置で組み立てられなければならな い。(ループバックはバイト幅送信でのみ動作する) バイト順選択が低レベルの語幅モードでは、以下のフォーマットがループバック ・パケットに用いられる。 ループバックを語モードで使用する場合は、TBCR0,1に2nバイトがプ ログラムされなければならないことに注意すべきである(ここでnは、偶数、又 は奇数位置に配置された実際のバイト数である)。ループバックを初期化するた めに、ユーザはまずループバック・パケットを組み立て、次に送信構成レジスタ ・ビットLB0,LB1を使用して、ループバックのタイプを選択する。送信構成レジ スタは、送信の間、CRC生成を使用可能、又は使用不能にするためにセットされ なければならない。ユーザは次に、通常の送信コマンドを発行して、パケットを 送信する。ループバックの間、受信機はアドレスのマッチを検査し、TCR内のCRC ビットがセットされていた場合、受信機はCRCの検査も行う。ループバック・パ ケットの最後の8バイトがバッファリングされ、FIFO読み取りポートを使用して 、FIFOから読み出されうる。 ループバック・モード モード1:コントローラ経由のループバック(LB1=0,LB0=1)。ループバックが 好適システムの実施例を経由する場合、並直列変換器が単に直並列変換器にリン クされ、受信クロックが送信クロックから導出される。 モード2:SNI経由のループバック(LB1=1,LB0=0)。ループバックがSNIを経由 する場合、好適システムの実施例が、SNIに全信号をループバックさせる制御(LP BK)を提供する。 モード3:同軸ケーブルへのループバック(LB1=1,LB0=1)。パケットがループ バック・モードで同軸ケーブルに送信され、送信及び受 信パスの全てと、同軸ケーブル自体を検査する。 モード1では、CRS及びCOL線はどの状態レジスタ内にも示されていないが、こ れらの線が活動中であれば、好適実施例は依然として遅延することに注意された い。モード2では、COLがマスクされ、モード3ではCRSとCOLはマスクされない 。 ループバック・パケットの読み取り 受信パケットの最後の8バイトは、FIFOレジスタの8つの連続読み取りによっ て検査されうる。FIFOポインタは、CPUの読み取りストローブの立ち上がりエッ ジの後でインクリメントされる。 FIFO内の受信パケットの調整 FIFO内におけるパケットの受信は0の位置で始まる。FIFOポインタがFIFO内の 最後の位置に到達すると、ポインタがFIFOの先頭に戻り、以前に受信されたデー タを上書きする。この処理は、最後のバイトが受信されるまで続けられる。好適 システムの実施例は次に、FIFOの次の2つの位置に、受信カウントを付加する。 上位バイト・カウントの内容もまた、次のFIFO位置にコピーされる。ループバッ ク・パケット内で使用されるバイト数は、読み取りポインタが位置0のままなの で、FIFO内でのパケットの配置を決定する。64バイト・パケットに関する調整は 表45に示されている。 表46を参照すると、以下のFIFOにおける調製に関して、パケット長は(N x 8 )+5バイトでなければならない。TCRのCRCビットがセットされている場合、CR Cは、送信機によって付加されない。CRCが送信機によって付加される場合、最後 の4バイト、N-3ないしNがCRCに対応する。 ループバック検査 ループバック機能は、ある実行される検査が、活動中のネットワーク上にパケ ットを送受信する前に、好適システムの実施例の動作を有効にすることができる ように提供される。通常、これらの検査はノードの電源オンの間に行われる。こ の診断は、以下の確認を支援する。 1 データ・パスの完全性を確認する。受信されたバスは、送信データに対して 検査される。 2.送信時に良好なCRCを生成するために、CRCロジックの機能を確認する。受信 時にCRCを確認する(良好CRC又は不良CRC)。 3.アドレス認識ロジックが、 a.アドレス・マッチ・パケットを認識できること、 b.アドレスのマッチに失敗したパケットを拒絶できることを確認する。 好適実施例におけるループバック動作 ループバックは、FIFOの半分だけを用いた、修正された送信形式である。この ことは、ある制限を、ループバック検査の使用に課すことになる。TCRでループ バック・モードが選択された場合、FIFOは分割される。パケットはメモリ内で組 み立てられ、TPSRとTBCR1、TBCR1レジスタが、パケット送信のためにプログラム される。送信コマンドが発行されると、以下の動作が発生する。 送信機の動作 1.FIFOが満たされるまで、DMAによってメモリからデータが送信される。各送 信毎に、TBCR0とTBCR1がデクリメントされる。(後続のバースト送信は、FIFO内 のバイト数が、プログラムされた閾値より小さい値まで下降した場合に、起動さ れる。) 2.好適実施例は62ビットのプリアンブルとそれに続く2ビットの同期パターン を生成する。 3.データがFIFOから並直列変換器に送信される。 4.TCRのCRCが1であれば、CRCは好適システムの実施例によって計算されず、 送信された最後のバイトが、FIFOからの最後のバイトである(ソフトウエアCRC を付加することができる)。CRCが0の場合、好適システムの実施例は、4バイ トのCRCを計算し、付加する。 5.送信の終わりで、ISRのPTXビットがセットされる。 受信機の動作 1.同期を待って、全てのプリアンブルを除去する。 2.FIFOにパケットを記憶し、受信バイト・カウントを入力バイト毎にインクリ メントする。 3.TCRのCRCが1の場合、受信機は入力パケットのCRCエラーを検査する。TCRの CRCが0の場合、受信機はCRCエラーの検査をしない。 4.受信の終わりで、受信バイト・カウントがFIFOに書き込まれ、受信状態レジ スタが再新される。 例 以下の例は、ループバックの間に、好適実施例が適切に動作されることによっ て結果的に得られるものを示している。ループバックの各タイプの制限及び結果 が参照用にリストされている。ループバック検査は、2つの検査セットに分割さ れる。1つはデータ・パス、CRC生成、及びバイト・カウントを、全ての3つの パスを介して確認する。検査の第2のセットは、内部ループバックを使用して、 受信機のCRC検査とアドレス認識を認する。全ての検査に関して、DCRは40hにプ ログラムされる。表47はこれらの状況を要約したものである。 キャリア検知と競合検出入力が、内部ループバックの間にブロックされるので 、キャリアとCDハートビートは発生せず、CRSとCDHビットがセットされることに 注意されたい。また、CRCが送信機によって付加される場合は、CRCエラーが受信 機によって常に示されることにも注意されたい。更に、ISRのPTXビットだけがセ ットされることにも注意されたい。PRXビットは、状態がメモリに書き込まれた ときだけセットされる。ループバックの際には、この動作は発生せず、PRXビッ トは、全てのループバック・モードに関して0のままであり、 その全ての値は16進である。表48はこれらの状況を示している。 CDHがセットされて、CRSがセットされないのは、それが外部エンコーダ/デコ ーダによって生成されるからであることに注意されたい。表49はこうした状況を 示す。 CDHとCRSはセットされないことに注意されたい。しかし、TSRは、競合が発生 するか又は、パケットに遅延が生じるかどうかに依存する、01h、03h、07h、及 び他の様々な値も含む。これらのレジスタは、パケットが送信可能でない場合に は、08hを含むことに注意されたい。外部ループバックの間、好適システムの実 施例は、ネットワーク・トラフィックにさらされる。従って、FIFOの受信部分、 及びRSRが、ネットワークーヒの他のパケットによって損なわれうる。従って、 活動中のネットワークでは、FIFOとRSRの内容に依存しない。好適システムの実 施例は、外部ループバック・モードでは、依然として標準CSMA/CDプロトコルを 遵守する。(即ち、ネットワークはループバック・パケットによっては分散され ない。)全ての値は16進である。 CRCとアドレス認識 次の3つの検査はアドレス認識ロジックとCRCを用いる。これらの検査は、好 適実施例がネットワークからの妨害を受けないように、内部ループバックのみを 使用して行われる。これらの検査はまた、ソフトウエアでCRCを生成する機能も 要求する。 パケットのアドレスがアドレス・フィルタとマッチした場合には、RSRのCRCと FAEビットだけがセットされる。以下のパケットの順は、アドレス認識ロジック を検査する。ソフトウエアで生成されたCRCによって、DCRは40Hに、TCRは03hに セットされる。表50は、パケットの内容と結果の概略を示している。 マルチキャスト・アドレスが使用された場合は状態は21hを読み取り、及びマ ルチキャスト・アドレスが使用された場合は状態は22hを読み取ることに注意さ れたい。検査Aにおいては、RSRがセットアップされる。検査Bにおいては、CRC が不良であるというフラグがたっているので、マッチするアドレスが見つけられ る。検査Cは、アド レス認識ロジックが不良アドレスを識別でき、不良CRCのRSRを通知しない。受信 CRCは検査A及び検査Bで機能することが証明されている。最後に、全ての値は1 6進であることに注意されたい。 ネットワーク管理機能 ネットワーク管理機能は、ローカル・エリア・ネットワークの保守、及び計画 に必要である。好適システムの実施例はネットワーク管理に関する最小限の要求 をハードウエアで支援する。残りの要求はソフトウエアによって満たされる。パ ケットの受信中に、ソフトウエアだけでは記録できない3つのイベント、CRCエ ラー、フレーム調整エラー、及び喪失パケットがある。 エラー・パケットは拒絶されるので、これらのパケットに関連づけられる状態 は、CPUが次のパケットの到来までに受信状態レジスタにアクセスできなければ 失われる。別のパケットが非常に早く到達する状況においては、CPUはこのこと をする機会を有する可能性がある。好適システムの実施例は、CRCエラーとフレ ーム調整エラーのパケット数をカウントする。8ビット・カウンタがオーバヘッ ドを低減するために選択されている。このカウンタは、ソフトウエア・ルーチン がネットワーク統計を蓄積し、オーバフローが発生する前にカウンタをリセット できるように、それらのMSBがセットされる場合は常に、中断を発生させる。こ のカウンタは、好適システムの実施例がバッファのオーバフロー、又は監視状態 であったために損失したパケット数をカウントするために、いつカウンタに達し たかが提 供されるので、厄介である。図8は、好適システムの実施例のネットワーク管理 機能を示す図である。 ネットワーク管理に必要な追加の情報は、受信状態レジスタと送信状態レジス タで利用可能である。送信状態は、送信中のイベントに関する情報のそれぞれの 送信の後で利用可能である。通常、以下の統計はソフトウエアにて収集される。 トラフィック:フレーム送信OK フレーム受信OK マルチキャスト・フレーム受信 資源不足によるパケット喪失 再試行/パケット エラー:CRCエラー 調整エラー 過度の競合 長さエラーのパケット ハートヘビートの失敗 バス調停タイミング ハードウエア・リセットの受信後、好適システムの実施例はオフライン状態で スレーブとして機能する。この状態では、受信機、及び送信機は両者とも使用不 能である。オフライン状態は3つの条件、ソフト・リセット(終了(Stop)コマン ド)、ハード・リセット(リセット(RESET)入力)、又は受信機や送信機をシャ ットダウンさせる エラー(FIFOアンダフロー、又はオーバフロー)の下で再入力されうる。レジス タの初期化の後、好適システムの実施例で開始コマンドが発行され、好適システ ムの実施例はアイドル状態に入る。DMAが要求されるまで、好適システムの実施 例はアイドル状態のままである。アイドル状態は、送信又は受信の場合のFIFOか らの要求、又はリモートDMA動作の場合のリモートDMAからの要求によって終了す る。BREQ/BACKハンドシェークでバスを獲得した後、リモート又はローカルDMA送 信が完了し、好適システムの実施例が再びアイドル状態になる。 DMA送信タイミング DMAは以下のタイプの送信に関してプログラムされうる。 16ビット・アドレス、8ビット・データ送信 16ビット・アドレス、16ビット・データ送信 全てのDMA送信は、タイミングをとるのにBSCKクロックを用いる。 図10Aに示すように、16ビット・アドレス・モードは4BSCKサイクルを必要とす る。 FIFOバースト制御 全てのローカルDMA送信はバースト送信である。DMAがバスを要求し、そのバス が応答すると、DMAはデータ構成レジスタ(DCR)内にプログラムされたバイトの完 全なバーストを送信し、次に、そのバスが放棄される。FIFOに残りのバイトがあ る場合、次のバーストは、 FIFOの閾値を越えるまで起動されない。必要であれば、DMAは、バスの取得時にF IFOを空/満杯にできる。BACKが送信中に除去されても、そのバーストは中断さ れない。 多重化アドレス・データ・バス制御 好適システムの実施例は、アドレスとデータ・バスの多重化を容易にする、2 つの制御信号を提供する。AD_MUX_H及びAD_MUX_L信号は、駆動されるアドレス又 はデータのどちらかを選択する。これが「1」の場合、アドレスが駆動される。 図9Cはこの2つの波形を異なるモードにおいて示している。 リモートDMA双方向ポート制御 図9Dは、リモートDMA送信のバス・ハンドシェーク信号を示すタイミング図で ある。リモートDMAは、ローカル・バッファ・メモリと双方向ポート(メモリか らI/Oへの送信)間にデータを送信する。この送信は、ローカルDMA送信で用いら れるバースト送信に対する、バイト毎(又は語毎)のアービタである。この双方 向ポートはまた、ホストによって読み取られ/書き込まれる。このポートを経由 する全ての送信は、非同期である。どんな場合でも、送信は、ポートからローカ ル・バッファ・メモリ(リモート書き込み)、又はローカル・バッファ・メモリ からポート(リモート読み取り)のどちらか1方向に制限される。 リモート読み取りタイミング 図9Eは、リモートDMA読み取りサイクルを示すタイミング図である。そのステ ップは以下の通りである。 1.ローカル・バッファ・メモリからのバイト/語のDMA読み取りと、ラッチへ のバイト/語の書き込みは、DMAアドレスをインクリメントし、バイト・カウン ト(RBCR0,1)をデクリメントする。 2.要求線(PRQ)は、システムにデータが使用可能であることを知らせるように 表明される。 3.システムがポートを読み取り、読み取りストローブ(バーRACK)がリモートDM Aによる応答として使用され、ステップ1に戻る。 ステップ1−3は、リモートDMAが完了するまで繰り返される。リモートDMAは、 メモリからラッチにバイトを送信するために、BREQ、BACKハンドシェークによる ローカル・バスへのアクセスの調停を行わなければならない。各バイト又は語が ラッチに送信された後で、BREQが廃棄される。ローカルDMAが処理中の場合、リ モートDMAは、ローカルDMAが完了するまで待機状態にされる。 リモート書き込みタイミング 図9Fは、リモートDMA書き込みサイクルを示すタイミング図である。 リモート書き込み動作は、データをI/Oポートからローカル・バッファRAMに送 信する。好適システムの実施例は、PRQによってバイト/語を要求することによ って、送信を始める。システムはバーIOWを経由してラッチにバイト/語を送信 する。この書き込みストローブ は好適システムの実施例によって検出され、PRQが除去される。PRQを除去するこ とによって、リモートDMAは、現在のバイト/語がラッチから送信されるまで、 ラッチへの更なる送信を待機させる。PRQが再表明され、次の送信が開始される 。 1.好適システムの実施例がPRQを表明する。システムがラッチにバイト/語を 書き込む。好適システムの実施例がPRQを除去する。 2 リモートDMAは、ポートの内容を読み取り、ローカル・バッファ・メモリに バイト/語を書き込み、アドレスをインクリメントし、バイト・カウント(RBCR0 ,1)をデクリメントする。 3.ステップ1に戻る。 ステップ1−3は、リモートDMAが完了するまで繰り返される。 スレーブ・モード・タイミング バーCSが低レベルである場合、好適システムの実施例はバス・スレーブになる 。CPUは次に、任意の内部レジスタの読み取り、又は書き込みを行うことができ る。全てのレジスタのアクセスはバイト幅である。レジスタ・アクセスのタイミ ングは図10ないし7に示されている。ホストCPUは、4つのアドレス線、RA0-RA3 、SRD-Z、SWR-Z、及びCSZストローブを用いて内部レジスタにアクセスする。好 適システムの実施例は、ホストCPUがコントローラに対して読み取り、又は書き 込みを行おうとする場合に、ローカル・バス・マスタである可能性があるため、 好適システムがマスタ・モードを終了するまでCPUを待機させ、連続するホスト のアクセスがある場合に内部的な同期 を可能にするためにバーACK線が使用される。 AC仕様が表60に詳細に示される。図19Aは連続タイミング図--送信(フレーム の始まり)で、図19Bは連続タイミング図--送信(フレームの終わり、CDハート ビート)である。 添付資料Aは前述の多くの表、及びフローチャート内の詳細な設計情報を含む 。 更なる修正 本発明の特定の実施例が示され、説明されてきたが、当業者には、本発明の意 図、及び範囲を逸脱することなく、本発明の1つ以上の特徴を保持したまま、多 くの方法で様々な修正、及び変更が可能であることは明らかである。例えば、当 業者が、前述の構成要素の機能に匹敵するソフトウエアを設計することが可能な ことを予知することができる。

Claims (1)

  1. 【特許請求の範囲】 1. 媒体アクセス・コントローラ・システムであって、前記システムが、 (a)少なくとも1つの入力、 (b)少なくとも1つの出力 (c)少なくとも1つのクロック入力と、少なくとも1つのクロック出力を備え 、前記出力(1つ又は複数)に関するデータの変更が、中間ビット時間位置にほ ぼ集中したままでいるように、前記クロック出力(1つ又は複数)を、第1のエ ッジから第2のエッジに切り替えるための、活動クロック・エッジ・スイッチ回 路を含む、クロック調整回路、 (d)前記クロック出力(1つ又は複数)を前記クロック調整回路から受信する 、巡回冗長検査回路、 (e)少なくとも1つのデータ入力信号を前記入力(1つ又は複数)から受信し 、前記巡回冗長検査回路と前記クロック調整回路に接続され、前記巡回冗長検査 回路と関連して前記データ入力信号(1つ又は複数)のエラーを検査するよう機 能する受信回路、及び (f)少なくとも1つの、前記出力(1つ又は複数)に関するデータ出力信号を 送信し、前記巡回冗長検査回路と前記クロック調整回路に接続されて前記巡回冗 長検査回路と関連して前記データ出力信号(1つ又は複数)のエラーを検査する よう機能する送信回路 を含むことを特徴とする、前記システム。 2. 前記第1のエッジが立ち上がりエッジで、第2のエッジが下降エッジであ ることを特徴とする、請求項1に記載の媒体アクセス・コントローラ。 3. 前記活動クロック・エッジ・スイッチ回路が、追加信号サイクルの抑止を 含むことを特徴とする、請求項1に記載の媒体アクセス・コントローラ。 4. 前記データ出力信号(1つ又は複数)及び前記データ入力信号(1つ又は 複数)に発見されたエラーを表で表すタリー回路を更に含むことを特徴とする、 請求項1に記載の媒体アクセス・コントローラ。 5. 前記活動クロック・エッジ・スイッチ回路が、前記クロック出力(1つ又 は複数)を1サイクルで、第1のエッジから第2のエッジに切り替える、サイク ル抑止回路を含むことを特徴とする、請求項1に記載の媒体アクセス・コントロ ーラ。 6. 前記活動クロック・エッジ・スイッチ回路が、複数の入力及び出力、及び ストローブ入力を備えたマルチプレクサを含み、前記クロック調整回路に接続さ れた前記復数の入力がクロック入力と逆クロック入力を受信し、前記ストローブ 入力が選択クロック入力に接続され、前記出力が前記送信機及び受信機に接続さ れることを特徴とする、請求項1に記載の媒体アクセス・コントローラ。 7. 前記活動クロック・エッジ・スイッチ回路が、前記クロック 出力(1つ又は複数)を1サイクルで、第1のエッジから第2のエッジに切り替 える、サイクル抑止回路を含むことを特徴とする、請求項6に記載の媒体アクセ ス・コントローラ。 8. 前記サイクル抑止回路が、 (c1)第1と第2の入力、及び出力を備えるORゲートで、前記ORゲートの前記第 2の入力がスイッチ入力に接続されている前記ORゲート、 (c2)第1と第2の入力、及び出力を備える第1のANDゲートで、前記第1のAND ゲートの前記第1の入力が電気的にリセット入力に接続されている前記第1のAN Dゲート、 (c3)入力、出力、逆出力、クリア入力、及びクロック入力を備える第1のフリ ップフロップで、前記第1のフリップフロップの前記入力が前記ORゲートの前記 出力に接続され、前記第1のフリップフロップの前記出力が前記ORゲートの前記 第1の入力に接続され、前記第1のフリップフロップの前記クロック入力が第1 のクロック入力に接続され、かつ前記第1のフリップフロップの前記クリア入力 が前記第1のANDゲートの前記出力に接続される、前記第1のフリップフロップ 、 (c4)入力、出力、逆出力、クリア入力、及びクロック入力を備える第2のフリ ップフロップで、前記クロック入力が、前記第2のフリップフロップの遅延した 前記第1のクロック入力である、第2のクロック入力に接続され、前記第2のフ リップフロップの前記逆出力が前記第1のANDゲートの前記第2の入力に接続さ れ、前 記第2のフリップフロップの前記クリア信号がリセット入力に接続される、前記 第2のフリップフロップ、 (c5)入力及び出力を備えたインバータ、及び (c6)第1と第2の入力、及び出力を備えた第2のANDゲートで、前記第1の入 力が前記マルチプレクサの前記出力に接続され、前記第2の入力が前記インバー タの前記出力に接続され、前記インバータの前記入力が前記第1のフリップフロ ップの前記出力と前記第2のフリップフロップの前記入力に接続される、前記第 2のANDゲートを含むことを特徴とする、請求項7に記載の媒体アクセス・コン トローラ。 9. 遅延線が、前記第1のフリップフロップの前記出力と前記インバータの前 記入力の間に接続されることを特徴とする、請求項7に記載の媒体アクセス・コ ントローラ。 10. 前記活動クロック・エッジ・スイッチが単一片のシリコン上に集積された 集積回路であることを特徴とする、請求項10に記載の前記活動クロック・エッジ ・スイッチ。 11.クロック調整回路であって、前記回路が、 (a)少なくとも1つの入力、 (b)少なくとも1つの出力、及び (c)前記クロック入力(1つ又は複数)と前記クロック出力(1つ又は複数) の間に接続されて、前記出力(1つ又は複数)に関するデータの変更が、中間ビ ット時間位置にほぼ集中したままでいるように、前記クロック出力(1つ又は複 数)を、第1のエッジ から第2のエッジに切り替えるための、活動クロック・エッジ・スイッチ回路を 含むことを特徴とする、前記回路。 12. 前記活動クロック・エッジ・スイッチ回路が、前記クロック出力(1つ又 は複数)を1サイクルで、第1のエッジから第2のエッジに切り替える、サイク ル抑止回路を含むことを特徴とする、請求項11に記載のクロック調整回路。 13. 前記活動クロック・エッジ・スイッチ回路が、複数の入力及び出力、及び ストローブ入力を備えたマルチプレクサを含み、前記入力(1つ又は複数)に接 続された前記複数の入力がクロック入力と逆クロック入力を受信し、前記ストロ ーブ入力が選択クロック入力に接続され、前記マルチプレクサの前記出力が前記 クロック出力に接続されることを特徴とする、請求項11に記載のクロック調整回 路。 14. 前記活動クロック・エッジ・スイッチ回路が、前記クロック出力(1つ又 は複数)を1サイクルで、第1のエッジから第2のエッジに切り替える、サイク ル抑止回路を含むことを特徴とする、請求項11に記載のクロック調整回路。 15. 前記サイクル抑止回路が、 (a)第1と第2の入力、及び出力を備えるORゲートで、前記第2の入力がスイ ッチ入力に接続されている前記0Rゲート、 (b)第1と第2の入力、及び出力を備える第1のANDゲートで、前記第1の入力 が電気的にリセット入力に接続されている前記第1のANDゲート (c)入力、出力、逆出力、クリア入力、及びクロック入力を備える第1のフリ ップフロップで、前記入力が前記ORゲートの前記出力に接続され、前記出力が前 記ORゲートの前記第1の入力に接続され、前記クロック入力が第1のクロック入 力に接続され、かつ前記クリア入力が前記第1のANDゲートの前記出力に接続さ れる、前記第1のフリップフロップ、 (d)入力、出力、逆出力、クリア入力、及びクロック入力を備える第2のフリ ップフロップで、前記クロック入力が、遅延した前記第1のクロック入力である 、第2のクロック入力に接続され、前記逆出力が前記第1のANDゲートの前記第 2の入力に接続され、前記クリア信号がリセット入力に接続される、前記第2の フリップフロップ、 (e)入力及び出力を備えたインバータ、及び (f)第1と第2の入力、及び出力を備えた第2のANDゲートで、前記第1の入力 が前記マルチプレクサの前記出力に接続され、前記第2の入力が前記インバータ の前記出力に接続され、前記インバータの前記入力が前記第1のフリップフロッ プの前記出力と前記第2のフリップフロップの前記入力に接続される、前記第2 のANDゲートを含むことを特徴とする、詰求項11に記載のクロック調整回路。 16. 遅延線が、前記第1のフリップフロップの前記出力と前記インバータの前 記入力の間に接続されることを特徴とする、請求項15に記載のクロック調整回路 。 17. 前記活動クロック・エッジ・スイッチが単一片のシリコン上に集積された 集積回路であることを特徴とする、請求項11に記載のクロック調整回路。 18. 活動クロック・エッジ・スイッチ回路であって、前記回路が、 (a)複数の入力及び出力を備えたマルチプレクサで、前記マルチプレクサの複 数の入力がクロック入力と逆クロック入力を受信するよう接続され、前記マルチ プレクサの前記出力が所望のクロック出力を出力するよう接続される、前記マル チプレクサ、及び (b)前記クロック出力(1つ又は複数)を、1サイクルで第1のエッジから第 2のエッジに切り替えるサイクル抑止回路を含むことを特徴とする、前記活動ク ロック・エッジ・スイッチ回路。 19. 前記サイクル抑止回路が、 (a)第1と第2の入力、及び出力を備えるORゲートで、前記ORゲートの前記第 2の入力がスイッチ入力に接続されている前記ORゲート、 (b)第1と第2の入力、及び出力を備える第1のANDゲートで、前記第1のAND ゲートの前記第1の入力が電気的にリセット入力に接続されている前記第1のAN Dゲート、 (c)入力、出力、逆出力、クリア入力、及びクロック入力を備える第1のフリ ップフロップで、前記第1のフリップフロップの前記入力が前記ORゲートの前記 出力に接続され、前記第1のフリップフロップの前記出力が前記ORゲートの前記 第1の入力に接続され、前記第1のフリップフロップの前記クロック入力が第1 のクロッ ク入力に接続され、かつ前記第1のフリップフロップの前記クリア入力が前記第 1のANDゲートの前記出力に接続される、前記第1のフリップフロップ、 (d)入力、出力、逆出力、クリア入力、及びクロック入力を備える第2のフリ ップフロップで、前記クロック入力が、前記第2のフリップフロップの遅延した 前記第1のクロック入力である、第2のクロック入力に接続され、前記第2のフ リップフロップの前記逆出力が前記第1のANDゲートの前記第2の入力に接続さ れ、前記第2のフリップフロップの前記クリア信号がリセット入力に接続される 、前記第2のフリップフロップ、 (e)入力及び出力を備えたインバータ、及び (f)第1と第2の入力、及び出力を備えた第2のANDゲートで、前記第1の入力 が前記マルチプレクサの前記出力に接続され、前記第2の入力が前記インバータ の前記出力に接続され、前記インバータの前記入力が前記第1のフリップフロッ プの前記出力と前記第2のフリップフロップの前記入力に接続される、前記第2 のANDゲートを含むことを特徴とする、請求項18に記載の活動クロック・エッジ ・スイッチ回路。 20. 遅延線が、前記第1のフリップフロップの前記出力と前記インバータの前 記入力の間に接続されることを特徴とする、請求項19に記載の媒体アクセス・コ ントローラ。 21. 前記活動クロック・エッジ・スイッチが単一片のシリコン上に集積された 集積回路であることを特徴とする、請求項19に記載 の活動クロック・エッジ・スイッチ。
JP7515589A 1993-12-03 1994-09-01 ネットワーク・インタフェース・コントローラ Ceased JPH09506219A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16252193A 1993-12-03 1993-12-03
US08/162,521 1993-12-03
PCT/US1994/010061 WO1995015641A1 (en) 1993-12-03 1994-09-01 Network interface controller

Publications (1)

Publication Number Publication Date
JPH09506219A true JPH09506219A (ja) 1997-06-17

Family

ID=22585982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7515589A Ceased JPH09506219A (ja) 1993-12-03 1994-09-01 ネットワーク・インタフェース・コントローラ

Country Status (5)

Country Link
EP (1) EP0739564B1 (ja)
JP (1) JPH09506219A (ja)
KR (1) KR100367138B1 (ja)
DE (1) DE69422528T2 (ja)
WO (1) WO1995015641A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19810587A1 (de) 1998-03-11 1999-09-16 Siemens Ag Ethernet-Netzwerk mit Redundanzeigenschaften
JP6900690B2 (ja) * 2017-02-07 2021-07-07 オムロン株式会社 制御装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0413325A (ja) * 1990-05-01 1992-01-17 Nippon Telegr & Teleph Corp <Ntt> ビット位相同期回路

Also Published As

Publication number Publication date
DE69422528T2 (de) 2000-09-21
DE69422528D1 (de) 2000-02-10
WO1995015641A1 (en) 1995-06-08
EP0739564A1 (en) 1996-10-30
EP0739564B1 (en) 2000-01-05
KR100367138B1 (ko) 2003-03-15
KR960706736A (ko) 1996-12-09

Similar Documents

Publication Publication Date Title
US5299195A (en) Repeater interface controller with multiple port node interfaces
US5600799A (en) Status batching and filtering in a media access control/host system interface unit
JP3452590B2 (ja) システムメモリからネットワークへのパケットに配列されるデータのフローを制御するネットワークアダプタおよびデータのフローを制御する方法
JP2584957B2 (ja) ホスト指示結合式の装置
US7058735B2 (en) Method and apparatus for local and distributed data memory access (“DMA”) control
US5970069A (en) Single chip remote access processor
US6549960B1 (en) Architecture and apparatus for implementing 100 MBPS and GBPS ethernet address
US5367643A (en) Generic high bandwidth adapter having data packet memory configured in three level hierarchy for temporary storage of variable length data packets
US5757795A (en) Method and apparatus for hashing addresses in a network switch
JP3336816B2 (ja) マルチメディア通信装置及び方法
US6430626B1 (en) Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses
KR100611268B1 (ko) 가상 채널 설정을 위한 강화된 일반 입출력 아키텍처 및관련 방법
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
US4590467A (en) Local area network interface controller
US5838904A (en) Random number generating apparatus for an interface unit of a carrier sense with multiple access and collision detect (CSMA/CD) ethernet data network
US6260073B1 (en) Network switch including a switch manager for periodically polling the network ports to determine their status and controlling the flow of data between ports
US5136582A (en) Memory management system and method for network controller
US8949500B2 (en) Non-blocking processor bus bridge for network processors or the like
JPH118636A (ja) ファイバチャネルスイッチングシステム及びその方法
JPH09504149A (ja) 非同期転送モード(atm)ネットワーク・デバイス
US6154796A (en) Apparatus and method in a network interface device for storing receiving frame status in a holding register
GB2409073A (en) Dedicated connection between CPU and network interface in multi-processor systems
US20090175290A1 (en) Flexray communications module, flexray communications controller, and method for transmitting messages between a flexray communications link and a flexray participant
JPH09506219A (ja) ネットワーク・インタフェース・コントローラ
US6128308A (en) Apparatus and method for determining a presence of a stored data frame in a random access memory independent of read and write clock domains

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20031215

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040209

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

Free format text: JAPANESE INTERMEDIATE CODE: A313

Effective date: 20040426

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040525