(57)【要約】【課題】クロック分配で消費される電力を削減することができる半導体装置を提供することを課題とする。【解決手段】バイアス電圧によって伝送するクロックの振幅をそれぞれ制御するクロックパスＡ及びクロックパスＢからの出力クロックの遷移数を遷移数検出部で検出し、検出した遷移数が、設定値よりも大きいかもしくは設定値よりも小さいかを判定部で判定するとともに、位相調整部が、クロックパスＡ及びクロックパスＢからの出力クロックとの位相を比較し、位相差に応じて位相調整指示を出力し、バイアス生成部が、判定部及び位相調整部の出力に応じたバイアス電圧を生成し伝送路に対して供給することで、最小の振幅でのクロック伝送を可能にするとともに、小スキューのクロック分配を実現する。【選択図】図１
2016001389.tif 000002
【特許請求の範囲】
【請求項１】
第１のバイアス電圧によって伝送するクロックの振幅を制御する第１の伝送路と、
第２のバイアス電圧によって伝送するクロックの振幅を制御する、前記第１の伝送路とは異なる第２の伝送路と、
前記第１の伝送路からの出力クロックと前記第２の伝送路からの出力クロックとの位相を比較し、位相差に応じて位相調整指示を出力する位相調整部と、
規定した検出期間における前記伝送路からの出力クロックの遷移数を検出する遷移数検出部と、
前記遷移数検出部により検出した遷移数が、設定値よりも大きいかもしくは設定値よりも小さいかを判定し、判定結果を出力する判定部と、
前記判定部の出力及び前記位相調整部の出力に応じた前記バイアス電圧を生成し、前記伝送路に対して供給するバイアス生成部とを有することを特徴とする半導体装置。
【請求項２】
前記第１の伝送路及び前記第２の伝送路のそれぞれに対して、前記遷移数検出部、前記判定部、及び前記バイアス生成部を有することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記バイアス生成部は、
前記判定部で、前記遷移数検出部により検出した遷移数が設定値よりも大きいと判定した場合、伝送するクロックの振幅を小さくする前記バイアス電圧を生成して前記伝送路に対して供給し、
前記判定部で、前記遷移数検出部により検出した遷移数が設定値よりも小さいと判定した場合、伝送するクロックの振幅を大きくする前記バイアス電圧を生成して前記伝送路に対して供給することを特徴とする請求項１又は２記載の半導体装置。
【請求項４】
前記バイアス生成部は、
前記位相調整部の出力に応じて、前記第１の伝送路からの出力クロックと前記第２の伝送路からの出力クロックとの内の位相が遅れている出力クロックの振幅を位相差に応じて大きくする前記バイアス電圧を生成して前記伝送路に対して供給することを特徴とする請求項１〜３の何れか１項に記載の半導体装置。
【請求項５】
前記バイアス生成部は、
前記判定部の出力に応じた前記バイアス電圧を生成して前記伝送路に対して供給した後に、前記伝送路に対して供給する前記バイアス電圧を前記位相調整部の出力に応じて変化させることを特徴とする請求項１〜４の何れか１項に記載の半導体装置。
【請求項６】
前記遷移数検出部は、前記伝送路からの出力クロックに係る遷移数を検出するカウンターを有し、
前記判定部は、
前記遷移数検出部により検出した遷移数が、設定値よりも大きければ出力を大きくし、設定値よりも小さければ出力を小さくする比較回路と、
前記比較回路の出力をデジタルコードに変換するアナログデジタル変換回路とを有することを特徴とする請求項１〜５の何れか１項に記載の半導体装置。
【請求項７】
バイアス電圧によって伝送するクロックの振幅が制御される伝送路からの出力クロックの遷移数を、規定した検出期間に亘って検出し、
検出した前記遷移数が、設定値よりも大きいかもしくは設定値よりも小さいかを判定し、
前記検出した遷移数が設定値よりも大きいと判定した場合、伝送するクロックの振幅を小さくする前記バイアス電圧を生成して前記伝送路に対して供給し、前記検出した遷移数が設定値よりも小さいと判定した場合、伝送するクロックの振幅を大きくする前記バイアス電圧を生成して前記伝送路に対して供給し、
第１の前記バイアス電圧が供給される第１の前記伝送路からの出力クロックと、第２の前記バイアス電圧が供給される第２の前記伝送路からの出力クロックとの位相を比較し、位相差に応じて前記第１のバイアス電圧又は前記第２のバイアス電圧の一方を変化させることを特徴とする半導体装置のクロック伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びクロック伝送方法に関する。
【背景技術】
【０００２】
半導体装置にて高速なクロックを扱う高速ＩＯ（入出力）マクロのような回路のクロック分配においては、信号間の位相差（スキュー、Ｓｋｅｗ）を小さくすることが求められる。高速ＩＯレシーバにおいて、クロック分配により消費される電力はとりわけ大きい。また、アプリケーションによっては、広い周波数範囲で動作可能なマルチレート対応を求めるものもある。
【０００３】
従来、信号間のスキューを補正する回路（Ｄｅ−ｓｋｅｗ回路）を搭載することにより、位相差が小さい小スキューのクロックを分配している半導体装置がある。例えば、クロックツリーの異なる経路で伝送されたクロック間の位相比較を位相比較回路により行い、位相比較回路の出力に応じてクロックドライバの遅延時間を制御することで、クロックの出力位相を揃える技術が提案されている（例えば、特許文献１参照）。
【０００４】
クリティカルパスとなる論理回路ブロックから出力されるデータを受けるフリップフロップに、その論理回路ブロックと同じプロセスで形成されたトランジスタを用いた遅延バッファを介してクロックを供給することで、動作環境等が変動しても論理回路ブロックからのデータを受け取れるようにする技術が開示されている（特許文献２参照）。インバータに対して出力を入力に帰還する帰還回路を設けて帰還量を制御することで遅延時間を調整する技術が開示されている（特許文献３参照）。同一チップ内の互いに独立した電源を使用する複数の領域で発生する、領域の電源電圧差に依存する信号の相対的な遅延差を、電源電圧差を示す情報に応じて補償する技術が開示されている（特許文献４参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−４４８５４号公報
【特許文献２】特開２００４−３８２７６号公報
【特許文献３】特開２００８−６７３６５号公報
【特許文献４】特開２００９−３０１４９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
半導体装置におけるクロック分配は、一般にクロックツリーを用いるが、スキューの小さいクロック分配を実現するには、クロックが高速になるほどクロックドライバの数が多く、大電力を消費してしまう。本発明の目的は、クロック分配で消費される電力を削減することができる半導体装置を提供することである。
【課題を解決するための手段】
【０００７】
半導体装置の一態様は、第１のバイアス電圧によって伝送するクロックの振幅を制御する第１の伝送路からの出力クロックと、第２のバイアス電圧によって伝送するクロックの振幅を制御する第２の伝送路からの出力クロックとの位相を比較し、位相差に応じて位相調整指示を出力する位相調整部と、伝送路からの出力クロックの遷移数を検出する遷移数検出部と、遷移数検出部により検出した遷移数が、設定値よりも大きいかもしくは設定値よりも小さいかを判定し、判定結果を出力する判定部と、判定部及び位相調整部の出力に応じたバイアス電圧を生成し、伝送路に対して供給するバイアス生成部とを有する。
【発明の効果】
【０００８】
開示の半導体装置は、最小の振幅でのクロック伝送が可能になるとともに、小スキューのクロック分配を実現でき、クロック分配で消費される電力を削減することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態における半導体装置の構成例を示す図である。
【図２】本実施形態におけるクロック伝送に係るインバータの構成例を示す図である。
【図３】本実施形態におけるバイアス生成部の電流セルの例を示す図である。
【図４】本実施形態における半導体装置の構成例を示す図である。
【図５】本実施形態における半導体装置の動作例を示すフローチャートである。
【図６】本実施形態における半導体装置の適用例を示す図である。
【図７】図６に示したダミー回路の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態を図面に基づいて説明する。
図１は、本発明の実施形態における半導体装置の構成例を示す図である。図１には、本実施形態における半導体装置のうち、クロック伝送に係る構成について示しており、その他の部分については省略している。
【００１１】
図１において、複数のクロックドライバとしてのインバータ１１Ａが直列接続されたクロック伝送路（クロックパスＡ）は、入力されるクロックＩＮＡを伝送し出力クロックＯＵＴＡとして出力する。また、複数のクロックドライバとしてのインバータ１１Ｂが直列接続されたクロック伝送路（クロックパスＢ）は、入力されるクロックＩＮＢを伝送し出力クロックＯＵＴＢとして出力する。クロックＩＮＡ及びクロックＩＮＢは、元となる１つのクロックから生成されて分配されるクロックであり、例えばクロックＩＮＡ及びクロックＩＮＢの一方の周波数は、他方の周波数と同じあるいは整数倍である。
【００１２】
インバータ１１Ａ、１１Ｂのそれぞれは、例えば図２に示すように、２つのＰチャネル型トランジスタ２１、２２及び２つのＮチャネル型トランジスタ２３、２４を有する。インバータ１１Ａ、１１Ｂのそれぞれは、対応するバイアス生成部１４Ａ、１４Ｂから供給されるバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮによって駆動能力（遅延時間）が制御される。
【００１３】
トランジスタ２１は、ソースが電源電圧のノードに接続され、ドレインがトランジスタ２２のソースに接続され、ゲートにバイアス電圧ＢＩＡＳＰが供給される。トランジスタ２２は、ドレインがインバータ１１の出力ノードＯＵＴに接続され、ゲートがインバータ１１の入力ノードＩＮに接続される。トランジスタ２３は、ソースがトランジスタ２４のドレインに接続され、ドレインがインバータ１１の出力ノードＯＵＴに接続され、ゲートがインバータ１１の入力ノードＩＮに接続される。トランジスタ２４は、ソースが基準電位のノードに接続され、ゲートにバイアス電圧ＢＩＡＳＮが供給される。
【００１４】
すなわち、インバータ１１は、入力ノードＩＮに入力された信号をトランジスタ２２、２３で構成されるインバータにより反転して出力ノードＯＵＴから出力する。また、トランジスタ２１、２４のそれぞれのゲートに供給されるバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮによって、トランジスタ２２、２３で構成されるインバータに対して電源等から供給される電流が制御され、インバータ１１の駆動能力（遅延時間）が制御される。
【００１５】
図１に戻り、遷移数検出部１２Ａは、規定した検出期間における、クロックパスＡからの出力クロックＯＵＴＡでの“０”（例えば、ローレベル（“Ｌ”））と“１”（例えば、ハイレベル（“Ｈ”））の間の遷移数を検出する。判定部１３Ａは、遷移数検出部１２Ａにより検出された遷移数と設定値とを比較して、検出された遷移数が設定値よりも大きいか、もしくは設定値よりも小さいかを判定し、判定結果をバイアス生成部１４Ａに出力する。
【００１６】
同様に、遷移数検出部１２Ｂは、規定した検出期間における、クロックパスＢからの出力クロックＯＵＴＢでの“０”と“１”の間の遷移数を検出する。判定部１３Ｂは、遷移数検出部１２Ｂにより検出された遷移数と設定値とを比較して、検出された遷移数が設定値よりも大きいか、もしくは設定値よりも小さいかを判定し、判定結果をバイアス生成部１４Ｂに出力する。
【００１７】
位相調整部１５は、クロックパスＡからの出力クロックＯＵＴＡとクロックパスＢからの出力クロックＯＵＴＢとのスキューを最小化するための位相調整に係る判定及び制御を行う。位相調整部１５は、出力クロックＯＵＴＡと出力クロックＯＵＴＢとの位相を比較し、位相が遅れているクロックのクロックパスに対応するバイアス生成部１４Ａ、１４Ｂの一方に対し、位相差に応じて振幅を調整する指示を出力する。
【００１８】
バイアス生成部１４Ａは、判定部１３Ａ及び位相調整部１５の出力に応じたバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを生成し、クロックパスＡのインバータ１１Ａに供給する。例えば、検出された遷移数が設定値よりも大きいと判定部１３Ａで判定された場合には、バイアス生成部１４Ａは、クロックの振幅を小さくするように、すなわちインバータ１１Ａの駆動能力が低くなるように（遅延時間が長くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる（バイアス電圧ＢＩＡＳＰを低下させ、バイアス電圧ＢＩＡＳＮを上昇させる）。一方、検出された遷移数が設定値よりも小さいと判定部１３Ａで判定された場合には、バイアス生成部１４Ａは、クロックの振幅を大きくするように、すなわちインバータ１１Ａの駆動能力が高くなるように（遅延時間が短くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる（バイアス電圧ＢＩＡＳＰを上昇させ、バイアス電圧ＢＩＡＳＮを低下させる）。また、バイアス生成部１４Ａは、位相調整部１５から振幅を調整する指示を受けた場合には、位相差に応じてクロックの振幅を大きくするように、すなわちインバータ１１Ａの駆動能力が高くなるように（遅延時間が短くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。
【００１９】
同様に、バイアス生成部１４Ｂは、判定部１３Ｂ及び位相調整部１５の出力に応じたバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを生成し、クロックパスＢのインバータ１１Ｂに供給する。例えば、検出された遷移数が設定値よりも大きいと判定部１３Ｂで判定された場合には、バイアス生成部１４Ｂは、クロックの振幅を小さくするように、すなわちインバータ１１Ｂの駆動能力が低くなるように（遅延時間が長くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。一方、検出された遷移数が設定値よりも小さいと判定部１３Ｂで判定された場合には、バイアス生成部１４Ｂは、クロックの振幅を大きくするように、すなわちインバータ１１Ｂの駆動能力が高くなるように（遅延時間が短くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。また、バイアス生成部１４Ｂは、位相調整部１５から振幅を調整する指示を受けた場合には、位相差に応じてクロックの振幅を大きくするように、すなわちインバータ１１Ｂの駆動能力が高くなるように（遅延時間が短くなるように）バイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。
【００２０】
ここで、バイアス生成部１４Ａ、１４Ｂは、例えば図３に示すような電流セル３１を複数有し、それら電流セル３１が並列して設けられている。図３は、本実施形態におけるバイアス生成部１４Ａ、１４Ｂが有する電流セルの例を示す図である。図３に示した電流セル３１は、３つのＮチャネル型トランジスタ３２、３３、３４及び電流源３５を有する。
【００２１】
トランジスタ３２は、ソースが基準電位のノードに接続され、ドレインがトランジスタ３４を介して電流Ｉｒを流す電流源３５に接続され、ゲートがドレインに接続されている。トランジスタ３３は、ソースが基準電位のノードに接続され、ドレインが出力電流ノードＩｏｕｔに接続され、ゲートがトランジスタ３２のゲートに接続される、すなわち、トランジスタ３２、３３は、カレントミラー接続されている。トランジスタ３４は、ゲートに制御信号（制御コード）ＣＤが供給され、電流源３５の他端は電源電圧のノードに接続される。
【００２２】
バイアス生成部１４Ａ、１４Ｂは、図３に示したような電流セル３１を並列に複数設けて出力電流ノードＩｏｕｔを共通に接続し、スイッチとしてのトランジスタ３４をオンさせる数及びオフさせる数を制御信号（制御コード）ＣＤで制御する。これにより、バイアス生成部１４Ａ、１４Ｂは、複数の電流セル３１による出力電流の総量を制御し、この出力電流を電流電圧変換することでバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを生成する。
【００２３】
次に、図１に示した本実施形態における半導体装置の動作について説明する。本実施形態における半導体装置は、振幅調整動作及び位相調整動作を行うことで、クロックパスＡ及びクロックパスＢにより伝送されるクロックの振幅を最適化するとともに位相差（スキュー）を最小化し、クロック分配で消費される電力を削減し小スキューのクロック分配を実現する。
【００２４】
まず、振幅調整動作によりクロックパスＡ及びクロックパスＢにより伝送可能なクロックの最小の振幅を決定する。なお、振幅調整動作はそれぞれのクロックパスに対して行うが、クロックパスＡ及びクロックパスＢでの振幅調整動作は同様であるので、クロックパスＡを例に説明する。振幅調整動作を開始すると、遷移数検出部１２Ａは、規定した検出期間中の、クロックパスＡからの出力クロックＯＵＴＡでの“０”と“１”の間の遷移数を検出する。そして、判定部１３Ａは、遷移数検出部１２Ａにより検出された遷移数が設定値よりも大きいか、もしくは設定値よりも小さいかを判定する。
【００２５】
判定の結果、検出された遷移数が設定値よりも大きければ、バイアス生成部１４Ａは、クロックパスＡからの出力クロックＯＵＴＡの振幅を小さくするように、インバータ１１Ａに供給するバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。また、検出された遷移数が設定値よりも小さければ、バイアス生成部１４Ａは、クロックパスＡからの出力クロックＯＵＴＡの振幅を大きくするように、インバータ１１Ａに供給するバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。前述した動作を繰り返し、検出された遷移数と設定値との関係が定常状態になると、そのときのクロックの振幅をクロックパスＡにより伝送可能なクロックの最小の振幅として決定し、振幅調整動作を終了する。
【００２６】
クロックパスＡ及びクロックパスＢに対する振幅調整動作が終了した後、位相調整動作によりクロックパスＡ及びクロックパスＢにより伝送されるクロックの位相を揃える。位相調整動作を開始すると、位相調整部１５は、出力クロックＯＵＴＡと出力クロックＯＵＴＢとの位相を比較する。比較の結果、位相調整部１５は、位相が遅れているクロックのクロックパスに対応するバイアス生成部１４Ａ、１４Ｂの一方に対し、クロックの振幅を大きくするように指示する。位相調整部１５からの指示を受けたバイアス生成部１４Ａ、１４Ｂの一方は、クロックの振幅を大きくするように、インバータ１１Ａ、１１Ｂに供給するバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを変化させる。このようにして、クロックパスＡ及びクロックパスＢにより伝送されるクロックの位相調整を行って出力位相を揃える。この位相調整動作は、通常動作時においても継続して行われる。
【００２７】
本実施形態における半導体装置によれば、最小の振幅でのクロック伝送が可能になるとともに、クロックの位相を揃えることができ、小スキューのクロック分配を実現でき、かつ消費される電力を削減することができる。また、例えば動作速度（クロックの周波数）が遅い場合にはクロックの最小の振幅を小さくできるので、動作周波数に応じて、最小の振幅を決定してクロック伝送を行うことが可能になり、動作周波数が変化しても電力を最適化し最小の電力でのクロック分配が可能となる。
【００２８】
図４は、本実施形態における半導体装置の具体的な構成例を示す図である。図４においても、本実施形態における半導体装置のうち、クロック伝送に係る構成について示しており、その他の部分については省略している。
【００２９】
図４において、複数のインバータ１０１Ａが直列接続されたクロック伝送路（クロックパスＡ）は、入力されるクロックＩＮＡを伝送し出力クロックＯＵＴＡとして出力する。また、複数のインバータ１０１Ｂが直列接続されたクロック伝送路（クロックパスＢ）は、入力されるクロックＩＮＢを伝送し出力クロックＯＵＴＢとして出力する。インバータ１０１Ａ、１０１Ｂの構成は、例えば図２に示したインバータ１１と同様である。
【００３０】
クロックパスＡからの出力クロックＯＵＴＡに係る振幅調整回路１１０Ａは、ダミー回路１１１Ａ、カウンター１１２Ａ、比較回路１１３Ａ、アナログデジタル変換回路（ＡＤＣ回路）１１４Ａ、加算回路１１５Ａ、及びバイアス回路１１６Ａを有する。ダミー回路１１１Ａは、クロックパスＡからの出力クロックＯＵＴＡを受けて実動作を行う図示しない回路と同様の負荷を有する回路であり、出力クロックＯＵＴＡに応じたクロックＣＬＫＡを出力する。ダミー回路１１１Ａは、例えば分周回路である。
【００３１】
カウンター１１２Ａは、供給されるクロックＥｘｔＸＣＬＫＡにより規定する検出期間（サンプリング期間）において、ダミー回路１１１Ａから出力されるクロックＣＬＫＡでの“０”と“１”の間の遷移数を検出する。例えば、カウンター１１２Ａは、クロックＥｘｔＸＣＬＫＡでの規定サイクル数の期間に亘って、クロックＣＬＫＡの遷移数を検出する。比較回路１１３Ａは、カウンター１１２Ａにより検出された遷移数と設定値とを比較して、検出された遷移数が設定値よりも大きければ出力（ＤＣ出力）を小さくし、設定値よりも小さければ出力を大きくする。
【００３２】
ＡＤＣ回路１１４Ａは、比較回路１１３Ａの出力（ＤＣ出力）をアナログデジタル変換してデジタルコード（振幅調整コード）に変換し出力する。加算回路１１５Ａは、ＡＤＣ回路１１４Ａでの変換により得られたデジタルコード（振幅調整コード）と位相調整回路１２０から供給されるデジタルコードとを加算して出力する。バイアス回路１１０Ａは、加算回路１１５Ａから出力されるデジタルコードに応じたバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを生成し、クロックパスＡのインバータ１０１Ａに供給する。
【００３３】
クロックパスＢからの出力クロックＯＵＴＢに係る振幅調整回路１１０Ｂは、ダミー回路１１１Ｂ、カウンター１１２Ｂ、比較回路１１３Ｂ、ＡＤＣ回路１１４Ｂ、加算回路１１５Ｂ、及びバイアス回路１１６Ｂを有する。ダミー回路１１１Ｂは、クロックパスＢからの出力クロックＯＵＴＢを受けて実動作を行う図示しない回路と同様の負荷を有する回路であり、出力クロックＯＵＴＢに応じたクロックＣＬＫＢを出力する。ダミー回路１１１Ｂは、例えば分周回路である。
【００３４】
カウンター１１２Ｂは、供給されるクロックＥｘｔＸＣＬＫＢにより規定する検出期間（サンプリング期間）において、ダミー回路１１１Ｂから出力されるクロックＣＬＫＢでの“０”と“１”の間の遷移数を検出する。比較回路１１３Ｂは、カウンター１１２Ｂにより検出された遷移数と設定値とを比較して、検出された遷移数が設定値よりも大きければ出力（ＤＣ出力）を小さくし、設定値よりも小さければ出力を大きくする。
【００３５】
ＡＤＣ回路１１４Ｂは、比較回路１１３Ｂの出力（ＤＣ出力）をデジタルコード（振幅調整コード）に変換し出力する。加算回路１１５Ｂは、ＡＤＣ回路１１４Ｂでの変換により得られたデジタルコード（振幅調整コード）と位相調整回路１２０から供給されるデジタルコードとを加算して出力する。バイアス回路１１０Ｂは、加算回路１１５Ｂから出力されるデジタルコードに応じたバイアス電圧ＢＩＡＳＰ、ＢＩＡＳＮを生成し、クロックパスＢのインバータ１０１Ｂに供給する。
【００３６】
位相調整回路１２０は、フリップフロップ１２８、選択回路１２１、１２２、１２７、位相検出回路１２３、チャージポンプ回路１２４、ループフィルタ１２５、及びＡＤＣ回路１２６を有する。フリップフロップ１２８は、データ入力端子にクロックパスＡからの出力クロックＯＵＴＡが入力され、クロック入力端子にクロックパスＢからの出力クロックＯＵＴＢが入力され、出力クロックＯＵＴＢに同期して出力クロックＯＵＴＡを取り込んで出力する。
【００３７】
つまり、フリップフロップ１２８は、出力クロックＯＵＴＢに同期して出力クロックＯＵＴＡを取り込んで出力することで、出力クロックＯＵＴＡ又は出力クロックＯＵＴＢのどちらの位相が遅れているかを出力により示す。例えば、フリップフロップ１２８は、出力クロックＯＵＴＡが位相の遅れている信号であれば“Ｈ”を出力し、出力クロックＯＵＴＢが位相の遅れている信号であれば“Ｌ”を出力する。
【００３８】
選択回路１２１は、フリップフロップ１２８の出力に応じて、出力クロックＯＵＴＡ及び出力クロックＯＵＴＢの内の位相の遅れている一方のクロックを対象クロックＣＫＩとして選択して出力する。選択回路１２２は、フリップフロップ１２８の出力に応じて、出力クロックＯＵＴＡ及び出力クロックＯＵＴＢの内の他方のクロック（選択回路１２１により選択されたクロックとは異なるクロック）を参照クロックＣＫＲとして選択して出力する。
【００３９】
位相検出回路１２３は、選択回路１２１から出力された対象クロックＣＫＩと選択回路１２２から出力された参照クロックＣＫＲとの位相差を検出する。チャージポンプ回路１２４及びループフィルタ１２５は、位相検出回路１２３の出力に応じて出力電圧（ＤＣ出力）を生成する。ＡＤＣ回路１２６は、チャージポンプ回路１２４及びループフィルタ１２５による出力電圧（ＤＣ出力）をデジタルコードに変換し出力する。
【００４０】
選択回路１２１は、フリップフロップ１２８の出力に応じて、ＡＤＣ回路１２６から出力されるデジタルコードを、振幅調整回路１１０Ａの加算回路１１５Ａ又は振幅調整回路１１０Ｂの加算回路１１５Ｂに出力する。選択回路１２１は、フリップフロップ１２８の出力により示される位相の遅れているクロックに対応する振幅調整回路１１０Ａ、１１０Ｂの一方に対して、ＡＤＣ回路１２６から出力されるデジタルコードを供給する。
【００４１】
シーケンサー１３０は、本実施形態における半導体装置での振幅調整動作及び位相調整動作に係る制御を行う。シーケンサー１３０は、例えば、外部からの信号ＣＬＫ＿ＡＤＪ＿ＳＴＡＲＴが入力される（“１”となる）と、振幅調整動作及び位相調整動作を開始し、動作が終了すると信号ＣＬＫ＿ＡＤＪ＿ＥＮＤを出力する（“１”にする）。
【００４２】
次に、図４に示した本実施形態における半導体装置の動作について説明する。図５は、図４に示した本実施形態における半導体装置の動作例を示すフローチャートである。前述したように本実施形態における半導体装置は、振幅調整動作及び位相調整動作を行う。
【００４３】
シーケンサー１３０に信号ＣＬＫ＿ＡＤＪ＿ＳＴＡＲＴ（＝“１”）が入力されることで動作を開始すると（Ｓ１０１）、シーケンサー１３０からの指示に応じて振幅調整回路１１０Ａ及び振幅調整回路１１０Ｂによる振幅調整動作が開始される。位相調整回路１２０は、動作せずに停止している。振幅調整動作を開始すると、振幅調整回路１１０Ａのダミー回路１１１Ａが、クロックパスＡからの出力クロックＯＵＴＡに応じたクロックＣＬＫＡの生成を開始し、振幅調整回路１１０Ｂのダミー回路１１１Ｂが、クロックパスＢからの出力クロックＯＵＴＢに応じたクロックＣＬＫＢの生成を開始する（Ｓ１０２）。
【００４４】
そして、クロックＣＬＫＡ、ＣＬＫＢが安定すると（Ｓ１０３）、振幅調整回路１１０Ａ、１１０Ｂでは、クロックＣＬＫＡ、ＣＬＫＢの“０”と“１”の間の遷移数が確認され、遷移数が設定値よりも大きい場合にはデジタルコード（振幅調整コード）を小さくしてクロックの振幅を小さくするように制御し、遷移数が設定値よりも小さい場合にはデジタルコード（振幅調整コード）を大きくしてクロックの振幅を大きくするように制御する（Ｓ１０４）。このステップＳ１０３及びＳ１０４の動作を、クロックＣＬＫＡ、ＣＬＫＢの遷移数と設定値との関係が定常状態になるまで繰り返し行う（Ｓ１０５）。
【００４５】
クロックＣＬＫＡ、ＣＬＫＢの遷移数と設定値との関係が定常状態になると、振幅調整回路１１０Ａ、１１０Ｂでは、そのときのクロックの振幅を伝送可能な最小の振幅として決定する。そして、振幅調整回路１１０Ａ、１１０Ｂは、決定した最小の振幅に対応するデジタルコード（振幅調整コード）を規定数（例えば１）だけ大きくする（Ｓ１０６）。これは、決定した最小の振幅が伝送可能な限界としての振幅であるため、振幅に余裕度を持たせるために加えるものである。このようにして、振幅調整回路１１０Ａ及び振幅調整回路１１０Ｂによる振幅調整動作を終了し、シーケンサー１３０が信号ＣＬＫ＿ＡＤＪ＿ＥＮＤ（＝“１”）を出力するとともに、位相調整動作を開始する（Ｓ１０７）。
【００４６】
なお、振幅調整回路１１０Ａ及び振幅調整回路１１０Ｂによる振幅調整動作は、同時に並列して実行しなくても良く、振幅調整回路１１０Ａ及び振幅調整回路１１０Ｂの一方による振幅調整動作を行った後に、他方による振幅調整動作を行うようにしても良い。また、振幅調整回路１１０Ａによる振幅調整動作の一部と振幅調整回路１１０Ｂによる振幅調整動作の一部とが並列に実行されても良い。
【００４７】
位相調整動作を開始すると、シーケンサー１３０からの指示に応じて位相調整回路１２０が動作を開始するとともに、振幅調整回路１１０Ａ及び振幅調整回路１１０Ｂの動作が停止されてダミー回路１１１Ａ、１１１ＢによるクロックＣＬＫＡ、ＣＬＫＢの生成が停止される（Ｓ１０８）。位相調整回路１２０では、位相検出回路１２３が動作を開始し、出力クロックＯＵＴＡ及び出力クロックＯＵＴＢの一方を対象クロックＣＫＩとし、他方を参照クロックＣＫＲとして位相比較を行う（Ｓ１０９）。そして、チャージポンプ回路１２４及びループフィルタ１２５が、位相検出回路１２３での位相比較により検出された位相差を出力電圧（ＤＣ出力）に変換して出力する（Ｓ１１０）。
【００４８】
続いて、ＡＤＣ回路１２６が、チャージポンプ回路１２４及びループフィルタ１２５による出力電圧（ＤＣ出力）をデジタルコードに変換する。このデジタルコードが、位相が遅れているクロックの振幅調整回路１１０Ａ、１１０Ｂのバイアス回路１１６Ａ、１１６Ｂに、選択回路１２７及び加算回路１１５Ａ、１１５Ｂを介して入力される。これにより、位相が遅れているクロックの振幅を大きくして、出力クロックＯＵＴＡ及び出力クロックＯＵＴＢの位相が揃うように位相調整を行い（Ｓ１１１）、出力クロックＯＵＴＡ及び出力クロックＯＵＴＢの出力位相が安定する（Ｓ１１２）。
【００４９】
ステップＳ１０８〜Ｓ１１２による位相調整動作は、半導体装置の実動作中においても継続して実行される。したがって、例えば温度等の動作環境が変化しても、その動作環境下での位相調整が行われ、小スキューでのクロック分配が実現できる。
【００５０】
以上のようにして、本実施形態における半導体装置では、最小の振幅でのクロック伝送が可能になるとともに、小スキューのクロック分配を実現でき、クロック分配で消費される電力を削減することができる。また、動作周波数に応じて、最小の振幅を変更しクロック伝送を行うことが可能になり、動作周波数が変化しても電力を最適化し最小の電力でのクロック分配が可能となる。
【００５１】
図６は、本実施形態における半導体装置の適用例を示す図である。図６において、図４に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。図６には、高速ＩＯ回路マクロのトランスミッター内部のマルチプレクサ回路において、各段のクロック分配に用いた例を示している。
【００５２】
図６においては、高速ＩＯ回路マクロのトランスミッター内部の４：２マルチプレクサ回路２０２に対してクロックパスＡからの出力クロックＯＵＴＡが入力され、２：１マルチプレクサ回路２０３に対してクロックパスＢからの出力クロックＯＵＴＢが入力される。クロックパスＡには、分周回路２０１により入力されるクロックＣＬＫを分周回路２０１により２分周して得られたクロックが入力クロックＩＮＡとして入力され、クロックパスＢには、入力されるクロックＣＬＫが入力クロックＩＮＢとして入力される。
【００５３】
図７は、図６に示したダミー回路１１１Ａ、１１１Ｂの一例を示す図である。図７に示すダミー回路は、Ｄラッチ回路３０１−１、３０１−２及びインバータ３０４、３０５を有する分周回路である。Ｄラッチ回路３０１−１、３０１−２の各々は、トランスファゲート３０２及びインバータ３０３を有する。Ｄラッチ回路３０１−１、３０１−２の各々は、その入力端がトランスファゲート３０２を介してインバータ３０３の入力端に接続され、その出力端がインバータ３０３の入力端に接続される。トランスファゲート３０２は、入力信号ＩＮにより制御されるＮチャネル型トランジスタとインバータ３０４により反転した入力信号ＩＮにより制御されるＰチャネル型トランジスタとを有する。Ｄラッチ回路３０１−２の出力が出力信号ＯＵＴとして出力されるとともに、インバータ３０５を介してＤラッチ回路３０１−１に入力される。
【００５４】
図６に示したように、高速ＩＯ回路マクロのトランスミッター内部のマルチプレクサ回路に対するクロック分配に本実施形態を適用することで、４：２マルチプレクサ回路２０２及び２：１マルチプレクサ回路２０３の各々に入力されるクロックのスキューを小さくし、かつ省電力でクロックを伝送することができる。
【００５５】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５６】
１１Ａ、１１Ｂ  インバータ（クロックドライバ）
１２Ａ、１２Ｂ  遷移数検出部
１３Ａ、１３Ｂ  判定部
１４Ａ、１４Ｂ  バイアス生成部
１５  位相調整部
１０１Ａ、１０１Ｂ  インバータ（クロックドライバ）
１１０Ａ、１１０Ｂ  振幅調整回路
１１１Ａ、１１１Ｂ  ダミー回路
１１２Ａ、１１２Ｂ  カウンター
１１３Ａ、１１３Ｂ  比較回路
１１４Ａ、１１４Ｂ  アナログデジタル変換回路
１１５Ａ、１１５Ｂ  加算回路
１１６Ａ、１１６Ｂ  バイアス回路
１２０  位相調整回路
１３０  シーケンサー
【図１】
2016001389.tif 000003
【図２】
2016001389.tif 000004
【図３】
2016001389.tif 000005
【図４】
2016001389.tif 000006
【図５】
2016001389.tif 000007
【図６】
2016001389.tif 000008
【図７】
2016001389.tif 000009