JP2000242588A - イーサネットコントローラのメモリ管理装置及びその管理方法 - Google Patents

イーサネットコントローラのメモリ管理装置及びその管理方法

Info

Publication number
JP2000242588A
JP2000242588A JP32579899A JP32579899A JP2000242588A JP 2000242588 A JP2000242588 A JP 2000242588A JP 32579899 A JP32579899 A JP 32579899A JP 32579899 A JP32579899 A JP 32579899A JP 2000242588 A JP2000242588 A JP 2000242588A
Authority
JP
Japan
Prior art keywords
frame
ethernet
memory
pointer
length
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.)
Pending
Application number
JP32579899A
Other languages
English (en)
Inventor
Sanko Kin
汕 弘 金
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2000242588A publication Critical patent/JP2000242588A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 メモリの浪費を減少し、効率的にメモリ管理
をすることができるイーサネットコントローラのメモリ
管理装置及びその管理方法を提供すること。 【解決手段】 イーサネットフレームの開始と終了とを
監視する監視部と、この監視部によって初期化され、前
記イーサネットフレームが一定の単位で受信されること
によって増加するカウンタと前記イーサネットフレーム
が受信される時、長さフィールド値を検出し、この長さ
フィールド値を現在メモリアドレスに加えて次のフレー
ムのための新しいメモリアドレスを出力するフレーム長
さ検出器とを含むイーサネットコントローラのメモリ管
理装置とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はイーサネットコント
ローラ(ethernet controlle)のメ
モリ管理装置及びその管理方法に関し、より詳しくはイ
ーサネットコントローラから受信したデータをメモリに
保存するイーサネットコントローラのメモリ管理装置及
びその管理方法に関する。
【0002】
【従来の技術】多数のコンピュータが独立的に動作しな
がら互いに情報を交換するためには統一したプロトコル
による管理技術が必須である。最近使用者は多量の情報
を早い時間内に伝達することを最大の課題としており、
これは単位時間当たりの情報量の増加を示す。したがっ
て、多数のコンピュータを一つのネットワークで連結
し、そのネットワークの範囲内に入る端末機間の円滑な
情報の交換が必要である。
【0003】したがって、端末機が一つのネットワーク
の範囲内でデータを送受信するのであるか、他のネット
ワーク内のデータを送受信するのであるかを区分しなけ
ればならない。そこで、ハブまたはリピータという中継
機を置いて、ネットワーク内のデータ交換を管理する。
これらの中継機に連結されたネットワークの端末機の
数、つまりチャンネル数が多いほど、これを管理する技
術が難しくなる。したがって、性能が優れている中継機
であればあるほど、各端末機が送受信するデータの内容
を調べて、それに合わせて制御し、ネットワーク内でボ
トルネック現象が生じないようにしなければならない。
【0004】以下、図面を参照しながらイーサネット通
信について説明する。
【0005】図1はIEEE 802.3規約によるイ
ーサネットフレームの構成図である。イーサネット通信
方式において、IEEE(Institute of
Elec-trical and Electroni
c Engineers)802.3規約はCSMA/
CD(carrier sense multiple
acc-ess with collision d
etection)と言う。
【0006】CSMA/CD方式で動作する端末機は送
信の前に伝送路でキャリアを点検し、チャンネルが使用
可能であればフレーム送信を遂行する。しかし、送信す
る時に他の端末機でも送信がある場合、必然的にフレー
ム間に衝突が発生する。衝突が感知されると、すぐ伝送
中であるフレームの残りの部分の送信を中断し、一定の
時間経過後に再伝送を準備する。
【0007】したがって、CSMA/CD方式は伝送媒
体を共有することによって端末機が伝送するフレームが
衝突する場合、キャリアと衝突とを感知する機能及び再
伝送する機能などが物理階層及びデータリンク階層に備
えられる。
【0008】図1に示すように、IEEE802.3方
式で用いられるフレームはプリアンブル(preamb
le)、開始フレーム区分記号(starting f
rame delimiter:以下SFDと称す
る)、目的アドレス(destination add
ress)、ソースアドレス(source addr
ess)、長さ(length)またはイーサタイプ
(ethertype)、情報データ(informa
tion data)及びフレームチェックシーケンス
(frame-check sequence:以下、
FCSと称する)からなる。
【0009】プリアンブルは送信側と受信側間との送受
信速度を一致させるためのビット同期を合わせる。SF
Dは有効なフレームの開始を知らせるフレーム同期用ビ
ット列である。目的アドレスとソースアドレスとはそれ
ぞれ目的地イーサネットカードの住所と送信側イーサネ
ットコントローラの住所とを示す。長さまたはイーサタ
イプはフレームの情報データ領域の長さを示すか、イー
サネットの類型を決定する。情報データ領域には実際に
有効なデータが乗るようになり、フレームの最小長さよ
り小さい時には0で補われるパディング(paddin
g)がある。FCSはプリアンブルとSFDとを除外し
た有効なフレームのビット列で誤りの発生を検出するの
に用いられる。
【0010】図2(a)及び図2(b)はイーサネット
コントローラでそれぞれフレーム送信と受信とを示すブ
ロック図である。
【0011】データ送信時にイーサネットコントローラ
内に存在する直接メモリアクセス(direct me
mory access:以下、DMAと称する)2は
送信しようとするデータをメモリ1で判読し、データリ
ンク階層の副階層であるMAC(medium acc
ess control)3に伝達する。この時、MA
C3は伝達を受けたデータに上記で説明したプリアンブ
ル、SFD、パディング及びFCSを追加して、物理階
層に伝達する。この時、中央処理装置(central
processing unit:以下、CPUと称
する)はデータ送信時に送信する端末機のアドレスと受
信端末機のアドレスとを予めメモリに整理しておいてD
MAに事前に知らせる。
【0012】反対に、データ受信時には物理階層から伝
達された受信データをMAC3´でプリアンブルとSF
Dとを除外してDMA2´に伝達する。DMA2´はこ
れをCPUの助力無しにメモリ1´に保存する。
【0013】一方、CPUはデータの送受信時に送信す
るデータのアドレスと受信するデータの保存アドレスと
をフレーム指示者(frame descripto
r)を通じてDMAに知らせる。ここで、フレーム指示
者はCPUによってメモリ領域に割り当てられ、フレー
ム指示者がポインタ(frame descripto
r pointer)によって判読される。
【0014】図3はイーサネットコントローラで用いら
れるフレーム指示者の構成図である。
【0015】一つのフレーム指示者5は送受信時に一つ
のフレームと1:1でマッピングされる。図3に示され
るように、一つのフレーム指示者はデータポインタ(d
ata pointer)5a、状態フィールド(st
atus field)5b、長さフィールド(len
gth field)5c、制御フィールド(cont
rol)5d及び指示者ポインタ(descripto
r pointer)5eで構成される。ここで、デー
タポインタ5aは送信するデータと受信されてメモリに
保存されたデータとの最初アドレスとを示す32ビット
ポインタである。状態フィールド5bは送受信後にその
結果の状態及びエラー発生時にエラーの類型を示すビッ
トを含む。長さフィールド5cは送受信するフレームで
データの長さを示し、制御フィールド5dはフレーム送
受信時にその方法を指定する。指示者ポインタ5eは現
在フレーム指示者5の次に連結されるフレーム指示者の
アドレスを有する。このような方法で多数のフレーム指
示者はリンクで連結されたリスト(list)構造を有
する。
【0016】図4はイーサネットコントローラでフレー
ム指示者を用いてデータを送受信する方法を示した図面
である。
【0017】図4において、フレーム指示者ポインタ
(frame descriptorpointer)
10はフレーム指示者20〜22と別途に備えられ、多
数のリンクリスト構造を有するフレーム指示者を管理す
る。つまり、フレーム指示者ポインタ10は現在遂行さ
れているフレーム指示者20のアドレスを有しており、
現在のフレーム指示者20が全て遂行されると、指示者
ポインタ20eの値、つまり現在フレーム指示者の次に
連結されるフレーム指示者のアドレスに更新される。
【0018】多数のフレーム指示者20〜22はCPU
によってメモリの特定の領域にリンクリスト構造で割り
当てられる。この時、フレーム指示者ポインタ10は作
られた多数のフレーム指示者20〜22の中で最初のフ
レーム指示者を示すようになる。
【0019】メモリ30は送信時には送信するデータが
構成され、受信時には受信されるデータを保存するため
に予め一定の間隔で、つまりフレーム最大情報データの
長さである1518バイトずつ順次確保される。
【0020】次に、図4を参照しながらイーサネットコ
ントローラを用いたデータ送受信過程を説明する。
【0021】データを送信する場合、先ず、送信するデ
ータがメモリ30に構成される。フレーム指示者20の
データポインタ20aには送信データの最初アドレスが
セットされ、長さフィールド20cには送信データの長
さがセットされる。指示者ポインタ20eには現在遂行
されるフレーム指示者20の次に連結されたフレーム指
示者21のアドレスがセットされる。最後に、制御フィ
ールド20dの送信制御ビットがセットされることによ
って送信データがイーサネットコントローラを通じて伝
送される。伝送が完了すると、状態フィールド20bに
その結果を示すビットがセットされ、フレーム指示者ポ
インタ10は指示者ポインタ20eの値に更新される。
【0022】一方、データ受信の場合、MACから入る
データはフレーム指示者ポインタ10が示すフレーム指
示者20によって受信される。つまり、受信されたデー
タはデータポインタ20aによって指定されたメモリ3
0領域に保存される。この時、長さフィールド20cは
受信されたデータの長さでセットされ、状態フィールド
20bは受信の結果を示すようになる。ここでも、受信
が完了すると、フレーム指示者ポインタ10は指示者ポ
インタ20eの値に更新される。ここで、受信するデー
タの長さを予め知ることができないので、メモリ30に
は事前に最大受信長さが確保できなければならない。I
EEE802.3で受信できる最大の長さは1518バ
イトである。したがって、メモリ30は事前に1518
バイト間隔で順次に確保され、フレーム指示者20〜2
2のデータポインタ20a、21a、22aには確保さ
れたメモリの開始アドレスがそれぞれセットされる。た
とえば、第1のフレーム指示者20のデータポインタ2
0aにアドレス1000がセットされると、第2のフレ
ーム指示者21のデータポインタ21aには1518バ
イトが離れたアドレス2518がセットされる。
【0023】
【発明が解決しようとする課題】たとえば、最初に受信
されるフレームデータの長さが短い場合、つまり64バ
イトである場合、第1のメモリ領域であるアドレス10
00からデータが保存されて、64バイトを除いた残り
のメモリ領域は空き状態で残るようになる。そして、次
に受信されるフレームデータは第2のメモリ領域である
アドレス2518からデータが保存されるので、メモリ
に用いられず、空き状態で残った領域が発生する。受信
されるデータが大体短い場合にはこのような用いられな
いメモリ領域が用いられるメモリ領域より非常に多くな
り、メモリの甚だしい浪費を招くようになる。
【0024】したがって、本発明の目的は、従来の問題
点を解決するために、イーサネットコントローラからフ
レームを受信する場合、現在受信するフレームの長さフ
ィールド値と以前使用可能なメモリアドレスとを加算し
て、事前に受信されるフレームのためのメモリ空間を可
変的にコンパクトに提供することにある。
【0025】
【課題を解決するための手段】前記目的を達成するため
に、本発明は、イーサネットコントローラのメモリ管理
装置でイーサネットフレームを受信する間にフレームの
長さを検出する。検出したフレームの長さはデータベー
スポインタによって現在用いられるメモリアドレスに加
えられる。結局、加えられた値はリンクリスト構造で連
結された後、メモリアドレスとして用いられる。
【0026】本発明の一形態によるイーサネットコント
ローラのメモリ管理装置は、監視部と、カウンタと検出
部とを含む。ここで、監視部はイーサネットフレームの
開始と終了とを監視し、カウンタは監視部によって初期
化され、イーサネットフレームが一定の単位で受信され
ることによって増加する。また、検出部はイーサネット
フレームが受信される際に長さフィールド値を検出し、
長さフィールド値を現在のメモリアドレスに加えて次の
フレームのための新たなメモリアドレスで出力する。
【0027】本発明はイーサネットフレームが受信され
る時、一時的に保存するフレームバッファをさらに含
む。現在メモリアドレスを一時的に保存する第1バッフ
ァをさらに含み、新たなメモリアドレスが計算されて一
時的に保存される第2バッファをさらに含む。また、検
出部と連結して更新コントローラをさらに含むことがで
きる。更新コントローラは検出部から第1制御信号の入
力を受けて、制御バスにバス要求の信号を出力する。ま
た、中央処理装置から制御バスを通じてバス許可信号の
入力を受けた後、新たなメモリアドレスをメモリにセッ
トするように第2制御信号を出力する。
【0028】本発明はイーサネットフレームを受信して
メモリに保存するための情報をイーサネットフレーム別
に有し、このような情報はリンクリスト構造で連結され
て、順次にアクセスされるデータベースに保存される。
ここで、データベースはメモリアドレス、状態フィール
ド、長さフィールド、制御フィールド、アドレスポイン
タからなる。
【0029】本発明の他の形態によるイーサネットコン
トローラのメモリ管理装置は、多数のフレーム指示者
と、監視部と、カウンタと、検出部と、制御部とからな
る。
【0030】多数のフレーム指示者はイーサネットフレ
ームを受信してメモリに保存するためのメモリアドレス
を含み、リンクリスト構造で連結されて順次にアクセス
される。監視部はイーサネットフレームの開始と終了と
を監視し、カウンタは監視部によって初期化され、イー
サネットフレームが一定の単位で受信されることによっ
て増加する。
【0031】検出部はイーサネットフレームが受信され
る時、長さフィールド値を検出後にインタラプト信号を
出力する。制御部はインタラプト信号を受けて長さフィ
ールド値を現在用いられるフレーム指示者のメモリアド
レスに加えて次に連結されたフレーム指示者のメモリア
ドレスに更新する。
【0032】一方、本発明の一形態による制御方法は、
イーサネットフレームの開始と終了とを監視し、これに
よってフレームカウンタを初期化し、フレーム長さ検出
器にイーサネットフレームの長さフィールドの位置をセ
ットする。イーサネットフレームを受信する間、フレー
ムカウンタを増加させ、フレームカウンタ値がイーサネ
ットフレームの長さフィールドの位置であるかどうかを
判断する。フレームカウンタ値が長さフィールド位置で
あると、長さフィールド値を検出して、検出が成功した
かどうかを判断する。
【0033】長さフィールド値の検出が成功すると、こ
れを現在用いるメモリアドレスに加えて、次のイーサネ
ットフレームのためのメモリアドレスに更新する。長さ
フィールド値の検出が成功しないと、既にセットされた
メモリアドレスを用いる。
【0034】一方、本発明の他の形態による管理方法は
長さフィールド値の検出が成功すると、インタラプト信
号を発生させて中央処理装置が長さフィールド値と現在
のデータが保存されるメモリアドレスとを加えて、次の
フレームのための新たなメモリアドレスを算出し、既存
のメモリアドレスを更新するようになる。
【0035】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施形態によるイーサネットコントローラについて説
明する。
【0036】図5は本発明の実施形態によるイーサネッ
トコントローラのメモリ管理装置においてフレーム指示
者に関した動作を示す図面である。
【0037】図5に示すように、本発明の実施形態によ
るメモリ管理装置は、フレーム指示者ポインタ100、
リンクリスト構造で連結された多数のフレーム指示者2
00〜220、メモリ300、フレーム長さ検出器55
0が関係して動作する。
【0038】次に、図5のメモリ管理装置の動作を説明
する。フレーム指示者ポインタ100は初期にリンクリ
スト構造の最初フレーム指示者200を示す。すると、
最初フレーム指示者200のデータポインタ200aは
メモリ300のアドレスつまり、アドレス1000を示
す。一方、フレーム長さ検出器550は現在受信されて
いるフレームの長さフィールドを検出する。したがっ
て、第2のフレーム指示者210のデータポインタ21
0aは以前のデータポイント値である1000とフレー
ム長さ検出器550とが検出した現在のフレーム長さ、
たとえば、64を加えた値である1064にセットされ
る。
【0039】図6は本発明の実施形態によるイーサネッ
トコントローラのメモリ管理装置を示すブロック図であ
る。
【0040】図6に示すように、本発明の実施形態によ
るメモリ管理装置500はフレーム開始監視部510、
フレーム終了監視部520、フレームカウンタ530、
フレームバッファ540、フレーム長さ検出器550、
現在データポインタバッファ560、次のデータポイン
タバッファ570、更新制御器580と次のフレーム指
示者バッファ590とからなる。
【0041】図6において、フレーム開始監視部510
とフレーム終了監視部520とはフレームの開始と終了
とを感知する。フレームカウンタ530は受信されるフ
レームをバイト単位でカウントし、フレームバッファ5
40は受信されるフレームを一時的に保存する。フレー
ム長さ検出器550はフレームで長さフィールドの値を
検出する。
【0042】現在データポインタバッファ560は現在
フレーム指示者200のデータポインタ200a値を保
存し、次のデータポインタバッファ570は次に連結さ
れたフレーム指示者210の計算されたデータポインタ
210a値を保存する。更新制御器580は更新された
データポインタ値を次のフレーム指示者に保存するため
にCPUにバス要求信号などの制御信号を出力し、CP
Uからこれによるバス許可信号を受けて、メモリ管理装
置がアドレスバスとデータバスとを占有するようにな
る。次のフレーム指示者バッファ590は次のフレーム
指示者210のアドレスを有する。
【0043】図7は本発明の実施形態によるイーサネッ
トコントローラのメモリ管理方法を示す流れ図である。
【0044】本発明のメモリ管理装置500において、
フレーム開始監視部510は受信されるフレームでSF
Dを監視してフレームの開始を感知する。フレームの終
了監視部520はFCSを監視して、フレームの終了を
感知する(S400)。フレームを受信する場合、フレ
ーム開始監視部510によってフレームカウンタ530
が初期化される。この時、フレーム長さ検出器550に
は13、14の値がセットされる。この値はIEEE8
02.3フレームフォーマットでフレーム長さフィール
ドの位置を示す(S410)。
【0045】バイト単位でフレームが受信されてフレー
ムバッファ540に一時的に保存され(S420)、こ
れによってフレームカウンタ530は増加する(S43
0)。フレームカウンタ530の値が長さフィールド位
置である13になるかどうかを判断する(S440)。
フレームカウンタ530が13になると、フレーム長さ
検出器550が2バイトである長さフィールド値を検出
し(S450)、検出が成功したかどうかを判断する
(S460)。
【0046】検出が成功したら、フレーム長さ検出器5
50は現在データポインタバッファ560に保存された
値と長さフィールド値とを加算し、次のデータポインタ
バッファ570に保存する。また、フレーム長さ検出器
550は更新制御器580に第1制御信号を送る。第1
制御信号を受けた更新制御器580は制御バス(CTR
L BUS)にバス要求信号を出力する。
【0047】制御バス(CTRL BUS)を通じて更
新制御器580からバス要求信号を受けたCPUはバス
許可信号を出力する。バス許可信号を受信した更新制御
器580は、次のフレーム指示者バッファ590とその
次のデータポインタバッファ570とにそれぞれ第2制
御信号を出力する。次のフレーム指示者バッファ590
は第2制御信号を受けて保存しているその次のフレーム
指示者のアドレスをアドレスバス(ADD BUS)に
出力する。また、次のデータポインタバッファ570は
第2制御信号を受けて、保存している新たなデータポイ
ンタ値をデータバス(DATA BUS)に出力する。
これによって、次のフレーム指示者のデータポインタ値
が更新される(S470)。
【0048】検出が失敗すると、CPUが初期に設定し
た値をそのまま用いるようになる(S480)。
【0049】前述した実施形態においては、フレーム長
さ検出器がフレーム長さを検出し、その検出結果を用い
て受信フレームが保存された後にメモリアドレスでフレ
ーム指示者のデータポインタを更新したが、これ以外の
方法も可能である。たとえば、フレーム長さ検出が成功
した後、インタラプト信号を発生させ、CPUが直接次
の受信フレームのメモリアドレスを計算し、これを次の
フレーム指示者のデータポインタに保存するわけであ
る。
【0050】なお、本発明の実施形態においてはIEE
E802.3フレームを例として本発明を説明したが、
本発明は前記IEEE802.3フレームに限られず、
IEEE802.4、IEEE802.5などのような
多様なイーサネットプロトコルを用いたイーサネットコ
ントローラに適用可能であるのは当然のことである。
【0051】
【発明の効果】以上、説明したように本発明によると、
イーサネットコントローラで可変長さのフレームを受信
するとき、フレーム長さを検出した後、現在メモリアド
レスに加えて次のフレーム保存のためのメモリアドレス
として用いることによって、メモリの浪費を減少し、効
率的にメモリ管理をすることができる。
【図面の簡単な説明】
【図1】IEEE802.3規約によるイーサネットフ
レームの構成図である。
【図2】イーサネットコントローラでのフレーム送信お
よびフレーム受信を示すブロック図である。
【図3】イーサネットコントローラで用いられるフレー
ム指示者の構成図である。
【図4】イーサネットコントローラでフレーム指示者を
用いてデータを送受信する方法を示した図である。
【図5】本発明の実施形態によるイーサネットコントロ
ーラのメモリ管理装置でフレーム指示者に関した動作を
示す図である。
【図6】本発明の実施形態によるイーサネットコントロ
ーラのメモリ管理装置を示すブロック図である。
【図7】本発明の実施形態によるイーサネットコントロ
ーラのメモリ管理方法を示す流れ図である。
【符号の説明】
100 フレーム指示者ポインタ 200〜220 フレーム指示者 200a〜220a データポインタ 300 メモリ 500 メモリ管理装置 510 フレーム開始監視部 520 フレーム終了監視部 530 フレームカウンタ 540 フレームバッファ 550 フレーム長さ検出器 560 データポインタバッファ 570 データポインタバッファ 580 更新制御器 590 フレーム指示者バッファ

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 イーサネット(ETHERNET)フレ
    ームの開始と終了とを監視する監視部と、 この監視部によって初期化され、前記イーサネットフレ
    ームが一定の単位で受信されることによって増加するカ
    ウンタと、 前記イーサネットフレームが受信される時、長さフィー
    ルド値を検出し、その長さフィールド値を現在メモリア
    ドレスに加えて次のフレームのための新しいメモリアド
    レスを出力するフレーム長さ検出器とを具備することを
    特徴とするイーサネットコントローラのメモリ管理装
    置。
  2. 【請求項2】 前記イーサネットフレームが受信される
    時、前記イーサネットフレームを一時的に保存するフレ
    ームバッファをさらに含むことを特徴とする請求項1に
    記載のイーサネットコントローラのメモリ管理装置。
  3. 【請求項3】 前記現在メモリアドレスを一時的に保存
    する第1バッファをさらに含むことを特徴とする請求項
    2に記載のイーサネットコントローラのメモリ管理装
    置。
  4. 【請求項4】 前記新しいメモリアドレスが計算されて
    一時的に保存される第2バッファをさらに含むことを特
    徴とする請求項3に記載のイーサネットコントローラの
    メモリ管理装置。
  5. 【請求項5】 前記フレーム長さ検出器からの第1制御
    信号の入力を受けて、制御バスを通じて中央処理装置に
    バス要求の信号を出力し、前記中央処理装置から前記制
    御バスを通じてバス許可信号の入力を受けた後、前記新
    しいメモリアドレスをメモリにセットするための第2制
    御信号を出力する更新コントローラをさらに含むことを
    特徴とする請求項4に記載のイーサネットコントローラ
    のメモリ管理装置。
  6. 【請求項6】 前記イーサネットフレームを受信してメ
    モリに保存するための情報を前記イーサネットフレーム
    別に有し、リンクリスト構造で連結されて順次にアクセ
    スされるデータベースをさらに含むことを特徴とする請
    求項5に記載のイーサネットコントローラのメモリ管理
    装置。
  7. 【請求項7】 前記データベースは多数のフレーム指示
    者からなり、 前記イーサネットフレームのデータを保存するメモリア
    ドレスと、 受信の結果を示す状態フィールドと、 前記イーサネットフレームの長さを示す長さフィールド
    と、 前記イーサネットフレームの受信を制御する制御フィー
    ルドと、 前記リンクリストの構造のために次のフレーム指示者の
    アドレスを有するポインタとを含むことを特徴とする請
    求項6に記載のイーサネットコントローラのメモリ管理
    装置。
  8. 【請求項8】 前記フレーム指示者はフレーム指示者ポ
    インタによって順次にアクセスされることを特徴とする
    請求項7に記載のイーサネットコントローラのメモリ管
    理装置。
  9. 【請求項9】 前記イーサネットフレームはIEEE
    802.3プロトコルによるフレームであることを特徴
    とする請求項8に記載のイーサネットコントローラのメ
    モリ管理装置。
  10. 【請求項10】 イーサネットフレームを受信してメモ
    リに保存するためのメモリアドレスを含み、リンクリス
    ト構造で連結されて順次にアクセスされる多数のフレー
    ム指示者と、 前記イーサネットフレームの開始と終了とを監視する監
    視部と、 前記監視部によって初期化され、前記イーサネットフレ
    ームが一定の単位で受信されることによって増加するカ
    ウンタと、 前記イーサネットフレームが受信される時、長さフィー
    ルド値を検出した後、第1制御信号を出力するフレーム
    長さ検出器と、 前記第1制御信号を受け、前記長さフィールド値を現在
    用いられる前記フレーム指示者のメモリアドレスに加え
    て、次に連結されたフレーム指示者のメモリアドレスに
    更新する制御部とを具備することを特徴とするイーサネ
    ットコントローラのメモリ管理装置。
  11. 【請求項11】 前記フレーム指示者は、 受信の結果を示す状態フィールドと、 前記イーサネットフレームの長さを示す長さフィールド
    と、 前記イーサネットフレームの受信を制御する制御フィー
    ルドと、 前記リンクリストの構造のために、次のフレーム指示者
    のアドレスを有するポインタとを含むことを特徴とする
    請求項10に記載のイーサネットコントローラのメモリ
    管理装置。
  12. 【請求項12】 前記フレーム指示者はフレーム指示者
    ポインタによって順次にアクセスされることを特徴とす
    る請求項11に記載のイーサネットコントローラのメモ
    リ管理装置。
  13. 【請求項13】 前記イーサネットフレームはIEEE
    802.3プロトコルによるフレームであることを特徴
    とする請求項10に記載のイーサネットコントローラの
    メモリ管理装置。
  14. 【請求項14】 イーサネットフレームを受信するため
    に各フレーム毎に受信したデータを保存するメモリアド
    レス、状態フィールド、長さフィールド、制御フィール
    ドなどをメモリに一つのデータベースで構成し、このデ
    ータベースはリンクリスト構造で連結されデータベース
    ポインタによって順次にアクセスされ、これを用いて受
    信データをメモリに保存するイーサネットコントローラ
    のメモリ管理装置において、 前記イーサネットフレームを受信する間にフレームの長
    さを検出し、これを前記データベースポインタによって
    現在データベースのメモリアドレスに加えて次のデータ
    ベースのメモリアドレスとして用いることを特徴とする
    イーサネットコントローラのメモリ管理装置。
  15. 【請求項15】 前記イーサネットフレームはIEEE
    802.3プロトコルによるフレームであることを特徴
    とする請求項14に記載のイーサネットコントローラの
    メモリ管理装置。
  16. 【請求項16】 イーサネットフレームの開始と終了と
    を監視して前記イーサネットフレームの長さを計算する
    ための初期化作業を遂行し、前記イーサネットフレーム
    の長さフィールドの位置をセットする第1段階と、 前記イーサネットフレーム長さを計算するために、前記
    イーサネットフレームを受信しながら順次に値を増加
    し、前記増加した値が前記イーサネットフレームの長さ
    フィールドの位置であるかどうかを判断する第2段階
    と、 前記増加した値が前記イーサネットフレームの長さフィ
    ールド位置であれば、長さフィールド値を検出し、検出
    が成功したかどうかを判断する第3段階と、 前記第3段階おいて、前記長さフィールド値の検出に成
    功すると、これを現在メモリアドレスに加えて、次のイ
    ーサネットフレームのためのメモリアドレスに更新する
    第4段階と、 前記第3段階で前記長さフィールド値の検出に成功しな
    いと、既にセットされたメモリアドレスをそのまま用い
    る第5段階とからなることを特徴とするイーサネットコ
    ントローラのメモリ管理方法。
  17. 【請求項17】 前記第1段階の以前に中央処理装置が
    前記イーサネットフレームを受信してメモリに保存する
    ためのメモリアドレスを既にセットする段階をさらに含
    むことを特徴とする請求項16に記載のイーサネットコ
    ントローラのメモリ管理方法。
  18. 【請求項18】 前記第4段階は中央処理装置の介入無
    しに直接メモリアクセス(DMA)が遂行されることを
    特徴とする請求項16に記載のイーサネットコントロー
    ラのメモリ管理方法。
  19. 【請求項19】 前記第4段階において、前記長さフィ
    ールド値の検出に成功しないと、第1制御信号を受けて
    中央処理装置にバス要求信号を出力し、これによるバス
    許可信号を受けてアドレスバスとデータバスとを用いて
    次のイーサネットフレームのためのメモリアドレスを更
    新することを特徴とする請求項18に記載のイーサネッ
    トコントローラのメモリ管理方法。
  20. 【請求項20】 前記第4段階は、前記長さフィールド
    値の検出が成功すると第1制御信号を発生して中央処理
    装置が前記長さフィールド値と現在のデータとが保存さ
    れるメモリアドレスを加算して次のフレームのための新
    しいメモリアドレスを算出し、既存のメモリアドレスを
    更新することを特徴とする請求項16に記載のイーサネ
    ットコントローラのメモリ管理方法。
JP32579899A 1998-11-18 1999-11-16 イーサネットコントローラのメモリ管理装置及びその管理方法 Pending JP2000242588A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1998P-49387 1998-11-18
KR1019980049387A KR100280642B1 (ko) 1998-11-18 1998-11-18 이더넷 컨트롤러의 메모리 관리 장치 및 그 제어방법

Publications (1)

Publication Number Publication Date
JP2000242588A true JP2000242588A (ja) 2000-09-08

Family

ID=19558727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32579899A Pending JP2000242588A (ja) 1998-11-18 1999-11-16 イーサネットコントローラのメモリ管理装置及びその管理方法

Country Status (3)

Country Link
US (1) US6697366B1 (ja)
JP (1) JP2000242588A (ja)
KR (1) KR100280642B1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009532954A (ja) * 2006-03-31 2009-09-10 クゥアルコム・インコーポレイテッド 高速メディアアクセス制御に関するメモリ管理
JP2012099891A (ja) * 2010-10-29 2012-05-24 Yokogawa Electric Corp データ受信装置
CN109952764A (zh) * 2016-11-09 2019-06-28 瑞萨电子株式会社 通讯网络控制器模块

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697868B2 (en) 2000-02-28 2004-02-24 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6757746B2 (en) * 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US8782199B2 (en) * 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US7174393B2 (en) 2000-12-26 2007-02-06 Alacritech, Inc. TCP/IP offload network interface device
DE10015683B4 (de) * 2000-03-29 2006-07-13 Infineon Technologies Ag Datenübertragungsspeicher
US8019901B2 (en) 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
DE10119754B4 (de) * 2001-04-23 2007-11-29 Infineon Technologies Ag Verfahren und Vorrichtung zum Speichern von Datenpaketen
US7543087B2 (en) * 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7379676B2 (en) 2002-11-27 2008-05-27 Electronics And Telecommunications Research Institute Communication apparatus in Ethernet passive optical network
US6996070B2 (en) * 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
US8094552B1 (en) * 2005-11-03 2012-01-10 Seagate Technology Llc Adaptive buffer for frame based storage communications protocols
US20080263171A1 (en) * 2007-04-19 2008-10-23 Alacritech, Inc. Peripheral device that DMAS the same data to different locations in a computer
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US7995596B2 (en) * 2008-05-13 2011-08-09 Netlogic Microsystems, Inc. System and method for offloading packet protocol encapsulation from software
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
EP2736220B1 (en) * 2012-11-22 2019-10-23 NXP USA, Inc. Method and apparatus for network streaming
US9485333B2 (en) 2013-11-22 2016-11-01 Freescale Semiconductor, Inc. Method and apparatus for network streaming
WO2015167649A1 (en) * 2014-05-02 2015-11-05 Commscope Technologies Llc Link-fault tolerance in a distributed antenna system
CN109815176B (zh) * 2019-01-14 2022-10-04 中国科学院上海高等研究院 特定dma数据发送方法、接收方法、系统及介质
CN119578315B (zh) * 2024-11-19 2025-08-22 苏州特思恩科技有限公司 一种链表乱序硬件极速自查器的实现方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63208149A (ja) * 1987-02-25 1988-08-29 Fujitsu Ltd 受信バツフア制御方式
JPH02242461A (ja) * 1989-03-16 1990-09-26 Fujitsu Ltd データ受信方式
JPH05176000A (ja) * 1991-12-20 1993-07-13 Nec Corp データ中継装置
JPH0629972A (ja) * 1992-07-06 1994-02-04 Nec Corp データリンクプロトコル制御装置のバッファメモリ管理方式
JPH0969852A (ja) * 1995-09-01 1997-03-11 Hitachi Cable Ltd ネットワークの帯域予約方式
JPH09284340A (ja) * 1996-04-15 1997-10-31 Nec Eng Ltd 通信制御方法及び装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2568458B2 (ja) * 1990-11-01 1997-01-08 三菱電機株式会社 データ長さ検出装置
US5339411A (en) * 1990-12-21 1994-08-16 Pitney Bowes Inc. Method for managing allocation of memory space
US5313582A (en) * 1991-04-30 1994-05-17 Standard Microsystems Corporation Method and apparatus for buffering data within stations of a communication network
JP2596718B2 (ja) * 1993-12-21 1997-04-02 インターナショナル・ビジネス・マシーンズ・コーポレイション ネットワーク通信バッファを管理する方法
US6167480A (en) * 1997-06-25 2000-12-26 Advanced Micro Devices, Inc. Information packet reception indicator for reducing the utilization of a host system processor unit
DE19736434C3 (de) * 1997-08-21 2002-08-22 Nokia Mobile Phones Ltd Verfahren und Vorrichtungen zur Erkennung der Position von in einem seriellen Datenempfangsstrom liegenden Datenpaketen
US6088777A (en) * 1997-11-12 2000-07-11 Ericsson Messaging Systems, Inc. Memory system and method for dynamically allocating a memory divided into plural classes with different block sizes to store variable length messages
US6415338B1 (en) * 1998-02-11 2002-07-02 Globespan, Inc. System for writing a data value at a starting address to a number of consecutive locations equal to a segment length identifier

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63208149A (ja) * 1987-02-25 1988-08-29 Fujitsu Ltd 受信バツフア制御方式
JPH02242461A (ja) * 1989-03-16 1990-09-26 Fujitsu Ltd データ受信方式
JPH05176000A (ja) * 1991-12-20 1993-07-13 Nec Corp データ中継装置
JPH0629972A (ja) * 1992-07-06 1994-02-04 Nec Corp データリンクプロトコル制御装置のバッファメモリ管理方式
JPH0969852A (ja) * 1995-09-01 1997-03-11 Hitachi Cable Ltd ネットワークの帯域予約方式
JPH09284340A (ja) * 1996-04-15 1997-10-31 Nec Eng Ltd 通信制御方法及び装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009532954A (ja) * 2006-03-31 2009-09-10 クゥアルコム・インコーポレイテッド 高速メディアアクセス制御に関するメモリ管理
US8139593B2 (en) 2006-03-31 2012-03-20 Qualcomm Incorporated Memory management for high speed media access control
US8594112B2 (en) 2006-03-31 2013-11-26 Qualcomm Incorporated Memory management for high speed media access control
JP2012099891A (ja) * 2010-10-29 2012-05-24 Yokogawa Electric Corp データ受信装置
CN109952764A (zh) * 2016-11-09 2019-06-28 瑞萨电子株式会社 通讯网络控制器模块

Also Published As

Publication number Publication date
KR20000032792A (ko) 2000-06-15
US6697366B1 (en) 2004-02-24
KR100280642B1 (ko) 2001-05-02

Similar Documents

Publication Publication Date Title
JP2000242588A (ja) イーサネットコントローラのメモリ管理装置及びその管理方法
US7149213B1 (en) Wireless computer system with queue and scheduler
JP3115322B2 (ja) メッセージの形成方法
US7313104B1 (en) Wireless computer system with latency masking
JPH09160870A (ja) ハードウェアとソフトウェアの間でデータ転送を報告する方法および装置
JPH0630498B2 (ja) 通信ネットワ−ク
US7450557B2 (en) Wireless communication device, wireless communication system using the same, and communication method therefor
US6874036B2 (en) Network management server combining PDUs to minimize bandwidth consumption at data link layer
US20030202509A1 (en) Information processing apparatus and method, and distribution medium
CN112988633A (zh) 一种电子设备及数据传输方法
US20030137981A1 (en) Switch controller controlled by a link layer protocol and control method thereof
JP3982779B2 (ja) ノード認識方法
CN119603361B (zh) 工业以太网数据的传输方法和系统
JP3714009B2 (ja) マルチプロトコル対応通信制御方法及びマルチプロトコル対応通信システム並びにマルチプロトコル対応通信制御処理プログラム
JP3163526B2 (ja) Lanのブロードキャストフレーム処理方法および装置
CN116016017B (zh) 一种Modbus网关处理多主机数据访问的方法
CN116436994B (zh) Profinet协议报文传输方法、装置、设备及介质
JP3357980B2 (ja) スイッチング・ハブ装置及びそのスイッチング処理方法並びにその制御プログラムを記録した記録媒体
JP2003289315A (ja) パケット転送装置およびパケット転送方法
KR20000012920A (ko) 이더넷 컨트롤러의 직접 메모리 접근 장치
US20040252712A1 (en) Information data transmitting and receiving device and transmitting and receiving method of information data
JP2000259542A (ja) 情報処理装置
US7072351B1 (en) Collision recovery interface support in a home phoneline networking alliance media access controller (HPNA MAC) operating in accordance with at least two different data rate standards
JPH08223192A (ja) 伝送装置
KR20030027352A (ko) 듀얼 스위칭 허브를 갖는 네트워킹 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100426

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100430

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100528

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110104