(57)【要約】【課題】再送の頻度を少なくして転送レート及び信号品質を安定させることができるシリアルデータ通信装置を提供する。【解決手段】リンクトレーニング制御部２２が、リンクトレーニング中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定されたエラー数の閾値を超えたレーンを検出した際は、エラー数の閾値を超えたレーンを除いてリンクアップする。【選択図】図２
2010183134.tif 000002
【特許請求の範囲】
【請求項１】
複数のシリアル伝送路を用いて通信を行う際に、前記シリアル伝送路の使用する数および通信速度を通信相手のそれらと整合させる、リンクトレーニング動作を行うリンクトレーニング制御部を備えたシリアルデータ通信装置において、
前記複数のシリアル伝送路それぞれから送信されてくるデータのエラーを検出するエラー検出部と、
前記エラー検出部が検出した前記複数のシリアル伝送路それぞれから送信されてくるデータのリセット解除後からのエラー数を集計するエラー集計部と、
予め定めた前記シリアル伝送路当たりのエラー数の閾値が設定されるエラー閾値設定部と、
前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出する検出部と、
が設けられ、そして、
前記リンクトレーニング制御部が、前記検出部が検出した前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を除いて前記シリアル伝送路の数および通信速度を通信相手と整合させるように構成されている
ことを特徴とするシリアルデータ通信装置。
【請求項２】
複数のシリアル伝送路を用いて通信を行う際に、前記シリアル伝送路の使用する数および通信速度を通信相手のそれらと整合させるリンクトレーニング動作を行うリンクトレーニング制御部を備えたシリアルデータ通信装置において、
前記複数のシリアル伝送路それぞれから送信されてくるデータのエラーを検出するエラー検出部と、
前記エラー検出部が検出した前記複数のシリアル伝送路それぞれから送信されてくるデータのリセット解除後からのエラー数を集計するエラー集計部と、
予め定めた前記シリアル伝送路当たりのエラー数の閾値が設定されるエラー閾値設定部と、
前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出する検出部と、
が設けられ、そして、
前記リンクトレーニング制御部が、前記検出部が前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出した際は、再度前記リンクトレーニング動作をやり直した後に前記シリアル伝送路の数および通信速度を通信相手と整合させるように構成されていることを特徴とするシリアルデータ通信装置。
【請求項３】
前記エラー集計部におけるエラー数の集計を一定時間に区切るタイマが設けられ、そして、
前記検出部が、前記タイマによって区切られた一定時間内の前記エラー集計部で集計されたエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出するように構成されていることを特徴とする請求項１または２に記載のシリアルデータ通信装置。
【請求項４】
前記エラー閾値設定部が、レジスタにより構成されていることを特徴とする請求項１乃至３のうちいずれか一項に記載のシリアルデータ通信装置。
【請求項５】
前記エラー集計部が集計した過去のエラー集計値に基づいて前記閾値を決定する閾値決定部が設けられ、そして、
前記閾値決定手段が決定した前記閾値が、前記エラー閾値設定部に設定されることを特徴とする請求項１乃至４のうちいずれか一項に記載のシリアルデータ通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
複数のシリアル伝送路を持ち、各シリアル伝送路の受信データエラー数が集計可能な高速シリアルデータ通信装置に関する。
【背景技術】
【０００２】
従来、画像データその他のデータを扱う機器・システムでは、デバイス間のインタフェースにＰＣＩ（Peripheral Components Interconnect）バスが使用されていた。しかし、パラレル伝送方式のＰＣＩバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像機器に使用するには、転送レートが低くなっており、最近では、ＰＣＩバスのようなパラレル伝送方式のインタフェースに代えて、高速シリアル伝送方式のインタフェースの使用が検討されている。
【０００３】
一般的に広く用いられているシリアル伝送インタフェースとしてはＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４やＵＳＢ（Universal Serial Bus）等の規格があるが、ＰＣＩバスと比較した場合は転送レートが不足しており、さらにスケーラブルなバス幅確保が困難等の不具合がある。このため、新たな高速シリアルインタフェースとして、ＰＣＩバス方式の後継規格に当るＰＣＩ  Ｅｘｐｒｅｓｓ（登録商標）規格によるインタフェースを使用したシステムや装置等が提案されている（例えば、特許文献１、２参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＰＣＩ  Ｅｘｐｒｅｓｓ規格においては、受信側において受信エラーがあった場合は受信したパケットは無効として破棄され、もしそのエラーがＬＣＲＣ（Link CRC）エラーであれば送信側にＮＡＫ（Not Acknowledge）パケットを返送するか、または、ＡＣＫ（Acknowledge）パケットを返送しないことによるタイムアウトで、送信側から再送させる仕組みがある。この機能により信号の内容が保証されるが、再送の回数が多くなると実効転送レートが遅くなり、信号の品質が低下してしまう。このため、一定の転送レートが必要なアプリケーションにおいては、突発的な転送レートの低下は障害の要因となるという問題があった。
【０００５】
特に複数のレーン（シリアル伝送路）構成で通信を行った場合に、特定のレーンの信号品質が悪いと、他のレーンの信号品質に問題が無くても全体の転送レート及び信号品質に悪影響を与えてしまう。
【０００６】
本発明はかかる問題を解決することを目的としている。
【０００７】
すなわち、本発明は、再送の頻度を少なくして転送レート及び信号品質を安定させることができるシリアルデータ通信装置を提供することを目的としている。
【課題を解決するための手段】
【０００８】
請求項１に記載された発明は、複数のシリアル伝送路を用いて通信を行う際に、前記シリアル伝送路の使用する数および通信速度を通信相手のそれらと整合させる、リンクトレーニング動作を行うリンクトレーニング制御部を備えたシリアルデータ通信装置において、前記複数のシリアル伝送路それぞれから送信されてくるデータのエラーを検出するエラー検出部と、前記エラー検出部が検出した前記複数のシリアル伝送路それぞれから送信されてくるデータのリセット解除後からのエラー数を集計するエラー集計部と、予め定めた前記シリアル伝送路当たりのエラー数の閾値が設定されるエラー閾値設定部と、前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出する検出部と、が設けられ、そして、前記リンクトレーニング制御部が、前記検出部が検出した前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を除いて前記シリアル伝送路の数および通信速度を通信相手と整合させるように構成されていることを特徴とするシリアルデータ通信装置である。
【０００９】
請求項２に記載された発明は、複数のシリアル伝送路を用いて通信を行う際に、前記シリアル伝送路の使用する数および通信速度を通信相手のそれらと整合させるリンクトレーニング動作を行うリンクトレーニング制御部を備えたシリアルデータ通信装置において、前記複数のシリアル伝送路それぞれから送信されてくるデータのエラーを検出するエラー検出部と、前記エラー検出部が検出した前記複数のシリアル伝送路それぞれから送信されてくるデータのリセット解除後からのエラー数を集計するエラー集計部と、予め定めた前記シリアル伝送路当たりのエラー数の閾値が設定されるエラー閾値設定部と、前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出する検出部と、が設けられ、そして、前記リンクトレーニング制御部が、前記検出部が前記リンクトレーニング動作中に前記エラー集計部が集計したエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出した際は、再度前記リンクトレーニング動作をやり直した後に前記シリアル伝送路の数および通信速度を通信相手と整合させるように構成されていることを特徴とするシリアルデータ通信装置である。
【００１０】
請求項３に記載された発明は、請求項１または２に記載された発明において、前記エラー集計部におけるエラー数の集計を一定時間に区切るタイマが設けられ、そして、前記検出部が、前記タイマによって区切られた一定時間内の前記エラー集計部で集計されたエラー数が前記エラー閾値設定部に設定された前記閾値を超えた前記シリアル伝送路を検出するように構成されていることを特徴とする。
【００１１】
請求項４に記載された発明は、請求項１乃至３のうちいずれか一項に記載された発明において、前記エラー閾値設定部が、レジスタにより構成されていることを特徴とする。
【００１２】
請求項５に記載された発明は、請求項１乃至４のうちいずれか一項に記載された発明において、前記エラー集計部が集計した過去のエラー集計値に基づいて前記閾値を決定する閾値決定部が設けられ、そして、前記閾値決定手段が決定した前記閾値が、前記エラー閾値設定部に設定されることを特徴とする。
【発明の効果】
【００１３】
請求項１に記載の発明によれば、検出部が、リンクトレーニング動作中にエラー集計部が集計したエラー数がエラー閾値設定部に設定されたエラー数の閾値を超えたシリアル伝送路を検出した際は、リンクトレーニング制御部がエラー数の閾値を超えたシリアル伝送路を除いてシリアル伝送路の数および通信速度を通信相手と整合させているので、エラー数の多いシリアル伝送路を除外することにより受信エラーによる再送の頻度を少なくすることが可能となる。このようにするとリンク幅を小さくしているので最大転送レートは下がるが、再送が少なくなることにより、安定した転送レート確保が可能となる。
【００１４】
請求項２に記載の発明によれば、検出部が、リンクトレーニング動作中にエラー集計部が集計したエラー数がエラー閾値設定部に設定されたエラー数の閾値を超えたシリアル伝送路を検出した際は、リンクトレーニング制御部が再度リンクトレーニング動作をやり直した後にシリアル伝送路の数および通信速度を通信相手と整合させているので、特定のシリアル伝送路で電源投入後一定期間状態が安定しないため、受信エラーが多数発生し最大リンク幅でリンクアップできないような場合も、再度リンクトレーニングを行いそのレーンが安定した後にリンクアップすることが可能となり、最大リンク幅による通信が可能となる。
【００１５】
請求項３に記載の発明によれば、エラー集計部におけるエラー数の集計を一定時間ごとに区切るタイマによって、リンクトレーニング動作中にエラー集計部が集計したエラー数が一定時間ごとに区切られるので、一定時間内のエラー数が閾値を超えたシリアル伝送路を検出することができ、エラー判定を敏感にし、リンク幅の調整を適切にして、再送回数を少なくすることが出来る。
【００１６】
請求項４に記載の発明によれば、エラー閾値設定部が、レジスタにより構成されているので、ＣＰＵなどの外部から制御する装置等からエラー閾値を自由に設定でき、システムやアプリケーションに合わせて調整可能となって、様々なシステムやアプリケーションに適用可能となる。
【００１７】
請求項５に記載の発明によれば、エラー集計部が集計した過去のエラー集計値に基づいて閾値を決定する閾値決定部が設けられ、閾値決定手段が決定した前記閾値をエラー閾値設定部に設定しているので、過去のエラー数に基づいたエラー閾値によって、システムおよびアプリケーションにあったリンク幅の調整をでき、再送回数を少なくすることが出来る。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態にかかるシリアルデータ通信装置のブロック図である。
【図２】図１に示したシリアルデータ通信装置における受信側主要部ブロック図である。
【図３】図１に示したシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【図４】本発明の第２の実施形態にかかるシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【図５】本発明の第３の実施形態にかかるシリアルデータ通信装置のブロック図である。
【図６】図５に示したシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【図７】本発明の第２の実施形態に集計期間タイマの制御を追加したフローチャートである。
【図８】本発明の第４の実施形態にかかるシリアルデータ通信装置のブロック図である。
【図９】本発明の第３の実施形態にＣＰＵを追加したブロック図である。
【図１０】本発明の第５の実施形態にかかるシリアルデータ通信装置のブロック図である。
【図１１】本発明の第３の実施形態にエラー数記録閾値再設定部を追加したブロック図である。
【発明を実施するための形態】
【００１９】
［第１実施形態］
以下、本発明の第１の実施形態を、図１および図２を参照して説明する。図１は、本発明の第１の実施形態にかかるシリアルデータ通信装置のブロック図である。図２は、図１に示したシリアルデータ通信装置における受信側主要部ブロック図である。図３は、図１に示したシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【００２０】
図１に示したシリアルデータ通信装置１は、物理層処理部２と、データリンク層処理部３と、トランザクション層処理部４と、を備えている。図１に示したシリアルデータ通信装置１は、ＰＣＩ  Ｅｘｐｒｅｓｓ規格に定められた通信を行う装置である。
【００２１】
物理層処理部２は、受信部２１と、リンクトレーニング制御部２２と、送信部２３と、を備えている。ＰＣＩ  Ｅｘｐｒｅｓｓ規格では、送信、受信専用の信号線（シリアル伝送路）を必要とする全二重方式で通信を行い、送信、受信専用の信号線の１組をレーンと呼称する（図１の場合は４レーンの構成例）。そして、物理層処理部２では、レーンから入力されたシリアルデータのパラレルデータへの変換や、データリンク層処理部３から入力されたパラレルデータのシリアルデータへの変換および、後述するリンクトレーニングなどを行う。
【００２２】
受信部２１は、各レーンから入力されたシリアルデータをパラレルデータへ変換してデータリンク層処理部３へ出力する。各レーンから入力されるデータは８Ｂ／１０Ｂエンコーディングされているため、そのデコードを行い、その後、各レーンのデータをパラレルデータに結合してデータリンク層処理部３へ出力する。また、受信部２１は、図２に示したように、エラー検出部２１ａと、エラー集計部２１ｂと、エラー閾値設定部２１ｃと、比較器２１ｄと、を備え、レーンから受信したデータのエラー検出や集計などを行う。
【００２３】
エラー検出部２１ａは、受信データが８Ｂ／１０ＢデコードエラーやＤｉｓｐａｒｉｔｙエラーなどＰＣＩ  Ｅｘｐｒｅｓｓ規格の物理層で検出可能なエラーを検出する。すなわち、複数のシリアル伝送路それぞれから送信されてくるデータのエラーを検出している。
【００２４】
エラー集計部２１ｂは、シリアルデータ通信装置１のリセット解除後のエラー検出部２１ａで検出された累積エラー数をレーン毎に集計する。すなわち、エラー検出部２１ａが検出した複数のシリアル伝送路それぞれから送信されてくるデータのリセット解除後からのエラー数を集計している。
【００２５】
エラー閾値設定部２１ｃは、予め定めたレーン当たりのエラー数の閾値が固定値で設定されている。
【００２６】
比較器２１ｄは、エラー集計部２１ｂで集計したレーン毎の累積エラー数と、エラー閾値設定部２１ｃに設定されたエラー閾値と、を比較し、エラー閾値を超えたレーン番号をリンクトレーニング制御部２２へ出力する。
【００２７】
リンクトレーニング制御部２２は、ＰＣＩ  Ｅｘｐｒｅｓｓにおいて規定されたリンクトレーニングを行う。リンクトレーニングとは、リセット解除後に通信相手とのネゴシエーションを行う動作であり、リンクトレーニングにおいては通信リンク間の両デバイスがオーダーセットと呼ばれる基本パケットを送受信し、相手とのネゴシエーションを実施し、リンク幅、レーン順序、リンクスピード、受信極性などを決定する。つまり、リンクトレーニング制御部２２が受信部２１や送信部２３を制御して、上述したオーダーセットの送受信を行いネゴシエーションを実施する。
【００２８】
送信部２３は、データリンク層処理部３から入力されたパラレルデータをシリアルデータへ変換し各レーンへ出力する。データリンク層処理部３から入力されたパラレルデータを、各レーンへ分割し８Ｂ／１０Ｂエンコーディングして各レーンへ出力する。
【００２９】
データリンク層処理部３は、主にＰＣＩ  Ｅｘｐｒｅｓｓリンクの管理、エラー検出と訂正を担う。送信側では、トランザクション層処理部４から入力されたＴＬＰ（Transaction Layer Packet）に付加するＣＲＣ（Cyclic Redundancy Check）を算出し、さらにＴＬＰの授受を確認するためのシーケンス・ナンバを付加して物理層処理部２に出力する。受信側ではＣＲＣによるデータ化けチェックと、シーケンス・ナンバによるパケット欠落チェックなどを行う。
【００３０】
トランザクション層処理部４は、主にＴＬＰの生成と復号を担う。ＴＬＰはリードやライトといったコマンドやアドレス、データなどから成る。また、トランザクション層処理部４は接続相手とのフロー制御なども行う。
【００３１】
次に、上述した構成のシリアルデータ通信装置１において、リンクトレーニング時の動作を図３を参照して説明する。
【００３２】
まず、ステップＳ１０１において、リセットを行ってステップＳ１０２に進む。このリセットは、電源投入後のリセットに限らず、ユーザやＣＰＵ等により任意のタイミングで行われる初期化動作に伴うリセットも含む。このリセットにより、エラー集計部２１ｂで集計しているエラー数がクリアされる。
【００３３】
次に、ステップＳ１０２において、リンクトレーニングを開始してステップＳ１０３に進む。すなわち、上述したオーダーセットの送受信を行いネゴシエーションを開始する。
【００３４】
次に、ステップＳ１０３において、エラー集計部２１ｂで集計した受信エラー数とエラー閾値設定部２１ｃに設定されたエラー閾値とを比較器２１ｄで比較し、受信エラー数がエラー閾値を超えたレーンがあるか否か判断する。判断した結果受信エラー数がエラー閾値を超えたレーンがある場合はステップＳ１０４に進み、受信エラー数がエラー閾値を超えたレーンがない場合はステップＳ１０５に進む。すなわち、リンクトレーニング動作中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定された閾値を超えたシリアル伝送路を検出している。
【００３５】
次に、ステップＳ１０４において、エラー閾値を超えたレーンを含まないリンクを構成してリンクアップする。例えば、物理的には８レーン接続であった場合、ある１レーンの受信エラー数が閾値を超えているとそのレーンを含まない４レーンでリンクアップする（リンク幅、レーン順序、リンクスピード、受信極性などを決定する）ことになる。すなわち、リンクトレーニング動作中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定された閾値を超えたシリアル伝送路を検出した際は、閾値を超えたシリアル伝送路を除いてシリアル伝送路の数および通信速度を通信相手と整合させている。なお、８レーン接続時に１レーンを含まないでリンクアップすると７レーンでなく４レーンになるのは、ＰＣＩ  Ｅｘｐｒｅｓｓ規格ではレーン数は１，２，４，８，１６のいずれかと規定されているためである。
【００３６】
本実施例によれば、リンクトレーニング制御部２２が、リンクトレーニング中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定されたエラー数の閾値を超えたレーンを検出した際は、その閾値を超えたレーンを除いてリンクアップしているので、信号品質の低いレーンを排除して受信エラーによる再送の頻度を少なくすることが可能となる。このようにするとリンク幅を小さくしているので最大転送レートは下がるが、再送が少なくなることにより、安定した転送レート確保が可能となる。
【００３７】
また、従来は有効パケット受信中に発生した受信エラーのみで通信制御（再送など）されていたが有効パケットを受信していない時にもアイドルデータを受信しているので受信エラーが起こり得る。本実施形態ではアイドルデータの受信時も含めて受信エラーを集計し、そのレーンの信号品質を判断することにより、有効パケット送受信する前に潜在的な信号品質の劣化を判断することができる。
【００３８】
［第２実施形態］
次に、本発明の第２の実施形態を図４を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。図４は、本発明の第２の実施形態にかかるシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【００３９】
本実施形態では、ブロック図は第１の実施形態と同様であるが、リンクトレーニング制御部２２における制御が異なる。詳細を図４のフローチャートを参照して説明する。
【００４０】
まず、ステップＳ１０１、Ｓ１０２は第１の実施形態と同様である。ステップＳ１０２から進んだステップＳ２０３において、エラー集計部２１ｂで集計した受信エラー数とエラー閾値設定部２１ｃに設定されたエラー閾値とを比較器２１ｄで比較し受信エラー数がエラー閾値を超えたレーンがあり、かつ、再トレーニング回数が予め設定された規定値以下であるか否かを判断し、受信エラー数がエラー閾値を超えたレーンがあり、かつ、再トレーニング回数が予め設定された規定値以下である場合はステップＳ１０２に戻り、そうでない場合はステップＳ２０４に進む。つまり、受信エラー数がエラー閾値を超えたレーンがある場合はステップＳ１０２に戻って再トレーニングを行うが、その回数に上限を示す規定値を設けている。再トレーニングを何度か行い上限を示す規定値を超えた場合はステップＳ１０４に進む。勿論受信エラー数がエラー閾値を超えたレーンが無い場合もステップＳ１０４に進む。すなわち、リンクトレーニング動作中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定された閾値を超えたシリアル伝送路を検出した際は、再度リンクトレーニング動作をやり直した後にシリアル伝送路の数および通信速度を通信相手と整合させている。
【００４１】
次に、ステップＳ２０４において、リンクアップして終了する。なお、本ステップに受信エラー数がエラー閾値を超えたレーンがある状態で移動した場合は第１の実施形態と同様にエラー閾値を超えたレーンを含まないリンクを構成してリンクアップする。
【００４２】
本実施形態によれば、リンクトレーニング制御部２２が、リンクトレーニング中にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定されたエラー数の閾値を超えたレーンを検出した際は、再リンクトレーニングを最大規定回数までやり直した後にリンクアップしているので、例えばある１レーンで電源投入後一定区間状態が安定しないため、受信エラーが多数発生し最大リンク幅でリンクアップできないような場合も、再度リンクトレーニングを行いそのレーンが安定した後にリンクアップすることが可能となり最大リンク幅による通信が可能となる。
【００４３】
［第３実施形態］
次に、本発明の第３の実施形態を図５および図６を参照して説明する。なお、前述した第１、第２の実施形態と同一部分には、同一符号を付して説明を省略する。図５は、本発明の第３の実施形態にかかるシリアルデータ通信装置のブロック図である。図６は、図５に示したシリアルデータ通信装置のリンクトレーニング時の動作のフローチャートである。
【００４４】
本実施形態では、第１の実施形態に対して集計期間タイマ２１ｅが追加されている点が異なる。
【００４５】
集計期間タイマ２１ｅは、設定された一定時間ごとにエラー集計部２１ｂにパルスを出力し、エラー集計部２１ｂではそのパルスでエラー数の集計がリセットされる。すなわち、エラー集計部２１ｂにおけるエラー数の集計を一定時間に区切っている。
【００４６】
本実施例におけるリンクトレーニング時の動作を図６を参照して説明する。
【００４７】
まず、ステップＳ１０１、Ｓ１０２は第１の実施形態と同様である。ステップＳ１０２から進んだＳ３０３において、集計期間タイマ２１ｅを開始（スタート）させてステップＳ３０４に進む。
【００４８】
次に、ステップＳ３０４において、集計期間タイマ２１ｅが完了（タイムアウト）したか否かを判断し、完了した場合はステップＳ３０５へ進み、完了していない場合はステップＳ１０３へ進む。ステップＳ１０３以降は第１の実施形態と同様である。
【００４９】
次に、ステップＳ３０５においてエラー集計部２１ｂの受信エラー数をリセットしてステップＳ３０３に戻る。つまり、ステップＳ３０４で集計期間タイマ２１ｅが完了（タイムアウト）したので、エラー集計部２１ｂの受信エラー数をリセットしている。
【００５０】
本実施形態では、集計期間タイマ２１ｅが動作する一定時間内のエラー数がエラー閾値を超えたか否かを判断し、エラー閾値を超えたレーンを検出した場合は第１の実施形態と同様に、エラー閾値を超えたレーンを除いてリンクアップしている。すなわち、タイマが区切った一定時間内にエラー集計部２１ｂが集計したエラー数がエラー閾値設定部２１ｃに設定された閾値を超えたシリアル伝送路を検出している。
【００５１】
本実施形態によれば、集計期間タイマ２１ｅを設けて一定期間間隔でエラー数の集計を行うので、突発的に信号品質が悪くなった場合も検出することができる。その検出がリンクトレーニング中であれば、検出したレーンを含まないリンクを構成し、リンクアップすることが出来る。
【００５２】
なお、上述した集計期間タイマ２１ｅは第２の実施形態に追加しても良い。第２の実施形態に集計期間タイマ２１ｅの制御を追加したフローチャートを図７に示す。図７のフローチャートは、リンクトレーニング開始後、集計期間タイマ２１ｅ起動し、集計期間タイマ２１ｅが完了すると受信エラーをリセットする。この動作により、一定時間のエラー数を集計しその値で信号品質を判定することができる。受信エラー数がエラー閾値を超えた時、再トレーニングを行うが、再トレーニング回数が規定値を超えるとそのままリンクアップする。
【００５３】
［第４実施形態］
次に、本発明の第４の実施形態を図８を参照して説明する。なお、前述した第１乃至第３の実施形態と同一部分には、同一符号を付して説明を省略する。図８は、本発明の第４の実施形態にかかるシリアルデータ通信装置のブロック図である。
【００５４】
本実施形態では、第１の実施形態に対してＣＰＵ２１ｆを追加し、エラー閾値設定部２１ｃがレジスタで構成されている点が異なる。
【００５５】
ＣＰＵ２１ｆは、エラー閾値設定部２１ｃに対してエラー閾値の設定を変更するための制御ＣＰＵであり、エラー閾値設定部２１ｃのレジスタ値を変更することでエラー閾値を変更する。なお、エラー閾値設定部２１ｃを構成するレジスタはレジスタに限らずメモリなど書き換え可能な素子であればよい。
【００５６】
本実施形態によれば、エラー閾値設定部がレジスタにより構成されているので、エラー閾値を自由に変更することができ、システムやアプリケーションにあわせて調整可能となる。そのため、リンク幅を必要以上に落とすことをさけられ、また再起動の回数を適切にすることができる。
【００５７】
なお、上述したＣＰＵ２１ｆを第２または第３の実施形態に追加し、エラー閾値設定部２１ｃをレジスタで構成しても良い。第３の実施形態にＣＰＵ２１ｆを追加したブロック図を図９に示す。図９の構成においてもエラー閾値をＣＰＵ２１ｆから設定変更できるようになっており、システム構成や動作状況によって変更する。これによりエラー閾値を自由に変更することができるので、システムやアプリケーションにあわせて調整可能である。さらに、第３の実施形態のように一定内のエラー数の集計と判定を行うので、調整の自由度が高くなる。
【００５８】
［第５実施形態］
次に、本発明の第５の実施形態を図１０を参照して説明する。なお、前述した第１乃至第４の実施形態と同一部分には、同一符号を付して説明を省略する。図１０は、本発明の第５の実施形態にかかるシリアルデータ通信装置のブロック図である。
【００５９】
本実施形態では、第１の実施形態に対してエラー数記録閾値再設定部２１ｇが追加し、エラー閾値設定部２１ｃがレジスタで構成されている点が異なる。
【００６０】
閾値決定部としてのエラー数記録閾値再設定部２１ｇは、エラー閾値設定部２１ｃにエラー集計部２１ｂが集計した過去のエラー数に基づいてエラー閾値を設定する。
【００６１】
本実施形態によれば、エラー数記録閾値再設定部２１ｇで過去のエラー数に基づいてエラー閾値を設定しているので、システム構成や動作状況によって調整することができる。これによりシステムやアプリケーションにあわせて調整されるのでリンク幅を必要以上に落とすことをさけられ、また再起動の回数を適切にできる。
【００６２】
なお、上述したエラー数記録閾値再設定部２１ｇを第２または第３の実施形態に追加し、エラー閾値設定部２１ｃをレジスタで構成しても良い。第３の実施形態にエラー数記録閾値再設定部２１ｇを追加したブロック図を図１１に示す。図１１の構成においてもエラー閾値を過去のエラー数をもとにエラー閾値を設定するので、システム構成や動作状況によって調整される。これによりシステムやアプリケーションにあわせて調整されるのでリンク幅を必要以上に落とすことをさけられ、また再起動の回数を適切にできる。さらに、第３の実施形態のように一定時間内のエラー数の集計と判定を行うので、調整の自由度が高くなる。
【００６３】
なお、本発明は上記実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
【符号の説明】
【００６４】
１          シリアルデータ通信装置
２１ａ      エラー検出部
２１ｂ      エラー集計部
２１ｃ      エラー閾値設定部
２１ｄ      比較器（検出部）
２１ｅ      集計期間タイマ
２１ｆ      ＣＰＵ
２１ｇ      エラー数記録閾値再設定部（閾値決定部）
２２        リンクトレーニング制御部
【先行技術文献】
【特許文献】
【００６５】
【特許文献１】特許第３９９６９２８号公報
【特許文献２】特開２００５−１６６０２８号公報
【図１】
2010183134.tif 000003
【図２】
2010183134.tif 000004
【図３】
2010183134.tif 000005
【図４】
2010183134.tif 000006
【図５】
2010183134.tif 000007
【図６】
2010183134.tif 000008
【図７】
2010183134.tif 000009
【図８】
2010183134.tif 000010
【図９】
2010183134.tif 000011
【図１０】
2010183134.tif 000012
【図１１】
2010183134.tif 000013