明 細 書
クロック調整回路と半導体集積回路装置
技術分野
[0001] [関連出願の記載]
本発明は、 日本国特許出願:特願 2006— 247980号(平成 18年 9月 13日出願) 及び特願 2007— 021159号(平成 19年 1月 31日出願)の優先権主張に基づくもの であり、同出願の全記載内容は引用をもって本書に組み込み記載されているものと する。
本発明は、半導体集積回路の高信頼化技術と、それを実現するための回路に関し 、特に半導体集積回路の動作マージンテスト技術と、該テストを実現するためのクロ ック信号生成技術に関する。
背景技術
[0002] 従来の半導体集積回路の良品選別テストや動作マージンテストは、一般に LSIテス タで行われる。し力も近年、 LSIの大規模化、機能の複雑化に伴い、論理遅延のタリ ティカルパスのテストだけでは、故障や不良を検出できない場合が増えており、前述 のテストを通過した LSIが実機上で動作不良を起こす場合がある。
[0003] そこで故障や不良の検出漏れを防ぐため、 LSIを実機のプリント基板、または実機 に見立てたテスト用のプリント基板に搭載して、システム全体を動力もてテストを行う 手法が用いられる。
[0004] LSIのテストでは、一般に、実際の動作条件よりも厳しレ、条件でテストを行い、ある 程度の動作マージンがあるものが選別されて出荷される。しかし、前述のように、 LSI をプリント基板に搭載してテストを行う場合には、 LSIの動作周波数などを調整しなが らマージンをテストすることができない。例えば、一般に、システム全体で動作テストを fiう場合には、 LAN (Local Area Network) , USB (Universal Sereial Bus) 、 HDD (Hard Disk Drive)、ビデオ信号などのインタフェースなども動作させる必 要がある。
[0005] このようなインタフェースは規格で動作周波数や許容されるデューティ比等が規定
されているため、システム全体での動作を行うためには、システムの基準クロックの周 波数を変えることが出来ない。
[0006] また、 LSI外部から LSIに供給されるリファレンスクロックは、一般に、水晶発振器か ら供給されるが、この水晶発振器の発振周波数は、製造時に決定され、後から調整 することができない。
[0007] また、 LSI内部のクロック信号は、一般に、 LSI内部に搭載された位相固定ループ( Phase Locked Loop ; PLL:「位相同期ループ」ともいう)によって生成されるため 、 LSI外部から LSI内部のクロック信号のデューティ比などを調整することは不可能で ある。
[0008] このように、プリント基板上に実装された LSIでは外部からクロック信号を調整するこ とが出来ない。
[0009] そこで、半導体集積回路の動作マージンテストを行うために、 LSI内部にクロック信 号の、周期、デューティ比、遅延などを調整する回路を搭載する必要がある。
[0010] 従来の LSIテスタで、半導体集積回路のテストを行う場合には、 LSIテスタが半導体 集積回路に与えるクロック周波数を調整することで、半導体集積回路内部の動作周 波数を調整することができる。これにより半導体集積回路の動作マージンをテストする こと力 Sでさる。
[0011] しかし、一般に半導体集積回路は内部に位相固定ループ (PLL)を有しており、半 導体集積回路内部のクロック信号は、この PLL力 S出力するクロックを用いる。そのた め、半導体集積回路内部のクロックのデューティ比や、位相のオフセットなどを外部 力、ら調整することは、これらを調整するための専用回路を具備しない限りは不可能で ある。
[0012] このような問題から、半導体集積回路内部にクロック信号の周期を調整する回路を 搭載して、動作マージンテストを行う手法が提案されている(特許文献 1 (US61278 58)、特許文献 2 (US6891421 (B2) ) )。
[0013] この回路を搭載することで、実機に搭載された半導体集積回路内部のクロック周期 およびデューティ比を調整することが可能である。
[0014] また、半導体集積回路内部に搭載されるクロック調整回路で、半導体集積回路内
部のクロックの遅延を制御できる回路の従来例として、特許文献 30JS5945862)、 特許文献 4 (US6125157)などがある。
[0015] これらの回路はクロック位相を無制限にシフトすることが可能である。この特徴を用 いて、出力クロックの立ち上がりエッジまたは立ち下がりエッジのどちらかを参照クロッ クのエッジのタイミングに合わせる DLL (Delay Locked Loop;同期固定ループ) 機能を実現している。
[0016] プリント基板に実装された半導体集積回路で、タイミングマージンなどのテストを行う には、半導体集積回路上にクロック信号の周期やデューティ比等を調整する回路を 搭載する必要がある。
[0017] 前述したように、半導体集積回路内部で、クロック信号の周期などを調整する回路 を開示した特許文献 1 (US6127858)、特許文献 2 (US6891421 (B2) ) ίこ (ま、図 1 に示すような回路が提案されている。この回路は、クロック信号の遅延を動的に切り 替えることにより、クロック周期やクロックのデューティ比などを調整することができる。 図 1の例では、遅延素子とセレクタで粗い遅延調整を行い、可変遅延回路によって、 細かい遅延の調整を行っている。可変遅延回路は、トランジスタの駆動能力を切り替 えるスィッチによって実現されている。例えば、遅延が短くなるようにセレクタを切り替 えると、前のクロックに対して位相が早まるので、遅延の切り替えを行った 1クロックサ イタルに限り、クロック周期が短くなる。逆に遅延が大きくなるように切り替えると、位相 が遅れ、その瞬間のクロック周期が長くなる。この方式は、簡単にクロック周期を伸縮 させることが可能だが、クロック周期を伸縮できるクロックサイクル数が、遅延素子の段 数によって制限されてしまう。また、遅延素子 1段当たりの遅延量は、ばらつきによつ て変動するので、ユーザーは遅延を 1段切り替えたことによって、クロック周期がどの くらレ、変動するの力、を正確に知ることが出来なレ、。
[0018] 一方で、半導体集積回路の故障や不良を検出するためには、図 2に示すように、半 導体集積回路内部にクロック調整回路 23を内蔵し、任意のサイクル数のクロック信号 に関して、 テューティ 匕、
スキュー'遅延等、
周期 (周波数)、
を調整できる構造が望まし!/、。
[0019] 任意のサイクル数のクロック信号(クロックパルス)の周期(周波数)、デューティ比、 ジッタ、遅延などを調整するためには、クロック信号の位相を無制限にシフトできる機 能が必要である。
[0020] これを実現するためには、例えばクロック 1周期を N分割した任意の位相を出力でき る回路を構成すればよい。なお、図 2において、クロック調整回路 23の出力はクロック 分配回路(クロックツリーバッファ) 24を介してロジック回路、 I/O回路、メモリ等の回 路のクロックとして供給される。またクロック分配回路 24の出力クロック力 セレクタ 22 を介して選択され、 PLL21に入力される。
[0021] 図 3 (a)に示すように、クロック 1周期を N分割した任意のタイミングでクロックエッジ を発生できるシステムを考える。徐々にクロック位相を遅らせていくと、やがて元の位 相から 1周期遅れることになる。 1周期遅れた状態は、元の位相と等価なので、さらに 位相を遅らせるためには、同じ操作を繰り返せばよい。
[0022] 図 3 (b)でこのことを考えると、クロック位相を遅らせていくことは、円上で位相が回 転して!/、くことであり、やがて 1回転して元の位相に戻る。
[0023] 更に位相を遅らせたければ、同じ操作を行えばよい。逆に位相を早める場合も同様 であり、円状を逆周りに回転し、やがて 1回転する。
[0024] このように、クロック周期(360度)をほぼ均等に N分割し、この N個の位相の中から 任意の位相のクロックを取り出すことができる回路を用意すれば、位相を無限に遅ら せたり早めたりすることができる。
[0025] 図 4は、クロック 1周期を N分割して、その中の任意の位相のクロックを出力する位相 シフタの構成の一例を示す図である。
[0026] L相クロック発生回路 44で、 L相クロック(Lは整数)を発生する。 L相クロック発生回 路 44は、 L本の出力端子を持ち、 L本の出力端子から出力されるクロック位相力 36 0度/ Lずつずれている。位相シフタ 40は、 L相クロック発生回路 44からの L本の出 力端子からの L相クロック信号を入力とするセレクタ 41、 42と、位相補完回路 43を備
えている。セレクタ 41、 42、位相補完回路 43には位相制御信号が供給される。
[0027] セレクタ 41、 42は、 L個あるクロック信号から 2個のクロック信号を選択する。セレク タ 41、 42では、クロック出力から出力されるクロック信号の位相が大まかに決定される 。セレクタ 41、 42で選択される 2つの信号は、互いに隣り合う位相であり、 360度/ L の位相差がある。
[0028] セレクタ 41、 42で選択された 2つのクロック信号は、位相補完回路 43に入力される 。位相補完回路 43は、位相がずれた 2つのクロック信号を入力し、その 2つのクロック 信号の位相を M段階で補完し、中間の位相を出力する。
[0029] 入力される 2つのクロック信号の位相力 ½度と y度であれば、出力クロックは (X— y) /M度刻みで、 Xと yの間の任意の位相を出力することが可能である。これにより、セ レクタで選択されたクロック位相をさらに細かく刻んで、クロック出力の位相を調整す
[0030] 例えば、 L = 8、 M= 16の場合は、 L相クロック発生回路からは 45度刻みでクロック 信号が出力され、位相補完回路では、 45/16 = 2. 8125度刻みでクロック信号の 位相を調整することができ、 1周期のクロック信号を、(L X M = ) 128段階で刻んだ任 意の位相のクロック信号を出力することができる。
[0031] この条件で、例えば 56. 25度のクロックを生成するには、セレクタ回路で、 45度と 9 0度のクロックを選択する。
[0032] 位相補完回路 43では、 45度のクロックと 90度のクロックを 12 : 4の割合で補完する ことで、 45度から 4段階(2. 8125 X 4 = 11. 25)位相差のあるクロックを出力すること ができる。
[0033] 図 5は、位相シフタの別の構成例を示す図である。この例では、 L相クロック発生回 路 53からの L相クロック信号の全てを、 L個の位相補完回路 51を用いて位相をずらし 、 L相クロック信号を生成する。次にセレクタ 52でこの中の 1つを選択することで、任 意の位相を発生する。
[0034] 図 4 (b)の場合と同様に、 L相クロック発生回路が 8相のクロックを出力し、位相補完 回路が 16段階で位相を補完する(M= 16)場合を考える。
[0035] ここで、 56. 25度のクロックを生成するには、各位相補完回路は、入力される 2つの
クロック信号を 12: 4の割合で補完する。
[0036] すると、 8個ある各位相補完回路 51からは、 11. 25度、 56. 25度、 101. 25度、 1 46. 25度、 191. 25度、 236. 25度、 281. 25度、 326. 25度を出力する。この中力、 ら、 2番目の位相である 56. 25度をセレクタで選択して出力すれば、所望の位相のク ロックを出力することができる。
[0037] 図 6は、図 4や図 5の位相シフタ 40、 50で用いられる多相クロック発生回路を位相 固定ループ(PLUで構成した例である。位相固定ループ(PLL)は、参照クロックと、 発振器 64の出カクロックの位相を比較する位相比較器 61、位相比較器 61での比較 結果に対応する電圧を生成するチャージポンプ 62、チャージポンプ 62の出力を平 滑化するループフィルタ 63を備え、ループフィルタ 63の出力電圧を制御電圧として 受ける発振器 (VCO) 64は、制御電圧に対応した発振周波数のクロックを出力する。 発振器 (VCO) 64は、初段のインバータ 65と複数段の遅延回路(正転バッファ) 66 ( インバータ 2段で構成される)を備え、最終段の出力を初段に帰還入力したリングォ シレータとして構成される。発振器 64に、等間隔の遅延を生成できる回路を用い、そ の等間隔の遅延のクロック信号を取り出すことで、多相クロックが得られる。
[0038] 図 7は、多相クロック発生回路を、遅延固定ループ (DLL)で構成した例である。位 相固定ループ(PLL)は、参照クロックと、遅延回路列の出力クロックの位相を比較す る位相比較器 71、位相比較器 71での比較結果に対応する電圧を生成するチャージ ポンプ 72、チャージポンプ 72の出力を平滑化するループフィルタ 73を備え、ループ フィルタ 73の出力電圧を制御電圧として遅延回路列は、遅延時間を可変させる。遅 延固定ループ内の遅延回路列に、等間隔の遅延を生成できる回路 74を用い、その 等間隔の遅延のクロック信号を取り出すことで、多相クロックが得られる。
[0039] 図 8 (a)は、多相クロック発生回路をクロック分周器で構成した例である。 D型フリツ プフロップ 811は、 D型フリップフロップ 814の出力をインバータ 83で反転した信号を データ入力端子 Dに入力し、データ出力端子 Qの出力信号とその反転信号を Q0、 /Q0として出力する。任意のサイクルで内部の状態が 1周するようなステートマシン 回路を構成することで、多相クロック信号を得ることができる。図 8 (b)は、その動作例 のタイミングチャートを示している。この回路で L相のクロックを生成する場合、出カク
ロックの周波数は一般に、入力クロックの周波数の 1/Lになる。
[0040] 図 9 (a)は、多相クロック発生回路を遅延素子と位相補完回路 (PI)で構成した例で ある。位相補完回路 93、 94は、 2つの入力信号の中間の位相の信号を出力する回 路である。位相補完回路 (PI) 93は、入力クロック Aと、 3段の遅延回路(正転バッファ ) 91で遅延させた信号 Bと、を入力してその中間の位相の信号を差動で出力する。 位相補完回路 (PI) 94は、 3段の遅延回路(正転バッファ) 91で遅延させた信号 Bと、 入力クロック Aをインバータ 92で反転させた信号/ Aを入力してその中間の位相の 信号を、差動で出力する。図 9 (b)は、この回路の動作のタイミングチャートを示して いる。入力クロック Aと、それを遅延させたクロック Bの中間の位相が Cである。
[0041] Aと Bの位相差を Xとすると、 Cから出力されるクロック信号の位相は、 Aの位相に対 して x/2遅れる。
[0042] Dから出力されるクロック信号は Bと Aの反転信号 (Aから 180度遅れた信号)の中 間の位相を出力する。つまり、クロック Aの位相に対して、位相が x/2 + 90度遅れる 。このため、位相差が 90度の 2つのクロック Cと Dを得ることができる。これらの反転信 号を合わせると、 90度刻みの 4相クロックが得られる。
[0043] 図 10は、図 4や図 5の位相シフタで用いられる位相補完回路の構成例を示す図で ある。図 10を参照すると、ソースが共通接続され、ゲートにクロック Aの反転信号/ A 、クロック信号 Aとを入力し、ドレインが、差動端子 Q、 /Qにそれぞれ接続されるとと もに、抵抗を介して電源に接続された NMOSトランジスタ 101、 102と、ソースが共通 接続され、ゲートにクロック Bとその反転信号/ Bを入力し、ドレインが、 NMOSトラン ジスタ 101、 102のドレインとそれぞれ共通接続されて、差動端子 Q、 /Qにそれぞ れ接続されるとともに、抵抗を介して電源に接続された NMOSトランジスタ 103、 104 とを備え、 NMOSトランジスタ 101、 102の共通ソースは、制御信号 C1によってオン' オフ制御される複数のスィッチトランジスタ 105を介して複数の定電流源 106に接続 され、 NMOSトランジスタ 103、 104の共通ソースは、制御信号 C2によってオン'ォ フ制御される複数のスィッチトランジスタ 107を介して複数の定電流源 108に接続さ れている。制御信号 Cl、 C2により、スィッチトランジスタ 106、 107のオンさせる個数 が決定され、差動対 101、 102と差動対 103、 104を駆動する電流値が制御され、信
号 Aと Bの補完比(内分比)が決定される。すなわち、 2つのクロック入力(Aと B)の 2 つの位相を補完して出力することができる。内部は、 2つ信号を加算(電流加算)し、 負荷抵抗を介して電圧出力する構成とされている。この電流加算を行うときに、 2つの 信号の重み付けを変えられるように、スィッチ素子とそれを制御する制御端子(C 1と C2)を備える。 C 1と C2により、 2つの差動対に流れる電流 IIと 12を調整すると、信号 Aを受ける差動対に流れる電流と差動対 Bに流れる電流のバランスを調整することが できる。このバランスによって、 2つの信号が加算されるときの重み付けが変わるので 、 Aに近い位相を出力したり、あるいは、逆に Bに近い位相を出力することも可能にな
[0044] 図 1 1は、位相補完回路の動作原理を示した図である。位相がずれた 2つのクロック 信号 A ( = cos ( ω t) )とクロック信号 B ( = cos ( ω t— φ ) )を入力し、それらを足し合わ せる。 2つの信号を cos波と仮定して、同じ重み付けで加算を行うと、その加算結果 Q ( = cos ( ω t) + cos ( ω t— φ ) )は、 Aと Bの中間の位相(= o t— φ /2)を出力する ことが分かる。
[0045] 図 12は、位相補完回路の別の構成例を示す図である。図 12 (a)に示すように、 2つ のクロック入力 Α、 Βに接続されるバッファ回路として、 3ステート型のものを用いるか 出力にトランスミッションゲートを配置するなどして、出力をハイインピーダンスに設定 可能なバッファ(トライステート 'バッファ) 120を複数個用意する。図 12 (b)のバッファ は、 CMOSインバータ(121、 122)の出力にトランスミッションゲート(CMOSトランス ファゲート) 123、 124を備えた構成であり、図 12 (c)のバッファは、 CMOSインバー タを構成する PMOSトランジスタ 126のソースと電源間に PMOSトランジスタ 125を 備え、 CMOSインバータを構成する NMOSトランジスタ 127のソースと GND間に N MOSトランジスタ 128を備え、 PMOSトランジスタ 125、 NMOSトランジスタ 128のゲ ートに相補の制御信号/ Cと Cを入力する構成としたものである。これら複数のバッフ ァ 120のうち、ハイインピーダンスに保つものと、通常のバッファとして動作するものの 個数を、制御信号 C l、 C2で制御することにより、 2つのクロック信号を混合する割合 を調整する。これにより、 Aと Bから与えられる 2つのクロックの位相を補完して Qから 出力する。
[0046] 図 13は、位相シフタを用いた遅延調整回路の構成の一例を示す図(特許文献 3参 照)である。図 13を参照すると、遅延調整回路 130は、位相シフタ 131と、カウンタ 13 2と、位相比較器 133を備えている。
[0047] カウンタ 132は、位相比較器 133の出力を受け入力クロックをカウントし、カウント値 を位相シフタ 131に制御信号として出力する。参照クロックと出力クロックの位相を位 相比較器 133で比較して、その比較結果によって出力クロックの位相を進めるか遅ら せる力、して、入力クロックと出力クロックの間の遅延を所望の値に調整するものである 。このような構成を用いた遅延調整回路は、特許文献 3、 4 (US5945862、 US612 5157)などがある。
[0048] 図 14は、図 13の回路を用いて位相シフタを動作させた場合のタイミングチャートの 例を示している。図 14は、入力クロック、制御信号、出力クロックのタイミング波形を示 している。この回路で位相シフトを行うと、制御信号の値が変動して位相シフタがクロ ックの位相を切り替える瞬間に、クロック信号の位相が不安定になる。これは、ユーザ 一が意図しないジッタを発生させてしまう。また、制御信号をクロック周期と同じ周期 で動かしている場合には、クロック信号の片側のエッジの位相しかシフトできないので 、デューティを調整することができない。
[0049] 図 13の回路構成では一般に、位相シフタ 131の制御信号は、位相シフタ 131が出 力するクロック位相を 1段階ずつしか調整できないので、クロック周期を急激に伸ばし たり縮めたりすることができな!/、。
[0050] さらに、複数のサイクルに渡ってクロック周期を伸縮させるためには、参照クロックの 周期も伸縮させる必要がある。つまり、図 13の構成の回路は、自立的にクロック周期 を伸縮させる機能を持たなレ、。
[0051] 特許文献 1 :米国特許第 US6127858号明細書
特許文献 2 :米国特許第 US6891421 (B2)号明細書
特許文献 3 :米国特許 US5945862号明細書
特許文献 4:米国特許 US 6125157号明細書
発明の開示
発明が解決しょうとする課題
[0052] 以上の特許文献;!〜 4の開示事項は、本書に引用をもって繰り込み記載されている ものとする。以下に本発明による関連技術の分析を与える。
これまでにも、 LSI内部に搭載されるクロック調整回路力 特許文献 1 (US612785
8)、特許文献 2 (US6891421 (B2) )等に提案されて!/、る。
[0053] しかしながら、この回路は、
(1)クロック周期を調整することができるクロックサイクル数が限定される、
(2)ばらつきによってクロック周期やデューティの調整幅が変動し、テスト結果の絶 対値の把握が困難である、
といった問題がある。
[0054] この手法は、図 1に示すように、クロック分配系に挿入した遅延素子 11の段数をセ レクタ 12で動的に切り替えることで、クロック周期等の調整を行っている。例えばセレ クタ 12にてクロック信号が通過する遅延段数が短くなるように切り替えることで、出力 されるクロックの位相が進み、その瞬間のクロック周期を短くすることができる。逆に、 セレクタ 12で遅延段数が長くなるように切り替えることで、クロックの位相が遅れるの で、その瞬間のクロック周期を長くすることができる。例えば、遅延素子 11の段数が 8 段であった場合には、連続する 8サイクルのクロックで、遅延素子 11の段数を 1段ず つ短くなるように切り替える力、、長くなるように切り替えることにより、連続する 8サイク ルのクロック周期を短くまたは長くすることができる。
[0055] しかし、この遅延素子 11の段数が有限であるため、連続してクロック周期を短くまた は長くできるクロックサイクル数が制限される。遅延素子 11の段数を増やすことで、連 続してクロック周期を長くまたは短くできるクロックサイクル数を増やすことができる。
[0056] しかしながら、クロック分配系に多くの遅延素子を揷入することにより、クロック信号 のジッタが大きくなる。さらに、クロック生成に一般的に用いられる位相固定ループ (P LL)のループ内遅延が大きくなり、フィードバックループの安定性が悪化するといつ た問題がある。そのため、遅延素子の段数はあまり多くできない。
[0057] この手法は、アットスピードテストを、 LSI内で実現できる手法であり、論理遅延のク リティカルパスに対して 1〜2サイクルのクロックを与えてマージンテストを行う場合に は有効である。
[0058] しかし、これは、設計者が予め想定したタリティカノレパスに対してテストを行うもので あり、前述の様に、近年の複雑な LSIでは予期していない故障や不良が発生し、これ らを検出できな!/、可能性がある。
[0059] そこで、テストでの検出漏れを防ぐためには、任意のサイクル数のクロック信号に対 して、クロック周波数やデューティなどを調整できる回路が望まれる。
[0060] また、近年の半導体集積回路は複数のクロックドメインを有するものが増えているが 、動作周波数の高速化によるタイミングマージンの減少と、大規模化によるスキュー の増大で、これら異なるクロックドメイン間での通信で動作不良を起こす場合が考えら れる。
[0061] このクロックドメイン間での通信で、タイミングマージンが十分に確保されているかを テストすることも重要になってきて!/、る。
[0062] しかしながら、特許文献 1、 2等に開示される従来のクロック調整回路は、遅延の調 整範囲が比較的狭い範囲に限定されているため、このようなテストに向かない。
[0063] クロックドメイン間や入出力回路などのテストでは、クロックの位相をクロック 1周期分 以上の範囲で、任意に位相を変動させられる回路が望まれる。
[0064] さらに、従来手法の遅延素子の段数や駆動能力を切り替える方式は、ばらつきなど によって遅延素子の遅延量が変動するので、遅延段数から遅延量の絶対値を読み 取ることが困難である、といった問題がある。
[0065] また、この従来手法のクロック調整回路にお!/、て、クロック信号の立ち上がりエッジと 立ち下がりエッジの両方のタイミングを制御する場合には、遅延素子の段数を制御す る制御回路は、 1クロック周期に 2回制御信号を出力しなければならない。特に高いク ロック周波数を扱うクロック調整回路では、このような 1クロックサイクルに 2回の制御信 号を生成することが難しくなる、という問題がある。
[0066] 一方で、クロック位相を無制限にシフトすることが可能なクロック調整回路も提案さ れている(特許文献 3、 4等参照)。
[0067] これらの従来例では、クロック 1周期を N分割した位相の中力 任意の位相を選択し て出力することが可能な、位相シフタ回路を実現している。この位相シフタで出力す るクロック信号の位相を N段階進めるか遅らせると、クロック位相は 1周して元の位相
に戻ってくる。そのため、無限に位相を進めるか遅らせることも可能になる。この位相 シフタ回路は、内部で、多相クロック信号を生成して、これらの中から選択した 2つの 位相を、位相補完回路で補完することで、任意の位相のクロック信号を生成している
〇
[0068] 特許文献 3、 4等に開示されているクロック調整回路は、図 13に示すように、位相シ フタ 131とカウンタ 132と位相比較器 133とを備えて構成されており、参照クロックと 出力クロックの位相が合うように、位相シフタ 131の制御信号を調整する。しかし、こ の回路は、参照クロックの情報に基づいて、クロックの遅延を調整する遅延固定ルー プ(Delay Locked Loop)機能しか持たない。クロック周期、デューティ比、ジッタ などを調整することができないため、半導体集積回路の動作マージンテストには用い ることができない、という問題がある。
[0069] また、図 14に示すように、クロック位相をシフトするときに、クロック信号の状態が画 定しな!/、タイミングが発生する。
[0070] このタイミングでは、クロック信号が不安定になり、ジッタが発生する場合がある。そ のため、ユーザーが意図しない外乱がクロック信号に入ってしまい、動作マージンの テストを正しく行うことができな!/、、と!/、う問題もある。
[0071] したがって、本発明の主たる目的は、上記課題を解消し、クロックの動作マージンに 関して半導体集積回路の不良 ·故障を検出することができる回路、及び該回路を備 えた半導体集積回路装置を提供することにある。 課題を解決するための手段
[0072] 本願で開示される発明は、前記課題を解決するため、概略以下の構成とされる。
[0073] 本発明の 1つの側面に係る半導体集積回路装置においては、クロック信号を入力 し、制御信号に基づき、クロックパルスの両エッジ又は一方のエッジのタイミング位相 を可変させたクロック信号を生成する手段と、前記制御信号を生成する手段とを備え 、前記クロックパルスのエッジのタイミング位相はクロックサイクル単位に可変自在とさ れ、半導体集積回路内のクロック供給先に、クロック周期、デューティ比、ジッタ、クロ ックドメイン間のスキユーのうちの少なくとも 1つのパラメータを可変に調整したクロック 信号を供給するクロック調整回路を備え、タイミング動作のマージンを評価可能として
いる。
[0074] 本発明において、自己テストにより、タイミング動作のマージンの評価を行い、動作 マージが予め定められた規定値に満たない場合に、警告を出力するか、又は動作を 停止する制御を行う。
[0075] 本発明に係るクロック調整回路においては、クロック信号を入力し、制御信号に基 づき、クロックパルスの立ち上がりエッジと立ち下がりエッジの両方又は一方のタイミン グ位相を可変にシフトさせて出力する位相シフタ回路と、前記位相シフタ回路から出 力されるクロック信号のエッジよりも前のタイミングで前記制御信号を、前記位相シフ タ回路に供給する制御回路と、を備えており、クロック周期、デューティ比、ジッタ、ス キューのうち少なくとも 1つのパラメータを、クロックサイクル単位に可変させたクロック 信号が出力可能とされている。
[0076] 本発明に係るクロック調整回路にお!/、て、前記位相シフタ回路は、入力クロック信 号を共通に受ける第 1及び第 2の位相シフタと、前記第 1及び第 2の位相シフタの出 力を受け、選択制御信号に基づき一方を選択出力するセレクタと、を備えている。前 記制御回路は、前記第 1及び第 2の位相シフタに第 1及び第 2の制御信号を供給し、 前記第 1及び第 2の位相シフタは、クロック信号の立ち上がりエッジとクロック信号の 立ち下がりエッジの位相をそれぞれ可変にシフトし、前記セレクタからは、クロック信 号の立ち上がりエッジとして、前記第 1の位相シフタの出力を選択し、クロック信号の 立ち下がりエッジとして、前記第 2の位相シフタの出力を選択する。
[0077] 本発明に係るクロック調整回路において、前記選択制御信号に、前記セレクタの出 力信号から生成される信号を用いる。
[0078] 本発明に係るクロック調整回路において、前記位相シフタ回路が、前記入力クロッ クを共通に受ける 1対の位相シフタと、前記 1対の位相シフタの出力を受け、選択制 御信号に基づき一方を選択出力するセレクタとからなる回路ユニットを複数備え、前 記制御回路は、前記各回路ユニットの各位相シフタに制御信号を供給する構成とし てもよい。
[0079] 本発明に係るクロック調整回路において、前記回路ユニットとして、少なくとも第 1及 び第 2の回路ユニットを備えている。前記第 1の回路ユニットセレクタは、前記第 2の
回路ユニットのセレクタの出力を選択制御信号として入力する。前記第 2の回路ュニ ットセレクタは、前記第 1の回路ユニットのセレクタの出力を選択制御信号として入力 する。
[0080] 本発明に係るクロック調整回路において、前記位相シフタ回路が、多相クロック信 号を入力し 1の相のクロック信号を選択して出力する第 1のセレクタと、前記多相クロ ック信号を入力し前記 1の相のクロック信号と別の相のクロック信号を選択して出力す る第 2のセレクタと、前記第 1及び第 2のセレクタで選択されたクロック信号を入力し、 前記入力した 2つのクロック信号の位相差を制御信号に基づき補完したクロック信号 を生成する位相補完回路と、前記制御回路からの制御信号に基づき、前記位相補 完回路で供給する制御信号と、前記第 1及び第 2のセレクタの選択を制御する信号と 、を生成する論理回路と、を備えた構成としてもよい。
[0081] 本発明に係るクロック調整回路において、前記制御回路が、クロック周期を規定す る制御コードを入力する加算器と、前記加算器の出力を保持するレジスタと、を備え 、前記レジスタの出力は前記加算器に入力されるとともに、前記位相シフタ回路へ供 給される、構成としてあよい。
[0082] 本発明に係るクロック調整回路にぉレ、て、前記制御回路が、クロック周期を規定す る制御コードを入力する第 1の加算器と、前記第 1の加算器の出力を保持するレジス タと、を備えている。前記レジスタの出力は第 1の加算器に入力される。前記制御コ ードの 1/2と前記レジスタの出力を加算する第 2の加算器をさらに備え、前記レジス タの出力は前記第 1の位相シフタ回路へ供給され、前記第 2の加算器の出力は前記 第 2の位相シフタ回路へ供給される構成としてもよい。
[0083] 本発明に係るクロック調整回路にぉレ、て、前記制御回路が、クロック周期を規定す る制御コードを入力する第 1の加算器と、前記第 1の加算器の出力を保持するレジス タと、を備えている。前記レジスタの出力は前記第 1の加算器に入力される。前記制 御コードの 1/2と前記レジスタの出力を加算する第 2の加算器を備えている。前記レ ジスタの出力と第 2の加算器の出力は、前記第 1の回路ユニットの 1対の位相シフタ 回路へ供給される。前記制御コードの 1/4と前記レジスタの出力を加算する第 3の 加算器と、前記クロック周期を規定する制御コードの 1/2と前記第 3の加算器の出力
を加算する第 4の加算器とをさらに備えている。前記第 3、第 4の加算器の出力は、前 記第 2の回路ユニットの一対の位相シフタ回路へ供給される。
[0084] 本発明に係るクロック調整回路において、前記レジスタの出力と第 2の加算器の出 力に対して、クロック位相、スキュー、デューティのいずれか 1つの制御コードを加算 する 1対の加算器を備え、前記第 3、第 4の加算器の出力は、クロック位相、スキュー 、デューティのいずれ力、 1つの制御コードを加算する 1対の加算器を備えている構成 としてあよい。
[0085] 本発明に係るクロック調整回路にお!/、て、前記制御回路が、クロック信号をカウント するカウンタと、前記カウンタのカウント値を入力しアドレス信号を生成するデコーダと 、前記デコーダから出力されるアドレス信号のデータを読み出し前記制御信号として 出力するメモリと、を備えている構成としてもよい。
[0086] 本発明に係るクロック調整回路において、前記制御回路が、クロック信号を受けて シフト動作し、シフト結果を前記制御信号として出力するシフトレジスタを備えた構成 としてあよい。
[0087] 本発明に係るクロック調整回路において、前記制御回路のクロック信号として前記 位相シフタ回路の出力クロックを用いる構成としてもよい。
[0088] 本発明に係る半導体集積回路装置は、前記クロック調整回路と、前記クロック調整 回路の出力クロックをバッファを介して受ける回路と、前記クロック調整回路の出カク ロックをバッファを介して受ける回路に入力されるクロック信号と参照クロックとの位相 を比較し比較結果を前記制御回路に供給する位相比較器と、を備えて!/、る。
[0089] 本発明に係る半導体集積回路装置は、 PLL (Phase Locked Loop)回路と、前 記クロック調整回路と、クロック信号を分配するバッファ回路と、前記バッファ回路から クロックを受ける回路に供給されるクロック信号と、前記 PLL回路の人力クロック信号 との位相を比較し比較結果を前記制御回路に供給する位相比較器と、を備えてレ、る
[0090] 本発明に係る半導体集積回路装置におレ、て、
任意のサイクルのクロック周期を可変させる;
任意のサイクルのクロック信号のジッタ振幅、及び/又は、ジッタ周波数を可変させ
る;
任意のサイクルのクロック信号の周波数、及び/又は、デューティ比を可変させる; テスト対象のクロックドメインのクロックの位相を、他のクロックドメイン又は外部クロッ クに対して遅らせるか又は進ませる;
任意のサイクルのクロック信号の位相、及び/又は、クロック信号のデューティ比を 可変させる;
のうちの少なくとも 1つを実行しエラーの有無を判定する。
[0091] 本発明の他の側面に係る半導体集積回路は、前記した本発明に係るクロック調整 回路と、前記クロック調整回路から供給されるクロック信号で動作する回路と、前記半 導体集積回路内の所定の信号の波形を観測するオンチップ波形観測回路と、を備 えている。
[0092] 本発明にお!/、て、前記オンチップ波形観測回路は、前記クロック調整回路から供給 されるクロック信号で動作する回路の電源電圧、又は接地電圧、あるいは両者の変 動を観測する。
[0093] 本発明にお!/、て、前記オンチップ波形観測回路は、前記クロック調整回路から供給 されるクロック信号で動作する回路の入力信号、出力信号、入出力信号、前記回路 の内部信号の少なくとも 1つの変動を観測する構成としてもよい。
[0094] 本発明において、前記クロック調整回路から供給されるクロック信号で動作する回 路の特性変動を予測するためのレプリカ回路を有し、オンチップ波形観測回路は、 前記レプリカ回路の入力信号、出力信号、入出力信号、前記レプリカ回路の内部信 号の少なくとも 1つの変動を観測する構成としてもよい。
[0095] 本発明に係る半導体集積回路は、さらに他の側面において、前記した本発明に係 るクロック調整回路と、前記クロック調整回路から供給されるクロック信号で動作する 回路と、半導体集積回路内の温度を測定するオンチップ温度測定回路と、を備えて いる。
[0096] 本発明に係る半導体集積回路は、さらに他の側面において、前記した本発明に係 るクロック調整回路と、前記クロック調整回路から供給されるクロック信号で動作する 回路と、前記クロック調整回路から供給されるクロック信号で動作する回路の特性変
動を予測するためのレプリカ回路と、を備えている。
[0097] 本発明にお!/、て、前記制御回路は、前記オンチップ波形観測回路での観測結果 に基づき、前記制御信号を生成し、前記クロック調整回路カゝら出力されるクロック信 号の波形を可変制御する。
[0098] 本発明にお!/、て、前記制御回路は、前記オンチップ温度測定回路での測定結果 に基づき、前記制御信号を生成し、前記クロック調整回路カゝら出力されるクロック信 号の波形を可変制御する構成としてもょレ、。
[0099] 本発明において、前記制御回路は、前記レプリカ回路の出力信号に基づき、前記 制御信号を生成し、前記クロック調整回路から出力されるクロック信号の波形を可変 制御する構成としてもよい。
[0100] 本発明において、前記クロック調整回路から供給されるクロック信号で動作する回 路の、誤動作を検出するためのエラー検出回路を有する構成としてもよい。
本発明にお!/、て、クロック信号を生成し前記クロック調整回路に供給するクロック生 成回路を備え、前記制御回路は、前記クロック生成回路に対して制御信号を供給し 前記クロック生成回路の特性を可変制御する構成としてもょレ、。前記クロック生成回 路が位相ロックループ回路を含む。
[0101] 本発明において、前記クロック調整回路から出力されるクロック信号を受ける可変遅 延回路を備え、前記可変遅延回路から出力されるクロック信号が、前記クロック調整 回路から供給されるクロック信号で動作する回路に供給され、前記制御回路は、前 記可変遅延回路に制御信号を供給し、前記可変遅延回路の遅延特性を可変制御 する構成としてあよい。
[0102] 本発明に係る半導体集積回路は、さらに他の側面において、半導体集積回路装置 内に配設された制御回路で生成された制御信号を受け、前記制御信号に応じて、半 導体集積回路装置内の少なくとも一つのクロック供給先の回路に対して供給されるク ロック信号に関して、前記クロック信号の周期、デューティ、ジッタ、スキューのうち少 なくとも一つの特性をクロックサイクルベースで可変に調整する手段を含むクロック調 整回路と、 を含み、前記制御回路は、
前記半導体集積回路装置内の所定の電源端子の波形観測結果;
前記半導体集積回路装置内の所定の接地端子の波形観測結果; 前記クロック供給先の回路の信号波形の観測結果;
前記半導体集積回路装置内の温度測定結果;
前記クロック供給先の回路の特性変動を予測するために前記半導体集積回路装 置内に設けられたレプリカ回路の出力;
前記クロック供給先の回路の出力に関するエラー検出結果;
の少なくとも一つに基づき、前記制御信号を生成する。
[0103] 本発明において、クロック信号を生成し前記クロック調整回路に供給するクロック生 成回路をさらに備え、前記制御回路から、前記クロック調整回路のほか、前記クロック 生成回路に制御信号がそれぞれ供給され、前記クロック供給先へ供給されるクロック 信号の特性が可変制御される。あるいは、前記クロック調整回路から出力されるクロッ ク信号を受け、前記クロック供給先の回路にクロックを供給する可変遅延回路をさら に備え、前記制御回路から、前記クロック調整回路のほか、前記クロック生成回路、 前記可変遅延回路に制御信号がそれぞれ供給され、前記クロック供給先へ供給され るクロックの特性が可変制御される構成とされる。
[0104] 本発明に係る半導体集積回路は、さらに他の側面において、
半導体集積回路装置内に配設された制御回路で生成された制御信号を受け、前 記制御信号に応じて、半導体集積回路装置内の少なくとも一つのクロック供給先の 回路に対して供給されるクロック信号に関して、前記クロック信号の周期、デューティ 、ジッタ、スキューのうち少なくとも一つの特性をクロックサイクルベースで可変に調整 する手段を含むクロック調整回路と、
前記半導体集積回路装置内の電源電圧の波形を観測する波形観測回路と、 を含み、
前記制御回路は、前記電源電圧の波形観測結果に基づき、前記制御信号を生成 して前記クロック調整回路を制御し、電源電圧の変動に対する前記クロック調整回路 力 のクロック信号の周波数変動の位相差、変動量 (クロック周波数変動の振幅)を 可変させ、
各位相差及びクロック周波数変動量に対して、前記クロック供給先の回路が正しく
動作しているか否かを、前記半導体集積回路装置内又は外部のエラー検出回路で 検出し、前記エラー検出回路でのパス/フェイル情報に基づき、電源電圧変動とクロ ック周波数変動の位相差と、動作マージンとの関係の取得自在としている。
発明の効果
[0105] 本発明によれば、半導体集積回路装置に、クロック信号の周期、デューティ、スキュ 一などを調整するためのクロック調整回路を搭載し、実機の基板または実機に見立 てたテスト用基板に搭載された LSIにおいて、半導体集積回路装置を動作させなが ら LSI内部のクロック信号のパラメータに外乱を与え、外乱に対する動作マージンを 検出することで、よりマージンが大きくて信頼性が高!/、LSIを選別すること力 Sできる。 かかる本発明によれば、従来の LSIのテストよりも厳し!/、条件で LSIの不良 ·故障を検 出すること力 Sでさる。
[0106] 本発明によれば、連続する無限または任意のサイクル数のクロック信号に対して外 乱を与えることが可能としている。このため、故障や不良の検出漏れをより少なくする ことが可能になり、より信頼性の高い半導体集積回路装置を選別して出荷することが 可能になる効果が得られる。
[0107] 本発明によれば、クロック 1周期(360度)を N分割した位相力 調整 1段階あたりの 変動量になるため、テスト結果から動作マージンの位相や時間の絶対値を把握する ことを容易としている。
[0108] また、本発明によれば、クロックの
(1)両エッジの位相を動的に制御できる、
(2) 1サイクルで変動させられるクロック位相の調整幅が大きい、
(3)クロック位相の調整時に発生するジッタが小さい、
とレ、う効果を奏することができる。
[0109] 本発明のクロック調整回路を、半導体集積回路装置内に内蔵することにより、出荷 後にも実機上で動作マージンの自己テストをすることが可能となる。これにより、経年 劣化などによる故障を未然に防ぐことにも有用である。
[0110] 本発明のクロック調整回路は無限のサイクル数のクロック信号の周期を調整できる。
このため、周波数シンセサイザとして用いることができる。 PLLを用いた周波数シンセ
サイザに比べて回路面積の縮減、設計容易化を実現する。
[0111] 本発明によれば、制御回路に乱数または擬似乱数を発生する回路を備え、クロック 信号の位相をランダムに変動させることができ、スペクトラム拡散などの機能を実現す ることが可能である。
[0112] さらに、本発明によれば、クロック信号のデューティゃスキューが調整できるので、 デューティゃスキューのばらつき補正回路としても用いることが出来る。
[0113] 本発明のクロック調整回路は、通信機器の周波数変調回路や位相変調回路などの 変調回路に適用可能とされ、様々な変調方式を 1つの回路で実現できる、回路面積 が小さくなる、などの効果が得られる。
図面の簡単な説明
[0114] [図 1]従来の構成を示す図である。
[図 2]本発明のクロック調整回路が用いられるシステム構成を示す図である。
[図 3]図 2を説明する図である。
[図 4]本発明の一実施例の構成を示す図である。
[図 5]位相シフタの構成の別の例を示す図である。
[図 6]多相クロック発生回路の構成の一例を示す図である。
[図 7]多相クロック発生回路の構成の別の例を示す図である。
[図 8] (a)、(b)は、多相クロック発生回路の構成のさらに別の例と動作波形の例を示 す図である。
[図 9] (a)、(b)は、多相クロック発生回路の構成のさらに別の例と動作波形の例を示 す図である。
[図 10] (a)、 (b)は位相補完回路の構成と動作波形の例を示す図である。
[図 11]位相補完回路の動作波形の例を示す図である。
[図 12]位相補完回路の構成の別の例を示す図である。
[図 13]従来の遅延調整回路の構成を示す図である。
[図 14]図 13の回路の動作波形を説明する図である。
[図 15] (a)、 (b)は本発明の一実施例のクロック調整回路と動作波形の例の構成を示 す図である。
園 16]本発明の一実施例のクロック調整回路の構成を示す図である。
[図 17]図 16の回路の動作波形を説明する図である。
園 18]本発明の一実施例のクロック調整回路の別の構成を示す図である。
園 19]本発明の一実施例のクロック調整回路のさらに別の構成を示す図である。
[図 20]本発明の一実施例のクロック調整回路のさらに別の構成を示す図である。
[図 21]図 20の回路の動作を説明するタイミング波形図である。
園 22]本発明の一実施例のクロック調整回路のさらに別の構成を示す図である。
[図 23]図 22の回路の動作を説明するタイミング波形図である。
園 24]本発明の一実施例の制御回路の構成を示す図である。
園 25]本発明の一実施例の制御回路の別の構成を示す図である。
園 26]本発明の一実施例の制御回路のさらに別の構成を示す図である。
[図 27]図 26の回路の動作を説明するタイミング波形図である。
園 28]本発明の一実施例の制御回路のさらに別の構成を示す図である。
[図 29] (a)、 (b)は本発明の別の実施例のクロック調整回路の構成を示す図である。
[図 30]本発明の別の実施例のクロック調整回路の構成を示す図である。
[図 31]本発明の実施例の動作を説明する図である。
園 32]本発明の別の実施例のクロック調整回路の構成を示す図である。
園 33]本発明の別の実施例のクロック調整回路の構成を示す図である。
[図 34]本発明の別の実施例のクロック調整回路の構成を示す図である。
園 35]本発明の別の実施例のクロック調整回路の構成を示す図である。
[図 36] (a)、 (b)は本発明の実施例の構成を示す図である。
園 37]本発明の一実施例の動作を説明する波形図である。
[図 38] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。 園 39]本実施例のジッタを説明する図である。
[図 40] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。 園 41]ジッタ周波数を説明する図である。
[図 42] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。
[図 43] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。
[図 44] (a)、(b)、(c)は本発明の一実施例のテスト手順を示す流れ図と、説明図と波 形図である。
[図 45] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。
[図 46]異なるクロックドメイン間で、クロックのスキューを調整した場合のクロック波形の 例を示す図である。
[図 47] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。
[図 48] (a)、(b)は本発明の一実施例のテスト手順を示す流れ図と、説明図である。
[図 49]本発明の一実施例のテスト手順を示す流れ図である。
[図 50]本発明の別の実施例の構成を示す図である。
園 51]本発明のさらに別の実施例の構成を示す図である。
[図 52] (a)、 (b)は図 51の実施例の動作マージンテスト例を説明する図である。
[図 53]図 51の実施例の動作マージンテスト例を説明する図である。
園 54]図 51の実施例の変形例を示す図である。
[図 55] (a)、 (b)は図 54の実施例の動作マージンテスト例を説明する図である。 園 56]本発明のさらに別の実施例の構成を示す図である。
[図 57] (a)、 (b)は図 56の実施例の動作マージンテスト例を説明する図である。 園 58]本発明の別の実施例の構成を示す図である。
[図 59] (a)は図 58の実施例の動作マージンテスト例を説明する図、(b)は電源変動と クロック周波数の位相差と動作マージンの関係の一例を示す図である。
園 60]本発明の別の実施例の構成を示す図である。
園 61]本発明の別の実施例の構成を示す図である。
[図 62]図 61の実施例の動作マージンを説明する図である。
[図 63]本発明の別の実施例の構成を示す図である。
園 64]本発明の別の実施例の構成を示す図である。
[図 65]本発明の別の実施例の構成を示す図である。
符号の説明
11 遅延素子
12 セレクタ
可変遅延素子
PLL
セレクタ
クロック調整回路
クロック分配回路
論理回路 Z入出力回路/メモリ 位相シフタ
、 42 セレクタ
位相補完回路
L相クロック発生回路
位相シフタ
位相補完回路
セレクタ
L相クロック発生回路
多相クロック発生回路 位相比較器
チャージポンプ
ノレープフィルタ
発振器
インバータ
遅延回路
多相クロック発生回路 位相比較器
チャージポンプ
ノレーフフィノレ夕
遅延回路
多相クロック発生回路
82 83 インバータ
91 遅延回路
92 95 96 インノ ータ
93 94 位相補完回路
102 103 104 NMOS卜ランジスタ
105 107 スィッチトランジスタ
106 108 定電流源
120 トライステートバッファ
121 123 125 126 PMOSトランジスタ
122 124 127 128 NMOS卜ランジスタ 130 遅延調整回路
131 位相シフタ
132 カウンタ
133 位相比較器
150 160 180 クロック調整回路
151 161 162 181 182 位相シフタ
152 164 184 制御回路
163 183 2入力セレクタ
185 遅延素子 190 クロック調整回路
191 192 193 194 位相シフタ
195 196 2入力セレクタ
197 制御回路 200 クロック調整回路
201 202 203 204 位相シフタ
205 206 2入力セレクタ
207 制御回路
220 クロック調整回路
221 位相シフタ
223 224 N入力セレクタ
225 位相補完回路
226 論理回路
227 制御回路
240 制御回路
241 加算器
242 レジスタ
243 位相シフタ
250 制御回路
251 加算器
252 レジスタ
253 1/2倍または 1ヒ :、'ットシフト回路
254 加算器
256、 257 位相シフタ
258 セレクタ
261 加算器
262 レジスタ
263 1/2倍または1ヒ 、'ットシフト回路
264 1/4倍または 2ヒ "ットシフト回路
265 1/2倍または 1ヒ 、'ットシフト回路
266 位相シフタ
267 セレクタ
281 1Z2倍または 1ヒ "ットシフト回路
282 1/4倍または 2ヒ "ットシフト回路
283 加算器
284 加算器
286 位相シフタ
285 スキュー制御コード加算器
291 位相シフタ
292 制御回路
293 メモリ
294 アドレスデコーダ
295 カウンタ
296 シフトレジスタ
301 位相シフタ
302 制御回路
303 乱数発生回路
321 位相シフタ
322 制御回路
331、 332 位相シフタ
333 セレクタ
334 制御回路
341—344 位相シフタ
345、 346 セレクタ
347 制御回路
350 クロック調整回路
351 位相シフタ
352 制御回路
353 位相比較器
354 ノくッファ
355 論理回路 Zメモリ回路 Z入出力回路 361 PLL
362、 365 クロック調整回路
363 クロック分配回路(クロックツリーバッファ)
364 論理回路/メモリ回路/入出力回路
366 位相比較器
501 クロック調整回路
502 BIST回路
510、 560、 580、 600、 610、 630、 640、 650 半導体集積回路
511、 561、 601、 631、 641、 651 クロック調整回路
512、 562、 602、 632、 642、 652 テス卜対象回路
513、 563、 603、 653 オンチップ波形観測回路
514、 564、 604、 634、 644、 654 制御回路
515 電源線 (電源端子)
516 接地線 (接地端子)
581 エラー検出回路
605 PLL (Phase Locked Loop)
606 クロックノ ッファ
607 遅延調整回路
608 エラー検出回路
633 温度測定回路 (オンチップ温度センサ)
643、 656 レプリカ回路
発明を実施するための最良の形態
[0116] 本発明は、クロック周期、デューティ比、クロックドメイン間のスキューなどを調整でき る回路を半導体集積回路に内蔵する。半導体集積回路のテスト時には、この回路を 用いて半導体集積回路内部のクロック信号のクロック周期、デューティ、クロックドメイ ン間のスキューなどを調整しながら動作テストを行い、それぞれの動作マージンを検 出する。動作マージンが少ない LSI (被テスト対象のデバイス; Device Under Tes t)は選別テストで不合格とし、マージンが大きく取れる半導体集積回路だけを出荷す
[0117] また、半導体集積回路出荷後にもこの調整回路を用いて、クロック周期、デューティ 、スキューなどに対するマージンの自己テストを行い、マージンが規定 よりも少なく なった場合には、警告を出したり、動作を安全に停止させたり等の操作を行う。
[0118] 半導体集積回路内部のクロック周期、デューティ、スキューなどを調整できる回路の 構成例として、半導体集積回路内部に、任意の位相のクロック信号を発生できる回路
(「位相シフタ」という)を用意し、出力するクロックの位相を動的に切り替えることで、 半導体集積回路内部のクロック周期を任意に調整できる構成を用いた。 360度を N 分割した任意のクロック位相を出力できる回路を用意することで、クロック位相を無限 にシフトさせること力 Sできる。この回路は例えば、多相クロック発生回路と、セレクタ回 路と、位相補完回路を組み合わせて実現することができる。
[0119] 位相シフタを用いることにより、無限のサイクル数または、任意のサイクル数のクロッ クに対して、周期やデューティを調整することができる。また、クロック位相を任意のタ イミングに調整できるので、他のクロックドメインに対するクロックスキューの制御も可 能になる。この位相シフタ回路を用いると、クロックの位相は、 360度/ Nの単位で、 調整されるので、ユーザーはクロック位相の変動量を正確に把握することが出来る。
[0120] 位相シフタを制御する制御回路は、クロック信号の位相がユーザーの所望の値に なるような制御を行う。この制御回路は、半導体集積回路のテストに必要となる、クロ ック周期の制御、ジッタ振幅およびジッタ周波数の制御、デューティ比の制御、参照 クロックなどの他のクロックとの位相差、などを制御する機能を有する。この制御は、ァ キュムレータ回路を用いて、クロック位相の加算または減算を行うことで実現できる。 このアキュムレータの構成を工夫することで、クロック信号のデューティを 1: 1程度に 保ちながら、クロック周期を調整できる構造を発明した。クロック周期、デューティ比、 遅延を、 10ps以下の単位で調整可能である。
[0121] またユーザーによって、任意の位相変動のパターンをプログラムできるように、メモリ やレジスタ回路を用いてベクトルテーブルを構成し、プログラムされた制御信号を順 次出力するような構成も考えられる。これを用いることで、ユーザーが定義した特定の クロックのタイミング変動に対する動作テストが可能になる。
[0122] また、この制御回路の内部に乱数発生回路を持たせることで、位相シフタにランダ ムジッタを発生させることもできる。これを用いることで、ランダムジッタに対する動作 マージンテストも可能になる。
[0123] 位相シフタ回路は、通常、クロック位相を変化させる時に、ジッタを発生してしまう場 合がある。これは、クロック位相を変化させるための制御信号を与えてから、出力クロ ックの位相が所望の位相に切り替わるまでに、一定の遅延時間が生じるためである。
この遅延時間の間に出力クロックのエッジが現われると、クロックエッジのタイミングが 不安定になり、ジッタが発生してしまう。特に、この現象は、 1クロックサイクルの間にク ロック位相を大きくシフトさせる場合に顕著に現われる。
[0124] 本発明が意図している半導体集積回路のテストでは、クロック周期やクロック位相を 大きく変動させてマージンテストを行いたいので、 1クロックサイクルの間にクロック位 相を大きくシフトさせる操作を多用する。
[0125] しかし、半導体集積回路のテストにおいて、ユーザーが意図しないジッタが発生し てしまうと、そのジッタによって半導体集積回路が誤動作を起こしてしまう可能性があ り、正しいマージンテストができない。
[0126] そこで、位相シフタ回路によるクロック位相の切り替え時に発生するジッタを抑制す る回路構成も、本発明の 1つである。
[0127] 本発明にお!/、ては、位相シフタを複数個用意することで、それぞれの位相シフタが
、クロック信号の立ち上がりエッジと立ち下がりエッジのうち!/、ずれか一方だけの位相 を調整する構成としている。複数個の位相シフタの出力を、動的に切り替えながら用 いることで、位相シフタがクロック位相を変化させる時に一時的に現われる不安定な 信号が、チップを動作させるクロック信号に伝わることを抑止(回避)することができる 。これにより、クロック信号のジッタを小さくすることができる。
[0128] また、この位相シフタを複数個用いる構成の本発明によれば、位相シフタを制御す る制御信号を、 1クロックサイクルに 1回以下の頻度で発生すればよいことから、制御 回路の構成が容易になる。このため、本発明によれば、特に高い周波数を扱うクロッ ク調整回路を構成することが可能になる。
[0129] 位相シフタを複数個用いる構成では、 1つの位相シフタが正確に出力しなければな らなレ、クロックエッジ力 立ち上がりエッジか立ち下がりエッジの!/、ずれか一方でよ!/ヽ ことから、位相シフタを制御する制御信号は、立ち上がりエッジの間隔または立ち下 力 Sりエッジの間隔で、発生すればよい。
[0130] また、位相シフタの出力信号がセレクタで選択されていない間(時間期間)であれ ば、どのタイミングでクロック位相を切り替えても、出力クロックに影響しないため、制 御回路が出力する制御信号のタイミングの設計が容易である。
[0131] 従来のクロック調整回路では、 1クロックサイクルの間に、立ち上がりエッジの制御信 号と立ち下がりエッジの制御信号の 2つの信号を発生する必要があった。
[0132] そのため、制御回路の動作速度の限界から、高いクロック周波数で動作できない問 題があつたが、これを解決した。
[0133] また、クロック位相の切り替えは、立ち上がりエッジと立ち下がりエッジの間と、立ち 下がりエッジと立ち上がりエッジの間に行わなければならず、クロック位相の切り替え のタイミング制御に高い精度が必要であった力 S、本発明は、この点も解決した。
[0134] 本発明は、従来の LSIのテストよりも厳しい条件で LSIの不良.故障を検出する手法 を提供する。
[0135] そのために、 LSI上にクロック信号の周期、デューティ、スキューなどを調整するた めのクロック調整回路を搭載する。実機の基板または実機に見立てたテスト用基板に 搭載された LSIにおいて、 LSIを動作させながら LSI内部のクロック信号の、(1)周期 、(2)デューティ比、(3)スキュー、(4)ジッタ、などに外乱を与える。これらのパラメ一 タの外乱に対する動作マージンを検出することで、よりマージンが大きくて信頼性が 高い LSIを選別する。
[0136] 従来のクロック調整回路 (例えば特許文献 1、 2)とは異なり、本発明によれば、連続 する無限または任意のサイクル数のクロック信号に対して、 1)周期、(2)デューティ比 、(3)スキュー、(4)ジッタ、などに外乱を、クロックサイクル単位に与えることが可能に なる。
[0137] 本発明のかかる特徴により、故障や不良の検出漏れを、さらに縮減することを可能 としており、信頼性のより高い半導体集積回路を選別して出荷することを可能として いる。
[0138] 従来の回路構成では、クロックの位相調整にインバータ遅延などを用いているため 、 1段階の調整で変動する位相が未知である、という問題があった。
[0139] 本発明によれば、クロック 1周期(360度)を N分割した位相力 調整 1段階あたりの 変動量になるため、テスト結果から動作マージンの位相や時間の絶対値を把握する ことを容易としている。
[0140] また、本発明は、従来の遅延調整回路で用いられている、クロック位相の調整方法
とは異なり、
クロックノ ノレスの
(1)両エッジの位相を動的に制御できる、
(2) 1サイクルで変動させられるクロック位相の調整幅が大きい、
(3)クロック位相の調整時に発生するジッタが小さい、
といった効果がある。
[0141] 本発明のクロック調整回路を半導体集積回路に内蔵することにより、出荷後にも実 機上で動作マージンの自己テストをすることが可能になり、経年劣化などによる故障 を未然に防ぐことにも有用である。
[0142] 本発明のクロック調整回路は、無限のサイクル数のクロック信号の周期を調整できる ことから、周波数シンセサイザとして用いることができる。
[0143] そして、本発明のクロック調整回路は、 PLLを用いた周波数シンセサイザに比べて 回路面積が小さく出来るほか、設計が容易であるという効果がある。さらに、制御回路 に乱数または擬似乱数を発生する回路を付加することで、クロック信号の位相をラン ダムに変動させることができ、スペクトラム拡散などの機能を実現することが可能であ
[0144] 本発明のクロック調整回路は、クロック信号のデューティゃスキューが調整できるの で、デューティゃスキューのばらつき補正回路としても用いることが出来る。
[0145] 特に、近年の半導体集積回路の微細化に伴い、半導体集積回路の特性や信号品 質のばらつきが大きくなつてきており、これらの補正回路の必要性が高くなつてきてい る。従来は、半導体集積回路の特性や信号品質のばらつきを補正するための専用 回路が搭載されていた。これに対して、本発明のクロック調整回路を用いることで、テ スト回路や周波数シンセサイザとも一体化でき、小面積化と低電力化が実現可能に なる。また、これらの回路の制御が統合化されることから、その制御が容易化するとい う利点もある。
[0146] また、本発明のクロック調整回路は、瞬時にクロック周波数やクロック位相を切り替 えることが出来るので、通信機器の周波数変調回路や位相変調回路などの変調回 路として用いることあでさる。
[0147] 従来の変調回路は、通常、アナログ回路で構成されていたので、設計が困難であり 、また、パッシブ素子の面積が大きいなどのデメリットがあった。
[0148] 本発明のクロック調整回路においては、デジタル回路で変調を行うことが可能とさ れているため、設計の容易化を実現し、さらに、様々な変調方式を 1つの回路で実現 可能であり、回路面積を縮減できる等の各種効果を奏する。以下実施例に即して説 明する。
実施例
[0149] 図 15 (a)は、本発明の一実施例のクロック調整回路の構成を示す図である。クロッ ク調整回路 150は、位相シフタ 151と、制御回路 152を備えている。位相シフタ 151 は、入力クロックと出力クロックの間の位相差を調整する回路であり、その位相差は、 制御回路 152から与えられる制御信号によって決定される。
[0150] 入力クロックと出力クロックの間の位相差は N段階 (Nは整数)で調整され、調整 1段 あたりのクロック位相の変動量は約 360/N度であり、クロックの遅延の変動量 T/N (Τίまクロック周期)である。
[0151] 位相シフタ 151は、例えば、図 4や図 5に示したような回路構成が用いられる。他の 構成であってもよレ、ことは勿論である。
[0152] 出力クロックの各エッジの位相を変動させるためには、各エッジが出力される前に、 制御回路から所望の制御信号を与えればよい。
[0153] 図 15 (b)は、図 15 (a)に示したクロック調整回路の動作を説明するためのタイミング チャートである。例えば、出力クロックに最初の立ち下りエッジが現われる前に、制御 信号 FOを与えることで、立ち下りエッジの位相を変えることができる。
[0154] 図 15 (b)の例では、この最初の立ち下りエッジの位相を進めて、クロック周期を短く している。また、次の立ち上がりエッジがくる手前で、制御信号 R1を与えることで、立 ち上がりエッジの位相を変えている。このように、各エッジが現われる少し手前のタイミ ングで制御信号を変化させることで、各クロックエッジの位相を自在に変えることが出 来るので、 1サイクル毎にクロック周期やデューティなどを調整することができる。
[0155] 図 15 (a)に示したクロック調整回路において、クロックパルスの立ち上がりエッジと 立ち下りエッジの両方の位相を可変に制御するには、制御回路 152から位相シフタ 1
51に入力される制御信号を、 1クロックサイクルの間に、 2回変化させなければならな い。
[0156] 制御信号を生成する制御回路 152は、一般に、論理回路で生成されるが、この論 理回路が出力クロック周波数の 2倍の周波数で動作しなければならない。クロック周 波数が低い場合には、図 15 (a)の構成でよいが、クロック周波数が高い場合には、 論理回路が正常に動作できなくなる。
[0157] また、位相シフタ 151は、一般に、出力クロックの位相を変えた直後はクロック信号 の電圧が安定しない。特に、 1回の位相シフトでクロック位相を大きく変える場合には 、この現象が顕著に現われる。位相シフタ 151がクロック位相を切り替える時に、位相 シフタ 151内部で持っているスィッチ回路(例えば図 10のスィッチトランジスタ 105、 1 07)を切り替える力 この切り替えに遅延が生じる。このスィッチを切り替える前の位 相から、所望の位相に完全に切り替わるまでの遷移期間中に、クロック信号の電圧が 若干安定になるタイミングがある。このクロック信号の電圧が安定しない状態は、一般 に数十 psから数百 psで収束する。しかし、クロック信号の電圧が安定しない状態で次 のクロックエッジが現われてしまうと、クロックエッジのタイミングが不安定になり、ジッタ が発生してしまう。
[0158] そのため、クロック位相の切り替えを行うタイミング(制御信号を変化させるタイミング )は、次の出力クロックのエッジのタイミングに対して、十分に余裕を持っていなけれ ばならない。低周波数のクロック信号ではこのことは問題にならないが、高周波のクロ ック信号の位相を調整する場合には、制御信号を変化させるタイミングの制御が非常 に難しくなる力、、あるいは出力クロックにジッタが発生してしまうという問題がある。
[0159] 図 16は、これらの問題を改善した本発明の一実施例に係るクロック調整回路の別 の構成例を示す図である。図 16を参照すると、このクロック調整回路は、 2つの位相 シフタ 161、 162の出力を、セレクタ 163で交互に選択して出力する。 2つの位相シフ タ 161、 162は、クロックを共通に入力し、出力が、セレクタ 163に入力され、セレクタ 163では、選択制御信号 SELの値に応じて一方を選択出力し、 2つの位相シフタ 16 1、 162には、制御回路 164から位相シフト量を制御する制御信号 A、 Bが供給される 。例えば、位相シフタ 1が立ち上がりエッジを出力する前後のタイミングでは、セレクタ
163が位相シフタ 1の出力(A)を選択して出力し、位相シフタ 2が立ち下がりエッジを 出力する前後のタイミングでは、セレクタ 163が位相シフタ 2の出力(B)を選択して出 力する。
[0160] 図 17は、図 16のクロック調整回路の動作を説明するためのタイミングチャートであり
、位相シフタ 161、 162の出力 A、 B、出力クロック、 SEL、制御信号 A、制御信号 Bの タイミング波形が示されている。出力クロックは、セレクタの制御信号 SELの値に基づ いて、位相シフタ 1の出力(A)と位相シフタ 2の出力(B)を交互に選択して出力する。
[0161] 位相シフタ 1には、出力(A)が所望のタイミングで立ち上がりエッジを出力するよう に、制御信号 Aが与えられる。
[0162] 同様に、位相シフタ 2には、出力(B)が所望のタイミングで立ち上がりエッジを出力 するように、制御信号 Bが与えられる。
[0163] 位相シフタ 1の出力(A)の立ち下がりエッジの位相と、位相シフタ 2の出力(B)の立 ち上がりエッジの位相はどのような位相であっても構わない。
[0164] 図 16の回路構成においては、制御信号を変化させる周期力 出力クロックの周期 と同じである。つまり、制御回路 164は、出力クロックの周波数で動作すればよい。
[0165] また、制御信号 Aを変化させるタイミングは、位相シフタ 1の出力(A)の立ち上がり エッジと次の立ち上がりエッジの間であればよい。
[0166] 同様に、制御信号 Bを変化させるタイミングは、位相シフタ 2の出力(B)の立ち下が りエッジと次の立ち下がりエッジの間であればよい。
[0167] 図 15 (a)の構成の場合、制御回路 152は出力クロックの 2倍の周波数で動作しなけ ればならな力、つたのに比べて、図 16の構成の場合、制御回路 164の動作周波数が 低くてすむ。
[0168] また、制御信号を変化させることができるタイミングも、図 15の構成よりも、図 16の構 成の方が広くとれるので、制御信号のタイミング設計が容易であるという利点がある。 さらに、図 16の構成において、位相シフタ 161、 162が出力クロックの位相を切り替 えるタイミングでは、位相シフタの出力がセレクタ 163で遮断されて外部に出力されな い。これにより、位相シフトの際に発生するクロック信号の電圧が不安定な状態力 外 部に出力されるクロック信号に伝播されることは抑止され、出力クロックの波形が綺麗
に保たれ、ジッタを小さくすること力 Sできる。
[0169] 図 16において、セレクタの選択制御信号端子 SELの信号は、出力クロックと同じ周 波数で、位相が出力クロックよりも遅れているか進んでいるものを用いてもよい。この 場合、 SEL信号の位相は、出力クロックに対して 90度遅れている力、、 90度進んでい るものが望ましい。
[0170] 図 18は、本発明の実施例において、出力クロックから、セレクタ 183の選択制御信 号 SELを生成する場合の回路構成を示している。セレクタ 183の選択制御信号 SEL は、出力クロックを遅延素子 185で遅延させた信号が用いられる。この回路で、出力 クロックと SEL端子の間の遅延は、クロック周期の 1/4程度が好ましい。
[0171] 図 19は、多相クロック出力を有する本発明の実施例のクロック調整回路の構成の 一例を示す図である。図 19を参照すると、このクロック調整回路は、図 18の 1対の位 相シフタとセレクタの組を、 2組備え、制御回路は 4つの位相シフタに制御信号 A、 B 、 C、 Dを与える。この回路では、出力クロック 1と出力クロック 2力 S異なった位相のクロ ック信号を出力する。例えば、 4相クロックが必要な回路などで、出力クロック 1に対し て 90度遅れた出力クロック 2が必要な場合などに有用である。
[0172] 図 19のクロック調整回路において、 4相クロックを発生させる場合、例えば位相シフ タ 1 (191)は立ち上がりエッジ、位相シフタ 2 (192)は立ち下がりエッジ、位相シフタ 3 (193)は立ち上がりエッジ、位相シフタ 4 (194)は立ち下がりエッジのタイミングを調 整する。
[0173] ここで、位相シフタ 3 (193)が生成する立ち上がりエッジのタイミングは、位相シフタ
1 (191)の出力(A)の立ち上がりエッジと位相シフタ 2 (192)の出力(B)の立ち下が りエッジの中間のタイミングを生成する。
[0174] 同様に、位相シフタ 4 (194)が生成する立ち下がりエッジのタイミングは、位相シフ タ 2 (192)の出力(B)の立ち下がりエッジと位相シフタ 1 (191)の出力(A)の立ち上 力 Sりエッジの中間のタイミングを生成する。
[0175] 2入力セレクタ 1 (195)は、選択制御信号端子 SEL1の入力値によって、 Aの立ち 上がりエッジと Bの立ち下がりエッジを選択して、出力クロック 1に出力する。
[0176] 同様に、 2入力セレクタ 2は、選択制御信号端子 SEL2の入力値によって、 Cの立ち
上がりエッジと Dの立ち下がりエッジを選択して、出力クロック 2に出力する。
[0177] ここで、選択制御信号端子 SEL1に与えられる信号は出力クロック 1から 90程度位 相が進んでいるか遅れている波形が好ましい。同様に、選択制御信号端子 SEL2に 与えられる信号は出力クロック 2から 90程度位相が進んでいるか遅れている波形が 好ましい。
[0178] 出力クロック 1と出力クロック 2の位相が互いに 90度ずれている場合には、図 20に 示すように、出力クロック 1を、セレクタ 2 (206)の選択制御信号 SEL2とし、出力クロ ック 2を、セレクタ 1 (205)の選択制御信号 SEL1に接続してもよい。図 21は、図 20の 回路の動作波形を示したものである。
[0179] 図 22は、本発明の一実施例のクロック調整回路の構成の一例を示す図である。位 相シフタ 221は、 N入力の中の 1つを選択するセレクタ 223、 224と、セレクタ 223、 2 24の出力を受ける位相補完回路 225と、制御回路 227からの制御信号を受け、セレ クタ 223、 224の選択と、位相補完回路 225の位相補完量を制御する信号を生成す る論理回路 226を備えている。クロック入力端子から多相クロック信号を入力し、それ らの中から所望のクロック位相に近い位相の 2つのクロック信号をセレクタ 223、 224 で選択する。セレクタ 223、 224で選択された 2つの位相のクロック信号が位相補完 回路 225に入力され、位相補完回路 225は、 2つの位相の間の任意の位相を補完し て生成し、クロック出力端子に出力する。これにより、任意の位相のクロック信号を取り 出すこと力 Sできる。
[0180] ここで、クロック入力端子に入力される多相クロック信号は、図 23の(a)乃至(h)に 示すように、各のクロック入力の位相差が等間隔のものである。多相クロック生成回路 は、図 6乃至図 9、位相補完回路は、図 10または図 12に示した構造のものを用いて あよい。
[0181] 図 24は、本実施例のクロック調整回路の制御回路 (位相シフタのシフト量を可変制 御する制御回路)の構成の一例を示す図である。図 24を参照すると、この制御回路 2 40は、加算器 241と、レジスタ 242とを備え、加算器 241は、クロック周期制御コード △ Periodと、レジスタ 242の出力を加算した結果を制御信号として出力する。クロック 周期を調整するためには、位相シフタ 243の制御信号を、現在の位相から進めるか
又は遅らせればよい。例えば、毎クロックサイクルで、位相シフタ 243の制御信号の 値を Nずつ加算すると、位相シフタ 243が出力するクロック信号の位相は毎クロック Δ
Θずれる。結果としてクロック周期が ΔΤ変動する。
[0182] 図 24の制御回路 240のように、位相シフタ 243に与える制御信号を、毎クロック Δ Ρ eriodずつ加算する制御回路 240を用いることで、位相シフタが出力するクロック周 期を変えることができる。
[0183] また、この Δ Periodを毎クロック変えることで、位相シフタ 243から出力されるクロッ ク信号にジッタを発生させること力 Sできる。
[0184] 図 13に示したような遅延調整回路では、入力クロックの周期に対して、位相シフタ 1
31の分解能 1ステップ分の時間を加算または減算した周期のクロックしか出力できな かった。
[0185] 図 24に示した構成の制御回路 240を用いると、位相シフタ 243の任意ステップ数 だけ位相をシフトできるので、位相シフタが出力できるクロック周期の範囲が広がる。
[0186] また、図 13の回路では、参照クロックの周期や位相を調整しなければ、連続する N サイクルの出力クロックの周期を調整することが出来なかった力 図 24の回路では、 参照クロックを用いずに、クロック周期を調整することが可能である。
[0187] 図 25は、本実施例におけるクロック調整回路の制御回路の構成の別の例を示す図 である。この制御回路 250は、図 16に示した位相シフタを 2つ用いセレクタで選択す る構成のクロック調整回路の制御回路に用いられる。制御回路 250、位相シフタ 256 、 257、セレクタ 258は、図 16の制御回路 164、位相シフタ皿、 162、セレクタ 163 に対応する。図 25において、制御回路 250から位相シフタ 1 (256)に入力される制 御信号 Aの生成の仕方は、図 24の制御回路 240から位相シフタ 243に入力される 制御信号の生成の仕方と同じである。
[0188] 図 16に示したクロック調整回路では、例えば位相シフタ 1 (161)が立ち上がりエツ ジの位相を制御するものだとすると、位相シフタ 2 (162)は立ち下がりエッジの位相を 制御するために用いられる。立ち上がりエッジ同士の間隔が、 Δ Period変動した場 合に、立ち下がりエッジの位置を 2つの立ち上がりエッジの中間に調整するためには 、立ち下がりエッジを、 Δ Period/2変動させればよい。
[0189] そこで、図 25に示すように、位相シフタ 2 (257)の制御信号 Bは、現在の位相から、 Δ Period/2だけ変動するように構成されている。制御信号 Bは、クロック周期制御コ ードを、 A Periodの 1/2倍、したがって、 Δ Periodコードを 1ビットシフト(右シフト) する回路 253と、回路 253の出力とレジスタ 252の出力を加算した結果を制御信号 B として出力する加算器 254を備えている。制御回路 250を用いることで、クロック信号 のデューティ比を、 1 : 1に保ったまま、クロック周期を調整することができる。
[0190] 図 25に示した構成の制御回路を、図 16に示した本発明のクロック調整回路で用い る場合、制御信号 Aが変化するタイミングと、制御信号 Bが変化するタイミングは、図 1 7に示したように、互いにクロック周期の半分程度ずれて!/、ることが好まし!/、。
[0191] 図 26は、図 19で示した位相シフタを 4つ用いる本発明の 4相クロック調整回路の制 御回路の構成の一例を示す図である。図 26を参照すると、位相シフタ 1 (266 )に入 力される制御信号 Aと、位相シフタ 2 (266 )に入力される制御信号 Bの生成の仕方
2
は、図 25のものと同じである。図 19に示したクロック調整回路において、位相シフタ 3 は、位相シフタ 1が出力する立ち上がりエッジと位相シフタ 2が出力する立ち下がりェ ッジの中間のタイミングで、立ち上がりエッジを出力する。
[0192] クロック周期力 S元のクロック周期に対して、 Δ Period変動している場合、図 25の例 で示したように位相シフタ 2が出力するクロックエッジは、 Δ Period/2変動する。
[0193] 図 26において、位相シフタ 3 (266 )が出力するクロック位相は、位相シフタ 1 (266
3
)と位相シフタ 2 (266 )が出力する位相の中間点であることから、クロックエッジの変
1 2
動量は、 Δ Period/4になる。従って、位相シフタ 3 (266 )に入力される制御信号 C
3
は、現在の位相(レジスタ 262の出力)に、 Δ Period/4を加算した値を出力すれば よい。 Δ Period/4は、例えば Δ Periodコードを 2ビットシフト(右シフト)することで得 られる。
[0194] 同様にして、位相シフタ 3 (266 )が出力する位相は、位相シフタ 2 (266 )が出力
3 2 する位相( Δ Period/2変動)と、位相シフタ 1 (266 )が次に出力する位相( Δ Perio d変動)の中間点であることから、その変動量は、 3 X ( A Period/4)である。
[0195] ただし、この位相は、位相シフタ 3 (266 )が出力するクロック位相に、 A Period/2
3
を加えたものと等しいので、図 26のように、位相シフタ 3 (266 )に与えられる制御信
号 Cに、クロック周期制御信号 Δ Periodの 1/2を加算した値を制御信号 Dとして用 いること力 Sできる。この様子を、波形図として、図 27に示す。図 27において、(a)は元 の周期のクロック、(b)は元の周期のクロックの 90度遅れのクロック、(c)は図 26の出 カクロック 1、(d)は図 26の出力クロック 2のタイミング波形である。図 26のような制御 回路 260を用いることで、 4つのクロックエッジ(出力クロック 1の立ち上がりエッジと立 ち下がりエッジ、出力クロック 2の立ち上がりエッジと立ち下がりエッジ)の間隔を等しく 保ったまま、クロック周期を調整することができる。
[0196] 図 28は、図 26に示した本発明の制御回路に、クロック位相、デューティゃスキュー 遅延を制御する機能を備えた構成を示す図である。加算器 283の出力と位相シフタ 285の入力の間に、クロック位相、デューティゃスキュー遅延を制御するための制御 コードを加算する Nビット加算器 284を備えている。
[0197] 図 25、図 26で示した制御回路では、出力クロックのデューティ比を 1: 1程度に保つ たままクロック周期を変えている。ここで、出力クロックのデューティ比なども調整した い場合には、別途そのための回路が必要になる。
[0198] 図 28に示す構成によれば、図 26に示した制御回路で生成された制御信号 A〜制 御信号 Dに、さらに、個別に制御コードを加算することで、 4つのクロックエッジのタイ ミングを個別に調整することができる。これにより、出力クロックのデューティや遅延な どを調整すること力 Sできる。
[0199] 本実施例のクロック調整回路の制御回路は、ユーザーによって予めプログラムされ た制御信号を出力するように構成することも可能である。
[0200] 図 29 (a)は、本発明の別の実施例の制御回路の構成を示す図であり、メモリを用い た制御回路の構成の一例を示す図である。ユーザが予めメモリ 293に位相シフタ 29 1の制御信号のパターンを書き込んでおき、そのデータを順次位相シフタ 291に送る ことで、任意のパターンのクロック信号を発生させる。カウンタ 295のカウント値をアド レスデコーダ 294でデコードしたアドレスがメモリ 293に供給される。
[0201] 図 29 (b)は、シフトレジスタ 296を用いた制御回路の構成の一例を示す図である。
ユーザーが予めシフトレジスタ 296に位相シフタ 291の制御信号のパターンを書き込 んでおき、そのデータをシフトしながら順次位相シフタ 291に送ることで、任意のパタ
ーンのクロック信号を発生させる。
[0202] 図 30は、本発明の別の実施例の制御回路の構成を示す図であり、乱数発生回路 3 03を用いた例である。乱数を位相シフタ 301の制御信号として用いることで、ランダ ムジッタを発生させること力 Sできる。これは、スペクトラム拡散などを実現する場合に必 要となる構成である。また、擬似的にランダムジッタを大きくすることで、半導体周期 回路のランダムジッタに対する動作マージンテストなどを行うことも可能になる。
[0203] 本実施例のクロック調整回路を用いて、クロック周期の調整を行った場合、図 31に 示すように、位相シフタに与える制御信号も出力クロックと同期して与えられなければ ならない。
[0204] 例えば、クロック周期を 10%短くした場合には、位相シフタの制御信号の周期も 10
%短くしなければならない。そのため、制御回路は位相シフタの出力クロックによって 駆動されることが望ましい。
[0205] 図 32、図 33、図 34はそれぞれ、図 15、図 16、図 19に示した回路における、制御 回路のクロック入力端子の接続例を示して!/、る。
[0206] 図 32においては、制御回路 322のクロック入力端子には、位相シフタ 321の出カク ロック信号が入力される。
[0207] 図 33においては、制御回路 334のクロック入力端子には、セレクタ 333の出力クロ ック信号が入力される。
[0208] 図 34においては、制御回路 347のクロック入力端子には、セレクタ 345、 346の出 カクロック信号がそれぞれ入力される。
[0209] 図 35は、本実施例のクロック調整回路 350の制御回路 352に、位相比較器 353を 接続した例である。クロック調整回路 350の出力クロックの位相を調整する場合には 、参照クロックや、他の回路のクロックなど、基準になるクロックとの相対的な位相関係 を把握する必要がある。
[0210] 位相比較器 353は、 2つの入力クロックのうち、どちらのクロックの位相が進んでいる 力、あるいは遅れて!/、るかと!/、つた情報を出力することができる。
[0211] 図 35に示した回路構成を用いることで、位相シフタの制御信号の値をどの程度に 設定したときに、クロック調整回路 350の出力クロック信号の位相力 S、参照クロックや
他の回路のクロックの位相と合うの力、を把握することができる。
[0212] 制御回路 352がクロックの位相を調整する場合に、この位相比較器 353から出力さ れる情報を用いることで、より精度の高い位相の合わせこみが可能になる。
[0213] 本実施例において、クロック調整回路 350は、半導体集積回路内部のクロック信号 の位相を、他のクロックの位相と比較しながら任意の位相に設定できる。
[0214] しかし、図 36 (a)に示すようなクロック系の場合、半導体集積回路内部(B点)のクロ ック信号の位相は、外部 (A点)からのクロック信号の位相と合うように PLL361によつ てフィードバック制御される。そのため、 B点のクロックの位相を任意に設定することが できない。
[0215] そこで、図 36 (b)に示すような、クロック系を構成することで、半導体集積回路内部 のクロック位相を任意に制御できるようになる。
[0216] 図 36 (b)の構成では、 PLL361は A点と C点のクロック信号の位相を合わせようとフ イードバック制御を行うが、 B点のクロック信号の位相は任意である。 A点と B点のクロ ック信号の相対的な位相差を調整したレ、場合には、クロック調整回路でクロックの位 相を調整しながら、位相比較器 366の出力を観測すればよい。
[0217] 以上で説明した機能を有する回路を、半導体集積回路の内部に搭載することで、 図 37に示すように、任意の Nサイクルのクロック周期等を縮める力、、あるいは伸ばす こと力 Sでさる。
[0218] 例えば、図 24乃至図 26に示した制御回路で、出力クロックの Nサイクルの間、適切 な制御コード Δ Periodを与えることで、クロック周期を所望の値だけ縮めた図 37のよ うなクロック信号を得ることができる。図 37 (a)、(b)は、クロック調整回路の入力(PLL の入力)とクロック調整回路の出力クロックである。
[0219] 図 24乃至図 26に示した制御回路で、 Δ Periodにゼロ以外の値を与えることで、制 御信号の値は徐々に増加または減少する。これによつて、位相シフタが出力する位 相の進み量または遅れ量が徐々に増加または減少する。
[0220] これは、図 37 (b)の波形において、出力クロックと入力クロックの位相差が Nサイク ルの間、徐々に大きくなつているのと対応する。 Nサイクルの後、 A Periodをゼロに 戻せば、出力クロックの周期は入力クロックの周期と同じになる。
[0221] 半導体集積回路のテストにおいて、図 38に示すフローチャートのように、クロック周 期を伸縮させて、任意の Nクロックサイクルのテストパターンを実行することで、回路 が正常に動作できる限界のクロック周期を探ることができる。 Nサイクル中のクロック周 期を調整し、動作をチェック (PASS/FAIL判定)する。
[0222] 例えば論理回路が規定の動作周波数よりもどれだけ高い周波数で動作できるかと いった、マージンを調べることができる。
[0223] LSIテスタを用いたテストでは、外部から供給する参照クロックの周波数を変えること で同様のテストを行うことが出来るが、プリント基板上に実装した半導体集積回路でこ のようなテストを行うことが望まれるので、本発明のテストは有用である。
[0224] また、特許文献 1等に開示された従来のクロック調整回路では、連続してクロック周 期を伸縮させられるクロックサイクル数に制限があり、テストの網羅性を高めることがで きなかった力 これと比べても、本発明のクロック変調回路は有用である。
[0225] また、本発明のクロック変調回路を用いることで、図 39に示すようなジッタを発生す ることも可倉である。
[0226] 例えば、あるクロックの周期を縮めて、次のクロックは周期を伸ばすといったことを繰 り返すと、クロックエッジのタイミングは元の位相から大きく外れないので、他のクロック ドメインの回路や外部の回路との同期を保ったままで、クロック周期に対する動作マ 一ジンを調べることができる。
[0227] 図 40は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、クロックのジッタを増減させながら動作限界をテストするフ ローチャートである。このテストは例えば、テスト中も外部回路との同期を保ったままで
、論理回路がどの程度高い周波数のクロックで動作できるのかといった、マージンを 調べること力 Sできる。また、入出力回路などでは、どの程度のジッタがあっても正しく 通信を行うことが可能かといつたジッタトレランスのテストにも用いることができる。
[0228] さらに、このクロック変調回路を用いて、ジッタの周波数も変えることができる。ジッタ とは、実際のクロックエッジのタイミング力 本来のクロックエッジのタイミング近辺を行 き来することを言う力 図 41に示すような周期的なジッタは、クロックエッジのタイミン グ変動に特定の周波数を持っている。
[0229] 一部の入出力回路などは、タイミング変動に追従する機能を有しているが、一般に は高速に変動するジッタには追従できず、低速で変動するジッタには追従しやすい。
[0230] このような、ジッタ周波数によって特性が変わるような回路のテストをする場合には、 ジッタの周波数を変えながらテストをすることが重要である。
[0231] 図 42は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、ジッタの周波数を変えながらテストを行う場合のフローチヤ ートである。このテストにより、回路がどの程度の周波数のジッタに追従できるかが観 測できる。
[0232] 図 43は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、ジッタ振幅とジッタ周波数を、 2次元的にスイープして、回 路の動作テストを行う場合のフローチャートである。ループ 1開始とループ 1終了の外 側のループでは、ジッタ周波数を掃引し、ループ 2開始とループ 2終了の内側のルー プでは、与えられたジッタ周波数のもとでジッタ振幅を掃引する。
[0233] 一般に、入出力回路などでは、ジッタ周波数が低い方が大きい振幅のジッタに耐え られ、ジッタ周波数が高くなると振幅の小さいジッタにしか耐えられなくなる。
[0234] 図 43に示したテストでは、ジッタ周波数と許容ジッタ振幅の関係を得ることができる
[0235] これは、特に、シリアル通信回路などで重要なテストである力 従来の LSIテスタや BIST (Built In Self Test)回路ではテストできなかったものである。
[0236] 図 44は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、クロック信号のデューティ比を変えながら、回路が正しく動 作する限界を探索するテストのフローチャート(図 44 (a) )と、評価結果の概略(図 44 (b) )を示して!/、る。図 44 (c一;!)〜(c 5)は、ステップ S43でデューティ比を変えた 場合の出力クロックの波形を例示した図である。
[0237] 一般には、デューティ比が 1: 1の場合に、最もエラーを起こしに《、デューティ比に 極端な差がつくと、回路は正常に動作しなくなる。
[0238] このテストでは、クロック信号のデューティ歪に対する回路の動作マージンをテスト すること力 Sでさる。
[0239] 従来の LSIテスタを用いたテストでは、半導体集積回路内部のクロック信号の調整 が不可能なので、このようなテストができないが、本発明の半導体集積回路とそのテ スト方法はこれを実現できる。
[0240] 図 45は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、クロック周波数とデューティ比の 2つのパラメータを 2次元 的にスイープさせながら、回路の動作テストを行う場合のフローチャート(図 45 (a) )と 、そのテスト結果の例(SHMOOプロット)(図 45 (b) )である。
[0241] 一般に、クロックのデューティ比が適切で無い場合には、回路が動作することが出 来る限界周波数が下がる傾向にある。デューティが規定の範囲内で崩れても、規定 の動作周波数で十分に動作可能かどうかのテストを行うには、このようなテストが適し ている。また、動作限界周波数が最も高くなるデューティの設定を探索して設定する ことで、半導体集積回路の動作マージンを改善することもできる。
[0242] 図 46は、異なるクロックドメイン間で、クロックのスキューを調整した場合のクロック波 形の例を示している。テスト対象のクロッドメインのクロックは、チップ外部から、制御 信号に基づき、基準に対して遅らせるか、進ませる。
[0243] 一般に、異なるクロックドメインの間では、クロックの位相がずれている場合が多い。
図 47は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手順 の一例を示す図であり、クロック位相のずれ (スキュー)に対する耐性をテストする場 合のフローチャートである。
[0244] 一般には、クロック位相が中心付近にある場合には、他のクロックドメインと正常に 通信を行うことができる力 クロック位相が進みすぎる力、、遅れすぎるとエラーを起こす 。近時の半導体集積回路は、複数のクロックドメインを持っている場合が多いが、クロ ック周波数の高速化などに伴い、タイミングマージンが減少し、異なるクロックドメイン 間の通信などでタイミングエラーを起こす場合がある。
[0245] LSIテスタを用いたテストでは、 LSI内部のクロック位相を調整することはできないの で、このようなスキューに対する動作マージンをテストすることができない。
[0246] 本発明のクロック調整回路を備えた半導体集積回路とそのテスト方法はこれを可能 にするものである。
[0247] 図 48は、上記した実施例のクロック調整回路を備えた半導体集積回路のテスト手 順の一例を示す図であり、クロック信号のデューティ比とスキューの 2つのパラメータ を 2次元でスイープするテストのフローチャート(図 48 (a) )と、テスト結果(図 48 (b) ) の例を示している。
[0248] 一般に、デューティ比が適切な値に設定されていれば、クロックスキューに対する動 作マージンは大きくなり、同様にクロックスキューが適切な値に設定されていれば、デ ユーティ歪に対する動作マージンは大きくなる。このことを応用すると、動作マージン が最大になるデューティ比や、スキューの設定 を探索することが可能である。
[0249] 上記した半導体集積回路のマージンテストは、半導体集積回路の出荷前の選別テ ストの時に行うことで、不良品や故障しやすい製品の混入を防ぐ効果がある。
[0250] また、半導体集積回路は、初期不良以外にも、使用に伴うストレスによる劣化や、経 年劣化などによる故障が起こり得る。このような故障を防ぐためには、製品上に実装さ れた半導体集積回路自身が、定期的にマージンテストを行うことが望ましい。
[0251] 本発明のクロック調整回路を備えた半導体集積回路は、半導体集積回路内部にマ 一ジンをテストするための機能を内蔵しているため、このような自己テストにも適して いる。
[0252] 図 49は、本発明の半導体集積回路が自己テストを行う場合の手順の一例を示すフ ローチャートである。半導体集積回路は、ある条件で自己テストを行う(ステップ S81 の YES分岐)。特に制限されないが、この条件としては、例えば、
•使用時間が一定の時間に達した場合、
•出荷されてからの時間が一定に達した場合、
•温度や電圧などの使用条件に変化が検出された場合、
•装置の起動時、
•ユーザーがテストを行うように所定の操作した場合、あるいは、
•ランダムな条件等の!/、ずれであってもよ!/、。
[0253] テストを行う場合には、上記実施例のクロック調整回路を用いて前述したマージン テストを行う(ステップ S82)。
[0254] テストを行わない場合には(ステップ S81の NO分岐)、通常の動作を行う(ステップ
S84)。
[0255] マージンテストの結果、不良や故障、あるいはマージンの減少などが検出された場 合には、警告を発生する(ステップ S85)。この警告とは、例えば、
•ハードウェアに対する割り込み処理の要求であったり、
'オペレーティングシステムやアプリケーションソフトウェアに対するものであったり、 あるいは、
•ユーザーに対する警告メッセージや音声での通知
等であってもよい。
[0256] マージンテストの結果が、直ちにシステムを停止させなければならないものであれ ば(ステップ S86の YES分岐)、システムを停止させるための操作を行い(ステップ S8 7)、プログラムは終了する。
[0257] もし、このマージンテストの結果が正常であった場合や、緊急性を要するものでなけ れば (ステップ S86の NO分岐)、通常の動作を行う(ステップ S84)。
[0258] クロック調整回路は、半導体集積回路が搭載している BIST (Built— In Self— Te st)回路と連携することで、 BISTが行う自己テストの網羅度を高めることができる。例 えば、クロック調整回路で実動作条件よりも厳しい条件のクロック信号を生成しながら 、 BISTを行うことで、回路が正しく機能するかだけでなぐ動作マージンが十分に確 保できて!/、る力、をテストすること力 Sできる。
[0259] このような機能を実現するために、図 50に示すように、クロック調整回路 501の制御 端子が、 BIST回路 502に接続され、 BIST回路 502によってテスト時のクロック信号 が調整される構造が考えられる。
[0260] 次に本発明のさらに別の実施例を説明する。本発明のクロック調整回路と、半導体 集積回路内部の信号波形を観測するために搭載されるオンチップ波形観測回路を 同時に用いることで、マージンテストの精度をより高めることが可能になる。
[0261] 動作している半導体集積回路内部では、電源電圧が変動しており、この電源変動 によって回路の動作マージンが変動している。例えば、電源電圧が下がった時には 回路の遅延が大きくなつて動作マージンが縮小し、逆に電源電圧が上がった時には 回路の遅延が小さくなつて動作マージンが増大するような場合が考えられる。
[0262] 本発明のクロック調整回路を用いて半導体集積回路のマージンテストを行う場合、 テスト対象回路に与えるクロック信号を、前述の動作マージンの変動に同期させなが ら変動させることが望ましい。例えば、動作マージンが減少した時に、より厳しい条件 のクロック信号を与え、逆に、動作マージンが増大した時には、クロック信号の条件を 緩和することで、最悪条件での動作マージンを調べることが可能になる。
[0263] また、動作マージンが増大した時により厳し!/、条件のクロック信号を与え、逆に動作 マージンが減少した時にはクロック信号の条件を緩和することで、動作マージン変動 の影響を相殺することも可能である。
[0264] 図 51は、本発明のクロック調整回路を用いた一実施例の構成を示す図であり、電 源変動の影響を確認しながら、動作マージンテストを行うための回路構成を示す図で ある。
[0265] 図 51を参照すると、本実施例においては、半導体集積回路 510内部に、オンチッ プ波形観測回路 513と、前記実施例で説明した本発明のクロック調整回路 511と、ク ロック調整回路 511からクロック信号の供給を受け動作する、テスト対象の回路(「テ スト対象回路」という) 512と、クロック調整回路 511を制御する制御回路 514と、を有 する。オンチップ波形観測回路 513は、電源線 515の電圧波形を観測するための回 路である。特に制限されないが、図 51では、テスト対象回路 512の電源端子(テスト 対象回路 512の直近の電源線)の電源波形をモニタしている。オンチップ波形観測 回路 513は、不図示の A/D変換器により電源波形をサンプリングしており、電圧波 形(電源ノイズ)を、所定の時間精度、振幅精度でサンプリングできるものでありさえば よぐ A/D変換器のサンプリング周波数 (変換速度)、分解能は任意とされる。また、 オンンチップ波形観測回路 513のサンプリングの手法も、過渡波形等を直接デジタイ ズするものでもよいし、あるいは、低周波で高速の瞬時信号電圧値を複数点取得し 波形を再生するサンプリング 'オシロスコープの原理を使ってもよい。
[0266] 本実施例では、前述したように、電源変動の具合を、オンチップ波形観測回路 513 によって観測し、その観測によって得られた情報を基に、制御回路 514がクロック周 波数などの適切な値を算出して、クロック調整回路 511を制御する。クロック調整回 路 511からのクロック信号はテスト対象回路 512に供給される。
[0267] 例えば出荷後、半導体集積回路 510を基板等に実装した状態でテスト (動作マー ジンテスト)を行う場合 (診断テスト、あるいは故障解析等)、テスト対象回路 512に供 給されるクロック信号以外の、データ、制御信号等は、半導体集積回路 510内部の 他の回路ブロックから、あるいは BITS回路、あるいは、外部のパターンデータ生成器 等力、ら供給するようにしてもよい。半導体集積回路 510をテスタ等によりテストする場 合においては、テスト対象回路 512に供給されるクロック信号以外の、データ、制御 信号等は、テスタ等から供給するようにしてもよい。なお、図示されないテストモード信 号により、オンチップ波形観測回路 513の活性化、非活性化を制御し、ノーマル動作 時に、オンチップ波形観測回路 513をインアクティブ状態とし、制御回路 514によるク ロック調整を止め、消費電力の低減を図るようにしてもよい。以下の実施例において も同様とされる。
[0268] 図 52は、図 51の回路を用いて、動作マージンテストを行う場合の制御の一例を示 す波形図である。半導体集積回路の品質を保証するためには、動作マージンが減少 した時でも誤動作を起こさな!/、程度の動作マージンを残しておかなければならな!/、。
[0269] この動作マージンを確認するために、図 52 (a)の例では、動作マージンが減少した 時に、より厳しい条件のクロック信号を入力する。例えば、オンチップ波形観測回路 5 13によって観測される電源電圧が低くなつた時 (例えば回路の動作仕様値と比較し て低いと判定された場合)に、オンチップ波形観測回路 513の観測結果を受ける制 御回路 514により、制御信号をクロック調整回路 511に供給し、より高い周波数のクロ ック信号を、テスト対象回路 512に入力する。
[0270] このような条件で動作マージンテストを行うことにより、電源変動によって動作マージ ンが減少した状態でも、安全なマージンが残っているかを、確認することが可能にな
[0271] また、図 52 (b)の例では、動作マージンが減少した時に、クロック信号の周波数を 下げるなどして動作条件を緩和し、動作マージン変動の影響を相殺する。例えば、 電源電圧が低くなつた時に、テスト対象回路 512の遅延 Dが増大して、 D+ ΔΤにな る。このとき、クロック周期 Tを T+ ΔΤに増大させる(つまりクロック周波数を低下させ る)。動作マージンがクロック周期とテスト対象回路 512の遅延の差で定義される場合
、電源電圧の変動に関わらず、動作マージンは、
T+ ΔΤ- (D+ ΔΤ) =T-D
と、一定に保つことが可能になる。
[0272] このように、動作マージンの変動に合わせて、クロック信号の周波数などを変動させ ることで、電源変動などの影響を受けずに、テスト対象回路 512の本来の動作マージ ンを測定することが可能になる。
[0273] なお、図 52 (a)の動作マージンテストにおいて、電源電圧が高くなつた時に、動作 周波数を高くしても良い。同様に、図 52 (b)の動作マージンテストでは、電源電圧が 高くなつた時に動作周波数を低くしても良い。こうすることで、クロック周波数が一定の 場合のクロック信号と同期を保つことが可能になる。
[0274] 図 53の例では、電源変動に同期させて周波数を変動させた場合のクロック波形 (テ ストクロック)と、そうでない場合のクロック信号の波形(元のクロック)を示している。ど ちらの場合でも、平均クロック周波数は同じになる。
[0275] 図 51に示した実施例の構成では、半導体集積回路 510内部の電源電圧をオンチ ップ波形観測回路 513で測定して電源電圧の変動に同期してクロック周波数などを 調整する例を示したが、半導体集積回路の動作マージンの変動は、接地電圧の変 動の影響も受けるので、変動の測定対象は、接地電圧であってもよい。図 54は、接 地電圧の変動を観測して、その変動に合わせてクロック信号の周波数など調整する 構成例を示す図である。オンチップ波形観測回路 513は接地電位を観測し、その観 測によって得られた情報を基に、制御回路 514がクロック周波数などの適切な値を算 出して、クロック調整回路 511を制御する。クロック調整回路 511からのクロック信号 はテスト対象回路 512に供給される。
[0276] 図 55は、図 54の回路構成を用いて動作マージンテストを行う場合の制御の例を示 している。接地電圧が高くなると回路の遅延が大きくなり、動作マージンが減少するこ とが考えられる。図 55 (a)の例では、接地電圧が高くなつた時に、より高い周波数の クロックを与え、より厳しい条件を与えることで、最悪条件の動作マージンを測定する こと力 Sできる。一方、図 55 (b)の例では、接地電圧が高くなつた時に、より低い周波数 のクロックを与えることで、動作マージンの変動を相殺して、非テスト回路の本来の動
作マージンを電源変動の影響を受けずに測定する。
[0277] 図 56は、本発明のさらに別の実施例の構成を示す図である。図 56を参照すると、 本実施例は、動作中のテスト対象回路 562からの出力信号を、オンチップ波形観測 回路 563が観測して動作マージンの変動を観測し、その観測によって得られた情報 を基に、制御回路 564がクロク周波数などの適切な値を算出して、クロック調整回路 561を制御する。オンチップ波形観測回路 563が観測する信号は、テスト対象回路 5 62の動作マージンを反映するものであれば、テスト対象回路 562の出力(O)、入力( 1)、入出力(I/O)の任意の信号が用いられ、またテスト対象回路 562の内部信号を オンチップ波形観測回路 563にまで引き出すなりして観測するようにしてもよい。
[0278] 例えば、
•テスト対象回路 562をなす論理回路の遅延や、
•テスト対象回路 562をなすメモリ回路のビット線電圧やワード線電圧、
•テスト対象回路 562をなす入出力(I/O)回路の信号波形、
等を、オンチップ波形観測回路 563で観測することによって、それらの回路の動作 マージンが減少している力、、あるいは、増大しているかを把握することが可能である。 メモリ回路のビット線電圧やワード線電圧等は、テスト対象回路 562の内部信号に対 応する。
[0279] 制御回路 564は、オンチップ波形観測回路 563で観測された動作マージンに関す る情報を基に、クロック調整回路 561から出力されるクロック信号を調整することで、 精度の高い動作マージンのテストが可能になる。テスト対象回路 562の信号波形を 観測するオンンチップ波形観測回路 563は、テスト対象回路 562に供給されるクロッ ク信号の周波数よりも高い周波数のサンプリングクロックにて、該信号波形の過渡特 性等を高速デジタイズする力、、あるいは、例えば、テスト対象回路 562から出力される 信号 (高速繰り返し信号)の瞬時電圧値を低周波数のサンプリングクロックでサンプ ル点をずらして複数サンプルし波形を再生するサンプリング 'オシロスコープの原理 を使ってもよい。テスト対象回路 562には、半導体集積回路 560内部の不図示の BI STのパターン生成回路から印加(force)パターンを印加してもよ!/、し、外部の LSIテ スタ等からテストパターンを印加してもょレ、。
[0280] 図 57は、図 56のオンチップ波形観測回路 563が、論理回路(テスト対象回路 562) の遅延の変動を観測して、制御回路 564でクロック調整回路 561を制御し、クロック 信号を調整する制御の例を示して!/、る。
[0281] テスト対象回路 562の遅延が大きくなると、動作マージンが減少する場合、図 57 (a )のように、クロック周波数を高くして条件を厳しくすることで、動作マージンが十分か どうか確認することが可能である。
[0282] 逆に、図 57 (b)のように遅延が大きくなつた時に、クロック周波数を低くして、電源変 動による動作マージン変動を相殺し、テスト対象回路 562の本来の動作マージンを 測定することも可能である。
[0283] 図 58は、本発明のさらに別の実施例の構成を示す図であり、電源変動とクロック変 動の位相差と、動作マージンの関係をテストするための回路の構成を示す図である。 図 58を参照すると、図 51の構成に、テスト対象回路 512の出力を受けエラーを検出 するエラー検出回路 581を備えている。本実施例においては、図 51に示した構成例 と、図 52に示した制御例と同様に、クロック信号の変動を電源変動に同期させるが、 クロック信号の変動と電源変動の位相差を変えながら、それぞれの位相差で、許容 可能なクロック信号の変動量をテストする。テスト対象回路 512と、エラー検出回路 5 81とにそれぞれ供給される印加テストパターンと期待値パターンは、半導体集積回 路 580内部の不図示の BISTから供給するようにしてもよいし、外部の LSIテスタ等か ら供給するようにしてもよい。この場合、エラー検出回路 581は、テスト対象回路 512 の出力と期待値パターンを比較するコンパレータ回路を備えて構成される。エラー検 出回路 581は、エラー検出結果 (パス/フェイル情報)を出力ピンから、半導体集積 回路 580外部の LSIテスタ等(不図示)に出力し、 LSIテスタ等において、後述する図 59 (b)の SHMOO PLOT等を作成するようにしてもよい。なお、変形例として、エラ 一検出回路 581を LSIテスタの比較回路で置き換える構成を本発明は排除するもの ではない。
[0284] 図 59は、図 58に示した回路の制御の一例を説明するための図である。外乱の振 幅を変えてテスト対象回路 512のパス/フェイルを、エラー検出回路 581を介して検 証し、位相差等のパラメータに対する動作マージンの感度を検証する。図 59は、電
源電圧の変動に同期させて、クロック周波数を変動させる例を説明するためのもので ある。
[0285] 例えば、図 59 (a)のクロック周波数(1)、クロック周波数(2)、クロック周波数(3)に 示すように、図 59 (a)に示した電源電圧の変動(電源ノイズの変動)に対するクロック 周波数変動の位相を変える。
[0286] このようなテストを行うと、電源電圧の変動に対して、例えばクロック周波数(1)に示 すような位相のクロック周波数変動を与えると、周波数変動の振幅(変動量)を比較 的大きくした場合でも、回路が正常に動作可能である (動作マージンが大きい)。
[0287] 逆に、図 59 (a)に示した電源電圧の変動に対して、クロック周波数(3)のような位相 のクロック周波数変動を与えると、周波数変動の振幅(変動量)が比較的小さいときで も、回路の誤動作が発生する(動作マージンが小さい)場合がある。
[0288] このような動作マージンテストの結果は、図 59 (b)に示すように、電源変動とクロック 周波数変動の位相差 (横軸)と、動作マージン (許容可能なクロック周波数振幅等) ( 縦軸)の関係としてプロット(SHMOO PLOT)することが可能である。この結果から 、最も動作マージンが小さく又は大きくなる、電源変動とクロック周波数変動の位相差 の関係が分かる。このような、電源変動とクロック周波数変動間の位相差と動作マー ジンの測定結果は、半導体集積回路の動作マージンテストの効率化や、設計精度の 向上、不良解析などに有用である。
[0289] 本発明のクロック調整回路を用いることで、クロック信号のジッタ、デューティ比、ス キューなどを調整することが可能である力 PLLやクロックバッファも電源変動やばら つきなどによって、ジッタ、デューティ歪み、スキューなどを発生する。そのため、論理 回路などに供給されるクロック信号には、ユーザが意図してクロック調整回路で発生 させたジッタ、デューティ比、スキューと、ユーザが意図しない変動やばらつきによつ て発生したジッタ、デューティ比、スキューが存在する。
[0290] 図 60は、本発明のクロック調整回路を用いた、更に別の実施例の構成を示す図で ある。本実施例は、論理回路などに供給されるクロック信号を、出来るだけユーザが 意図した信号に近づけるための回路構成としたものである。
[0291] 図 60を参照すると、本実施例では、クロック調整回路 601には、 PLL (phase locked
loop) 605からのクロック信号が供給される。また、クロック調整回路 601の出力とテス ト対象回路 602の間には、例えば CTS (Clock Tree Synthesis)バッファ等から 構成されたクロックバッファ 606が配設され、テスト対象回路 602に供給される複数の クロックのスキュー調整が行われて!/、る。
[0292] オンチップ波形観測回路 603は、テスト対象回路 602のクロック入力端子に直近で 、クロックバッファ 606から入力されるクロック信号の波形を観測する。クロック信号波 形を観測するオンンチップ波形観測回路 603は、該クロック信号の遁倍周波数のサ ンプリングクロックにて該クロック信号波形をデジタイズする力、、あるいは、低周波数の サンプリングクロックでサンプル点をずらして該クロック信号波形の瞬時信号電圧を複 数サンプルし、クロック信号波形を再生するサンプリング 'オシロスコープの原理を使 つてもよい。
[0293] 本実施例は、オンチップ波形観測回路 603によってテスト対象回路 602に共有され るクロック信号を観測し、その観測波形が、ユーザの意図する波形に近づくように、ク ロック調整回路 601のパラメータを調整する。
[0294] 例えば、 Xというジッタやデューティ歪みを、テスト対象回路 602のクロック信号に与 えることを考える。
[0295] 図 60において、
PLL605(こ、
Aと!/、うジッタやデューティ歪みが発生し、
クロックノ ッファ 606に、
Bと!/、うジッタやデューティ歪みが発生して!/、る場合、
クロックバッファ 606を通過して、テスト対象回路 602に到達するクロック信号には、 X+A+B
と!/、うジッタやデューティ歪みが存在する。
[0296] その様子が、オンチップ波形観測回路 603で波形として観測される。オンチップ波 形観測回路 603で観測された波形の情報を、クロック調整回路用の制御回路 604に フィードバックすると、クロック調整回路用の制御回路 604は、ジッタやデューティ歪 みが過剰であると判断し、クロック調整回路 601が発生するジッタやデューティ歪みを
小さくしていく。最終的には、クロック調整回路 601が、 X— A— Bというジッタや歪み を発生することで、テスト対象回路 602には、ユーザが意図した Xというジッタや歪み を有するクロック信号を入力することが可能になる。
[0297] 半導体集積回路 600内部の PLL605やクロック分配回路(クロックバッファ) 606は 、様々な調整機能を有する場合が多い。例えば、 PLL605は、チャージポンプ電流、 電圧制御発振器 (VCO)の周波数ゲイン、ループフィルタの定数などが調整可能で あることが多い。
[0298] また、クロック分配回路 606にも、遅延調整回路(可変遅延回路)(不図示)等が組 み込まれている場合がある。
[0299] これらの調整によって、クロック信号のジッタや、デューティ歪みの大きさが変わる場 合がある。そのような場合には、これらの設定 によって動作マージンが変わる。
[0300] 図 61は、本発明のクロック調整回路を用いた、更に別の実施例の構成を示す図で ある。本実施例においては、クロック信号のジッタや、デューティ歪みの設定値と動作 マージンの関係を測定したり、又は、動作マージンなどが最適になるように設定 を 調整したりする。エラー検出回路 608は、テスト対象回路 602の出力を受け、エラー を検出する。
[0301] PLL605の不図示のチャージポンプ電流、 VCO (Voltage Controlled Oscilla tor)の周波数ゲイン、ループフィルタの定数、クロック分配回路の遅延など、回路の 設定値を変えながら、クロック調整回路 601で発生させるジッタやデューティの歪み を大きくして許容限界を測定することで、図 62に示すように、回路の設定値 (例えば P LL605のチャージポンプの電流、 PLL605のループフィルタの設定値、クロック分配 系の設定値等)と動作マージン (例えば許容可能なジッタ振幅等)の関係(SHMOO プロット)を測定することができる。このようなテスト結果を用いて、動作マージンが最 適な値になるような半導体集積回路を設計することが可能になる。
[0302] 図 63は、本発明のクロック調整回路を用いた、更に別の実施例の構成を示す図で ある。図 63を参照すると、本実施例は、半導体集積回路 630内部の温度よつて、クロ ック信号を調整する。ダイオード等のオンチップ温度センサーを含む温度測定回路( オンチップ温度測定回路) 633は、温度の変動を観測して、制御回路 634でクロック
調整回路 631を制御し、クロック信号を調整する。一般的には半導体集積回路の温 度が大きくなると回路の遅延が大きくなり、動作マージンが減少する。この時、動作マ 一ジンの減少に合わせてクロック周波数を低くすることで、温度の変化の影響を受け ずに、テスト対象回路が持つ本来のマージンを測定することが可能になる。
[0303] 前述した様に、電源電圧変動や温度変動などよつて、テスト対象回路の動作マー ジンは変動する。
[0304] このような動作マージンの変動(電源電圧変動や温度変動による動作マージンの 変動)は、テスト対象回路を模擬した回路(レプリカ回路)を用いても観測することが可 能である。
[0305] 図 64と図 65は、それぞれ、本発明のクロック調整回路を用いた、更に別の実施例 の構成を示す図である。図 64と図 65の本実施例では、テスト対象回路 642、 652を 模擬したレプリカ回路 643、 656を用いることで、前述の動作マージン変動を検出し、 テスト対象回路 642、 652のクロック信号を調整する。
[0306] レプリカ回路 643、 656は、テスト対象回路 642、 652の特性変動に対応した変動 を示すものであれば、任意の回路を用いることができる。
[0307] 図 64に示す実施例では、レプリカ回路 643の出力を制御回路 644で受けて、テスト 対象回路 642に与えるクロック信号を調整する。すなわち、レプリカ回路 643の出力 が制御回路 644に直接入力されている。この場合、レプリカ回路 643は、例えばイン バータを奇数段リング形態に接続したリングオシレータ等を備え、その発振周波数の 情報等を制御回路 644に出力するようにしてもよい。レプリカ回路 643がクロックで駆 動される回路の場合、レプリカ回路 643に供給するクロック信号は、テスト対象回路 6 42と同一系統のクロック信号であってもよいし、あるいは別系統のクロック信号であつ てもよい。あるいは、レプリカ回路 643には、半導体集積回路内部の不図示の BIST のパターン生成回路から印加(force)パターンを印加してもよ!/、し、あるいは外部の LSIテスタ等からテストパターンを印加してもよ!/、。
[0308] 図 65に示す実施例では、レプリカ回路 656の出力をオンチップ波形観測回路 653 で観測し、その観測によって得られた情報を基に、制御回路 654がクロック周波数な どの適切な値を算出して、クロック調整回路 651を制御する。
[0309] 図 65に示す実施例では、レプリカ回路 656の出力波形をオンチップ波形観測回路 653で観測しているため、レプリカ回路 656としては、任意の回路構成を用いることが できる。レプリカ回路 656は、テスト対象回路 652と同一であってもよいし、テスト対象 回路 652の一部の機能ブロックの出力であってもよい。レプリカ回路 656は、テスト対 象回路 652と独立して設けた別回路 (例えばリングオシレータ等)であってもよい。レ プリカ回路 656がクロックで駆動される回路の場合、該クロックは、テスト対象回路 65 2と同一系統のクロック信号であってもよいし、あるいは別系統のクロック信号であって もよい。また、レプリカ回路 656には、半導体集積回路内部の不図示の BISTのバタ ーン生成回路から印加(force)パターンを印加してもよ!/、し、ある!/、は外部の LSIテ スタ等からテストパターンを印加してもょレ、。
[0310] 電源電圧変動や温度変動などよつてテスト対象回路の動作マージンが変動するが 、この時、レプリカ回路 643、 656も同様の影響を受けるため、レプリカ回路 643、 65 6から出力される信号を観測することで、テスト対象回路 642、 652の動作マージンの 変動を予測することができる。この観測結果を用いて、テスト対象回路 642、 652に 与えるクロック信号の周波数などを調整することが可能である。
[0311] なお、図 51以降に示したクロック調整回路は、図 15以降に示したクロック調整回路 であってもよい。また、電源電圧変動をみてクロック調整回路が出力するクロック信号 は、クロック周波数だけではなぐデューティ比、ジッタなど、でもよい。
[0312] 本実施例においては、チップ内の電源電圧を測定する回路により測定される測定 値と、クロック調整回路により測定される動作マージンの値と、の両方の結果から、チ ップの出来 (動作余裕の大小)を判断することで、チップの選別テスト等において、チ ップの動作余裕の大きさに関する判断の精度を、より高くすること力 Sできる。
[0313] 例えば動作マージンの観測結果が、
チップ Aでは 2、
チップ Bでは 1
であったとする。
[0314] 動作マージンだけの観測では、チップ Bの方が、チップ Aよりも出来が悪いと判断さ れる。
[0315] ところ力 動作マージンを観測したときに電源電圧を同時に知ることで、例えば、 チップ Aは動作マージンが 2で、そのときの電源電圧は 1. 0、
チップ Bは動作マージンが 1で、そのときの電源電圧は 0. 5
という情報が得られたとする。
[0316] いま、電源電圧の仕様が 1. 0である場合、電源電圧が 0. 5という、極めて悪条件に もかかわらず、動作マージンが 1であるチップ Bは、チップ Aよりも、チップの出来が良 いという判断が可能である。
[0317] ここで、動作マージンを測定するときに、
•電源電圧の他にも、
•チップの温度や応力等、
測定対象を変えることも可能である。
[0318] このように、動作マージンと同時に電源電圧等を同時に測定して、それぞれのセット でチップの出来を判断することは、喩えて言えば、あたかも、人間の体脂肪率を測定 したときに、一概に体脂肪率だけを測定するのではなぐ体脂肪率と同時に体重や 身長を同時に測定して健康度合いを判断するのと同じである。
[0319] 以上、本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にの み制限されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変 形、修正を含むことは勿論である。