説明

シリアル転送装置及び方法

【課題】受信側でのデータの待ち合わせ時間を短くし、送信側と受信側との間に生ずるレイテンシを小さくする。
【解決手段】シリアル転送装置1は、データを送信する送信部2と、データを受信する受信部3と、送信部2と受信部3とを接続し、データを伝送する複数のシリアル伝送路4と、受信部3において、各シリアル伝送路4のスキューに関するレーン間スキュー情報を生成し、レーン間スキュー情報を送信部2に送信するレーン間スキュー情報生成部5と、送信部2において、レーン間スキュー情報に基づいてデータの各シリアル伝送路4への振り分けを決定する変換ルールを生成するデータ変換ルール生成部6とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のシリアル伝送路を用いたシリアル転送技術に関するものである。
【背景技術】
【0002】
PCI−Express(登録商標)のような複数レーンを備える一般的なシリアルインターフェースは、図8に例示するように、送信部101にパラレル−シリアル変換回路301と、変換したデータを転送するための2本以上のシリアル伝送路304,305,306,307とを備え、受信部102に前記シリアル伝送路304,305,306,307の状態や設計の誤差により生じる各シリアル伝送路304,305,306,307のスキュー(以降このスキューをレーン間スキューとする)を補正するデスキュー回路302と、受信したデータをシリアルからパラレルに変換するシリアル−パラレル変換回路303とを備えている。
【0003】
図8に示すシリアルインターフェースにおいては、データが前記送信部101のデータ転送部201のパラレル−シリアル変換回路301によりパラレルデータからシリアルデータに変換され、前記シリアル伝送路304,305,306,307を介して前記受信部102に転送される。前記受信部102では、前記送信部101から転送されたシリアルデータに対してデータ受信部202内の前記デスキュー回路302により前記レーン間スキューの補正が行われる。前記デスキュー回路302により補正され出力されたシリアルデータは、前記シリアル−パラレル変換回路303によりパラレルデータに変換され外部に出力される。
【0004】
上記のように、前記送信部101から前記受信部102までの前記各シリアル伝送路304,305,306,307間において、前記レーン間スキューが発生する。前記デスキュー回路302は、前記レーン間スキューを補正するために、転送データの待ち合わせを行う。この待ち合わせは、前記パラレル−シリアル変換回路301により変換されたシリアルデータを、前記シリアル−パラレル変換回路303によりパラレルデータに戻すために必要な処理である。
【0005】
特許文献1は、複数の高速シリアルデータ経路を用いた伝送技術において、送信側で前記レーン間スキュー及び転送パケットの大きさに基づいて各レーンに転送するパケットを決定し、これらのレーン毎にフルパケットで送信する(一般的なシリアル転送であればパケットを各レーンに分割して送信する)ことにより、受信側のデスキューバッファを不要にする態様が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特表2009−525625号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記のように、図8に示すような従来のシリアルインターフェースにおいては、前記送信部101から前記受信部102へデータを転送する際に前記レーン間スキューが発生し、その対策が前記受信部101側のみで行われていた。そのため、すべてのデータが前記受信部102側に揃うまで前記待ち合わせが行われ、前記レーン間スキューが最も大きいレーンに合わせてレイテンシが大きくなるという問題がある。
【0008】
また、上記特許文献1に開示される態様によっても、上記のようなレイテンシの増大に係る問題を解決することはできない。
【0009】
そこで、本発明は、受信側でのデータの待ち合わせ時間を短くし、送信側と受信側との間に生ずるレイテンシを小さくすることを目的とする。
【課題を解決するための手段】
【0010】
本発明の一態様は、データを送信する送信部と、前記データを受信する受信部と、前記送信部と前記受信部とを接続し、前記データを伝送する複数のシリアル伝送路と、前記受信部において、前記各シリアル伝送路のスキューに関するレーン間スキュー情報を生成し、前記レーン間スキュー情報を前記送信部に送信するレーン間スキュー情報生成部と、前記送信部において、前記レーン間スキュー情報に基づいて前記データの前記各シリアル伝送路への振り分けを決定する変換ルールを生成するデータ変換ルール生成部とを備えるシリアル転送装置である。
【0011】
また、本発明の他の態様は、受信側で取得された複数のシリアル転送部のスキューに関するレーン間スキュー情報を送信側に伝達するステップと、前記伝達されたレーン間スキュー情報に基づいて前記送信側において前記各シリアル転送部へのデータの振り分けを決定するステップとを備えるシリアル転送方法である。
【発明の効果】
【0012】
本発明によれば、前記レーン間スキュー情報が前記受信部から前記送信部に送られる。そして、前記送信部において前記スキュー情報に基づいて前記変換ルールが生成され、前記各シリアル伝送路へのデータの振り分けが決定される。即ち、受信側で取得された前記レーン間スキュー情報に基づいて、送信側でデータフレームフォーマットの最適化が行われる。これにより、受信側でのデータの待ち合わせ時間を短くすることができ、送信側と受信側との間に生ずるレイテンシを小さくすることができる。
【図面の簡単な説明】
【0013】
【図1】本発明の実施の形態1に係るシリアル転送装置の機能的な構成を示す図である。
【図2】実施の形態1に係るシリアル転送装置の具体的な構成を例示する図である。
【図3】図2に示すシリアル転送装置の動作を示すフローチャートである。
【図4】実施の形態1に係るシリアル転送装置による第1の転送例を示す図である。
【図5】実施の形態2に係るシリアル転送装置による第2の転送例を示す図である。
【図6】第1の転送例に対応するデータ変換ルールを例示する表図である。
【図7】第2の転送例に対応するデータ変換ルールを例示する表図である。
【図8】従来のシリアルインターフェースの構成を例示する図である。
【発明を実施するための形態】
【0014】
実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の実施の形態1に係るシリアル転送装置1の機能的な構成を示している。前記シリアル転送装置1は、データを送信する送信部2と、前記データを受信する受信部3と、前記送信部2と前記受信部3とを接続し、前記データを伝送する複数のシリアル伝送路4と、前記受信部3において、前記各シリアル伝送路4のスキューに関するレーン間スキュー情報を生成し、前記レーン間スキュー情報を前記送信部2に送信するレーン間スキュー情報生成部5と、前記送信部2において、前記レーン間スキュー情報に基づいて前記データの前記各シリアル伝送路4への振り分けを決定する変換ルールを生成するデータ変換ルール生成部6とを有する。
【0015】
上記構成によれば、前記レーン間スキュー情報が前記受信部3から前記送信部2に送られる。そして、前記データ変換ルール生成部6において前記スキュー情報に基づいて前記変換ルールが生成され、前記各シリアル伝送路4へのデータの振り分けが決定される。
【0016】
図2は、前記シリアル転送装置1の具体的な構成を例示している。前記送信部2は、前記レーン間スキューを考慮して複数レーン、即ち各シリアル伝送路4A,4B,4C,4Dに対するデータのフレームフォーマットを変更するための前記変換ルールを決める前記データ変換ルール生成部6と、データ転送部13とを有する。前記データ転送部13は、パラレルデータをシリアルデータに変換するパラレル−シリアル変換回路15と、シリアルデータを前記データ変換ルール生成部12から通知されたルールに基づいてデータ変換を行うデータ変換部16とを有する。
【0017】
前記送信部2の前記データ変換部16により変換されたシリアルデータは、前記シリアル伝送路4A,4B,4C,4Dを介して、前記受信部3に転送される。本実施の形態に係るシリアル伝送路4A,4B,4C,4Dは4本であるが、本発明はこれに限定されるものではなく、2本以上であればよい。
【0018】
前記受信部3は、前記レーン間スキュー情報を生成し通知する前記レーン間スキュー情報生成部5と、データ受信部32とを有する。前記データ受信部32は、前記レーン間スキューを補正するデスキュー回路34と、前記データ変換部16で変更された前記フレームフォーマットからデータを元の形に戻すデータデコード部35と、シリアルデータをパラレルデータに変換するシリアル−パラレル変換回路36を有する。
【0019】
図4は、上記構成のシリアル転送装置1の動作を示している。シリアルリンク確立フェーズで、データの前記フレームフォーマットルールとデコードルールとを前記送信部2と前記受信部3とへリンク確立時のトレーニング情報と交換し設定を行う。前記フレームフォーマットルールは前記レーン間スキューを考慮して設定される。
【0020】
前記送信部2は一般的に行われるテスト接続中に前記レーン間スキューを測定するため、前記受信部3に前記レーン間スキューを測定するためのコマンドを送信する(S1)。前記コマンドを受信した前記受信部3はレーン毎のコマンドの到着時間から前記レーン間スキューを測定する(S2)。
【0021】
前記受信部3の前記レーン間スキュー情報生成部5は、測定された前記レーン間スキュー情報を生成する(S3)。生成する情報としては、最も早く前記コマンドが到着したレーンを基準とした場合の時間差等が好適である。前記レーン間スキュー情報生成部5は取得した前記レーン間スキュー情報を、前記シリアル伝送路4A,4B,4C,4Dを介して前記送信部2の前記データ変換ルール生成部6に通知する(S4)。前記データ変換ルール生成部6は通知された前記レーン間スキューの情報に基づいて前記データ変換ルールを決定し、前記データ転送部13の前記データ変換部16に設定する(S5)。前記データ変換ルール生成部6は前記シリアル伝送路4A,4B,4C,4Dを介して、前記データ変換ルールを前記受信部3の前記データデコード部35にも通知する。前記データデコード部35は転送されてくるシリアルデータの前記デコードルールを設定する(S6)。以上の動作を実施した後にデータ転送を開始する。
【0022】
次に前記データ変換ルール生成部6の動作(S5)の説明をする。前記データ変換ルール生成部6は、前記レーン間スキューに関する情報に基づいて、早く転送できるレーン(前記シリアル伝送路4A,4B,4C,4D)に対して多くのデータを転送させることにより前記受信部3にできるだけ早くすべてのデータが到着するような並び替えルールを生成する。
【0023】
ここで転送例を2つ説明する。これらの説明で使用するデータはbit単位であり、レーンは2本である。まず図4に示す例1において、図6に示す変換ルールを適応することでレイテンシが1T短くなる場合を説明する。例1では転送データは4bitで、レーン0が1T、レーン1が3Tのスキューを持ち、前記レーン間スキューの差が2Tとなる場合であるため、前記変換ルールとして図6に示す表中3番のルールが適用される。この場合、通常転送ではRECEIVE側にすべてのデータが揃うのは、転送開始から5T後となり、その後パラレルデータとして4bitを出力できるようになる。対して本実施の形態に係る転送の場合、スキューが少ないレーン0でbit0,bit1,bit2を転送し、レーン1でbit3を転送することで、RECEIVE側にすべてのデータが揃うのは4T後となり、レイテンシが1T改善される。
【0024】
次に図5に示す例2において、図7に示す変換ルールを適応することでレイテンシが2T短くなる場合について説明する。例2では転送データが6bitで、レーン0が1T、レーン1が5Tのスキューを持ち、前記レーン間スキューの差が4となる場合であるため、前記変換ルールとして図7に示す表中5番のルールが適用される。この場合、通常転送ではRECEIVE側にすべてのデータが揃うのは、転送開始から8T後となり、その後パラレルデータとして8bitを出力できるようになる。対して本実施の形態に係る転送の場合、スキューが少ないレーン0でbit0,bit1,bit2,bit3,bit4を転送し、レーン1でbit5を転送することで、RECEIVE側にすべてのデータが揃うのは6T後となり、レイテンシが2T改善される。
【0025】
以上のように、本実施の形態に係るシリアル転送装置1によれば、前記レーン間スキュー情報を、リンクトレーニング情報として前記受信部3から前記送信部2に送り、前記送信部2でスキュー情報に基づいてデータの転送順序や使用レーンを変更し、前記データフレームフォーマットを最適化することができる。そして、前記受信部3で変更されたデータフレームフォーマット情報に基づいてデータのデコードを行うことにより、前記受信部3でのデータ待ち合わせ時間を短くすることができ、レイテンシを短くできる。
【0026】
尚、本発明は上記実施の形態に限られるものではなく、趣旨を逸脱しない範囲で適宜変更することが可能なものである。
【符号の説明】
【0027】
1 シリアルインターフェース
2 送信部
3 受信部
4(4A,4B,4C,4D) シリアル伝送路
5 レーン間スキュー情報生成部
6 データ変換ルール生成部
13 データ転送部
15 パラレル−シリアル変換回路
16 データ変換部
32 データ受信部
34 デスキュー回路
35 データデコード部
36 シリアル−パラレル変換回路

【特許請求の範囲】
【請求項1】
データを送信する送信部と、
前記データを受信する受信部と、
前記送信部と前記受信部とを接続し、前記データを伝送する複数のシリアル伝送路と、
前記受信部において、前記各シリアル伝送路のスキューに関するレーン間スキュー情報を生成し、前記レーン間スキュー情報を前記送信部に送信するレーン間スキュー情報生成部と、
前記送信部において、前記レーン間スキュー情報に基づいて前記データの前記各シリアル伝送路への振り分けを決定する変換ルールを生成するデータ変換ルール生成部と、
を備えるシリアル転送装置。
【請求項2】
前記送信部は、
前記データ変換ルール生成部と、
パラレルデータをシリアルデータに変換するパラレル−シリアル変換回路と、
前記パラレル−シリアル変換回路により変換されたシリアルデータを前記変換ルールに従って前記各シリアル伝送路に振り分けるデータ変換部と、
を備え、
前記受信部は、
前記レーン間スキュー情報生成部と、
前記各シリアル伝送路から入力される各シリアルデータの待ち合わせを行うデスキュー回路と、
前記変換ルールに基づいて、前記デスキュー回路を介して取得されたシリアルデータに対してデコード処理を行うデータデコード部と、
前記シリアルデータをパラレルデータに変換するシリアル−パラレル変換回路と、
を備える、
請求項1に記載のシリアル転送装置。
【請求項3】
前記レーン間スキュー情報は、前記シリアル伝送路を介して伝送される、
請求項1又は2に記載のシリアル転送装置。
【請求項4】
前記レーン間スキュー情報は、リンクトレーニング情報として伝送される、
請求項3に記載のシリアル転送装置。
【請求項5】
前記変換ルールは、前記シリアル伝送路を介して伝送される、
請求項1〜4のいずれか1つに記載のシリアル転送装置。
【請求項6】
受信側で取得された複数のシリアル転送部のスキューに関するレーン間スキュー情報を送信側に伝達するステップと、
前記伝達されたレーン間スキュー情報に基づいて前記送信側において前記各シリアル転送部へのデータの振り分けを決定するステップと、
を備えるシリアル転送方法。
【請求項7】
前記データの振り分けを決定する変換ルールを前記送信側から前記受信側へ送信するステップと、
前記受信側において前記変換ルールに基づいて受信したデータを前記振り分け前の状態に復元するステップと、
を更に備える請求項6に記載のシリアル転送方法。
【請求項8】
前記レーン間スキュー情報は、リンクトレーニング情報として伝送される、
請求項6又は7に記載のシリアル転送方法。
【請求項9】
前記受信側においてパラレルデータをシリアルデータに変換するステップと、
前記送信側においてシリアルデータをパラレルデータに変換するステップと、
を更に備える請求項6〜8のいずれか1つに記載のシリアル転送方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−160287(P2011−160287A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−21468(P2010−21468)
【出願日】平成22年2月2日(2010.2.2)
【出願人】(000168285)エヌイーシーコンピュータテクノ株式会社 (572)
【Fターム(参考)】