WO2007097038A1 - バッファの制御装置、クロスバースイッチ及びバッファの制御方法 - Google Patents
バッファの制御装置、クロスバースイッチ及びバッファの制御方法 Download PDFInfo
- Publication number
- WO2007097038A1 WO2007097038A1 PCT/JP2006/303651 JP2006303651W WO2007097038A1 WO 2007097038 A1 WO2007097038 A1 WO 2007097038A1 JP 2006303651 W JP2006303651 W JP 2006303651W WO 2007097038 A1 WO2007097038 A1 WO 2007097038A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- buffer
- frame length
- threshold
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4247—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
- G06F13/4252—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a handshaking protocol
Description
バッファの制御装置、クロスバースィッチ及びバッファの制御方法 技術分野
[0001] 本発明は、 CPU間通信に用いられるクロスバースィッチ内のフレーム緩衝用バッフ ァの制御についての技術に関する。
背景技術
[0002] 大型 UNIX (登録商標)サーバにおいて、複数の物理 CPU力メモリ空間を共有する システムではキャッシュコンシステンシ (一貫性)を保つことが必要になる。各瞬間にメ モリ空間の任意の領域に書いている内容は、どの CPU力も見ても同一である必要性 がある。各 CPU力メモリ内容を必要に応じてキャッシュしておのおの保持して!/、るの で、一貫性を保証するため各 CPU間のデータ転送を行う機構における、システム全 体の処理性能を上げる必要があり、このデータ転送を効率的に行うことが求められる
。このような構成として CPU間にクロスバースィッチを設けることが一般に行われて!/ヽ る。
[0003] 本発明は大型 UNIX (登録商標)等によるサーバにおける CPU間等のデータ転送 機能を有するクロスバースィッチ内のバッファに適用される。
一般的なクロスバースィッチ内に用いられて 、るデータ(フレーム)緩衝用バッファ では、オーバフローを防ぐため、固定値の閾値が設定され、ノ ッファ内のデータ残量 が閾値に達するとフレームの発信元に対して送信停止要求 (バックプレッシャー)を 出力する。なおバッファの閾値によって決まるバッファの残量の上限は、ノ ッファのォ ーバフローを防ぐ為にフレームの最大長以上確保する必要がある。
[0004] ノ ッファのオーバフローに対処するための構成としては、特許文献 1に、バッファの コントローラがデータ送信側から転送するデータの転送長リクエストを受信すること〖こ より、 FIFOバッファのオーバフローを防ぐ構成が開示されて 、る。
[0005] また特許文献 2には、クロスバススィッチ内に設けられる受信バッファにおいて、閾 値レジスタに設定されている値と、受信バッファが保持しているデータ量を比較し、受 信バッファ内のデータ量が閾値レジスタ内の値を超えるとデータを受信バッファから
読み出す構成が開示されている。
[0006] 一般的なクロスバースィッチのフレーム緩衝用バッファでは、上述したように閾値に よって定められるバッファの残量が入力され得る最大フレーム長分に設定されている 。そのためバッファ内のデータ量が閾値に達して送信停止要求を発した後、これが送 信元に伝播する間に短いフレームが入力される場合、ノ ッファの空きに余裕があるに も関わらず送信停止要求が発行されることになる。そしてこのことは、データの転送処 理能力を落とすこととなる。
特許文献 1:特表 2005— 512227号公報
特許文献 2:特開 2005 - 252953号公報
発明の開示
[0007] 本発明の課題は、ノ ッファの使用効率を上げ、処理能力を向上させたバッファの制 御装置、クロスバースィッチ及びバッファの制御方法を提供することを課題とする。 本発明のバッファの制御装置は、クロスバースィッチ内のバッファを制御することを 前提とし、上記課題を解決するため、フレーム長検出部及び閾値設定部を備える。
[0008] フレーム長検出部は、前記バッファに入力されるフレームのフレーム長を検出する。
閾値設定部は、前記フレーム長検出部が検出したフレーム長に基づいて前記バッ ファに閾値を動的に設定する。
[0009] この構成により、フレーム長に基づいてバッファの閾値を動的に変更することが出 来る。
また前記バッファ内のデータの残量が前記閾値に達したら、前記フレームの送信元 に送信停止要求を発行する送信停止要求生成部を更に備える構成としてもよい。
[0010] これにより、ノ ッファの残量が特定値を超えた場合、フレーム送信元に送信停止要 求が発行されて、フレーム送信が停止し、ノ ッファのオーバフローを防げる。
更に前記フレーム長検出部は、前記フレームのヘッダ部より前記フレーム長を検出 する構成としてちよい。
[0011] この構成により、フレームのヘッダ部をデコードすることによりフレーム長を検出する ことが出来る。
また本発明は、クロスバースィッチや、クロスバースィッチ内のバッファの制御方法も
その範囲に含む。
図面の簡単な説明
[0012] [図 1]本実施形態のシステムの全体構成を示す図である。
[図 2]クロスバースィッチの構成を示すブロック図である。
[図 3]従来のフレーム緩衝用バッファによるフレーム転送の仕方を示す図である。
[図 4]本実施形態におけるフレーム緩衝用バッファによるフレーム転送の仕方を示す 図である。
[図 5]フレーム長検出部によるフレーム長検出の仕方を示す概念図である。
[図 6]データ送信元のシステムコントローラとクロスバースィッチを接続するフレームバ スの接続を示す図である。
[図 7]従来のフレーム緩衝用バッファによる閾値の設定の仕方と送信停止要求の発 行タイミングを示す図である。
[図 8]本実施形態におけるフレーム緩衝用バッファによる閾値の設定の仕方と送信停 止要求の発行タイミングを示す図である。
[図 9]送信停止要求生成部の動作内容を VHDLで記載したソース例を示す図である
[図 10]閾値設定部の動作内容を VHDLで記載したソース例を示す図である。
[図 11]フレーム長検出部の動作内容を VHDLで記載したソース例を示す図である。
[図 12] (a)はデータ送信元の動作処理を示すフローチャート、 (b)はクロスバースイツ チ内の送信停止要求生成部の動作処理を示すフローチャートである。
発明を実施するための最良の形態
[0013] 以下、本発明の一実施例を図面を参照しながら詳細に説明する。
図 1は本実施形態のシステムの全体構成を示す図である。
本実施形態のシステムは、筐体 1及び拡張筐体 2が複数のシステムボート SB3— 0 〜3— 15を有して!/ヽる構成となって!/ヽる。
[0014] 各システムボード(SB) 3— 0〜3— 15は、複数の CPU部 5と 1つのシステムコント口 ーラ(SC)部 6を備え、各システムボート 3— 0〜3— 15間は、複数のクロスバースイツ チ (XB) 4— 1〜4— 4によって接続されている。
[0015] 図 1では、システムボード 3— 0は、 CPU部 5— 0〜5— 3の 4つの CPU部 5を備え、 これらはシステムコントローラ部 6— 0に接続されており、またシステムボード 3— 4でも 、 4つの CPU部 5— 16〜5— 19を備えこれがシステムコントローラ部 6— 4に接続され る構成を有している。
[0016] システムボード 3上の各 CPU部 5は、 CPUコアであり、不図示のメモリ上のプログラ ムに基づ 、て種々の計算を行な!/、、また異なるシステムボード 3上の CPU部 5とデー タのやり取りを行う。またシステムコントローラ部 6は、システムボード 3全体をコント口 ールするもので、 CPU部 5からの送信要求に対して対処したり、 CPU部 5間の通信 のときは、システムコントローラ 6が介在してクロスバースィッチ 4に CPU部 5からの通 信要求を渡したり、また送信データを受け取ったりする。
[0017] 各システムボード 3— 0〜3— 15は、クロスバースィッチ(XB) 4—1〜4— 4を介して 接続されており、システムボード 3を跨った CPU部 5間の通信は、このクロスパースィ ツチ 4— 1〜4— 4を介して行われる。
[0018] 以下の説明では、システムボード 3— 0上の CPU部 5— 0が送信元となり、システム ボード 3— 4上の CPU部 5— 16を送信先としてデータを送る場合を例として説明して ゆく。
[0019] 図 2は、図 1のクロスバースィッチ 4の構成を示すブロック図である。なお同図は、 FI FOバッファ 16を中心とした構成のみを記載している。
同図のクロスバースィッチ 12は、フレーム長検出部 14、送信停止要求生成部 15、 FIFOバッファ 16、読み出し制御部 17、及びフレーム処理部 18を有している。
[0020] フレーム長検出部 14は、送信元のシステムコントローラ 11から受信するデータ Zへ ッダ識別用信号 (TAG)及びデータバス信号 (DATA_BUS)から、送信元から送 信されてくるフレームのフレーム長を検出し、送信停止要求生成部 15に通知する。ま たフレーム長検出部は、受信したデータバス信号 (DATA— BUS)から入力される 送信フレームを、ノ ッファ書き込み信号 (WEN)によってデータの書き込みを指示し ながら、バッファ入力データ(WDT)として FIFOバッファ 16に書き込む。送信停止要 求生成部 15は、フレーム長検出部 14からのフレーム長の通知信号(LEN)と、 FIFO バッファ 16から通知されるバッファの残量の通知信号 (RWP)から、送信元に対しフ
レーム送信の停止要求を行うかどうかを判断し、送信停止要求を行う場合には送信 停止要求信号 (BP)をフレーム送信元のシステムコントローラ 11に送信する。 FIFO ノ ッファ 16は、クロスバースィッチ 12内に設けられている先入れ先出しのフレーム緩 衝用バッファである。読み出し制御部 17は、フレーム処理部 18からのバッファ読み 出し要求信号 (REQ)に基づいて、 FIFOバッファ 16に対するバッファ読み出し指示 信号 (REN)を出力して、フレーム処理部 18による FIFOバッファ 16からの読み出し 処理を制御する。フレーム処理部 18は、 FIFOバッファ 16から送信データを読み出し 、フレームの送信先への振り分け制御や複数の送信先にフレームを送信する際のフ レームをコピー等の種々の処理を行った後、送信先のシステムコントローラ 13にデー タ Zヘッダ識別用信号 (TAG)及びデータバス信号 (DATA— BUS)として、フレー ムを出力する。
[0021] このようなクロスバースィッチ 12の構成において、 FIFOバッファ 16として構成され るフレーム緩衝用バッファに対する本実施形態における制御の仕方について従来の 制御の仕方と対比させて説明する。
[0022] 図 3は従来のフレーム緩衝用バッファによるフレーム転送の仕方を示す図である。
同図において、データ送信元 21から送られてくるフレーム 27は、ー且フレーム緩衝 用バッファ (FIFOバッファ) 23に入力される。その後バッファ読み出し制御部 26によ つて FIFOバッファ 23からのフレームの読み出しが行われ、読み出されたフレームは フレーム処理部 24によって種々の処理を行われた後、データ送信先 25へ転送され る。
[0023] FIFOバッファ 23には閾値 Thが設定されており、 FIFOバッファ 23内にバッファリン グされているデータ量が閾値を越えた場合は、バッファ残量通知が送信停止要求生 成部 22へ通知され、送信停止要求生成部 22はデータ転送元 21への送信停止要求 (バックプレッシャー) 28を通知してデータの送信を停止させる。これにより FIFOバッ ファ 23がオーバフローすることを防ぐ。
[0024] 図 3に示す従来のクロスバースィッチのフレーム緩衝用の FIFOバッファ 23では、閾 値 Thの位置は固定値となっていた。そして FIFOバッファ 23内のデータ残量が閾値 Thに達すると、フレーム送信元 21に対して送信停止要求 (バックプレッシャー)が出
力される構成となっている。
[0025] この固定値の閾値 Thの設定値は、送信停止要求 28が出力されてからデータ送信 元 21からのデータが停止するまでの間に、 FIFOバッファ 23に入力されるデータ量 によって決まる。即ちデータ送信元 21に送信停止要求 28を行った後、フレーム送信 が停止するまでの間にオーバフローが発生しない値に設定される。
[0026] なお FIFOバッファ 23から読み出されたデータフレームは、フレーム処理部 24でフ レームの振り分け制御等の処理が行われた後、データ送信先 25へ転送されるが、こ のときフレーム処理部 24の制御を容易にするために、 FIFOバッファ 23からデータを 1フレーム単位で読み出す。これは、例えばフレームの先頭から X番目のデータを抜 き出した!/、と!/、つた場合、 1フレーム単位でフレーム処理部 24に入力されて!、ると、 制御しやす ヽと 、う利点がある為である。
[0027] このようにフレーム緩衝用の FIFOバッファ 23に 1フレーム格納されてから、読み出 すように制御した場合、入力される可能性のあるフレームの最大長以上、 FIFOバッ ファ 23の最大容量力も余裕が確保できるように閾値 Thを設定する必要がある。
[0028] 図 3の従来の構成において、 FIFOバッファ 23内のデータ量が閾値 Thに達した後 、送信停止要求 28がデータ送信元 21伝播する間に短いフレームが入力される場合 、閾値 Thによって定められるノ ッファの残量が入力されうる最大フレーム長分に設定 されている為に、 FIFOバッファ 23の残量には余裕があるにも関わらず送信停止要 求 28が発行されることになる。送信停止要求 28がー度発せられてフレーム送信が停 止すると、再開には時間がかかるので、頻繁に送信停止要求 28が発行されると、転 送処理性能が落ちる。
[0029] 図 4は、本実施形態におけるフレーム緩衝用バッファによるフレーム転送の仕方を 示す図である。同図は図 3の従来のフレーム転送の仕方と対比する形で描かれてい る。
本実施形態では、図 3の従来の構成に加え、フレーム長検出部 31が新たに設けて ある。
[0030] そしてこのフレーム長検出部 31は、データ送信元 21からの送信フレームのヘッダ 部内の情報力 フレームのデータ長を検出し、これを送信停止要求生成部 22に通
知し、これに基づいて送信停止要求生成部 22は自己に設定してある閾値 Thの値を 変更する。これによりフレーム長検出部 31の検出結果に基づいて FIFOバッファ 23 の閾値 Thの値が変更される。この閾値 Thの変更の仕方としては、フレーム長が長い 場合、 FIFOバッファ 23の残量が多くなるように低い値の閾値 Thlを取り、逆にフレ ーム長が短 、場合には、 FIFOバッファ 23の残量が少なくなるように高 、値の閾値 T h2を取るように変更する。
[0031] これにより、 FIFOバッファ 23の残量が適宜な値になるように閾値 Thが変更される ので、 FIFOバッファ 23の使用率を上げ、クロスバースィッチのフレーム転送処理能 力を向上することが出来る。
[0032] フレーム長検出部 31は、 FIFOバッファ 23に入力されるフレームの大きさを常時モ ユタする。また送信停止要求生成部 22は、 FIFOノッファ 23のリード/ライトポインタ により生成されるノ ッファ残量通知を常時モニタして 、る。そしてこの残量が送信停 止要求生成部 22に保持されている閾値 Thに達すると、データ送信元 21に対して送 信停止要求 28を発行する。送信停止要求生成部 23は、フレーム長検出部 31からの フレーム長通知 32を受信し、このフレーム長によって自己に設定されている閾値の 値を動的に変更する。
[0033] 図 5は、フレーム長検出部 31による、フレーム長検出の仕方を示す概念図である。
データ送信元 21から送信されるフレーム 41のヘッダ部 42には、フレームの種類を 示す情報が含まれており、このフレームの種類力もフレーム長を求めることが出来る。
[0034] 例えばヘッダ部 42内のフレームの種類を示すオペコードが" 0"であるときこのフレ ームはピアツーピア通信のフレームであるので、フレーム長は 4単位 (1単位は 32ビッ ト)と求まり、オペコード力 ' 1"であるときはこのフレームはブロードキャスト通信のフレ ームであるので、フレーム長は 2単位と求まる。
[0035] データ長検出部 31は、内部にデコーダ 43を備えており、データ送信元 31からデー タバス信号(DATA— BUS)を介して入力されるフレームのヘッダ部 42内の情報を、 このデコーダ 43を用いて上述したようにデコードして、受信フレームのフレーム長を 求める。そしてこれをフレーム長の通知信号 (LEN)として、送信停止要求生成部 22 に通知する。
[0036] 図 6は、データ送信元のシステムコントローラとクロスバースィッチを接続するフレー ムノ スの接続を示す図である。
図 6 (b)及び図 2に示した!/、ようにデータ送信元のシステムコントローラ 53とクロスバ 一スィッチは、 32ビットのデータバス信号(DATA— BUS) [31 : 0]と 3ビットのヘッダ 識別用信号 (TAG) [2: 0]によって接続されて!、る。
[0037] TAGと DATA— BUSは、同時にデータをクロスバースィッチ 54に入力する。 TAG 力 入力されるデータは、同時に DATA_BUS力 入力されるデータ力 ヘッダ部 なのかデータ部を示すものであり、図 6 (a)において" 4"である場合はヘッダ部を示し
、 "5"である場合はデータ部を示している。
[0038] 例えば図 6 (a)において、 TAGのデータ 53aと同時に DATA— BUS力も入力され るデータ 54aはヘッダ部であり、 TAGのデータ 53bと同時に DATA— BUSから入力 されるデータ 54bはデータ部となる。
[0039] フレーム長検出部 31は、上述したようにヘッダ部として入力されるデータ(の一部分
)をデコードして、受信フレームのフレーム長を検出する。
次に、本実施形態におけるフレーム緩衝用バッファの閾値によるデータ送信元へ の送信停止要求の発行の仕方を、従来の場合と比較しながら説明する。
[0040] 図 7は、従来のフレーム緩衝用バッファによる閾値の設定の仕方と送信停止要求の 発行タイミングを示す図である。
同図(a)は、フレーム緩衝用の FIFOバッファ 60に短いフレーム長のフレーム 62が 格納される状態を表している。なお図 7においてフレーム内の" S"はフレームの先頭
、 "E"はフレームの最後尾を現している
同図において FIFOバッファ 60には、固定値の閾値 61が設定されている。この閾 値 61の値は、 FIFOバッファ 60の残量が入力され得るフレームの最大長(同図では 長 、フレーム 63の大きさ)となるように設定される。
[0041] 図 7 (b)は、同図(a)の状態から長いフレーム長のフレーム 63が FIFOバッファ 60に 格納される状態を表して ヽる。
この長いフレーム 63が FIFOバッファ 60に格納されると、 FIFOバッファ 60内のデ 一タ量は閾値 61に達する。
[0042] 図 7 (c)は、同図(b)で FIFOバッファ 60内のデータ量が閾値 61に達した後の状態 を示す図である。
データ量が閾値 61に達するとデータの送信元には、送信停止要求が通知される。
[0043] この送信停止要求がデータの送信元に通知され、フレーム送信が停止するまでの 間に 1フレームが、 FIFOバッファ 60に格納される。このとき格納されるフレーム力 長 V、フレーム 64aならば、 FIFOバッファ 60の残量は無くなりこれ以上のフレーム受信 処理は行えない。しかし格納されるフレームが短いフレーム 64bであったならば、 FIF Oバッファ 60の残量は残っており、まだフレーム受信処理は可能である。
[0044] し力し従来の構成の場合、最後に受信したフレームが短いフレーム 64bであっても 、送信元には送信停止要求が通知されており、その後の処理は停止してしまう。そし てその再開には時間を要する。従って従来の構成の場合、処理効率が悪い。
[0045] 図 8は、本実施形態におけるフレーム緩衝用バッファによる閾値の設定の仕方と送 信停止要求の発行タイミングを示す図である。
本実施形態の構成では、フレーム緩衝用の FIFOノ ッファ 70に設定する閾値を動 的に変更することが出来る。 FIFOバッファ 70の前段にあるフレーム長検出部によつ て、受信フレームが短いフレーム 72であると判断された場合には、高い値の短いフレ ーム用閾値 71aが設定され、受信フレームが長いフレームであると判断された場合に は、低い値の長いフレーム用閾値 71bが設定されるというように、閾値の値が受信フ レームのフレーム長により動的に変更される。
[0046] これにより、 FIFOバッファ 70の格納量を最大に保つことが出来るので、 FIFOバッ ファ 70の使用効率は向上し、その結果、送信停止要求発行頻度が低下する。そのた め従来の構成より処理性能が向上する。
[0047] 図 9は、本実施形態におけるクロスバースィッチの構成要素である送信停止要求生 成部 15の動作内容を VHDLで記載したソース例である。
同図の VHDLソースには、送信停止要求の発行開始条件や解除条件、送信停止 要求信号の生成処理等につ!、ての動作規定が記載されて 、る。
[0048] 図 10は、本実施形態におけるクロスバースィッチの構成要素である閾値設定部の 動作内容を VHDLで記載したソース例である。この閾値設定部は、送信停止要求生
成部 15の構成の一部を成すものである。
[0049] 同図の VHDLソースには、フレーム長検出部 14から通知された受信フレームのフ レーム長が短いフレームの場合と長いフレームの場合に設定する閾値が規定されて いる。
図 11は、本実施形態におけるクロスバースィッチの構成要素であるフレーム長検出 部 14の動作内容を VHDLで記載したソース例である。
[0050] 同図の VHDLソースには、有効フレーム検出とフレーム末尾検出処理等について の動作が規定されている。
なお図 11の VHDLソースは、図 5を用いて説明したフレーム長の検出の仕方とは 異なる手法によるフレーム長検出の構成が規定されているが、本実施形態のフレー ム長検出部 14は、どちらの手法を用いてフレーム長を検出するよう構成しても力まわ ない。
[0051] 図 12 (a)は、データ送信元システムコントローラの動作処理を示すフローチャート、 同図(b)は、クロスバースィッチ内の送信停止要求生成部 15の動作処理を示すフロ 一チャートである。
[0052] 同図(a)において、データ送信元のシステムコントローラは、ステップ S1としてクロス バースイッチ力 送信停止要求が発せられて 、るかどうかを判断し、発せられて ヽれ ば (ステップ Sl、 Yes)、送信停止要求が停止するまでフレーム送信を停止して待ち 、送信停止要求が発せられていなければ (ステップ Sl、 No)、ステップ S2として送信 フレームをクロスバースィッチに送り、処理をステップ S1に戻す。そして以降、送信フ レームを全て送信し終えるまで、ステップ Sl、 S2の処理を繰り返す。
[0053] データ送信元のシステムコントローラは、クロスバースィッチ力 送信停止要求が発 行されていない場合は、フレームを出力可能であり、送信停止要求が発行された場 合、送信元はフレームの出力を停止する。またフレーム送信を行う場合にはフレーム の途中で停止することは無ぐ 1フレーム単位で出力する。
[0054] また図 12 (b)の送信停止要求生成部 15の動作処理においては、ステップ S 11とし て、フレーム長検出部 14からの通知から、受信フレームのフレーム長を判断し、長い フレームであった場合には(ステップ Sl l、 No)、 FIFOバッファ 16の閾値 Thを長い
フレーム用の低い設定とし、受信フレームが短いフレームであった場合には (ステツ プ Sl l、 Yes)、 FIFOバッファ 16の閾値 Thを短いフレーム用の高い設定とする。
[0055] 次に FIFOバッファ 16内のデータ残量が閾値に達したかどうかを判断し、閾値に達 していなければ (ステップ S 14、 No)、処理をステップ S 11に戻して、フレーム受信を 続け、閾値に達したならば (ステップ S14、 Yes)、ステップ SI 5として送信停止要求を データ送信元に送信して、 FIFOバッファ 16内のデータの残量が閾値以下になるま でフレーム送信を停止させる。
[0056] このように従来の構成では、ノ ッファの残量が到達しえる最大フレーム長分になるよ う閾値を固定して設定していたため、フレーム緩衝用バッファ内のデータ量が閾値に 達した後、送信停止要求が伝播するまでの間に短いフレームが入力された場合、バ ッファの余裕があるにも関わらず送信停止要求が発行されることになり、処理性能が 落ちる。
[0057] それに対し本実施形態の構成では、送信停止要求が発生してからバッファに入力 されるフレーム長を常時モニタし、最適の閾値を設定する。したがってフレーム長が 長い場合はバッファの閾値を低く設定し、フレーム長が短い場合、ノ ッファの閾値を 高く設定することにより、フレーム緩衝用バッファの使用率をあげることが可能になり、 クロスバースィッチのフレーム処理能力を向上させることが出来る。
[0058] また本実施形態では、ノ ッファに入力されるフレーム長により、ノ ッファの閾値が動 的に変更され、フレーム緩衝用バッファの格納量を常に最大に保つことができる。そ の結果、送信停止要求 (バックプレッシャー)の発生頻度が低下し、フレームの処理 性能が向上する。したがって、緩衝用バッファに外部メモリを用いずデバイス内に構 成する場合、ノ ッファの使用効率が高い分チップサイズを小さくすることが出来ると共 に、チップ内部のリソースを有効使用することが出来る。
[0059] なお上記説明では、 FIFOバッファの閾値を短いフレーム用と長いフレーム用の 2 段階としたが、本実施形態の構成はこれに限定されるものではなぐ受信フレーム長 に基づ!/、て動的に 3段階以上変化させる構成としてもょ 、。
Claims
[1] クロスバースィッチ内のバッファを制御するバッファの制御装置であって、
前記バッファに入力されるフレームのフレーム長を検出するフレーム長検出部と、 前記フレーム長検出部が検出したフレーム長に基づいて前記バッファに閾値を動 的に設定する閾値設定部と、
を備えるノ ッファの制御装置。
[2] 前記フレーム長検出部が検出したフレーム長が長いとき、前記閾値を低く設定する ことを特徴とする請求項 1に記載のバッファの制御装置。
[3] 前記フレーム長検出部が検出したフレーム長が短いとき、前記閾値を高く設定する ことを特徴とする請求項 1または 2に記載のノ ッファの制御装置。
[4] 前記バッファ内のデータの残量が前記閾値に達したら、前記フレームの送信元に 送信停止要求を発行する送信停止要求生成部を更に備えることを特徴とする請求項
1乃至 3に記載のバッファの制御装置。
[5] 前記フレームの送信元は、送信停止要求が発行されて!、な 、場合は、前記フレー ムの途中で停止することは無く 1フレーム単位で出力可能であり、前記送信停止要求 が発行された場合は、フレームの出力を停止することを特徴とする請求項 4に記載の バッファの制御装置。
[6] 前記バッファから 1フレーム単位でデータを読み出すフレーム処理部を更に備える ことを特徴とする請求項 1乃至 5のいずれか 1つに記載のノ ッファの制御装置。
[7] 前記フレーム長検出部は、前記フレームのヘッダ部より前記フレーム長を検出する ことを特徴とする請求項 1乃至 6のいずれか 1つに記載のノ ッファの制御装置。
[8] 前記フレーム長検出部は、前記ヘッダ部より前記フレームの種類を求め、当該種類 力も前記フレーム長を検出することを特徴とする請求項 7に記載のバッファの制御装 置。
[9] 前記フレームの送信元との間に、前記フレームのヘッダ部とデータ部を識別するた めの情報を前記フレーム送信元より受け取るバスを更に備えることを特徴とする請求 項 1乃至 8のいずれ力 1つに記載のフレームの制御装置。
[10] フレーム緩衝用のバッファと、
前記バッファに入力されるフレームのフレーム長を検出するフレーム長検出部と、 前記フレーム長検出部が検出したフレーム長に基づいて前記バッファに閾値を動 的に設定する閾値設定部と、
を備えるクロスノく一スィッチ。
クロスバースィッチ内のバッファを制御するバッファの制御方法であって、 前記バッファに入力されるフレームのフレーム長を検出し、
前記フレーム長に基づいて前記バッファに閾値を動的に設定し、
前記バッファ内のデータの残量が前記閾値に達したら前記フレームの送信元に送 信停止要求を発行する
ことを特徴とするバッファ制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2006/303651 WO2007097038A1 (ja) | 2006-02-27 | 2006-02-27 | バッファの制御装置、クロスバースイッチ及びバッファの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2006/303651 WO2007097038A1 (ja) | 2006-02-27 | 2006-02-27 | バッファの制御装置、クロスバースイッチ及びバッファの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007097038A1 true WO2007097038A1 (ja) | 2007-08-30 |
Family
ID=38437097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2006/303651 WO2007097038A1 (ja) | 2006-02-27 | 2006-02-27 | バッファの制御装置、クロスバースイッチ及びバッファの制御方法 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2007097038A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015173507A (ja) * | 2009-06-25 | 2015-10-01 | コーニンクレッカ フィリップス エヌ ヴェ | データパケットを処理する方法及び装置 |
US20170156081A1 (en) * | 2014-07-11 | 2017-06-01 | Sony Corporation | Information processing device, communication system, and information processing method |
US11200182B1 (en) * | 2019-05-14 | 2021-12-14 | Xilinx, Inc. | System and method for device synchronization |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10254843A (ja) * | 1997-03-06 | 1998-09-25 | Hitachi Ltd | クロスバスイッチ、該クロスバスイッチを備えた並列計算機及びブロードキャスト通信方法 |
JP2000151633A (ja) * | 1998-11-12 | 2000-05-30 | Hitachi Ltd | パケットスイッチ |
-
2006
- 2006-02-27 WO PCT/JP2006/303651 patent/WO2007097038A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10254843A (ja) * | 1997-03-06 | 1998-09-25 | Hitachi Ltd | クロスバスイッチ、該クロスバスイッチを備えた並列計算機及びブロードキャスト通信方法 |
JP2000151633A (ja) * | 1998-11-12 | 2000-05-30 | Hitachi Ltd | パケットスイッチ |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015173507A (ja) * | 2009-06-25 | 2015-10-01 | コーニンクレッカ フィリップス エヌ ヴェ | データパケットを処理する方法及び装置 |
JP2018046571A (ja) * | 2009-06-25 | 2018-03-22 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | データパケットを処理する方法及び装置 |
US10694008B2 (en) | 2009-06-25 | 2020-06-23 | Koninklijke Philips N.V. | Method and device for processing data packets |
US10791204B2 (en) | 2009-06-25 | 2020-09-29 | Koninklijke Philips N.V. | Method and device for processing data packets |
US11323551B2 (en) | 2009-06-25 | 2022-05-03 | Koninklijke Philips N.V. | Method and device for processing data packets |
US11683403B2 (en) | 2009-06-25 | 2023-06-20 | Koninklijke Philips N.V. | Method and device for processing data packets |
US20170156081A1 (en) * | 2014-07-11 | 2017-06-01 | Sony Corporation | Information processing device, communication system, and information processing method |
US10582423B2 (en) * | 2014-07-11 | 2020-03-03 | Sony Corporation | Information processing device, communication system, and information processing method |
US11228944B2 (en) | 2014-07-11 | 2022-01-18 | Sony Corporation | Information processing device, communication system, and information processing method |
US11856460B2 (en) | 2014-07-11 | 2023-12-26 | Sony Group Corporation | Information processing device, communication system, and information processing method |
US11200182B1 (en) * | 2019-05-14 | 2021-12-14 | Xilinx, Inc. | System and method for device synchronization |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7633856B2 (en) | Multi-node system, internodal crossbar switch, node and medium embodying program | |
TWI416334B (zh) | 在匯流排上以封包形式傳送來自複數個客戶的資料傳送請求之方法、匯流排介面裝置及處理器 | |
US7827325B2 (en) | Device, system, and method of speculative packet transmission | |
US7376853B2 (en) | Network apparatus, method for controlling the same, and program for the same | |
KR19990067626A (ko) | 패킷송수신장치및패킷수신장치 | |
WO2007097038A1 (ja) | バッファの制御装置、クロスバースイッチ及びバッファの制御方法 | |
TWI446766B (zh) | 管理執行之方法及具有執行管理能力之裝置 | |
JP2005302002A (ja) | ネットワーク装置及びその制御方法 | |
JP2943710B2 (ja) | バッファのビジー制御方式 | |
JP2005341282A5 (ja) | ||
US6826646B1 (en) | Method and structure for supporting data streaming by a SCSI initiator during the data in phase of the packetized SCSI protocol | |
WO2008004301A1 (fr) | Unité de transfert de données, unité de traitement, et procédé de transfert de données | |
US20080104286A1 (en) | Data transfer apparatus and data transfer method | |
JP2002176464A (ja) | ネットワークインタフェース装置 | |
JP3115801B2 (ja) | 並列計算機システム | |
JP2002049580A (ja) | バス管理装置、バス使用要求送信装置、バス管理方法、及びバス使用要求送信方法 | |
US6728815B1 (en) | Method and structure for supporting data streaming by a SCSI target during the data in phase of the packetized SCSI protocol | |
US6745260B1 (en) | Method and system for data streaming during the data in phase of the packetized SCSI protocol | |
JP5587530B2 (ja) | エンジン・プロセッサ連携システム及び連携方法 | |
US20060140122A1 (en) | Link retry per virtual channel | |
US7047327B1 (en) | Method and structure for supporting flow control by a SCSI initiator during the data out phase of the packetized SCSI protocol | |
US6769037B1 (en) | Method and system for flow control during the data out phase of the packetized SCSI protocol | |
WO2021035798A1 (zh) | 一种在多核场景中自动切换外送数据的uart主控系统 | |
JP2007164511A (ja) | 通信装置および受信データ通知方法 | |
JPH05136827A (ja) | 通信処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 06714788 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |