(57)【特許請求の範囲】
【請求項１】
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部とを備える、半導体装置。
【請求項２】
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力し、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記複数の位相検出器から一つを選択するマルチプレクサとを有する、請求項１に記載の半導体装置。
【請求項３】
前記第３のラッチ回路は、
前記複数の分周バウンダリクロックのうち、位相が互いに１８０°異なる２つのクロックを一組とする第１の差動クロックで同期化する第１のフリップフロップと、
前記第１の差動クロックの位相に対してそれぞれ１８０°ずれる第２の差動クロックで同期化する第２のフリップフロップと、
前記第１のフリップフロップの出力と前記第２のフリップフロップの出力とのいずれか一方を、前記マルチプレクサの出力に従って選択する第２のマルチプレクサとを有する、請求項２に記載の半導体装置。
【請求項４】
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路とを備える、デマルチプレクサ。
【請求項５】
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化してパラレルバウンダリデータに変換するラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路とを備える、半導体回路。
【請求項６】
データクロックを分周して分周データクロックを出力する第１の分周工程と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力する第２の分周工程と、
前記分周データクロック内の一つの差動信号を前記複数の分周バウンダリクロックと位相比較する位相比較工程と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを、前記複数の分周バウンダリクロックのうち位相が互いに１８０°異なる２つのクロックである第１の差動クロックで同期化するのか、前記第１の差動クロックの位相に対してそれぞれ１８０°ずれる第２の差動クロックで同期化するのかを、前記位相比較工程での比較結果に従って選択する選択工程と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを、前記選択工程で選択された差動クロックで同期化してパラレルバウンダリデータに変換するラッチ工程とを有する、データ処理方法。
【請求項７】
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部と、
外部制御信号の設定値を格納するメモリとを備える半導体装置を検査する検査方法であって、
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力するものであり、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記設定値に従って前記複数の位相検出器から一つを選択するマルチプレクサとを有するものであり、
前記設定値の複数の候補値で前記第２のパラレルデータのビットエラー率を測定する測定工程と、
前記複数の候補値のうち前記ビットエラー率が所定の判定基準を満たす候補値を選択する選択工程と、
前記選択工程で選択された前記候補値を前記設定値として前記メモリに記憶させる記憶工程とを有する、検査方法。
【請求項８】
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部と、
外部制御信号の設定値を格納するメモリとを備える半導体装置に関して、前記設定値を探索する探索方法であって、
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力するものであり、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記設定値に従って前記複数の位相検出器から一つを選択するマルチプレクサとを有するものであり、
前記データクロックと前記バウンダリクロックとの位相差であって前記第２のパラレルデータのビットエラー率の測定値が第１閾値未満となる位相差が存在するまで前記第１閾値を増加させる増加ステップと、
前記データクロックと前記バウンダリクロックとの位相差であって前記測定値が前記第１閾値よりも大きな所定の第２閾値に一致する２つの位相差を取得する取得ステップと、
前記設定値の複数の候補値のうち、前記第１閾値が最も小さく且つ前記２つの位相差の間の位相幅が最も大きな候補値を探索結果として出力する出力ステップとを有する、探索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、デマルチプレクサ、半導体回路、データ処理方法及び検査方法に関する。
【背景技術】
【０００２】
図１は、従来のデマルチプレクサ１６の一例を示す概略図である。デマルチプレクサ１６は、例えば、半導体チップの外部からのシリアルデータを受信し、受信したシリアルデータをパラレルデータに変換して半導体チップの内部の他の回路に送信する回路（例えば、シリアライザデシリアライザ回路、略してserdes回路）で使用される。
【０００３】
デマルチプレクサ１６には、周波数が同じで位相が異なる２つのクロック（データクロック１９ａとバウンダリクロック１９ｂ）と、データクロック１９ａで同期化されたシリアルの入力データ１５ａと、バウンダリクロック１９ｂで同期化されたシリアルのバウンダリデータ１５ｂとが入力される。バウンダリデータ１５ｂは、入力データ１５ａのバウンダリ（入力データ１５ａの論理値が０から１又は１から０に遷移するタイミング）の検出データを表す。
【０００４】
デマルチプレクサ１６は、それらの２つのクロックのうち片方のデータクロック１９ａのみを分周したデータクロックによって、入力データ１５ａとバウンダリデータ１５ｂの両シリアルデータを同期化し、それらの両シリアルデータをパラレル化して出力する。デマルチプレクサ１６は、同期化に用いた分周データクロック１７ｃ（図１の場合、８分周データクロック）を出力するとともに、同じタイミングでパラレル化した全データ（パラレルデータ１７ａとパラレルバウンダリデータ１７ｂ）を出力する。
【０００５】
デマルチプレクサ１６は、複数の分周器が直列に接続された分周器群１０００と、複数のフリップフロップが直列に接続された第１のフリップフロップ群１００１と、複数のフリップフロップが直列に接続された第２のフリップフロップ群１００２とを有する。分周器群１０００は、データクロック１９ａを分周して分周データクロック１７ｃを出力する。第１のフリップフロップ群１００１は、シリアルの入力データ１５ａをパラレルデータ１７ａに変換して出力する。第２のフリップフロップ群１００２は、シリアルのバウンダリデータ１５ｂをパラレルバウンダリデータ１７ｂに変換して出力する。
【０００６】
なお、Ｄｉｖは分周器、ＦＦはフリップフロップ、ｆは周波数[Hz]、×１，×２，×４，×８はＦＦの並列数を表す。
【０００７】
図２は、各フリップフロップ（ＦＦ）の内部構成の一例を示す詳細図である。一つのＦＦ５０は、５つのラッチ（２つのラッチＴと３つのラッチＩ）を有し、シリアル入力データ(I_Data)を差動入力クロック（I_Clock/x）で同期化してパラレルデータ0_Data[1:0]として出力する。各ラッチＴは、インバータ５１と、トランスファーゲート５２と、ラッチ回路５３との直列回路を有する。各ラッチＩは、トランスファーゲート５２と、ラッチ回路５３との直列回路を有する。トランスファーゲート５２とラッチ回路５３は、それぞれ、入力クロックｃｌｋとその逆相の反転クロックｃｌｋｘとにより動作する。
【０００８】
図３は、各分周器（Ｄｉｖ）の内部構成の一例を示す詳細図である。一つの分周器６０は、インバータ６１，６２と、２つの差動ラッチ６３，７２の直列回路とを有する。差動ラッチ６３は、インバータ６４〜６７と、トランスファーゲート６８〜７１とを有し、差動ラッチ７２は、インバータ７３〜７６と、トランスファーゲート７７〜８０とを有する。ノードＢ，Ｃのうち、一方がハイレベルになると、他方はローレベルとなる。分周器６０は、周波数ｆの入力クロックｃｌｋａとその逆相の反転クロックｃｌｋａｘとを２分周し、位相が９０°ずつ異なる周波数ｆ／２の４つの直交位相クロック（ｃｌｋｑ，ｃｌｋｑｘ，ｃｌｋｉ，ｃｌｋｉｘ）を出力する。
【０００９】
なお、データのクロック同期に関する技術として、例えば特許文献１，２が挙げられる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平５−２６００２９号公報
【特許文献２】特開平７−１４３１０９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
図１の従来技術は、データクロック１９ａで同期化された入力データ１５ａと、データクロック１９ａと位相が異なるバウンダリクロック１９ｂで同期化されたバウンダリデータ１５ｂとを、共通のデータクロック１９ａの分周クロックで同期化してパラレル化するものである。しかしながら、このように共通のデータクロックで同期化する構成では、データクロック１９ａとバウンダリクロック１９ｂとの位相差が大きくなりすぎると、データをクロックで同期化するタイミングにずれが生じ、パラレルデータ１７ａとパラレルバウンダリデータ１７ｂの間で出力データ順序がずれる可能性がある。
【００１２】
例えば、データクロック１９ａとバウンダリクロック１９ｂとの位相差が大きくなりすぎると、バウンダリデータ１５ｂを２分周クロックで同期化するＦＦ１００３において、満たすべきセットアップ又はホールドタイミングが満足しなくなる可能性がある。特に、動作周波数ｆが高くなると、分周比が小さいＦＦほど（すなわち、シリアルデータが入力される側のＦＦほど）、ＦＦのセットアップ又はホールドタイミングに対して動作マージン（ＦＦがラッチすべき期間）が小さくなるため、データ同期のタイミングが当該動作マージン内に入らなくなる。その結果、同期タイミングがワンサイクルずれ、パラレルバウンダリデータ１７ｂの出力データ順序がずれる可能性がある。
【００１３】
そこで、一つの案では、異位相クロックで同期化されたシリアルデータ群を、単一位相クロックで同期化し、パラレル化するとき、出力データ順序がずれなくすることを課題とする。
【課題を解決するための手段】
【００１４】
一つの案では、
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部とを備える、半導体装置が提供される。
【発明の効果】
【００１５】
一態様によれば、パラレル化されたデータ間のデータ順序がずれなくすることができる。
【図面の簡単な説明】
【００１６】
【図１】従来のデマルチプレクサの一例を示す概略図である。
【図２】各フリップフロップ（ＦＦ）の内部構成の一例を示す詳細図である。
【図３】各分周器（Ｄｉｖ）の内部構成の一例を示す詳細図である。
【図４】第１の半導体チップと第２の半導体チップとの間の送受信構成の一例を示す図である。
【図５】ＣＤＲ部のクロックの位相調整機能の一例を示す説明図である。
【図６】データクロックのエッジの最適なタイミングが波形なまり等により設計上理想的なタイミングよりも遅れ、バウンダリクロックのエッジが理想的な論理遷移タイミングに位置する場合の一例を示す。
【図７】データクロックのエッジの最適なタイミングが波形なまり等により設計上理想的なタイミングよりも進み、バウンダリクロックのエッジが理想的な論理遷移タイミングに位置する場合の一例を示す。
【図８】デマルチプレクサを備える半導体装置の構成の一例を示す図である。
【図９】位相検出回路の内部構成の一例を示す詳細図である。
【図１０】位相検出回路内のデータ入力初段のラッチの一例を示す図である。
【図１１】セットアップバイオレーション時のラッチの動作波形の一例を示す図である。
【図１２】セットアップバイオレーション時の位相検出器の動作波形の一例である。
【図１３】バウンダリクロックを分周する第２の分周回路内のラッチ回路でソフトエラーが発生したときの各ノードの波形の一例を示す。
【図１４】位相検出回路の内部構成の他の一例を示す図である。
【図１５】データ処理方法の一例を示すフローチャートである。
【図１６】ＥＣＳを設定するための構成の一例を示す図である。
【図１７】ＥＣＳの設定の一例を示す図である。
【図１８】ＥＣＳの設定の一例を示す図である。
【図１９】ＥＣＳを設定するための構成の他の一例を示す図である。
【図２０】検査方法の一例を示すフローチャートである。
【図２１】最適なＥＣＳ及び位相差を探索する探索方法の一例を示すフローチャートである。
【図２２】各変数の関係の一例を説明するための図である。
【発明を実施するための形態】
【００１７】
図４は、第１の半導体チップ１と第２の半導体チップ２との間の送受信構成の一例を示す図である。マルチプレクサ４は、第１の半導体チップ１の内部からのパラレルデータ３をシリアル化する。ドライバ６は、マルチプレクサ４でシリアル化されたシリアルデータ５の信号を増幅し、シリアルデータ５の信号増幅波形７をバックプレーン８（回路基板の一例）を介して第２の半導体チップ２に送信する。シリアルデータ５の信号増幅波形７は、バックプレーン８により減衰する。
【００１８】
第２の半導体チップ２のプレフィルタアンプ１０は、減衰信号波形９を整形し増幅することによって、シリアルデータ９の信号増幅波形１１をコンパレータ１２に供給する。コンパレータ１２は、ＣＤＲ（Clock  and  Data  Recovery）部１８から供給されるクロック１９に従って信号増幅波形１１の論理判定（０，１判定）を行い、ラッチ１４は、その判定結果であるデジタルの受信データ１３をクロック１９に従って同期化してシリアルデータ１５を出力する。クロック１９には、周波数が同じで位相が異なるデータクロック１９ｃとバウンダリクロック１９ｄとが含まれる。
【００１９】
デマルチプレクサ１０２は、クロック１９でラッチ１４により同期化されたシリアルデータ１５をパラレル化し、パラレルデータ１７を第２の半導体チップ２の内部に送信する。シリアルデータ１５には、データクロック１９ｃで同期化されたシリアルの入力データ１５ｃと、バウンダリクロック１９ｄで同期化されたシリアルのバウンダリデータ１５ｄとが含まれる。バウンダリデータ１５ｄは、入力データ１５ｃのバウンダリ（入力データ１５ｃの論理値が０から１又は１から０に遷移するタイミング）の検出データを表す。パラレルデータ１７には、入力データ１５ｃがパラレル化されたパラレルデータ１７ｄと、バウンダリデータ１５ｄがパラレル化されたパラレルバウンダリデータ１７ｅと、データクロック１９ｃが分周化された分周データクロック１７ｆとが含まれる。
【００２０】
受信データ１１（シリアルデータ９の信号増幅波形）にはクロックは含まれていないため、ＣＤＲ部１８が受信データ１１からクロックを再生する。ＵＳＢ（Universal  Serial  Bus）やＳＡＴＡ（Serial  Advanced  Technology  Attachment）などに使用される送受信回路間の高速データ伝送では、受信回路は、受信データの論理判定（０，１判定）のために使用するクロックを受信データから復元する。受信データの論理判定を正しく行うため、受信回路で復元されるクロックの位相は、受信データとの位相差が一定になるように、受信回路内部のフィードバック回路で調整される。このように、受信回路で受信データの論理判定用のクロックを再生し、その再生したクロックを使用して受信データの論理判定を行うことにより送信データを再生することを、クロック＆データリカバリ（ＣＤＲ：Clock  and  Data  Recovery）という。
【００２１】
図５は、ＣＤＲ部１８のクロック１９の位相調整機能の一例を示す説明図である。データクロック１９ｃは、受信データ１１の１又は０のフェッチ用であり、バウンダリクロック１９ｄは、受信データ１１のバウンダリ（論理値が１から０又は０から１に遷移する境界タイミング）のフェッチ用である。データクロック１９ｃは、受信データ１１の論理値が正確にフェッチされるように、受信データ１１の波形振幅が大きいタイミングに立ち上がり又は立ち下がりエッジが存在するようにＣＤＲ部１８により調整される。一方、バウンダリクロック１９ｄは、受信データ１１の境界が正確にフェッチされるように、受信データ１１の境界の近くで立ち上がり又は立ち下がりエッジが存在するようにＣＤＲ部１８により調整される。
【００２２】
ＣＤＲ部１８は、パラレルデータ１７ｄ及びパラレルバウンダリデータ１７ｅの内容に応じて、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジが論理遷移タイミングＴｍに対して遅れているのか進んでいるのかを判断して、バウンダリクロック１９ｄの位相を自動調整する。Ｔｌは、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジが論理遷移タイミングＴｍに対して進んでいるタイミングを示し、Ｔｆは、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジが論理遷移タイミングＴｍに対して遅れているタイミングを示す。
【００２３】
図６は、データクロックのエッジの最適なタイミングが波形なまり等により設計上理想的なタイミングよりも遅れ、バウンダリクロックのエッジが理想的な論理遷移タイミングに位置する場合の一例を示す。具体的には、図６は、データクロック１９ｃの立ち上がり又は立ち下がりエッジの現実的に望ましいタイミングＴｉが波形なまり等により理想的なタイミングＴｌよりも遅れ、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジのタイミングが理想的な論理遷移タイミングＴｍに位置する場合の一例を示す。図７は、データクロックのエッジの最適なタイミングが波形なまり等により設計上理想的なタイミングよりも進み、バウンダリクロックのエッジが理想的な論理遷移タイミングに位置する場合の一例を示す。具体的には、図７は、データクロック１９ｃの立ち上がり又は立ち下がりエッジの現実的に望ましいタイミングＴｉが波形なまり等により理想的なタイミングＴｆよりも進み、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジのタイミングが理想的な論理遷移タイミングＴｍに位置する場合の一例を示す。
【００２４】
データクロック１９ｃのエッジの現実的に望ましいタイミングＴｉは、波形のなまり等により、図６，７に示されるように、隣り合う論理遷移タイミングＴｍ間の中央値（理想的なタイミング）とは限らない。又、ＣＤＲ部１８は、ＣＤＲ部１８に設定された設定値に従って、バウンダリクロック１９ｄの立ち上がり又は立ち下がりエッジが理想的なタイミングに移動するように、バウンダリクロック１９ｄの位相を自動調整する。
【００２５】
ＣＤＲ部１８は、例えば、送受信回路の電源立ち上がり時の初期シーケンス中に、バウンダリクロック１９ｄとデータクロック１９ｃ間の位相の自動調整を行う。あるいは、ＣＤＲ部１８は、例えば、検査工程等で出荷前に予め得られた設定値に、バウンダリクロック１９ｄとデータクロック１９ｃ間の位相を固定してもよい。
【００２６】
したがって、ＣＤＲ部１８は、バウンダリクロック１９ｄを基準とするデータクロック１９ｃの位相を決定でき、コンパレータ１２は、常に現実的に望ましいタイミングで受信データ１１をフェッチできる機能を提供する。このように、データクロック１９ｃとバウンダリクロック１９ｄとの間には位相差が存在し、受信データ１１を正確にフェッチできる位相差の最適値は半導体チップの製造ばらつき等によって個々の半導体チップで異なることとなる。
【００２７】
図８は、デマルチプレクサ１０２を備える半導体装置１０１の構成の一例を示す図である。半導体装置１０１は、例えば、デマルチプレクサ１０２と、処理部１０３とを備える。処理部１０３は、デマルチプレクサ１０２から出力されるパラレルの出力データ１７（１７ｄ，１７ｆ，１７ｅ）を所定の処理手順で処理する。例えば、半導体装置１０１は、ＣＰＵ（中央演算処理装置）であり、処理部１０３は、ＣＰＵの演算コア部、メモリ及びserdes内部回路である。半導体装置１０１は、例えば、ＣＰＵを備えた装置、又は当該装置を内蔵するサーバ等の情報処理装置でもよい。
【００２８】
デマルチプレクサ１０２は、第１の分周回路９１と、第２の分周回路９２と、第３の分周回路３４と、第１のラッチ回路２５と、第２のラッチ回路２６と、第３のラッチ回路９３と、第４のラッチ回路４５と、同期化回路１００とを備える。デマルチプレクサ１０２は、例えば、半導体チップ上に形成される回路である。
【００２９】
第１の分周回路９１は、例えば、データクロック１９ｃを２分周して第１の分周データクロック３５を出力する。データクロック１９ｃは、単一のクロックでもよいし、クロックとその逆相の反転クロックとを合わせた一対のクロック（差動クロック）でもよい。図８は、データクロック１９ｃが差動クロックである場合を示す。
【００３０】
第２の分周回路９２は、データクロック１９ｃと周波数が同じで位相が異なるバウンダリクロック１９ｄを２分周して分周バウンダリクロック１９ｅを出力する。バウンダリクロック１９ｄは、単一のクロックでもよいし、クロックとその逆相の反転クロックとを合わせた一対のクロック（差動クロック）でもよい。図８は、バウンダリクロック１９ｄが差動クロックである場合を示す。
【００３１】
第３の分周回路３４は、第１の分周データクロック３５を分周して第２の分周データクロック１７ｆを出力する。第３の分周回路３４は、例えば、分周器３２と、分周器３３とを有する。分周器３２は、第１の分周データクロック３５を２分周した分周データクロックを出力する。分周器３３は、分周器３２から出力される分周データクロックを２分周して第２の分周データクロック１７ｆを出力する。
【００３２】
第１のラッチ回路２５は、データクロック１９ｃで同期化されたシリアルの入力データ１５ｃを第１の分周データクロック３５で同期化して第１のパラレルデータ２７に変換して出力する。第１のラッチ回路２５は、例えば、ＦＦ２１と、ＦＦ２２とを有する。ＦＦ２１は、シリアルの入力データ１５ｃをデータクロック１９ｃで同期化した２列のパラレルデータを出力する。ＦＦ２２は、ＦＦ２１から出力される２列のパラレルデータを第１の分周データクロック３５で同期化した４列の第１のパラレルデータ２７を出力する。
【００３３】
第２のラッチ回路２６は、第１のパラレルデータ２７を第２の分周データクロック１７ｆで同期化して第２のパラレルデータ１７ｄに変換して出力する。第２のラッチ回路２６は、例えば、ＦＦ２３と、ＦＦ２４とを有する。ＦＦ２３は、４列の第１のパラレルデータ２７を、分周器３２から出力される分周クロックで同期化した８列のパラレルデータを出力する。ＦＦ２４は、ＦＦ２３から出力された８列のパラレルデータを、第２の分周データクロック１７ｆで同期化した１６列の第２のパラレルデータ１７ｄを出力する。
【００３４】
第３のラッチ回路９３は、バウンダリクロック１９ｄで同期化されたシリアルのバウンダリデータ１５ｄを分周バウンダリクロック１９ｅで同期化して第１のパラレルバウンダリデータ４７に変換して出力する。
【００３５】
第４のラッチ回路４５は、第１のパラレルバウンダリデータ４７を第２の分周データクロック１７ｆで同期化して第２のパラレルバウンダリデータ１７ｅに変換して出力する。第４のラッチ回路４５は、例えば、ＦＦ４３と、ＦＦ４４とを有する。ＦＦ４３は、４列の第１のパラレルバウンダリデータ４７を、分周器３２から出力される分周クロックで同期化した８列のパラレルデータを出力する。ＦＦ４４は、ＦＦ４３から出力された８列のパラレルデータを、第２の分周データクロック１７ｆで同期化した１６列の第２のパラレルバウンダリデータ１７ｅに変換して出力する。
【００３６】
同期化回路１００は、第１の分周データクロック３５と分周バウンダリクロック１９ｅとを同期化する。本実施形態のように、データクロック１９ｃを分周する第１の分周回路９１だけでなく、バウンダリクロック１９ｄを分周する第２の分周回路９２を設けても、同期化回路１００により、第１の分周回路９１と第２の分周回路９２の互いの分周動作を同期させることができる。したがって、パラレルデータ１７ｄとパラレルバウンダリデータ１７ｅとの間で、データ順序が第１の分周回路９１と第２の分周回路９２の互いの分周動作が同期していなことによってずれることを防止することができる。
【００３７】
また、本実施形態では、第１の分周回路９１だけでなく第２の分周回路９２も設けたことにより、バウンダリデータ１５ｄをデータクロック１９ｃの分周クロックで同期化させることを、動作周波数ｆの比較的低いラッチ回路部で実施することができる。つまり、２列から４列にパラレル化するラッチ回路部よりも、４列から８列にパラレル化するラッチ回路部（具体的には、ＦＦ４３）で実施することができる。したがって、ＦＦの動作タイミングの制限を緩和することができる。さらに、バウンダリクロック１９ｄの２分周クロックを更に分周する分周器と、当該分周器を分周器３２と同期化するための回路とを有する回路（回路９０と同形態の回路）を更に設けることで、ＦＦの動作タイミングの制限を更に緩和することができる。つまり、バウンダリデータ１５ｄをデータクロック１９ｃの分周クロックで同期化させることを、８列から１６列にパラレル化するラッチ回路部（具体的には、ＦＦ４４）で実施することができる。
【００３８】
第２の分周回路９２は、例えば、位相が互いに異なる複数の分周バウンダリクロック１９ｅを出力する。本実施形態では、第２の分周回路９２は、位相が９０°ずつ異なる４つの直交位相の分周バウンダリクロック１９ｅを出力し、例えば、上述の図３の構成を有する。本実施形態では、同期化回路１００は、例えば、位相検出回路９４と、マルチプレクサ（ＭＵＸ）９５とを有する。
【００３９】
位相検出回路９４は、第１の分周データクロック３５内の１つの差動信号と、４つの直交位相の分周バウンダリクロック１９ｅとを位相比較するための４つの位相検出器を含む位相比較回路である。マルチプレクサ９５は、４つの位相検出器から一つを選択する選択回路である。
【００４０】
図９は、位相検出回路９４の内部構成の一例を示す図である。位相検出回路９４は、４つの位相検出器９４ａ〜９４ｄを有し、各位相検出器９４ａ〜９４ｄは、直列接続された４つのラッチ１１０〜１１３と、１つのインバータ１１４とを有する。位相検出器９４ａは、第１の分周データクロック３５（０°）と、位相が０°の分周バウンダリクロック１９ｅ（０°）とを位相比較する。位相検出器９４ｂは、第１の分周データクロック３５（０°）と、分周バウンダリクロック１９ｅ（０°）に対して位相が９０°ずれた分周バウンダリクロック１９ｅ（９０°）とを位相比較する。位相検出器９４ｃは、第１の分周データクロック３５（０°）と、分周バウンダリクロック１９ｅ（０°）に対して位相が１８０°ずれた分周バウンダリクロック１９ｅ（１８０°）とを位相比較する。位相検出器９４ｄは、第１の分周データクロック３５（０°）と、分周バウンダリクロック１９ｅ（０°）に対して位相が２７０°ずれた分周バウンダリクロック１９ｅ（２７０°）とを位相比較する。分周バウンダリクロック１９ｅ（０°），１９ｅ（９０°），１９ｅ（１８０°），１９ｅ（２７０°）は、位相が互いに異なる複数の分周バウンダリクロックの一例である。なお、図９において、位相検出回路９４に入力される全てのクロック、及びデータは実際は差動信号であるが、簡便のためにシングルエンド信号で記されている。
【００４１】
各位相検出器９４ａ〜９４ｄにおいて、分周バウンダリクロック１９ｅは、４つのラッチ１１０〜１１３にインバータ１１４を介して入力される入力クロックであり、第１の分周データクロック３５内の１つの差動信号は、ラッチ１１０に入力される入力データである。
【００４２】
各位相検出器９４ａ〜９４ｄは、分周バウンダリクロック１９ｅと第１の分周データクロック３５内の１つの差動信号とが入力される。分周バウンダリクロック１９ｅの立ち上がりエッジが、第１の分周データクロック３５（０°）のハイレベルのマージン期間内にあるか否かで、各位相検出器９４ａ〜９４ｄから出力される固定信号ｆｘの論理が０／１で異なる。
【００４３】
各位相検出器９４ａ〜９４ｄのうち、分周バウンダリクロック１９ｅの立ち上がりエッジが、第１の分周データクロック３５（０°）のハイレベルのマージン期間外にある位相検出器が、ローレベル（論理０）の固定信号ｆｘを出力すると仮定すると、分周バウンダリクロック１９ｅの立ち上がりエッジが、第１の分周データクロック３５（０°）のハイレベルのマージン期間内にある位相検出器は、ハイレベル（論理１）の固定信号ｆｘを出力する。あるいは、各位相検出器９４ａ〜９４ｄのうち、分周バウンダリクロック１９ｅの立ち上がりエッジが、第１の分周データクロック３５（０°）のハイレベルのマージン期間外にある位相検出器が、ハイレベル（論理１）の固定信号ｆｘを出力すると仮定すると、分周バウンダリクロック１９ｅの立ち上がりエッジが、第１の分周データクロック３５（０°）のハイレベルのマージン期間内にある位相検出器は、ローレベル（論理０）の固定信号ｆｘを出力する。
【００４４】
位相検出回路９４は、第１の分周データクロック３５内の１つの差動信号を４つの直交位相の分周バウンダリクロック１９ｅと位相比較した結果に基づいて、第１の分周データクロック３５を出力する第１の分周回路９１と分周バウンダリクロック１９ｅを出力する第２の分周回路９２との間で分周動作が位相同期しているか否かを判定する。各位相検出器９４ａ〜９４ｄから出力される固定信号ｆｘは、第１の分周回路９１と第２の分周回路９２との間で分周動作が位相同期しているか否かの判定結果を表す。
【００４５】
マルチプレクサ９５は、４つの位相検出器９４ａ〜９４ｄから、外部制御信号４８に従って、一つの位相検出器を選択する。つまり、マルチプレクサ９５は、外部制御信号４８の設定値に基づいて、４つの固定信号ｆｘから一つの固定信号ｆｘを選択して出力する。外部制御信号４８は、パラレルデータ１７ｄとパラレルバウンダリデータ１７ｅとの間でデータ順序がずれないように予め設定された信号である。例えば、デマルチプレクサ１０２は、外部制御信号４８の設定値を格納する外部レジスタ１０４（図８参照）を備える。外部レジスタ１０４は、メモリの一例である。
【００４６】
図８において、第２の分周回路９２は、位相が互いに異なる４つの直交位相の第１の分周バウンダリクロック１９ｅを出力する。そして、第３のラッチ回路９３は、ＦＦ４１と、ＦＦ９７と、ＦＦ９８と、第２のマルチプレクサ９９とを有する。ＦＦ９７は、位相が互いに異なる４つの直交位相の第１の分周バウンダリクロック１９ｅのうち、位相が互いに１８０°異なる２つのクロックを一組とする第１の差動クロック９７ａで同期化する第１のフリップフロップの一例である。ＦＦ９８は、第１の差動クロック９７ａの位相に対してそれぞれ１８０°ずれる第２の差動クロック９８ａ（つまり、第１の差動クロック９７ａを反転させた形態の差動クロック）で同期化する第２のフリップフロップの一例である。第２のマルチプレクサ９９は、ＦＦ９７の出力とＦＦ９８の出力とのいずれか一方を、マルチプレクサ９５から出力される固定信号９６に従って選択する。固定信号９６は、マルチプレクサ９５により選択された上述の固定信号ｆｘに相当する。これにより、ＦＦ９７，９８のうち、パラレルデータ１７ｄとパラレルバウンダリデータ１７ｅ間のデータ順序のずれを回避するものを選択することができる。
【００４７】
ＦＦ９７は、例えば、バウンダリデータ１５ｄがＦＦ４１によりバウンダリクロック１９ｄに従って２列にパラレル化されたパラレルデータ１５ｅを、第１の差動クロック９７ａで同期化して、バウンダリデータ１５ｄの４列のパラレルデータを生成する。一方、ＦＦ９８は、例えば、バウンダリデータ１５ｄがＦＦ４１によりバウンダリクロック１９ｄに従って２列にパラレル化されたパラレルデータ１５ｅを、第２の差動クロック９８ａで同期化して、バウンダリデータ１５ｄの４列のパラレルデータを生成する。
【００４８】
図１０は、各位相検出器９４ａ〜９４ｄ内のデータ入力初段のラッチ１１０の一例を示す図である。ラッチ１１０は、入力クロックｃｌｋとその逆相の反転クロックｃｌｋｘとにより動作する、差動のＤ型ラッチである。ラッチ１１０は、インバータ１２１〜１２６と、トランスファーゲート１２７〜１２９とを有する。ラッチ１１０は、インバータ１２１，１２２，１２４〜１２６とトランスファーゲート１２７，１２８とを有することにより、入力データＡと同じデータＸを出力できる。反転入力データＡＸは、入力データＡとは逆相の入力データである。トランスファーゲート１２９は、入力データＡと反転入力データＡＸとの負荷を同一にするためのものである。
【００４９】
ラッチ１１０の構成を、例えば図２の形態から図１０の形態に変更することで、ラッチ１１０〜１１３のセットアップ又はホールドタイミングに対しての動作マージンの制限を緩和することができる。
【００５０】
図１１は、ラッチ１１０の構成が図１０の形態である場合において、セットアップバイオレーション時のラッチ１１０の動作波形の一例を示す図である。セットアップバイオレーションにより、ラッチ１１０内部のノードＮ１，Ｎ２の振幅が最大振幅（一方が電源電圧で他方がグランド電圧）になっていなくても、データＸ、更にラッチ１１０後段のラッチ１１１〜１１３の出力の１／０論理を確定することができる。
【００５１】
図１２は、ラッチ１１０の構成が図１０の形態で、ラッチ１１１〜１１３の構成が図２のラッチＩの形態である場合において、セットアップバイオレーション時の位相検出器９４ａの動作波形の一例である。４段のラッチ１１０〜１１３によって、セットアップバイオレーションによる初段のラッチ１１０内部の１／０論理未確定状態がフィルタされ、正しい固定信号ｆｘ（図１２の例では、ローレベルＬｏの固定信号ｆｘ）を出力できる。他の位相検出器９４ｂ〜９４ｄについても同様である。なお、図１２において、Ｌｏは、ローレベル、Ｈｉは、ハイレベルを表す。
【００５２】
したがって、各位相検出器９４ａ〜９４ｄにおいて、ラッチ１１０〜１１３のセットアップ又はホールドタイミングに対しての動作マージンの制限を緩和することができる。
【００５３】
１つの位相検出器だけでは、データクロック１９ｃとバウンダリクロック１９ｄとの位相差が比較的大きな場合に、適切な位相比較が難しい。しかし、複数の位相検出器を設けることで、データクロック１９ｃとバウンダリクロック１９ｄとの位相差が比較的大きな場合でも、適切な位相比較を行うことが容易になる。
【００５４】
４つの位相検出器９４ａ〜９４ｄでは、４つの直交位相の分周バウンダリクロック１９ｅがクロック入力として使用される。４つの直交位相の分周バウンダリクロック１９ｅ間に大きなオーバーラップがあるため、４つの位相検出器９４ａ〜９４ｄのそれぞれの正常動作範囲もオーバーラップされる。よって、各位相検出器９４ａ〜９４ｄ全てで位相比較ができなくなることや、正常動作範囲外で動作することを回避可能である。
【００５５】
また、各分周回路は、ソフトエラーが未対策のラッチ構成を有するものでもよい。この場合、ソフトエラーにより分周回路の内部ノードの論理値が反転する場合がある。これによって、第１の分周回路９１と第２の分周回路９２との位相同期関係が動作中に変化する。そのような事象が起こっても、位相検出回路９４の出力値も変化する結果、ＦＦ９７，９８のうち選択されるＦＦが切り替わるため、半導体回路９０でその変化はキャンセルされることとなる。このキャンセル過程において、回路９０に含まれる回路の遅延だけが再同期までのレイテンシを発生させるため、再同期までのレイテンシは十分に小さく、リアルタイムの同期が実現できる。
【００５６】
図１３は、バウンダリクロック１９ｄを分周して分周バウンダリクロック１９ｅを生成する第２の分周回路９２内のラッチ回路でソフトエラーが発生したときの各ノードの波形の一例を示す。図１３に示される分周バウンダリクロック１９ｅは、４つの直交位相の分周バウンダリクロック１９ｅのうちの一つの一例である。第２の分周回路９２内のラッチ回路の内部ノードがソフトエラーにより反転することにより、分周バウンダリクロック１９ｅは、半周期ずれてしまう。しかし、位相検出回路９４から出力される固定信号ｆｘの反転によりマルチプレクサ９５から出力される固定信号９６も反転するため、出力用ＦＦはＦＦ９７とＦＦ９８との間で切り替わり、ソフトエラーによる変化はキャンセルされる。
【００５７】
よって、第１の分周回路９１と第２の分周回路９２との位相同期がとれなくなった場合に、ラッチ回路のリセット信号等によりラッチ回路の初期化や動作中断のような事象を起こさずに、常に正常動作する状況を実現可能である。また、回路の電源遮断前後でも、複雑な設定等をすることなく、常に正常動作する状況を実現可能である。
【００５８】
図１４は、位相検出回路９４の内部構成の他の一例を示す図である。図１４の構成の基本的な機能は、図９の構成と同様であり、図１４の構成は、４つの位相検出器９４ｅ〜９４ｈを有する。４つの位相検出器９４ｅ〜９４ｈの少なくとも一つにおいて、図９の構成に対して、４つのラッチ１１０〜１１３へのクロックパス１１７またはデータパス１１８に、クロック又はデータの入力信号の伝達遅延時間を設けるためのバッファが挿入されている。図１４では、バッファ１１５ａ〜１１５ｇが例示されている。これにより、４つの位相検出器９４ｅ〜９４ｄのそれぞれの正常動作範囲がオーバーラップする部分を増加させることができ、内部バラツキによる正常動作範囲のオーバーラップの縮小をキャンセルすることができる。
【００５９】
４つの位相検出器９４ｅ〜９４ｈの少なくとも一つは、ラッチ１１０〜１１３に入力される分周バウンダリクロック１９ｅを遮断可能なクロックゲーティング回路１１６を有する。クロックゲーティング回路１１６は、クロックゲート信号ｉｐｄ＊の設定値にしたがって（＊は、図１４に示される例では、０〜３）、分周バウンダリクロック１９ｅを遮断するか否かを選択する。クロックゲーティング回路１１６は、４つの分周バウンダリクロック１９ｅのうち、外部制御信号４８の設定値により非選択の分周バウンダリクロック１９ｅを遮断することで、その非選択の分周バウンダリクロック１９ｅが入力される位相検出器が消費する電力を低減できる。クロックゲート信号ｉｐｄ＊の設定値は、例えば、後述するように、外部制御信号４８の設定値と同様に予め決められる。
【００６０】
図１５は、データ処理方法の一例を示すフローチャートである。図８を参照して、図１５の各工程について以下説明する。
【００６１】
第１の分周回路９１は、データクロック１９ｃを分周して第１の分周データクロック３５を出力する（第１の分周工程Ｓ１０）。第２の分周回路９２は、データクロック１９ｃと周波数が同じで位相が異なるバウンダリクロック１９ｄを分周して、位相が互いに異なる４つの分周バウンダリクロック（１９ｅ（０°），１９ｅ（９０°），１９ｅ（１８０°），１９ｅ（２７０°））を出力する（第２の分周工程Ｓ２０）。同期化回路１００の位相検出回路９４は、第１の分周データクロック３５内の一つの差動信号を４つの直交位相の分周バウンダリクロック１９ｅと位相比較する（位相比較工程Ｓ３０）。第２のマルチプレクサ９９は、バウンダリクロック１９ｄで同期化されたバウンダリデータ１５ｅを、第１の差動クロック９７ａで同期化するのか、第２の差動クロック９８ａで同期化するのかを、位相比較工程Ｓ３０での比較結果に従って選択する（選択工程Ｓ４０）。
【００６２】
このようなデータ処理方法によれば、第１の分周工程Ｓ１０での分周動作と第２の分周工程Ｓ２０での分周動作とが非同期になっても、データ順序がずれない同期方法を選択工程Ｓ４０で選択することができる。
【００６３】
ところで、マルチプレクサ９５が４つの位相検出器９４ａ〜９４ｄのうちどれを選択するのかは、外部レジスタ１０４に予め格納された外部制御信号４８の設定値（ＥＣＳ（External  Control  Signal）設定値）によって決まる。ＥＣＳ設定値は、データクロック１９ｃとバウンダリクロック１９ｄとの位相差の値に応じて設定される。しかし、チップ外部から現在のその位相差の値を定量的に判定することは難しい。そこで、以下のようなＥＣＳ設定値の決定・使用方法が提供される。
【００６４】
図１６は、ＥＣＳを設定するための構成の一例を示す図であり、具体的には、ＥＣＳ設定値を決定するための試験構成の一例を示す図である。図１６には、serdes回路１３０と、serdes回路１３０を検査する検査装置１０５とが示されている。serdes回路１３０は、シリアルデータを送信する送信回路１３１と、送信回路１３１から送信されたシリアルデータを受信する受信回路１３２とを備える送受信回路の一例である。図１６において、serdes回路１３０が半導体チップ上の回路である場合、検査装置１０５の測定装置１６２は、当該半導体チップの外部に設置される機器である。
【００６５】
図１６中の構成のうち図４と同一の構成については、図４中の符号と同一の符号が付されている。なお、受信回路１３２のサンプラ１４２は、図４中のプレフィルタアンプ１０とコンパレータ１２とラッチ１４とを含む回路である。
【００６６】
また、受信回路１３２の処理部１０３は、例えば、レジスタ１４３と、受信側選択回路１４４と、受信処理回路１４５とを有する。レジスタ１４３は、デマルチプレクサ１０２の出力データ１７（例えば、第２のパラレルデータ１７ｄ）を一時的に格納する。受信側選択回路１４４は、デマルチプレクサ１０２の出力データ１７の出力先を、受信処理回路１４５にするか測定装置１６２にするかを、選択信号１４０に従って選択する。受信処理回路１４５は、レジスタ１４３に記憶されたデータを所定の処理方法で処理する回路の一例である。
【００６７】
検査装置１０５は、シリアルデータの試験用波形を生成可能な波形生成装置１６１と、デマルチプレクサ１０２の第２のパラレルデータ１７ｄのビットエラー率（ＢＥＲ）を測定する測定装置１６２とを備える。
【００６８】
送信回路１３１は、送信側選択回路１４１を有する。送信側選択回路１４１は、送信回路１３１外部からのシリアルデータと波形生成装置１６１からの試験用シリアルデータとのいずれか一方を、選択信号１４０に従って選択する。
【００６９】
デマルチプレクサ１０２のＥＣＳ設定値を決めるため、波形生成装置１６１と、測定装置１６２と、送信側選択回路１４１と、受信側選択回路１４４とが設けられている。
【００７０】
ＥＣＳ設定値を決定する際の検査工程において、信号経路が選択信号１４０に従って送信側選択回路１４１により切り替えられ、波形生成装置１６１から既知のパターンを持つ試験用波形がマルチプレクサ４に入力され、ドライバ６から出力される。これにより、試験用シリアルデータが、受信回路１３２に送信される。受信した試験用シリアルデータは、デマルチプレクサ１０２によりパラレルデータに変換される。デマルチプレクサ１０２の出力データ１７は、受信処理回路１４５とは異なる信号経路を介して、測定装置１６２に供給される。測定装置１６２は、波形生成装置１６１から送信された既知の試験用シリアルデータと、所定の期待値とを比較することによって、第２のパラレルデータ１７ｄのビットエラー率（ＢＥＲ）を測定する。ここでのＥＣＳ設定値の決定は、検査装置１０５の測定装置１６２で行われ、手動が介在してもよい。
【００７１】
測定装置１６２は、データクロック１９ｃとバウンダリクロック１９ｄとの位相差（以下、「位相差φ」と称する）をスイープして各位相差φでのserdes回路１３０全体でのＢＥＲを測定することを、ＥＣＳ設定値の複数の候補値それぞれについて実行する。測定装置１６２は、例えば、ＢＥＲが最も低くなるＥＣＳ設定値と位相差φを選択する。
【００７２】
図１７は、ＥＣＳの設定の一例を示す図である。例えば図１７のようにＢＥＲがＥＣＳ設定値の各候補値について測定された場合、測定装置１６２は、ＢＥＲが最も低いＥＣＳ設定値を「０１」と決定し、ＥＣＳ設定値が「０１」のときにＢＥＲが最も低くなる位相差φを最適値として決定する。
【００７３】
図１８は、ＥＣＳ設定の他の一例を示す図である。検査装置１０５は、serdes回路１３０の電源電圧をスイープしてＥＣＳ設定値の各候補値でのserdes回路１３０全体でのＢＥＲを測定する。図１８中、「Ｐ」は、ＢＥＲの測定値が所定の基準を満たしていることを示し、「Ｆ」は、ＢＥＲの測定値が所定の基準を満たしていないことを示す。図１８のようにＢＥＲがＥＣＳ設定値の各候補値について測定された場合、測定装置１６２は、ＥＣＳ設定値の４つの候補値のうち、最も動作範囲の広い（すなわち、電源電圧が低くてもＢＥＲの測定値が所定の基準を満たす）候補値を最良の設定値として決定する（図１８の場合、「０１」）。
【００７４】
図１９は、ＥＣＳを設定するための構成の他の一例を示す図であり、送信回路１３４と受信回路１３５とを備えるserdes回路１３３が示されている。図１６では、ＥＣＳの設定値を外部で決定していたが、図１９ではファームウェア等のソフトウェアの実行により自動的に決定する構成が示されている。図１９では、送信側ファームウェア１５１を搭載するコアと受信側ファームウェア１５２を搭載するコアが（または、オペレーティングシステム（ＯＳ）を搭載するコアが）、波形生成装置１６１、ＢＥＲ測定、選択信号１４０の切り替え、ＥＣＳの設定を自動制御する。例えば、serdes回路１３３の電源オン時でのイニシャルシーケンス中に、ＥＣＳ設定値の最適化が行われ、ＥＣＳ設定値の最適化後、通常の送受信動作が開始可能になる。
【００７５】
図２０は、半導体装置を検査する検査方法の一例を示すフローチャートである。図１６又は図１９を参照して、図２０の各工程について以下説明する。
【００７６】
測定装置１６２は、ＥＣＳ設定値の複数の候補値で第２のパラレルデータ１７ｄのビットエラー率を測定する（測定工程Ｓ１１０）。測定装置１６２は、ＥＣＳ設定値の複数の候補値のうちビットエラー率が所定の判定基準を満たす候補値を選択する（選択工程Ｓ１２０）。測定装置１６２は、選択工程Ｓ１２０で選択された候補値を外部レジスタ１０４に記憶させる（記憶工程Ｓ１３０）。
【００７７】
図２１は、最適なＥＣＳ及び位相差φを探索する探索方法の一例を示すフローチャートであり、図２０の測定工程Ｓ１１０の一具体例を示す。図２２は、図２１における各変数の関係の一例を説明するための図であり、位相差φをスイープしたときのＢＥＲ測定値の一例が示されている。図２２を参照して、図２１について以下説明する。
【００７８】
測定装置１６２は、ＥＣＳ設定値の複数の候補値の中から一つの候補値を設定する（Ｓ２１０）。測定装置１６２は、ＢＥＲ測定値が所定の閾値ｔｈｂ（第１閾値の一例）未満のＰＣがあるか否かを判定する（Ｓ２２０）。ＰＣとは、位相差φを所望の値に制御するための位相差コードである。
【００７９】
測定装置１６２は、ＢＥＲ測定値が所定の閾値ｔｈｂ未満のＰＣがないと判定した場合、閾値ｔｈｂを所定値だけ増加させて、再度、Ｓ２２０の判定を実施する。測定装置１６２は、ＢＥＲ測定値が所定の閾値ｔｈｂ未満のＰＣが少なくとも一つあると判定した場合、その少なくとも一つのＰＣのうちの任意の一つのＰＣを選択する（Ｓ２４０）。
【００８０】
測定装置１６２は、ＢＥＲが所定の閾値ｔｈｕ（第１閾値よりも大きな第２閾値の一例）に一致する２つのＰＣを抽出し、一方のＰＣをＰＣの最小候補値ｐｃｌとして取得し、他方のＰＣをＰＣの最大候補値ｐｃｒとして取得する（Ｓ２５０）。
【００８１】
測定装置１６２は、直前のＳ２４０で選択したＰＣが、最小候補値ｐｃｌと最大候補値ｐｃｒとの中間値であるか否かを判定する（ステップＳ２６０）。測定装置１６２は、直前のＳ２４０で選択したＰＣが、最小候補値ｐｃｌと最大候補値ｐｃｒとの中間値ではないと判定した場合、閾値ｔｈｂ未満の別のＰＣを再選択する（Ｓ２４０）。一方、測定装置１６２は、直前のＳ２４０で選択したＰＣが、最小候補値ｐｃｌと最大候補値ｐｃｒとの中間値であると判定した場合、探索結果を出力する（Ｓ２７０）。
【００８２】
例えば、Ｓ２７０において、測定装置１６２は、Ｓ２４０で選択されたＰＣ，位相幅ｐｗ（ｐｃｒとｐｃｌとの差）及び閾値ｔｈｂを、Ｓ２１０で設定されたＥＣＳ設定値の候補値での探索結果として出力する。
【００８３】
この探索方法によれば、ＥＣＳ設定値の候補値ごとに、最適なＰＣ、位相幅ｐｗ、ＢＥＲ測定値の下限値（閾値ｔｈｂの下限値）が得られる。測定装置１６２は、例えば、ＥＣＳ設定値の複数の候補値のうち、ＢＥＲ測定値の下限値が最も小さく且つ位相幅ｐｗが最も大きくなる候補値を最適値として選択し、探索結果として出力できる（図２０の選択工程Ｓ１２０）。
【００８４】
以上、半導体装置、デマルチプレクサ、半導体回路、データ処理方法及び検査方法を実施形態により説明したが、本発明は上記実施形態に限定されるものではない。他の実施形態の一部又は全部との組み合わせや置換などの種々の変形及び改良が、本発明の範囲内で可能である。
【００８５】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部とを備える、半導体装置。
（付記２）
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力し、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記複数の位相検出器から一つを選択するマルチプレクサとを有する、付記１に記載の半導体装置。
（付記３）
外部制御信号の設定値を格納するメモリを備え、
前記マルチプレクサは、前記外部制御信号の設定値に従って前記複数の位相検出器から一つを選択する、付記２に記載の半導体装置。
（付記４）
前記第３のラッチ回路は、
前記複数の分周バウンダリクロックのうち、位相が互いに１８０°異なる２つのクロックを一組とする第１の差動クロックで同期化する第１のフリップフロップと、
前記第１の差動クロックの位相に対してそれぞれ１８０°ずれる第２の差動クロックで同期化する第２のフリップフロップと、
前記第１のフリップフロップの出力と前記第２のフリップフロップの出力とのいずれか一方を、前記マルチプレクサの出力に従って選択する第２のマルチプレクサとを有する、付記２又は３に記載の半導体装置。
（付記５）
前記複数の位相検出器の少なくとも一つは、クロック又はデータがバッファを介して入力されるラッチを有する、付記２から４のいずれか一項に記載の半導体装置。
（付記６）
前記複数の位相検出器の少なくとも一つは、クロックを遮断可能なクロックゲーティング回路を有する、付記２から５のいずれか一項に記載の半導体装置。
（付記７）
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路とを備える、デマルチプレクサ。
（付記８）
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化してパラレルバウンダリデータに変換するラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路とを備える、半導体回路。
（付記９）
データクロックを分周して分周データクロックを出力する第１の分周工程と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力する第２の分周工程と、
前記分周データクロック内の一つの差動信号を前記複数の分周バウンダリクロックと位相比較する位相比較工程と、
前記バウンダリクロックで同期化されたバウンダリデータを、前記複数の分周バウンダリクロックのうち位相が互いに１８０°異なる２つのクロックである第１の差動クロックで同期化するのか、前記第１の差動クロックの位相に対してそれぞれ１８０°ずれる第２の差動クロックで同期化するのかを、前記位相比較工程での比較結果に従って選択する選択工程とを有する、データ処理方法。
（付記１０）
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部と、
外部制御信号の設定値を格納するメモリとを備える半導体装置であって、
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力し、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記設定値に従って前記複数の位相検出器から一つを選択するマルチプレクサとを有する半導体装置を検査する検査方法であって、
前記設定値の複数の候補値で前記第２のパラレルデータのビットエラー率を測定する測定工程と、
前記複数の候補値のうち前記ビットエラー率が所定の判定基準を満たす候補値を選択する選択工程と、
前記選択工程で選択された前記候補値を前記設定値として前記メモリに記憶させる記憶工程とを有する、検査方法。
（付記１１）
データクロックを分周して第１の分周データクロックを出力する第１の分周回路と、
前記データクロックと周波数が同じで位相が異なるバウンダリクロックを分周して分周バウンダリクロックを出力する第２の分周回路と、
前記第１の分周データクロックを分周して第２の分周データクロックを出力する第３の分周回路と、
前記データクロックで同期化されたシリアルの入力データを前記第１の分周データクロックで同期化して第１のパラレルデータに変換する第１のラッチ回路と、
前記第１のパラレルデータを前記第２の分周データクロックで同期化して第２のパラレルデータに変換する第２のラッチ回路と、
前記バウンダリクロックで同期化されたシリアルのバウンダリデータを前記分周バウンダリクロックで同期化して第１のパラレルバウンダリデータに変換する第３のラッチ回路と、
前記第１のパラレルバウンダリデータを前記第２の分周データクロックで同期化して第２のパラレルバウンダリデータに変換する第４のラッチ回路と、
前記第１の分周データクロックと前記分周バウンダリクロックとを同期化する同期化回路と、
前記第２のパラレルデータと前記第２のパラレルバウンダリデータと前記第２の分周データクロックとを処理する処理部と、
外部制御信号の設定値を格納するメモリとを備える半導体装置に関して、前記設定値を探索する探索方法であって、
前記第２の分周回路は、前記バウンダリクロックを分周して、位相が互いに異なる複数の分周バウンダリクロックを出力するものであり、
前記同期化回路は、
前記第１の分周データクロック内の一つの差動信号と、前記複数の分周バウンダリクロックとを位相比較するための複数の位相検出器を含む位相検出回路と、
前記設定値に従って前記複数の位相検出器から一つを選択するマルチプレクサとを有するものであり、
前記データクロックと前記バウンダリクロックとの位相差であって前記第２のパラレルデータのビットエラー率の測定値が第１閾値未満となる位相差が存在するまで前記第１閾値を増加させる増加ステップと、
前記データクロックと前記バウンダリクロックとの位相差であって前記測定値が前記第１閾値よりも大きな所定の第２閾値に一致する２つの位相差を取得する取得ステップと、
前記設定値の複数の候補値のうち、前記第１閾値が最も小さく且つ前記２つの位相差の間の位相幅が最も大きな候補値を探索結果として出力する出力ステップとを有する、探索方法。
【符号の説明】
【００８６】
１  第１の半導体チップ
２  第２の半導体チップ
１５  シリアルデータ
１５ａ，１５ｃ  入力データ
１５ｂ，１５ｄ  バウンダリデータ
１６  デマルチプレクサ
１７ａ  パラレルデータ
１７ｂ  パラレルバウンダリデータ
１７ｃ  分周データクロック
１７ｄ  第２のパラレルデータ
１７ｅ  第２のパラレルバウンダリデータ
１７ｆ  第２の分周データクロック
１８  ＣＤＲ部
１９  クロック
１９ａ，１９ｃ  データクロック
１９ｂ，１９ｄ  バウンダリクロック
１９ｅ  分周バウンダリクロック
２５  第１のラッチ回路
２６  第２のラッチ回路
２７  第１のパラレルデータ
３４  第３の分周回路
３５  第１の分周データクロック
４５  第４のラッチ回路
４７  第１のパラレルバウンダリデータ
４８  外部制御信号
６３，７２  差動ラッチ
９０  半導体回路
９１  第１の分周回路
９２  第２の分周回路
９３  第３のラッチ回路
９４  位相検出回路
９４ａ〜９４ｄ  位相検出器
９５  マルチプレクサ
９６  固定信号
９７  第１のフリップフロップ
９７ａ  第１の差動クロック
９８  第２のフリップフロップ
９８ａ  第２の差動クロック
９９  第２のマルチプレクサ
１００  同期化回路
１０１  半導体装置
１０２  デマルチプレクサ
１０３  処理部
１０４  外部レジスタ
１０５  検査装置
１１０〜１１３  ラッチ
１１５ａ〜１１５ｇ  バッファ
１１６  クロックゲーティング回路
１３０，１３３  serdes回路
１３１，１３４  送信回路
１３２，１３５  受信回路
１４０  選択信号
１６１  波形生成装置
１６２  測定装置
１０００  分周器群
１００１  第１のフリップフロップ群
１００２  第２のフリップフロップ群
【図１】
0006631117.tif 000002
【図２】
0006631117.tif 000003
【図３】
0006631117.tif 000004
【図４】
0006631117.tif 000005
【図５】
0006631117.tif 000006
【図６】
0006631117.tif 000007
【図７】
0006631117.tif 000008
【図８】
0006631117.tif 000009
【図９】
0006631117.tif 000010
【図１０】
0006631117.tif 000011
【図１１】
0006631117.tif 000012
【図１２】
0006631117.tif 000013
【図１３】
0006631117.tif 000014
【図１４】
0006631117.tif 000015
【図１５】
0006631117.tif 000016
【図１６】
0006631117.tif 000017
【図１７】
0006631117.tif 000018
【図１８】
0006631117.tif 000019
【図１９】
0006631117.tif 000020
【図２０】
0006631117.tif 000021
【図２１】
0006631117.tif 000022
【図２２】
0006631117.tif 000023