(57)【要約】【課題】回線が高速化された場合でも、適切に制御信号を挿入することができるパケット多重回路を得ること。【解決手段】複数の経路から入力される受信パケットを制御信号挿入後に多重化するパケット多重回路であって、受信パケットを多ビット展開する受信パケット検出部１と、多ビット展開後の受信パケットを記憶するＦＩＦＯメモリ２と、ＦＩＦＯメモリ２から読み出した受信パケットから１つを選択するセレクタ３と、受信パケットの多重化の順序を決定して受信パケットを読み出し、受信パケットが連続して同一のセレクタから出力されないようセレクタ３を制御する読み出し制御部１０と、受信パケット間に制御信号が挿入されるようビットシフト量を求めるＩＦＧ挿入回路制御部１１と、出力される受信パケットに対してビットシフト量分ビットシフトして制御信号を挿入するＩＦＧ挿入回路４と、を備える。【選択図】図１
2011004181.tif 000002
【特許請求の範囲】
【請求項１】
複数の経路から入力される受信パケットを受信パケット間に所定の制御信号を挿入し、制御信号挿入後の受信パケットを多重化して１つの多重化信号とするパケット多重回路であって、
経路ごとに、その経路から入力された受信パケットを多ビット展開する受信パケット検出手段と、
多ビット展開後の受信パケットを、前記経路ごとに記憶するための記憶手段と、
受信パケットに基づいて、受信パケットのパケット長を検出するパケット長検出手段と、
前記記憶手段から読み出された経路ごとの受信パケットのうち１つを選択して出力するＮ（Ｎは２以上の整数）個のセレクタと、
前記多重化信号を記憶するための送信用バッファと、
受信パケットに基づいて、受信パケットの多重化の順序を決定し、前記記憶手段から前記順序に基づいて受信パケットを読み出し、また、読み出された受信パケットが連続して同一の前記セレクタから出力されないようセレクタを制御し、また、受信パケットごとに、前記送信用バッファに書き込まれる際のその受信パケットの先頭位置とパケット長とに基づいて、前記送信用バッファに書き込まれる際の受信パケットの末尾位置を求める読み出し制御手段と、
受信パケットごとに、前記送信用バッファに書き込まれる際に、前記末尾位置の後に前記制御信号が書き込まれ、その制御信号の後にその次に多重化される受信パケットの先頭位置が書き込まれるよう、前記セレクタから出力される受信パケットをシフトさせるためのビットシフト量を求める制御信号挿入制御手段と、
セレクタごとに、そのセレクタから出力される受信パケットに対して前記ビットシフト量に基づいてビットシフトしてシフトパケットとし、シフトパケットの末尾位置とその次に多重化されるシフトパケットの先頭位置との間に前記制御信号を挿入し、前記制御信号の挿入後のシフトパケットを前記多重化信号として前記送信用バッファに書き込む制御信号挿入手段と、
を備えることを特徴とするパケット多重回路。
【請求項２】
Ｎを２とすることを特徴とする請求項１に記載のパケット多重回路。
【請求項３】
Ｎを３以上とすることを特徴とする請求項１に記載のパケット多重回路。
【請求項４】
前記制御信号挿入手段を前記セレクタごとに対応するセレクタ毎制御信号挿入回路で構成されることとし、
前記セレクタ毎制御信号挿入回路は、
入力された受信パケットに対して１クロックごとに１バイトずつ制御信号の挿入位置をシフトするシフト手段、
を備え、
前記制御信号挿入制御手段は、前記ビットシフト量に対応するクロック数だけ受信パケットが前記シフト手段を通過するよう制御する、
ことを特徴とする請求項１、２または３に記載のパケット多重回路。
【請求項５】
複数の経路から入力される受信パケットを受信パケット間に所定の制御信号を挿入し、制御信号挿入後の受信パケットを多重化して１つの多重化信号とするパケット多重方法であって、
経路ごとに、その経路から入力された受信パケットを多ビット展開する受信パケット検出ステップと、
多ビット展開後の受信パケットを、前記経路ごとに記憶する記憶ステップと、
受信パケットに基づいて、受信パケットのパケット長を検出するパケット長検出ステップと、
Ｎ（Ｎは２以上の整数）個のセレクタが、前記記憶ステップで読み出された経路ごとの受信パケットのうち１つを選択して出力する選択ステップと、
受信パケットに基づいて、受信パケットの多重化の順序を決定し、前記順序に基づいて前記記憶ステップで記憶された受信パケットを読み出し、また、読み出された受信パケットが連続して同一の前記セレクタから出力されないようセレクタを制御し、また、受信パケットごとに、前記多重化信号を記憶するための送信用バッファに書き込まれる際のその受信パケットの先頭位置とパケット長とに基づいて、前記送信用バッファに書き込まれる際の受信パケットの末尾位置を求める読み出し制御ステップと、
受信パケットごとに、前記送信用バッファに書き込まれる際に、前記末尾位置の後に前記制御信号が書き込まれ、その制御信号の後にその次に多重化される受信パケットの先頭位置が書き込まれるよう、前記セレクタから出力される受信パケットをシフトさせるためのビットシフト量を求める制御信号挿入制御ステップと、
セレクタごとに、そのセレクタから出力される受信パケットに対して前記ビットシフト量に基づいてビットシフトしてシフトパケットとし、シフトパケットの末尾位置とその次に多重化されるシフトパケットの先頭位置との間に前記制御信号を挿入し、前記制御信号の挿入後のシフトパケットを前記多重化信号として前記送信用バッファに書き込む制御信号挿入ステップと、
を含むことを特徴とするパケット多重方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の受信経路で受信した受信パケットを多重化するパケット多重回路およびパケット多重方法に関する。
【背景技術】
【０００２】
従来のパケット通信では、受信パケットと次の受信パケットの間に、受信パケットの開始や終了または受信パケットのパケット長などを含む制御信号が挿入されている場合がある。パケットを扱う回路では、これらの制御信号に基づいて受信パケットの制御を行っている。また、本来のパケット通信はシリアル通信であり、制御信号のビット列などはシリアル通信を前提に規定されている（たとえば、非特許文献１参照）。
【０００３】
また、複数の受信経路による受信パケットを受信した順番に多重化するパケット多重化回路として、たとえば、下記特許文献１には、処理が集中しないようにパケットの間隔をおいて多重化するパケット多重装置が開示されている。
【０００４】
従来のパケット多重回路では、受信パケットと次の受信パケットの間にパケットの区切りを表すための制御信号を挿入する場合、回線速度が低速であるため、受信したシリアル信号を多ビット展開してパラレル信号化しても、データ幅は小さく、受信パケットの間隔にも余裕があり、クロック単位で制御信号を挿入することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−１５２６５１号公報
【特許文献２】特開２００２−２４７０７３号公報
【特許文献３】特開２００４−２８９５６７号公報
【非特許文献】
【０００６】
【非特許文献１】石田修他著「改訂版10ギガビットEthernet（登録商標）教科書」impress，２００５年４月１日，p181−186
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来の特許文献１〜３に記載の技術では、パケット通信が高速化されておらず、受信パケットの間隔にも余裕があり、クロック単位で制御信号を挿入することができるため、制御信号ビットの挿入方法について特に言及されていない。しかし、近年、回線速度が高速化しており、デバイスの動作速度に向上が望めない場合には多ビット展開したパラレル信号のデータ幅が大きくなり、これらを多重化する際に、同一のクロックにおいて受信パケットの末尾と次の受信パケットの先頭が同時に現れるケースが生じることがある。このような場合、従来のパケット多重回路では、データバス内の適切な位置に、制御信号と次の受信パケットの先頭と、を同時に挿入することができない、という問題があった。
【０００８】
また、従来のパケット多重化回路を用いる場合に、上記の問題を回避するためには、より高速なデバイスを用い、より高速で動作させることによって多ビット展開によるパラレル信号幅の抑制を行う必要がある。そのため、高性能デバイスの調達コストや消費電力が増大する、という問題があった。
【０００９】
本発明は、上記に鑑みてなされたものであって、回線速度が高速化され、多ビット展開による大きなデータ幅のパケットを多重する場合でも、受信パケットと次の受信パケットとの間に適切に制御信号を挿入することができるパケット多重回路およびパケット多重方法を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、複数の経路から入力される受信パケットを受信パケット間に所定の制御信号を挿入し、制御信号挿入後の受信パケットを多重化して１つの多重化信号とするパケット多重回路であって、経路ごとに、その経路から入力された受信パケットを多ビット展開する受信パケット検出手段と、多ビット展開後の受信パケットを、前記経路ごとに記憶するための記憶手段と、受信パケットに基づいて、受信パケットのパケット長を検出するパケット長検出手段と、前記記憶手段から読み出された経路ごとの受信パケットのうち１つを選択して出力するＮ（Ｎは２以上の整数）個のセレクタと、前記多重化信号を記憶するための送信用バッファと、受信パケットに基づいて、受信パケットの多重化の順序を決定し、前記記憶手段から前記順序に基づいて受信パケットを読み出し、また、読み出された受信パケットが連続して同一の前記セレクタから出力されないようセレクタを制御し、また、受信パケットごとに、前記送信用バッファに書き込まれる際のその受信パケットの先頭位置とパケット長とに基づいて、前記送信用バッファに書き込まれる際の受信パケットの末尾位置を求める読み出し制御手段と、受信パケットごとに、前記送信用バッファに書き込まれる際に、前記末尾位置の後に前記制御信号が書き込まれ、その制御信号の後にその次に多重化される受信パケットの先頭位置が書き込まれるよう、前記セレクタから出力される受信パケットをシフトさせるためのビットシフト量を求める制御信号挿入制御手段と、セレクタごとに、そのセレクタから出力される受信パケットに対して前記ビットシフト量に基づいてビットシフトしてシフトパケットとし、シフトパケットの末尾位置とその次に多重化されるシフトパケットの先頭位置との間に前記制御信号を挿入し、前記制御信号の挿入後のシフトパケットを前記多重化信号として前記送信用バッファに書き込む制御信号挿入手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、受信パケットを複数のセレクタを用いて擬似的に重ねて読み出し、また、読み出し制御手段が受信パケットの先頭位置とパケット長に基づいてＩＦＧの挿入位置を求め、複数のＩＦＧ挿入回路が、ＩＦＧの挿入位置にＩＦＧが挿入されるよう受信パケットをシフトさせた受信パケットを送信用バッファに書き込むようにしたので、回線速度が高速化され、多ビット展開による大きなデータ幅のパケットを多重する場合でも、受信パケットと次の受信パケットとの間に適切に制御信号を挿入することができる、という効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１のパケット多重回路の機能構成例を示す図である。
【図２】図２は、受信経路から入力された受信パケットとセレクタを通過する受信パケットと多重化後の受信パケットとの状態の一例を示す図である。
【図３】図３は、実施の形態１のＩＦＧ挿入回路の構成例を示す図である。
【図４】図４は、ＩＦＧ挿入回路の動作例を示す図である。
【図５】図５は、実施の形態１のＩＦＧ挿入方法の概念を示す図である。
【図６】図６は、実施の形態１の効果を説明するための図である。
【図７】図７は、実施の形態２のパケット多重回路の機能構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本発明にかかるパケット多重回路およびパケット多重方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１４】
実施の形態１．
図１は、本発明にかかるパケット多重回路の実施の形態１の機能構成例を示す図である。本実施の形態のパケット多重回路は、たとえば、イーサネット（登録商標）フレームを多重化するＬ２ＳＷ（レイヤ２スイッチ）などに搭載される。本実施の形態のパケット多重回路では、それぞれビットレートが１０Ｇｂｐｓである１０本の受信経路を入力とし、入力されたパケットを多重して、ビットレートが１００Ｇｂｐｓである１本の経路で出力する。
【００１５】
図１に示すように、本実施の形態のパケット多重回路は、受信経路ごとに設けられた受信パケット検出部１−１〜１−１０と、ＦＩＦＯ（First  In，First  Out）メモリ２−１〜２−１０と、１０本の入力に対し１本を出力するセレクタ（１０入力１出力セレクタ）であるセレクタ３−１，３−２と、ＩＦＧ（インターフレームギャップ）挿入回路４−１，４−２と、送信用バッファ５と、パケット長カウンタ６と、到着完了検出回路７と、多重化順序生成回路８と、パケット長およびパケット多重化順序を格納するためのメモリであるＦＩＦＯメモリ９と、ＦＩＦＯメモリ２−１〜２−１０からの読み出しを制御する読出し制御部１０と、ＩＦＧ挿入回路制御部１１と、で構成される。また、パケット長カウンタ６，到着完了検出回路７，多重化順序生成回路８，ＦＩＦＯメモリ９，読出し制御部１０，ＩＦＧ挿入回路制御部１１で制御部１２を構成する。
【００１６】
本実施の形態のパケット多重回路は、パケット多重時に、制御信号の一例としてイーサネット（登録商標）の規格で定められたパケット毎のクロック偏差を吸収するために設ける９６ビット長以上のインターフレームギャップ（以下、ＩＦＧという）を、パケット間に挿入する。なお、ここでは、ＩＦＧを挿入する例を説明するが、これに限らずパケット間に他の制御信号を挿入する場合にも本実施の形態の動作を適用することができる。この場合、ＩＦＧ挿入回路４−１，４−２は、制御信号挿入回路として機能し、ＩＦＧの替わりに所定の制御信号を挿入する。本実施の形態では、受信パケットのビットレートは１０Ｇｂｐｓであり、データ幅は６４ビットとするが、パケット多重後のパケット送信時ではビットレートは１００Ｇｂｐｓであるため、動作クロックの周波数を抑えるためにデータ幅を多ビット展開し２５６ビットとしている。
【００１７】
また、ＩＦＧは、規格上では９６ビット長以上であればよいが、１０Ｇｂｐｓの１０本の入力とし、１００Ｇｂｐｓのワイヤレートを実現するためには、たとえば受信パケットが規格上最短の９６ビット長のＩＦＧを挿入された状態で連続して到着する場合、パケットの送信側が挿入するＩＦＧも最短の９６ビット長でなければならない。したがって、本実施の形態では、受信パケットが連続して到着する場合に９６ビット長のＩＦＧを挿入することとする。
【００１８】
つぎに、本実施の形態の動作を説明する。受信パケット検出部１−１〜１−１０は、それぞれ対応する受信経路から入力される６４ビット幅の受信パケットを、２５６ビット幅に多ビット展開し、展開した受信パケットをＦＩＦＯメモリ２−１〜２−１０にそれぞれ書き込む。なお、受信パケット検出部１−ｉ（ｉ＝１，２…１０）は、ＦＩＦＯメモリ２−ｉに受信パケットを書込むこととする。これにより、ＦＩＦＯメモリ２−１〜２−１から読みだした際に、送信側のビットレートに対応した多重化を行うことができる。
【００１９】
また、受信パケット検出部１−１〜１−１０は、それぞれ対応する受信経路から入力される６４ビット幅の受信パケットを検出すると、パケット長カウンタ６が、受信したパケットに基づいてパケット長をパケット長情報として取得し、また、到着完了検出回路７が、受信パケットに基づいて到着完了情報を取得する。多重化順序生成回路８は、ＦＩＦＯメモリ２−１〜２−１０からの受信パケットの読み出し順序（何番目に読み出すかの番号）を決定し、決定した読み出し順序とその読み出し対象の受信パケットのパケット長とをセットにしてＦＩＦＯメモリ９に格納する。
【００２０】
なお、ＦＩＦＯメモリ２−１〜２−１０からの読みだされた受信パケットは、ＩＧＦの挿入等の処理の後に、送信用バッファ５に書き込まれる。したがって、送信用バッファ５に書き込まれる順序は、ＦＩＦＯメモリ２−１〜２−１０からの読み出した順序となる。また、送信用バッファ５に書き込まれる際に、それぞれの受信経路から入力された受信パケットが多重化されて書き込まれることになり、送信用バッファ５には多重化後のパケットが書き込まれ、送信時には、送信用バッファ５に書き込まれた順に読みだされる。したがって、ＦＩＦＯメモリ２−１〜２−１０からの読み出し順序は、多重化の順序または送信順序と考えることができる。多重化順序生成回路８は、受信パケットが基本的に到着完了の順に読みだされるよう読み出し順序を決定する。パケットにより送信の優先度が設定されている場合などは、その優先度を考慮して読み出し順序決定するようにしてもよい。
【００２１】
図２は、受信経路から入力された受信パケットとセレクタ３−１，３−２を通過する受信パケットと多重化後の受信パケット（送信用バッファ５に記憶されるパケット）との状態の一例を示す図である。横軸には時間を示している。図２の受信経路＃ｊ（ｊ＝１，２…１０）と記載した段は、受信パケット検出部１−ｊに入力される信号の受信経路を示し、各受信経路の右側には、その経路で入力される受信パケットを示している。また、図２のセレクタ３−１，３−２側の段には、それぞれセレクタ３−１，３−２を通過するパケットを示している。
【００２２】
読出し制御部１０は、ＦＩＦＯメモリ９から受信パケットの読み出し順序とパケット長とを読み出し、読み出した読み出し順序とパケット長とに基づいて、その読み出し順序でＦＩＦＯメモリ２−１〜２−１０から受信パケットを順次読み出すように、ＦＩＦＯメモリ２−１〜２−１０のリードイネーブル信号を生成し、また、セレクタ３−１，３−２に対する制御信号と、を生成する。この際、読出し制御部１０は、読み出し順にパケットがセレクタ３−１，３−２に交互に通過するよう各セレクタを通過するパケット長に基づいてセレクタを駆動させるよう制御信号を生成する。また、読み出し順序で連続する受信パケットが、セレクタ３−１，３−２をそれぞれ通過する場合、早く通過する方の受信パケットの読み出し終了を待たずに、遅く通過する方の受信パケットの読み出しを開始する。すなわち、たとえば、図２に示すように、パケットＰ１とパケットＰ２は、セレクタ３−１またはセレクタ３−２を通過する時間帯が重複する。どの程度重複させるかは、多重化後の信号の出力速度や入力される受信パケットの伝送レートなどに基づいて、適切に設定する。
【００２３】
この際、読出し制御部１０は、読み出し順序にしたがって読みだされる受信パケットが、セレクタ３−１とセレクタ３−２を交互に通過するようセレクタ３−１，３−２に対する制御信号を生成する。図２のパケットＰ１〜Ｐ１１は、数字の若いパケットが、到着完了の早いパケットを示している。たとえば、図２の例では、受信経路＃１，受信経路＃２，受信経路＃１０，受信経路＃９の順に、それぞれパケットＰ１，Ｐ２，Ｐ３，Ｐ４が入力される。そして、図２のように、パケットＰ１はセレクタ３−１を、パケットＰ２はセレクタ３−２を、パケットＰ３はセレクタ３−１を、パケットＰ４はセレクタ３−２を、…と、セレクタ３−１とセレクタ３−２を交互に通過する。また、セレクタ３−１から出力される受信パケットはＩＦＧ挿入回路４−１へ、セレクタ３−２から出力される受信パケットはＩＦＧ挿入回路４−２へ、それぞれ出力される。
【００２４】
図３は、本実施の形態のＩＦＧ挿入回路４−１，４−２の構成例を示す図である。ＩＦＧ挿入回路４−１とＩＦＧ挿入回路４−２は、同じ構成であり、図３に示すように、合計２５６ビット幅のレジスタとして機能する８ビットのＦＦ（Flip  Flop）４１−１〜４１−３２と、８ビット幅のレジスタであるＦＦ４２−１と、ＦＦ４１−１〜４１−３２およびＦＦ４２−１の次の段の２５６ビット幅のレジスタとして機能する８ビットのＦＦ４３−１〜４３−３２と、ＦＦ４１−１〜４１−３２およびＦＦ４２−１の次の段の８ビット幅のレジスタであるＦＦ４４−１と、ＦＦ４３−１〜４３−３２およびＦＦ４４−１の次の段の２５６ビット幅のレジスタとして機能する８ビットのＦＦ４５−１〜４５−３２と、ＦＦ４３−１〜４３−３２およびＦＦ４４−１の次の段の８ビット幅のレジスタであるＦＦ４６−１と、を備えている。ＦＦ４１−１〜４１−３２とＦＦ４２−１，ＦＦ４３−１〜４３−３２とＦＦ４４−１等のように、２５６ビット幅のレジスタと８ビット幅のレジスタを１セットとし、このセットを３２セット備える多段構成としている。なお、図３では、３２セットのうちの３セットのみを例示している。
【００２５】
また、ＦＦ４１−１〜４１−３２等の２５６ビットのレジスタの読み出し時には、図３に示すように、読み出された出力信号は送信バッファ５と次の段のレジスタとの２経路に分岐されて出力される。次の段へ出力される場合は、図３に示すように各段で８ビットずつ信号位置がずれるように構成されている。また、ＦＦ４１−３２に出力されたデータは、ＦＦ４２−１に出力された後にＦＦ４１−１に出力され、ＦＦ４３−３２に出力されたデータは、ＦＦ４４−１に一時出力された後にＦＦ４３−１に出力される。このように構成することにより、ＩＦＧ挿入回路４−１，４−２に入力された受信パケットをそれぞれ１クロックにつき８ビットずつシフトさせる。
【００２６】
図４は、ＩＦＧ挿入回路４−１の動作例を示す図である。図４のｒｅｇ＃１は、たとえば、上記のＦＦ４１−１〜ＦＦ４１−３２およびＦＦ４２−１の１セット（１段）に対応する。図４では、ＩＦＧ挿入回路４−１に入力されるパケットＰ２１−１が、ＩＦＧ挿入回路の内部のクロック数によってずれる様子をＰ２１−２，Ｐ２１−３，Ｐ２１−４として示している。また、パケットＰ２１−１，２１−２，Ｐ２１−３，Ｐ２１−４中に記載されているＳは、パケットの先頭位置を示し、Ｅは、パケットの末尾位置を示している。
【００２７】
パケットＰ２１−２は、ＩＦＧ挿入回路４−１の通過時間が１クロックでありｒｅｇ＃１によりパケットＰ２１−１の状態より８ビットずれている。また、パケットＰ２１−３は、ＩＦＧ挿入回路４−１の通過時間が５クロックでありｒｅｇ＃５からの出力となり、パケットＰ２１−１の状態より５ｂｙｔｅずれており、パケットＰ２１−３は、ＩＦＧ挿入回路４−１の通過時間が１２クロックであり、ｒｅｇ＃１２からの出力となるため、パケットＰ２１−１の状態より１２ｂｙｔｅずれている。このように、ＩＦＧ挿入回路４−１は、１クロックごとに１ｂｙｔｅずつ順にパケット全体をずらずことができる。
【００２８】
また、図３に示すように、本実施の形態の送信用バッファ５は、送信用バッファ内のデータとＩＦＧ挿入回路４−１，４−２からそれぞれ入力される信号との３つの入力に対し、１つの信号を出力する３to１  Selector５１−１〜５１−３２（図３では５１−１〜５１−３のみを図示）を備える。
【００２９】
３to１  Selector５１−ｋ（ｋ＝１，２，…，３２）は、ＩＦＧ挿入回路４−１，４−２のｋ段目からのそれぞれの出力と送信用バッファ５内部に書き込まれているデータ（送信用バッファ内のデータ）と、を入力とし、３つの入力のうち１つを選択して送信用バッファ５内部に書き込む。そして、３to１  Selector５１−（ｋ＋１）は、ＩＦＧ挿入回路４−１，４−２のｋ＋１段目からのそれぞれの出力と送信用バッファ内のデータと、を入力とし、３つの入力のうち１つを選択して送信用バッファ５内部に書き込む。したがって、３to１  Selector５１−１〜５１−３２を制御することにより、ＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２の何段目のレジスタの出力を送信用バッファに書き込むか、すなわち受信パケットを何ｂｙｔｅずらすか（シフト量）を制御することができ、ＩＦＧを任意の位置に挿入することができる。
【００３０】
なお、ＩＦＧ挿入回路４−１，４−２構成および送信用バッファ５の構成は、図３に示した構成に限らず、ＩＦＧ挿入回路が所望のシフト量だけ受信パケットをシフトさせて適切な位置にＩＦＧを挿入し、適切な位置にＩＧＦが挿入された受信パケットを送信バッファ５に書き込むことができる構成であれば、どのような構成としてもよい。
【００３１】
図５は、本実施の形態のＩＦＧ挿入方法の概念を示す図である。図５では、セレクタ３−１，３−２をまとめて、セレクタとして示しているが、実際には、ＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２には、それぞれセレクタ３−１，３−２から受信パケットが入力される。受信パケットが連続して到着している場合、読み出し制御部１０は、ＦＩＦＯメモリ２−１〜２−１０のリードイネーブル信号を生成すると同時に、ＦＩＦＯメモリ２−１〜２−１０から読み出す際のデータバスにおける受信パケットの末尾の位置をその受信パケットのパケット長に基づいて算出し、算出した末尾の位置と次の受信パケットの先頭位置との間に９６ビット長のＩＦＧを挿入するようＩＦＧ挿入回路制御部１１に指示する。
【００３２】
いいかえると、読み出し制御部１０は、受信パケットをセレクタ３−１，３−２を通過させる際に、連続する受信パケットを重複させるように間をつめているため、連続する受信パケットのうち早く通過する方の受信パケットの先頭を基準にそのパケット長に基づいて末尾位置を求め、その末尾位置の後に９６ビット長のＩＦＧを挿入し、そして、遅く通過する方の受信パケットの先頭がＩＦＧの後になるように連続する受信パケットの送信バッファ５への書込み位置を制御する。
【００３３】
そして、ＩＦＧ挿入回路制御部１１は、指示された位置にＩＦＧが挿入されるようＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２を用いて受信パケットをそれぞれ何ｂｙｔｅずらすかを求め、求めた値に基づいてＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２のそれぞれ何段目の出力を選択して送信用バッファ５に書き込むかを決定する。そして、決定結果に基づいて送信用バッファ５の３to１  Selector５１−１〜５１−３２を制御する。
【００３４】
図５では、ＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２では、受信パケットが１クロックごとにデータバス上を１ｂｙｔｅずつずれていく様子を示している。Ｓは、図５と同様に受信パケットの先頭を示し、Ｅは受信パケットの末尾を示している。この図では、ＩＦＧ挿入回路４−１に入力された受信パケットの後に、ＩＦＧ挿入回路４−２に入力された受信パケットが到着したとし、ＩＦＧ挿入回路４−１に入力された受信パケットの末尾とＩＦＧ挿入回路４−２に入力された受信パケットの先頭との間にＩＦＧを挿入する例を示している。また、図５では、ＩＦＧを適切な位置に挿入するには、ＩＦＧ挿入回路４−１に入力された受信パケットを３ｂｙｔｅずらし、ＩＦＧ挿入回路４−２に入力された受信パケットを４ｂｙｔｅずらす必要がある例を示している。
【００３５】
この場合、ＩＦＧ挿入回路制御部１１は、ＩＦＧ挿入回路４−１の３段目の出力を送信用バッファ５に書き込み、ＩＦＧ挿入回路４−２の４段目の出力を送信用バッファ５に書き込むよう、制御する。
【００３６】
また、受信パケットが、連続して到着していない場合には、読み出し制御部１０およびＩＦＧ挿入回路制御部１１は、次の受信パケットの先頭位置がデータバスにおける先頭位置となるようなビット長のＩＦＧを挿入するよう制御する。
【００３７】
以上の動作により、送信用バッファ５には、ＩＦＧが挿入された多重後のパケットが書き込まれる。書き込まれた多重後のパケットは、本実施の形態のパケット多重回路から送信用バッファ５から出力され、本実施の形態のパケット多重回路を搭載するＬ２ＳＷによって送信される。
【００３８】
図６は、本実施の形態の効果を説明するための図である。図６では、上段に従来のパケット多重の様子を示しており、下段に本実施の形態のパケット多重の様子を示している。従来のパケット多重では、セレクタ１０３が１つであるため、受信パケットはその前の受信パケットの末尾を読み出した後の次のクロックで読み出すのが最短の読み出し間隔となる。これに対し、本実施の形態では、セレクタ３−１，３−２を交互に用いることにより、受信パケットとその次の受信パケットを擬似的に重ねて読み出すことが可能となる。そして、擬似的に重ねた受信パケットを、引き伸ばすことにより適切な挿入位置に９６ビット長のＩＦＧを挿入している。このような構成とすることにより、本実施の形態では、従来のパケット多重に比べ、連続するパケットの出力間隔を短くしている。
【００３９】
以上のように、本実施の形態では、セレクタ３−１，３−２を交互に用いることにより、受信パケットとその次の受信パケットを擬似的に重ねて読み出し、読み出し制御部１０が受信パケットの先頭位置とパケット長に基づいてパケットの末尾位置を求め、ＩＦＧ挿入回路制御部１１が、その末尾位置と次のパケットの先頭位置とに基づいてＩＦＧの挿入位置を求め、求めたＩＦＧの挿入位置に基づいて受信パケットのシフト量を決定し、ＩＦＧ挿入回路４−１，ＩＦＧ挿入回路４−２が、読み出した受信パケットをそのシフト量だけシフトさせた受信パケットを送信用バッファ５に書き込むようにした。
【００４０】
従来の技術では、動作クロックを抑えるために６４ビット幅の受信パケットを２５６ビット幅へ多ビット展開して多重する際、ＩＦＧがデータバス幅より小さくなり、受信パケットの末尾とＩＦＧと次の受信パケットの先頭が同時に現れるケースを含んだ送信パケットを生成する必要が生じ適切に処理できず、ワイヤレートを実現できなかった。これに対し、本実施の形態では、以上のように適切なサイズのＩＦＧが適切な位置に挿入されたパケットをワイヤレートで出力することができる。したがって、低速なデバイスを用いてパケット多重回路を構成することが可能となる。
【００４１】
また、動作クロックを抑えた状態で高速な受信パケットを高い効率で多重できるパケット回路を構成することができ、デバイスのスペックダウンによるハードウェアのコストや消費電力を抑えたＬ２ＳＷの設計が可能となる。
【００４２】
実施の形態２．
図７は、本発明にかかるパケット多重回路の実施の形態２の機能構成例を示す図である。本実施の形態のパケット多重回路は、受信パケット検出部１−１〜１−ｎ（ｎは自然数）と、ＦＩＦＯメモリ２−１〜２−ｎと、セレクタ３−１〜３−ｍと、ＩＦＧ調整回路４−１〜４−ｍと、送信用バッファ５ａと、実施の形態１の制御部１２と同様の制御部１２と、を備えている。受信パケット検出部１−１〜１−ｎ，ＦＩＦＯメモリ２−１〜２−ｎは、実施の形態１の受信パケット検出部１−１〜１−１０，ＦＩＦＯメモリ２−１〜２−１０をそれぞれ備える数を１０からｎにする以外は実施の形態１の受信パケット検出部１−１〜１−１０，ＦＩＦＯメモリ２−１〜２−１０と同様である。また、セレクタ３−１〜３−ｍ（ｍは３以上の整数），ＩＦＧ調整回路４−１〜４−ｍは、実施の形態１のセレクタ３−１〜３−２，ＩＦＧ調整回路４−１〜４−２とそれぞれ備える数を２からｍにする以外は、実施の形態１のセレクタ３−１〜３−２，ＩＦＧ調整回路４−１〜４−２と同様である。実施の形態１と同様の機能を有する構成要素は実施の形態１と同一の符号を付して説明を省略する。
【００４３】
ネットワークの高速化がより進んだ場合、実施の形態１よりさらに多くの多ビット展開が必要になる。その際、たとえば、受信パケットの末尾と９６ビット長のＩＦＧであるＩＦＧ＃１とその次の受信パケットとその受信パケットの末尾の９６ビット長のＩＦＧ＃２と、さらに次パケットの先頭が同時に現れるケースを含んだパケットを生成しなければならない可能性がある。このような場合には、実施の形態１のセレクタ３−１，３−２，ＩＦＧ挿入回路４−１，４−２を、３つ以上備えることにより、対応することができる。
【００４４】
図７では、受信経路がｎ個の場合に、セレクタおよびＩＦＧ挿入回路をそれぞれｍ個備える例を示している。各構成要素の動作は実施の形態１と同様であるが、受信パケット検出部１−１〜１−ｎは多ビット展開後のビット数に対応した多ビット展開を行い、また、ＩＦＧ調整回路４−１〜４−ｍは、多ビット展開後のビット数に対応した分のレジスタを備えることとする。読出し制御部１０は、受信パケットをセレクタ３−１〜３−ｍを用いてそれぞれインタリーブさせて通過させるよう制御する。また、セレクタ３−１〜３−ｍは、ｎ入力１出力のセレクタとする。送信用バッファ５ａは、実施の形態１の３ｔｏ１  Selector５１−１〜５１−３２の代わりに、たとえば、（ｍ＋１）入力１出力のセレクタを多ビット展開後のビット数に対応するビット数分備えることとする。以上述べた以外の本実施の形態の動作は、実施の形態１と同様である。
【００４５】
以上のように、本実施の形態では、セレクタ３−１〜３−ｍおよびＩＦＧ挿入回路４−１〜４−ｍを備えるようにしたので、さらに高速化が進み、ＩＦＧが同一クロックの間に（ｍ−１）個現れるケースについても適切なサイズのＩＦＧが適切な位置に挿入されたパケットをワイヤレートで出力することができる。
【産業上の利用可能性】
【００４６】
以上のように、本発明にかかるパケット多重回路およびパケット多重方法は、複数の受信経路で受信した受信パケットを多重化するパケット多重回路に有用であり、特に、高速化した回線速度に対応する多重回路に適している。
【符号の説明】
【００４７】
１−１〜１０，１−ｎ  受信パケット検出部
２−１〜２−１０，２−ｎ，９  ＦＩＦＯメモリ
３−１，３−２，３−ｍ，１０３  セレクタ
４−１，４−２，４−ｍ  ＩＦＧ挿入回路
４１−１〜４１−３２，４２−１，４３−１〜４３−３２，４４−１，４５−１〜４５−３２，４６−１  ＦＦ
５１−１〜５１−３  ３to１  Selector
５，５ａ  送信用バッファ
６  パケット長カウンタ
７  到着完了検出回路
８  多重化順序生成回路
１０  読出し制御部
１１  ＩＦＧ挿入回路制御部
１２  制御部
Ｐ１〜Ｐ１１，Ｐ２１−１〜Ｐ２１−４  パケット
【図１】
2011004181.tif 000003
【図２】
2011004181.tif 000004
【図３】
2011004181.tif 000005
【図４】
2011004181.tif 000006
【図５】
2011004181.tif 000007
【図６】
2011004181.tif 000008
【図７】
2011004181.tif 000009