JP2009020684A - 端末装置 - Google Patents

端末装置 Download PDF

Info

Publication number
JP2009020684A
JP2009020684A JP2007182476A JP2007182476A JP2009020684A JP 2009020684 A JP2009020684 A JP 2009020684A JP 2007182476 A JP2007182476 A JP 2007182476A JP 2007182476 A JP2007182476 A JP 2007182476A JP 2009020684 A JP2009020684 A JP 2009020684A
Authority
JP
Japan
Prior art keywords
packet
address
sram
memory
terminal device
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.)
Withdrawn
Application number
JP2007182476A
Other languages
English (en)
Inventor
Yoshinori Wakimoto
良則 脇本
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.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP2007182476A priority Critical patent/JP2009020684A/ja
Publication of JP2009020684A publication Critical patent/JP2009020684A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Memory System (AREA)

Abstract

【課題】既存の装置設計を大きく変更することなく、低コストでネットワークの通信性能を向上させる。
【解決手段】パケットを格納するパケットバッファとして、DRAM20の一部が割り当てられた端末装置において、DRAMよりも読み書きが高速で行われるSRAMを設けて、前記パケットバッファにおける前記パケットの先頭部分の格納領域を、該SRAMに割り当てる。
【選択図】 図1

Description

本発明は、パケットの送受信に用いるパケットバッファの内、パケット先頭部分の格納用として高速メモリを使用し、ネットワークの通信性能の向上を図った端末装置に関するものである。
イーサネットなどのネットワーク通信用の端末装置の多くは、図7に示すように、DMAコントローラ11を有するネットワークインターフェース10が送受信するパケットを、メインメモリとして働くDRAM20との間でDMA転送を行って、CPU30と受け渡し受けを行う。40はバスであり、41はアドレスバス、42はデータバスである。メインメモリには、コストの安いDRAM20が使われるが、読み書き時のレイテンシが大きい欠点がある。そのため、CPU30のDRAM20上のパケットデータへのアクセスと、ネットワークインターフェース10のパケットデータへのアクセスとの間にタイムラグが生じ、通信性能を悪化させる。
そこで、レイテンシの小さなSRAMを併用することによってこの問題を解決する技術が提案されている(例えば、特許文献1参照)。ここでは、パケット長の小さいものはSRAM上に、パケット長の長いものはDRAMにパケットを置くことが行われている。
また、TCP/IPに代表される通信プロトコルは階層化されており、パケット受信時には下位の層から上位の層に向かって逐次的に処理が行われる。パケット上で見ると、前から後へ順にパケットの内容が参照され、処理されていくことになる。そこで、パケット全体の受信が終了しなくても、パケットの前から一定長までの受信が終わった段階でCPUに割込みをかけ、処理を開始させることによって通信性能を向上させることも行われている(例えば、特許文献2参照)。
特開2006−174265号公報 特許第2767085号公報
ところが、前者は、長いパケットに対しては従来どおりDRAMが使われるので、この場合はレイテンシの改善にはならない。また、パケットバッファのアドレス管理方法が従来と変わるため、既存の設計資産、特にソフトウェアを活かすことが難しくなるという問題もある。
後者は、たとえ早期割込みの方法を用いたとしても、パケットデータを置くバッファメモリとしてDRAMを使うならば、通信性能の向上は限定的である。
本発明の目的は、既存の装置設計を大きく変更することなく、低コストでネットワークの通信性能を向上させることができるようにした端末装置を提供することである。
上記目的を達成するために、請求項1にかかる発明の端末装置は、パケットを格納するパケットバッファとして、メインメモリの一部が割り当てられた端末装置において、前記メインメモリよりも読み書きが高速で行われる高速メモリを備え、前記パケットバッファにおける前記パケットの先頭部分の格納領域を、該高速メモリに割り当てたことを特徴とする。
請求項2にかかる発明は、請求項1に記載の端末装置において、前記パケットの先頭部分の格納領域を示す前記メインメモリのアドレスを、前記高速メモリの前記パケットの先頭部分が割り当てられた領域のアドレスに変換するアドレス変換器を備えることを特徴とする。
請求項3にかかる発明は、請求項1又は2に記載の端末装置において、前記パケットの前記先頭部分が割り当てられた前記高速メモリの領域がアクセスされるとき、前記メインメモリの前記パケットの先頭部分の格納領域のアドレス空間を無効にするプライオリティ回路を備えることを特徴とする。
請求項4にかかる発明は、請求項1,2又は3に記載の端末装置において、前記メインメモリとの間で前記パケットの送受信を行うDMAを備え、前記パケットの前記先頭部分の前記高速メモリへのDMA転送が終了した時点でCPUに対する前記パケット処理開始の割込みが発生するようにしたことを特徴とする。
本発明によれば、メインメモリの一部に割り当てられたパケットバッファのうち、TCPプロトコルのヘッダ等が含まれるパケットの先頭部分を格納する領域を高速メモリに割り当てるので、既存の装置の設計を大きく変更することなく、低コストでネットワークの通信性能を向上させることができる。すなわち、(1)通常、パケットバッファは多くても十数パケット分あれば十分であるから、必要な高速メモリのサイズは1キロバイト程度とごく僅かで済み、この程度の量であれば、かなり高速なメモリを使用してもコストは低く済む。また、LSI上に他の回路と共に集積することも容易である。(2)DRAMを使った従来のメインメモリの制御回路に対する変更は小さく、きわめて容易である。(3)パケットバッファのアドレスの扱いに関して、既存のネットワークインターフェースの回路およびソフトウェアを変更する必要はなく、また、メモリの変更によってメインメモリの用途が限定されることはなく、メモリの汎用性は保たれる。(4)パケット先頭部分のDMA転送の終了により割込みが発生するので、早期処理開始と高速メモリへのパケット先頭部分の高速書込みにより、処理が迅速化される。
本実施例では、DRAMの一部に割り当てられたパケットバッファのうち、パケットの先頭部分を格納する領域をSRAMに割り当てる。そのSRAM部分の長さはTCPプロトコルのヘッダが含まれるように選ぶ。また、ネットワークインターフェースは、パケットの先頭部分の受信が終りSRAMへのDMA転送が終了した時点でCPUに対して割込みを発生し、そのパケットについての処理の開始が行われるようにする。
<実施例>
図1に本発明の1つの実施例のネットワーク制御用の端末装置の要部の構成を示す。DMAコントローラを有するネットワークインターフェース10、メインメモリとして使用されるDRAM20、CPU30、バス40、アドレスバス41、データバス42等は図7で説明したものと同じである。本実施例では、新たに高速メモリとしてSRAMを備える。60,70はメモリに対してイネーブル信号を発生させるアドレスデコーダ、80は特定のアドレスのときメインメモリ20を非イネーブルにするプライオリティ回路、90はDRAM20用のアドレスデータをSRAM50用のアドレスデータに変換するアドレス変換器である。
本実施例では、図2に示すように、パケットバッファのサイズを2048バイトとし、このうち先頭部分の64バイトをSRAM50に割り当てる。このサイズのパケットバッファであれば、通常、最大フレームサイズが1500バイト程度であるイーサネットのパケットを十分格納でき、また、一般的なイーサネットのパケットは図3に示すような構成であるため、確認応答など迅速な処理が要求されるTCPのヘッダ部分はSRAM50上に配置されることになる。
受信用と送信用にそれぞれ8個づつのパケットバッファを確保し、図4のメモリマップの位置に配置する。この例では、パケットバッファは合計32KB(=2048×16)であり、DRAM20のメモリ空間の0x30000〜0x37fffの領域に割り当てる。なお、この実施例ではアドレス空間は20ビットである。以上の結果、パケットバッファの領域は、図5に示すように、DRAM20とSRAM50が混在したメモリ空間で表されることになる。
図1において、アドレスデコーダ60は、DRAM20の内の、パケットバッファが割り当てられている0x00000〜0x3FFFFのアドレスのすべての領域を検出する。すなわち、アドレスバス41のMSBとMSB−1のアドレス線である[a19,a18]=[0,0]の一致を検出する。そして、この検出によりDRAM20をイネーブルにする。
さらに、この領域の中において、SRAM50が割り当てられた領域はSRAM50が優先してアクセスされるように、プライオリティ回路80で制御する。すなわち、アドレスデコーダ70がこの領域を検出したとき、SRAM50をイネーブルにするとともに、プライオリティ回路80によって、DRAM20を非イネーブルにする。通常のDRAM制御回路からの変更点は、このプライオリティ回路80の追加のみである。なお、SRAM50に割り当てられた領域と重なった部分のDRAM20の領域は使用されず無駄になるが、そのDRAM20の単位容量あたりのコストは非常に小さいため問題にならない。
SRAM50用のアドレスデコーダ70は、パケットバッファのうちのSRAM50に割り当てられたアドレス領域を検出する。図5に示したように、16個のパケットバッファでは、SRAMは不連続な領域に配置されているが、本実施例では、図6に示すように、アドレスバス41アドレス線のうち、[a19,a18,a17,a16,a15]=[0,0,1,1,0]、[a10,a9,a8,a7,a6]=[0,0,0,0,0]の一致を検出すればよい。この検出時に、SRAM50がイネーブルになるとともに、上記のようにプライオリティ回路80によって、DRAM20が非イネーブルになる。
アドレス変換器90では、不連続な領域をSRAM50上の連続な領域に対応づけるようにアドレスを変換する。本実施例では、図6の下部に示すように、アドレスバス41のアドレス線の[a14,a13,a12,a11]をSRAM50のアドレス入力[A9,A8,A7,A6]に対応づけ、[a5,a4,a3,a2,a1,a0]をSRAM50のアドレス入力[A5,A4,A3,A2、A1,A0]に対応づける。
以上のようにして、パケットの先頭部分が受信されDMAコントローラ11によるDMA転送によりSRAM50に格納されると、ネットワークインターフェース10によって割込みが発生し、CPU30に通知する。これにより、パケット先頭部分の受信が終了した時点でそのパケットについての処理が開始されるので、SRAM50への書込みが高速で行われることも加味され、ネットワークの通信性能が向上する。
なお、本実施例では、SRAMを配置するパケットバッファの領域の位置は固定であるが、ソフトウェアによって設定変更可能にすればシステムの柔軟性が増す。
本発明の実施例の端末装置の要部の構成を示すブロック図である。 パケットバッファのサイズの説明図である。 TCP/IPパケットの説明図である。 ワークメモリのメモリ空間の説明図である。 パケットバッファのメモリ空間の説明図である。 DRAMのアドレスおよびSRAMへのアドレス変換の説明図である。 従来の端末装置の要部の構成を示すブロック図である。
符号の説明
10:ネットワークインターフェース、11:DMAコントローラ
20:DRAM
30:CPU
40:バス、41:アドレスバス、42:データバス
50:SRAM
60,70:アドレスデコーダ
80:プライオリティ回路
90:アドレス変換器

Claims (4)

  1. パケットを格納するパケットバッファとして、メインメモリの一部が割り当てられた端末装置において、
    前記メインメモリよりも読み書きが高速で行われる高速メモリを備え、前記パケットバッファにおける前記パケットの先頭部分の格納領域を、該高速メモリに割り当てたことを特徴とする端末装置。
  2. 請求項1に記載の端末装置において、
    前記パケットの先頭部分の格納領域を示す前記メインメモリのアドレスを、前記高速メモリの前記パケットの先頭部分が割り当てられた領域のアドレスに変換するアドレス変換器を備えることを特徴とする端末装置。
  3. 請求項1又は2に記載の端末装置において、
    前記パケットの前記先頭部分が割り当てられた前記高速メモリの領域がアクセスされるとき、前記メインメモリの前記パケットの先頭部分の格納領域のアドレス空間を無効にするプライオリティ回路を備えることを特徴とする端末装置。
  4. 請求項1,2又は3に記載の端末装置において、
    前記メインメモリとの間で前記パケットの送受信を行うDMAを備え、
    前記パケットの前記先頭部分の前記高速メモリへのDMA転送が終了した時点でCPUに対する前記パケット処理開始の割込みが発生するようにしたことを特徴とする端末装置。
JP2007182476A 2007-07-11 2007-07-11 端末装置 Withdrawn JP2009020684A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007182476A JP2009020684A (ja) 2007-07-11 2007-07-11 端末装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007182476A JP2009020684A (ja) 2007-07-11 2007-07-11 端末装置

Publications (1)

Publication Number Publication Date
JP2009020684A true JP2009020684A (ja) 2009-01-29

Family

ID=40360279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007182476A Withdrawn JP2009020684A (ja) 2007-07-11 2007-07-11 端末装置

Country Status (1)

Country Link
JP (1) JP2009020684A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009130891A (ja) * 2007-11-28 2009-06-11 Nec Access Technica Ltd 情報処理装置及びフレーム中継方法
JP2010088102A (ja) * 2008-09-02 2010-04-15 Renesas Technology Corp 記憶装置および記憶装置のコントロール手法
JP2017085378A (ja) * 2015-10-28 2017-05-18 キヤノン株式会社 通信装置及びその方法、コンピュータプログラム
JP2017517792A (ja) * 2014-05-09 2017-06-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated マルチクラスメモリシステムにおけるメモリ割り当てのシステム及び方法
US10133687B2 (en) 2013-08-01 2018-11-20 Canon Kabushiki Kaisha Communication apparatus and data processing method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009130891A (ja) * 2007-11-28 2009-06-11 Nec Access Technica Ltd 情報処理装置及びフレーム中継方法
JP2010088102A (ja) * 2008-09-02 2010-04-15 Renesas Technology Corp 記憶装置および記憶装置のコントロール手法
US10133687B2 (en) 2013-08-01 2018-11-20 Canon Kabushiki Kaisha Communication apparatus and data processing method
JP2017517792A (ja) * 2014-05-09 2017-06-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated マルチクラスメモリシステムにおけるメモリ割り当てのシステム及び方法
JP2017085378A (ja) * 2015-10-28 2017-05-18 キヤノン株式会社 通信装置及びその方法、コンピュータプログラム

Similar Documents

Publication Publication Date Title
JP2009540681A (ja) データ通信フロー制御の装置および方法
JP2009020684A (ja) 端末装置
US9471521B2 (en) Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit
EP3414664B1 (en) Hardware-based translation lookaside buffer (tlb) invalidation
JP3748308B2 (ja) 周辺装置とコンピュータ・ネットワークとをインタフェースする装置
JP2001036588A (ja) データ転送制御装置及び電子機器
US7761587B2 (en) Apparatus and method for transmitting packet IP offload
JP2001229115A (ja) Atapiコマンド処理方式
US20100312924A1 (en) Network processor, reception controller and data reception processing method performing direct memory access transfer
JP2006293929A (ja) データ伝送装置
JP2002084311A (ja) パケット転送処理装置
US6961837B2 (en) Method and apparatus for address translation pre-fetch
JP2005332145A (ja) データ転送制御回路及びデータ転送方法
JP4212508B2 (ja) パケット生成装置
KR100571775B1 (ko) 네트워크 프린팅 데이터의 전송 속도를 향상시킨 네트워크프린터 및 그의 방법
JP2009088622A (ja) バッファメモリを有するパケット転送装置および方法
JP6938399B2 (ja) 通信装置、通信方法およびプログラム
JP2905041B2 (ja) メッセージ送受信装置
JP4190969B2 (ja) バスシステム及びambaにおけるバス調停システム
KR100239738B1 (ko) 근거리 통신 시스템의 패킷 데이터 처리 방법 및 장치
US5926630A (en) Communication device including a receiving data processor and a bus interface having a data storage area
JP2003099396A (ja) ネットワークインターフェイス回路
JP2003150534A (ja) チェインブロック転送方法及び通信制御装置
JP2643660B2 (ja) 通信制御装置
JP2601914B2 (ja) データ伝送装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20101005