(57)【特許請求の範囲】
【請求項１】
パルス生成回路と、
クロック制御回路と、
第１クロック生成回路と、
直列並列変換回路と、
エラー検出回路とを有し、
前記パルス生成回路は、前記第１クロック生成回路が生成するクロックのクロック相をインクリメントするオフセット調整パルス信号、又は、前記クロック相をデクリメントするオフセット調整パルス信号を生成し、
前記クロック制御回路は、前記オフセット調整パルス信号により更新されたクロック相を保持し、前記クロック相を示す位相情報を出力し、
前記第１クロック生成回路は、前記位相情報が示すクロック相のクロックであるリカバリークロックを生成し、
前記直列並列変換回路は、前記リカバリークロックを用い、シリアルデータをパラレルデータへ変換し、
前記エラー検出回路は、参照データと前記パラレルデータとを比較し、前記参照データと前記パラレルデータとの一致・不一致を判定するものであり、
前記エラー検出回路は、カウンタ回路を有し、
前記カウンタは、前記参照データと前記パラレルデータとの不一致の回数を、クロック相毎にカウントするものであり、
位相比較器と、
第２クロック生成回路とを有し、
前記位相比較器は、並走クロックレーンを介して送信されるシリアルデータの位相と、前記第２クロック生成回路が発生するリカバリークロックの位相とを比較し、前記第２クロック生成回路のリカバリークロックの位相が遅れている場合には、前記第２クロック生成回路が生成するリカバリークロックのクロック相をインクリメントする位相遅れ信号を、前記第２クロック生成回路のリカバリークロックの位相が進んでいる場合には、前記第２クロック生成回路が生成するリカバリークロックのクロック相をデクリメントする位相進み信号を生成し、
前記クロック制御回路は、前記オフセット調整パルス信号が入力される前に、前記位相遅れ信号、前記位相進み信号により、保持するクロック相を更新することを特徴とする半導体集積回路装置。
【請求項２】
パルス生成回路により、第１クロック生成回路が生成するクロックのクロック相をインクリメントするオフセット調整パルス信号、又は、前記クロック相をデクリメントするオフセット調整パルス信号を生成させ、
クロック制御回路により、前記オフセット調整パルス信号により更新されたクロック相を保持し、前記クロック相を示す位相情報を出力させ、
前記第１クロック生成回路により、前記位相情報が示すクロック相のクロックであるリカバリークロックを生成させ、
直列並列変換回路により、前記リカバリークロックを用い、シリアルデータをパラレルデータへ変換させ、
エラー検出回路により、参照データと前記パラレルデータとを比較し、前記参照データと前記パラレルデータとの一致・不一致を判定させるものであり、
カウンタにより、前記参照データと前記パラレルデータとの不一致の回数をクロック相毎にカウントするものであり、
位相比較器により、並走クロックレーンを介して送信されるシリアルデータの位相と、第２クロック生成回路が発生するリカバリークロックの位相とを比較させ、前記第２クロック生成回路のリカバリークロックの位相が遅れている場合には、前記第２クロック生成回路が生成するリカバリークロックのクロック相をインクリメントする位相遅れ信号を、前記第２クロック生成回路のリカバリークロックの位相が進んでいる場合には、前記第２クロック生成回路が生成するリカバリークロックのクロック相をデクリメントする位相進み信号を生成させ、
前記オフセット調整パルス信号が入力される前に、前記位相遅れ信号、前記位相進み信号により、前記クロック制御回路が保持するクロック相を更新させることを特徴とするアイ開口マージン評価方法。
【請求項３】
請求項２記載のアイ開口マージン評価方法において、
前記不一致の回数が０である位相区間を求めて、アイ開口マージンを評価することを特徴とするアイ開口マージン評価方法。
【請求項４】
請求項２記載のアイ開口マージン評価方法において、
前記評価に基づき、前記シリアルデータを受信し出力する入出力回路の出力振幅を変更することを特徴とするアイ開口マージン評価方法。
【請求項５】
請求項２記載のアイ開口マージン評価方法において、
前記シリアルデータは、前記参照データがシリアル形式のデータとして受信されたものであることを特徴とするアイ開口マージン評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体装置に関し、特に装置間高速データ転送に用いられ、受信データの波形品質の指標としてアイ開口マージン（Ｅye Open Margin）を評価する有効な技術に関するものである。
【背景技術】
【０００２】
近年、装置間の高速データ転送にシリアル転送方式を採用しているものが主流となっている。半導体装置間の高速シリアル伝送において、送信データをパラレルデータからシリアルデータへ変換し、受信データをシリアルデータからパラレルデータへ変換するシリアライザ・デシリアライザ回路(SerDes； Serializer and Deserializer)が用いられる。伝送の高速化にともない伝送路での減衰が顕著となり、シリアライザ・デシリアライザ回路の受信回路において波形品質の評価が重要となる。
【０００３】
高速伝送によって減衰した波形は、クロックデータリカバリー回路（CDR; Clock Data Recovery）によって受信され、復元される。この復元する方式には、エンベデットクロック方式と並走クロック方式がある。
【０００４】
エンベデットクロック方式では、データにクロック情報を埋め込んで送信する。クロックデータリカバリー回路は、受信データからデータとクロックを分離し、受信データを復元する。
【０００５】
並走クロック方式では、データレーンと並走クロックレーンを具備したシリアライザ・デシリアライザ回路の受信回路において、並走クロックレーンのクロックデータリカバリー回路から抽出した位相情報を有するクロックをデータレーンに送り、データレーンのクロックを復元する。並走クロックレーン方式では、高速シリアルデータと同時に並走クロックも伝送し、各データレーンに分配することで高速シリアルデータの送受信が可能である。また、データとクロック間のスキュー(時間差)が発生せず、並走クロックを基準としたデータ受信が可能である。また、並走クロック方式では、エンベデッドクロック方式とは異なり、クロックデータリカバリー回路が通常動作時と同様に受信データの変化に追従した状態(ジッタ成分を含んだ状態)でアイ開口マージン評価が可能である。また、並走クロックは常に1、0の切り替わりをしているため、受信データに同符号が連続しても、クロックデータリカバリー回路からの位相制御信号により受信可能である。このような並走クロックレーンのクロックデータリカバリー回路を具備したシリアライザ・デシリアライザ回路の構成は特許文献1に開示されている。
【０００６】
受信データの波形品質評価の一つとして、アイ開口マージン評価がある。シリアル転送の各仕様でも送信端や受信端でのアイ開口度（Ｅye Open）が定義されている(Compliance Eye Diagrams)。アイ開口マージン評価とは、アイ開口度により、波形信号の全ての遷移を重ね合わせ、タイミングマージンや電圧マージンを一度に評価するものである。
【０００７】
一般的に、アイ開口マージン評価にはエンベデッドクロック方式が用いられる。クロックに同期させたデータを伝送路により転送し、受信側で受信データからクロックデータリカバリー回路によりクロックを抽出し、受信データを復元する。このようなエンベデットクロック方式におけるアイ開口マージン評価は特許文献2に開示されている。
【０００８】
【特許文献１】特開２００３−０１７９９９号公報
【特許文献２】特開２００７−０６０６５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
エンベデッドクロック方式では、アイ開口マージン評価時にクロックデータリカバリー回路で固定のクロック相を作り掃引する。このため、回路は不活性の状態であり、クロックデータリカバリー回路の実動作で発生するジッタ成分は含まれずその分布情報しか得られない。
【００１０】
また、並走クロック方式では、並走クロックレーンのクロックデータリカバリー回路からの位相情報をもったクロックにデータレーンのクロックデータリカバリー回路が追従する。しかし、クロック自体もジッタ成分を持っているため、正確なアイ開口マージン評価が行えない。加えて、Gbpsオーダーの伝送では、高速シリアルデータのレーン間スキューや、並走クロックの分配スキューを考慮すると単純な並走クロック方式では、正確なアイ開口マージン評価が行えない。
【００１１】
以上の点に鑑み、本発明では、高速シリアルデータの受信回路において、高精度なアイ開口マージン評価を行い、特に、データレーンのクロックデータリカバリー回路のジッタ成分を含んだ受信データのアイ開口マージン評価を実現する点を課題とする。
【課題を解決するための手段】
【００１２】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記通りである。即ち、本発明では、並走クロックレーンのクロックデータリカバリー回路からの位相情報により受信データが追従した状態(通常動作)に、並走クロックレーンの位相情報からパルス生成回路のオフセット調整パルス信号に切り替え、所望のパルスを与えることでクロック相を選択し、アイ開口マージン評価を行う半導体装置である。
【発明の効果】
【００１３】
高速シリアルデータの受信回路において、高精度なアイ開口マージン評価を行える。特に、データレーンのクロックデータリカバリー回路のジッタ成分を含んだ受信データのアイ開口マージン評価できる。また、評価回路において、パルス回路生成からのオフセット調整パルスを印加することで、任意にジッタ成分を注入し、エラー加速試験を実現できる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を実施例に基づいて詳細に説明する。図１は本実施形態である半導体装置の高速シリアルデータの伝送系構成を示す図である。高速シリアルデータの送受信システムは、LSI101と、データレーン102および並走クロックレーン103の伝送系とからなる。
【００１５】
LSI101は、高速シリアルデータの送受信が可能な半導体装置である。データレーン102は、LSI101間で生成された高速シリアルデータを伝送する。並走クロックレーン103は、全データレーンを代表する位相情報を有するクロック信号を伝送する。
【００１６】
図2は、図１のLSI（101）詳細を示す図である。複数のシリアライザ・デシリアライザ回路201(SerDes)と参照シリアライザ・デシリアライザ回路202 (Ref_SerDes)、位相同期回路203(PLL，Phase Locked Loop)、制御論理回路204(Control Logic)、イコライザ機能を持つ出力回路205（I/O）で構成される並走クロック方式の高速シリアルデータ通信系と、位相制御信号(P_CS)とオフセットパルス信号(Offset_Pluse)を切り替えるセレクタ回路206、アイ開口マージン評価回路207(アイ-Open Margin Measurement Circuit)で構成される。
【００１７】
シリアライザ・デシリアライザ回路201(SerDes)は、データレーン102において受信した高速シリアルデータをパラレルデータに変換し、LSIで処理したパラレルデータをシリアルデータに変換し送信する。参照シリアライザ・デシリアライザ回路202(Ref_SerDes)は、並走クロックレーン103において、受信した並走クロック(シリアルデータ)をパラレルデータに変換し、パラレルデータをシリアルデータに変換し、並走クロックとして送信する。また、並走クロックから抽出した位相情報をP_CS(UP/FIX/DOWN)信号として各シリアライザ・デシリアライザ回路201(SerDes)に分配する回路である。位相同期回路203(PLL)は、基準クロック（Ref_Clock）を生成し、各回路ブロックへ送信する。制御論理回路204(Control Logic)は、各シリアライザ・デシリアライザ回路(SerDes)に制御信号CS(CS_1、CS_2)を供給する。並走クロックレーンの参照シリアライザ・デシリアライザ回路202(Ref_SerDes)からの位相制御信号P_CSを各データレーンのシリアライザ・デシリアライザ回路201(SerDes)に分配する。アイ開口マージン評価回路207は、モードセレクト信号(Mode Select Signal)によってセレクタ回路206の選択信号を、位相制御信号P_CS(UP/FIX/DOWN)から、オフセット調整パルス信号Offset_Pulse(UP/DOWN)に切り替え、所望のパルスを与えることでシリアライザ・デシリアライザ回路201(SerDes)の各クロック相を選択する。さらに、受信したデータ(Data Pattern)と参照データ(Ref_Data Pattern)を比較し、各クロック相のエラーをカウントする。アイ開口度が基準に達していないとき、イコライザ制御信号E_CSによって入手力回路205（I/O）の最適化を行う。動作についての詳細な説明は以降に行う。
【００１８】
図３(a)は、図２のシリアライザ・デシリアライザ回路201(SerDes)を詳細に示した図である。シリアライザ・デシリアライザ回路201(SerDes)は、直列並列変換回路301(S/P)と、並列直列変換回路302(P/S)と、クロックデータリカバリー回路303（CDR）とで構成される。
【００１９】
直列並列変換回路３０１(S/P)は、シリアル形態である受信データをクロックデータリカバリー回路３０３（CDR）で復元された再生クロック(Recovery Clock)を使って受信し、パラレルデータに変換する。直列並列変換回路３０１は一般的な構成にて実現されるため、詳細な説明は省略する。また、並列直列変換回路３０２は、パラレル形態である送信データをシリアルデータに変換する。並列直列変換回路３０２は、一般的な構成にて実現されるため、詳細な説明は省略する。
【００２０】
ここで、UP_1/FIX_1/DOWN_1は参照シリアライザ・デシリアライザ回路202(SerDes)に具備されたクロックデータリカバリー回路303(CDR)からの位相制御信号P_CSである。シリアライザ・デシリアライザ回路201(SerDes)は、その位相情報を元にシリアルデータの復元を行う。また、パラレルデータは、並列直列変換回路302(P/S)によってシリアルデータに変換され、送信される。基準クロック(Ref_Clock)は、受信側の回路と送信側の回路を同期させている。
【００２１】
図３(b)は、図２の参照シリアライザ・デシリアライザ回路202(SerDes)を詳細に示した図である。図２の参照シリアライザ・デシリアライザ回路202(Ref_SerDes)は並走クロックを受信し、クロックデータリカバリー回路303(CDR)からの位相制御信号P_CS（UP/FIX/DOWN）で各データレーンのシリアライザ・デシリアライザ回路201(SerDes)に分配する。
【００２２】
図4はシリアライザ・デシリアライザ回路201(SerDes)の構成回路であるクロックデータリカバリー回路303(CDR)を詳細に示す図である。クロックデータリカバリー回路303(CDR)は、位相比較器401(Phase Detector)と、平均化回路402(Average Circuit)と、比較回路403(Compare Circuit)と、モード切り替え回路404(Mode Select Circuit)と、クロック制御回路405(Clock Control Circuit)と、クロック生成回路406(Clock Generation Circuit)により構成される。
【００２３】
位相比較器401(Phase Detector)は、入手力回路205（I/O）からの受信データ（Serial Data）とクロック生成回路からの再生クロック(Recovery Clock)の間の位相差から、位相差を表す位相差情報（UP_2/FIX_2/DOWN_2）に変換する。位相差情報として、再生クロックがシリアルデータと比較して位相が遅れていることを示す位相遅れ信号（UP_2）、再生クロックの位相とシリアルデータの位相とのずれが一定範囲内であることを示す位相固定信号（FIX_2）、再生クロックがシリアルデータと比較して位相が進んでいることを示す位相進み信号（DOWN_2）を出力する。なお、再生されたクロック(Recovery Clock)は、直列並列変換回路３０１(S/P)に送信され、シリアルデータをパラレルデータに変換する。
【００２４】
平均化回路402(Average Circuit)は、位相比較器401(Phase Detector)から出力される位相差情報（UP_2/FIX_2/DOWN_2）の時間平均を求める機能を持つ。
【００２５】
比較回路403(Compare Circuit)は、クロックデータリカバリー回路303(CDR)外部からタイミングで、平均化回路402(Average Circuit)からの計数情報と閾値との大小比較が可能である。計数情報と閾値との比較を行い、計数情報が正の値であり且つ正の閾値より大きければ位相進み信号「UP_0」を、計数値が負の値であり且つ負の閾値より小さければ位相遅れ信号「DOWN_0」を、それ以外の場合は位相固定信号「FIX_0」を出力する。なお、閾値は図２の制御論理回路204(Control Logic)からの制御信号CS_1で供給される。
【００２６】
モード切り替え回路404(Mode Select Circuit)は、並走クロックレーン103のクロックデータリカバリー回路303(CDR)が自立的に求めたクロック位相制御信号P_CS(UP_1/FIX_1/DOWN_1)又はアイ開口マージン評価回路からのオフセット調整パルス（UP/DOWN）と各データレーン102のクロックデータリカバリー回路303(CDR)が自立的に求めたUP_0／FIX_0／DOWN_0信号のどちらかを選択し、位相制御信号（UP/FIX/DOWN）として、後段のクロック制御回路405(Clock Control Circuit)へ入力する。
【００２７】
これら信号の選択は図2の制御論理回路204(Control Logic)から供給される制御信号CS_2によって決定される。位相制御信号P_CSが選択されているとき、データレーン102のクロックデータリカバリー回路303(CDR)は並走クロックレーンに追従して高精度なシリアル転送が実現できる。また、クロックデータリカバリー回路303(CDR)を並走クロックレーンに適用した場合、モード切り替え回路404 (Mode Select Circuit) から出力されるUP/FIX/DOWN信号は、位相制御信号P_CSとして、各データレーン102のクロックデータリカバリー回路303(CDR)に分配される。
【００２８】
モード切り替え回路の第１の機能を説明する。通常、クロックデータリカバリー回路303(CDR)へ入力される受信データは、頻繁にデータ値が変わることによりデータエッジが生成される。クロックデータリカバリー回路303(CDR)はその機能として、このデータエッジと再生クロックとの位相差を求めることで、再生クロックの位相を調整している。しかし、受信データに同符号データが連続する場合このデータエッジが生成されず、再生クロックとの有用な位相比較ができない。つまり、連続同符号データに対してはクロックデータリカバリー回路303(CDR)の再生クロックの位相が精度よく制御されないことを意味している。同符号連続データの後にデータの符号が反転した場合、シリアライザ・デシリアライザ回路(SerDes)は受信データを正確に受信できない場合がある。これを防止する為、図２に示すように複数あるシリアライザ・デシリアライザ回路SerDes201(SerDes)のうち1つの参照シリアライザ・デシリアライザ回路SerDes202(Ref_SerDees)への受信データにデータエッジが頻繁に変化するデータ(本実施例ではクロック信号)を使用し、常にデータエッジと再生クロックの有用な位相差情報を求め、再生クロックを制御する為の位相制御信号P_CS(UP／FIX／DOWN)を求める。したがって、参照シリアライザ・デシリアライザ回路２０２が受信する信号は、通常データよりも頻繁にデータの符号が反転するような信号であればよく、規則的に値の変化する並走クロック信号に限定されることなく、たとえば、ランダムに値が変化するような信号であってもよい。シリアライザ・デシリアライザ回路201(SerDes)は、各々が自立的に求めたUP_0／FIX_0／DOWN_0信号と参照シリアライザ・デシリアライザ回路202(Ref_SerDes)が自立的に求めた位相制御信号P_CS(UP／FIX／DOWN)の２つを用いて再生クロックの位相を制御することで、受信データのエッジ発生頻度低下における再生クロックの位相制御精度低下を防ぐ。
【００２９】
次にモード切り替え回路の第２の機能を説明する。モード切り替え回路404(Mode Select Circuit)の動作初期段階（トレーニング期間）において、各々のシリアライザ・デシリアライザ回路201(SerDes)にて受信データとの同期状態を作り出し、その後参照シリアライザ・デシリアライザ回路202(Ref_SerDes)からの位相制御信号P_CS(UP／FIX／DOWN)を使用してクロックデータリカバリー回路303(CDR)の再生クロックの位相を制御するシーケンスを設ける。このシーケンスに従えば、伝送路等に起因して発生する各受信データのタイミングばらつきおよび各クロックデータリカバリー回路303(CDR)が持つばらつき等を各クロックデータリカバリー回路303(CDR)が行う引き込み動作にて相殺できる。参照シリアライザ・デシリアライザ回路202(Ref_SerDes)からの位相制御信号P_CS(UP／FIX／DOWN)に切り替えた後、参照シリアライザ・デシリアライザ回路２(Ref_SerDes)以外の各クロックデータリカバリー回路303(CDR)の自立的な位相制御に使用している回路を停止させることで、高い受信精度を維持しつつ装置全体として消費電力を低減させることが可能となる。
【００３０】
また、クロックデータリカバリー回路303(CDR)は、外部からクロックの位相制御も行われる。モード切り替え回路404(Mode Select Circuit)の入力としては、回路規模および動作速度が許す限り何種類もの外部信号を入力し切り替えることが可能である。参照シリアライザ・デシリアライザ回路202(Ref_SerDes)以外にも上位論理からクロックデータリカバリー回路303(CDR)の再生クロックの位相を制御することで、クロックデータリカバリー回路303(CDR)の性能評価等の通常動作以外にも使用することが可能である。
【００３１】
クロック制御回路405(Clock Control Circuit)は、位相比較器401(Phase Detector)に入力されるクロックの位相を保持し、前段のモード切り替え回路404(Mode Select Circuit)からのUP/FIX/DOWN信号により位相を変更または保持する機能を実現する。
【００３２】
クロック生成回路406(Clock Generation Circuit)は、前段のクロック制御回路405(Clock Control Circuit)からの位相情報（Phase Info.）によりスイッチを切り替えることで電流量を調整し、微小な位相変化に対応したクロックを生成する。
【００３３】
クロックデータリカバリー回路303(CDR)の位相制御について図5を用いて説明する。図5(a)は、横軸にクロック相、縦軸にBER(Bit Error Rate)をとり、矢印(↑)はクロック生成回路406(Clock Generation Circuit)によって生成された再生クロック(Recovery Clock)のクロックエッジ(ポインタ)示す図である。動作初期段階において、図5(a)に示されるように、各レーンのクロックデータリカバリー回路303(CDR)は、入力されるデータ信号を受け、各レーンのクロックデータリカバリー回路303(CDR)が自立的に生成するUP_0/FIX_0/DOWN_0信号を用いてポインタ位置を制御し、入力データに対してエラー数の最も少ないところでクロック相を決定する。図5(b)は、並走クロックレーンのポインタにデータレーン102のポインタが追従する様子を説明する図である。図5(b)に示すように通常動作時には、並走クロックレーンのクロックデータリカバリー回路303(CDR)から分配された位相制御信号P_CS(UP/FIX/DOWN)を用いて、ポインタ位置を制御するため、各データレーンのクロックデータリカバリー回路303(CDR)がポインタのクロック相をシフトする。すなわち、並走クロックレーン102のCDR回路303(CDR)のポインタ位置が再生クロックの変化に対して図５の(1)のように遷移したとき、データレーン102のクロックデータリカバリー回路303(CDR)のポインタ位置は位相制御信号P_CS(UP/FIX/DOWN)により(2)のように追従する。
【００３４】
並走クロックレーン103は全データレーンを代表する位相情報を有し、並走クロックレーン103のクロックデータリカバリー回路303(CDR)によって抽出された位相情報は、位相制御信号P_CS(UP/FIX/DOWN)で各データレーン102のクロックデータリカバリー回路303(CDR)に分配される。位相情報にクロックを用いると、クロックのジッタ成分も各データレーン102のクロックデータリカバリー回路303(CDR)に分配されるが、本実施例のようにUP/DOWN信号を用いることで、各データレーンに分配されるジッタ成分を抑えることができる。本実施形態は、データレーン102と並走クロックレーン103を具備した高速シリアルデータ受信システムに適用可能である。
【００３５】
図6に図2で示したアイ開口マージン評価回路207(Eye-Open Margin Measurement Circuit)の構成を示す。各クロック相のエラーを検出し、アイ開口度を測定するエラー検出回路601(Error Detect Circuit)と、各クロック相にポインタをシフトさせるパルス生成回路602(Pulse-forming Circuit)と、アイ開口マージン評価を制御する評価論理回路603(Evaluation Logic)から構成される。
【００３６】
エラー検出回路601は、参照データパターン(Ref_Data  Pattern)と受信データパターン(Data Pattern)を比較し、両データパターンの一致・不一致を検出する。参照データパターン(Ref_Data  Pattern)として、データジェネレータから擬似乱数列(PRBS7/15/23/31，Pseudo Random Bit Sequence)が入力される。アイ開口マージン評価の際、この参照データパターンと同じデータパターンが送信側LSIから送信され、I/O回路及びシリアライザ・デシリアライザ回路を介してエラー検出回路601へ受信データパターン(Data Pattern)として入力される。
【００３７】
パルス生成回路602(Pulse-forming Circuit)では、各クロック相にポインタをシフトさせるオフセット調整パルスOffset_Pulse（UP，DOWN）を生成する。評価論理回路603(Evaluation Logic)ではエラー検出回路601(Error Detect Circuit)やオフセット量によって所望のパルスを生成するパルス生成回路602(Pulse-forming Circuit)を制御する。また、セレクタ回路206にモードセレクト信号（Mode Select Signal）を送り、並走クロックレーン103の位相情報をもった位相制御信号P_CS(UP/FIX/DOWN)とパルス生成回路602(Pulse-forming Circuit)のオフセット調整パルス信号を切り替える。
【００３８】
本発明のアイ開口マージン評価回路は、以上のような並走クロック方式のシリアルデータ受信システムに適用可能である。また、アイ開口マージン評価回路207は、上述した高精度な高速シリアルデータの受信システムに有効な回路である。なお、並走クロックレーンからデータレーンへの位相制御信号P_CS(UP/FIX/DOWN)がセレクタ回路206によって選択されている状態が、上述した高精度な高速シリアルデータの受信が可能な状態である。
【００３９】
また、図7はエラー検出回路601(Error Detect Circuit)を詳細に示した図である。エラー検出回路601(Error Detect Circuit)は、パターンチェック回路701(Pattern Checker)とカウンタ回路702(Counter)で構成される。パターンチェック回路701(Pattern Checker)は、参照データパターン(Ref_Data  Pattern)と受信データパターン(Data Pattern)を比較して、データパターンの一致・不一致をチェックする。カウンタ回路702(Counter)は、パターンチェック回路701(Pattern Checker)からのエラーフラグをカウントし、エラー数をレジスタに書き込む。
【００４０】
図5(b)に示すような並走クロックレーン103の位相情報にデータレーン102のクロックデータリカバリー回路303(CDR)が追従した通常動作状態において、セレクタ回路206は並走クロックレーン103のクロックデータリカバリー回路303(CDR)からの位相制御信号P_CS(UP/FIX/DOWN)と、パルス生成回路602(Pulse-forming Circuit)からのオフセット調整パルス信号を切り替える。この調整パルスにより、各クロック相を作り出し、エラーをカウントすることでアイ開口マージン評価が可能となる。
【００４１】
図8に示されるようにアイ開口マージン評価では、参照データパターン(Ref_Data  Pattern)と受信データパターン(Data Pattern)を比較し、不一致の場合をエラーとしてエラー数（Error Count）をカウントし、アイ開口度を評価する。エラー数が０である位相区間を求めて、アイ開口度を評価する。
【００４２】
通常動作時、図５(a)に示されるように、データレーン102のクロックデータリカバリー回路303(CDR)は、並走クロックレーン103の位相制御信号P_CS(UP/FIX/DOWN)の情報に追従した最適なクロック相(Center)にある。
【００４３】
アイ開口マージン評価時、モードセレクト信号(Mode Select Signal)によりセレクタ回路206は、位相制御信号P_CS(UP/FIX/DOWN)からオフセット調整パルス信号Offset_Pluse(UP/DOWN)へ入力を切り替える。最適なクロック相(Center)にあるポインタへオフセット調整パルス信号Offset_Pluse(UP/DOWN)を与え、ポインタを全クロック相に掃引することで、受信データのエラー数をカウントし、各クロック相のエラー数をレジスタに書き込む。なお、アイ開口マージン評価の際、参照データパターンと同じデータパターンが送信側LSI101から送信され、I/O回路及びシリアライザ・デシリアライザ回路を介してエラー検出回路601へ受信データパターン(Data Pattern)として入力される。
【００４４】
このアイ開口マージン評価回路からのオフセット調整パルス信号は、セレクタ回路206及びモード選択回路404(Mode Select Circuit)を介し、クロック制御回路405(Clock Control Circuit)へ入力される。クロック制御回路405(Clock Control Circuit)は、オフセット調整パルスによりクロック相を更新し、更新後のクロック相を保持し、そのクロック相を示す位相情報（Phase Info.）を出力する。クロック生成回路406(Clock Generation Circuit)は、前段のクロック制御回路405(Clock Control Circuit)からの出力信号によりスイッチを切り替えることで電流量を調整し、各クロック相のクロックを生成する。クロック生成回路406は、クロック相をインクリメントする信号UPによりクロック相を進めたクロックを生成し、クロック相をデクリメントする信号UPによりクロック相を進めたクロックを生成する。
【００４５】
この一連のシーケンスにより、図８の表のような形式でアイ開口マージンを測定し、アイ開口度を評価する。なお、エラー数をBER(Bit Error Rate) に変換し、バスタブカーブを描くことも可能である。
【００４６】
また、オフセット調整パルスOffset_Pluse(UP/DOWN)によりポインタ位置を掃引するので、データレーン102のクロックデータリカバリー回路303(CDR)は、自身の動作ジッタ成分を含んだ受信データのアイ開口マージン評価が可能である。
【００４７】
そして、アイ開口マージン評価回路を適用したデータ通信システムおいて、最適なアイ開口度が得られなかったとき、アイ開口マージン評価回路から入手力回路205（I/O）へイコライザ制御信号E_CSを出力し、イコライザを調整し出力振幅を最適化する。
【００４８】
入出力回路205（I/O）の詳細な構成を図９に示す。出力バッファ901では、受信側で最適な波形になるように信号波形を変化させてシリアルデータを伝送路に送信する。伝送路での減衰が大きいとき、減衰しやすい高周波部分を予め強調(pre-emphasis)して送信する。また、出力振幅を増やせないとき、減衰が少ない低周波部分を低いレベル(de-emphasis)で送信する。pre-emphasisやde-emphasisによって減衰の少ない波形が受信できる。入力バッファ902では、伝送路で減衰した受信データをイコライジングすることで入力振幅を最適なレベルまで増加させることが可能である。このように、アイ開口マージンの評価結果をイコライザにフィードバックすることで、クロックデータリカバリー回路303(CDR)は高速シリアルデータを常に正しく受信することができる。
【００４９】
図１０はアイ開口マージンの評価シーケンスについて説明する図である。ステップ1001では、データジェネレータから擬似乱数列(PRBS7/15/23/31，Pseudo Random Bit Sequence)を、参照データとして入力する。そして、アイ開口マージン評価の際、参照データパターンと同じデータパターンが送信側LSI101から送信され、I/O回路及びシリアライザ・デシリアライザ回路を介してエラー検出回路601へ受信データパターン(Data Pattern)として入力される。初期動作時、各クロックデータリカバリー回路303(CDR)が自立的に求めたUP_0/FIX_0/DOWN_0信号によりクロック相が決定された受信データ（Parallel Data）を取り込む。初期動作後、並走クロックレーンの位相制御信号P_CS(UP/FIX/DOWN)の位相情報に各データレーンのクロックデータリカバリー回路303(CDR)が追従し、最適なクロック相(Center)でデータを受信する。ステップ1002では、エラーを測定するクロック相にポインタをシフトさせる。モードセレクト信号によりセレクタ回路206は、位相制御信号P_CS(UP/FIX/DOWN)とオフセット調整パルス信号Offset_Pluse(UP/DOWN)を切り替える。最適なクロック相(Center)にあるポインタに、パルス生成回路からのオフセット調整パルスOffset_Pluse(UP/DOWN)を与え、エラー測定するクロック相にポインタをシフトさせる。ステップ1003では、ポインタをエラー測定するクロック相で固定する。セレクタ回路206により、オフセット調整パルスOffset_Pluse(UP/DOWN)から、並走クロックレーンの位相制御信号P_CS(UP/FIX/DOWN)に切り替え、ポインタを相固定した状態で追従させる。ステップ1004では、レジスタに格納されているエラーをクリアする。ステップ1005では、所望のサイクル数の間、パターンチェック回路701(Pattern Checker)は、参照データパターン(Ref_Data Pattern)と受信データパターン(Data Pattern)を比較し、不一致の場合はエラーフラグをカウンタ回路702(Counter)へ出力する。ステップ1006では、カウンタ回路702(Counter)は、パターンチェック回路701(Pattern Checker)からのエラーフラグをカウントし、エラー数をレジスタに書き込む。ステップ1007では、全相のエラーカウントが終了しているか判断する。終了していないとき、ステップ1002に戻り、相を変えてエラーカウントする。ステップ1008では、アイ開口マージンを判断する。最適なアイ開口度が得られていないとき、ステップ1009でイコライザのビット調整を行い、再びステップ1002からアイ開口マージン評価を行う。伝送路での減衰が大きいとき、減衰しやすい高周波部分を予め強調(pre-emphasis)して送信するように、出力バッファ901ではイコライザの調整を行う。受信側で最適な波形になるように信号波形を変化させてシリアルデータを伝送路に送信する。また、出力振幅を増やせないとき、減衰が少ない低周波部分を低いレベル(de-emphasis)で送信する。入力バッファ902では、伝送路で減衰した受信データをイコライジングすることで入力振幅を最適なレベルまで増加させる。入出力バッファのイコライジングは、半導体装置の実装形態や仕様に合わせて最適な方法を用いる。ステップ1010では、全クロック相を測定し終え、最適なアイ開口マージンが得られた場合か、測定終了信号が入力された場合は評価シーケンスを終了する。
【００５０】
本実施形態の半導体装置は、シリアルデータ受信システムに搭載するときのトレーニングシーケンスとして有効である。
【００５１】
以上、本実施形態によって、本発明を詳細に説明したが、上記に限定されるものではなく、その要旨を逸脱しない範囲で変更が可能である。
【図面の簡単な説明】
【００５２】
【図１】本発明の実施例における半導体装置の伝送形態の構成を示すブロック図。
【図２】本発明の実施例にかかる半導体装置の構成を示すブロック図。
【図３】本発明の実施例にかかるシリアライザ・デシリアライザ回路(SerDes)の構成を説明するブロック図。
【図４】本発明の実施例にかかるクロックデータリカバリー回路(CDR)の構成を示すブロック図。
【図５】本発明の実施例にかかるポインタの動作を説明するための概念図。
【図６】本発明の実施例にかかるアイマージン評価回路のブロック図。
【図７】本発明の実施例にかかるエラー検出回路の構成を示すブロック図。
【図８】本発明のアイ開口マージン評価の概念図。
【図９】本発明の実施例にかかる入出力回路（I/O）のブロック図。
【図１０】本発明のアイ開口マージン評価シーケンス
【符号の説明】
【００５３】
101…高速シリアルデータの送受信が可能な半導体装置，  102…データレーン，  103…並走クロックレーン，  
201…シリアライザ・デシリアライザ回路（SerDes），  202…参照シリアライザ・デシリアライザ回路（Ref_SerDes），  203…位相同期回路，  204…制御論理  205…入出力回路（I/O），  206…セレクタ回路，  207…アイ開口マージン評価回路，  
301…直列並列変換回路，  302…並列直列変換回路，  303…クロックデータリカバリー回路（CDR），  
401…位相比較器，  402…平均化回路，  403…比較回路，  404…モードセレクト回路，  405…クロック制御回路，  406…クロック生成回路，  
601…エラー検出回路，  602…パルス生成回路，  603…評価論理回路，  
701…パターンチェック回路，  702…カウンタ回路，
901…イコライザ機能を持つ出力バッファ，  902…イコライザ機能を持つ入力バッファ。
【図１】
0005174493.tif 000002
【図２】
0005174493.tif 000003
【図３】
0005174493.tif 000004
【図４】
0005174493.tif 000005
【図５】
0005174493.tif 000006
【図６】
0005174493.tif 000007
【図７】
0005174493.tif 000008
【図８】
0005174493.tif 000009
【図９】
0005174493.tif 000010
【図１０】
0005174493.tif 000011