(57)【特許請求の範囲】
【請求項１】
シリアル伝送データをパラレル伝送データに変換するシリアル・パラレル変換装置であって、
クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、
該複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、
前記ストローブ作成回路が出力した複数のストローブ信号を用いてシリアル伝送データをラッチし、該ラッチしたシリアル伝送データから、該シリアル伝送データと該クロック信号とのスキューの有無を検出し、その結果に応じた制御信号を出力するスキュー検出回路と、
該検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、
該選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、
を備えたことを特徴とするシリアル・パラレル変換装置。
【請求項２】
シリアル伝送データをパラレル伝送データに変換するシリアル・パラレル変換装置であって、
クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、
該複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、
前記シリアル伝送データの遷移を検出して、検出信号を出力するエッジ検出回路と、
前記ストローブ作成回路が作成したストローブ信号及び該検出信号に基づいて、該シリアル伝送データと該クロック信号とのスキューを検出するスキュー検出回路と、
該検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、
該選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、
を備えたことを特徴とするシリアル・パラレル変換装置。
【請求項３】
前記ＰＬＬ回路は、電圧制御発振器及び分周器を有し、該分周器の分周比を変更して、該電圧制御発振器の発振周波数の設定を変えることで、スキュー調整分解能が可変であることを特徴とする請求項１または２に記載のシリアル・パラレル変換装置。
【請求項４】
前記クロック信号の周期をＴ、前記電圧制御発振器を構成するインバータ素子の段数をＭ、及び前記分周器の分周比をＮとすると、前記スキュー調整分解能は、Ｔ／（Ｍ・Ｎ）であることを特徴とする請求項３に記載のシリアル・パラレル変換装置。
【請求項５】
前記ＰＬＬ回路は、Ｍ段（Ｍ：奇数）の素子からなる発振器と、該発振器の出力を１／Ｎ分周する分周器と、該１／Ｎ分周された信号及び前記クロック信号の位相を比較し、位相差がなくなるように該発振器を制御する制御回路と、を備え、該発振器の各素子は、前記クロック信号に応じた前記タップ出力信号を出力することを特徴とする請求項１乃至４のいずれかに記載のシリアル・パラレル変換装置。
【請求項６】
前記スキュー検出回路は、入力されたシリアル伝送データ中の１ビットのみ遷移するシリアルデータパターンに対して、スキュー検出を行うことを特徴とする請求項１乃至５のいずれかに記載のシリアル・パラレル変換装置。
【請求項７】
前記スキュー検出手段は、シリアル伝送データ中の遷移する１ビット及びその前後の１ビットに対して、スキュー検出を行うことを特徴とする請求項６に記載のシリアル・パラレル変換装置。
【請求項８】
請求項１乃至７のいずれかに記載のシリアル・パラレル変換装置を半導体基板上に形成したことを特徴とする半導体装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クロック信号に対するデータ信号のスキューを自己補正するシリアル・パラレル変換装置に関する。
【０００２】
【従来の技術】
クロック信号とデータ信号との伝播時間が異なる場合には、両信号間に、信号の位相のばらつきであるスキューが生じる。そして、その結果としてクロック信号に対するデータ信号のセットアップ時間やホールド時間が、充分満たされなくなるといった問題が生じることがある。また、高速データ伝送などの場合には、誤ったデータの受信につながってしまうという問題が発生しやすい。
【０００３】
そこで、上記の問題の解決策として、特開平１１−１６８３６５号公報には、スキュー補正装置に関する技術が開示されている。このスキュー補正装置は、入力データ信号の遷移を検出した時にパルス信号を供給するための遷移検出器と、前記入カデータ信号を可変の遅延量だけ遅延させた第１の遅延データを生成するための可変ディレイラインと、前記第１の遅延データ信号を固定の遅延量だけさらに遅延させた第２の遅延データ信号を生成するための固定ディレイラインと、前記第２の遅延データ信号の遷移を前記クロック信号の位相と比較するためのフェーズコンパレータと、を備えている。そして、遷移検出器からパルス信号が供給されたことを条件として、フェーズコンパレータは、第２の遅延データ信号の遷移が前記クロック信号の立ち上がりエッジと実質的に同相になるように、可変ディレイラインの遅延量を制御し、第１の遅延データ信号が前記クロック信号とともに出力される。
【０００４】
このスキュー補正装置を用いることで、データ信号の遷移があった場合にのみフェーズコンパレータによる可変ディレイラインの制御を有効化することとしたので、セットアップモードのみならず通常動作モードでもクロック信号とデータ信号との間のスキューを補正することができる。したがって、温度上昇等の環境変化に応じたスキュー補正が可能になる。
【０００５】
また、特開２０００−７８０２７７公報には、送信側でジッタが生じても受信側でのクロックの位相ずれを解消し、表示画像を良好にする技術として、シリアルパラレル変換装置、半導体装置、電子機器及びデータ伝送システムに関する技術が開示されている。この技術では、上記問題の解決手段として、送信クロックからシリアル・パラレル変換を行うためのクロックを再生させるとともに、シリアルデータの単位データ列ごとに同期検出ビットを設け、再生クロックと同期をとり、安定したシリアル・パラレル変換を行うことを特徴とする。すなわち、シリアル・パラレル変換部は、所定ビット数の単位データ列を有する第１データ列が、同期期間に続くシリアルデータＤＡ１を、元となるパラレルデータからの変換用クロックＣＬ１に基づいてサンプリングして、単位データ列毎にパラレルデータに変換する。そして、信号生成手段は、シリアルデータＤＡ１とクロックＣＬ１に基づいて同期信号を生成する。なお、シリアルデータは、同期期間内に所定ビットパターンの単位データ列の同期検出用第２データ列を含んでいる。信号生成手段は、第２データ列中の単位データ列を検出して同期信号を生成し、シリアル・パラレル変換部で第１データ列中の単位データ列の先頭位置を検出する。
【０００６】
このような構成及び動作により、シリアルパラレル変換部での変換タイミングのずれを解消し、シリアルデータを正確にパラレルデータに変換し、受信側の表示画像を良好にすることができる。
【０００７】
【発明が解決しようとする課題】
前記の特開平１１−１６８３６５号公報に開示されたスキュー補正装置では、クロックレートとデータレートとが等しい場合は有効となり得るが、１クロックレートに対し多ビットのシリアルデータが存在し、これらシリアルデータをパラレルに変換するようなシステムに使用するには不適当である。
【０００８】
また、前記の特開２０００−７８０２７７公報に開示された技術では、送信側に予め同期検出ビットをデータにコーディングさせておく必要があり、単純なシリアルデータをパラレルデータに変換する場合には適さない。
【０００９】
そこで、本発明は上記の問題を解決するために創作したものであり、その目的は、予め同期検出ビットをデータにコーディングさせることなく、データ信号とクロック信号との間でスキューが生じても、クロック信号に対する入力データ信号を自己補正するシリアル・パラレル変換装置を提供することである。
【００１０】
【課題を解決するための手段】
この発明は、上記の課題を解決するための手段として、以下の構成を備えている。
【００１３】
（１）シリアル伝送データをパラレル伝送データに変換するシリアル・パラレル変換装置であって、
クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、
該複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、
前記ストローブ作成回路が出力した複数のストローブ信号を用いてシリアル伝送データをラッチし、該ラッチしたシリアル伝送データから、該シリアル伝送データと該クロック信号とのスキューの有無を検出し、その結果に応じた制御信号を出力するスキュー検出回路と、
該検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、
該選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、
を備えたことを特徴とする。
【００１４】
この構成において、シリアル・パラレル変換装置は、クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、ストローブ作成回路が出力した複数のストローブ信号を用いてシリアル伝送データをラッチし、ラッチしたシリアル伝送データからスキューの有無を検出した結果に応じた制御信号を出力するスキュー検出回路と、検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、を備え、これらによって、シリアル伝送データをパラレル伝送データに変換する。したがって、シリアルデータをパラレルデータに変換する際にスキューの有無を専用回路で確実に検出し、その検出結果に基づき適切なストローブ信号を選択できるので、データにスキューが生じた場合でも安定したシリアル・パラレル変換を行うことが可能となる。
【００１５】
（２）シリアル伝送データをパラレル伝送データに変換するシリアル・パラレル変換装置であって、
クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、
該複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、
前記シリアル伝送データの遷移を検出して、検出信号を出力するエッジ検出回路と、
前記ストローブ作成回路が作成したストローブ信号及び該検出信号に基づいて、該シリアル伝送データと該クロック信号とのスキューを検出するスキュー検出回路と、
該検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、
該選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、
を備えたことを特徴とする。
【００１６】
この構成においては、シリアル・パラレル変換装置は、クロック信号を分周して複数のタップ出力信号を出力するＰＬＬ回路と、複数のタップ出力信号を用いて、位相が異なった複数のストローブ信号を作成するストローブ作成回路と、シリアル伝送データの遷移を検出して、検出信号を出力するエッジ検出回路と、ストローブ作成回路が作成したストローブ信号及び検出信号に基づいて、シリアル伝送データとクロック信号とのスキューを検出するスキュー検出回路と、検出したスキューに応じたストローブ信号を選択するストローブ選択回路と、選択したストローブ信号によってシリアル伝送データをパラレル伝送データに変換するロジック回路と、を備え、これらによって、シリアル伝送データをパラレル伝送データに変換する。したがって、シリアルデータ中に特定の検出ビットデータを必要とすることなく、シリアル伝送データとクロック信号とのスキューを検出することが可能となる。また、ストローブ信号を制御することで、スキュー検出の分解能を可変にすることが可能となる。なお、シリアル伝送データの遷移の検出とは、シリアル伝送データの立ち上がり又は立ち下がりの検出のことである。
【００１７】
（３）前記ＰＬＬ回路は、電圧制御発振器及び分周器を有し、該分周器の分周比を変更して、該電圧制御発振器の発振周波数の設定を変えることで、スキュー調整分解能が可変であることを特徴とする。
【００１８】
この構成において、分周器の分周比を変更して、電圧制御発振器の発振周波数の設定を変えることで、ＰＬＬ回路は、スキュー調整分解能が可変である。したがって、スキュー自己補正感度を容易に変化させることができることから使用用途に応じてシリアル・パラレル変換精度を向上させることが可能となる。
【００１９】
（４）上記（３）において、前記クロック信号の周期をＴ、前記電圧制御発振器を構成するインバータ素子の段数をＭ、及び前記分周器の分周比をＮとすると、前記スキュー調整分解能は、Ｔ／（Ｍ・Ｎ）であることを特徴とする。
【００２０】
この構成において、シリアル・パラレル変換装置のスキュー調整分解能は、クロック信号の周期をＴ、電圧制御発振器を構成するインバータ素子の段数をＭ、及び分周器の分周比をＮとすると、Ｔ／（Ｍ・Ｎ）である。したがって、ＰＬＬ回路の分周器の分周比を変化させ、ストローブ作成回路への入力信号周波数を上げることにより、スキュー検出用のストローブ信号の数を増加させることができ、シリアルデータの１ビット当たりに割り当てられるストローブ信号の数を増やすことによって、スキュー検出の分解能を増加させることができ、より精度良くスキューを検出できる。また、適切なストローブを選択できることから、安定したシリアル・パラレル変換回路、及び半導体装置を提供することが可能となる。
【００２１】
（５）前記ＰＬＬ回路は、Ｍ段（Ｍ：奇数）の素子からなる発振器と、該発振器の出力を１／Ｎ分周する分周器と、該１／Ｎ分周された信号及び前記クロック信号の位相を比較し、位相差がなくなるように該発振器を制御する制御回路と、を備え、該発振器の各素子は、前記クロック信号に応じた前記タップ出力信号を出力することを特徴とする。
【００２２】
この構成においては、ＰＬＬ回路では、制御回路は１／Ｎ分周された信号及び前記クロック信号の位相を比較し、位相差がなくなるように発振器を制御する。また、発振器はＭ段（Ｍ：奇数）の素子からなり、各素子はクロック信号に応じたタップ出力信号を出力する。したがって、ＰＬＬ回路の発振器における各素子の段数を変化させることで、データストローブ信号数を増減させて、スキュー調整分解能を可変にすることが可能となる。
【００２３】
（６）前記スキュー検出回路は、入力されたシリアル伝送データ中の１ビットのみ遷移するシリアルデータパターンに対して、スキュー検出を行うことを特徴とする。
【００２４】
この構成において、入力されたシリアル伝送データ中の１ビットのみ遷移するシリアルデータパターンに対して、スキュー検出回路はスキュー検出を行う。したがって、シリアルデータ中に予めスキュー検出ビットをコーディングさせる必要がなく、任意のデータ入力に対し、あるパターンが入力された場合のみ反応して、スキュー検出を行い、同時にスキュー補正を行うことが可能となる。
【００２５】
（７）上記（６）において、前記スキュー検出手段は、シリアル伝送データ中の遷移する１ビット及びその前後の１ビットに対して、スキュー検出を行うことを特徴とする。
【００２６】
この構成において、シリアル伝送データ中の遷移する１ビット及びその前後の１ビットに対して、スキュー検出手段はスキュー検出を行う。したがって、少ないデータで、確実にスキューを検出することが可能となる。
【００２７】
（８）（１）乃至（７）のいずれかに記載のシリアル・パラレル変換装置を半導体基板上に形成したことを特徴とする。
【００２８】
この構成において、半導体装置は、（１）乃至（７）のいずれかに記載のシリアル・パラレル変換装置を半導体基板上に形成している。したがって、安定してシリアル・パラレル変換を行う半導体装置を提供することが可能となる。
【００２９】
【発明の実施の形態】
［第１実施形態］
図１は、本発明の第１実施形態に係るシリアル・パラレル変換装置の概略構成を示したブロック図である。シリアル・パラレル変換装置１は、Ｎビットのシリアル伝送データ（以下、シリアルデータと称する。）を、Ｎビットのパラレル伝送データ（以下、パラレルデータと称する。）に変換するシリアル・パラレル変換ロジック回路１１、シリアル・パラレル変換ロジック回路１１にシリアル・パラレル変換を実行させるためのストローブ信号を作成するＰＬＬ回路１２及びストローブ作成回路１３、最適なストローブ信号を選択するためのストローブ選択回路１４、並びにデータ信号とクロック信号とのスキューを検出するスキュー検出回路１５から構成される。
【００３０】
以下に、シリアル・パラレル変換装置における各部の構成・動作等について説明する。まず初めに、ＰＬＬ（Phase Locked Loop ）回路１２について説明する。図２は、ＰＬＬ回路の構成を示したブロック図である。ＰＬＬ回路１２は、一般的なＰＬＬ回路の構成であり、位相比較器２１、チャージポンプ２２、ループフィルタ２３、ＶＣＯ（電圧制御発振器）２４、及び分周器２５から成る。
【００３１】
位相比較器２１は、基準信号（ｆｒ）と、分周器２５からの帰還信号（ｆｐ）と、の間の位相差を検出し、ＶＣＯ２４の発振周波数を上昇させる制御信号（ＵＰ）、又は下降させる制御信号（ＤＮ）を出力する。基準信号（ｆｒ）に対して帰還信号（ｆｐ）が遅れている時は、位相比較器２１から、ＶＣＯ２４の発振周波数を上昇させる制御信号（ＵＰ）が位相差に相当する期間出力される。逆に、基準信号（ｆｒ）に対して帰還信号（ｆｐ）が進んでいる時は、位相比較器２１から、ＶＣＯ２４の発振周波数を下降させる制御信号（ＤＮ）が位相差に相当する期間出力される。このように、位相比較器２１は、入力される２つの信号の位相差をパルス幅変換した信号を出力する。
【００３２】
チャージポンプ２２は、位相比較器２１からの制御信号（ＵＰ、ＤＮ）をアナログ信号に変換し、ループフィルタ２３を通して、その出力信号ＣＰＯを制御電圧（Ｖｃ）としてＶＣＯ２４に与える。
【００３３】
ループフィルタ２３は、抵抗及びコンデンサで構成されたローパスフィルタ回路であり、チャージポンプ２２からの出力信号ＣＰＯに含まれるスイッチングノイズ等を低減する目的、及びフィードバックループを安定化する目的で用いられる。
【００３４】
ＶＣＯ２４の出力信号（ｆｏ）は、このＰＬＬ回路１２の出力信号（ｆｏ）として出力されるとともに、分周器２５で分周されて帰還信号（ｆｐ）として位相比較器２１へ入力される。その際、出力信号（ｆｏ）は、分周器２５で１／Ｎの周波数へ変換されるので、帰還信号（ｆｐ）と出力信号（ｆｏ）の周波数の関係は、次式（１）で表される。
ｆｐ＝ｆｏ／Ｎ  ・・・・・（１）
なお、分周器２５は、分周比を変更可能である。
【００３５】
ＰＬＬ回路１２は、ｆｒ＝ｆｐとなるように制御電圧（Ｖｃ）を制御するので、出力信号（ｆｏ）は、次式（２）のように表される。
ｆｏ＝Ｎ×ｆｒ  ・・・・・（２）
すなわち、基準信号（ｆｒ）に対してＮ倍の周波数の出力信号（ｆｏ）が、ＰＬＬ回路１２から出力されることになる。
次に、ＶＣＯ２４の構成について説明する。図３は、ＶＣＯ２４の概略構成を示した回路図である。本発明のＶＣＯ２４は、図３（Ｂ）に示したように、入力される制御電圧（Ｖｃ）に応じて発振周波数が変化するＭ段（Ｍ：奇数）リング発振器３１を備えた構成である。本発明では、リング発振器３１を構成するＭ個のインバータ素子の各タップから出力される出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）をＰＬＬ回路１２の出力として利用している。また、出力信号ｐｈｉ１が分周器に入力され、分周されて帰還信号（ｆｐ）として位相比較器に帰還される。
【００３６】
このように構成することで、ＰＬＬ回路１２の出力となる出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）は、基準信号（ｆｒ）の分周比（Ｎ）倍の周波数となり、基準信号（ｆｒ）の周期をＴとすると、それぞれの位相がＴ／（Ｎ・Ｍ）ずつ遅延した出力信号となる。
【００３７】
次に、ストローブ作成回路１３について説明する。ストローブ作成回路１３は、前記のＰＬＬ回路１２から出力された出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）が入力されて、複数のストローブ信号を作成する。
【００３８】
図４は、ストローブ作成回路の概略構成を示した回路図である。ストローブ作成回路１３は、Ｄフリップフロップによる簡単な構成でＰＬＬ回路１２の出力信号（タップ出力信号）ｐｈｉ１〜ｐｈｉ（Ｍ）を用いて、ストローブ信号を作成することができる。例えば、図４に示したように、Ｍ個のＤフリップフロップｄ１〜ｄ（Ｍ）のクロック入力端子ＣＫに、ＰＬＬ回路１２の出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）がそれぞれ入力されるように接続する。また、出力信号ｐｈｉ１をクロック入力端子に入力するＤフリップフロップｄ１のみ、出力端子／Ｑをデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ１〜ｄ（Ｍ−１）の各出力端子Ｑを、次段のＤフリップフロップｄ２〜ｄ（Ｍ）のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ１〜ｄＭの各出力端子Ｑから出力される信号をストローブ信号ｓｔｂ１〜ｓｔｂ（Ｍ）とする。この構成によって、出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）を用いて複数のストローブ信号を作成する。また、ストローブ信号を作成するためのストローブ作成回路１３への入力信号ｐｈｉ１〜ｐｈｉ（Ｍ）の組み合わせについては適宜選択し、出力となる複数のストローブ信号が規則的に作成されるようにしなければならない。
【００３９】
次に、スキュー検出回路１５について説明する。スキュー検出回路１５では、前記のストローブ作成回路１３によって作成されたストローブ信号を使用して、シリアル・パラレル変換ロジック回路１１へ入力されるシリアルデータをラッチする。このラッチ結果により、スキュー検出回路１５では、スキューの有無を判定する。
【００４０】
つまり、任意に入力されるシリアルデータパターンの中から、シリアルデータ中の１ビットのみ遷移しているシリアルデータに着目する。そして、スキュー検出回路１５は、その遷移１ビットを含む複数ビットをラッチした結果により、スキューの有無を判定する。このようにすることで、シリアルデータ中に予めスキュー検出ビットをコーディングさせる必要がなく、任意のデータ入力に対し、あるパターンが入力された場合のみ反応して、スキュー検出を行い、同時にスキュー補正を行うことができる。
【００４１】
また、判定するＮビットシリアルデータにおけるビットの組み合わせについては、以下の２パターンのように１ビットのみ遷移しているデータとなる。
Ｄ［１：Ｎ］＝００・・・０１０・・・００    （３）
Ｄ［１：Ｎ］＝１１・・・１０１・・・１１    （４）
いま、上記のスキュー検出データがパターン（３）の時に、遷移している１ビットを含む前後３ビットに対してスキュー検出方法を行うものとする。なお、遷移している１ビットを、以下Ｘビットと称する。各ビットについてストローブ作成回路１３から供給される複数のストローブ信号によりラッチされた結果は、スキューが無い場合、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（０００・・０，１・・１１１・・１，０・・０００）となる。
【００４２】
一方、データ遅れによってスキューが生じている場合、遷移している１ビットを含む連続した３ビット０，１，０を作成したストローブでラッチした結果は、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（０００・・０，０・１１１・１，１・・０００）のようになる。逆に、データ進みによってスキューが生じている場合、ストローブでラッチした結果は、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（０００・・１，１・１１１・０，０・・０００）となる。
【００４３】
このように、上記のパターン（３）の場合、シリアルデータの遷移している１ビットデータ（Ｈｉｇｈデータ）を、数本のストローブ信号でラッチした結果は、スキューが存在しない時、すべて“１”（Ｈｉｇｈ）となる。これに対して、スキューが存在する場合は、ラッチした結果がすべて“１”にならないことが分かる。つまり、シリアルデータのある１ビットのみ遷移するデータに着目し、複数の規則的に作成されたストローブでラッチした結果により、スキューの有無を判定することができる。
【００４４】
同様にして、スキュー検出データがパターン（４）の時、遷移している１ビットを含む前後３ビットについて、ストローブ作成回路１３から得られるストローブによってラッチされた結果は、スキューが無い場合、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（１１１・・１，０・・０００・・０，１・・１１１）となる。
【００４５】
一方、データ遅れによってスキューが生じている場合のラッチ結果は、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（１１１・・１，１・０００・０，０・・１１１）のようになる。逆に、データ進みによってスキューが生じている場合、ストローブでラッチした結果は、（Ｘ−１ビット，Ｘビット，Ｘ＋１ビット）＝（１１１・・０，０・０００・１，１・・１１１）となる。
【００４６】
このように、上記のパターン（４）の場合も同様に、シリアルデータの遷移している１ビットデータ（Ｌｏｗデータ）を数本のストローブ信号でラッチした結果は、スキューが存在しない時、すべて“０”（Ｌｏｗ）となる。これに対して、スキューが存在する場合は、ラッチした結果がすべて“０”（Ｌｏｗ）にならないことが分かる。つまり、シリアルデータのある１ビットのみ遷移するデータに着目し、複数の規則的に作成されたストローブでラッチした結果により、スキューの有無を判定することができる。
【００４７】
続いて、ストローブ選択回路１４について説明する。ストローブ選択回路１４は、ＭＵＸ（マルチプレクサ）回路等で構成され、スキュー検出回路１５の検出結果に基づき、適切なストローブ信号を選択することになる。スキューが存在しない場合、シリアルデータの各ビットデータそれぞれについて、ストローブ信号ｓｔｂ（Ｎ）を選択する。一方、データにスキューが発生した場合、すなわち、データが遅れている場合は、ストローブ信号ｓｔｂ（Ｎ＋１），ｓｔｂ（Ｎ＋２），・・・を選択する。また、データが進んでいる場合は、ストローブ信号ｓｔｂ（Ｎ−１），ｓｔｂ（Ｎ−２），・・・を選択する。よって、絶えずシリアルデータの各ビットデータのセンタとなるようなストローブが選択されるようになる。
【００４８】
次に、シリアル・パラレル変換装置１の全体の動作について、図５に基づいて説明する。図５は、シリアル・パラレル変換装置における各部の波形のタイミングチャートである。シリアル・パラレル変換装置１において、１クロック周期にＮビットシリアルデータが送信される。ＰＬＬ回路１２の入力端子には、基準信号（ｆｒ）として、周期Ｔの矩形波であるクロック信号ＣＬＫＩＮを入力する。また、シリアル・パラレル変換ロジック回路１１には、図５に示したように、クロック信号ＣＬＫＩＮの立ち下がりのタイミングで、Ｎビットシリアルデータを入力する。ＰＬＬ回路１２は、クロック信号ＣＬＫＩＮを分周して、出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）を出力する。ＰＬＬ回路１２の出力信号ｐｈｉ１〜ｐｈｉ（Ｍ）は、ストローブ作成回路１３に入力されて、ストローブ信号ｓｔｂ１〜ｓｔｂ（Ｍ）に変換される。そして、シリアル・パラレル変換ロジック回路１１に入力したＮビットシリアルデータについて、ストローブ信号ｓｔｂ１〜ｓｔｂ  （Ｍ）でラッチした結果を、スキュー検出回路１５へ出力する。
【００４９】
スキュー検出回路１５では、前記のように、スキューの発生状態を検出して、制御信号をストローブ選択回路１４に出力する。ストローブ選択回路１４は、制御信号に基づいて、スキューに応じた適切なストローブ信号を選択する。そして、シリアル・パラレル変換ロジック回路１１は、クロック信号ＣＬＫＩＮとＮビットシリアルデータとにスキューが生じても、クロック信号ＣＬＫＩＮに対してずれのないＮビットシリアルデータを出力する。
【００５０】
なお、前記のようにＰＬＬ回路１２の分周器２５は、分周比を変更可能であるので、ＶＣＯ２４の発振周波数の設定を変えることで、スキュー調整分解能が可変である。
【００５１】
このように、本発明によってスキューが生じても、クロック信号に対する入力データ信号を自己補正して、安定したシリアル・パラレル変換を行うシリアル・パラレル変換装置を提供することができる。
【００５２】
次に、本発明の実施形態について、さらに詳細に説明する。以下、本発明のシリアル・パラレル変換装置において、１クロック周期に７ビットシリアルデータが送信される構成について説明する。図６は、１クロック周期に７ビットシリアルデータが送信されるシリアル・パラレル変換装置の構成を示したブロック図である。シリアル・パラレル変換装置１０１は、図６に示したように、図１に示したシリアル・パラレル変換装置１と同様の構成であり、シリアル・パラレル変換ロジック回路１１１、ＰＬＬ回路１１２、ストローブ作成回路１１３、ストローブ選択回路１１４、及びスキュー検出回路１１５によって構成される。
【００５３】
まず、ＰＬＬ回路１１２について説明する。図７は、ＰＬＬ回路１１２の構成を示したブロック図、及びＶＣＯ１２４の構成を示した回路図である。ＰＬＬ回路１１２は、図２に示したＰＬＬ回路１２の構成と同様であり、位相比較器１２１、チャージポンプ１２２、ループフィルタ１２３、ＶＣＯ１２４、及び分周器１２５を備えた構成であり、各部の動作は図２に基づいて説明した通りである。なお、本発明のシリアル・パラレル変換装置において、１クロック周期に７ビットシリアルデータが送信される構成であるため、ＶＣＯ１２４が備えるリング発振器１３１の段数Ｍ＝７とし、また、分周器１２５の分周比Ｎ＝２とする。
【００５４】
図７（Ｂ）に示したように、ＶＣＯ１２４が備える７段構成のリング発振器１３１は、インバータ素子が７段直列に接続されたループ回路であり、各インバータ素子の出力は、出力信号ｐｈｉ１〜ｐｈｉ７となる。また、各インバータ素子には、制御電圧Ｖｃが印加される。
【００５５】
次に、ストローブ作成回路１１３について説明する。図８は、ストローブ作成回路におけるストローブ信号ｓｔｂ１〜ｓｔｂ７を生成する構成を示した回路図である。図９は、ストローブ作成回路におけるストローブ信号ｓｔｂ１′〜ｓｔｂ７′を生成する構成を示した回路図である。図１０は、ストローブ作成回路におけるストローブ信号ｓｔｂ１″〜ｓｔｂ７″を生成する構成を示した回路図である。
【００５６】
ストローブ作成回路１１３は、７ビットシリアルデータとクロック信号ＣＬＫＩＮとのスキューの有無に応じて適切なストローブ信号を供給するために、ストローブ作成回路１１３ａ〜１１３ｃで、ＰＬＬ回路１１２の出力信号ｐｈｉ１〜ｐｈｉ７から、ストローブ信号ｓｔｂ１〜ｓｔｂ７、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′、及びストローブ信号ｓｔｂ１″〜ｓｔｂ７″をそれぞれ作成する。
【００５７】
ストローブ作成回路１１３ａは、図８に示したように、７個のＤフリップフロップｄ１１〜ｄ１７のクロック入力端子ＣＫに、ＰＬＬ回路１１２の出力信号ｐｈｉ１〜ｐｈｉ７が、ｐｈｉ１、ｐｈｉ４、ｐｈｉ７、ｐｈｉ３、ｐｈｉ６、ｐｈｉ２、ｐｈｉ５の順に、それぞれ入力されるように接続する。また、出力信号ｐｈｉ１をクロック入力端子に入力するＤフリップフロップｄ１１のみ、出力端子／Ｑをデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ１１〜ｄ１６の各出力端子Ｑを、次段のＤフリップフロップｄ１２〜ｄ１７のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ１１〜ｄ１７の各出力端子Ｑから出力される信号をストローブ信号ｓｔｂ１〜ｓｔｂ７とする。なお、Ｄフリップフロップｄ１１〜ｄ１７の各出力端子Ｑから出力されるストローブ信号は、ｓｔｂ４、ｓｔｂ３、ｓｔｂ２、ｓｔｂ１、ｓｔｂ７、ｓｔｂ６、ｓｔｂ５の順となる。
【００５８】
ストローブ作成回路１１３ｂは、図９に示したように、７個のＤフリップフロップｄ２１〜ｄ２７のクロック入力端子ＣＫに、ＰＬＬ回路１１２の出力信号ｐｈｉ１〜ｐｈｉ７を、ｐｈｉ２、ｐｈｉ６、ｐｈｉ３、ｐｈｉ７、ｐｈｉ４、ｐｈｉ１、ｐｈｉ４の順に、それぞれ入力されるように接続する。また、出力信号ｐｈｉ２をクロック入力端子に入力するＤフリップフロップｄ２１のみ、出力信号ｐｈｉ５をデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ２１〜ｄ２６の各出力端子Ｑを、次段のＤフリップフロップｄ２２〜ｄ２７のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ２１〜ｄ２７の各出力端子Ｑから出力される信号をストローブ信号ｓｔｂ１′〜ｓｔｂ７′とする。なお、Ｄフリップフロップｄ２１〜ｄ２７の各出力端子Ｑから出力されるストローブ信号は、ｓｔｂ１′〜ｓｔｂ７′の順となる。
【００５９】
ストローブ作成回路１１３ｃは、図１０に示したように、７個のＤフリップフロップｄ３１〜ｄ３７のクロック入力端子ＣＫに、ＰＬＬ回路１１２の出力信号ｐｈｉ１〜ｐｈｉ７を、ｐｈｉ４、ｐｈｉ１、ｐｈｉ５、ｐｈｉ２、ｐｈｉ６、ｐｈｉ３、ｐｈｉ７の順に、それぞれ入力されるように接続する。また、出力信号ｐｈｉ４をクロック入力端子に入力するＤフリップフロップｄ３１のみ、出力信号ｐｈｉ７をデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ３１〜ｄ３６の各出力端子Ｑを、次段のＤフリップフロップｄ３２〜ｄ３７のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ３１〜ｄ３７の各出力端子Ｑから出力される信号をストローブ信号ｓｔｂ１″〜ｓｔｂ７″とする。なお、Ｄフリップフロップｄ３１〜ｄ３７の各出力端子Ｑから出力されるストローブ信号は、ｓｔｂ１″〜ｓｔｂ７″の順となる。
【００６０】
なお、ストローブ作成回路１１３ａ〜１１３ｃは、基本的なフリップフロップで構成しているが、タップ出力信号ｐｈｉ１〜ｐｈｉ７からストローブ信号ｓｔｂ１〜ｓｔｂ７、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′、及びストローブ信号ｓｔｂ１″〜ｓｔｂ７″を生成する回路であれば、他の構成であっても良い。
【００６１】
次に、ストローブ選択回路１１４について説明する。図１１は、ストローブ選択回路の入出力信号を示した回路図である。ストローブ選択回路１１４には、入力信号としてストローブ信号ｓｔｂ１〜ｓｔｂ７、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′、及びストローブ信号ｓｔｂ１″〜ｓｔｂ７″が入力される。また、制御信号としてスキュー検出回路１１５から、制御信号Ｓ１〜Ｓ９が入力される。さらに、出力信号として、ストローブ信号ｓｔｂ１〜ｓｔｂ７、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′、又はストローブ信号ｓｔｂ１″〜ｓｔｂ７″のいずれかを出力する。
【００６２】
ストローブ選択回路１１４は、ＭＵＸ（マルチプレクサ）回路等で構成され、スキュー検出回路１１５の検出結果に基づき、適切なストローブ信号を選択する。すなわち、スキューが存在しない場合、シリアルデータの各ビットデータそれぞれについて、ストローブ信号ｓｔｂ１〜ｓｔｂ７を選択する。一方、データが遅れたためにスキューが発生した場合は、ストローブ信号ｓｔｂ１″〜ｓｔｂ７″を選択する。また、データが進んだためにスキューが発生した場合は、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′を選択する。よって、絶えずシリアルデータの各ビットデータのセンタとなるようなストローブが選択されるようになる。
【００６３】
次に、スキュー検出回路１１５について説明する。図１２は、スキュー検出回路の概略構成を示した回路図である。スキュー検出回路１１５は、シリアルデータ中の１ビットのみ遷移しているパターンについて検出を行うことになる。例えば、７ビットシリアルデータＤ［１：７］中の１ビットのみ遷移しているＤ４を含むＤ３、Ｄ４、Ｄ５をストローブ作成回路で生成されたｓｔｂ３〜ｓｔｂ５、ｓｔｂ３′〜ｓｔｂ５′、ｓｔｂ３″〜ｓｔｂ５″の各ストローブ信号をクロック入力とする。
【００６４】
この場合、図１２に示したように、スキュー検出回路１１５を構成する９個のＤフリップフロップｄ４１〜ｄ４９のクロック入力端子ＣＫに、ストローブ作成回路で生成されたｓｔｂ３〜ｓｔｂ５、ｓｔｂ３′〜ｓｔｂ５′、ｓｔｂ３″〜ｓｔｂ５″の各ストローブ信号を、ｓｔｂ３、ｓｔｂ３′、ｓｔｂ３″、ｓｔｂ４、ｓｔｂ４′、ｓｔｂ４″、ｓｔｂ５、ｓｔｂ５′、ｓｔｂ５″の順に入力する。また、Ｄフリップフロップｄ４１〜ｄ４９の各データ入力端子Ｄに、シリアルデータ入力を接続する。Ｄフリップフロップｄ４１〜ｄ４９の各出力端子Ｑからの出力信号を、制御信号Ｓ１〜Ｓ９として、ストローブ選択回路１１４に入力する。
【００６５】
次に、シリアル・パラレル変換装置１０１の全体の動作を、図１３に基づいて説明する。図１３は、シリアル・パラレル変換装置１０１における各部の入出力信号のタイミングチャートである。図１３に示したように、シリアル・パラレル変換装置１０１に、クロック信号ＣＬＫＩＮの立ち下がりのタイミングで７ビットシリアルデータを入力する。
【００６６】
前記のように、ＰＬＬ回路１１２の分周器１２５の分周比を１／２とすることにより、ＶＣＯ１２４は基準信号ｆｒとして入力されるクロック信号ＣＬＫＩＮの周波数の２倍で発振するため、ＶＣＯ１２４のタップ出力信号ｐｈｉ１〜ｐｈｉ７は、図１３に示したタイミングで変動する信号波形となる。
【００６７】
この時、クロック信号ＣＬＫＩＮを周期Ｔの矩形波とすると、出力信号ｐｈｉ１は、周期Ｔ／２の矩形波となり、クロック信号ＣＬＫＩＮの立ち下がりのタイミングで、出力信号ｐｈｉ１は立ち下がる。また、分周器１２５の分周比Ｎ＝２であるので、出力信号ｐｈｉ２は、出力信号ｐｈｉ１と同様に周期Ｔ／２の矩形波であり、７段のリング発振器（Ｍ＝７）で構成される１段目のタップ出力であるため、Ｔ／１４遅れるとともに、出力信号ｐｈｉ１の反転波形となる。同様に、出力信号ｐｈｉ３は、出力信号ｐｈｉ２からＴ／１４遅れるとともに、出力信号ｐｈｉ２の反転波形となる。出力信号ｐｈｉ４〜ｐｈｉ７についても同様であり、図１３に示したタイミングで変動する。
【００６８】
ストローブ作成回路１１３に出力信号ｐｈｉ１〜ｐｈｉ７が入力されると、ストローブ作成回路１１３ａ〜１１３ｃから、ストローブ信号ｓｔｂ１〜ｓｔｂ７、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′、ストローブ信号ｓｔｂ１″〜ｓｔｂ７″が出力される。
【００６９】
例えば、ストローブ信号ｓｔｂ１は、周期Ｔの矩形波であり、７ビットシリアルデータのＤ１におけるほぼ中央値で立ち上がる。ストローブ信号ｓｔｂ１′は、周期Ｔであり、ストローブ信号ｓｔｂ１に対してＴ／１４進んでいる。ストローブ信号ｓｔｂ１″は、周期Ｔであり、ストローブ信号ｓｔｂ１に対してＴ／１４遅れている。
【００７０】
他のストローブ信号ｓｔｂ２〜ｓｔｂ７に対する、ストローブ信号ｓｔｂ２′〜ｓｔｂ７′、及びストローブ信号ｓｔｂ２″〜ｓｔｂ７″の関係も同様である。
【００７１】
次に、スキュー検出回路１１５は、以下に示す７ビットシリアルデータについて検出動作を行う。
Ｄ［１：７］＝“０００１０００”  ・・・（Ｐ１）
Ｄ［１：７］＝“１１１０１１１”  ・・・（Ｐ２）
つまり、シリアルデータ中の１ビットのみ遷移しているパターンについて検出を行うことになる。上記のパターン（Ｐ１）及びパターン（Ｐ２）の場合、Ｄ  ［１：７］中の１ビットのみ遷移しているＤ４を含むＤ３、Ｄ４、Ｄ５をストローブ作成回路で生成されたストローブ信号ｓｔｂ３〜ｓｔｂ５、ストローブ信号ｓｔｂ３′〜ｓｔｂ５′、ストローブ信号ｓｔｂ３″〜ｓｔｂ５″のそれぞれをクロック入力とする図１２に示した構成のラッチ回路でラッチし、その結果によりスキューの有無を判定するよう構成される。
【００７２】
まず初めに、スキュー検出回路１１５では、ストローブ信号ｓｔｂ３〜ｓｔｂ５、ストローブ信号ｓｔｂ３′〜ｓｔｂ５′、ストローブ信号ｓｔｂ３″〜ｓｔｂ５″でパターン（Ｐ１）及びパターン（Ｐ２）について検出動作を行う。
【００７３】
図１４は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー無しの場合）である。図１５は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン２を検出−スキュー無しの場合）である。図１６は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが遅れている＞場合）である。図１７は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ２）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが遅れている＞場合）である。図１８は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが進んでいる＞場合）である。図１９は、本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ２）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが進んでいる＞場合）である。
【００７４】
スキューが発生していない場合、スキュー検出回路１１５で、パターン（Ｐ１）について検出した結果は、図１４に示したように、“０００１１１０００”となる。同様に、パターン（Ｐ２）について検出した結果は、図１５に示したように、“１１１０００１１１”となる。
【００７５】
データが遅れているためにスキューが存在する場合、スキュー検出回路１１５で、パターン（Ｐ１）について検出した結果は、図１６に示したように、“００００１１１００”となる。同様に、パターン（Ｐ２）について検出した結果は、図１７に示したように、“１１１１０００１１”となる。
【００７６】
データが進んでいるためにスキューが存在する場合、スキュー検出回路１１５で、パターン（Ｐ１）について検出した結果は、図１８に示したように、“００１１１００００”となる。同様に、パターン（Ｐ２）について検出した結果は、図１９に示したように、“１１０００１１１１”となる。
【００７７】
そして、これら検出結果は、ストローブ選択回路１１４へ出力される。図１４，図１５に示したように、ストローブ選択回路１１４では、スキューが無い場合の検出結果である“０００１１１０００”、又は“１１１０００１１１”がストローブ選択回路１１４の入力端子ＩＮに入力されると、ストローブ信号ｓｔｂ１〜ｓｔｂ７を選択し、シリアル・パラレル変換ロジック回路１１１へ、このストローブ信号を供給する。
【００７８】
図１６，図１７に示したように、シリアルデータがクロックＣＬＫＩＮに対して遅れている場合の検出結果“００００１１１００”、又は“１１１１０００１１”がストローブ選択回路１１４の入力端子ＩＮに入力されると、ストローブ信号ｓｔｂ１″〜ｓｔｂ７″を選択し、シリアル・パラレル変換ロジック回路１１１へ、このストローブ信号を供給する。
【００７９】
図１８，図１９に示したように、シリアルデータがクロックＣＬＫＩＮに対して進んでいる場合の検出結果“００１１１００００”、又は“１１０００１１１１”がストローブ選択回路１１４の入力端子ＩＮに入力されると、ストローブ信号ｓｔｂ１′〜ｓｔｂ７′を選択し、シリアル・パラレル変換ロジック回路１１１へ、このストローブ信号を供給する。
【００８０】
他の検出結果の組み合わせについては、最初はすべてストローブ信号ｓｔｂ１〜ｓｔｂ７を選択し、２回目以降の他の検出結果の組み合わせに対しては、現在の出力を維持するようにする。これにより、他のシリアルデータパターンの組み合わせが入力された場合について、検出回路が取り得るすべての検出結果値に対するストローブ選択が可能となり、誤動作は回避される。
【００８１】
このように、製造ばらつきや動作温度等の動作環境の影響により、クロック信号ＣＬＫＩＮに対してシリアルデータ入力信号にスキューが生じた際でも、あるパターンを自己検出し、規則的に作成されたストローブの中からより適切なストローブを選択することができる。これにより、安定したシリアル・パラレル変換装置を提供することができる。
【００８２】
また、上記のシリアル・パラレル変換装置を半導体基板上に形成することで、安定してシリアル・パラレル変換を行う半導体装置を提供することができる。
【００８３】
なお、本実施形態においては、シリアルデータの１ビット当たり３本のストローブを使用した実施形態を示したが、ＰＬＬ回路の分周器の分周比を変化させ、ストローブ作成回路への入力信号周波数を上げることにより、スキュー検出用のストローブ信号の数を増加させることができる。これは、ストローブ作成回路がＤフリップフロップを用いた構成となっているため、入力周波数が上がることで、単位時間に遷移するエッジの数が増えることにより、作成されるストローブ信号の数も増やすことができる。
【００８４】
上記のように、シリアルデータの１ビット当たりに割り当てられるストローブ信号の数を増やすことによって、スキュー検出（調整）の分解能を増加させることができ、より精度良くスキューを検出できる。また、適切なストローブを選択できることから、安定したシリアル・パラレル変換回路、及び半導体装置を提供することができる。
【００８５】
［第２実施形態］
図２０は、本発明の第２実施形態に係るシリアル・パラレル変換装置の概略構成を示したブロック図である。シリアル・パラレル変換装置２０１は、Ｎビットシリアルデータを、Ｎビットのパラレルデータに変換するシリアル・パラレル変換ロジック回路２１１、シリアル・パラレル変換ロジック回路２１１にシリアル・パラレル変換を実行させるためのストローブ信号を作成するＰＬＬ回路２１２及びストローブ作成回路であるストローブタイミング発生回路２１３、最適なストローブ信号を選択するためのストローブ選択回路２１４、データ信号とクロック信号とのスキューを検出するスキュー検出回路２１５、並びにシリアルデータの遷移、すなわち、シリアルデータの立ち上がり又は立ち下がりを検出するエッジ検出回路２１６から構成される。
【００８６】
以下に、シリアル・パラレル変換装置２０１における各部の構成・動作等について説明する。まず初めに、ＰＬＬ（Phase Locked Loop ）回路１２について説明する。図２１は、本発明の第２実施形態に係るシリアル・パラレル変換装置のＰＬＬ回路の概略構成を示したブロック図である。ＰＬＬ回路２１２は、位相比較器２２１、チャージポンプ２２２、ループフィルタ２２３、ＶＣＯ（電圧制御発振器）２２４、及び分周比Ｎの分周器２２５から成る。ＰＬＬ回路２１２の各部は、前記の図２に示した一般的なＰＬＬ回路１２と同様に動作する。
【００８７】
次に、ＶＣＯ２２４の構成について説明する。本発明のＶＣＯ２２４は、図２１に示したように、入力される制御電圧（Ｖｃ）に応じて発振周波数が変化するＭ段（Ｍ：奇数）リング発振器２３１を備えた構成である。本発明では、リング発振器２３１を構成するＭ個のインバータ素子の各タップから出力されるタップ出力信号ＰＳ１〜ＰＳ（Ｍ）をＰＬＬ回路２１２の出力として利用している。また、タップ出力信号ＰＳ１が分周器２２５に入力され、分周されて帰還信号（ｆｐ）として位相比較器２２１に帰還される。
【００８８】
このように構成することで、ＰＬＬ回路２１２の出力となるタップ出力信号ＰＳ１〜ＰＳ（Ｍ）は、基準信号（ｆｒ）の分周比（Ｎ）倍の周波数となり、基準信号（ｆｒ）の周期をＴとすると、それぞれの位相がＴ／（Ｎ・Ｍ）ずつ遅延した出力信号となる。
【００８９】
次に、ストローブタイミング発生回路２１３について説明する。ストローブタイミング発生回路２１３は、ＰＬＬ回路２１２から出力されたタップ出力信号ＰＳ１〜ＰＳ（Ｍ）が入力されると、複数のストローブ信号を出力する。すなわち、ストローブ選択回路２１４に対して第１のデータストローブ信号ＰＳＴ１〜ＰＳＴ（Ｒ）を出力する。また、スキュー検出回路２１５に対して、スキュー調整分解能に応じた第２のデータストローブ信号ＤＰＳＴ１〜ＤＰＳＴ（Ｒ）を出力する。
【００９０】
エッジ検出回路２１６は、シリアルデータＤｓの立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓを出力する。図２２は、エッジ検出回路の概略構成を示した回路図の一例である。エッジ検出回路２１６は、一例として図２２に示したように、ＡＮＤゲート２２１と奇数個（図では５個）のＮＯＴゲートチェーン２２２とによる微分回路である。この微分回路を構成するＡＮＤゲート２２１により、シリアルデータＤｓの立ち上がりエッジを検出することができる。また、このＡＮＤゲート２２１の代わりにＮＯＲゲートを用いれば、立下りエッジを検出することができる。
【００９１】
スキュー検出回路２１５は、シリアルデータＤｓの立ち上がりエッジ検出信号ＥＤＤｓを、ストローブタイミング発生回路２１３からの第２のデータストローブ信号ＤＰＳＴでラッチし、その結果としてスキュー検出信号ＳＤを出力する。スキュー検出回路２１５の具体的な構成を図２３に示す。図２３は、スキュー検出回路の概略構成を示した回路図である。スキュー検出回路２１５は、Ｒ個のＤフリップフロップｄ２３１−１〜ｄ２３１−Ｒを備えている。各Ｄフリップフロップｄ２３１−１〜ｄ２３１−Ｒのデータ入力端子Ｄに、シリアルデータの立ち上がりエッジ検出信号ＥＤＤｓが入力される。また、各Ｄフリップフロップｄ２３１−１〜ｄ２３１−Ｒのクロック入力端子ＣＫに、ストローブタイミング発生回路２１３で生成された第２のデータストローブ信号ＤＰＳＴ１〜ＤＰＳＴ（Ｒ）を、各々入力する。そして、Ｄフリップフロップｄ２３１−１〜ｄ２３１−Ｒの各出力端子Ｑからの出力信号を、スキュー検出信号ＳＤとして、ストローブ選択回路２１４へ入力する。
【００９２】
ストローブ選択回路２１４は、ＭＵＸ等で構成される。また、ストローブ選択回路２１４は、スキュー検出信号ＳＤが供給されると、スキュー検出信号ＳＤの組み合わせ、すなわちスキューの発生状態に応じて、適切なデータストローブを選択し、シリアル・パラレル変換回路２１１へストローブ信号を供給する。
【００９３】
シリアル・パラレル変換回路２１１は、ストローブ選択回路２１４から出力された最適なデータストローブ信号により、シリアルデータをパラレルデータへと変換する。
【００９４】
ここで、本発明の第２実施形態におけるシリアルデータＤｓとクロックＣＫとのスキュー検出動作について、図２４に基づいて説明する。図２４は、シリアルデータＤｓとクロックＣＫとのスキュー検出動作を説明するためのタイミングチャートである。図２４（Ａ）はクロックＣＫとシリアルデータＤｓ間にスキューが無い場合、図２４（Ｂ）はクロックＣＫに対してシリアルデータＤｓが遅れている場合、図２４（Ｃ）はクロックＣＫに対してシリアルデータＤｓが進んでいる場合を示している。以下の説明では、エッジ検出回路２１６でシリアルデータＤｓの立ち上がりエッジを検出し、エッジ検出信号からスキュー検出を行う場合について説明する。
【００９５】
シリアルデータＤｓがエッジ検出回路２１６に入力されると、図２４に示したようにシリアルデータの立ち上がりエッジが検出される。すなわち、エッジ検出回路２１６では、シリアルデータＤｓがＡＮＤゲート２２１の一方のポートへ、また、奇数段のＮＯＴゲートチェーン２２２を通ってＡＮＤゲート２２１の他方のポートへ入力されることで、Ｄｓの立ち上がりエッジを検出する。なお、検出パルス幅は、奇数個のＮＯＴゲートチェーンの数を増減することで制御できる。
【００９６】
スキュー検出回路２１５は、検出されたエッジ検出信号ＥＤＤｓをストローブタイミング発生回路２１３で生成されたデータストローブ信号ＤＰＳＴでラッチする。そして、その結果をストローブ選択回路２１４へ検出信号ＳＤとして出力する。この時、スキュー検出回路２１５はスキューに応じたスキュー検出信号ＳＤを出力する。すなわち、クロックＣＫとシリアルデータＤｓ間にスキューが無い場合は、例えば図２４（Ａ）に示したようにＳＤ［２：０］＝［０  １  ０］を出力する。また、クロックＣＫに対してシリアルデータＤｓが遅れている場合は、例えば図２４（Ｂ）に示したようにＳＤ［２：０］＝［０  ０  １］を出力する。さらに、クロックＣＫに対してシリアルデータＤｓが進んでいる場合は、例えば図２４（Ｃ）に示したようにＳＤ［２：０］＝［１  ０  ０］を出力する。なお、図２４には、検出分解能（スキュー調整分解能）Ｒを３ｂｉｔとして示している。
【００９７】
ストローブ選択回路２１４には、ストローブタイミング発生回路２１３で作成された第１のデータストローブ信号ＰＳＴが供給されており、エッジ検出信号ＥＤＤｓをラッチした結果の組み合わせ、すなわちスキュー検出信号ＳＤに対応したストローブ信号を選択して出力するＭＵＸの構成とする。そして、ストローブ選択回路２１４は、最適なストローブ信号ＳＴを選択して、シリアル・パラレル変換回路２１１へ供給する。シリアル・パラレル変換回路２１１は、この最適なストローブ信号ＳＴによって、シリアルデータをパラレルデータに変換する。
【００９８】
次に、本発明の第２実施形態に係るシリアル・パラレル変換装置の構成について、具体例を挙げて説明する。図２５は、シリアルデータの入力タイミング図である。シリアルデータ伝送では、通常図２５に示したようにクロック１周期中に所定のビットデータ（図では７ビットデータ）がマッピングされ伝送されている。以下に、シリアル・パラレル変換装置が、７ビットのシリアルデータをパラレルデータに変換し、スキュー調整分解能を３ｂｉｔとした場合について説明する。まず、シリアル・パラレル変換装置の構成について説明する。図２６は、シリアル・パラレル変換装置の具体例の構成を示した回路図である。図２６に示したように、シリアル・パラレル変換装置３０１は、Ｎビットシリアルデータを、Ｎビットのパラレルデータに変換するシリアル・パラレル変換ロジック回路３１１、シリアル・パラレル変換ロジック回路３１１にシリアル・パラレル変換を実行させるためのストローブ信号を作成するＰＬＬ回路３１２及びストローブ作成回路であるストローブタイミング発生回路３１３、最適なストローブ信号を選択するためのストローブ選択回路３１４、データ信号とクロック信号とのスキューを検出するスキュー検出回路３１５、並びにシリアルデータの遷移（立ち上がり又は立ち下がり）を検出するエッジ検出回路３１６から構成される。
【００９９】
図２７は、ＰＬＬ回路３１２の構成を示したブロック図である。ＰＬＬ回路３１２は、図２１に示したＰＬＬ回路２１２において、分周器２２５の分周比をＮ＝２、ＶＣＯ２２４のリングオシレータ２３１の段数をＭ＝７とした構成である。すなわち、位相比較器３２１、チャージポンプ３２２、ループフィルタ３２３、ＶＣＯ３２４、及び分周器３２５を備えた構成であり、各部の動作は図２に基づいて説明した通りである。
【０１００】
ＶＣＯ３２４が備える７段構成のリング発振器３３１は、インバータ素子が７段直列に接続されたループ回路であり、各インバータ素子の出力は、タップ出力信号ＰＳ１〜ＰＳ７となる。また、各インバータ素子には、ループフィルタ３２３の出力である制御電圧Ｖｃが印加される。
【０１０１】
次に、ストローブタイミング発生回路３１３について説明する。図２８は、ＰＳＴ発生回路の構成を示した回路図である。図２９は、ＤＰＳＴ発生回路の構成を示した回路図である。第１データストローブ信号ＰＳＴを発生させるＰＳＴ発生回路３１３ａは、図２８に示したように、１４個のＤフリップフロップｄ３２１〜ｄ３３４を備えている。また、奇数番号のＤフリップフロップはクロック入力端子ＣＫがハイアクティブであり、偶数番号のＤフリップフロップはクロック入力端子ＣＫがローアクティブである。さらに、Ｄフリップフロップｄ３２１〜ｄ３２７及びＤフリップフロップｄ３２８〜ｄ３３４のクロック入力端子ＣＫに、ＰＬＬ回路３１２のタップ出力信号ＰＳ１〜ＰＳ７が、この順にそれぞれ入力されるように接続されている。また、Ｄフリップフロップｄ３２１のみ、出力端子／Ｑをデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ３２１〜ｄ３３３の各出力端子Ｑを、次段のＤフリップフロップｄ３２２〜ｄ３３４のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ３２１〜ｄ３３４の各出力端子Ｑから出力される信号を第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４とする。
【０１０２】
第２データストローブ信号ＤＰＳＴを発生させるＤＰＳＴ発生回路３１３ｂは、図２９に示したように、４個のＤフリップフロップｄ３４１〜ｄ３４４を備えた構成である。また、Ｄフリップフロップｄ３４３はクロック入力端子ＣＫがローアクティブであり、それ以外のＤフリップフロップはクロック入力端子ＣＫがハイアクティブである。４個のＤフリップフロップｄ３４１〜ｄ３４４のクロック入力端子ＣＫに、ＰＬＬ回路１１２の出力信号から選択したＰＳ１、ＰＳ６、ＰＳ５、ＰＳ４がこの順に、それぞれ入力されるように接続する。また、Ｄフリップフロップｄ３２１は、出力端子／Ｑをデータ入力端子Ｄに接続する。さらに、Ｄフリップフロップｄ３４１，ｄ３４２の各出力端子Ｑ及びｄ３４３の出力端子／Ｑを、次段のＤフリップフロップｄ３４２〜ｄ３４４のデータ入力端子Ｄに、それぞれ接続する。そして、Ｄフリップフロップｄ３４２の出力端子Ｑ、及びＤフリップフロップｄ３４３，３４４の出力端子／Ｑから出力される信号を第２ストローブ信号ＤＰＳＴ３〜ＤＰＳＴ１とする。
【０１０３】
なお、図２９に示したＤＰＳＴ発生回路３１３ｂの入力信号の組み合わせは、シリアルデータビット中のＤ１についてスキューの有無を判定することを意図し、ＰＳ１、ＰＳ４、ＰＳ５、ＰＳ６を用い、第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３が得られる組み合わせとなっている。つまり、スキューを検出するシリアルデータビットを自由に設定し、設定したビットの位置に対応させたＤＰＳＴ信号を作成することは、入力信号の組み合わせ（ＰＳ信号の組み合わせ）を変えることで容易にできる。
【０１０４】
このようにストローブタイミング発生回路３１３中のＤＰＳＴ発生回路、及びＰＳＴ発生回路は図２８、２９に示したように、Ｄフリップフロップで構成した回路に、タップ出力信号ＰＳ１〜ＰＳ７を入力することで、容易に第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４、第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３を作成できる。また、タップ出力信号ＰＳ１〜ＰＳ７の組み合わせにより、様々なバリエーションの第１データストローブ信号ＰＳＴ、第２データストローブ信号ＤＰＳＴを作成できる。
【０１０５】
次に、エッジ検出回路３１６は、図２２に基づいて説明した構成であり、説明を省略する。
【０１０６】
続いて、スキュー検出回路３１５の構成を説明する。図３０は、スキュー検出回路の構成を示した回路図である。スキュー検出回路３１５は、３個のＤフリップフロップｄ３５１〜ｄ３５３を備えた構成である。各Ｄフリップフロップｄ３５１〜ｄ３５３は、クロック入力端子ＣＫがハイアクティブである。また、各Ｄフリップフロップｄ３５１〜ｄ３５３のクロック入力端子ＣＫに、ストローブタイミング発生回路３１３から出力された第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３がこの順に、それぞれ入力されるように接続する。また、Ｄフリップフロップｄ３５１〜ｄ３５３のデータ入力端子Ｄに、エッジ検出回路３１６から出力されたエッジ検出信号ＥＤＤｓが入力されるように接続する。そして、Ｄフリップフロップｄ３５１〜ｄ３５３の各出力端子Ｑをストローブ選択回路３１４のセレクト端子Ｓに接続して、スキュー検出信号ＳＤ１〜ＳＤ３が入力されるようにする。
【０１０７】
次に、ストローブ選択回路３１４の構成を説明する。図３１は、ストローブ選択回路の構成を示した回路図である。ストローブ選択回路３１４はＭＵＸで構成されており、セレクト信号Ｓに応じて第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４から選択した信号をストローブ信号ＳＴ１〜ＳＴ７として出力する。
【０１０８】
次に、シリアル・パラレル変換回路３１１の構成を説明する。図３２は、ストローブ選択回路の構成を示した回路図である。シリアル・パラレル変換回路３１１は、７個のＤフリップフロップｄ３６１〜ｄ３６７を備えた構成である。各Ｄフリップフロップｄ３６１〜ｄ３６７は、クロック入力端子ＣＫがハイアクティブである。また、各Ｄフリップフロップｄ３６１〜ｄ３６７のクロック入力端子ＣＫに、ストローブ選択回路３１４から出力されたストローブ信号ＳＴ１〜ＳＴ７がこの順に、それぞれ入力されるように接続する。また、Ｄフリップフロップｄ３６１〜ｄ３６７のデータ入力端子Ｄに、シリアルデータＤｓが入力されるように接続する。そして、Ｄフリップフロップｄ３６１〜ｄ３６７の各出力端子Ｑから出力された信号Ｄ１〜Ｄ７がパラレルデータである。
【０１０９】
次に、上記のような構成のシリアル・パラレル変換装置３０１において、実際にクロックＣＫとシリアルデータＤｓとの間にスキューが存在する場合の一連の動作について、スキューの状態を３パターンに分けて、スキュー検出、ストローブ選択、シリアル・パラレル変換動作について、更に詳しく説明する。図３３は、本発明のシリアル・パラレル変換装置において、シリアルデータＤｓとクロックＣＫとの間にスキューが存在しない場合の動作タイミング図である。
【０１１０】
シリアル・パラレル変換装置３０１へ入力される７ｂｉｔシリアルデータＤｓは、図３３に示したように入力タイミングＤ１，Ｄ４，Ｄ７においてハイレベルであるデータである。また、クロック信号ＣＫの立ち上がりタイミングは、シリアルデータＤｓの入力タイミングＤ１における立ち上がりタイミングと略同時である。よって、クロックＣＫとシリアルデータＤｓとにはスキューが存在しない。この場合におけるシリアル・パラレル変換装置３０１の各部における一連の動作は、次の通りである。すなわち、エッジ検出回路３１６によってシリアルデータＤｓの立ち上がりエッジが検出され、シリアルデータＤｓの立ち上がりタイミングと略同時に、エッジ検出信号ＥＤＤｓが出力される。続いて、にエッジ検出信号ＥＤＤｓが、ストローブタイミング発生回路３１３中のＤＰＳＴ発生回路により規則的に発生させた第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３によってラッチされる。
【０１１１】
図３３に示したように、ラッチした結果スキュー検出信号ＳＤ１〜ＳＤ３＝  ［０  １  ０］が検出される。このスキュー検出信号ＳＤがデータストローブ選択回路３１４へ供給され、第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４により、このＳＤ信号に応じたストローブ信号ＳＴ１〜ＳＴ７を選択し、シリアル・パラレル変換回路へと出力されＤｓをパラレルデータへと変換する。
【０１１２】
ここで、データストローブ選択回路２１４のセレクト端子Ｓにスキュー検出信号ＳＤ１〜ＳＤ３＝［０  １  ０］が供給されたとき、すなわちスキューが存在しない場合、選択されるストローブは図３３中に示す第１データストローブ信号ＰＳＴ２、ＰＳＴ４、ＰＳＴ６、ＰＳＴ８、ＰＳＴ１０、ＰＳＴ１２、ＰＳＴ１４となるようにＭＵＸを構成する。これにより、シリアル・パラレル変換回路２１１へストローブ信号ＳＴとして、ＳＴ１＝ＰＳＴ２、ＳＴ２＝ＰＳＴ４、ＳＴ３＝ＰＳＴ６、ＳＴ４＝ＰＳＴ８、ＳＴ５＝ＰＳＴ１０、ＳＴ６＝ＰＳＴ１２、ＳＴ７＝ＰＳＴ１４を出力し、このストローブ信号ＳＴ１〜ＳＴ７を使ってシリアル・パラレル変換動作が行われる。
【０１１３】
このストローブ信号ＳＴ１〜ＳＴ７は、図３３に示したように、シリアルデータ各ビットＤ１〜Ｄ７のデータのセンターに位置しており、シリアル・パラレル変換回路において安定したシリアル・パラレル変換を行うことができる。
【０１１４】
次に、第２のパターンとして、シリアルデータＤｓとクロックＣＫとの間にスキューが存在し、クロックＣＫに対しシリアルデータＤｓが遅れている場合について、図３４に基づいて説明する。図３４は、本発明のシリアル・パラレル変換装置において、クロックＣＫに対しシリアルデータＤｓが遅れている場合の動作タイミング図である。
【０１１５】
シリアル・パラレル変換装置３０１へ入力される７ｂｉｔシリアルデータＤｓは、図３４に示したように入力タイミングＤ１，Ｄ４，Ｄ７においてハイレベルであるデータである。また、クロック信号ＣＫの立ち上がりタイミングは、シリアルデータＤｓの入力タイミングＤ１における立ち上がりタイミングより早く、入力タイミングＤ７’である。よって、クロックＣＫに対しシリアルデータＤｓが遅れており、クロックＣＫとシリアルデータＤｓとにはスキューが存在する。この場合におけるシリアル・パラレル変換装置３０１の各部における一連の動作は、次の通りである。シリアル・パラレル変換装置３０１において、エッジ検出回路３１６でシリアルデータＤｓの立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓをスキュー検出回路３１５へ出力する。エッジ検出信号ＥＤＤｓは、スキュー検出回路３１５においてストローブタイミング発生回路３１３中のＤＰＳＴ発生回路にてタップ出力信号ＰＳ１〜ＰＳ７により作られた第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３でラッチされる。
【０１１６】
ラッチした結果、スキュー検出信号ＳＤ１〜ＳＤ３＝［０  ０  １］が検出される。このスキュー検出信号ＳＤがデータストローブ選択回路３１４へ供給され、第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４より、このスキュー検出信号ＳＤに応じたストローブ信号ＳＴ１〜ＳＴ７を選択し、シリアル・パラレル変換回路３１１へと出力され、シリアルデータＤｓをパラレルデータＰＤへと変換する。この時、データストローブ選択回路３１４は、セレクト信号Ｓに応じて第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４より選択し出力されるものである。なお、第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４は、ストローブタイミング発生回路３１３中のＰＳＴ発生回路で作成されたものである。
【０１１７】
このデータストローブ選択回路３１４のセレクト端子Ｓにスキュー検出信号ＳＤ１〜ＳＤ３＝［０  ０  １］が供給されたとき、以下のような第１データストローブ信号が選択されるようにＭＵＸを構成する。すなわち、ＰＳＴ３、ＰＳＴ５、ＰＳＴ７、ＰＳＴ９、ＰＳＴ１１、ＰＳＴ１３、ＰＳＴ１である。これにより、シリアル・パラレル変換回路３１１へストローブ信号ＳＴとして、ＳＴ１＝ＰＳＴ３、ＳＴ２＝ＰＳＴ５、ＳＴ３＝ＰＳＴ７、ＳＴ４＝ＰＳＴ９、ＳＴ５＝ＰＳＴ１１、ＳＴ６＝ＰＳＴ１３、ＳＴ７＝ＰＳＴ１をシリアル・パラレル変換回路３１１へ出力する。
【０１１８】
このようにして選択されたストローブ信号ＳＴ１〜ＳＴ７は、クロックＣＫに対しシリアルデータＤｓにスキューが存在し、クロックＣＫに対しシリアルデータＤｓが遅れていても、シリアルデータの各ビットＤ１〜Ｄ７におけるデータのセンターに位置している。すなわち、スキューが存在してもシリアルデータビットのセンター位置でストローブできることになることから、シリアル・パラレル変換回路３１１において安定したシリアル・パラレル変換を行うことができることになる。
【０１１９】
次に、第３のパターンとして、シリアルデータＤｓとクロックＣＫとの間にスキューが存在し、クロックＣＫに対しシリアルデータＤｓが進んでいる場合について、図３５に基づいて説明する。図３５は、本発明のシリアル・パラレル変換装置において、クロックＣＫに対しシリアルデータＤｓが進んでいる場合の動作タイミング図である。
【０１２０】
シリアル・パラレル変換装置３０１へ入力される７ｂｉｔシリアルデータＤｓは、図３５に示したように入力タイミングＤ１，Ｄ４，Ｄ７においてハイレベルであるデータである。また、クロック信号ＣＫの立ち上がりタイミングは、シリアルデータＤｓの入力タイミングＤ１における立ち上がりタイミングより遅く、入力タイミングＤ１の中頃である。よって、クロックＣＫに対しシリアルデータＤｓが進んでおり、クロックＣＫとシリアルデータＤｓとにはスキューが存在する。この場合におけるシリアル・パラレル変換装置３０１の各部における一連の動作は、次の通りである。シリアル・パラレル変換装置３０１において、エッジ検出回路３１６でシリアルデータＤｓの立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓをスキュー検出回路３１５へ出力する。エッジ検出信号ＥＤＤｓは、スキュー検出回路３１５においてストローブタイミング発生回路３１３中のＤＰＳＴ発生回路にてタップ出力信号ＰＳ１〜ＰＳ７により作られた第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３でラッチされる。
【０１２１】
ラッチした結果、スキュー検出信号ＳＤ１〜ＳＤ３＝［１  ０  ０］が検出される。このスキュー検出信号ＳＤがストローブ選択回路３１４へ供給され、第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４より、このスキュー検出信号ＳＤに応じたストローブ信号ＳＴ１〜ＳＴ７を選択し、シリアル・パラレル変換回路３１１へと出力されシリアルデータＤｓをパラレルデータＰＤへと変換する。この時、データストローブ選択回路３１４はセレクト信号Ｓに応じて第１データストローブ信号ＰＳＴ１〜ＰＳＴ１４より選択し、出力されるものである。
【０１２２】
このストローブ選択回路３１４のセレクト端子Ｓにスキュー検出信号ＳＤ＝  ［１  ０  ０］が供給されたとき、以下のような第１データストローブ信号を選択するようにＭＵＸを構成すると良い。すなわち、第１データストローブ信号ＰＴＳ１、ＰＳＴ３、ＰＳＴ５、ＰＳＴ７、ＰＳＴ９、ＰＳＴ１１、ＰＳＴ１３となるようにＭＵＸを構成する。これにより、シリアル・パラレル変換回路３１１へストローブ信号ＳＴとして、ＳＴ１＝ＰＳＴ１、ＳＴ２＝ＰＳＴ３、ＳＴ３＝ＰＳＴ５、ＳＴ４＝ＰＳＴ７、ＳＴ５＝ＰＳＴ９、ＳＴ６＝ＰＳＴ１１、ＳＴ７＝ＰＳＴ１３の各ストローブ信号をシリアル・パラレル変換回路３１１へ出力する。
【０１２３】
このようにして選択されたストローブ信号ＳＴ１〜ＳＴ７は、クロックＣＫに対しシリアルデータＤｓにスキューが存在し、クロックＣＫに対しシリアルデータＤｓが進んでいても、シリアルデータの各ビットＤ１〜Ｄ７におけるデータのセンターに位置している。すなわち、スキューが存在してもシリアルデータビットのセンター位置でストローブできることになることから、シリアル・パラレル変換回路３１１において、安定したシリアル・パラレル変換を行うことができる。
【０１２４】
このように、シリアルデータＤｓの立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓが得られ、エッジ検出信号ＥＤＤｓを第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ３でラッチすることでスキューを検出し、スキュー検出信号ＳＤの組み合わせに応じて、つまりスキューの状態によりデータストローブ選択回路３１４において第１データストローブ信号ＰＳＴ１〜ＰＳＴ１５よりシリアル・パラレル変換回路３１１に最適なストローブ信号ＳＴ１〜ＳＴ７を選択し出力するようにしたものである。
【０１２５】
よって、クロックＣＫに対しシリアルデータＤｓにスキューが存在しても、そのスキューを検出し、最適なストローブを選択してシリアル・パラレル変換回路３１１へ供給することができる。また、安定した高速シリアルデータ受信が可能なシリアル・パラレル変換装置を提供することができる。
【０１２６】
次に、上記の実施形態では、スキュー調整分解能を３ｂｉｔとしたが、ストローブタイミング発生回路３１３の構成を変えることで、更に調整分解能を上げることができる。以下にその詳細を図２０及び図３６に基づいて説明する。図３６は、シリアル・パラレル変換装置の各部の入出力波形のタイミングチャートである。スキュー調整分解能を向上させるためには、第２データストローブ信号ＤＰＳＴをさらに高分解能にする構成とすることで、スキュー検出精度の向上が図れる。
【０１２７】
シリアル・パラレル変換装置２０１において、エッジ検出回路２１６により立ち上がりエッジが検出され、エッジ検出信号ＥＤＤｓが出力される。次に、エッジ検出信号ＥＤＤｓがストローブタイミング発生回路２１３により規則的に発生させた第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ（Ｒ）でラッチする。スキューが無い場合、ラッチした結果スキュー検出信号ＳＤ１〜ＳＤ（Ｘ）＝［・・・  ０  ０  １  ０  ０  ・・・］が検出される。このスキュー検出信号ＳＤがストローブ選択回路２１４へ供給され、第１データストローブ信号ＰＳＴ１〜ＰＳＴ（Ｘ）より、このスキュー検出信号ＳＤに応じたストローブ信号ＳＴ１〜ＳＴ７を選択し、シリアル・パラレル変換回路２１１へと出力されシリアルデータＤｓをパラレルデータＰＤへと変換する。
【０１２８】
次に、クロックＣＫに対しシリアルデータＤｓが遅れている場合、同様に立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓを出力する。検出信号ＥＤＤｓを第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ（Ｒ）でラッチする。スキュー検出信号ＳＤ１〜ＳＤ（Ｘ）＝［・・・  ０  ０  ０  １  ０］が得られ、このスキュー検出信号ＳＤに応じて、第１データストローブ信号ＰＳＴ１〜ＰＳＴ（Ｘ）よりストローブ選択回路２１４で最適なストローブが選ばれ、ストローブ信号ＳＴ１〜ＳＴ７としてシリアル・パラレル変換回路２１１へ出力する。
【０１２９】
さらに、クロックＣＫに対し、シリアルデータＤｓが進んでいる場合、同様に立ち上がりエッジを検出し、エッジ検出信号ＥＤＤｓが得られる。エッジ検出信号ＥＤＤｓを第２データストローブ信号ＤＰＳＴ１〜ＤＰＳＴ（Ｒ）でラッチすることで、スキュー検出信号ＳＤ１〜ＳＤ（Ｒ）＝［０  １  ０  ０  ０  ・・・］が得られ、このスキュー検出信号ＳＤに応じ、第１データストローブ信号ＰＳＴ１〜ＰＳＴ（Ｘ）よりストローブ選択回路２１４で最適なストローブ信号が選ばれ、ストローブ信号ＳＴ１〜ＳＴ７として出力される。このストローブ信号ＳＴ１〜ＳＴ７でシリアル・パラレル変換が行われる。
【０１３０】
また、スキューを検出するための第２データストローブ信号ＤＰＳＴは、ＰＬＬ２１２からのタップ出力信号ＰＳにより規則的に作成されるため、ＶＣＯ２２４を構成するリングオシレータ２３１の段数を制御することでタップ出力信号ＰＳを増加させ、第２データストローブ信号ＤＰＳＴを発生させるバリエーションを増やすことができる。したがって、単位シリアルデータ中のＰＳ遷移回数が増えることから、より多くの第２データストローブ信号ＤＰＳＴ、第１データストローブ信号ＰＳＴを作成することができるため、更に分解能を向上できる。また、分周比を上げることによっても同様に、第２データストローブ信号ＤＰＳＴ、第１データストローブ信号ＰＳＴを発生させるバリエーションを増やすことができる。よって、更に分解能を高めたスキュー検出・調整が可能となる。つまり、エッジ検出信号ＥＤＤｓをより多くの第２データストローブ信号ＤＰＳＴで高分解能に検出することで、より細かにスキューを検出することが可能となり、スキューが存在しても常に安定したストローブをシリアル・パラレル変換回路３１１へ供給できるものである。
【０１３１】
このように、スキュー分解能を可変にでき、より高い分解能でスキューを検出し、検出信号に応じたシリアル・パラレル変換用ストローブを選択することによりスキューによりクロックとシリアルデータのタイミングにずれが生じても、適切なシリアル・パラレル変換用のストローブを選択できることから、安定した高速シリアルデータ受信装置を提供することができる。
【０１３２】
ここで、上記の実施形態では、シリアルデータ中のデータＤ１に着目した例について説明したが、本発明はこれに限るものではない。もちろん、シリアルデータ中（Ｄ１〜Ｄ７）のどのビットに対して着目して、シリアル・パラレル変換を行ってもよい。また、本発明では、シリアルデータ中のあるビットにフォーカスし、そのビットの遷移を検出し、この検出信号からスキューの状態を特定することから、シリアルデータ中に特定の検出ビットを必要しない。
【０１３３】
また、上記の実施形態では、シリアルデータ中のある１ビットについての遷移を検出し、検出結果に応じて全ビット共通してストローブを選択するようにした例について説明したが、本発明はこれに限るものではない。例えば、各ビットそれぞれの遷移を検出し、ビットごとに最適なストローブを選択するようにすればシリアルデータ中のビットごとに生じるスキューにも対応でき、より高精度な高速シリアルデータ受信システムを構成できる。
【０１３４】
また、上記のシリアル・パラレル変換装置を半導体基板上に形成することで、安定してシリアル・パラレル変換を行う半導体装置を提供することができる。
【０１３５】
【発明の効果】
本発明によれば、以下の効果が得られる。
【０１３７】
（１）シリアル・パラレル変換装置は、スキュー検出回路で、ストローブ作成回路が出力した複数のストローブ信号を用いてシリアル伝送データをラッチし、ラッチしたシリアル伝送データからスキューの有無を検出した結果に応じた制御信号を出力するので、スキューの有無を専用回路で確実に検出することができる。
【０１３８】
（２）スキュー検出回路は、ストローブ作成回路が作成したストローブ信号と、エッジ検出回路がシリアル伝送データの遷移を検出して出力した検出信号と、に基づいてシリアル伝送データとクロック信号とのスキューを検出する。これにより、シリアルデータ中に特定の検出ビットデータを必要とすることなく、シリアル伝送データとクロック信号とのスキューを検出できる。また、ストローブ信号を制御することで、スキュー検出の分解能を可変にできる。
【０１３９】
（３）分周器の分周比を変更して、電圧制御発振器の発振周波数の設定を変えることで、ＰＬＬ回路は、スキュー調整分解能が可変であるため、スキュー自己補正感度を容易に変化させることができることから使用用途に応じてシリアル・パラレル変換精度を向上させることができる。
【０１４０】
（４）シリアル・パラレル変換装置のスキュー調整分解能は、クロック信号の周期をＴ、電圧制御発振器を構成するインバータ素子の段数をＭ、及び分周器の分周比をＮとすると、Ｔ／（Ｍ・Ｎ）であるため、ＰＬＬ回路の分周器の分周比を変化させ、ストローブ作成回路への入力信号周波数を上げることにより、スキュー検出用のストローブ信号の数を増加させることができ、シリアルデータの１ビット当たりに割り当てられるストローブ信号の数を増やすことによって、スキュー検出の分解能を増加させることができ、より精度良くスキューを検出できる。また、適切なストローブを選択できることから、安定したシリアル・パラレル変換回路、及び半導体装置を提供することができる。
【０１４１】
（５）ＰＬＬ回路では、制御回路は１／Ｎ分周された信号及び前記クロック信号の位相を比較し、位相差がなくなるように発振器を制御する。また、発振器はＭ段（Ｍ：奇数）の素子からなり、各素子はクロック信号に応じたタップ出力信号を出力する。これにより、ＰＬＬ回路の発振器における各素子の段数を変化させることで、データストローブ信号数を増減させて、スキュー調整分解能を可変にできる。
【０１４２】
（６）入力されたシリアル伝送データ中の１ビットのみ遷移するシリアルデータパターンに対して、スキュー検出回路はスキュー検出を行うので、シリアルデータ中に予めスキュー検出ビットをコーディングさせる必要がなく、任意のデータ入力に対し、あるパターンが入力された場合のみ反応して、スキュー検出を行い、同時にスキュー補正を行うことができる。
【０１４３】
（７）シリアル伝送データ中の遷移する１ビット及びその前後の１ビットに対して、スキュー検出手段はスキュー検出を行うので、少ないデータで、確実にスキューを検出することができる。
【０１４４】
（８）半導体装置は、（１）乃至（７）のいずれかに記載のシリアル・パラレル変換装置を半導体基板上に形成しているため、安定してシリアル・パラレル変換を行う半導体装置を提供できる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るシリアル・パラレル変換装置の概略構成を示したブロック図である。
【図２】ＰＬＬ回路の構成を示したブロック図である。
【図３】ＶＣＯ２４の概略構成を示した回路図である。
【図４】ストローブ作成回路の概略構成を示した回路図である。
【図５】シリアル・パラレル変換装置における各部の波形のタイミングチャートである。
【図６】１クロック周期に７ビットシリアルデータが送信されるシリアル・パラレル変換装置の構成を示したブロック図である。
【図７】ＰＬＬ回路１１２の構成を示したブロック図、及びＶＣＯ１２４の構成を示した回路図である。
【図８】ストローブ作成回路におけるストローブ信号ｓｔｂ１〜ｓｔｂ７を生成する構成を示した回路図である。
【図９】ストローブ作成回路におけるストローブ信号ｓｔｂ１′〜ｓｔｂ７′を生成する構成を示した回路図である。
【図１０】ストローブ作成回路におけるストローブ信号ｓｔｂ１″〜ｓｔｂ７″を生成する構成を示した回路図である。
【図１１】ストローブ選択回路の入出力信号を示した回路図である。
【図１２】スキュー検出回路の概略構成を示した回路図である。
【図１３】シリアル・パラレル変換装置１０１における各部の入出力信号のタイミングチャートである。
【図１４】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー無しの場合）。
【図１５】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ２）を検出−スキュー無しの場合）である。
【図１６】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが遅れている＞場合）である。
【図１７】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ２）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが遅れている＞場合）である。
【図１８】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ１）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが進んでいる＞場合）である。
【図１９】本発明の７ビットシリアルデータ入力時の実施形態におけるスキュー検出動作及び、ストローブ選択概要図（パターン（Ｐ２）を検出−スキュー有り＜ＣＬＫＩＮに対しデータが進んでいる＞場合）である。
【図２０】本発明の第２実施形態に係るシリアル・パラレル変換装置の概略構成を示したブロック図である。
【図２１】本発明の第２実施形態に係るシリアル・パラレル変換装置のＰＬＬ回路の概略構成を示したブロック図である。
【図２２】エッジ検出回路の概略構成を示した回路図の一例である。
【図２３】スキュー検出回路の概略構成を示した回路図である。
【図２４】シリアルデータＤｓとクロックＣＫとのスキュー検出動作を説明するためのタイミングチャートである。
【図２５】シリアルデータの入力タイミング図である。
【図２６】シリアル・パラレル変換装置の具体例の構成を示した回路図である。
【図２７】ＰＬＬ回路３１２の構成を示したブロック図である。
【図２８】ＰＳＴ発生回路の構成を示した回路図である。
【図２９】ＤＰＳＴ発生回路の構成を示した回路図である。
【図３０】スキュー検出回路の構成を示した回路図である。
【図３１】ストローブ選択回路の構成を示した回路図である。
【図３２】ストローブ選択回路の構成を示した回路図である。
【図３３】本発明のシリアル・パラレル変換装置において、シリアルデータＤｓとクロックＣＫとの間にスキューが存在しない場合の動作タイミング図である。
【図３４】本発明のシリアル・パラレル変換装置において、クロックＣＫに対しシリアルデータＤｓが遅れている場合の動作タイミング図である。
【図３５】本発明のシリアル・パラレル変換装置において、クロックＣＫに対しシリアルデータＤｓが進んでいる場合の動作タイミング図である。
【図３６】シリアル・パラレル変換装置の各部の入出力波形のタイミングチャートである。
【符号の説明】
１，１０１，２０１，３０１−シリアル・パラレル変換装置
１１，１１１，２１１，３１１−（シリアル・パラレル変換）ロジック回路
１２，１１２，２１２，３１２−ＰＬＬ回路
１３，１１３，２１３，３１３−ストローブ作成回路
１４，１１４，２１４，３１４−ストローブ選択回路
１５，１１５，２１５，３１５−スキュー検出回路
２１６，３１６−エッジ検出回路
【図１】
0003986358.tif 000002
【図２】
0003986358.tif 000003
【図３】
0003986358.tif 000004
【図４】
0003986358.tif 000005
【図５】
0003986358.tif 000006
【図６】
0003986358.tif 000007
【図７】
0003986358.tif 000008
【図８】
0003986358.tif 000009
【図９】
0003986358.tif 000010
【図１０】
0003986358.tif 000011
【図１１】
0003986358.tif 000012
【図１２】
0003986358.tif 000013
【図１３】
0003986358.tif 000014
【図１４】
0003986358.tif 000015
【図１５】
0003986358.tif 000016
【図１６】
0003986358.tif 000017
【図１７】
0003986358.tif 000018
【図１８】
0003986358.tif 000019
【図１９】
0003986358.tif 000020
【図２０】
0003986358.tif 000021
【図２１】
0003986358.tif 000022
【図２２】
0003986358.tif 000023
【図２３】
0003986358.tif 000024
【図２４】
0003986358.tif 000025
【図２５】
0003986358.tif 000026
【図２６】
0003986358.tif 000027
【図２７】
0003986358.tif 000028
【図２８】
0003986358.tif 000029
【図２９】
0003986358.tif 000030
【図３０】
0003986358.tif 000031
【図３１】
0003986358.tif 000032
【図３２】
0003986358.tif 000033
【図３３】
0003986358.tif 000034
【図３４】
0003986358.tif 000035
【図３５】
0003986358.tif 000036
【図３６】
0003986358.tif 000037