JP3878785B2 - ネットワークインタフェース回路 - Google Patents
ネットワークインタフェース回路 Download PDFInfo
- Publication number
- JP3878785B2 JP3878785B2 JP2000074663A JP2000074663A JP3878785B2 JP 3878785 B2 JP3878785 B2 JP 3878785B2 JP 2000074663 A JP2000074663 A JP 2000074663A JP 2000074663 A JP2000074663 A JP 2000074663A JP 3878785 B2 JP3878785 B2 JP 3878785B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- reception
- data
- control unit
- interface circuit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Description
【発明の属する技術分野】
本発明は、複写機、プリンタ、スキャナ、ファクシミリなどに内蔵されるネットワークインタフェース回路に関し、より詳細には、少ない受信バッファで効率良くデータ受信を行えるようにしたネットワークインタフェース回路に関するものである。
【0002】
【従来の技術】
図3に、一般的なネットワークインタフェース回路の構成例を示す。ネットワークインタフェース回路30は、ネットワークコントローラ31と、送受信バッファ34とを専用のインタフェースを介して接続してなる。送受信バッファ34には汎用のメモリデバイス(FIFO)が使用される。
ネットワークコントローラ31は、DMA(Direct Memory Access)コントローラ37あるいはPCI(Peripheral Component Interface)バスインタフェースを有し、CPU35、システムメモリ36などと共にシステムバス32に接続されている。ネットワーク33側には、PHY38およびトランス等を介して接続されている。
ネットワークコントローラ31は、ネットワーク33からのデータフレームを、アドレスフィルタを通すことにより、自局宛のフレームのみ受信バッファ34に格納する。それと同時に内蔵のDMAコントローラ37がバス使用権を要求し、許可されるとシステムメモリ36に対し受信データを転送する。
イーサネットのようなネットワークでは、データの受信はフレーム単位で行われるため、フレームの途中で受信を止めることはできない。何らかの理由により受信動作を停止した場合、そのフレームデータは喪失することとなり、再度データを送信元に要求する必要がある。このため受信バッファ34に用いられるFIFOメモリは、1K〜2Kbyteというサイズのものが一般的である。
そして、メモリの管理はフレーム単位で行われ、メモリに格納されるフレーム数だけアドレス等の管理をする必要があるため、最大フレーム数を想定した回路構成にする必要がある。
【0003】
【発明が解決しようとする課題】
最近ではASIC(Application Specific Integrated Circuit)ベンダーが提供するMACコアを利用することで、複数の機能を持つASICの開発が可能となってきたが、送受信バッファはASIC外部に接続されることが多い。これは大規模なFIFOメモリを内蔵することが難しいためであるが、その結果、メモリ管理が煩雑になるといった問題や、I/Oピンが不足するといった物理的な制約が発生している。
メモリに複数のフレームを格納する場合、フレーム数だけアドレスポインタ等の情報を管理する必要がある。フレーム数は一定でないことから、最大数を想定して回路を構成する必要がある。このため複雑な回路を組む必要があり、ASICの開発期間増長の要因となりうる。
また、大規模な受信バッファを必要とすることが、ASICへのバッファ内蔵を妨げる要因となっている。
本発明が解決しようとする課題は、フレーム管理を容易にでき、回路構成をシンプルにでき、大規模な受信バッファを必要としないネットワークインタフェース回路を提供することにより、受信バッファを内蔵したASIC構成のネットワークインタフェース回路を容易に実現できるようにすることにある。
【0004】
【課題を解決するための手段】
上記課題を解決するために、請求項1記載の発明は、MAC部と、DMAコントロール部と、受信バッファとを有し、前記MAC部がネットワークからの自局宛のデータフレームを前記受信バッファに格納すると同時に、前記DMAコントロール部がバス使用権を要求し、許可されるとシステムメモリに対し受信データを転送するように構成したネットワークインターフェース回路において、前記受信バッファを少なくとも3つのバッファブロックで構成するとともに、各バッファブロックのデータを管理し、前記MAC部からのデータ受信およびDMAコントロール部へのデータ送出をコントロールする受信バッファコントロール部を備え、1つのデータフレームを受信する際には、前記受信バッファコントロール部は、前記バッファブロックを2ブロック使用し、残り1ブロックは常に待機させ、各バッファブロック単位で前記受信データを前記DMAコントロール部へバースト転送するように制御し、前記バースト転送の速度は、前記MAC部から各前記バッファブロックへの受信データの転送速度よりも速いネットワークインターフェース回路を特徴とする。
【0005】
【発明の実施の形態】
以下に、本発明の実施の形態について説明する。
図1は本発明にかかるネットワークインタフェース回路の構成例を示すブロック図である。この例に示すネットワークインタフェース回路100はASICにより実現されている。ネットワーク33は100Mbpsもしくは10Mbpsのイーサネットに特定される。
ネットワークインタフェース回路100は、MAC(Media Access Control)部1と、受信バッファコントロール部2と、受信バッファ3と、DMAコントロール部4と、バスアービタ5と、メモリコントロール部6と、DMAコントロール部7とを備えて構成されている。
MAC部1、受信バッファ3およびDMAコントロール部4は受信バッファコントロール部2に接続されている。DMAコントロール部4はバスアービタ5に接続されている。バスアービタ5は、メモリコントロール部6を介してシステムメモリ9に接続されている。また、ネットワークインタフェース回路100を構成するASICの内部バスはCPU10に接続されている。
MAC部1は、ネットワーク101のプロトコルコントロールを行う。
受信バッファコントロール部2は、受信バッファ3のデータ管理とともに、MAC部1からのデータ受信とDMAコントロール部4へのデータ送出もコントロールしている。
受信バッファ3は、小規模かつ同容量の3つのバッファブロック3A、3B、3Cからなる。
バスアービタ5は、DMAコントロール部4と他のDMAコントロール部10との調停を行っている。
【0006】
このネットワークインタフェース回路100の具体的な動作について、図2を用いて説明する。
初期状態において、受信バッファ3のすべてのバッファブロック3A、3B、3Cは空き状態にある。この状態でフレームが受信された場合は、バッファブロック3A、3B、3Cの優先順位で格納されるようになっている。
いま、フレーム1が受信されたとする。
状態1:フレーム1は、バッファブロック3Aに格納される。
状態2:バッファブロック3Aがいっぱいになると、フレーム1はバッファブロック3Bに引き続き格納される。それと同時に、DMAコントロール部4は、バッファブロック3Aからデータを読み出し、システムメモリ9へ転送する。
状態3:ネットワーク33が100Mbpsのイーサネットの場合、受信バッファ3へのデータ格納速度は最高で12.5Mbyte/secである。ASIC内部のデータ転送速度をこれ以上にしておくことで、バッファブロック3Bがいっぱいになる前にバッファブロック3Aが空くことになる。
状態4:バッファブロック3Bがいっぱいになったら、フレーム1は再びバッファブロック3Aに格納される。同時に、バッファブロック3Bからシステムメモリ9へのデータ転送が開始される。
【0007】
状態1〜4において、バッファブロック3Cは常に新規フレームを待ちつづけ、受信動作自体は常に2つのバッファブロックで行われる。
状態5:フレーム1の受信が終了し次のフレーム(フレーム2)がきた場合、バッファブロック3Cに格納される。これは、バッファブロック3A、3Bの状態によらない。前のフレーム受信でバッファブロック3A、3Cを使用したなら、バッファブロック3Bに新しいフレームが格納されることになる。
状態6:バッファブロック3Cがいっぱいになる前に、バッファブロック3Aまたは3Bのいずれかが空く。バッファブロック3Cがいっぱいになった時点で、空いているバッファブロックを自動的に選択する。図2の場合、フレーム2はバッファブロック3C、3Bにより受信される。
受信バッファ3を2つのバッファブロックで構成した場合、上記状態4から状態5に移る際にいずれのバッファブロックも使用できないときがあり、受信オーバランが発生しやすくなるが、この例のように3つのバッファブロックで構成することで、容易にこの問題を回避することができる。
【0008】
上記のように、受信データをフレーム単位で管理せずに、受信ブロック3を小規模のバッファブロック3A、3B、3Cの集合体とし、各バッファブロック3A、3B、3Cには1フレームしか格納されないようにしたことにより、受信フレームの管理が容易になり、回路構成もシンプルにできる。
また、各バッファブロック3A、3B、3Cの容量は使用するASICの動作周波数やバスの優先順位等により調整する必要があるが、DMA転送速度が受信速度に対し十分速いならば、各バッファブロック3A、3B、3Cの容量はDMAのバースト転送サイズ、たとえば32バイトとしても問題ない。この場合3ブロックの合計容量でも96バイトである。
また、画像処理機能などを内蔵する多機能ASICでは内部バスが優先的に使用できない場合が多いが、バスの獲得間隔の最大値から受信バッファ3に必要な容量を算出することで容易にバッファブロック構成を決定することができるため、あらゆる構成のASICに対し対応が可能になる。
なお、上記実施の形態では受信バッファを3つのバッファブロックで構成した場合について説明したが、4つ以上のバッファブロックで構成してもよいことは無論である。
【0009】
【発明の効果】
以上説明したように、本発明によれば、フレーム管理を容易にでき、回路構成をシンプルにでき、大規模な受信バッファを必要としないネットワークインタフェース回路を実現できるので、受信バッファを内蔵したASIC構成のネットワークインタフェース回路を容易に実現できるようになる。
【図面の簡単な説明】
【図1】本発明にかかるネットワークインタフェース回路の構成例を示すブロック図である。
【図2】図1に示すネットワークインタフェース回路の動作説明図である。
【図3】従来の一般的なネットワークインタフェース回路の構成例を示すブロック図である。
【符号の説明】
1:MAC部
2:受信バッファコントロール部
3:受信バッファ
4:DMAコントロール部
5:バスアービタ
6:メモリコントロール部
33:ネットワーク
100:ネットワークインタフェース回路(ASIC)
Claims (1)
- MAC部と、DMAコントロール部と、受信バッファとを有し、前記MAC部がネットワークからの自局宛のデータフレームを前記受信バッファに格納すると同時に、前記DMAコントロール部がバス使用権を要求し、許可されるとシステムメモリに対し受信データを転送するように構成したネットワークインターフェース回路において、前記受信バッファを少なくとも3つのバッファブロックで構成するとともに、各バッファブロックのデータを管理し、前記MAC部からのデータ受信およびDMAコントロール部へのデータ送出をコントロールする受信バッファコントロール部を備え、1つのデータフレームを受信する際には、前記受信バッファコントロール部は、前記バッファブロックを2ブロック使用し、残り1ブロックは常に待機させ、各バッファブロック単位で前記受信データを前記DMAコントロール部へバースト転送するように制御し、
前記バースト転送の速度は、前記MAC部から各前記バッファブロックへの受信データの転送速度よりも速いことを特徴とするネットワークインターフェース回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000074663A JP3878785B2 (ja) | 2000-03-16 | 2000-03-16 | ネットワークインタフェース回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000074663A JP3878785B2 (ja) | 2000-03-16 | 2000-03-16 | ネットワークインタフェース回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001268136A JP2001268136A (ja) | 2001-09-28 |
JP3878785B2 true JP3878785B2 (ja) | 2007-02-07 |
Family
ID=18592672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000074663A Expired - Fee Related JP3878785B2 (ja) | 2000-03-16 | 2000-03-16 | ネットワークインタフェース回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3878785B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6865622B2 (en) | 2002-05-13 | 2005-03-08 | Intel Corporation | System including real-time data communication features |
-
2000
- 2000-03-16 JP JP2000074663A patent/JP3878785B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001268136A (ja) | 2001-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7568077B2 (en) | Information processing apparatus and file controller | |
US6947442B1 (en) | Data transfer control device and electronic equipment | |
JPH05300289A (ja) | 印刷機用画像プロセッサ | |
JP2002204282A (ja) | 通信システム及びそのメモリ割当て方法 | |
JPH05316312A (ja) | 印刷機用画像プロセッサ | |
JP2004334417A (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
US7860120B1 (en) | Network interface supporting of virtual paths for quality of service with dynamic buffer allocation | |
US6442168B1 (en) | High speed bus structure in a multi-port bridge for a local area network | |
WO1999014892A2 (en) | Preventing a source from becoming a destination port in a multi-port bridge | |
US6061748A (en) | Method and apparatus for moving data packets between networks while minimizing CPU intervention using a multi-bus architecture having DMA bus | |
JP3636160B2 (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
KR100348545B1 (ko) | 통신 dma 장치 | |
JP3878785B2 (ja) | ネットワークインタフェース回路 | |
JP2004064335A (ja) | ネットワーク機器の通信速度制御方法 | |
US6256313B1 (en) | Triplet architecture in a multi-port bridge for a local area network | |
JP2002521942A (ja) | メモリ装置およびメモリ装置の作動方法 | |
JP3908928B2 (ja) | ネットワークインターフェイス回路 | |
JP2000269961A (ja) | Usbホストとネットワークとの間のデータ転送素子と、この転送を制御するフロー制御方法 | |
JPH07121474A (ja) | 情報処理装置 | |
JP2762506B2 (ja) | 回線制御装置 | |
JP4329188B2 (ja) | データ転送制御装置 | |
JP2001338286A (ja) | 画像処理方法と装置 | |
JP6833491B2 (ja) | 情報処理装置 | |
JP4127071B2 (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
JP2004054437A (ja) | データ通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041221 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050120 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060706 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060711 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060911 |
|
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: 20061025 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061106 |
|
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: 20101110 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111110 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111110 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121110 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131110 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |