(57)【要約】【課題】故障検出率の向上を図ることが可能な半導体装置を提供する。【解決手段】半導体装置１００は、回路ブロックＬＧＣ１と、信号線ＣＬを介して回路ブロックＬＧＣ１から信号が供給される回路ブロックＬＧＣ２と、マルチサイクルテストのキャプチャ動作において、信号線ＣＬ２における信号の論理値を遷移させる遷移期間を特定する遷移制御部２００とを備える。【選択図】図２
2020143896.tif 000002
【特許請求の範囲】
【請求項１】
第１回路ブロックと、
信号線を介して前記第１回路ブロックから信号が供給される第２回路ブロックと、
マルチサイクルテストのキャプチャ動作期間に応じた遷移期間を特定する遷移制御部と、
前記遷移制御部から出力される信号を用いて、前記遷移期間中に前記信号線における信号の論理値を遷移させる遷移挿入回路と、
を備える、半導体装置。
【請求項２】
請求項１に記載の半導体装置において、
前記遷移制御部は、
前記遷移期間を特定する遷移期間調整器と、
入力されるクロック信号の変化に応じて、前記信号線における信号の論理値を遷移させた信号を出力する遷移発生器と、
を備え、
前記遷移期間調整器によって特定された前記遷移期間において、前記遷移発生器から出力された信号を用いて、前記信号線の信号の論理値を、前記遷移挿入回路が遷移させる、半導体装置。
【請求項３】
請求項２に記載の半導体装置において、
前記信号線は、前記第１回路ブロックから出力される信号を伝達する第１信号線と、前記第２回路ブロックに入力される信号を伝達する第２信号線とを備え、
前記遷移挿入回路は、前記第１信号線と前記第２信号線との間に接続され、
前記遷移挿入回路は、前記特定された遷移期間において、前記遷移発生器からの信号に基づいて、前記第２信号線における信号の論理値を遷移させる信号を入力する、半導体装置。
【請求項４】
請求項３に記載の半導体装置において、
前記遷移制御部は、前記第２信号線における信号の論理値を遷移させる信号を、第３信号線に出力し、
前記遷移挿入回路は、前記第１信号線、または前記第３信号線を選択し、
前記遷移挿入回路は、前記遷移期間において、前記第３信号線を前記第２信号線に接続する、半導体装置。
【請求項５】
請求項３に記載の半導体装置において、
前記遷移挿入回路は、前記第１信号線、または論理値の遷移確率が高い第４信号線を選択し、
前記遷移挿入回路は、前記遷移期間において、前記第４信号線を前記第２信号線に接続する、半導体装置。
【請求項６】
請求項５に記載の半導体装置において、
出力がインバータ回路を介して入力に供給される第１フリップフロップ回路を備え、前記第４信号線は、前記第１フリップフロップ回路の出力端子に接続されている、半導体装置。
【請求項７】
回路ブロックにおける複数の信号線から、マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が低い信号を伝達する信号線を識別する識別工程と、
前記識別工程で識別された信号線により伝達される信号の論理値を、マルチサイクルテストの前記キャプチャ動作期間に応じた遷移期間中に遷移させる遷移挿入回路を、前記回路ブロックに挿入する挿入工程と、
を備える、半導体装置の設計方法。
【請求項８】
請求項７に記載の半導体装置の設計方法において、
前記識別工程においては、所定の解析を用いて、前記マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が低い信号線を識別する第１識別工程を備える、半導体装置の設計方法。
【請求項９】
請求項８に記載の半導体装置の設計方法において、
前記識別工程において、前記所定の解析を用いて、前記複数の信号線から、前記マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が高い信号線を識別する第２識別工程を備える、半導体装置の設計方法。
【請求項１０】
請求項９に記載の半導体装置の設計方法において、
前記挿入工程で、前記第２識別工程で識別した信号線と、前記第１識別工程で識別した信号線とを接続する前記遷移挿入回路を挿入する、半導体装置の設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置および半導体装置の設計方法に関し、例えば自己診断回路を内蔵し、自動車に搭載される半導体装置およびその設計方法に関する。
【背景技術】
【０００２】
国際規格のＩＳＯ２６２６２の要求として、車載される半導体装置には機能安全機構の搭載が必須となっている。機能安全機構の一つとして、電源が投入されたときに、自己診断を行う、Ｐｏｗｅｒ−Ｏｎ−Ｓｅｌｆ−Ｔｅｓｔ（ＰＯＳＴ）がある。ＰＯＳＴは、規定されている故障検出率、テスト時間および消費電力の制約を満たす必要があるが、特にテスト時間の制約が厳しく、テスト時間の削減が課題となっている。
【０００３】
ＰＯＳＴを実行する自己診断回路を半導体装置に実装する場合、できるだけ少ないテストデータ量でテストを実行することが要求される。実用的な実装方法としては、半導体装置にＬＢＩＳＴ（Ｌｏｇｉｃ  Ｂｕｉｌｔ  Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ）を内蔵させる方法が挙げられる。ＬＢＩＳＴでは、半導体装置に乱数パタン生成器を内蔵させ、乱数パタン生成器によって生成されたテストデータをスキャンチェインに供給する。このスキャンチェインから、半導体装置内の回路ブロックにテストデータが供給され、スキャンテストが実施される。テストデータが、乱数パタン生成器によって生成されため、半導体装置に入力されるテストデータ量を少なくすることが可能である。しかしながら、テストデータが、乱数によって生成されるため、故障検出率が上昇し難い。規定の故障検出率を満たすためには、多数のテストデータを乱数パタン生成器によって生成することが要求される。その結果、規定の故障検出率を、規定のテスト時間で達成するのは難しくなる傾向にある。
【０００４】
ＬＢＩＳＴの実行時間を短縮する技術として、マルチサイクルテストが開発されている。特許文献１および非特許文献１には、マルチサイクルテストに関する技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−６２２２２号公報
【非特許文献】
【０００６】
【非特許文献１】Ｓ．Ｗａｎｇ  ｅｔ  ａｌ．，”Ｓｔｒｕｃｔｕｒｅ−Ｂａｓｅｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｓｅｌｅｃｔｉｎｇ  Ｆａｕｌｔ−Ｄｅｔｅｃｔｉｏｎ−Ｓｔｒｅｎｇｔｈｅｎｅｄ  ＦＦ  ｕｎｄｅｒ  Ｍｕｌｔｉ−Ｃｙｃｌｅ  Ｔｅｓｔ  ｗｉｔｈ  Ｓｅｑｕｅｎｔｉａｌ  Ｏｂｓｅｒｖａｔｉｏｎ，”  ＩＥＥＥ  ２５ｔｈ  Ａｓｉａｎ  Ｔｅｓｔ  Ｓｙｍｐｏｓｉｕｍ，  ｐｐ．２０９−２１４，  Ｎｏｖ．２０１６．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
詳細は後述するが、マルチサイクルテストでは、スキャンチェインから回路ブロック（ＦＦから信号を入力し、別のＦＦへ信号を出力する単位回路）にテストデータが供給された後のキャプチャ動作期間において、クロック信号を変化させる（図１６（Ｂ））ことにより、回路ブロックが動作する。これにより、スキャンチェインにテストデータを供給する回数を低減しても、キャプチャ動作期間にクロック信号を変化させることにより、一度のキャプチャ期間中に複数段の回路ブロックが動作するため、テストの実行時間の短縮化を図ることが可能である。しかしながら、キャプチャ動作期間において、クロック信号を変化させることにより、論理値が遷移する信号の遷移確率は低下する傾向にある（図１７）。ここでの遷移確率は、キャプチャ動作期間において、任意のキャプチャ動作サイクルにおける信号線上の信号の論理値が、例えば次のキャプチャ動作サイクルでは変化している確率を示している。すなわち、任意のキャプチャ動作サイクルにおいて、信号線上の信号の論理値が例えば“１”または“０”であった場合、次のキャプチャ動作サイクルでは、信号の論理値が“０”または“１”に変化している確率が、遷移確率である。
【０００８】
キャプチャ動作期間において、遷移確率が低下すると、故障検出率が低くなると言う課題が生じる。特許文献１および非特許文献１には、マルチサイクルテストは記載されているが、遷移確率の低下により生じる課題は認識されていない。
【０００９】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
一実施の形態に係わる半導体装置は、次のとおりである。
【００１１】
半導体装置は、第１回路ブロックと、信号線を介して第１回路ブロックから信号が供給される第２回路ブロックと、マルチサイクルテストのキャプチャ動作において、信号線における信号の論理値を遷移させる遷移期間を特定する遷移制御部とを備える。
【発明の効果】
【００１２】
一実施の形態によれば、故障検出率の向上を図ることが可能な半導体装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】（Ａ）および（Ｂ）は、実施の形態１に係わる半導体装置を説明するための図である。
【図２】実施の形態１に係わる半導体装置の構成を示すブロック図である。
【図３】実施の形態１に係わる半導体装置の動作を示すタイミング図である。
【図４】（Ａ）〜（Ｄ）は、実施の形態１の変形例１に係わる遷移発生器の構成を示すブロック図である。
【図５】（Ａ）〜（Ｃ）は、実施の形態１の変形例２に係わる遷移期間調整器の構成を示すブロック図である。
【図６】（Ａ）〜（Ｃ）は、実施の形態１の変形例３に係わる遷移挿入回路の構成を示すブロック図である。
【図７】実施の形態２に係わる半導体装置の構成を示すブロック図である。
【図８】（Ａ）および（Ｂ）は、実施の形態１および２に係わる半導体装置による効果を説明するための図である。
【図９】実施の形態３に係わる半導体装置の構成を示すブロック図である。
【図１０】実施の形態３の変形例に係わる遷移挿入回路の構成を示すブロック図である。
【図１１】実施の形態４に係わる半導体装置の構成を示す図である。
【図１２】（Ａ）〜（Ｄ）は、実施の形態４に係わる変形例を示すブロック図である。
【図１３】実施の形態５の係わる設計装置の構成を示すブロック図である。
【図１４】実施の形態５に係わる遷移制御論理挿入プログラムによって実行される工程を示すフローチャート図である。
【図１５】（Ａ）および（Ｂ）は、スキャンテストを説明するためのブロック図である。
【図１６】（Ａ）および（Ｂ）は、スキャンテストおよびマルチサイクルテストを説明するためのタイミング図である。
【図１７】課題を説明するための図である。
【発明を実施するための形態】
【００１４】
以下、本発明の各実施の形態について、図面を参照しつつ説明する。なお、開示はあくまでも一例にすぎず、当業者において、発明の主旨を保っての適宜変更について容易に想到し得るものについては、当然に本発明の範囲に含有されるものである。また、図面は説明をより明確にするため、実際の態様に比べ、各部の幅、厚さ、形状等について模式的に表される場合があるが、あくまで一例であって、本発明の解釈を限定するものではない。
【００１５】
また、本明細書と各図において、既出の図に関して前述したものと同様の要素には、同一の符号を付して、詳細な説明を適宜省略することがある。
【００１６】
＜スキャンテスト、マルチサイクルテストおよび課題＞
理解を容易にするために、実施の形態を説明する前にスキャンテスト、マルチサイクルテストおよび課題を、図を用いて説明しておく。
【００１７】
＜＜スキャンテストおよびマルチサイクルテスト＞＞
図１５は、スキャンテストを説明するためのブロック図である。また、図１６は、スキャンテストおよびマルチサイクルテストを説明するためのタイミング図である。
【００１８】
半導体装置に内蔵された回路ブロックである組み合わせ論理回路をテストする手法としてスキャンテストがある。スキャンテストを行うためには、スキャン設計を行う必要がある。スキャン設計では、回路ブロック内に元々存在するフリップフロップ回路（以下、ＦＦ回路と称する）を、スキャンフリップフロップ回路（以下、ＳＦＦ回路と称する）に置換することが行われる。
【００１９】
図１５（Ａ）は、ＳＦＦ回路の一例を示すブロック図である。図１５（Ａ）に示すように、ＳＦＦ回路ＳＦは、マルチプレクサＭＵＸとＦＦ回路ＦＦとを備えている。マルチプレクサＭＵＸの出力端子がＦＦ回路ＦＦの入力端子に接続されている。ＳＦＦ回路ＳＦは、通常動作時に入力データＤが供給される第１入力端子Ｎ１Ｉと、テスト時にテストデータＳＩが供給される第２入力端子Ｎ２Ｉと、スキャンイネーブル信号ＳＥが供給されるイネーブル端子ＮＥＮと、クロック端子ＮＣＫと、出力端子ＮＯＵとを備えている。
【００２０】
ＳＦＦ回路ＳＦのイネーブル端子ＮＥＮに供給されたスキャンイネーブル信号ＳＥが、選択信号としてマルチプレクサＭＵＸに供給される。また、マルチプレクサＭＵＸは、ＳＦＦ回路ＳＦの第１入力端子Ｎ１Ｉおよび第２入力端子Ｎ２Ｉに接続され、スキャンイネーブル信号ＳＥの論理値に従って、入力データＤまたはテストデータＳＩを選択し、選択されたデータをＦＦ回路ＦＦに出力する。すなわち、マルチプレクサＭＵＸは、スキャンイネーブル信号ＳＥに従って、第１入力端子Ｎ１Ｉと出力との間の経路（第１入力端子側経路）または第２入力端子Ｎ２Ｉと出力との間の経路（第２入力端子側経路）を選択して、ＦＦ回路ＦＦに接続する。ＦＦ回路ＦＦは、マルチプレクサＭＵＸから出力されたデータを、クロック端子ＮＣＫに供給されているクロック信号ＣＬＫの変化に同期して、保持し、ＳＦＦ回路ＳＦの出力端子ＮＯＵから出力データＱとして出力する。
【００２１】
図１５（Ｂ）は、スキャン設計された回路ブロックの構成を示すブロック図である。図１５（Ｂ）において、ＳＦ１〜ＳＦ１０は、図１５（Ａ）で説明したＳＦＦ回路である。ＳＦＦ回路ＳＦ１〜ＳＦ１０は、回路ブロックＬＧＣであるテスト対象の組み合わせ論理回路において用いられていたＦＦ回路を、スキャン設計により、ＳＦＦ回路に置換したものである。ＳＦＦ回路ＳＦ１〜ＳＦ１０の第１入力端子Ｎ１Ｉと出力端子ＮＯＵは、回路ブロックＬＧＣに接続されている。一方、ＳＦＦ回路ＳＦ２〜ＳＦ５、ＳＦ７〜ＳＦ１０の第２入力端子Ｎ２Ｉは、前段のＳＦＦ回路ＳＦ１〜ＳＦ５、ＳＦ６〜ＳＦ９の出力端子ＮＯＵに接続されている。また、初段のＳＦＦ回路ＳＦ１およびＳＦ６の第２入力端子Ｎ２Ｉには、テストデータが、スキャン入力データＳＥ−Ｄとして供給されている。さらに、最終段のＳＦＦ回路ＳＦ５、ＳＦ１０の出力端子ＮＯＵからはスキャン出力データＳＥ−Ｑが出力される。
【００２２】
また、ＳＦＦ回路ＳＦ１〜ＳＦ５のクロック端子ＮＣＫは、共通接続され、ＳＦＦ回路ＳＦ６〜ＳＦ１０のクロック端子ＮＣＫも、共通接続され、共通接続されたクロック端子にはクロック信号ＳＥ―ＣＫが供給されている。ＳＦＦ回路ＳＦ１〜ＳＦ１０のイネーブル端子ＮＥＮも共通接続され、共通接続のイネーブル端子には、スキャンイネーブル信号ＳＥ−Ｃが供給されている。
【００２３】
これにより、スキャンイネーブル信号ＳＥ−Ｃによって、ＳＦＦ回路ＳＦ１〜ＳＦ１０が第２入力端子側経路を選択するように指示することにより、ＳＦＦ回路ＳＦ１〜ＳＦ５が直列的に接続されて、１つのシフトレジスタが構成され、ＳＦＦ回路ＳＦ６〜ＳＦ１０が直列的に接続されて、１つのシフトレジスタが構成される。このシフトレジスタが、スキャンチェインである。一方、スキャンイネーブル信号ＳＥ−Ｃによって、ＳＦＦ回路ＳＦ１〜ＳＦ１０が第１入力端子側経路を選択するように指示することにより、ＳＦＦ回路ＳＦ１〜ＳＦ１０は、第１入力端子Ｎ１Ｉと出力端子ＮＯＵを用いて、回路ブロックＬＧＣを構成する通常のフリップフロップ回路として機能することになる。
【００２４】
次に、図１５（Ｂ）および図１６（Ａ）を参照して、スキャンテストの動作を説明する。図１６（Ａ）は、スキャンテスト動作を説明するためのタイミング図である。ここでは、ＳＦＦ回路ＳＦ１〜ＳＦ５によって構成されるスキャンチェインを例として説明する。
【００２５】
スキャンイネーブル信号ＳＥ−Ｃが、ハイレベルの論理値“１”に設定される。これにより、ＳＦＦ回路ＳＦ１〜ＳＦ５におけるマルチプレクサＭＵＸは、第２入力端子側経路を選択する。ＳＦＦ回路ＳＦ１〜ＳＦ５は、第２入力端子Ｎ２Ｉと出力端子ＮＯＵを用いる。クロック信号ＳＥ−ＣＫを論理値“１”、論理値“０”と変化させることにより、ＳＦＦ回路ＳＦ１〜ＳＦ５により構成されたスキャンチェインが図１６（Ａ）における最初のシフトレジスタ動作（以下、スキャンシフトあるいはスキャンシフト動作と呼ぶ）を行う。これにより、スキャン入力データＳＥ−Ｄが、スキャンチェイン内を順次シフトする。スキャン入力データＳＥ−Ｄとして、任意のテストパタンを、例えば半導体装置の外部から供給することにより、任意のテストパタンに対応したデータが、スキャンチェインを構成するＳＦＦ回路ＳＦ１〜ＳＦ５に設定される。スキャンチェインに設定された任意のテストパタンは、ＳＦＦ回路ＳＦ１〜ＳＦ５の出力端子ＮＯＵから出力データＱとして、回路ブロックＬＧＣに供給され、回路ブロックＬＧＣは、任意のテストパタンを入力として動作する。
【００２６】
次に、図１６（Ａ）のように、スキャンイネーブル信号ＳＥ−Ｃが、ロウレベルの論理値“０”に設定される。これにより、ＳＦＦ回路ＳＦ１〜ＳＦ５におけるマルチプレクサＭＵＸは、第１入力端子側経路を選択する。クロック信号ＳＥ−ＣＫを変化させることにより、ＳＦＦ回路ＳＦ１〜ＳＦ５は、回路ブロックＬＧＣが動作することにより生成されたデータを、入力データＤとして第１入力端子Ｎ１Ｉから取り込むように動作する。この取り込む動作が、キャプチャ動作（単にキャプチャとも称する）である。
【００２７】
キャプチャ動作後、スキャンイネーブル信号ＳＥ−Ｃは、再び論理値“１”に設定され、クロック信号ＳＥ−ＣＫの論理値が変化する。これにより、キャプチャ動作で取得したデータが、キャプチャ動作後のスキャンシフト動作により、最終段のＳＦＦ回路ＳＦ５からスキャン出力データＳＥ−Ｑが出力され、テスト結果の観測（アンロード）が行われる。このアンロードと同時に、新たなテストパタンが、スキャン入力データＳＥ−Ｄとして、スキャンチェインの初段ＳＦＦ回路ＳＦ１に供給（ロード）される。スキャンテストにおいては、このような動作が繰り返されて、テストが実行される。ここでは、ＳＦＦ回路ＳＦ１〜ＳＦ５によって構成されたスキャンチェインを例にして説明したが、ＳＦＦ回路ＳＦ６〜ＳＦ１０によって構成されたスキャンチェインも同様な動作を行う。
【００２８】
ここでは、ＳＦＦ回路ＳＦ１〜ＳＦ５によって構成されたスキャンチェインからの出力に基づいて回路ブロックＬＧＣが形成した信号を、同じスキャンチェインがキャプチャする例を示したが、回路ブロックＬＧＣが形成した信号は、ＳＦＦ回路ＳＦ６〜ＳＦ１０によって構成されたスキャンチェインがキャプチャしてもよい。
【００２９】
図１６（Ｂ）は、マルチサイクルテストの動作を示すタイミング図である。前記したスキャンテストとの相異点は、１回のキャプチャ動作期間において、クロック信号ＳＥ−ＣＫが複数回変化していることである。クロック信号ＳＥ−ＣＫを変化させるごとに、回路ブロックＬＧＣの動作が進行し、進行した動作の結果が、キャプチャ動作により、スキャンチェインに取り込まれ、スキャン出力データＳＥ−Ｑとして出力されることになる。すなわち、１回のキャプチャ動作期間において、回路ブロックＬＧＣを動作させ、その動作の結果を取り込むキャプチャ動作のサイクルが、複数回実行されることになる。これにより、１回のキャプチャ動作期間中に検出可能な故障数を増やすことが可能となり，故障検出率を向上させるのに必要なテストステップ数を削減することが可能である。
【００３０】
＜＜課題＞＞
マルチサイクルテストで、１回のキャプチャ動作期間に複数回のキャプチャ動作を行った場合、キャプチャ動作のサイクル間で、遷移確率の低い信号を伝達する信号線が存在することに依る影響が拡大する。
【００３１】
図１７は、課題を説明するための図である。図１７には、遷移確率の低い論理回路を備えた回路ブロックが示されている。また、図１７には、マルチサイクルテストのキャプチャ動作期間における動作の状態が示されている。図１７において、ＬＧＣ１〜ＬＧＣ３は、各回路ブロックを示しており、ＳＣＨ１〜ＳＣＨ４は、スキャンチェインを示している。
【００３２】
図１７では、スキャンチェインＳＣＨ１を構成するＳＦＦ回路ＳＦ１０〜ＳＦ１２からの出力データが、回路ブロックＬＧＣ１に供給され、回路ブロックＬＧＣ１が動作することにより生成されたデータが、スキャンチェインＳＣＨ２によってキャプチャされ、スキャンチェインＳＣＨ２にキャプチャされたデータが、ＳＦＦ回路ＳＦ２０〜ＳＦ２２から回路ブロックＬＧＣ２に供給される。また、回路ブロックＬＧＣ２が動作することにより生成されたデータは、スキャンチェインＳＣＨ３によってキャプチャされ、スキャンチェインＳＣＨ３によってキャプチャされたデータが、ＳＦＦ回路ＳＦ３０〜ＳＦ３２から回路ブロックＬＧＣ３に供給される。さらに、回路ブロックＬＧＣ３が動作することにより生成されたデータは、スキャンチェインＳＣＨ４によってキャプチャされる。スキャンチェインＳＣＨ４にキャプチャされたデータが、特に制限されないが、ＳＦＦ回路ＳＦ４０〜４２を順次シフトして、スキャン出力データＳＥ−Ｑとして出力される。
【００３３】
図１７では、回路ブロックＬＧＣ１が、７個のアンド回路ＡＤ１〜ＡＤ７をツリー状に接続した組み合わせ論理回路８００を備えており、アンド回路ＡＤ７の出力である論理回路８００の出力が、信号線８０１によってスキャンチェインＳＣＨ２を構成するＳＦＦ回路ＳＦ２１の第１入力端子Ｎ１Ｉ（図１５（Ａ））に接続されている。論理回路８００においては、アンド回路ＡＤ１〜ＡＤ４の入力が、全て論理値“１”とならない限り、論理回路８００の出力は論理値“０”が維持される。すなわち、論理回路８００は、論理値“０”となる制御性が高い論理回路である。論理値“０”となる制御性が高いため、出力が論理値“１”に変化する確率が低い、従って、信号線８０１における信号は遷移確率が低くなる。
【００３４】
スキャンチェインＳＣＨ２が、回路ブロックＬＧＣ１により形成されたデータをキャプチャし、回路ブロックＬＧＣ２へ出力する。このとき、ＳＦＦ回路ＳＦ２１がキャプチャした入力データＤは、信号線８０１における遷移確率の低い信号となる。回路ブロックＬＧＣ２は、スキャンチェインＳＣＨ２からのデータに基づいてデータを生成する。回路ブロックＬＧＣ２において、破線で囲んだ領域ＣＯＮ２は、ＳＦＦ回路ＳＦ２１の出力コーンを示している。すなわち、ＳＦＦ回路ＳＦ２１から出力されるデータによって、動作が影響を受ける領域が、出力コーンＣＯＮ２として示されている。この出力コーンＣＯＮ２に含まれている組み合わせ論理回路８０２には、２サイクル目以降は１サイクル目と同じ論理値０がＳＦＦ回路ＳＦ２１から供給される可能性が高くなる。その結果、論理回路８０２が出力する信号の遷移確率が、２サイクル目以降低下することになる。
【００３５】
図１７に示した例では、論理回路８０２によって形成された信号が、ＳＦＦ回路ＳＦ３０〜ＳＦ３２によってキャプチャされる。そのため、ＳＦＦ回路ＳＦ３０〜ＳＦ３２は、３サイクル目以降は、２サイクル目と同じ論理値を出力する可能性が高くなる。従って、出力コーンＣＯＮ３１〜ＣＯＮ３３に含まれる組み合わせ論理回路８０３が出力する信号の遷移確率は、３サイクル目以降低下することになる。
【００３６】
このように、マルチサイクルテストでは、遷移確率の低い信号線の影響が、キャプチャ動作期間におけるクロックサイクル数に従って広範囲に伝播することが考えられる。すなわち、キャプチャ動作期間におけるサイクル数が増えるほど、遷移確率の低い信号線の影響が広がることが考えられる。
【００３７】
例えば、論理回路８０２、８０３に故障が内在している場合であっても、故障は、遷移確率の低い信号線の影響により隠蔽されてしまうことになる。すなわち、遷移確率の低い信号線の影響により、例えばＳＦＦ回路ＳＦ３０〜ＳＦ３２の第１入力端子に接続された信号線または／およびＳＦＦ回路ＳＦ４０〜ＳＦ４２の第１入力端子に接続された信号線における信号が変化せずに固定となるため、内在している故障を、マルチサイクルテストにより活性化し、観測する機会が失われ、故障検出率が低くなる。
【００３８】
（実施の形態１）
＜全体構成＞
図１は、実施の形態１に係わる半導体装置を説明するための図である。図１（Ａ）において、１００は、実施の形態１に係わる半導体装置を示し、５００は、テスト装置を示し、５０１は、テスト装置５００と半導体装置１００と間のデータおよび信号を示している。テスト装置５００は、テスト時に、後で図２等を用いて説明するクロック信号ＳＥ−ＣＫ、スキャンイネーブル信号ＳＥ−Ｃ、テストイネーブル信号ＳＥ−Ｔ等を生成して、半導体装置１００に供給する。また、テスト装置５００は、テスト時に、テストデータを生成し、スキャン入力データＳＥ−Ｄとして、半導体装置１００に供給する。一方、半導体装置１００は、テスト時に、テスト結果であるスキャン出力データＳＥ−Ｑをテスト装置５００に供給する。テスト装置５００は、供給されたスキャン出力データＳＥ−Ｑを用いて、半導体装置１００における故障等の解析を行う。
【００３９】
実施の形態１〜５では、テスト装置５００を用いて、半導体装置１００をテストする場合を例として説明するが、これに限定されるものではない。例えば、半導体装置１００にテスト装置の機能を実装するようにしてもよい。図１（Ｂ）には、半導体装置１００にテスト装置の機能を実装した場合が示されている。
【００４０】
図１（Ｂ）において、１００Ｂは半導体装置を示している。半導体装置１００Ｂは、図１（Ａ）に示した半導体装置１００に相当する回路ブロック１００Ａと、パワーオンリセット回路１０１と、シーケンサー１０２とを備えている。パワーオンリセット回路１０１には、電源スイッチ１０３を介して電源電圧Ｖｄが供給されている。電源スイッチ１０３が導通状態にされると、パワーオンリセット回路１０１がパワーオンを検出し、シーケンサー１０２にパワーオンを通知する。パワーオンが通知されると、シーケンサー１０２が、図１（Ａ）に示したテスト装置５００と同様なデータと信号を回路ブロック１００Ａに供給する。また、回路ブロック１００Ａからの出力を基にして、シーケンサー１０２が回路ブロック１００Ａの故障等を解析する。なお、１０４は、回路ブロック１００Ａが通常動作のときに入出力するデータを示している。
【００４１】
＜半導体装置１００の構成＞
図２は、実施の形態１に係わる半導体装置の構成を示すブロック図である。半導体装置１００は複数の回路ブロックを備えているが、図１には説明に必要な回路ブロックのみが示されている。
【００４２】
特に制限されないが、半導体装置１００の特定の機能が、回路ブロックＬＧＣによって実現されている。この回路ブロックＬＧＣは、組み合わせ論理回路によって構成されている。回路ブロックＬＧＣに含まれているＦＦ回路が、スキャン設計によって、ＳＦＦ回路に置換され、置換されたＳＦＦ回路が、図２では、符号ＳＦ１〜ＳＦｎとして示されている。ＳＦＦ回路ＳＦ１〜ＳＦｎは、図１５（Ａ）で説明したＳＦＦ回路と同じ構成であるため、説明は省略する。ＳＦＦ回路ＳＦ１〜ＳＦｎのクロック端子ＮＣＫは、半導体装置１００に設けられた外部端子ＴＫに接続され、イネーブル端子ＮＥＮは、外部端子ＴＣに接続されている。外部端子ＴＫには、クロック信号ＳＥ−ＣＫが供給され、外部端子ＴＣには、スキャンイネーブル信号ＳＥ−Ｃが供給される。
【００４３】
マルチサイクルテストのとき、ＳＦＦ回路ＳＦ１〜ＳＦｎによってスキャンチェインが構成される。このとき、スキャンチェインの初段ＳＦＦ回路として動作するＳＦＦ回路ＳＦ１の第２入力端子Ｎ２Ｉは、外部端子ＴＤに接続され、次段以降のＳＦＦ回路として動作するＳＦＦ回路ＳＦ２〜ＳＦｎの第２入力端子Ｎ２Ｉは、前段のＳＦＦ回路の出力端子ＮＯＵに接続されている。また、スキャンチェインの最終段ＳＦＦ回路として動作するＳＦＦ回路ＳＦｎの出力端子ＮＯＵは、外部端子ＴＯに接続され、ＳＦＦ回路ＳＦｎの出力がスキャン出力データＳＥ−Ｑとして出力される。ＳＦＦ回路ＳＦ１〜ＳＦｎのうち、ＳＦＦ回路ＳＦ２〜ＳＦｎの第１入力端子Ｎ１Ｉおよび出力端子ＮＯＵは、回路ブロックＬＧＣに接続されている。
【００４４】
実施の形態１に係わる半導体装置１００は、遷移制御部２００と遷移挿入回路２０１と外部端子ＴＴとを備えている。外部端子ＴＴには、テストイネーブル信号ＳＥ−Ｔが供給される。
【００４５】
遷移制御部２００は、遷移期間調整器２０３と、遷移発生器２０４と、３入力アンド回路２０２とを備えている。３入力アンド回路２０２には、遷移発生器２０４からの遷移論理値信号２１２と、遷移期間調整器２０３からの遷移期間信号２１１と、テストイネーブル信号ＳＥ−Ｔが供給される。３入力アンド回路２０２は、これらの信号間でアンド演算を行い、遷移制御信号２１０を出力する。遷移制御部２００は、マルチサイクルテストのキャプチャ動作期間において、遷移期間信号２１１によって指定される期間のとき、遷移論理値信号２１２に従った遷移制御信号２１０を、遷移挿入回路２０１に供給する。
【００４６】
遷移挿入回路２０１は、回路ブロックＬＧＣにおける所定の信号線部に設けられている。図２においては、回路ブロックＬＧＣが備える２つの回路ブロックＬＧＣ１とＬＧＣ２とを接続する信号線ＣＬ部に、遷移挿入回路２０１が設けられている。すなわち、回路ブロックＬＧＣ１とＬＧＣ２とを接続する信号線ＣＬが、信号線ＣＬ１とＣＬ２に分離され、信号線ＣＬ１とＣＬ２との間に遷移挿入回路２０１が接続されている。遷移挿入回路２０１は、マルチサイクルテストのキャプチャ動作期間において、遷移制御信号２１０に従って、信号線ＣＬ２における論理値を遷移させるように動作する。なお、信号線ＣＬを、遷移挿入経路と見なした場合、分離された信号線ＣＬ１を遷移挿入点と見なすことができる。
【００４７】
遷移発生器２０４は、実施の形態１においては、スキャンチェインを構成する初段のＳＦＦ回路ＳＦ１とインバータ回路２０６とを備えている。インバータ回路２０６は、ＳＦＦ回路ＳＦ１の出力端子ＮＯＵとＳＦＦ回路ＳＦ１の第１入力端子Ｎ１Ｉとの間に接続されている。インバータ回路２０６は、ＳＦＦ回路ＳＦ１の出力端子ＮＯＵから出力された信号の論理値を反転して、ＳＦＦ回路ＳＦ１の第１入力端子Ｎ１Ｉに供給する。すなわち、インバータ回路２０６によって、ＳＦＦ回路ＳＦ１の反転自己ループが構成されている。
【００４８】
ＳＦＦ回路ＳＦ１は、スキャンチェインを構成する複数のＳＦＦ回路の一部であるため、スキャンシフトのときに、このＳＦＦ回路ＳＦ１にもデータが設定される。マルチサイクルテストのキャプチャ動作期間において、クロック信号ＳＥ−ＣＫを変化させることにより、ＳＦＦ回路ＳＦ１の第１入力端子Ｎ１Ｉには、出力端子ＮＯＵから出力されている信号に対して論理反転された信号が、インバータ回路２０６によって供給されることになる。その結果、ＳＦＦ回路ＳＦ１は、キャプチャ動作期間において、クロック信号ＳＥ−ＣＫが変化するたびに、反転された論理値を格納し、出力端子ＮＯＵから論理反転した遷移論理値信号２１２を出力する。
【００４９】
図２では、スキャンチェインを構成する初段のＳＦＦ回路ＳＦ１を、遷移発生器２０４に用いる例を示したが、初段のＳＦＦ回路に限定されない。例えば、遷移発生器２０４に用いるＳＦＦ回路ＳＦ１は、スキャンチェインを構成する複数のＳＦＦ回路のうちの中段のＳＦＦ回路であってもよいし、最終段のＳＦＦ回路であってもよい。このように、遷移発生器２０４に用いるＳＦＦ回路ＳＦ１として、スキャンチェインを構成する複数のＳＦＦ回路の一部を用いることにより、スキャンシフトのときに、遷移発生器２０４を構成するＳＦＦ回路ＳＦ１の初期設定を行うことが可能である。
【００５０】
遷移期間調整器２０３は、ＦＦ回路２０５とインバータ回路２０７とを備えている。ＦＦ回路２０５のクロック端子ＦＣＫには、クロック信号ＳＥ−ＣＫが供給され、入力端子ＦＩＮには、インバータ回路２０７によって論理反転されたスキャンイネーブル信号ＳＥ−Ｃが供給されている。これにより、ＦＦ回路２０５は、クロック信号ＳＥ−ＣＫが変化すると、論理反転されたスキャンイネーブル信号ＳＥ−Ｃを取り込み、保持し、出力端子ＦＯＵから、保持されている論理値の信号を、遷移期間信号２１１として出力する。
【００５１】
遷移期間信号２１１と、遷移論理値信号２１２と、テストイネーブル信号ＳＥ−Ｔとをアンド演算することにより得られた遷移制御信号２１０が、遷移挿入回路２０１に供給される。図２では、遷移挿入回路２０１は２入力排他論理和（ＸＯＲ）回路によって構成されている。２入力排他論理和の一方の入力は、信号線ＣＬ１に接続され、他方の入力は、３入力アンド回路２０２の出力に接続されている。また、ＸＯＲ回路の出力は、信号線ＣＬ２に接続されている。見方を変えると、遷移制御信号２１０によって制御される遷移挿入回路２０１が、第１回路ブロックＬＧＣ１と第２回路ブロックＬＧＣ２との間に挿入されている。
【００５２】
テストイネーブル信号ＳＥ−Ｔは、遷移制御部２００による遷移制御を有効にするか無効にするかを選択する信号である。図２に示した構成では、テストイネーブル信号ＳＥ−Ｔを論理値“０”に設定することにより、遷移制御部２００による遷移制御は無効となり、論理値“１”に設定することにより、遷移制御部２００による遷移制御が有効となる。
【００５３】
後で、図３を用いて説明するが、スキャンイネーブル信号ＳＥ−Ｃを論理値“０”にすることにより、マルチサイクルテストにおいて、キャプチャ動作が開始する。キャプチャ動作の開始から遷移期間調整器２０３によって定まるキャプチャ動作サイクル後に、遷移発生器２０４から出力されている遷移論理値信号２１２が、遷移制御信号２１０として遷移挿入回路２０１に供給されることになる。遷移論理値信号２１２は、クロック信号ＳＥ−ＣＫが変化するたびに論理値が反転するため、遷移挿入回路２０１を構成するＸＯＲ回路にも、クロック信号ＳＥ−ＣＫの変化に応じて論理値が反転する遷移制御信号２１０が供給されることになる。これにより、回路ブロックＬＧＣ１から信号線ＣＬ１に出力されている信号の論理値が、“０”または“１”に固定されていても、信号線ＣＬ２には、遷移挿入回路２０１から論理値が変化する信号が供給され、回路ブロックＬＧＣ２は、信号線ＣＬ２における信号の論理値の変化に従って動作することになる。
【００５４】
＜動作＞
次に、図２に示した半導体装置１００におけるマルチサイクルテストの動作を、図を用いて説明する。図３は、実施の形態１に係わる半導体装置の動作を示すタイミング図である。
【００５５】
テスト対象回路ブロックである回路ブロックＬＧＣにおいて、マルチサイクルテストのキャプチャ動作期間中に、遷移確率が低くなる信号線を遷移挿入点として、先ず識別する。この場合、信号線における信号の遷移確率は、例えばＣＯＰ（Ｃｏｎｔｒｏｌｌａｂｉｌｉｔｙ Ｏｂｓｅｒｖａｂｉｌｉｔｙ Ｐｒｏｇｒａｍ）  Ｔｅｓｔａｂｉｌｉｔｙ  Ｍｅａｓｕｒｅ解析（以下、所定の解析と称する）を複数のキャプチャ動作サイクルに適用することにより算出することが可能である。ここでは信号線ＣＬ１の部分が、遷移挿入点として識別されたものとして説明する。
【００５６】
遷移挿入点を含む遷移挿入経路である信号線ＣＬを分離し、遷移挿入回路２０１を分離した遷移挿入経路間に挿入する。すなわち、図２に示したように、信号線ＣＬを分離して形成された信号線ＣＬ１とＣＬ２との間に、遷移挿入回路２０１を挿入する。挿入した遷移挿入回路２０１に、遷移制御信号２１０が入力されるように、遷移挿入回路２０１と遷移制御部２００とを接続する。
【００５７】
通常動作時は、テストイネーブル信号ＳＥ−Ｔを論理値“０”にし、遷移制御部２００を無効に設定する。これにより、遷移制御部２００は、遷移制御信号２１０を論理値“０”にする。遷移挿入回路２０１を構成するＸＯＲ回路には、論理値“０”の遷移制御信号２１０が供給されるため、遷移挿入回路２０１は、遷移挿入点である信号線ＣＬ１における信号の論理値に対応した論理値を信号線ＣＬ２に出力することになる。すなわち、通常動作時には、遷移挿入回路２０１をスルーして、回路ブロックＬＧＣ１の出力が回路ブロックＬＧＣ２に伝達されることになる。
【００５８】
図３に示すように、マルチサイクルテスト時には、テストイネーブル信号ＳＥ−Ｔを論理値“１”にし、遷移制御部２００を有効に設定する。また、マルチサイクルテストにおいて、スキャンイネーブル信号ＳＥ−Ｃを、論理値“１”から論理値“０”に変化させることにより、キャプチャ動作が開始する。開始されたキャプチャ動作は、スキャンイネーブル信号ＳＥ−Ｃが論理値“０”に維持されている期間、継続する。すなわち、マルチサイクルテスト時において、スキャンイネーブル信号ＳＥ−Ｃが、論理値“０”に維持されている期間が、１回のキャプチャ動作期間に相当する。
【００５９】
テストイネーブル信号ＳＥ−Ｔが論理値“１”に設定され、スキャンイネーブル信号ＳＥ−Ｃが論理値“０”に設定されることにより、遷移制御部２００は、マルチサイクルテストのキャプチャ動作期間中に、遷移制御信号２１０の論理値を変化させるように動作する。すなわち、キャプチャ動作期間において、遷移期間信号２１１が論理値“１”となるキャプチャ動作サイクルでは、遷移論理値信号２１２の論理値の遷移が、遷移制御信号２１０に現れ、この遷移が遷移挿入回路２０１を介して、遷移挿入経路である信号線ＣＬ２に伝播する。
【００６０】
遷移挿入点における遷移確率は非常に低い。例えば、回路ブロックＬＧＣ１が、図１７に示したような７個のアンド回路ＡＤ１〜ＡＤ７をツリー状に接続した組み合わせ論理回路８００を備え、論理回路８００の出力が信号線ＣＬに接続されていた場合、遷移挿入点である信号線ＣＬ１における信号は論理値“０”となる確率が非常に高く、遷移確率は非常に低くなる。そのため、キャプチャ動作期間において発生する複数のキャプチャ動作サイクルのほとんどにおいて、遷移挿入点である信号線ＣＬ１における論理値は“０”となる。
【００６１】
遷移期間調整器２０３においては、インバータ回路２０７によって反転されたスキャンイネーブル信号ＳＥ−Ｅが、ＦＦ回路２０５に供給されている。ＦＦ回路２０５は、クロック信号ＳＥ−ＣＫが、ハイレベルからロウレベル、すなわち論理値“１”から“０”への変化に同期して、反転されたスキャンイネ−ブル信号ＳＥ−Ｃを取り込み，出力する。そのため、図３に示すように、スキャンイネーブル信号ＳＥ−Ｃを論理値“０”に変化させて、キャプチャ動作を開始させた後で、クロック信号ＳＥ−ＣＫの論理値を、“１”から“０”へ変化させると、遷移期間信号２１１の論理値が“１”に変化する。すなわち、キャプチャ動作を開始した後、キャプチャ動作クロックサイクル９０１から、遷移期間信号２１１の論理値が“１”となる。
【００６２】
また、遷移発生器２０４を構成するＳＦＦ回路ＳＦ１は、スキャンチェインを構成するＳＦＦ回路の一部となっているため、遷移発生器２０４は、スキャンシフト動作の期間においては、スキャン入力データＳＥ−Ｄの論理値に従った論理値の遷移論理値信号２１２を出力する。これに対して、キャプチャ動作期間においては、反転自己ループによって、ＳＦＦ回路ＳＦ１は、キャプチャ動作サイクルごとに、論理値が反転する遷移論理値信号２１２を出力する。
【００６３】
これにより、図３に示すように、キャプチャ動作期間が開始してから、キャプチャ動作クロックサイクル９０１から、遷移制御信号２１０の論理値が変化するようになり、以降、キャプチャ動作期間が終了するまで、論理値の変化が継続する。
【００６４】
遷移挿入回路２０１は、ＸＯＲ回路によって構成されているため、キャプチャ動作期間においては、遷移制御信号２１０の論理値の変化が、信号線ＣＬ２に伝達されることになる。
【００６５】
以上の動作によって、遷移挿入経路を構成する信号線ＣＬ２には、図３に示すように、キャプチャ動作期間の間、論理値の遷移が継続的に発生する信号が供給されることになる。これにより、キャプチャ動作期間において、回路ブロックＬＧＣ２には、継続的に論理値が遷移する信号が供給されることになり、回路ブロックＬＧＣ２における故障を検出する機会が減るのを防ぐことが可能である。その結果、回路ブロックＬＧＣにおける故障検出率の向上を図ることが可能である。
【００６６】
図２では、回路ブロックＬＧＣに含まれる回路ブロックＬＧＣ１とＬＧＣ２とを接続する信号線ＣＬを分離して、分離した信号線間に遷移挿入回路２０１を挿入する例を示した。この回路ブロックＬＧＣ１およびＬＧＣ２は、それぞれ任意の回路構成でよく、回路ブロックＬＧＣを構成する論理回路間を接続する任意に信号線を分離し、遷移挿入回路を挿入すればよい。
【００６７】
また、図２には、遷移挿入回路２０１が一つの場合が示されているが、遷移挿入回路２０１は複数であってもよい。この場合、遷移挿入回路のそれぞれは、互いに異なる任意の信号線に挿入する。また、複数の遷移挿入回路を設ける場合、遷移制御部は、複数の遷移挿入回路に対して共通であってもよいし、遷移挿入回路ごとに異なる遷移制御部を設けるようにしてもよい。
【００６８】
＜変形例１＞
図２では、ＳＦＦ回路ＳＦ１とインバータ回路２０６とによって構成した遷移発生器を示したが、遷移発生器は、遷移論理値信号２１２の論理値を“０”から“１”または“１”から“０”に継続的に、一定の確率で変化させる構成であればよい。以下、遷移発生器の変形例を、図面を用いて説明する。図４は、実施の形態１の変形例１に係わる遷移発生器の構成を示すブロック図である。
【００６９】
図４（Ａ）において、２０４＿Ａは、遷移発生器を示している。遷移発生器２０４＿Ａは、半導体装置１００に設けられた外部端子Ｔ２１２を備えている。この外部端子Ｔ２１２には、図２に示したクロック信号ＳＥ−ＣＫに同期して変化するクロック信号ＣＫ＿Ａが供給される。例えば、クロック信号ＳＥ−ＣＫが、クロック信号ＣＫ＿Ａとして外部端子Ｔ２１２に供給されてもよい。これにより、遷移発生器２０４＿Ａは、クロック信号ＳＥ−ＣＫを、遷移論理値信号２１２として出力することになる。
【００７０】
図４（Ｂ）において、遷移発生器２０４＿Ｂは、ＦＦ回路３００とインバータ回路３０１を備えている。インバータ回路３０１によって、ＦＦ回路３００の反転自己ループが構成されている。すなわち、ＦＦ回路３００の出力がインバータ回路３０１を介してＦＦ回路３００の入力に供給されている。クロック信号ＣＫ＿Ｂが変化するたびに、ＦＦ回路３００は、それが出力している論理値を反転して取り込み、出力する。ＦＦ回路３００のクロック端子ＦＣＫに供給されるクロック信号ＣＫ＿Ｂとしては、クロック信号ＳＥ−ＣＫに同期して変化する信号を用いる。これにより、マルチサイクルテストのキャプチャ動作期間においては、１００％の確率で、論理値が反転（遷移）する信号が、ＦＦ回路３００の出力から、遷移論理値信号２１２として出力される。
【００７１】
図４（Ｃ）においては、疑似乱数発生器（ＰＲＰＧ）３０２が、遷移発生器２０４＿Ｃとして用いられる。疑似乱数発生器３０２を用いることにより、５０％の確率で、遷移論理値信号２１２の論理値が遷移することになる。例えば、擬似乱数発生器３０２は、入力されるクロック信号の変化に応じて論理値が遷移する、遷移論理値信号２１２を出力する。
【００７２】
図４（Ｄ）において、２０４＿Ｄは遷移発生器を示している。遷移発生器２０４＿Ｄは、擬似ランダムパターンを発生するＰＲＰＧ（Ｐｓｅｕｄｏ  Ｒａｎｄｏｍ  Ｐａｔｔｅｒｎ  Ｇｅｎｅｒａｔｏｒ）３０２とＦＦ回路３０３とＸＯＲ回路３０４とを備えている。ＰＲＰＧ３０２の出力が、クロック信号ＣＫ＿Ｄの変化により、ＦＦ回路３０３に取り込まれ、ＦＦ回路３０３の出力とＰＲＰＧ３０２の出力が、ＸＯＲ回路３０４に供給される。これにより、ＰＲＰＧ３０２の出力の遷移確率を、遷移論理値信号２１２が論理値“１”となる割合に変換することが可能である。
【００７３】
このように、遷移論理値信号２１２における信号が、所望の遷移となるように、遷移発生回路は種々の回路構成とすることができる。
【００７４】
＜変形例２＞
遷移期間調整器２０３は，マルチサイクルテストのキャプチャ動作期間において、どのキャプチャ動作サイクルで，遷移挿入経路において論理値を遷移させるかを定める決定信号を出力する論理回路である。図２では、遷移期間調整器２０３は、ＦＦ回路２０５とインバータ回路２０７とによって構成されていたが、これに限定されるものではない。以下、図を用いて、遷移期間調整器の変形例を説明する。図５は、実施の形態１の変形例２に係わる遷移期間調整器の構成を示すブロック図である。
【００７５】
図５（Ａ）において、２０３＿Ａは、遷移期間調整器を示している。遷移期間調整器２０３＿Ａは、インバータ回路３０５を備えている。インバータ回路３０５は、スキャンイネーブル信号ＳＥ−Ｃを論理反転して、遷移期間信号２１１として出力する。遷移期間調整器２０３＿Ａは、スキャンイネーブル信号ＳＥ−Ｃが論理値“０”にされ、キャプチャ動作が指示されると、遷移期間信号２１１の論理値を“１”にする。そのため、遷移期間調整器２０３＿Ａは、キャプチャ動作期間において、常に遷移挿入経路において遷移が発生するのを許容することになる。図２では、遷移期間信号２１１の論理値“１”が、遷移の挿入を有効にする論理値としているが、例えば論理値“０”が、遷移の挿入を有効にする論理値とすれば、インバータ回路３０５は必要とされなくなる。図５（Ａ）によれば、遷移期間調整器の構成を単純にすることが可能である。
【００７６】
図５（Ｂ）において、遷移期間調整器２０３＿Ｂは、インバータ回路３０５とＦＦ回路３０６、３０７とを備えている。図５（Ｂ）に示した遷移期間調整器２０３＿Ｂは、図２に示した遷移期間調整器２０３と類似している。主な相異点は、２つのＦＦ回路３０６、３０７が直列的に接続されていることである。すなわち、論理反転されたスキャンイネーブル信号ＳＥ−Ｃは、クロック信号ＳＥ−ＣＫによって制御されるＦＦ回路３０６、３０７により構成された２段のパイプラインを通して、遷移期間信号２１１として出力される。これにより、遷移期間調整器２０３＿Ｂは、キャプチャ動作期間が開始した後の第３回目のキャプチャ動作サイクルから、遷移の挿入を有効にすることができる。ここでは、２段のパイプラインを示したが、直列接続されるＦＦ回路の段数を増やすことにより、遷移の挿入を有効にするキャプチャ動作サイクルを、さらに遅くすることも可能である。
【００７７】
図５（Ｃ）において、遷移期間調整器２０３＿Ｃは、ノア回路３０８と、ＦＦ回路３０９〜３１１とを備えている。ＦＦ回路３０９〜３１１を３段直列に接続することにより、３段のパイプラインが構成されている。ノア回路３０８には、スキャンイネーブル信号ＳＥ−Ｃと、３段パイプラインを介した自らの出力が供給されている。また、３段パイプラインの出力が、遷移期間信号２１１となっている。これにより、遷移期間調整器２０３＿Ｃは、キャプチャ動作期間において、周期的に論理値が“１”となる遷移期間信号２１１を出力することが可能である。その結果として、キャプチャ動作期間において、遷移の挿入が、周期的に有効になる。
【００７８】
このように、遷移期間調整器から出力される遷移期間信号２１１によって、キャプチャ動作期間において遷移の挿入を開始するキャプチャ動作サイクルおよび遷移を挿入している期間を特定することが可能である。すなわち、キャプチャ動作期間において遷移を挿入している遷移期間を、遷移期間信号２１１によって特定することが可能である。
【００７９】
図５では、スキャンイネーブル信号ＳＥ−Ｃを利用して、遷移期間信号２１１を形成する遷移期間調整器を説明したが、これに限定されるものではない。遷移期間調整器は、例えば、スキャンイネーブル信号ＳＥ−Ｃを利用しない構成であってもよく、遷移期間調整器は、マルチサイクルテストのキャプチャ動作期間中において、遷移の挿入を有効にする期間を決定できるような機能を有していればよい。
【００８０】
図２および図５（Ｂ）〜（Ｃ）で示したように、ＦＦ回路によって構成されたパイプラインによって、遷移の挿入が有効となるタイミングが、第２回目のキャプチャ動作サイクル以降となるようにするのは、後で実施の形態２で説明するが、遷移を挿入することにより生じる効果をより高くすることが可能であるためである。
【００８１】
＜変形例３＞
遷移挿入回路２０１は、回路ブロックにおいて、遷移挿入点と遷移挿入経路である信号線との間に挿入する論理回路であり、遷移挿入点に接続される入力と、遷移制御信号２１０が供給される入力と、遷移挿入経路に接続される出力とを備えている。遷移挿入回路２０１は，遷移制御信号２１０の論理値により，次の機能を提供する。遷移制御信号２１０が論理値“０”のとき，遷移挿入回路の出力は、遷移挿入点における信号の論理値と同じ論理値となる。遷移制御信号２１０の論理値が“０”から“１”または“１”から“０”に変化したとき、遷移挿入回路の出力における信号の論理値は変化する。図２では、遷移挿入回路として、ＸＯＲ回路が用いられていたが、遷移挿入回路は、これに限定されるものではない。以下、遷移挿入回路の変形例を、図を用いて説明する。図６は、実施の形態１の変形例３に係わる遷移挿入回路の構成を示すブロック図である。
【００８２】
図６（Ａ）においては、遷移挿入回路２０１として、オア回路３１２が用いられている。図６（Ｂ）においては、一方の入力にインバータ機能を設けたアンド回路３１３が、遷移挿入回路２０１として用いられている。すなわち、アンド回路３１３は、遷移制御信号２１０の論理反転を行い、反転された遷移制御信号２１０と遷移挿入点における信号との間でアンド演算を実行し、遷移挿入経路へ出力する。
【００８３】
遷移挿入点における信号が、論理値“０”となる制御性が高い場合、すなわち論理値“０”となる可能性が高い場合、遷移制御信号２１０の遷移を遷移経路に伝播するように、図６（Ａ）に示したようなオア回路を、遷移挿入回路２０１として用いるのが望ましい。また、遷移挿入点における信号が、論理値“１”となる制御性が高い場合、遷移制御信号２１０の遷移を遷移経路に伝播するように、図６（Ｂ）に示したようなアンド回路を、遷移挿入回路２０１として用いるのが望ましい。さらに、遷移挿入点における信号の論理値“０”および“１”の制御性に関係なく、遷移制御信号２１０の遷移を遷移経路に伝搬するようにするには、図２で示したように、ＸＯＲ回路によって遷移挿入回路２０１を構成することが望ましい。
【００８４】
また、ＸＯＲ回路と等価な機能を有する遷移挿入回路として、図６（Ｃ）に示すような回路がある。図６（Ｃ）においては、論理反転機能を備えたマルチプレクサ３１４が、遷移挿入回路２０１として用いられる。この場合、遷移制御信号２１０が、マルチプレクサ３１４の選択信号として用いられ、マルチプレクサ３１４の第１入力端子には、遷移挿入点における信号が供給され、第２入力端子には、遷移挿入点における信号が論理反転されて供給される。
【００８５】
遷移挿入点は，遷移挿入回路２０１の挿入対象箇所となる信号線ＣＬ１であり，テスト対象ユーザー回路中のキャプチャ動作期間中における遷移確率が低い信号線が該当する。遷移挿入点として扱える信号線は，回路ブロック中において論理回路間の入出力を接続する信号線であれば，特に信号線の場所は限定されない。遷移挿入経路は，遷移挿入点に挿入した遷移挿入回路２０１の出力に繋がる信号線ＣＬ２で，遷移挿入回路２０１を挿入する前は遷移挿入点と連結した信号線である。
【００８６】
＜変形例１＞〜＜変形例３＞で述べたそれぞれの構成は、相互に組み合わせてもよい。
【００８７】
（実施の形態２）
実施の形態２では、より好適な半導体装置の構成を説明する。図７は、実施の形態２に係わる半導体装置の構成を示すブロック図である。図７は、図１７と類似しているので、相異点を主に説明する。
【００８８】
相異点は、ＳＦＦ回路ＳＦ２１の出力端子ＮＯＵ（図１５（Ａ））と回路ブロックＬＧＣ２とを接続する信号線が分離され、出力端子ＮＯＵに接続された信号線ＣＬ１と回路ブロックＬＧＣ２との間に遷移挿入回路を構成するＸＯＲ回路５０が接続されている点と、遷移制御部２００が追加されている点である。
【００８９】
ＸＯＲ回路５０は、信号線ＣＬ１に接続された入力と、遷移制御信号２１０が供給される入力と、回路ブロックＬＧＣ２に接続された出力とを備えている。
【００９０】
遷移制御部２００は、図２で説明した遷移制御部と類似している。相異点は、図２においては、ＳＦＦ回路ＳＦ１として、スキャンチェインの初段のＳＦＦ回路が用いられているのに対して、図７では、ＳＦＦ回路ＳＦ１として、スキャンチェインＳＣＨ１の最終段のＳＦＦ回路が用いられていることである。そのため、ＳＦＦ回路ＳＦ１の第２入力端子Ｎ２Ｉは、ＳＦＦ回路ＳＦ１２の出力端子に接続され、ＳＦＦ回路ＳＦ１の出力端子ＮＯＵは、インバータ回路２０６とアンド回路２０３に接続されるとともに、スキャンチェインＳＣＨ１の出力であるスキャン出力データＳＥ−Ｑを出力する端子としても機能している。なお、図７では、図面が複雑になるため、スキャン出力データＳＥ−Ｑは、ＳＦＦ回路ＳＦ１のブロックから直接出力されるように描かれている。また、図７では、図２に示した符号２０３および２０５の破線は省略されている。
【００９１】
図７に示すように、信号線ＣＬ１と回路ブロックＬＧＣ１との間にＸＯＲ回路５０を挿入する前に、信号の遷移確率の低い信号線を識別する。これは、信号線ＣＬ１と回路ブロックＬＧＣ１とが接続された状態の半導体装置に対して事前マルチサイクルテストを実施し、事前マルチサイクルテストにおける複数のキャプチャ動作サイクルで、所定の解析を実行することにより、複数の信号線から遷移確率の低い信号線を識別する。
【００９２】
例えば、事前マルチサイクルテストにおいて、２回のキャプチャ動作サイクルが実施される場合を説明する。
【００９３】
図１７で説明したように、７個のアンド回路ＡＤ１〜ＡＤ７をツリー状に接続した論理回路８００に接続された信号線８０１は、論理値“０”となる制御性が高い。そのため、第１回目のキャプチャ動作サイクルにおける所定の解析で、信号線８０１は、論理値“０”となる制御性が高いと識別される。また、第２回目のキャプチャ動作サイクルにおける所定の解析でも、信号線８０１は、同様に、論理値“０”となる制御性が高いと識別される。２回の所定の解析で、信号線８０１は、論理値“０”となる制御性が高いと識別されるため、信号線８０１における信号線の遷移確率は低いと識別される。
【００９４】
信号線８０１に繋がるＳＦＦ回路を介して、信号線８０１に接続されている信号線、すなわち、信号線８０１に第１入力端子が接続されたＳＦＦ回路ＳＦ２１の出力端子に接続された信号線ＣＬ１には、第１回目のキャプチャ動作サイクルの後で、信号線８０1における信号の論理値が伝播することになる。従って、信号線ＣＬ１における信号の遷移確率は、第２回目以降のキャプチャ動作サイクルにおいて、低くなる。
【００９５】
キャプチャ動作期間において、クロック信号ＳＥ−ＣＫが変化すると、信号線ＣＬ１に係わる出力コーンＣＯＮ２に含まれる組み合わせ論理回路８０２においては、第２回目のキャプチャ動作サイクル９０１以降（１回目のクロック信号ＳＥ−ＣＫの変化後）で、信号の遷移確率が低くなる。さらに、キャプチャ動作期間において、論理回路８０２の演算結果を入力とするＳＦＦ回路ＳＦ３０〜ＳＦ３２の出力コーンＣＯＮ３１〜ＣＯＮ３２に含まれる組み合わせ論理回路８０３においては、信号の遷移確率が、第３回目のキャプチャ動作サイクル９０２以降で低くなる。このように，マルチサイクルテストにおいては，信号線８０１の遷移確率の影響がＳＦＦ回路を介した後段の組合せ論理回路８０２、８０３にまで及ぶ。
【００９６】
実施の形態２においては、図７に示したように、信号線ＣＬ１と回路ブロックＬＧＣ２との間にＸＯＲ回路５０が挿入されている。実施の形態１で述べたように、遷移制御部２００は、マルチサイクルテストのキャプチャ動作を開始したタイミングではなく、第２回目のキャプチャ動作サイクル９０１以降において、遷移制御信号２１０の論理値を変化させる。そのため、第２回目以降のキャプチャ動作サイクル９０１以降において、組み合わせ論理回路８０２における信号の遷移確率を向上させることが可能となる。同様に、第３回目以降のキャプチャ動作サイクル９０２以降において、組み合わせ論理回路８０３における信号の遷移確率を向上させることが可能である。
【００９７】
遷移確率の低い信号を伝達する信号線は、マルチサイクルテストのキャプチャ動作期間においても、遷移確率の低い信号を伝達する。マルチサイクルテストのキャプチャ動作期間において、信号線における信号が、例えば連続したキャプチャ動作サイクル間で遷移していないと、回路ブロックにおける新たな故障を活性化することができない。例えば、遷移確率の低い信号を伝達する信号線に接続される出力コーンに含まれる論理回路における故障を検出する機会が失われることになる。
【００９８】
実施の形態１、２によれば、マルチサイクルテストのキャプチャ動作期間において、遷移確率の低い信号を伝達する信号線に接続される回路ブロックに対して、キャプチャ動作期間のとき、遷移する信号を強制的に供給することができる。これにより、１回のキャプチャ動作期間において、回路ブロックにおいて故障を発生させる機会、すなわち故障を活性化させる機会を増やすことが可能である。その結果、１回のキャプチャ動作期間において、検出することが可能な故障の数を増やすことが可能となる。
【００９９】
また、回路ブロックを異なるテストパタンでテストするためには、スキャンチェインが異なるテストパタンによって埋めるようにすることが要求される。そのため、スキャンシフト動作には、クロック信号ＳＥ−ＣＫによる多数のサイクル（例えば数千サイクル）が必要とされる。これに対して、キャプチャ動作期間においては、クロック信号ＳＥ−ＣＫを１回変化させることにより、回路ブロックに異なるテストパタンを供給することが可能である。実施の形態１、２によれば、回路ブロックに供給される信号の遷移確率を高くすることが可能であるため、キャプチャ動作期間において、確実に異なるテストパタンを回路ブロックに供給することが可能となる。その結果、目標とする故障検出率を達成するのに必要なテスト時間を削減することが可能である。
【０１００】
次に、具体的なテスト時間削減の効果例を、図を用いて説明する。図８は、実施の形態１および２に係わる半導体装置による効果を説明するための図である。図８（Ａ）において、横軸は、１回のキャプチャ動作期間におけるキャプチャ動作サイクルのサイクル数を示し、縦軸は、回路ブロックを構成する論理セルの入出力ピン単位における信号の変化をカウント対象としたトグル（論理値”０”から”１”または”１”から”０”の変化）の数（ＷＳＡ）を示している。
【０１０１】
図８（Ａ）においては、実線の曲線は、実施の形態１および２で述べたように、遷移確率の低い信号を伝達する信号線と回路ブロックとを分離し、回路ブロックに対して、遷移確率が１００％の信号を供給するようにした場合を示し、破線の曲線は、遷移確率が５０％の信号を供給するようにした場合を示している。遷移確率の低い信号線は、所定の解析によって特定している。また、遷移制御部と遷移挿入回路とによる半導体チップの面積増加が、１％程度となるように、遷移確率の低い信号線の数を選定している。遷移確率が１００％および５０％の信号は、第３回目のキャプチャ動作サイクルにおいて供給されている。
【０１０２】
図８（Ａ）において、一点鎖線の曲線は、遷移挿入回路を挿入していない場合、すなわち、信号線と回路ブロックとを分離せずに、信号線における信号が回路ブロックに供給されるようにした場合を示している。
【０１０３】
図８（Ａ）に示されているように、実施の形態１および２で示したように、遷移確率の高い信号を回路ブロックに供給することにより、第３回目のキャプチャ動作サイクル以降、ＷＳＡが向上している。また、一点鎖線の曲線で示されているように、ＷＳＡは、第２回目のキャプチャ動作サイクル以降で低下する傾向にある。そのため、第２回目のキャプチャ動作サイクル以降に、遷移確率の高い信号を、回路ブロックに供給することが、ＷＳＡを向上させるのに効果的である。
【０１０４】
図８（Ｂ）において，横軸はスキャン入力データＳＥ−Ｄとして供給されるテストパタンの数を示し、縦軸は故障検出率を示している。図８（Ｂ）における実線の曲線、破線の曲線および一点鎖線の曲線に係わる条件は、図８（Ａ）で述べた実線の曲線、破線の曲線および一点鎖線の曲線と同じである。図８（Ｂ）は、マルチサイクルテストのキャプチャ動作サイクルの数が１０回の場合が示されている。目標の故障検出率を、例えば９０％とした場合、これを達成するのに、一点鎖線で示した構成、すなわち遷移確率の高い信号を回路ブロックに供給しない構成では、約６００パタンが必要である。これに対して、５０％、１００％の遷移確率の信号を供給する構成では、約３００パタンで、目標の故障検出率９０％を達成することができる。すなわち、目標検出率を達成するのに必要なスキャンテスト時間を半減することができる。このように，実施の形態１および２によれば、キャプチャ動作期間における回路ブロック内のＷＳＡを向上させ，結果としてスキャンテスト時間を削減することができる。
【０１０５】
（実施の形態３）
図９は、実施の形態３に係わる半導体装置の構成を示すブロック図である。図９に示した半導体装置１００は、図２に示した半導体装置と類似しており、図９には、主に相違する部分のみが描かれている。すなわち、図２に示したスキャンチェインを構成するＳＦＦ回路ＳＦ２〜ＳＦｎに係わる部分およびスキャン入力データＳＥ−Ｄは、図９では省略されている。図２では、遷移発生器２０４を構成するＳＦＦ回路ＳＦ１がスキャンチェインを構成するＳＦＦ回路としても用いられていたが、図９では、省略されているＳＦＦ回路ＳＦ２〜ＳＦｎだけで、スキャンチェインが構成されている。
【０１０６】
図２との主な相異点は、遷移制御部２００が遷移制御部２００Ａに変更され、遷移挿入回路としてマルチプレクサ４０４が用いられていることである。変更された遷移制御部２００Ａは、遷移発生器として図４（Ｂ）で説明した遷移発生器２０４＿Ｂと、図２で説明した遷移期間調整器２０３と、２つのアンド回路４００、４０１とを備えている。アンド回路４００には、遷移発生器２０４＿Ｂからの遷移論理値信号２１２とテストイネーブル信号ＳＥ−Ｔが供給され、アンド回路４００は、遷移発生信号４０２を出力する。また、アンド回路４０１には、遷移期間信号２１１とテストイネーブル信号ＳＥ−Ｔが供給され、アンド回路４０１は、遷移有効信号４０３を出力する。
【０１０７】
アンド回路４００は、テストイネーブル信号ＳＥ−Ｔが、有効を示す論理値“１”のとき、遷移論理値信号２１２を、遷移発生信号４０２として出力する。また、アンド回路４０１は、テストイネーブル信号ＳＥ−Ｔが、有効を示す論理値“１”のとき、遷移期間信号２１１を、遷移有効信号４０３として出力する。
【０１０８】
遷移挿入回路であるマルチプレクサ４０４は、２つの入力端子と、制御端子と、出力端子とを備えている。マルチプレクサ４０４の一方の入力端子は、回路ブロックＬＧＣ１の信号線ＣＬ１に接続され、他方の入力端子には、遷移発生信号４０２が供給されている。また、マルチプレクサ４０４の制御端子には、遷移有効信号４０３が供給されている。これにより、マルチプレクサ４０４は、遷移有効信号４０３の論理値に従って、信号線ＣＬ１のおける信号または遷移発生信号４０２を選択し、選択した信号または遷移発生信号４０２を、出力端子を介して信号線ＣＬ２に供給する。
【０１０９】
より具体的に述べると、マルチプレクサ４０４は、遷移有効信号４０３が無効を示す論理値“０”のとき，信号線ＣＬ１における信号を選択して、信号線ＣＬ２に供給する。一方、遷移有効信号４０３が有効を示す論理値“１”のとき，マルチプレクサ４０４は、遷移発生信号４０２を選択して、信号線ＣＬ２に供給する。
【０１１０】
信号線ＣＬ１は、実施の形態１および２で説明した所定の解析によって、遷移確率の低い信号を伝達する信号線として識別された信号線である。
【０１１１】
通常動作においては、テストイネーブル信号ＳＥ−Ｔが、無効を示す論理値“０”に設定される。これにより、遷移有効信号４０７は無効を示す論理値“０”となる。その結果、マルチプレクサ４０４は、信号線ＣＬ１における信号を選択して、信号線ＣＬ２に出力する。これにより、回路ブロックＬＧＣ２には、回路ブロックＬＧＣ１からの信号に応じて動作することになる。
【０１１２】
これに対して、マルチサイクルテストにおいては、テストイネーブル信号ＳＥ−Ｔが論理値“１”に設定される。これにより、マルチサイクルテストのスキャン動作期間における所定のキャプチャ動作サイクルで論理値“１”の遷移有効信号４０３が、マルチプレクサ４０４の制御端子に供給されることになる。また、遷移発生器２０４＿Ｂからは、論理値が周期的に変化する遷移論理値信号２１２が、遷移発生信号４０２としてマルチプレクサ４０４に供給される。これにより、マルチプレクサ４０４は、所定のキャプチャ動作サイクル以降、遷移発生信号４０２を信号線ＣＬ２に出力することになる。
【０１１３】
実施の形態２によれば、実施の形態１および２と同様に、マルチサイクルテストのキャプチャ動作期間において、遷移挿入経路である信号線ＣＬ２における信号に遷移を発生させることが可能である。実施の形態１および２では，遷移挿入点である信号線ＣＬ１における信号の遷移に応じて、信号線ＣＬ２における信号の論理値が遷移しなくなる場合がある。これに対して、実施の形態３によれば、遷移挿入点における信号の論理値に依存せずに、遷移発生信号４０２の論理値の遷移が、マルチプレクサ４０４を介して、信号線ＣＬ２に伝搬させることができる。これにより，遷移挿入回路から出力される信号の遷移確率が意図せず低下する可能性をなくし，意図通りの遷移を発生させることができる。
【０１１４】
＜変形例＞
遷移挿入回路は、図９に示したマルチプレクサ４０４に限定されない。図１０は、実施の形態３の変形例に係わる遷移挿入回路の構成を示すブロック図である。図１０において、遷移挿入回路は、２つのアンド回路４０４＿１、４０４＿２と１つのオア回路４０４＿３を組み合われることにより構成されている。アンド回路４０４＿１には、信号線ＣＬ１における信号と、遷移有効信号４０３の論理反転信号が供給され、アンド回路４０４＿２には、遷移発生信号４０２と遷移有効信号４０３が供給され、アンド回路４０４＿１と４０４＿２の出力は、オア回路４０４＿３によってオア演算され、遷移挿入経路である信号線ＣＬ２に出力される。このように、遷移挿入回路としては、種々の構成を採用することが可能である。
【０１１５】
（実施の形態４）
図１１は、実施の形態４に係わる半導体装置の構成を示す図である。図１１は、図２および図９に類似しているので、主に相異点を説明する。相異点は、遷移制御部が変更され、遷移制御部２００Ｂとなっている点と、遷移挿入回路が変更され、マルチプレクサ４５０となっている点である。
【０１１６】
遷移制御部２００Ｂは、図２に示した遷移制御部２００に類似しているが、遷移発生器が図４（Ｂ）に示した遷移発生器２０４＿Ｂに変更されている。遷移発生器２０４＿Ｂは、既に説明しているので、説明を省略する。
【０１１７】
遷移挿入回路としては、図９と同様に、マルチプレクサが用いられている。図９においては、遷移挿入回路を構成するマルチプレクサ４０４は、遷移挿入経路を形成する信号線ＣＬ１とＣＬ２との間に接続され、マルチプレクサ４０４には、遷移制御部２００Ａから遷移発生信号４０２と遷移有効信号４０３が供給されていた。これに対して、実施の形態４に係わるマルチプレクサ４５０は、遷移挿入経路を形成する信号線ＣＬ１とＣＬ２との間に接続されていることは同じであるが、遷移制御部２００Ｂからは遷移制御信号２１０のみが、マルチプレクサ４５０に供給されている。
【０１１８】
実施の形態４においては、マルチプレクサ４５０は、信号線ＣＬ１に接続された入力端子と、回路ブロックが動作することにより論理値が遷移する信号を伝達する信号線ＣＬ３に接続された入力端子とを備える。また、マルチプレクサ４５０は、信号線ＣＬ２に接続された出力端子と、遷移制御信号２１０が選択信号として供給される選択端子とを備えている。図１１においては、信号線ＣＬ３として、回路ブロックＬＧＣ１に配置されている信号線が例示されているが、これに限定されず、信号線ＣＬ３は、図示しない別の回路ブロックあるいは回路ブロックＬＧＣ２に配置されている信号線であってもよい。すなわち、信号線ＣＬ３は、それが配置されている回路ブロックが動作することにより、論理値が遷移する信号を伝達する信号線であればよい。
【０１１９】
信号線ＣＬ３における信号は、マルチサイクルテストのキャプチャ動作期間において、キャプチャ動作サイクルごとに、遷移挿入点である信号線ＣＬ１における信号とは反転論理値へ遷移する確率の高い信号である。信号線ＣＬ１を遷移挿入点と見なすと、信号線ＣＬ３は、遷移発生点と見なすことができる。
【０１２０】
実施の形態１および２で説明した所定の解析等によって、遷移確率の低い信号を伝達する信号線ＣＬ１として識別する。このとき、所定の解析等によって、例えば信号線ＣＬ１に近接して配置されている信号線であって、キャプチャ動作サイクルごとに遷移する確率の高い信号を伝達する信号線を信号線ＣＬ３として識別する。マルチプレクサ４５０は、遷移制御信号２１０が有効を示す論理値“１”のとき、信号線ＣＬ３が接続された入力端子を選択し、出力端子と接続する。一方、マルチプレクサ４５０は、遷移制御信号２１０が無効を示す論理値“０”のとき、信号線ＣＬ１が接続された入力端子を選択し、出力端子に接続する。
【０１２１】
これにより、遷移制御信号２１０が有効を示しているキャプチャ動作期間においては、信号線ＣＬ３における信号が信号線ＣＬ２に伝達され、回路ブロックＬＧＣ２は、信号線ＣＬ２に伝達された信号に基づいて動作する。一方、遷移制御信号２１０が無効を示している通常動作においては、信号線ＣＬ１における信号が信号線ＣＬ２に伝達され、回路ブロックＬＧＣ２は、信号線ＣＬ２に伝達された信号に基づいて動作する。
【０１２２】
＜変形例＞
図１２は、実施の形態４に係わる変形例を示すブロック図である。
【０１２３】
図１２（Ａ）において、ＬＧＣ１＿１は、インバータ回路４５１を備えた回路ブロックを示している。回路ブロックＬＧＣ１＿１とＦＦ回路４５２は、回路ブロックＬＧＣ１に含まれている。回路ブロックＬＧＣ１＿１は、クロック信号ＳＥ−ＣＫがクロック端子に接続されたＦＦ回路４５２の出力端子が接続されたノード４５３に接続され、ノード４５３における信号を処理する。この処理の過程において、回路ブロックＬＧＣ１＿１は、ノード４５３における信号に対して論理反転された信号をインバータ回路４５１によって形成する。インバータ回路４５１の出力は、ＦＦ回路４５２の入力端子に接続されている。ノード４５３が、遷移発生点である信号線ＣＬ３に接続されている。
【０１２４】
キャプチャ動作期間において、クロック信号ＳＥ−ＣＫが変化することにより、ＦＦ回路４５２は、ノード４５３における信号に対して論理反転された信号を取り込むことになる。その結果として、遷移制御信号２１０が有効を示す場合、信号線ＣＬ２には、信号線ＣＬ３における信号、すなわちクロック信号ＳＥ−ＣＫの変化に同期して論理値が反転する信号が供給されるようになる。
【０１２５】
図１２（Ｂ）〜図１２（Ｄ）は、遷移確率の低い信号を伝達する信号線が、回路ブロックＬＧＣ２内のＦＦ回路の入力に接続されている場合の変形例を示している。すなわち、図１２（Ｂ）〜（Ｄ）は、回路ブロックＬＧＣ２内のＦＦ回路の入力端子における信号の遷移確率が低いと識別された場合を示している。
【０１２６】
図１２（Ｂ）においては、遷移挿入回路は、論理反転機能を備えたマルチプレクサ４５４によって構成されている。また、図１２（Ｂ）において、４５５は、回路ブロックＬＧＣ２に設けられているＦＦ回路を示している。クロック信号ＳＥ−ＣＫがクロック端子に供給されるＦＦ回路４５５は、回路ブロックＬＧＣ２を構成する要素であり、ＦＦ回路４５５の出力に基づいて回路ブロックＬＧＣ２は動作する。遷移挿入回路には、このＦＦ回路４５５の出力が供給されている。すなわち、ＦＦ回路４５５の出力端子が、遷移発生点として識別され、マルチプレクサ４５０の反転入力端子に接続され、ＦＦ回路４５５の正相入力端子は、信号線ＣＬ２に接続されている。遷移制御信号２１０が有効を示す場合、マルチプレクサ４５４は、ＦＦ回路４５５の出力を論理反転して、遷移挿入経路を構成する信号線ＣＬ２に供給する。これにより、遷移制御信号２１０が有効を示す場合、信号線ＣＬ２における信号は、キャプチャ動作期間において遷移することになる。
【０１２７】
図１２（Ｃ）および図１２（Ｄ）は、図１２（Ｂ）のマルチプレクサ４５４を、組み合わせ論理回路で構成した例を示している。マルチプレクサ４５４の構成は、信号線ＣＬ１における信号の論理値の制御性に依存して変わる。すなわち、信号線ＣＬ１における信号の論理値が、論理値“１”になる確率が高い場合と、論理値“０”になる確率が高い場合とによって、マルチプレクサ４５４の構成は異なる。
【０１２８】
論理値“１”になる確率が高い場合、マルチプレクサ４５４は、図１２（Ｃ）に示すように、ＸＯＲ回路４５６とアンド回路４５７とによって構成される。この場合、アンド回路４５７は、ＦＦ回路４５５から出力された論理値“１”の信号と、論理値“１”の遷移制御信号２１０との間でアンド演算を実施する。信号線ＣＬ１における信号が論理値“１”であれば、ＸＯＲ回路４５６からは、論理値“０”の信号が、信号線ＣＬ２に出力されることになり、信号線ＣＬ２における信号の論理値は遷移する。
【０１２９】
これに対して、論理値“０”になる確率が高い場合、マルチプレクサ４５４は、図１２（Ｄ）に示すように、ＸＯＲ回路４５６と論理反転機能を備えたアンド回路４５８を組み合わせた組み合わせ論理回路によって構成される。この場合、アンド回路４５８は、ＦＦ回路４５５から出力された論理値“０”の信号を、論理反転し、論理値“１”の遷移制御信号２１０との間でアンド演算を実施する。信号線ＣＬ１における信号が論理値“０”であれば、ＸＯＲ回路４５６は、論理値“１”の信号を信号線ＣＬ２に出力することになる。
【０１３０】
図１２（Ａ）に示した構成では、遷移期間調整器２０３によって定まるタイミングで、遷移制御信号２１０が、有効を示す論理値“１”に変化すると、マルチプレクサ４５０から、論理値が遷移する信号が信号線ＣＬ２に出力される。これに対して、図１２（Ｂ）〜（Ｄ）に示した構成では、遷移制御信号２１０が論理値“１”となることにより、マルチプレクサ、あるいはマルチプレクサを構成する組み合わせ論理回路と、ＦＦ回路とによって、反転自己ループが形成されることになる。そのため、遷移制御信号２１０が有効を示す論理値になった次のサイクルから、信号線ＣＬ２における信号の遷移が開始することになる。
【０１３１】
実施の形態４においては、遷移確率が高い信号を伝達する信号線または遷移挿入経路に接続されたＦＦ回路の出力端子が、遷移発生点として識別される。マルチプレクサのような入力選択機能を備えた遷移挿入回路が、遷移発生点と、遷移挿入点と、遷移挿入経路を構成する信号線との間に接続され、遷移挿入回路は、通常動作では、遷移挿入点を選択し、キャプチャ動作期間においては、遷移発生点を選択する。遷移挿入回路によって選択された遷移挿入点または遷移発生点が、遷移挿入経路を構成する信号線に接続されることになる。
【０１３２】
信号線ＣＬ３として、１００％に近い遷移確率の信号が伝播する信号線を使うことにより、遷移制御信号２１０が論理値“１”になっている期間においては，遷移挿入回路から出力される論理値は毎サイクルで反転することになる。また、遷移挿入回路と遷移発生点を通る反転自己ループの構成により、遷移制御信号２１０が論理値“１”になる期間は，遷移挿入回路から出力される論理値は毎サイクルで反転することになる。キャプチャ動作期間において、遷移制御信号２１０が論理値“１”となる期間は，遷移制御部を構成する遷移発生器と遷移期間調整器によって調整することが可能である。
【０１３３】
実施の形態４によれば、遷移挿入点の近傍の遷移発生点から遷移挿入回路と接続するため，実施の形態３の遷移発生信号の接続と比較すると，配線面積を削減できる。また，遷移制御信号が有効を示す論理値“１”とき，遷移発生点の値が遷移挿入回路の出力へ伝搬するため，遷移発生点に到達する故障の観測確率が向上し，故障検出率が向上する場合がある。また、実施の形態４においても、実施の形態１〜３と同様に，マルチサイクルテストのスキャン動作期間中に、遷移挿入経路において信号の遷移を発生させることにより、目標故障検出率を達成するのに必要なスキャンテスト時間を削減することが可能である。
【０１３４】
実施の形態４においては、遷移発生点において、遷移論理値信号２１２に相当する遷移信号が発生されていると見なすことができる。そのため、図１１に示したアンド回路２０２を２入力のアンド回路に変更し、２入力のアンド回路により遷移期間信号２１１とテストイネーブル信号ＳＥ−Ｔとの間のアンド演算を実行し、その結果を遷移制御信号２１０として用いるようにしてもよい。これにより、遷移制御部２００Ｂの簡素化を図ることが可能である。
【０１３５】
（実施の形態５）
実施の形態５では、マルチサイクルテストのキャプチャ動作期間において、トグル率の高い組み合わせ論理回路を備える半導体装置を設計する設計装置および設計方法を説明する。図１３は、実施の形態５に係わる設計装置の構成を示すブロック図である。設計装置７００は、制御入力装置部７０１、表示出力装置部７０２、入出力Ｉ／Ｆ部７０３、演算処理装置部７０４および記憶装置部７０５によって構成されている。
【０１３６】
制御入力装置部７０１は、ユーザーが演算処理装置部７０４および記憶装置部７０５を制御するための装置部であり、キーボード等を備えている。表示出力装置部７０２は、ユーザーが演算処理装置部７０４および記憶装置部７０５の動作を確認するための表示部であり，ディスプレイ等を備えている。入出力Ｉ／Ｆ部７０３は、制御入力装置部７０１および表示出力装置部７０２と、演算処理装置部７０４および記憶装置部７０５との間を接続するインタフェース部である。
【０１３７】
演算処理装置部７０４は，半導体装置を設計するのに必要なプログラムをロードして、設計に必要な各機能プロセスを実行する装置であり、プロセッサ（ＣＰＵ）およびメモリ等を備えている。記憶装置部７０５は，ライブラリやネットリストの情報を保存する記憶媒体を示している。特に制限されないが、記憶媒体は、ハードディスク（ＨＤＤ）やメモリ等である。
【０１３８】
実施の形態５において、演算処理装置部７０４は、前記した遷移制御部および遷移挿入回路を生成するため、格納されている遷移制御論理挿入プログラム７０６を実行する。演算処理装置部７０４は、実行により得られた遷移制御論理挿入済みネットリストを、記憶装置部７０５に格納する。遷移制御論理挿入プログラムを実行する時に、演算処理装置部７０４には、記憶装置部７０５から、ネットリスト、機能ライブラリおよびユーザー定義の制約が入力される。遷移制御論理挿入済みネットリストによって、マルチサイクルテストにおいて故障検出率の高い組み合わせ論理回路を備えた半導体装置が設計される。
【０１３９】
演算処理装置部７０４が、遷移制御論理挿入プログラムを実行することにより、遷移制御部を生成する機能と，回路ブロック中の遷移挿入点を識別して、遷移挿入回路を挿入する機能と，遷移挿入回路と遷移制御部とを接続する機能とが提供される。
【０１４０】
図１４は、実施の形態５に係わる遷移制御論理挿入プログラムによって実行される工程を示すフローチャート図である。
【０１４１】
ステップＳ０において、対象となる回路ブロックの構成を表すネットリスト、機能ライブラリ、テスト制約、クロック信号条件等が、演算処理装置部７０４にロードされる。ステップＳ１において、ロードしたネットリストおよび機能ライブラリを基にして回路解析が行われ、回路情報が取得される。また、このステップＳ１において、回路ブロックに含まれる複数のＦＦ回路から、スキャン設計の対象となるスキャン化可能なＦＦ回路とテスト制約が取得される。
【０１４２】
次に、ステップＳ２において、ステップＳ１で取得したスキャン化可能なＦＦ回路および外部入出力端子を、回路探索の起点および終点に設定して、ＣＯＰ（Ｃｏｎｔｒｏｌｌａｂｉｌｉｔｙ  Ｏｂｓｅｒｖａｂｉｌｉｔｙ  Ｐｒｏｇｒａｍ）  Ｔｅｓｔａｂｉｌｉｔｙ  Ｍｅａｓｕｒｅ解析など、所定の解析を実行し、回路ブロックにおける複数の信号線から、遷移確率が低い信号を伝達する複数の信号線を遷移挿入候補信号線として識別する。また、遷移確率が高い信号を伝達する複数の信号線を遷移発生候補信号線として識別する。複数の遷移挿入候補信号線のうち、伝達する信号の遷移確率を上げることにより、回路ブロックにおける信号のトグル率を高くすることが可能な遷移挿入候補信号線を識別する（第１識別工程）。識別された遷移挿入候補信号線が、ステップＳ３において、遷移挿入点として選定される。
【０１４３】
ステップＳ４では、ステップＳ３において選定された遷移挿入点の数が、テスト制約として設定された目標の挿入数を閾値として、閾値に到達しているか否かの判定が行われる。ステップＳ４において、未達と判定された場合、ステップＳ２に戻る。ステップ２では、既に遷移挿入点として選定した遷移挿入候補信号線を除いた遷移挿入候補信号線から、回路ブロックにおける信号のトグル率を高くすることが可能な遷移挿入候補信号線を識別し、ステップＳ３において、識別した遷移挿入候補信号線を遷移挿入点として選定する。ステップＳ４において、到達と判定されるまで、ステップＳ２〜Ｓ４が繰り返される。
【０１４４】
ステップＳ４において到達と判定されると、次にステップＳ５が実行される。ステップＳ５では、選定された遷移挿入点に遷移挿入回路を挿入（挿入工程）するとともに、遷移制御部を挿入し、遷移挿入回路と遷移制御部とを接続する。ステップＳ６において、遷移挿入回路および遷移制御部が挿入された回路ブロックのネットリストが出力され、ステップＳ７で処理が終了する。
【０１４５】
ステップＳ６で出力されたネットリストに基づいて、半導体装置が設計される。
【０１４６】
特に制限されないが、ステップＳ５において、挿入される遷移挿入回路および遷移制御部の構成が定められる。また、遷移挿入回路の挿入は、選定された遷移挿入点となる信号線ＣＬを分離し、分離した信号線ＣＬ１とＣＬ２との間に遷移挿入回路を接続することを意味している。
【０１４７】
実施の形態４においては、遷移確率の高い信号を伝達する信号線を用いるが、この信号線は、ステップＳ２において、遷移発生信号として識別（第２識別工程）される。ステップＳ３において、遷移挿入点として信号線を選定するときに、選定される信号線に対応する遷移発生信号線を選定する。これにより、ステップＳ５において、遷移挿入点として選定された信号線と対応する遷移発生信号線とを接続する遷移挿入回路が挿入される。
【０１４８】
また、ステップＳ２において、遷移挿入点として選定される候補の信号線にＦＦ回路が接続されているか否かが識別され、識別されたＦＦ回路が、実施の形態４で説明したＦＦ回路４５５として用いられる。
【０１４９】
実施の形態５によれば、マルチサイクルテストのキャプチャ動作期間において、トグル率の高い回路ブロックを発生することが可能である。これにより，マルチサイクルテスト適用時に、一回のキャプチャ動作期間において検出可能な故障数を増やし，目標検出率を達成するのに必要なテストステップ数を削減することが可能である。
【０１５０】
図１（Ｂ）に示した半導体装置においては、パワーオンリセットによりマルチサイクルテストが実行されるが、テストステップ数を削減することが可能であるため、パワーオンリセットによって起動されるパワーオンセルフテストＰＯＳＴの時間を短縮することが可能である。
【０１５１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０１５２】
１００  半導体装置
２００、２００Ａ、２００Ｂ  遷移制御部
２０１  遷移挿入回路
２０２  ３入力アンド回路
２０３  遷移期間調整器
２０４  遷移発生器
２０５  ＦＦ回路
２１０  遷移制御信号
２１１  遷移期間信号
２１２  遷移論理値信号
ＣＬ、ＣＬ１〜ＣＬ３  信号線
ＬＧＣ、ＬＧＣ１〜ＬＧＣ３  回路ブロック
ＳＦ１〜ＳＦｎ  ＳＦＦ回路
ＴＣ、ＴＤ、ＴＫ、ＴＯ、ＴＴ  外部端子
【図１】
2020143896.tif 000003
【図２】
2020143896.tif 000004
【図３】
2020143896.tif 000005
【図４】
2020143896.tif 000006
【図５】
2020143896.tif 000007
【図６】
2020143896.tif 000008
【図７】
2020143896.tif 000009
【図８】
2020143896.tif 000010
【図９】
2020143896.tif 000011
【図１０】
2020143896.tif 000012
【図１１】
2020143896.tif 000013
【図１２】
2020143896.tif 000014
【図１３】
2020143896.tif 000015
【図１４】
2020143896.tif 000016
【図１５】
2020143896.tif 000017
【図１６】
2020143896.tif 000018
【図１７】
2020143896.tif 000019