(57)【要約】【課題】機能ブロックを構成するクロックドメイン間の遅延故障解析を行う際、データ送信側のクロックドメインにおけるクロックのエッジとデータ受信側のクロックドメインにおけるクロックのエッジのタイミング調整は、機能ブロックの回路規模が増大すると困難となる。【解決手段】クロック生成回路（ＴＣＴＬ）は、２つのクロックパルスを有するＡＣスキャンテストクロック（ＣＬＫ）を、機能ブロック（ＩＰ）を構成する各クロックドメイン（ＣＤ＿Ｎ、Ｎ＝０〜ｎ−１）に供給する。各クロックドメインが備えるクロック制御回路（ＬＣＳＣ）は、テスト制御レジスタ（ＴＤＲ）で設定したリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎとその２つのクロックパルスとに基づき、ドメインテストクロック（ＧＣＬＫ）におけるリリースクロックおよびキャプチャクロックの生成有無を制御する。【選択図】図１
2013156073.tif 000002
【特許請求の範囲】
【請求項１】
第１クロックを生成するテスト制御回路と、
前記第１クロックに基づき第２クロックを生成するクロック制御回路と、
前記第２クロックに同期してデータのリリースおよびキャプチャを行うフリップフロップを含む複数のクロックドメインと、を備え、
前記クロック制御回路は、リリースクロック制御信号およびキャプチャクロック制御信号に基づき前記第２クロックのリリースクロックおよびキャプチャクロックの生成を制御し、
前記フリップフロップは、生成された前記リリースクロックおよび前記キャプチャクロックに同期して、各々、前記データのリリースおよびキャプチャを行う、半導体装置。
【請求項２】
前記第１クロックは第１のクロックパルスおよび第２のクロックパルスを有し、
前記クロック制御回路は、前記リリースクロック制御信号および前記キャプチャクロック制御信号に基づき、前記第１のクロックパルスおよび前記第２のクロックパルスに対応する前記リリースクロックおよび前記キャプチャクロックの生成を制御する、請求項１記載の半導体装置。
【請求項３】
前記リリースクロック制御信号および前記キャプチャクロック制御信号の値を設定するテスト制御レジスタをさらに有する、請求項２記載の半導体装置。
【請求項４】
前記テスト制御レジスタは、前記クロックドメイン毎の前記リリースクロック制御信号および前記キャプチャクロック制御信号の値を設定するデータ保持回路を有する、請求項３記載の半導体装置。
【請求項５】
前記クロック制御回路は、前記リリースクロック制御信号および前記キャプチャクロック制御信号によらず、クロック制御キャンセル信号に基づき前記リリースクロックおよび前記キャプチャクロックを生成する、請求項１ないし請求項４いずれか１項記載の半導体装置。
【請求項６】
第１クロックを生成するテスト制御回路と、
前記第１クロックに基づき第２クロックを生成するクロック制御回路と、
前記第２クロックに同期してデータのリリースおよびキャプチャを行うフリップフロップを含む複数のクロックドメインと、を備え、
前記クロック制御回路は、第１のクロック制御信号および第２のクロック制御信号に基づき前記第２クロックのリリースクロックおよびキャプチャクロックの生成を制御し、
前記クロック制御回路は、前記第１のクロック制御信号および前記第２のクロック制御信号によらず、クロック停止制御信号に基づき前記リリースクロックおよび前記キャプチャクロックを生成しない、半導体装置。
【請求項７】
前記第１のクロック制御信号および前記第２のクロック制御信号は、前記各クロックドメインの前記クロック制御回路へ供給される、請求項６記載の半導体装置。
【請求項８】
前記クロック停止制御信号の値を設定するテスト制御レジスタをさらに有する、請求項６または請求項７記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機能ブロックのスキャンテスト機能を有する半導体装置に関し、例えば、遅延故障検出用のスキャンクロック生成機能を有する半導体装置に関する。
【背景技術】
【０００２】
複数のクロックドメインを有する機能ブロックを搭載した半導体装置において、クロックドメインの遅延故障を検出する技術が重要となっている。クロックドメイン間に非同期転送パスが存在する場合、非同期転送パスからデータを受け取るクロックドメインにおいて、そのデータを遮断するマスク回路を設けることが知られている。
【０００３】
非同期転送パスで接続されている各クロックドメインに対し、分離したクロック生成回路からタイミング調整したクロックを各クロックドメインへ各々供給し、非同期転送の発生を防止する技術が知られている。
【０００４】
特開２００７−２４８２３６号公報（特許文献１）は、動作クロックの速度が異なる複数のクロックドメインに対し、動作クロックのラウンチエッジとキャプチャエッジを振り分ける構成を開示する。データ転送元のクロックドメインにはラウンチエッジのみ与えられ、そのデータ転送先のクロックドメインにはキャプチャエッジのみ与えられる。
【０００５】
特開平８−７５８２６号公報（特許文献２）は、システムクロックを走査クロックと機能クロックに分離するトライステートバッファで構成されるローカルクロック発生器を開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２４８２３６号公報
【特許文献２】特開平８−７５８２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１が開示する遅延故障試験回路は、一方のクロックドメインに対してはラウンチエッジのみ与え、他方のクロックドメインに対してはそのデータを取り込むキャプチャエッジのみ与える構成となっている。この構成により、動作クロック速度が異なるクロックドメイン間の遅延故障解析を実行する場合、ラウンチエッジとキャプチャエッジを１対１で対応付けている。
【０００８】
この構成は、ラウンチエッジとキャプチャエッジとを対応づけてクロックドメイン間のタイミング調整をするものである。しかし、クロックドメインの回路規模が増大すると、ラウンチエッジとキャプチャエッジを選択するタイミング設計が困難となる。
【０００９】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
一実施の形態によれば、第１クロックを生成するテスト制御回路と、第１クロックに基づき第２クロックを生成するクロック制御回路と、第２クロックに同期してデータのリリースおよびキャプチャを行うフリップフロップを含む複数のクロックドメインと、を備え、クロック制御回路は、リリースクロック制御信号およびキャプチャクロック制御信号に基づき第２クロックのリリースクロックおよびキャプチャクロックの生成を制御し、フリップフロップは、生成されたリリースクロックおよびキャプチャクロックに同期して、各々、データのリリースおよびキャプチャを行う、半導体装置である。
【発明の効果】
【００１１】
前記一実施の形態によれば、クロックドメイン間の非同期転送パスのデータ転送を容易に無効化でき、非同期転送パスの影響を受けずにクロックドメインの遅延故障検出が可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１に係る半導体装置の構成図である。
【図２】本発明の実施の形態１に係るクロック制御回路の機能を説明する図である。
【図３】本発明の実施の形態１に係るクロック制御回路の動作を説明する図である。
【図４】本発明の実施の形態１に係るクロック制御回路の動作を説明する図である。
【図５】本発明の実施の形態１に係るクロック制御回路の動作を説明する図である。
【図６】本発明の実施の形態１に係るクロック制御回路の動作を説明する図である。
【図７】本発明の実施の形態１に係るクロック制御回路による機能ブロックのＡＣスキャンテスト方法を説明する図である。
【図８】本発明の実施の形態２に係る半導体装置の構成図である。
【図９】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の機能を説明する図である。
【図１０】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１１】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１２】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１３】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１４】本発明の実施の形態２に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１５】本発明の実施の形態３に係る半導体装置の構成図である。
【図１６】本発明の実施の形態３に係るクロック制御回路およびクロックゲーティング回路の機能を説明する図である。
【図１７】本発明の実施の形態３に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１８】本発明の実施の形態３に係るクロック制御回路およびクロックゲーティング回路の動作を説明する図である。
【図１９】本発明の実施の形態３の変形例に係る半導体装置の構成図である。
【図２０】本発明の実施の形態３の変形例に係るクロックゲーティング回路の機能を説明する図である。
【図２１】本発明の実施の形態３の変形例に係るクロックゲーティング回路の動作を説明する図である。
【図２２】本発明の実施の形態３の変形例に係るクロックゲーティング回路の動作を説明する図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しつつ、本発明の実施の形態について説明する。実施の形態の説明において、個数、量などに言及する場合、特に記載ある場合を除き、本発明の範囲は必ずしもその個数、量などに限定されない。実施の形態の図面において、同一の参照符号や参照番号は、同一部分または相当部分を表わすものとする。また、実施の形態の説明において、同一の参照符号等を付した部分等に対しては、重複する説明は繰り返さない場合がある。
【００１４】
＜実施の形態１＞
図１を参照して、実施の形態１に係る半導体装置ＬＳＩの構成を説明する。
【００１５】
半導体装置ＬＳＩは、テスト制御回路ＴＣＴＬ、テスト制御レジスタＴＤＲ、および機能ブロックＩＰを備える。
【００１６】
テスト制御回路ＴＣＴＬは、ＡＣスキャンテストクロックＣＬＫを生成するクロック生成回路ＴＣＧを有する。クロック生成回路ＴＣＧは端子Ｔ０、Ｔ１、およびＴ２を有し、端子Ｔ０からＡＣスキャンテストクロックＣＬＫを出力する。ＡＣスキャンテストクロックＣＬＫは連続する２つのクロックパルスを有する。
【００１７】
テスト制御回路ＴＣＴＬは、さらに、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮおよびスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥを出力する。
【００１８】
テスト制御レジスタＴＤＲは、Ｄ型フリップフロップＦＦＲ００からＤ型フリップフロップＦＦＲ１ｎ−１の計２ｎ個（ｎは２以上の整数）のフリップフロップを有する。２ｎ（２とｎとの積算値）個の各フリップフロップは、クロック端子に共通に印加されるクロックに同期して、図示しない各データ入力端子に印加されたデータを取り込む。
【００１９】
フリップフロップＦＦＲ００は、クロックに同期して格納データをリリースクロック制御信号Ｓ０＿ＣＤ＿０として出力する。フリップフロップＦＦＲ１０は、クロックに同期して格納データをキャプチャクロック制御信号Ｓ１＿ＣＤ＿０として出力する。つまり、フリップフロップＦＦＲ０Ｎ（Ｎ＝０〜ｎ−１。以下、同じ。）はリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎを出力し、フリップフロップＦＦＲ１Ｎはキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎを出力する。
【００２０】
機能ブロックＩＰは、クロックドメインＣＤ＿０からクロックドメインＣＤ＿ｎ−１の計ｎ個のクロックドメインを有する。各クロックドメインは、ある特定のクロック入力により駆動される回路領域で構成される。さらに、各クロックドメインのクロック入力は互いに非同期であり、クロックドメイン間では非同期にデータ転送が行われる場合もある。図１において、クロックドメインＣＤ＿０とクロックドメインＣＤ＿１とは非同期に動作する。
【００２１】
クロックドメインＣＤ＿０は、クロック制御回路ＬＣＳＣおよび故障検出フリップフロップＦＦ１３を有する。クロック制御回路ＬＣＳＣは、ＡＣスキャンテストクロックＣＬＫからドメインテストクロックＧＣＬＫを生成し、故障検出フリップフロップＦＦ１３のクロック端子へ出力する。
【００２２】
クロックドメインＣＤ＿Ｎは、遅延故障検出対象パスの両端に配置される故障検出フリップフロップを有する。各故障検出フリップフロップは、遅延故障検出対象パスに対する入力値の設定や遅延故障検出対象パスの出力値の読出しを行う。各々の故障検出フリップフロップはシリアルに接続されてスキャンパスを形成しており、入力値の設定や出力値の読出しを順次行うことができる。故障検出フリップフロップＦＦ１３は、その故障検出フリップフロップの１つを例示するものである。
【００２３】
なお、図１において、ドメインテストクロックＧＣＬＫのクロック配線と斜めに交差する線は、そのドメインテストクロックＧＣＬＫのクロック配線および故障検出フリップフロップが分岐して複数あることを示す。
【００２４】
クロック制御回路ＬＣＳＣの構成を説明する。
フリップフロップＦＦ１１は、データ入力端子に印加されたスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥの値を、ＡＣスキャンテストクロックＣＬＫの立上りエッジに同期してデータ出力端子に信号ａとして出力する。フリップフロップＦ１２は、データ入力端子に印加された信号ａの値を、ＡＣスキャンテストクロックＣＬＫの立下りエッジに同期して信号ｂとして出力する。なお、フリップフロップＦＦ１１およびＦＦ１２はＤ型フリップフロップである。
【００２５】
アンド回路ＡＮＤ１１は、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮおよびスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥの反転論理値のアンド処理結果を信号ｃとして出力する。ナンド回路ＮＡＮＤ１１は、信号ｂおよびリリースクロック制御信号Ｓ０＿ＣＤ＿０のナンド処理結果を信号ｄとして出力する。ナンド回路ＮＡＮＤ１２は、信号ｂの反転論理値およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０のナンド処理結果を信号ｅとして出力する。
【００２６】
ナンド回路ＮＡＮＤ１３は、信号ｃ、信号ｄ、および信号ｅのナンド処理結果を信号ｆとして出力する。アンド回路ＡＮＤ１２は、信号ｆおよびＡＣスキャンテストクロックＣＬＫのアンド処理結果をドメインテストクロックＧＣＬＫとして出力する。
【００２７】
他のクロックドメインＣＤ＿１〜クロックドメインＣＤ＿ｎ−１が有するクロック制御回路ＬＣＳＣの構成は、以下の点を除いてクロックドメインＣＤ＿０と同一である。クロックドメインＣＤ＿Ｎに入力されるリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎは、各クロックドメインＣＤ＿Ｎ毎に設定された値がテスト制御レジスタＴＤＲから出力される。
【００２８】
図２を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣの機能を説明する。
ＴＤＲ設定とは、例えば、クロックドメインＣＤ＿０のクロック制御回路ＬＣＳＣへ出力するリリースクロック制御信号Ｓ０＿ＣＤ＿０およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値の組み合わせである。
【００２９】
リリースクロックとは、ＡＣスキャンテストクロックＣＬＫの最初のクロックパルスに対応して生成されるドメインテストクロックＧＣＬＫにおける最初のクロックパルスである。キャプチャクロックとは、ＡＣスキャンテストクロックＣＬＫの２番目のクロックパルスに対応して生成されるドメインテストクロックＧＣＬＫにおける２番目のクロックパルスである。”Ｅｎａｂｌｅ”とは、対応するクロックパルスがドメインテストクロックＧＣＬＫにおいて生成され、”Ｄｉｓａｂｌｅ”とは、対応するクロックパルスが生成されないことを示す。
【００３０】
リリースクロック制御信号Ｓ０＿ＣＤ＿０の値がハイレベル”１”の場合は、ドメインテストクロックＧＣＬＫにおいて最初のクロックパルスが生成される。リリースクロック制御信号Ｓ０＿ＣＤ＿０の値がロウレベル”０”の場合は、ドメインテストクロックＧＣＬＫにおいて最初のクロックパルスは生成されない。
【００３１】
キャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値がハイレベル”１”の場合は、ドメインテストクロックＧＣＬＫにおいて２番目のクロックパルスが生成される。キャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値がロウレベル”０”の場合は、ドメインテストクロックＧＣＬＫにおいて２番目のクロックパルスは生成されない。なお、図２はクロックドメインＣＤ＿０のクロック制御回路ＬＣＳＣの機能を示すが、他のクロックドメインも同様である。
【００３２】
図３を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣの動作を説明する。
図３は、テスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝１、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１と設定した場合の、クロックドメインＣＤ＿０におけるクロック制御回路ＬＣＳＣのタイミング図である。
【００３３】
ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをハイレベル”１”に設定すると、半導体装置ＬＳＩはＡＣスキャンテストを実行する状態に設定される。ここで、ＡＣスキャンテストとは、半導体装置ＬＳＩの実動作時のクロック速度相当の速度を有するＡＣスキャンテストクロックＣＬＫを機能ブロックＩＰに供給し、その機能ブロックＩＰの遅延故障解析を行うことである。ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをロウレベル”０”に設定すると、半導体装置ＬＳＩは通常動作状態、又は、その他の動作状態となる。
【００３４】
時刻ｔ０から時刻ｔ５の期間に亘り、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”に設定する。スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがロウレベル”０”の期間はキャプチャ期間、ハイレベル”１”の期間はシフト期間に設定される。
【００３５】
時刻ｔ０以前のシフト期間１では、クロックドメインＣＤ＿０に複数ある故障検出フリップフロップＦＦ１３をシリアルに接続してシフト動作させ、順次、各故障検出フリップフロップＦＦ１３に対してテストパターンの設定を行う。時刻ｔ５以降のシフト期間２では、ＡＣスキャンテストの結果を各故障検出フリップフロップＦＦ１３から読み出す。各シフト期間におけるドメインテストクロックＧＣＬＫのクロック速度は実動作時のクロック速度より遅く設定される。
【００３６】
シフト期間１では、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮ＝１、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥ＝１と設定され、図１のクロック制御回路ＬＣＳＣにおいて、信号ｆはハイレベル”１”となる。その結果、２つのクロックパルスを有するＡＣスキャンテストクロックＣＬＫは、そのままドメインテストクロックＧＣＬＫとして出力される。
【００３７】
シフト期間１におけるドメインテストクロックＧＣＬＫの生成は、各クロックドメインＣＤ＿Ｎに対して個別に設定されるリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎの値に依存しない。従って、シフト期間１における故障検出フリップフロップＦＦ１３のシフト動作は、各クロックドメインＣＤ＿Ｎにおいて同時に行われる。
【００３８】
シフト期間１の前に、テスト制御レジスタＴＤＲのフリップフロップＦＦＲ００からフリップフロップＦＦＲ１ｎ−１に所望の値を設定する。各クロックドメインＣＤ＿Ｎ別に設定されるリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎの値に応じて、各々、テスト制御レジスタＴＤＲのフリップフロップＦＦＲ０ＮおよびフリップフロップＦＦＲ１Ｎの値を事前に設定する。
【００３９】
時刻ｔ０から時刻ｔ５のキャプチャ期間１において、クロック生成回路ＴＣＧが出力するＡＣスキャンテストクロックＣＬＫの速度は実動作時のクロック速度相当である。クロック制御回路ＬＣＳＣは、リリースクロック制御信号Ｓ０＿ＣＤ＿０およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値に基づき、ドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成または消滅を行う。
【００４０】
以下、図３および図１を参照して、キャプチャ期間１におけるクロック制御回路ＬＣＳＣの動作を説明する。
【００４１】
時刻ｔ０にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”からロウレベル”０”に変化すると、アンド回路ＡＮＤ１１の出力信号ｃはロウレベル”０”からハイレベル”１”に変化する。
【００４２】
時刻ｔ１にＡＣスキャンテストクロックＣＬＫの最初のクロックパルスの立上りエッジに同期して、フリップフロップＦＦ１１はスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥのロウレベル”０”を出力する（信号ａ）。時刻ｔ１において、フリップフロップＦＦ１２はシフト期間１におけるハイレベル”１”を保持して出力（信号ｂ）しているため、ナンド回路ＮＡＮＤ１１の出力（信号ｄ）はリリースクロック制御信号Ｓ０＿ＣＤ＿０の値で決定される。一方、ナンド回路ＮＡＮＤ１２はキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらずハイレベル”１”を出力する（信号ｅ）。
【００４３】
リリースクロック制御信号Ｓ０＿ＣＤ＿０＝１であるから、信号ｄはロウレベル”０”を維持する。その結果、アンド回路ＡＮＤ１２はＡＣスキャンテストクロックＣＬＫの最初のクロックパルスをドメインテストクロックＧＣＬＫのリリースクロックとして生成する。
【００４４】
時刻ｔ２にＡＣスキャンテストクロックＣＬＫの最初のクロックパルスの立下りエッジに同期して、フリップフロップＦＦ１２は信号ａのロウレベル”０”を出力する（信号ｂ）。信号ｂがロウレベル”０”に変化すると、ナンド回路ＮＡＮＤ１２の出力（信号ｅ）はキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値で決定される。一方、ナンド回路ＮＡＮＤ１１はリリースクロック制御信号Ｓ０＿ＣＤ＿０の値によらずハイレベル”１”に変化する（信号ｄ）。
【００４５】
キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１であるから、信号ｅはロウレベル”０”に変化する。
【００４６】
時刻ｔ３にＡＣスキャンテストクロックＣＬＫの２番目のクロックパルスの立上りエッジがフリップフロップＦＦ１１およびフリップフロップＦＦ１２に入力されても信号ｂの値はロウレベル”０”であるため、ナンド回路ＮＡＮＤ１２の出力（信号ｅ）はキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値で決定される。キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１であるから、アンド回路ＡＮＤ１２はＡＣスキャンテストクロックＣＬＫの２番目のクロックパルスをドメインテストクロックＧＣＬＫのキャプチャクロックとして生成する。
【００４７】
時刻ｔ５にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”に変化すると、以降はシフト期間２が設定される。
【００４８】
図３に示す通り、リリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎをハイレベル”１”に設定することにより、クロックドメインＣＤ＿Ｎにおいて、ドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックが生成される。
【００４９】
図４を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣの動作を説明する。
図４は、テスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝０、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０と設定した場合の、クロックドメインＣＤ＿０におけるクロック制御回路ＬＣＳＣのタイミング図である。図３と同様に、時刻ｔ０から時刻ｔ５の期間に亘り、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”に設定する。
【００５０】
時刻ｔ１において信号ｂがハイレベル”１”であるため、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらず、信号ｅはハイレベル”１”を維持する。一方、リリースクロック制御信号Ｓ０＿ＣＤ＿０がロウレベル”０”であるため、信号ｄはハイレベル”１”を維持する。その結果、信号ｆはロウレベル”０”を維持し、ドメインテストクロックＧＣＬＫにリリースクロックは生成されない。
【００５１】
時刻ｔ３において信号ｂがロウレベル”０”であるため、リリースクロック制御信号Ｓ０＿ＣＤ＿０の値によらず、信号ｄはハイレベル”１”を維持する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０がロウレベル”０”であるため、信号ｅはハイレベル”１”を維持する。その結果、信号ｆはロウレベル”０”を維持し、ドメインテストクロックＧＣＬＫにキャプチャクロックは生成されない。
【００５２】
図５を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣの動作を説明する。
図５は、テスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝１、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０と設定した場合の、クロックドメインＣＤ＿０におけるクロック制御回路ＬＣＳＣのタイミング図である。図３と同様に、時刻ｔ０から時刻ｔ５の期間に亘り、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”に設定する。
【００５３】
時刻ｔ１において信号ｂがハイレベル”１”であるため、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらず、信号ｅはハイレベル”１”を維持する。一方、リリースクロック制御信号Ｓ０＿ＣＤ＿０がハイレベル”１”であるため、信号ｄはロウレベル”０”を維持する。その結果、信号ｆはハイレベル”１”を維持し、ドメインテストクロックＧＣＬＫにリリースクロックが生成される。
【００５４】
時刻ｔ３において信号ｂがロウレベル”０”であるため、リリースクロック制御信号Ｓ０＿ＣＤ＿０の値によらず、信号ｄはハイレベル”１”を維持する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０がロウレベル”０”であるため、信号ｅはハイレベル”１”を維持する。その結果、信号ｆはロウレベル”０”を維持し、ドメインテストクロックＧＣＬＫにキャプチャクロックは生成されない。
【００５５】
図６を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣの動作を説明する。
図６は、テスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝０、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１と設定した場合の、クロックドメインＣＤ＿０におけるクロック制御回路ＬＣＳＣのタイミング図である。図３と同様に、時刻ｔ０から時刻ｔ５の期間に亘り、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”に設定する。
【００５６】
時刻ｔ１において信号ｂがハイレベル”１”であるため、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらず、信号ｅはハイレベル”１”を維持する。一方、リリースクロック制御信号Ｓ０＿ＣＤ＿０がロウレベル”０”であるため、信号ｄはハイレベル”１”を維持する。その結果、信号ｆはロウレベル”０”を維持し、ドメインテストクロックＧＣＬＫにリリースクロックは生成されない。
【００５７】
時刻ｔ３において信号ｂがロウレベル”０”であるため、リリースクロック制御信号Ｓ０＿ＣＤ＿０の値によらず、信号ｄはハイレベル”１”を維持する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０がハイレベル”１”であるため、信号ｅはロウレベル”０”を維持する。その結果、信号ｆはハイレベル”１”を維持し、ドメインテストクロックＧＣＬＫにキャプチャクロックが生成される。
【００５８】
図７を参照して、実施の形態１に係るクロック制御回路ＬＣＳＣによる機能ブロックＩＰのＡＣスキャンテスト方法を説明する。
【００５９】
クロック生成回路ＴＣＧは、各クロックドメインＣＤ＿ＮへＡＣスキャンテストクロックＣＬＫを供給する。このうち、クロックドメインＣＤ＿０、クロックドメインＣＤ＿１、およびクロックドメインＣＤ＿ｎ−１に関するテスト制御レジスタＴＤＲは以下の通り設定されている場合を想定する。
リリースクロック制御信号Ｓ０＿ＣＤ＿０＝１
キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１
リリースクロック制御信号Ｓ０＿ＣＤ＿１＝１
キャプチャクロック制御信号Ｓ１＿ＣＤ＿＝０
リリースクロック制御信号Ｓ０＿ＣＤ＿ｎ−１＝０
キャプチャクロック制御信号Ｓ１＿ＣＤ＿ｎ−１＝０
クロックドメインＣＤ＿０のフリップフロップＦＦ１３は故障検出フリップフロップである。クロック制御回路ＬＣＳＣは、ドメインテストクロックＧＣＬＫのリリースクロックＲおよびキャプチャクロックＣを故障検出フリップフロップＦＦ１３のクロック端子に出力する。故障検出フリップフロップＦＦ１３にはデータＤ１が入力される。データＤ１は、例えば、ある遅延故障検出対象パスの終端から出力されるデータである。故障検出フリップフロップＦＦ１３はデータＱ１を出力する。この出力は、例えば、別の遅延故障検出対象パスの始端へ出力される。
【００６０】
クロックドメインＣＤ＿１の故障検出フリップフロップＦＦ１３のクロック端子には、ドメインテストクロックＧＣＬＫのリリースクロックＲは入力されるがキャプチャクロックＣは入力されない。従って、故障検出フリップフロップＦＦ１３は、入力端子に印加されたデータＤ２を取り込むことはない。一方、故障検出フリップフロップＦＦ１３は、リリースクロックＲに同期してデータＱ２を出力する。このデータ２は、既に故障検出フリップフロップＦＦ１３に格納済みのデータである。
【００６１】
クロックドメインＣＤ＿１は非同期回路ＡＳＰを有する。非同期回路ＡＳＰは、クロックドメインＣＤ＿０で生成されたデータＱ１を受け、クロックドメインＣＤ＿１の故障検出フリップフロップＦＦ１３の入力端子にその出力データ（データＤ２）を印加する。即ち、クロックドメインＣＤ＿０とクロックドメインＣＤ＿１は、非同期転送パスである非同期回路ＡＳＰで接続されている。
【００６２】
クロックドメインＣＤ＿ｎ−１の故障検出フリップフロップＦＦ１３のクロック端子には、ドメインテストクロックＧＣＬＫのリリースクロックＲおよびキャプチャクロックＣのいずれも入力されない。従って、半導体装置ＬＳＩの機能ブロックＩＰのＡＣスキャンテスト時のキャプチャ期間は、遅延故障検出対象のパスや故障検出フリップフロップＦＦ１３は動作することが無い。
【００６３】
図７において、クロックドメインＣＤ＿１のドメインテストクロックＧＣＬＫにリリースクロックＲのみ生成させキャプチャクロックＣを生成させない効果を説明する。
【００６４】
クロックドメインＣＤ＿１とクロックドメインＣＤ＿０との間には、非同期転送パス（非同期回路ＡＳＰ）が形成されている。クロックドメインＣＤ＿０の故障検出フリップフロップＦＦ１３には、ドメインテストクロックＧＣＬＫのリリースクロックＲおよびキャプチャクロックＣが印加される。従って、リリースクロックＲに同期してクロックドメインＣＤ＿０の故障検出フリップフロップＦＦ１３は、非同期回路ＡＳＰを経由して、クロックドメインＣＤ＿１の故障検出フリップフロップＦＦ１３の入力端子へデータＤ２を出力する。
【００６５】
非同期回路ＡＳＰの出力をクロックドメインＣＤ＿１のＡＣスキャンテスト用データとすることは不適切である。従来は、クロックドメインＣＤ＿１において、非同期転送マスク回路を介して故障検出フリップフロップＦＦ１３のデータ入力端子に非同期回路ＡＳＰの出力を入力していた。
【００６６】
ＡＣスキャンテスト時、非同期転送マスク回路で非同期回路ＡＳＰの出力データをマスクすることで、非同期転送パスを遮断していた。しかしながら、全ての非同期転送パスに非同期転送マスク回路を挿入することは回路設計時間の増大を招き、さらに半導体装置の面積増大を招く。
【００６７】
それに対し、図７に示す通り、クロックドメインＣＤ＿１におけるドメインテストクロックＧＣＬＫにキャプチャクロックＣを生成しなければ、非同期回路ＡＳＰの出力を故障検出フリップフロップＦＦ１３がデータとして取り込むことはない。従来のように追加の非同期転送マスク回路を設けることなく、クロック制御回路ＬＣＳＣの動作をテスト制御レジスタＴＤＲで制御することにより、非同期転送パスからのデータを遮断できる。
【００６８】
図７において、クロックドメインＣＤ＿ｎ−１のドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックを生成させない場合の効果を説明する。
【００６９】
近年、機能ブロックの大規模化やＡＣスキャンテスト時のクロック速度の高速化に伴い、ＡＣスキャンテスト時の消費電力が増大している。ＡＣスキャンテストは機能ブロックを同時に動作させるため、リリース期間およびキャプチャ期間の機能ブロックを構成する論理回路のトグル率が上昇する。この結果、通常動作時より機能ブロックの消費電流が増大するため、ＡＣスキャンテスト時の動作電圧範囲の悪化が問題となる。この問題は、ＡＣスキャンテスト時のクロック速度の高速化に加え、機能ブロックの規模増大も原因となっている。
【００７０】
この問題を解決するため、実施例１に係るクロック制御回路ＬＣＳＣは、半導体装置ＬＳＩをＡＣスキャンテストモードに設定した場合において、機能ブロックＩＰを構成する一部のクロックドメインに対してリリースクロックまたはキャプチャクロックの供給を停止する。テスト制御レジスタＴＤＲはリリースクロック制御信号Ｓ０＿ＣＤ＿ｎ−１およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿ｎ−１の値をロウレベル”０”となるように設定される。この結果、クロックドメインＣＤ＿ｎ−１のクロック制御回路ＬＣＳＣは、ＡＣスキャンテスト時にドメインテストクロックＧＣＬＫにリリースクロックＲおよびキャプチャクロックＣのいずれも生成しない。
【００７１】
＜実施の形態２＞
図８を参照して、実施の形態２に係る半導体装置ＬＳＩの構成を説明する。
【００７２】
半導体装置ＬＳＩは、テスト制御回路ＴＣＴＬ、テスト制御レジスタＴＤＲ、および機能ブロックＩＰを備える。
【００７３】
テスト制御回路ＴＣＴＬは、ＡＣスキャンテストクロックＣＬＫを生成するクロック生成回路ＴＣＧおよびキャプチャイネーブル回路ＣＡＰＴ＿ＥＮＢを有する。クロック生成回路ＴＣＧは端子Ｔ０からＡＣスキャンテストクロックＣＬＫを出力する。キャプチャイネーブル回路ＣＡＰＴ＿ＥＮＢは、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥおよびキャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃを出力する。
【００７４】
テスト制御レジスタＴＤＲはＤ型フリップフロップＦＦＲ０ＮおよびＤ型フリップフロップＦＦＲ１Ｎを有し、各々のフリップフロップからリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎを出力する。テスト制御レジスタＴＤＲは、さらに、クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃを出力するＤ型フリップフロップＦＦｃｌを有する。
【００７５】
実施の形態２に係る半導体装置ＬＳＩにおけるキャプチャイネーブル回路ＣＡＰＴ＿ＥＮＢは、このクロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃに応答してキャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃを生成する。
【００７６】
キャプチャイネーブル回路ＣＡＰＴ＿ＥＮＢは、入力されたスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥの反転論理値およびＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮのアンド処理を行うアンド回路ＡＮＤ２２と、アンド回路ＡＮＤ２２の出力とクロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃの反転論理値のアンド処理を行いキャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃを出力するアンド回路ＡＮＤ２３とを有する。
【００７７】
機能ブロックＩＰは、非同期パスで互いに接続されているものも含むクロックドメインＣＤ＿Ｎを有する。各クロックドメインＣＤ＿Ｎはクロック制御回路ＬＣＳＣ、クロックゲーティング回路ＧＣＫ、および故障検出フリップフロップＦＦ２３を有する。
【００７８】
クロック制御回路ＬＣＳＣは、ＡＣスキャンテストクロックＣＬＫの２つのクロックパルスに対応させて、ドメインテストクロックＧＣＬＫにクロックパルスを生成するか否かを決定し出力する。
【００７９】
フリップフロップＦＦ２１のデータ入力端子にはスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥが入力され、ＡＣスキャンテストクロックＣＬＫの立上りエッジに同期して信号ａを出力する。なお、フリップフロップＦＦ２１はＤ型フリップフロップである。ナンド回路ＮＡＮＤ２１は、信号ａおよびリリースクロック制御信号Ｓ０＿ＣＤ＿０のナンド処理結果を信号ｃとして出力する。
【００８０】
ナンド回路ＮＡＮＤ２２は、信号ａの反転論理値およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０のナンド処理結果を信号ｄとして出力する。ナンド回路ＮＡＮＤ２３は、信号ｂ（キャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃ）、信号ｃ、および信号ｄのナンド処理結果を信号ｓｔｐ＿ｎとして出力する。
【００８１】
クロックゲーティング回路ＧＣＫは、ＡＣスキャンテストモード時に、クロック制御回路ＬＣＳＣの出力信号ｓｔｐ＿ｎに基づきドメインテストクロックＧＣＬＫの生成を制御する。
【００８２】
オア回路ＯＲ２１は、ロウレベル”０”に設定された一方の入力と信号ｓｔｐ＿ｎのオア処理を行い、ラッチ回路Ｌａｔｃｈ２１へ出力する。ラッチ回路Ｌａｔｃｈ２１はＡＣスキャンテストクロックＣＬＫのロウレベルにてオア回路ＯＲ２１の出力を取り込み、信号ｅとして出力する。アンド回路ＡＮＤ２１は、信号ｅおよびＡＣスキャンテストクロックＣＬＫのアンド処理結果をドメインテストクロックＧＣＬＫとして出力する。
【００８３】
なお、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをロウレベルに設定することにより半導体装置ＬＳＩがＡＣスキャンテストモード以外のモードに設定されている場合、クロックゲーティング回路ＧＣＫのオア回路ＯＲ２１へ入力する信号ｓｔｐ＿ｎはハイレベル”１”に設定される。この設定により、ＡＣスキャンテストモード以外のモード時には故障検出フリップフロップＦＦ２３へのドメインテストクロックＧＣＬＫが常に供給される。
【００８４】
図９を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの機能を説明する。
【００８５】
ＴＤＲ設定とは、例えば、クロックドメインＣＤ＿０のクロック制御回路ＬＣＳＣへ出力するリリースクロック制御信号Ｓ０＿ＣＤ＿０、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０、およびクロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃの値の組み合わせである。
【００８６】
図９において、ＴＤＲ設定がクロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝０の場合、リリースクロックおよびキャプチャクロックの生成は図２と同様となる。それに対し、クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝１の場合、リリースクロック制御信号Ｓ０＿ＣＤ＿０およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらず、ドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックが生成される。
【００８７】
図１０を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【００８８】
図１０は、クロックドメインＣＤ＿０に対するテスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝１、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１と設定した場合のタイミング図である。
【００８９】
ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをハイレベル”１”に設定し半導体装置ＬＳＩをＡＣスキャンテストモードに設定する。半導体装置ＬＳＩは、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがロウレベル”０”の期間はキャプチャ期間、ハイレベル”１”の期間はシフト期間に設定される。シフト期間１およびシフト期間２における故障検出フリップフロップＦＦ２３の動作は実施の形態１と同様である。
【００９０】
シフト期間１では、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮ＝１、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥ＝１と設定され、図８のクロック制御回路ＬＣＳＣにおいて、キャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃはロウレベル”０”、信号ｓｔｐ＿ｎはハイレベル”１”となる。その結果、２つのクロックパルスを有するＡＣスキャンテストクロックＣＬＫは、そのままドメインテストクロックＧＣＬＫとして出力される。
【００９１】
シフト期間１におけるドメインテストクロックＧＣＬＫの生成は、各クロックドメインＣＤ＿Ｎに対して個別に設定されるリリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎの値に依存しない。従って、シフト期間１における故障検出フリップフロップＦＦ２３に対するシフト動作（テストパターンの設定、テスト結果の読出し）は、各クロックドメインＣＤ＿Ｎにおいて同時に行われる。シフト期間１の前に、テスト制御レジスタＴＤＲに含まれるフリップフロップＦＦＲ００からフリップフロップＦＦＲｎ−１へ所望の値を事前に設定しておく。
【００９２】
以下、図８および図１０を参照して、キャプチャ期間１におけるクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【００９３】
時刻ｔ０にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”からロウレベル”０”に変化すると、フリップフロップＦＦ２１にはロウレベル”０”が入力される。
【００９４】
時刻ｔ１のＡＣスキャンテストクロックＣＬＫの最初のクロックパルスの立上りエッジに同期して、フリップフロップＦＦ２１の出力信号ａはハイレベル”１”からロウレベル”０”に変化する。リリースクロック制御信号Ｓ０＿ＣＤ＿０＝１であるから、信号ａの変化に応答してナンド回路ＮＡＮＤ２１の出力信号ｃはハイレベル”１”に変化する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１であるから、信号ａの変化に応答してナンド回路ＮＡＮＤ２２の出力信号ｄはロウレベル”０”に変化する。
【００９５】
信号ｂ、信号ｃ、および信号ｄのうち、信号ｄがロウレベル”０”のため、ナンド回路ＮＡＮＤ２３の出力信号ｓｔｐ＿ｎはハイレベル”１”を維持する。
【００９６】
クロックゲーティング回路ＧＣＫのラッチ回路Ｌａｔｃｈ２１は、キャプチャ期間１において信号ｓｔｐ＿ｎのハイレベル”１”を保持し、アンド回路ＡＮＤ２１の一方の入力にハイレベル”１”の信号ｅを印加する。この結果、アンド回路ＡＮＤ２１の他方の入力に印加されるＡＣスキャンテストクロックＣＬＫはドメインテストクロックＧＣＬＫとして出力される。つまり、ＡＣスキャンテストクロックＣＬＫの２つのクロックパルスに対応して、ドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックが生成される。
【００９７】
図１１を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【００９８】
図１１は、クロックドメインＣＤ＿０に対するテスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝０、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０と設定した場合のタイミング図である。
【００９９】
時刻ｔ０にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”からロウレベル”０”に変化すると、フリップフロップＦＦ２１にはロウレベル”０”が入力される。
【０１００】
時刻ｔ１のＡＣスキャンテストクロックＣＬＫの最初のクロックパルス立上りエッジに同期して、フリップフロップＦＦ２１の出力信号ａはハイレベル”１”からロウレベル”０”に変化する。リリースクロック制御信号Ｓ０＿ＣＤ＿０＝０であるから、信号ａの変化によらずナンド回路ＮＡＮＤ２１の出力信号ｃはハイレベル”１”を維持する。同様に、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０であるから、信号ａの変化によらずナンド回路ＮＡＮＤ２２の出力信号ｄもハイレベル”１”を維持する。
【０１０１】
信号ｂ、信号ｃ、および信号ｄのいずれもハイレベル”１”のため、ナンド回路ＮＡＮＤ２３の出力信号ｓｔｐ＿ｎはロウレベル”０”を維持する。
【０１０２】
クロックゲーティング回路ＧＣＫのラッチ回路Ｌａｔｃｈ２１は、キャプチャ期間１において信号ｓｔｐ＿ｎのロウレベル”０”を保持し、アンド回路ＡＮＤ２１の一方の入力にロウレベル”０”の信号ｅを印加する。この結果、アンド回路ＡＮＤ２１の他方の入力に印加されるＡＣスキャンテストクロックＣＬＫは信号ｅでマスクされ、ドメインテストクロックＧＣＬＫにはリリースクロックおよびキャプチャクロックは生成されない。
【０１０３】
図１２を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【０１０４】
図１２は、クロックドメインＣＤ＿０に対するテスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝１、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０と設定した場合のタイミング図である。
【０１０５】
時刻ｔ０にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”からロウレベル”０”に変化すると、フリップフロップＦＦ２１にはロウレベル”０”が入力される。
【０１０６】
時刻ｔ１のＡＣスキャンテストクロックＣＬＫの最初のクロックパルスの立上りエッジに同期して、フリップフロップＦＦ２１の出力信号ａはハイレベル”１”からロウレベル”０”に変化する。リリースクロック制御信号Ｓ０＿ＣＤ＿０＝１であるから、信号ａの変化に応答してナンド回路ＮＡＮＤ２１の出力信号ｃはロウレベル”０”からハイレベル”１”に変化する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝０であるから、信号ａの変化によらずナンド回路ＮＡＮＤ２２の出力信号ｄはハイレベル”１”を維持する。
【０１０７】
信号ｃがハイレベル”１”に変化するため、ナンド回路ＮＡＮＤ２３の出力信号ｓｔｐ＿ｎはロウレベル”０”に変化する。
【０１０８】
クロックゲーティング回路ＧＣＫのラッチ回路Ｌａｔｃｈ２１は、時刻ｔ１から時刻ｔ２のＡＣスキャンテストクロックＣＬＫの最初の立下りエッジの期間、出力信号ｅのハイレベル”１”を保持する。その結果、時刻ｔ１から時刻ｔ２の期間、ドメインテストクロックＧＣＬＫにリリースクロックが生成される。
【０１０９】
時刻ｔ２にＡＣスキャンテストクロックＣＬＫがロウレベル”０”に変化すると、ラッチ回路Ｌａｔｃｈ２１は信号ｓｔｐ＿ｎのロウレベル”０”を取り込み、出力信号ｅをロウレベル”０”に変化させる。その結果、時刻ｔ３から時刻ｔ４の期間、ドメインテストクロックＧＣＬＫにキャプチャクロックは生成されない。
【０１１０】
図１３を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【０１１１】
図１３は、クロックドメインＣＤ＿０に対するテスト制御レジスタＴＤＲをリリースクロック制御信号Ｓ０＿ＣＤ＿０＝０、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１と設定した場合のタイミング図である。
【０１１２】
時刻ｔ０にスキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥがハイレベル”１”からロウレベル”０”に変化すると、フリップフロップＦＦ２１にはロウレベル”０”が入力される。
【０１１３】
時刻ｔ１のＡＣスキャンテストクロックＣＬＫの最初のクロックパルスの立上りエッジに同期して、フリップフロップＦＦ２１の出力信号ａはハイレベル”１”からロウレベル”０”に変化する。リリースクロック制御信号Ｓ０＿ＣＤ＿０＝０であるから、信号ａの変化によらずナンド回路ＮＡＮＤ２１の出力信号ｃはハイレベル”１”を維持する。一方、キャプチャクロック制御信号Ｓ１＿ＣＤ＿０＝１であるから、信号ａの変化に応答してナンド回路ＮＡＮＤ２２の出力信号ｄはハイレベル”１”からロウレベル”０”に変化する。
【０１１４】
信号ｄがロウレベル”０”に変化するため、ナンド回路ＮＡＮＤ２３の出力信号ｓｔｐ＿ｎはハイレベル”１”に変化する。
【０１１５】
時刻ｔ１から時刻ｔ２の期間、クロックゲーティング回路ＧＣＫのラッチ回路Ｌａｔｃｈ２１はロウレベル”０”を保持し、信号ｅはロウレベル”０”となる。その結果、時刻ｔ１から時刻ｔ２の期間、ドメインテストクロックＧＣＬＫにリリースクロックは生成されない。
【０１１６】
時刻ｔ２にＡＣスキャンテストクロックＣＬＫがロウレベル”０”に変化すると、ラッチ回路Ｌａｔｃｈ２１は信号ｓｔｐ＿ｎのハイレベル”１”を取り込み、出力信号ｅをハイレベル”１”に変化させる。その結果、時刻ｔ３から時刻ｔ４の期間、ドメインテストクロックＧＣＬＫにキャプチャクロックが生成される。
【０１１７】
図１４を参照して、実施の形態２に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【０１１８】
図１０から図１３のタイミング図は、クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝０と設定していた場合におけるクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を示すものである。
【０１１９】
これに対し、図１４は、クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝１と設定した場合のタイミング図である。クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝１と設定することにより、全てのクロックドメインＣＤ＿Ｎにおいて、リリースクロック制御信号Ｓ０＿ＣＤ＿Ｎおよびキャプチャクロック制御信号Ｓ１＿ＣＤ＿Ｎの値によらず、ドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックを生成することが可能となる。
【０１２０】
図１４および図８を参照して、クロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。
【０１２１】
図８のキャプチャイネーブル回路ＣＡＰＴ＿ＥＮＢは、ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮ＝１に設定されている場合、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥ、及び、クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃの設定値に基づきキャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃの値が決定される。
【０１２２】
クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝１と設定すると、キャプチャイネーブル信号ａｃ＿ｃａｐｔ＿ｌｃｓｃ（信号ｂ）はロウレベル”０”となる。この結果、ＡＣスキャンテストモードの期間、クロック制御回路ＬＣＳＣの信号ｓｔｐ＿ｎはハイレベル”１”を維持し、クロックゲーティング回路ＧＣＫはドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックを生成する。
【０１２３】
クロック制御キャンセル信号ｃａｎｃｅｌ＿ｌｃｓｃ＝１と設定すると、ドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックは、全クロックドメインＣＤ＿Ｎにおいて生成される。
【０１２４】
図１４は、リリースクロック制御信号Ｓ０＿ＣＤ＿０およびキャプチャクロック制御信号Ｓ１＿ＣＤ＿０の値によらず、ＡＣスキャンテストクロックＣＬＫと同じ波形のドメインテストクロックＧＣＬＫが生成されることを示す。
【０１２５】
＜実施の形態３＞
図１５を参照して、実施の形態３に係る半導体装置ＬＳＩの構成を説明する。
【０１２６】
半導体装置ＬＳＩはテスト制御回路ＴＣＴＬ、テスト制御レジスタＴＤＲ、および機能ブロックＩＰを有する。
【０１２７】
テスト制御回路ＴＣＴＬは、ＡＣスキャンテストクロックＣＬＫを生成するクロック生成回路ＴＣＧおよびクロック停止制御信号ｃｓｔｏｐ＿Ｎを生成するキャプチャ停止回路ＣＡＰＴ＿ＤＩＳを有する。
【０１２８】
テスト制御レジスタＴＤＲは、フリップフロップＦＦＲ０〜フリップフロップＦＦＲｎ−１を有する。各フリップフロップＦＦＲＮ（Ｎ＝０〜ｎ−１）はクロック停止コア選択信号ｃｓｅｌ＿Ｎを出力する。
【０１２９】
キャプチャ停止回路ＣＡＰＴ＿ＤＩＳは、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥの反転論理値とＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮとのアンド処理結果を出力するアンド回路ＡＮＤ３４、およびアンド回路ＡＮＤ３４の出力とクロック停止コア選択信号ｃｓｅｌ＿Ｎとのナンド処理結果をクロック停止制御信号ｃｓｔｏｐ＿Ｎとして出力するｎ個のナンド回路ＮＡＮＤ３２を有する。
【０１３０】
機能ブロックＩＰは、クロックドメインＣＤ＿０〜クロックドメインＣＤ＿ｎ−１を有する。
【０１３１】
各クロックドメインＣＤ＿Ｎは、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣとクロック停止制御信号ｃｓｔｏｐ＿Ｎとのアンド処理結果をスキャンクロックイネーブル信号ＳＭＣとして出力するアンド回路ＡＮＤ３１、およびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮとクロック停止制御信号ｃｓｔｏｐ＿Ｎとのアンド処理結果をクロックイネーブル信号ＣＥＮとして出力するアンド回路ＡＮＤ３２を有するクロック制御回路ＬＣＳＣを備える。
【０１３２】
ここで、ユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮは、ユーザ論理機能のクロック制御信号であり、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣは、スキャンテスト時のクロック制御信号である。ユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮおよびスキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣは、各クロックドメインＣＤ＿Ｎへ共通に供給される場合と、各クロックドメインで異なる信号の場合がある。
【０１３３】
スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮは、ともにクロックゲーティング回路ＧＣＫの動作を制御する信号であるが、前者（ＳＭＣ）はスキャンテスト用途、後者（ＣＥＮ）はユーザ機能用途に用意されている。
【０１３４】
各クロックドメインＣＤ＿Ｎは、さらに、スキャンクロックイネーブル信号ＳＭＣとクロックイネーブル信号ＣＥＮとのオア処理を行うオア回路ＯＲ３１、オア回路ＯＲ３１の出力をＡＣスキャンテストクロックＣＬＫのロウレベル”０”で取り込み保持するラッチ回路Ｌａｔｃｈ３１、およびラッチ回路Ｌａｔｃｈ３１の出力信号ａとＡＣスキャンテストクロックＣＬＫとのアンド処理結果をドメインテストクロックＧＣＬＫとして出力するアンド回路ＡＮＤ３３を有するクロックゲーティング回路ＧＣＫを備える。
【０１３５】
クロックゲーティング回路ＧＣＫは、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮに基づき、ドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成を制御する。
【０１３６】
各クロックドメインＣＤ＿Ｎは、さらに、ドメインテストクロックＧＣＬＫに同期してデータのリリースやキャプチャを行う故障検出フリップフロップＦＦ３１を有する。
【０１３７】
図１６を参照して、実施の形態３に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの機能を説明する。
【０１３８】
クロック停止コア選択信号ｃｓｅｌ＿Ｎがロウレベル”０”の場合、ドメインテストクロックＧＣＬＫにおけるリリースクロックおよびキャプチャクロックの生成は、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣおよびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮの値に基づき決定される。一方、クロック停止コア選択信号ｃｓｅｌ＿Ｎがハイレベル”１”の場合、そのクロックドメインＣＤ＿ＮのドメインテストクロックＧＣＬＫにおけるリリースクロックおよびキャプチャクロックは生成されない。
【０１３９】
図１７を参照して、実施の形態３に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。図１７は、クロック停止コア選択信号ｃｓｅｌ＿Ｎをハイレベル”１”に設定した場合の各回路の動作を示す。
【０１４０】
ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをハイレベル”１”、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”と設定されるキャプチャ期間１（時刻ｔ０から時刻ｔ５）において、キャプチャ停止回路ＣＡＰＴ＿ＤＩＳは、クロック停止コア選択信号ｃｓｅｌ＿Ｎのハイレベル”１”を反転させたロウレベル”０”を有するクロック停止制御信号ｃｓｔｏｐ＿Ｎを出力する。
【０１４１】
この結果、クロック制御回路ＬＣＳＣは、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣおよびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮの値によらず、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮをロウレベル”０”とする。
【０１４２】
時刻ｔ１および時刻ｔ３において、ラッチ回路Ｌａｔｃｈ３１の出力信号ａはロウレベル”０”を維持するため、アンド回路ＡＮＤ３３はＡＣスキャンテストクロックＣＬＫの２つのクロックパルスをマスクしたドメインテストクロックＧＣＬＫを生成する。つまり、ドメインテストクロックＧＣＬＫにはリリースクロックおよびキャプチャクロックは生成されない。
【０１４３】
図１８を参照して、実施の形態３に係るクロック制御回路ＬＣＳＣおよびクロックゲーティング回路ＧＣＫの動作を説明する。図１８は、クロック停止コア選択信号ｃｓｅｌ＿Ｎをロウレベル”０”に設定した場合の各回路の動作を示す。
【０１４４】
時刻ｔ０から時刻ｔ５のキャプチャ期間１において、キャプチャ停止回路ＣＡＰＴ＿ＤＩＳは、クロック停止コア選択信号ｃｓｅｌ＿Ｎのロウレベル”０”を反転させたハイレベル”１”を有するクロック停止制御信号ｃｓｔｏｐ＿Ｎを出力する。
【０１４５】
この結果、クロック制御回路ＬＣＳＣは、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣおよびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮと同じ論理レベルを有するスキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮを出力する。
【０１４６】
時刻ｔ１および時刻ｔ３において、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮの論理レベルが所望の値の組み合わせとなるようにスキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣおよびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮを制御することで、クロックゲーティング回路ＧＣＫはドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成を制御する。
【０１４７】
実施の形態３の構成によれば、ロウレベル”０”のクロック停止コア選択信号ｃｓｅｌ＿Ｎを設定された各クロックドメインＣＤ＿Ｎにおいて、ドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成は、スキャンクロック制御信号Ｏｒｉｇｉｎａｌ  ＳＭＣおよびユーザクロック制御信号Ｏｒｉｇｉｎａｌ  ＣＥＮにより制御される。一方、クロック停止コア選択信号ｃｓｅｌ＿Ｎをハイレベル”１”と設定したクロックドメインでは、リリースクロックおよびキャプチャクロックの生成は禁止される。
【０１４８】
従って、クロックドメイン間に非同期転送パスが形成されている場合、データ送出側のクロックドメインのクロック停止コア選択信号ｃｓｅｌ＿Ｎの値をハイレベル”１”と設定することにより、データ受信側のクロックドメインは非同期転送パスからのデータをマスクすることが出来る。
【０１４９】
また、ＡＣスキャンテスト時における半導体装置ＬＳＩの消費電力が問題となる場合、クロック停止コア選択信号ｃｓｅｌ＿Ｎで選択したクロックドメインにおけるリリースクロックおよびキャプチャクロックの生成を禁止することにより、動作電圧範囲の悪化を抑制することが出来る。
【０１５０】
＜実施の形態３の変形例＞
図１９を参照して、実施の形態３の変形例に係る半導体装置ＬＳＩの構成を説明する。
【０１５１】
図１９に示す半導体装置ＬＳＩの構成は、図１５に示す実施の形態３に係る半導体装置ＬＳＩにおいて、クロックゲーティング回路ＧＣＫにアンド回路ＡＮＤ３４を追加し、ドメインテストクロックＧＣＬＫの停止をクロックゲーティング回路ＧＣＫへ入力される信号ｃｓｔｏｐ＿Ｎで制御する構成に変更したものである。テスト制御回路ＴＣＴＬおよびテスト制御レジスタＴＤＲの構成は、図１５の対応する構成と同一である。
【０１５２】
スキャンテスト用途のスキャンクロックイネーブル信号ＳＭＣおよびユーザ機能用途のクロックイネーブル信号ＣＥＮは、各クロックドメインＣＤ＿Ｎへ共通に供給される場合と、各クロックドメインで異なる信号の場合がある。
【０１５３】
クロックゲーティング回路ＧＣＫは、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮのオア処理を行うオア回路ＯＲ３１、オア回路ＯＲ３１の出力とクロック停止制御信号ｃｓｔｏｐ＿Ｎのアンド処理を行うアンド回路ＡＮＤ３４、アンド回路ＡＮＤ３４の出力をＡＣスキャンテストクロックＣＬＫのロウレベル”０”で取り込み信号ａを出力するラッチ回路Ｌａｔｃｈ３１、および信号ａとＡＣスキャンテストクロックＣＬＫとのアンド処理を行うアンド回路ＡＮＤ３３とを有する。
【０１５４】
クロック停止コア選択信号ｃｓｅｌ＿Ｎに基づきクロック停止制御信号ｃｓｔｏｐ＿Ｎを生成する構成は図１５の対応する構成と同一であり、説明は省略する。
【０１５５】
図２０を参照して、実施の形態３の変形例に係るクロックゲーティング回路ＧＣＫの機能を説明する
クロック停止コア選択信号ｃｓｅｌ＿Ｎがロウレベル”０”の場合、ドメインテストクロックＧＣＬＫにおけるリリースクロックおよびキャプチャクロックの生成は、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮの値に基づき決定される。一方、クロック停止コア選択信号ｃｓｅｌ＿Ｎがハイレベル”１”の場合、そのクロックドメインＣＤ＿ＮのドメインテストクロックＧＣＬＫにおけるリリースクロックおよびキャプチャクロックは生成されない。
【０１５６】
図２１を参照して、実施の形態３の変形例に係るクロックゲーティング回路ＧＣＫの動作を説明する。図２１は、クロック停止コア選択信号ｃｓｅｌ＿Ｎをハイレベル”１”に設定した場合の各回路の動作を示す。
【０１５７】
ＡＣスキャンテストモード信号ＡＣ＿ＳＣＡＮをハイレベル”１”、スキャンイネーブル信号ＳＣＡＮ＿ＥＮＡＢＬＥをロウレベル”０”と設定されるキャプチャ期間１（時刻ｔ０から時刻ｔ５）において、キャプチャ停止回路ＣＡＰＴ＿ＤＩＳは、クロック停止コア選択信号ｃｓｅｌ＿Ｎのハイレベル”１”を反転させたロウレベル”０”を有するクロック停止制御信号ｃｓｔｏｐ＿Ｎを出力する。
【０１５８】
この結果、クロックゲーティング回路ＧＣＫのアンド回路ＡＮＤ３４は、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮの値によらずロウレベル”０”を出力する。
【０１５９】
時刻ｔ０から時刻ｔ５のキャプチャ期間１に亘り、ラッチ回路Ｌａｔｃｈ３１は出力信号ａをロウレベル”０”を維持するため、アンド回路ＡＮＤ３３はドメインテストクロックＧＣＬＫにリリースクロックおよびキャプチャクロックを生成しない。
【０１６０】
図２２を参照して、実施の形態３の変形例に係るクロック停止コア選択信号ｃｓｅｌ＿Ｎをロウレベル”０”に設定した場合のクロックゲーティング回路ＧＣＫの動作を説明する。
【０１６１】
時刻ｔ０から時刻ｔ５のキャプチャ期間１において、キャプチャ停止回路ＣＡＰＴ＿ＤＩＳは、クロック停止コア選択信号ｃｓｅｌ＿Ｎのロウレベル”０”を反転させたハイレベル”１”を有するクロック停止制御信号ｃｓｔｏｐ＿Ｎを出力する。この結果、アンド回路ＡＮＤ３４の出力は、オア回路ＯＲ３１に入力されるスキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮの値により決定される。
【０１６２】
時刻ｔ１および時刻ｔ３において、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮの論理レベルを所望の値の組み合わせとなるように制御することで、クロックゲーティング回路ＧＣＫはドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成を制御する。
【０１６３】
実施の形態３の変形例の構成によれば、ロウレベル”０”のクロック停止コア選択信号ｃｓｅｌ＿Ｎを設定された各クロックドメインＣＤ＿Ｎにおいて、ドメインテストクロックＧＣＬＫのリリースクロックおよびキャプチャクロックの生成は、スキャンクロックイネーブル信号ＳＭＣおよびクロックイネーブル信号ＣＥＮにより制御される。一方、クロック停止コア選択信号ｃｓｅｌ＿Ｎをハイレベル”１”と設定したクロックドメインでは、リリースクロックおよびキャプチャクロックの生成は禁止される。
【０１６４】
従って、クロックドメイン間に非同期転送パスが形成されている場合、データ送出側のクロックドメインのクロック停止コア選択信号ｃｓｅｌ＿Ｎの値をハイレベル”１”と設定することにより、データ受信側のクロックドメインは非同期転送パスからのデータをマスクすることが出来る。
【０１６５】
また、ＡＣスキャンテスト時における半導体装置ＬＳＩの消費電力が問題となる場合、クロック停止コア選択信号ｃｓｅｌ＿Ｎで選択したクロックドメインにおけるリリースクロックおよびキャプチャクロックの生成を禁止することにより、動作電圧範囲の悪化を抑制することが出来る。
【０１６６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１６７】
ＬＳＩ  半導体装置、ＩＰ  機能ブロック、ＴＣＴＬ  テスト制御回路、ＴＣＧ  クロック生成回路、ＣＬＫ  ＡＣスキャンテストクロック、ＡＣ＿ＳＣＡＮ  ＡＣスキャンテストモード信号、ＳＣＡＮ＿ＥＮＡＢＬＥ  スキャンイネーブル信号、ＴＤＲ  テスト制御レジスタ、ＦＦＲ００，ＦＦＲ１０  フリップフロップ、ＣＤ＿０，ＣＤ＿１，ＣＤ＿ｎ−１  クロックドメイン、ＬＣＳＣ  クロック制御回路、ＧＣＬＫ  ドメインテストクロック、ＧＣＫ  クロックゲーティング回路、Ｓ０＿ＣＤ＿０  リリースクロック制御信号、Ｓ１＿ＣＤ＿０  キャプチャクロック制御信号、ＣＡＰＴ＿ＥＮＢ  キャプチャイネーブル回路、ＦＦｃｌ  フリップフロップ、ａｃ＿ｃａｐｔ＿ｌｃｓｃ  キャプチャイネーブル信号、ｃａｎｃｅｌ＿ｌｃｓｃ  クロック制御キャンセル信号、ＣＡＰＴ＿ＤＩＳ  キャプチャ停止回路、ＦＦＲ０，ＦＦＲｎ−１  フリップフロップ、ｃｓｅｌ＿Ｎ  クロック停止コア選択信号、ｃｓｔｏｐ＿０，ｃｓｔｏｐ＿１  クロック停止制御信号、Ｏｒｉｇｉｎａｌ  ＳＭＣ  スキャンクロック制御信号、Ｏｒｉｇｉｎａｌ  ＣＥＮ  ユーザクロック制御信号、ＳＭＣ  スキャンクロックイネーブル信号、ＣＥＮ  クロックイネーブル信号、ｃｓｅｌ＿０，ｃｓｅｌ＿ｎ−１  クロック停止コア選択信号、ＡＳＰ  非同期回路、ＦＦ１１，ＦＦ１２，ＦＦ１３，ＦＦ２１，ＦＦ２３，ＦＦ３１  フリップフロップ、ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｓｔｐ＿ｎ  信号。
【図１】
2013156073.tif 000003
【図２】
2013156073.tif 000004
【図３】
2013156073.tif 000005
【図４】
2013156073.tif 000006
【図５】
2013156073.tif 000007
【図６】
2013156073.tif 000008
【図７】
2013156073.tif 000009
【図８】
2013156073.tif 000010
【図９】
2013156073.tif 000011
【図１０】
2013156073.tif 000012
【図１１】
2013156073.tif 000013
【図１２】
2013156073.tif 000014
【図１３】
2013156073.tif 000015
【図１４】
2013156073.tif 000016
【図１５】
2013156073.tif 000017
【図１６】
2013156073.tif 000018
【図１７】
2013156073.tif 000019
【図１８】
2013156073.tif 000020
【図１９】
2013156073.tif 000021
【図２０】
2013156073.tif 000022
【図２１】
2013156073.tif 000023
【図２２】
2013156073.tif 000024