IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ルネサスエレクトロニクス株式会社の特許一覧

<>
  • 特許-半導体装置および半導体装置の設計方法 図1
  • 特許-半導体装置および半導体装置の設計方法 図2
  • 特許-半導体装置および半導体装置の設計方法 図3
  • 特許-半導体装置および半導体装置の設計方法 図4
  • 特許-半導体装置および半導体装置の設計方法 図5
  • 特許-半導体装置および半導体装置の設計方法 図6
  • 特許-半導体装置および半導体装置の設計方法 図7
  • 特許-半導体装置および半導体装置の設計方法 図8
  • 特許-半導体装置および半導体装置の設計方法 図9
  • 特許-半導体装置および半導体装置の設計方法 図10
  • 特許-半導体装置および半導体装置の設計方法 図11
  • 特許-半導体装置および半導体装置の設計方法 図12
  • 特許-半導体装置および半導体装置の設計方法 図13
  • 特許-半導体装置および半導体装置の設計方法 図14
  • 特許-半導体装置および半導体装置の設計方法 図15
  • 特許-半導体装置および半導体装置の設計方法 図16
  • 特許-半導体装置および半導体装置の設計方法 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-14
(45)【発行日】2022-12-22
(54)【発明の名称】半導体装置および半導体装置の設計方法
(51)【国際特許分類】
   G01R 31/28 20060101AFI20221215BHJP
   H01L 21/822 20060101ALI20221215BHJP
   H01L 27/04 20060101ALI20221215BHJP
【FI】
G01R31/28 V
H01L27/04 T
【請求項の数】 8
(21)【出願番号】P 2019038137
(22)【出願日】2019-03-04
(65)【公開番号】P2020143896
(43)【公開日】2020-09-10
【審査請求日】2021-08-11
(73)【特許権者】
【識別番号】302062931
【氏名又は名称】ルネサスエレクトロニクス株式会社
(74)【代理人】
【識別番号】110002066
【氏名又は名称】弁理士法人筒井国際特許事務所
(72)【発明者】
【氏名】岩田 浩幸
(72)【発明者】
【氏名】松嶋 潤
(72)【発明者】
【氏名】前田 洋一
【審査官】田口 孝明
(56)【参考文献】
【文献】特開2006-132992(JP,A)
【文献】特開2003-330983(JP,A)
【文献】特開平04-110681(JP,A)
【文献】特開2001-153928(JP,A)
【文献】特開平11-023660(JP,A)
【文献】特開2015-028424(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
IPC G01R 31/28-31/3193、
H01L 27/04
(57)【特許請求の範囲】
【請求項1】
第1回路ブロックと、
信号線を介して前記第1回路ブロックから信号が供給される第2回路ブロックと、
マルチサイクルテストのキャプチャ動作期間において遷移期間を特定する遷移制御部と、
前記遷移制御部から出力される信号を用いて、前記遷移期間中に前記信号線における信号の論理値を遷移させる遷移挿入回路と、
を備え
前記遷移制御部は、
前記キャプチャ動作期間の開始から前記遷移期間の開始までのタイミングを定める遷移期間調整器と、
入力されるクロック信号の変化に応じて、前記信号線における信号の論理値を遷移させる信号を出力する遷移発生器と、
を備え、
前記キャプチャ動作期間であって、前記遷移期間調整器により、その開始のタイミングが定められた前記遷移期間において、前記遷移発生器から出力された信号を用いて、前記信号線の信号の論理値を、前記遷移挿入回路が遷移させる、半導体装置。
【請求項2】
請求項に記載の半導体装置において、
前記信号線は、前記第1回路ブロックから出力される信号を伝達する第1信号線と、前記第2回路ブロックに入力される信号を伝達する第2信号線とを備え、
前記遷移挿入回路は、前記第1信号線と前記第2信号線との間に接続され、
前記遷移挿入回路は、前記特定された遷移期間において、前記遷移発生器からの信号に基づいて、前記第2信号線における信号の論理値を遷移させる信号を入力する、半導体装置。
【請求項3】
請求項に記載の半導体装置において、
前記遷移制御部は、前記第2信号線における信号の論理値を遷移させる信号を、第3信号線に出力し、
前記遷移挿入回路は、前記第1信号線、または前記第3信号線を選択し、
前記遷移挿入回路は、前記遷移期間において、前記第3信号線を前記第2信号線に接続する、半導体装置。
【請求項4】
請求項に記載の半導体装置において、
前記遷移挿入回路は、前記第1信号線、または論理値の遷移確率が高い第4信号線を選択し、
前記遷移挿入回路は、前記遷移期間において、前記第4信号線を前記第2信号線に接続する、半導体装置。
【請求項5】
請求項に記載の半導体装置において、
出力がインバータ回路を介して入力に供給される第1フリップフロップ回路を備え、前記第4信号線は、前記第1フリップフロップ回路の出力端子に接続されている、半導体装置。
【請求項6】
回路ブロックにおける複数の信号線から、マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が低い信号を伝達する信号線を識別する識別工程と、
前記識別工程で識別された信号線により伝達される信号の論理値を、マルチサイクルテストの前記キャプチャ動作期間に応じた遷移期間中に遷移させる遷移挿入回路を、前記回路ブロックに挿入する挿入工程と、
を備え
前記識別工程においては、所定の解析を用いて、前記マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が低い信号線を識別する第1識別工程を備える、半導体装置の設計方法。
【請求項7】
請求項に記載の半導体装置の設計方法において、
前記識別工程において、前記所定の解析を用いて、前記複数の信号線から、前記マルチサイクルテストのキャプチャ動作期間において、論理値の遷移確率が高い信号線を識別する第2識別工程を備える、半導体装置の設計方法。
【請求項8】
請求項に記載の半導体装置の設計方法において、
前記挿入工程で、前記第2識別工程で識別した信号線と、前記第1識別工程で識別した信号線とを接続する前記遷移挿入回路を挿入する、半導体装置の設計方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置および半導体装置の設計方法に関し、例えば自己診断回路を内蔵し、自動車に搭載される半導体装置およびその設計方法に関する。
【背景技術】
【0002】
国際規格のISO26262の要求として、車載される半導体装置には機能安全機構の搭載が必須となっている。機能安全機構の一つとして、電源が投入されたときに、自己診断を行う、Power-On-Self-Test(POST)がある。POSTは、規定されている故障検出率、テスト時間および消費電力の制約を満たす必要があるが、特にテスト時間の制約が厳しく、テスト時間の削減が課題となっている。
【0003】
POSTを実行する自己診断回路を半導体装置に実装する場合、できるだけ少ないテストデータ量でテストを実行することが要求される。実用的な実装方法としては、半導体装置にLBIST(Logic Built In Self Test)を内蔵させる方法が挙げられる。LBISTでは、半導体装置に乱数パタン生成器を内蔵させ、乱数パタン生成器によって生成されたテストデータをスキャンチェインに供給する。このスキャンチェインから、半導体装置内の回路ブロックにテストデータが供給され、スキャンテストが実施される。テストデータが、乱数パタン生成器によって生成されため、半導体装置に入力されるテストデータ量を少なくすることが可能である。しかしながら、テストデータが、乱数によって生成されるため、故障検出率が上昇し難い。規定の故障検出率を満たすためには、多数のテストデータを乱数パタン生成器によって生成することが要求される。その結果、規定の故障検出率を、規定のテスト時間で達成するのは難しくなる傾向にある。
【0004】
LBISTの実行時間を短縮する技術として、マルチサイクルテストが開発されている。特許文献1および非特許文献1には、マルチサイクルテストに関する技術が記載されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2017-62222号公報
【非特許文献】
【0006】
【文献】S.Wang et al.,”Structure-Based Method for Selecting Fault-Detection-Strengthened FF under Multi-Cycle Test with Sequential Observation,” IEEE 25th Asian Test Symposium, pp.209-214, Nov.2016.
【発明の概要】
【発明が解決しようとする課題】
【0007】
詳細は後述するが、マルチサイクルテストでは、スキャンチェインから回路ブロック(FFから信号を入力し、別のFFへ信号を出力する単位回路)にテストデータが供給された後のキャプチャ動作期間において、クロック信号を変化させる(図16(B))ことにより、回路ブロックが動作する。これにより、スキャンチェインにテストデータを供給する回数を低減しても、キャプチャ動作期間にクロック信号を変化させることにより、一度のキャプチャ期間中に複数段の回路ブロックが動作するため、テストの実行時間の短縮化を図ることが可能である。しかしながら、キャプチャ動作期間において、クロック信号を変化させることにより、論理値が遷移する信号の遷移確率は低下する傾向にある(図17)。ここでの遷移確率は、キャプチャ動作期間において、任意のキャプチャ動作サイクルにおける信号線上の信号の論理値が、例えば次のキャプチャ動作サイクルでは変化している確率を示している。すなわち、任意のキャプチャ動作サイクルにおいて、信号線上の信号の論理値が例えば“1”または“0”であった場合、次のキャプチャ動作サイクルでは、信号の論理値が“0”または“1”に変化している確率が、遷移確率である。
【0008】
キャプチャ動作期間において、遷移確率が低下すると、故障検出率が低くなると言う課題が生じる。特許文献1および非特許文献1には、マルチサイクルテストは記載されているが、遷移確率の低下により生じる課題は認識されていない。
【0009】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【0010】
一実施の形態に係わる半導体装置は、次のとおりである。
【0011】
半導体装置は、第1回路ブロックと、信号線を介して第1回路ブロックから信号が供給される第2回路ブロックと、マルチサイクルテストのキャプチャ動作において、信号線における信号の論理値を遷移させる遷移期間を特定する遷移制御部とを備える。
【発明の効果】
【0012】
一実施の形態によれば、故障検出率の向上を図ることが可能な半導体装置を提供することができる。
【図面の簡単な説明】
【0013】
図1】(A)および(B)は、実施の形態1に係わる半導体装置を説明するための図である。
図2】実施の形態1に係わる半導体装置の構成を示すブロック図である。
図3】実施の形態1に係わる半導体装置の動作を示すタイミング図である。
図4】(A)~(D)は、実施の形態1の変形例1に係わる遷移発生器の構成を示すブロック図である。
図5】(A)~(C)は、実施の形態1の変形例2に係わる遷移期間調整器の構成を示すブロック図である。
図6】(A)~(C)は、実施の形態1の変形例3に係わる遷移挿入回路の構成を示すブロック図である。
図7】実施の形態2に係わる半導体装置の構成を示すブロック図である。
図8】(A)および(B)は、実施の形態1および2に係わる半導体装置による効果を説明するための図である。
図9】実施の形態3に係わる半導体装置の構成を示すブロック図である。
図10】実施の形態3の変形例に係わる遷移挿入回路の構成を示すブロック図である。
図11】実施の形態4に係わる半導体装置の構成を示す図である。
図12】(A)~(D)は、実施の形態4に係わる変形例を示すブロック図である。
図13】実施の形態5の係わる設計装置の構成を示すブロック図である。
図14】実施の形態5に係わる遷移制御論理挿入プログラムによって実行される工程を示すフローチャート図である。
図15】(A)および(B)は、スキャンテストを説明するためのブロック図である。
図16】(A)および(B)は、スキャンテストおよびマルチサイクルテストを説明するためのタイミング図である。
図17】課題を説明するための図である。
【発明を実施するための形態】
【0014】
以下、本発明の各実施の形態について、図面を参照しつつ説明する。なお、開示はあくまでも一例にすぎず、当業者において、発明の主旨を保っての適宜変更について容易に想到し得るものについては、当然に本発明の範囲に含有されるものである。また、図面は説明をより明確にするため、実際の態様に比べ、各部の幅、厚さ、形状等について模式的に表される場合があるが、あくまで一例であって、本発明の解釈を限定するものではない。
【0015】
また、本明細書と各図において、既出の図に関して前述したものと同様の要素には、同一の符号を付して、詳細な説明を適宜省略することがある。
【0016】
<スキャンテスト、マルチサイクルテストおよび課題>
理解を容易にするために、実施の形態を説明する前にスキャンテスト、マルチサイクルテストおよび課題を、図を用いて説明しておく。
【0017】
<<スキャンテストおよびマルチサイクルテスト>>
図15は、スキャンテストを説明するためのブロック図である。また、図16は、スキャンテストおよびマルチサイクルテストを説明するためのタイミング図である。
【0018】
半導体装置に内蔵された回路ブロックである組み合わせ論理回路をテストする手法としてスキャンテストがある。スキャンテストを行うためには、スキャン設計を行う必要がある。スキャン設計では、回路ブロック内に元々存在するフリップフロップ回路(以下、FF回路と称する)を、スキャンフリップフロップ回路(以下、SFF回路と称する)に置換することが行われる。
【0019】
図15(A)は、SFF回路の一例を示すブロック図である。図15(A)に示すように、SFF回路SFは、マルチプレクサMUXとFF回路FFとを備えている。マルチプレクサMUXの出力端子がFF回路FFの入力端子に接続されている。SFF回路SFは、通常動作時に入力データDが供給される第1入力端子N1Iと、テスト時にテストデータSIが供給される第2入力端子N2Iと、スキャンイネーブル信号SEが供給されるイネーブル端子NENと、クロック端子NCKと、出力端子NOUとを備えている。
【0020】
SFF回路SFのイネーブル端子NENに供給されたスキャンイネーブル信号SEが、選択信号としてマルチプレクサMUXに供給される。また、マルチプレクサMUXは、SFF回路SFの第1入力端子N1Iおよび第2入力端子N2Iに接続され、スキャンイネーブル信号SEの論理値に従って、入力データDまたはテストデータSIを選択し、選択されたデータをFF回路FFに出力する。すなわち、マルチプレクサMUXは、スキャンイネーブル信号SEに従って、第1入力端子N1Iと出力との間の経路(第1入力端子側経路)または第2入力端子N2Iと出力との間の経路(第2入力端子側経路)を選択して、FF回路FFに接続する。FF回路FFは、マルチプレクサMUXから出力されたデータを、クロック端子NCKに供給されているクロック信号CLKの変化に同期して、保持し、SFF回路SFの出力端子NOUから出力データQとして出力する。
【0021】
図15(B)は、スキャン設計された回路ブロックの構成を示すブロック図である。図15(B)において、SF1~SF10は、図15(A)で説明したSFF回路である。SFF回路SF1~SF10は、回路ブロックLGCであるテスト対象の組み合わせ論理回路において用いられていたFF回路を、スキャン設計により、SFF回路に置換したものである。SFF回路SF1~SF10の第1入力端子N1Iと出力端子NOUは、回路ブロックLGCに接続されている。一方、SFF回路SF2~SF5、SF7~SF10の第2入力端子N2Iは、前段のSFF回路SF1~SF5、SF6~SF9の出力端子NOUに接続されている。また、初段のSFF回路SF1およびSF6の第2入力端子N2Iには、テストデータが、スキャン入力データSE-Dとして供給されている。さらに、最終段のSFF回路SF5、SF10の出力端子NOUからはスキャン出力データSE-Qが出力される。
【0022】
また、SFF回路SF1~SF5のクロック端子NCKは、共通接続され、SFF回路SF6~SF10のクロック端子NCKも、共通接続され、共通接続されたクロック端子にはクロック信号SE―CKが供給されている。SFF回路SF1~SF10のイネーブル端子NENも共通接続され、共通接続のイネーブル端子には、スキャンイネーブル信号SE-Cが供給されている。
【0023】
これにより、スキャンイネーブル信号SE-Cによって、SFF回路SF1~SF10が第2入力端子側経路を選択するように指示することにより、SFF回路SF1~SF5が直列的に接続されて、1つのシフトレジスタが構成され、SFF回路SF6~SF10が直列的に接続されて、1つのシフトレジスタが構成される。このシフトレジスタが、スキャンチェインである。一方、スキャンイネーブル信号SE-Cによって、SFF回路SF1~SF10が第1入力端子側経路を選択するように指示することにより、SFF回路SF1~SF10は、第1入力端子N1Iと出力端子NOUを用いて、回路ブロックLGCを構成する通常のフリップフロップ回路として機能することになる。
【0024】
次に、図15(B)および図16(A)を参照して、スキャンテストの動作を説明する。図16(A)は、スキャンテスト動作を説明するためのタイミング図である。ここでは、SFF回路SF1~SF5によって構成されるスキャンチェインを例として説明する。
【0025】
スキャンイネーブル信号SE-Cが、ハイレベルの論理値“1”に設定される。これにより、SFF回路SF1~SF5におけるマルチプレクサMUXは、第2入力端子側経路を選択する。SFF回路SF1~SF5は、第2入力端子N2Iと出力端子NOUを用いる。クロック信号SE-CKを論理値“1”、論理値“0”と変化させることにより、SFF回路SF1~SF5により構成されたスキャンチェインが図16(A)における最初のシフトレジスタ動作(以下、スキャンシフトあるいはスキャンシフト動作と呼ぶ)を行う。これにより、スキャン入力データSE-Dが、スキャンチェイン内を順次シフトする。スキャン入力データSE-Dとして、任意のテストパタンを、例えば半導体装置の外部から供給することにより、任意のテストパタンに対応したデータが、スキャンチェインを構成するSFF回路SF1~SF5に設定される。スキャンチェインに設定された任意のテストパタンは、SFF回路SF1~SF5の出力端子NOUから出力データQとして、回路ブロックLGCに供給され、回路ブロックLGCは、任意のテストパタンを入力として動作する。
【0026】
次に、図16(A)のように、スキャンイネーブル信号SE-Cが、ロウレベルの論理値“0”に設定される。これにより、SFF回路SF1~SF5におけるマルチプレクサMUXは、第1入力端子側経路を選択する。クロック信号SE-CKを変化させることにより、SFF回路SF1~SF5は、回路ブロックLGCが動作することにより生成されたデータを、入力データDとして第1入力端子N1Iから取り込むように動作する。この取り込む動作が、キャプチャ動作(単にキャプチャとも称する)である。
【0027】
キャプチャ動作後、スキャンイネーブル信号SE-Cは、再び論理値“1”に設定され、クロック信号SE-CKの論理値が変化する。これにより、キャプチャ動作で取得したデータが、キャプチャ動作後のスキャンシフト動作により、最終段のSFF回路SF5からスキャン出力データSE-Qが出力され、テスト結果の観測(アンロード)が行われる。このアンロードと同時に、新たなテストパタンが、スキャン入力データSE-Dとして、スキャンチェインの初段SFF回路SF1に供給(ロード)される。スキャンテストにおいては、このような動作が繰り返されて、テストが実行される。ここでは、SFF回路SF1~SF5によって構成されたスキャンチェインを例にして説明したが、SFF回路SF6~SF10によって構成されたスキャンチェインも同様な動作を行う。
【0028】
ここでは、SFF回路SF1~SF5によって構成されたスキャンチェインからの出力に基づいて回路ブロックLGCが形成した信号を、同じスキャンチェインがキャプチャする例を示したが、回路ブロックLGCが形成した信号は、SFF回路SF6~SF10によって構成されたスキャンチェインがキャプチャしてもよい。
【0029】
図16(B)は、マルチサイクルテストの動作を示すタイミング図である。前記したスキャンテストとの相異点は、1回のキャプチャ動作期間において、クロック信号SE-CKが複数回変化していることである。クロック信号SE-CKを変化させるごとに、回路ブロックLGCの動作が進行し、進行した動作の結果が、キャプチャ動作により、スキャンチェインに取り込まれ、スキャン出力データSE-Qとして出力されることになる。すなわち、1回のキャプチャ動作期間において、回路ブロックLGCを動作させ、その動作の結果を取り込むキャプチャ動作のサイクルが、複数回実行されることになる。これにより、1回のキャプチャ動作期間中に検出可能な故障数を増やすことが可能となり,故障検出率を向上させるのに必要なテストステップ数を削減することが可能である。
【0030】
<<課題>>
マルチサイクルテストで、1回のキャプチャ動作期間に複数回のキャプチャ動作を行った場合、キャプチャ動作のサイクル間で、遷移確率の低い信号を伝達する信号線が存在することに依る影響が拡大する。
【0031】
図17は、課題を説明するための図である。図17には、遷移確率の低い論理回路を備えた回路ブロックが示されている。また、図17には、マルチサイクルテストのキャプチャ動作期間における動作の状態が示されている。図17において、LGC1~LGC3は、各回路ブロックを示しており、SCH1~SCH4は、スキャンチェインを示している。
【0032】
図17では、スキャンチェインSCH1を構成するSFF回路SF10~SF12からの出力データが、回路ブロックLGC1に供給され、回路ブロックLGC1が動作することにより生成されたデータが、スキャンチェインSCH2によってキャプチャされ、スキャンチェインSCH2にキャプチャされたデータが、SFF回路SF20~SF22から回路ブロックLGC2に供給される。また、回路ブロックLGC2が動作することにより生成されたデータは、スキャンチェインSCH3によってキャプチャされ、スキャンチェインSCH3によってキャプチャされたデータが、SFF回路SF30~SF32から回路ブロックLGC3に供給される。さらに、回路ブロックLGC3が動作することにより生成されたデータは、スキャンチェインSCH4によってキャプチャされる。スキャンチェインSCH4にキャプチャされたデータが、特に制限されないが、SFF回路SF40~42を順次シフトして、スキャン出力データSE-Qとして出力される。
【0033】
図17では、回路ブロックLGC1が、7個のアンド回路AD1~AD7をツリー状に接続した組み合わせ論理回路800を備えており、アンド回路AD7の出力である論理回路800の出力が、信号線801によってスキャンチェインSCH2を構成するSFF回路SF21の第1入力端子N1I(図15(A))に接続されている。論理回路800においては、アンド回路AD1~AD4の入力が、全て論理値“1”とならない限り、論理回路800の出力は論理値“0”が維持される。すなわち、論理回路800は、論理値“0”となる制御性が高い論理回路である。論理値“0”となる制御性が高いため、出力が論理値“1”に変化する確率が低い、従って、信号線801における信号は遷移確率が低くなる。
【0034】
スキャンチェインSCH2が、回路ブロックLGC1により形成されたデータをキャプチャし、回路ブロックLGC2へ出力する。このとき、SFF回路SF21がキャプチャした入力データDは、信号線801における遷移確率の低い信号となる。回路ブロックLGC2は、スキャンチェインSCH2からのデータに基づいてデータを生成する。回路ブロックLGC2において、破線で囲んだ領域CON2は、SFF回路SF21の出力コーンを示している。すなわち、SFF回路SF21から出力されるデータによって、動作が影響を受ける領域が、出力コーンCON2として示されている。この出力コーンCON2に含まれている組み合わせ論理回路802には、2サイクル目以降は1サイクル目と同じ論理値0がSFF回路SF21から供給される可能性が高くなる。その結果、論理回路802が出力する信号の遷移確率が、2サイクル目以降低下することになる。
【0035】
図17に示した例では、論理回路802によって形成された信号が、SFF回路SF30~SF32によってキャプチャされる。そのため、SFF回路SF30~SF32は、3サイクル目以降は、2サイクル目と同じ論理値を出力する可能性が高くなる。従って、出力コーンCON31~CON33に含まれる組み合わせ論理回路803が出力する信号の遷移確率は、3サイクル目以降低下することになる。
【0036】
このように、マルチサイクルテストでは、遷移確率の低い信号線の影響が、キャプチャ動作期間におけるクロックサイクル数に従って広範囲に伝播することが考えられる。すなわち、キャプチャ動作期間におけるサイクル数が増えるほど、遷移確率の低い信号線の影響が広がることが考えられる。
【0037】
例えば、論理回路802、803に故障が内在している場合であっても、故障は、遷移確率の低い信号線の影響により隠蔽されてしまうことになる。すなわち、遷移確率の低い信号線の影響により、例えばSFF回路SF30~SF32の第1入力端子に接続された信号線または/およびSFF回路SF40~SF42の第1入力端子に接続された信号線における信号が変化せずに固定となるため、内在している故障を、マルチサイクルテストにより活性化し、観測する機会が失われ、故障検出率が低くなる。
【0038】
(実施の形態1)
<全体構成>
図1は、実施の形態1に係わる半導体装置を説明するための図である。図1(A)において、100は、実施の形態1に係わる半導体装置を示し、500は、テスト装置を示し、501は、テスト装置500と半導体装置100と間のデータおよび信号を示している。テスト装置500は、テスト時に、後で図2等を用いて説明するクロック信号SE-CK、スキャンイネーブル信号SE-C、テストイネーブル信号SE-T等を生成して、半導体装置100に供給する。また、テスト装置500は、テスト時に、テストデータを生成し、スキャン入力データSE-Dとして、半導体装置100に供給する。一方、半導体装置100は、テスト時に、テスト結果であるスキャン出力データSE-Qをテスト装置500に供給する。テスト装置500は、供給されたスキャン出力データSE-Qを用いて、半導体装置100における故障等の解析を行う。
【0039】
実施の形態1~5では、テスト装置500を用いて、半導体装置100をテストする場合を例として説明するが、これに限定されるものではない。例えば、半導体装置100にテスト装置の機能を実装するようにしてもよい。図1(B)には、半導体装置100にテスト装置の機能を実装した場合が示されている。
【0040】
図1(B)において、100Bは半導体装置を示している。半導体装置100Bは、図1(A)に示した半導体装置100に相当する回路ブロック100Aと、パワーオンリセット回路101と、シーケンサー102とを備えている。パワーオンリセット回路101には、電源スイッチ103を介して電源電圧Vdが供給されている。電源スイッチ103が導通状態にされると、パワーオンリセット回路101がパワーオンを検出し、シーケンサー102にパワーオンを通知する。パワーオンが通知されると、シーケンサー102が、図1(A)に示したテスト装置500と同様なデータと信号を回路ブロック100Aに供給する。また、回路ブロック100Aからの出力を基にして、シーケンサー102が回路ブロック100Aの故障等を解析する。なお、104は、回路ブロック100Aが通常動作のときに入出力するデータを示している。
【0041】
<半導体装置100の構成>
図2は、実施の形態1に係わる半導体装置の構成を示すブロック図である。半導体装置100は複数の回路ブロックを備えているが、図1には説明に必要な回路ブロックのみが示されている。
【0042】
特に制限されないが、半導体装置100の特定の機能が、回路ブロックLGCによって実現されている。この回路ブロックLGCは、組み合わせ論理回路によって構成されている。回路ブロックLGCに含まれているFF回路が、スキャン設計によって、SFF回路に置換され、置換されたSFF回路が、図2では、符号SF1~SFnとして示されている。SFF回路SF1~SFnは、図15(A)で説明したSFF回路と同じ構成であるため、説明は省略する。SFF回路SF1~SFnのクロック端子NCKは、半導体装置100に設けられた外部端子TKに接続され、イネーブル端子NENは、外部端子TCに接続されている。外部端子TKには、クロック信号SE-CKが供給され、外部端子TCには、スキャンイネーブル信号SE-Cが供給される。
【0043】
マルチサイクルテストのとき、SFF回路SF1~SFnによってスキャンチェインが構成される。このとき、スキャンチェインの初段SFF回路として動作するSFF回路SF1の第2入力端子N2Iは、外部端子TDに接続され、次段以降のSFF回路として動作するSFF回路SF2~SFnの第2入力端子N2Iは、前段のSFF回路の出力端子NOUに接続されている。また、スキャンチェインの最終段SFF回路として動作するSFF回路SFnの出力端子NOUは、外部端子TOに接続され、SFF回路SFnの出力がスキャン出力データSE-Qとして出力される。SFF回路SF1~SFnのうち、SFF回路SF2~SFnの第1入力端子N1Iおよび出力端子NOUは、回路ブロックLGCに接続されている。
【0044】
実施の形態1に係わる半導体装置100は、遷移制御部200と遷移挿入回路201と外部端子TTとを備えている。外部端子TTには、テストイネーブル信号SE-Tが供給される。
【0045】
遷移制御部200は、遷移期間調整器203と、遷移発生器204と、3入力アンド回路202とを備えている。3入力アンド回路202には、遷移発生器204からの遷移論理値信号212と、遷移期間調整器203からの遷移期間信号211と、テストイネーブル信号SE-Tが供給される。3入力アンド回路202は、これらの信号間でアンド演算を行い、遷移制御信号210を出力する。遷移制御部200は、マルチサイクルテストのキャプチャ動作期間において、遷移期間信号211によって指定される期間のとき、遷移論理値信号212に従った遷移制御信号210を、遷移挿入回路201に供給する。
【0046】
遷移挿入回路201は、回路ブロックLGCにおける所定の信号線部に設けられている。図2においては、回路ブロックLGCが備える2つの回路ブロックLGC1とLGC2とを接続する信号線CL部に、遷移挿入回路201が設けられている。すなわち、回路ブロックLGC1とLGC2とを接続する信号線CLが、信号線CL1とCL2に分離され、信号線CL1とCL2との間に遷移挿入回路201が接続されている。遷移挿入回路201は、マルチサイクルテストのキャプチャ動作期間において、遷移制御信号210に従って、信号線CL2における論理値を遷移させるように動作する。なお、信号線CLを、遷移挿入経路と見なした場合、分離された信号線CL1を遷移挿入点と見なすことができる。
【0047】
遷移発生器204は、実施の形態1においては、スキャンチェインを構成する初段のSFF回路SF1とインバータ回路206とを備えている。インバータ回路206は、SFF回路SF1の出力端子NOUとSFF回路SF1の第1入力端子N1Iとの間に接続されている。インバータ回路206は、SFF回路SF1の出力端子NOUから出力された信号の論理値を反転して、SFF回路SF1の第1入力端子N1Iに供給する。すなわち、インバータ回路206によって、SFF回路SF1の反転自己ループが構成されている。
【0048】
SFF回路SF1は、スキャンチェインを構成する複数のSFF回路の一部であるため、スキャンシフトのときに、このSFF回路SF1にもデータが設定される。マルチサイクルテストのキャプチャ動作期間において、クロック信号SE-CKを変化させることにより、SFF回路SF1の第1入力端子N1Iには、出力端子NOUから出力されている信号に対して論理反転された信号が、インバータ回路206によって供給されることになる。その結果、SFF回路SF1は、キャプチャ動作期間において、クロック信号SE-CKが変化するたびに、反転された論理値を格納し、出力端子NOUから論理反転した遷移論理値信号212を出力する。
【0049】
図2では、スキャンチェインを構成する初段のSFF回路SF1を、遷移発生器204に用いる例を示したが、初段のSFF回路に限定されない。例えば、遷移発生器204に用いるSFF回路SF1は、スキャンチェインを構成する複数のSFF回路のうちの中段のSFF回路であってもよいし、最終段のSFF回路であってもよい。このように、遷移発生器204に用いるSFF回路SF1として、スキャンチェインを構成する複数のSFF回路の一部を用いることにより、スキャンシフトのときに、遷移発生器204を構成するSFF回路SF1の初期設定を行うことが可能である。
【0050】
遷移期間調整器203は、FF回路205とインバータ回路207とを備えている。FF回路205のクロック端子FCKには、クロック信号SE-CKが供給され、入力端子FINには、インバータ回路207によって論理反転されたスキャンイネーブル信号SE-Cが供給されている。これにより、FF回路205は、クロック信号SE-CKが変化すると、論理反転されたスキャンイネーブル信号SE-Cを取り込み、保持し、出力端子FOUから、保持されている論理値の信号を、遷移期間信号211として出力する。
【0051】
遷移期間信号211と、遷移論理値信号212と、テストイネーブル信号SE-Tとをアンド演算することにより得られた遷移制御信号210が、遷移挿入回路201に供給される。図2では、遷移挿入回路201は2入力排他論理和(XOR)回路によって構成されている。2入力排他論理和の一方の入力は、信号線CL1に接続され、他方の入力は、3入力アンド回路202の出力に接続されている。また、XOR回路の出力は、信号線CL2に接続されている。見方を変えると、遷移制御信号210によって制御される遷移挿入回路201が、第1回路ブロックLGC1と第2回路ブロックLGC2との間に挿入されている。
【0052】
テストイネーブル信号SE-Tは、遷移制御部200による遷移制御を有効にするか無効にするかを選択する信号である。図2に示した構成では、テストイネーブル信号SE-Tを論理値“0”に設定することにより、遷移制御部200による遷移制御は無効となり、論理値“1”に設定することにより、遷移制御部200による遷移制御が有効となる。
【0053】
後で、図3を用いて説明するが、スキャンイネーブル信号SE-Cを論理値“0”にすることにより、マルチサイクルテストにおいて、キャプチャ動作が開始する。キャプチャ動作の開始から遷移期間調整器203によって定まるキャプチャ動作サイクル後に、遷移発生器204から出力されている遷移論理値信号212が、遷移制御信号210として遷移挿入回路201に供給されることになる。遷移論理値信号212は、クロック信号SE-CKが変化するたびに論理値が反転するため、遷移挿入回路201を構成するXOR回路にも、クロック信号SE-CKの変化に応じて論理値が反転する遷移制御信号210が供給されることになる。これにより、回路ブロックLGC1から信号線CL1に出力されている信号の論理値が、“0”または“1”に固定されていても、信号線CL2には、遷移挿入回路201から論理値が変化する信号が供給され、回路ブロックLGC2は、信号線CL2における信号の論理値の変化に従って動作することになる。
【0054】
<動作>
次に、図2に示した半導体装置100におけるマルチサイクルテストの動作を、図を用いて説明する。図3は、実施の形態1に係わる半導体装置の動作を示すタイミング図である。
【0055】
テスト対象回路ブロックである回路ブロックLGCにおいて、マルチサイクルテストのキャプチャ動作期間中に、遷移確率が低くなる信号線を遷移挿入点として、先ず識別する。この場合、信号線における信号の遷移確率は、例えばCOP(Controllability Observability Program) Testability Measure解析(以下、所定の解析と称する)を複数のキャプチャ動作サイクルに適用することにより算出することが可能である。ここでは信号線CL1の部分が、遷移挿入点として識別されたものとして説明する。
【0056】
遷移挿入点を含む遷移挿入経路である信号線CLを分離し、遷移挿入回路201を分離した遷移挿入経路間に挿入する。すなわち、図2に示したように、信号線CLを分離して形成された信号線CL1とCL2との間に、遷移挿入回路201を挿入する。挿入した遷移挿入回路201に、遷移制御信号210が入力されるように、遷移挿入回路201と遷移制御部200とを接続する。
【0057】
通常動作時は、テストイネーブル信号SE-Tを論理値“0”にし、遷移制御部200を無効に設定する。これにより、遷移制御部200は、遷移制御信号210を論理値“0”にする。遷移挿入回路201を構成するXOR回路には、論理値“0”の遷移制御信号210が供給されるため、遷移挿入回路201は、遷移挿入点である信号線CL1における信号の論理値に対応した論理値を信号線CL2に出力することになる。すなわち、通常動作時には、遷移挿入回路201をスルーして、回路ブロックLGC1の出力が回路ブロックLGC2に伝達されることになる。
【0058】
図3に示すように、マルチサイクルテスト時には、テストイネーブル信号SE-Tを論理値“1”にし、遷移制御部200を有効に設定する。また、マルチサイクルテストにおいて、スキャンイネーブル信号SE-Cを、論理値“1”から論理値“0”に変化させることにより、キャプチャ動作が開始する。開始されたキャプチャ動作は、スキャンイネーブル信号SE-Cが論理値“0”に維持されている期間、継続する。すなわち、マルチサイクルテスト時において、スキャンイネーブル信号SE-Cが、論理値“0”に維持されている期間が、1回のキャプチャ動作期間に相当する。
【0059】
テストイネーブル信号SE-Tが論理値“1”に設定され、スキャンイネーブル信号SE-Cが論理値“0”に設定されることにより、遷移制御部200は、マルチサイクルテストのキャプチャ動作期間中に、遷移制御信号210の論理値を変化させるように動作する。すなわち、キャプチャ動作期間において、遷移期間信号211が論理値“1”となるキャプチャ動作サイクルでは、遷移論理値信号212の論理値の遷移が、遷移制御信号210に現れ、この遷移が遷移挿入回路201を介して、遷移挿入経路である信号線CL2に伝播する。
【0060】
遷移挿入点における遷移確率は非常に低い。例えば、回路ブロックLGC1が、図17に示したような7個のアンド回路AD1~AD7をツリー状に接続した組み合わせ論理回路800を備え、論理回路800の出力が信号線CLに接続されていた場合、遷移挿入点である信号線CL1における信号は論理値“0”となる確率が非常に高く、遷移確率は非常に低くなる。そのため、キャプチャ動作期間において発生する複数のキャプチャ動作サイクルのほとんどにおいて、遷移挿入点である信号線CL1における論理値は“0”となる。
【0061】
遷移期間調整器203においては、インバータ回路207によって反転されたスキャンイネーブル信号SE-Eが、FF回路205に供給されている。FF回路205は、クロック信号SE-CKが、ハイレベルからロウレベル、すなわち論理値“1”から“0”への変化に同期して、反転されたスキャンイネ-ブル信号SE-Cを取り込み,出力する。そのため、図3に示すように、スキャンイネーブル信号SE-Cを論理値“0”に変化させて、キャプチャ動作を開始させた後で、クロック信号SE-CKの論理値を、“1”から“0”へ変化させると、遷移期間信号211の論理値が“1”に変化する。すなわち、キャプチャ動作を開始した後、キャプチャ動作クロックサイクル901から、遷移期間信号211の論理値が“1”となる。
【0062】
また、遷移発生器204を構成するSFF回路SF1は、スキャンチェインを構成するSFF回路の一部となっているため、遷移発生器204は、スキャンシフト動作の期間においては、スキャン入力データSE-Dの論理値に従った論理値の遷移論理値信号212を出力する。これに対して、キャプチャ動作期間においては、反転自己ループによって、SFF回路SF1は、キャプチャ動作サイクルごとに、論理値が反転する遷移論理値信号212を出力する。
【0063】
これにより、図3に示すように、キャプチャ動作期間が開始してから、キャプチャ動作クロックサイクル901から、遷移制御信号210の論理値が変化するようになり、以降、キャプチャ動作期間が終了するまで、論理値の変化が継続する。
【0064】
遷移挿入回路201は、XOR回路によって構成されているため、キャプチャ動作期間においては、遷移制御信号210の論理値の変化が、信号線CL2に伝達されることになる。
【0065】
以上の動作によって、遷移挿入経路を構成する信号線CL2には、図3に示すように、キャプチャ動作期間の間、論理値の遷移が継続的に発生する信号が供給されることになる。これにより、キャプチャ動作期間において、回路ブロックLGC2には、継続的に論理値が遷移する信号が供給されることになり、回路ブロックLGC2における故障を検出する機会が減るのを防ぐことが可能である。その結果、回路ブロックLGCにおける故障検出率の向上を図ることが可能である。
【0066】
図2では、回路ブロックLGCに含まれる回路ブロックLGC1とLGC2とを接続する信号線CLを分離して、分離した信号線間に遷移挿入回路201を挿入する例を示した。この回路ブロックLGC1およびLGC2は、それぞれ任意の回路構成でよく、回路ブロックLGCを構成する論理回路間を接続する任意に信号線を分離し、遷移挿入回路を挿入すればよい。
【0067】
また、図2には、遷移挿入回路201が一つの場合が示されているが、遷移挿入回路201は複数であってもよい。この場合、遷移挿入回路のそれぞれは、互いに異なる任意の信号線に挿入する。また、複数の遷移挿入回路を設ける場合、遷移制御部は、複数の遷移挿入回路に対して共通であってもよいし、遷移挿入回路ごとに異なる遷移制御部を設けるようにしてもよい。
【0068】
<変形例1>
図2では、SFF回路SF1とインバータ回路206とによって構成した遷移発生器を示したが、遷移発生器は、遷移論理値信号212の論理値を“0”から“1”または“1”から“0”に継続的に、一定の確率で変化させる構成であればよい。以下、遷移発生器の変形例を、図面を用いて説明する。図4は、実施の形態1の変形例1に係わる遷移発生器の構成を示すブロック図である。
【0069】
図4(A)において、204_Aは、遷移発生器を示している。遷移発生器204_Aは、半導体装置100に設けられた外部端子T212を備えている。この外部端子T212には、図2に示したクロック信号SE-CKに同期して変化するクロック信号CK_Aが供給される。例えば、クロック信号SE-CKが、クロック信号CK_Aとして外部端子T212に供給されてもよい。これにより、遷移発生器204_Aは、クロック信号SE-CKを、遷移論理値信号212として出力することになる。
【0070】
図4(B)において、遷移発生器204_Bは、FF回路300とインバータ回路301を備えている。インバータ回路301によって、FF回路300の反転自己ループが構成されている。すなわち、FF回路300の出力がインバータ回路301を介してFF回路300の入力に供給されている。クロック信号CK_Bが変化するたびに、FF回路300は、それが出力している論理値を反転して取り込み、出力する。FF回路300のクロック端子FCKに供給されるクロック信号CK_Bとしては、クロック信号SE-CKに同期して変化する信号を用いる。これにより、マルチサイクルテストのキャプチャ動作期間においては、100%の確率で、論理値が反転(遷移)する信号が、FF回路300の出力から、遷移論理値信号212として出力される。
【0071】
図4(C)においては、疑似乱数発生器(PRPG)302が、遷移発生器204_Cとして用いられる。疑似乱数発生器302を用いることにより、50%の確率で、遷移論理値信号212の論理値が遷移することになる。例えば、擬似乱数発生器302は、入力されるクロック信号の変化に応じて論理値が遷移する、遷移論理値信号212を出力する。
【0072】
図4(D)において、204_Dは遷移発生器を示している。遷移発生器204_Dは、擬似ランダムパターンを発生するPRPG(Pseudo Random Pattern Generator)302とFF回路303とXOR回路304とを備えている。PRPG302の出力が、クロック信号CK_Dの変化により、FF回路303に取り込まれ、FF回路303の出力とPRPG302の出力が、XOR回路304に供給される。これにより、PRPG302の出力の遷移確率を、遷移論理値信号212が論理値“1”となる割合に変換することが可能である。
【0073】
このように、遷移論理値信号212における信号が、所望の遷移となるように、遷移発生回路は種々の回路構成とすることができる。
【0074】
<変形例2>
遷移期間調整器203は,マルチサイクルテストのキャプチャ動作期間において、どのキャプチャ動作サイクルで,遷移挿入経路において論理値を遷移させるかを定める決定信号を出力する論理回路である。図2では、遷移期間調整器203は、FF回路205とインバータ回路207とによって構成されていたが、これに限定されるものではない。以下、図を用いて、遷移期間調整器の変形例を説明する。図5は、実施の形態1の変形例2に係わる遷移期間調整器の構成を示すブロック図である。
【0075】
図5(A)において、203_Aは、遷移期間調整器を示している。遷移期間調整器203_Aは、インバータ回路305を備えている。インバータ回路305は、スキャンイネーブル信号SE-Cを論理反転して、遷移期間信号211として出力する。遷移期間調整器203_Aは、スキャンイネーブル信号SE-Cが論理値“0”にされ、キャプチャ動作が指示されると、遷移期間信号211の論理値を“1”にする。そのため、遷移期間調整器203_Aは、キャプチャ動作期間において、常に遷移挿入経路において遷移が発生するのを許容することになる。図2では、遷移期間信号211の論理値“1”が、遷移の挿入を有効にする論理値としているが、例えば論理値“0”が、遷移の挿入を有効にする論理値とすれば、インバータ回路305は必要とされなくなる。図5(A)によれば、遷移期間調整器の構成を単純にすることが可能である。
【0076】
図5(B)において、遷移期間調整器203_Bは、インバータ回路305とFF回路306、307とを備えている。図5(B)に示した遷移期間調整器203_Bは、図2に示した遷移期間調整器203と類似している。主な相異点は、2つのFF回路306、307が直列的に接続されていることである。すなわち、論理反転されたスキャンイネーブル信号SE-Cは、クロック信号SE-CKによって制御されるFF回路306、307により構成された2段のパイプラインを通して、遷移期間信号211として出力される。これにより、遷移期間調整器203_Bは、キャプチャ動作期間が開始した後の第3回目のキャプチャ動作サイクルから、遷移の挿入を有効にすることができる。ここでは、2段のパイプラインを示したが、直列接続されるFF回路の段数を増やすことにより、遷移の挿入を有効にするキャプチャ動作サイクルを、さらに遅くすることも可能である。
【0077】
図5(C)において、遷移期間調整器203_Cは、ノア回路308と、FF回路309~311とを備えている。FF回路309~311を3段直列に接続することにより、3段のパイプラインが構成されている。ノア回路308には、スキャンイネーブル信号SE-Cと、3段パイプラインを介した自らの出力が供給されている。また、3段パイプラインの出力が、遷移期間信号211となっている。これにより、遷移期間調整器203_Cは、キャプチャ動作期間において、周期的に論理値が“1”となる遷移期間信号211を出力することが可能である。その結果として、キャプチャ動作期間において、遷移の挿入が、周期的に有効になる。
【0078】
このように、遷移期間調整器から出力される遷移期間信号211によって、キャプチャ動作期間において遷移の挿入を開始するキャプチャ動作サイクルおよび遷移を挿入している期間を特定することが可能である。すなわち、キャプチャ動作期間において遷移を挿入している遷移期間を、遷移期間信号211によって特定することが可能である。
【0079】
図5では、スキャンイネーブル信号SE-Cを利用して、遷移期間信号211を形成する遷移期間調整器を説明したが、これに限定されるものではない。遷移期間調整器は、例えば、スキャンイネーブル信号SE-Cを利用しない構成であってもよく、遷移期間調整器は、マルチサイクルテストのキャプチャ動作期間中において、遷移の挿入を有効にする期間を決定できるような機能を有していればよい。
【0080】
図2および図5(B)~(C)で示したように、FF回路によって構成されたパイプラインによって、遷移の挿入が有効となるタイミングが、第2回目のキャプチャ動作サイクル以降となるようにするのは、後で実施の形態2で説明するが、遷移を挿入することにより生じる効果をより高くすることが可能であるためである。
【0081】
<変形例3>
遷移挿入回路201は、回路ブロックにおいて、遷移挿入点と遷移挿入経路である信号線との間に挿入する論理回路であり、遷移挿入点に接続される入力と、遷移制御信号210が供給される入力と、遷移挿入経路に接続される出力とを備えている。遷移挿入回路201は,遷移制御信号210の論理値により,次の機能を提供する。遷移制御信号210が論理値“0”のとき,遷移挿入回路の出力は、遷移挿入点における信号の論理値と同じ論理値となる。遷移制御信号210の論理値が“0”から“1”または“1”から“0”に変化したとき、遷移挿入回路の出力における信号の論理値は変化する。図2では、遷移挿入回路として、XOR回路が用いられていたが、遷移挿入回路は、これに限定されるものではない。以下、遷移挿入回路の変形例を、図を用いて説明する。図6は、実施の形態1の変形例3に係わる遷移挿入回路の構成を示すブロック図である。
【0082】
図6(A)においては、遷移挿入回路201として、オア回路312が用いられている。図6(B)においては、一方の入力にインバータ機能を設けたアンド回路313が、遷移挿入回路201として用いられている。すなわち、アンド回路313は、遷移制御信号210の論理反転を行い、反転された遷移制御信号210と遷移挿入点における信号との間でアンド演算を実行し、遷移挿入経路へ出力する。
【0083】
遷移挿入点における信号が、論理値“0”となる制御性が高い場合、すなわち論理値“0”となる可能性が高い場合、遷移制御信号210の遷移を遷移経路に伝播するように、図6(A)に示したようなオア回路を、遷移挿入回路201として用いるのが望ましい。また、遷移挿入点における信号が、論理値“1”となる制御性が高い場合、遷移制御信号210の遷移を遷移経路に伝播するように、図6(B)に示したようなアンド回路を、遷移挿入回路201として用いるのが望ましい。さらに、遷移挿入点における信号の論理値“0”および“1”の制御性に関係なく、遷移制御信号210の遷移を遷移経路に伝搬するようにするには、図2で示したように、XOR回路によって遷移挿入回路201を構成することが望ましい。
【0084】
また、XOR回路と等価な機能を有する遷移挿入回路として、図6(C)に示すような回路がある。図6(C)においては、論理反転機能を備えたマルチプレクサ314が、遷移挿入回路201として用いられる。この場合、遷移制御信号210が、マルチプレクサ314の選択信号として用いられ、マルチプレクサ314の第1入力端子には、遷移挿入点における信号が供給され、第2入力端子には、遷移挿入点における信号が論理反転されて供給される。
【0085】
遷移挿入点は,遷移挿入回路201の挿入対象箇所となる信号線CL1であり,テスト対象ユーザー回路中のキャプチャ動作期間中における遷移確率が低い信号線が該当する。遷移挿入点として扱える信号線は,回路ブロック中において論理回路間の入出力を接続する信号線であれば,特に信号線の場所は限定されない。遷移挿入経路は,遷移挿入点に挿入した遷移挿入回路201の出力に繋がる信号線CL2で,遷移挿入回路201を挿入する前は遷移挿入点と連結した信号線である。
【0086】
<変形例1>~<変形例3>で述べたそれぞれの構成は、相互に組み合わせてもよい。
【0087】
(実施の形態2)
実施の形態2では、より好適な半導体装置の構成を説明する。図7は、実施の形態2に係わる半導体装置の構成を示すブロック図である。図7は、図17と類似しているので、相異点を主に説明する。
【0088】
相異点は、SFF回路SF21の出力端子NOU(図15(A))と回路ブロックLGC2とを接続する信号線が分離され、出力端子NOUに接続された信号線CL1と回路ブロックLGC2との間に遷移挿入回路を構成するXOR回路50が接続されている点と、遷移制御部200が追加されている点である。
【0089】
XOR回路50は、信号線CL1に接続された入力と、遷移制御信号210が供給される入力と、回路ブロックLGC2に接続された出力とを備えている。
【0090】
遷移制御部200は、図2で説明した遷移制御部と類似している。相異点は、図2においては、SFF回路SF1として、スキャンチェインの初段のSFF回路が用いられているのに対して、図7では、SFF回路SF1として、スキャンチェインSCH1の最終段のSFF回路が用いられていることである。そのため、SFF回路SF1の第2入力端子N2Iは、SFF回路SF12の出力端子に接続され、SFF回路SF1の出力端子NOUは、インバータ回路206とアンド回路203に接続されるとともに、スキャンチェインSCH1の出力であるスキャン出力データSE-Qを出力する端子としても機能している。なお、図7では、図面が複雑になるため、スキャン出力データSE-Qは、SFF回路SF1のブロックから直接出力されるように描かれている。また、図7では、図2に示した符号203および205の破線は省略されている。
【0091】
図7に示すように、信号線CL1と回路ブロックLGC1との間にXOR回路50を挿入する前に、信号の遷移確率の低い信号線を識別する。これは、信号線CL1と回路ブロックLGC1とが接続された状態の半導体装置に対して事前マルチサイクルテストを実施し、事前マルチサイクルテストにおける複数のキャプチャ動作サイクルで、所定の解析を実行することにより、複数の信号線から遷移確率の低い信号線を識別する。
【0092】
例えば、事前マルチサイクルテストにおいて、2回のキャプチャ動作サイクルが実施される場合を説明する。
【0093】
図17で説明したように、7個のアンド回路AD1~AD7をツリー状に接続した論理回路800に接続された信号線801は、論理値“0”となる制御性が高い。そのため、第1回目のキャプチャ動作サイクルにおける所定の解析で、信号線801は、論理値“0”となる制御性が高いと識別される。また、第2回目のキャプチャ動作サイクルにおける所定の解析でも、信号線801は、同様に、論理値“0”となる制御性が高いと識別される。2回の所定の解析で、信号線801は、論理値“0”となる制御性が高いと識別されるため、信号線801における信号線の遷移確率は低いと識別される。
【0094】
信号線801に繋がるSFF回路を介して、信号線801に接続されている信号線、すなわち、信号線801に第1入力端子が接続されたSFF回路SF21の出力端子に接続された信号線CL1には、第1回目のキャプチャ動作サイクルの後で、信号線801における信号の論理値が伝播することになる。従って、信号線CL1における信号の遷移確率は、第2回目以降のキャプチャ動作サイクルにおいて、低くなる。
【0095】
キャプチャ動作期間において、クロック信号SE-CKが変化すると、信号線CL1に係わる出力コーンCON2に含まれる組み合わせ論理回路802においては、第2回目のキャプチャ動作サイクル901以降(1回目のクロック信号SE-CKの変化後)で、信号の遷移確率が低くなる。さらに、キャプチャ動作期間において、論理回路802の演算結果を入力とするSFF回路SF30~SF32の出力コーンCON31~CON32に含まれる組み合わせ論理回路803においては、信号の遷移確率が、第3回目のキャプチャ動作サイクル902以降で低くなる。このように,マルチサイクルテストにおいては,信号線801の遷移確率の影響がSFF回路を介した後段の組合せ論理回路802、803にまで及ぶ。
【0096】
実施の形態2においては、図7に示したように、信号線CL1と回路ブロックLGC2との間にXOR回路50が挿入されている。実施の形態1で述べたように、遷移制御部200は、マルチサイクルテストのキャプチャ動作を開始したタイミングではなく、第2回目のキャプチャ動作サイクル901以降において、遷移制御信号210の論理値を変化させる。そのため、第2回目以降のキャプチャ動作サイクル901以降において、組み合わせ論理回路802における信号の遷移確率を向上させることが可能となる。同様に、第3回目以降のキャプチャ動作サイクル902以降において、組み合わせ論理回路803における信号の遷移確率を向上させることが可能である。
【0097】
遷移確率の低い信号を伝達する信号線は、マルチサイクルテストのキャプチャ動作期間においても、遷移確率の低い信号を伝達する。マルチサイクルテストのキャプチャ動作期間において、信号線における信号が、例えば連続したキャプチャ動作サイクル間で遷移していないと、回路ブロックにおける新たな故障を活性化することができない。例えば、遷移確率の低い信号を伝達する信号線に接続される出力コーンに含まれる論理回路における故障を検出する機会が失われることになる。
【0098】
実施の形態1、2によれば、マルチサイクルテストのキャプチャ動作期間において、遷移確率の低い信号を伝達する信号線に接続される回路ブロックに対して、キャプチャ動作期間のとき、遷移する信号を強制的に供給することができる。これにより、1回のキャプチャ動作期間において、回路ブロックにおいて故障を発生させる機会、すなわち故障を活性化させる機会を増やすことが可能である。その結果、1回のキャプチャ動作期間において、検出することが可能な故障の数を増やすことが可能となる。
【0099】
また、回路ブロックを異なるテストパタンでテストするためには、スキャンチェインが異なるテストパタンによって埋めるようにすることが要求される。そのため、スキャンシフト動作には、クロック信号SE-CKによる多数のサイクル(例えば数千サイクル)が必要とされる。これに対して、キャプチャ動作期間においては、クロック信号SE-CKを1回変化させることにより、回路ブロックに異なるテストパタンを供給することが可能である。実施の形態1、2によれば、回路ブロックに供給される信号の遷移確率を高くすることが可能であるため、キャプチャ動作期間において、確実に異なるテストパタンを回路ブロックに供給することが可能となる。その結果、目標とする故障検出率を達成するのに必要なテスト時間を削減することが可能である。
【0100】
次に、具体的なテスト時間削減の効果例を、図を用いて説明する。図8は、実施の形態1および2に係わる半導体装置による効果を説明するための図である。図8(A)において、横軸は、1回のキャプチャ動作期間におけるキャプチャ動作サイクルのサイクル数を示し、縦軸は、回路ブロックを構成する論理セルの入出力ピン単位における信号の変化をカウント対象としたトグル(論理値”0”から”1”または”1”から”0”の変化)の数(WSA)を示している。
【0101】
図8(A)においては、実線の曲線は、実施の形態1および2で述べたように、遷移確率の低い信号を伝達する信号線と回路ブロックとを分離し、回路ブロックに対して、遷移確率が100%の信号を供給するようにした場合を示し、破線の曲線は、遷移確率が50%の信号を供給するようにした場合を示している。遷移確率の低い信号線は、所定の解析によって特定している。また、遷移制御部と遷移挿入回路とによる半導体チップの面積増加が、1%程度となるように、遷移確率の低い信号線の数を選定している。遷移確率が100%および50%の信号は、第3回目のキャプチャ動作サイクルにおいて供給されている。
【0102】
図8(A)において、一点鎖線の曲線は、遷移挿入回路を挿入していない場合、すなわち、信号線と回路ブロックとを分離せずに、信号線における信号が回路ブロックに供給されるようにした場合を示している。
【0103】
図8(A)に示されているように、実施の形態1および2で示したように、遷移確率の高い信号を回路ブロックに供給することにより、第3回目のキャプチャ動作サイクル以降、WSAが向上している。また、一点鎖線の曲線で示されているように、WSAは、第2回目のキャプチャ動作サイクル以降で低下する傾向にある。そのため、第2回目のキャプチャ動作サイクル以降に、遷移確率の高い信号を、回路ブロックに供給することが、WSAを向上させるのに効果的である。
【0104】
図8(B)において,横軸はスキャン入力データSE-Dとして供給されるテストパタンの数を示し、縦軸は故障検出率を示している。図8(B)における実線の曲線、破線の曲線および一点鎖線の曲線に係わる条件は、図8(A)で述べた実線の曲線、破線の曲線および一点鎖線の曲線と同じである。図8(B)は、マルチサイクルテストのキャプチャ動作サイクルの数が10回の場合が示されている。目標の故障検出率を、例えば90%とした場合、これを達成するのに、一点鎖線で示した構成、すなわち遷移確率の高い信号を回路ブロックに供給しない構成では、約600パタンが必要である。これに対して、50%、100%の遷移確率の信号を供給する構成では、約300パタンで、目標の故障検出率90%を達成することができる。すなわち、目標検出率を達成するのに必要なスキャンテスト時間を半減することができる。このように,実施の形態1および2によれば、キャプチャ動作期間における回路ブロック内のWSAを向上させ,結果としてスキャンテスト時間を削減することができる。
【0105】
(実施の形態3)
図9は、実施の形態3に係わる半導体装置の構成を示すブロック図である。図9に示した半導体装置100は、図2に示した半導体装置と類似しており、図9には、主に相違する部分のみが描かれている。すなわち、図2に示したスキャンチェインを構成するSFF回路SF2~SFnに係わる部分およびスキャン入力データSE-Dは、図9では省略されている。図2では、遷移発生器204を構成するSFF回路SF1がスキャンチェインを構成するSFF回路としても用いられていたが、図9では、省略されているSFF回路SF2~SFnだけで、スキャンチェインが構成されている。
【0106】
図2との主な相異点は、遷移制御部200が遷移制御部200Aに変更され、遷移挿入回路としてマルチプレクサ404が用いられていることである。変更された遷移制御部200Aは、遷移発生器として図4(B)で説明した遷移発生器204_Bと、図2で説明した遷移期間調整器203と、2つのアンド回路400、401とを備えている。アンド回路400には、遷移発生器204_Bからの遷移論理値信号212とテストイネーブル信号SE-Tが供給され、アンド回路400は、遷移発生信号402を出力する。また、アンド回路401には、遷移期間信号211とテストイネーブル信号SE-Tが供給され、アンド回路401は、遷移有効信号403を出力する。
【0107】
アンド回路400は、テストイネーブル信号SE-Tが、有効を示す論理値“1”のとき、遷移論理値信号212を、遷移発生信号402として出力する。また、アンド回路401は、テストイネーブル信号SE-Tが、有効を示す論理値“1”のとき、遷移期間信号211を、遷移有効信号403として出力する。
【0108】
遷移挿入回路であるマルチプレクサ404は、2つの入力端子と、制御端子と、出力端子とを備えている。マルチプレクサ404の一方の入力端子は、回路ブロックLGC1の信号線CL1に接続され、他方の入力端子には、遷移発生信号402が供給されている。また、マルチプレクサ404の制御端子には、遷移有効信号403が供給されている。これにより、マルチプレクサ404は、遷移有効信号403の論理値に従って、信号線CL1のおける信号または遷移発生信号402を選択し、選択した信号または遷移発生信号402を、出力端子を介して信号線CL2に供給する。
【0109】
より具体的に述べると、マルチプレクサ404は、遷移有効信号403が無効を示す論理値“0”のとき,信号線CL1における信号を選択して、信号線CL2に供給する。一方、遷移有効信号403が有効を示す論理値“1”のとき,マルチプレクサ404は、遷移発生信号402を選択して、信号線CL2に供給する。
【0110】
信号線CL1は、実施の形態1および2で説明した所定の解析によって、遷移確率の低い信号を伝達する信号線として識別された信号線である。
【0111】
通常動作においては、テストイネーブル信号SE-Tが、無効を示す論理値“0”に設定される。これにより、遷移有効信号407は無効を示す論理値“0”となる。その結果、マルチプレクサ404は、信号線CL1における信号を選択して、信号線CL2に出力する。これにより、回路ブロックLGC2には、回路ブロックLGC1からの信号に応じて動作することになる。
【0112】
これに対して、マルチサイクルテストにおいては、テストイネーブル信号SE-Tが論理値“1”に設定される。これにより、マルチサイクルテストのスキャン動作期間における所定のキャプチャ動作サイクルで論理値“1”の遷移有効信号403が、マルチプレクサ404の制御端子に供給されることになる。また、遷移発生器204_Bからは、論理値が周期的に変化する遷移論理値信号212が、遷移発生信号402としてマルチプレクサ404に供給される。これにより、マルチプレクサ404は、所定のキャプチャ動作サイクル以降、遷移発生信号402を信号線CL2に出力することになる。
【0113】
実施の形態2によれば、実施の形態1および2と同様に、マルチサイクルテストのキャプチャ動作期間において、遷移挿入経路である信号線CL2における信号に遷移を発生させることが可能である。実施の形態1および2では,遷移挿入点である信号線CL1における信号の遷移に応じて、信号線CL2における信号の論理値が遷移しなくなる場合がある。これに対して、実施の形態3によれば、遷移挿入点における信号の論理値に依存せずに、遷移発生信号402の論理値の遷移が、マルチプレクサ404を介して、信号線CL2に伝搬させることができる。これにより,遷移挿入回路から出力される信号の遷移確率が意図せず低下する可能性をなくし,意図通りの遷移を発生させることができる。
【0114】
<変形例>
遷移挿入回路は、図9に示したマルチプレクサ404に限定されない。図10は、実施の形態3の変形例に係わる遷移挿入回路の構成を示すブロック図である。図10において、遷移挿入回路は、2つのアンド回路404_1、404_2と1つのオア回路404_3を組み合われることにより構成されている。アンド回路404_1には、信号線CL1における信号と、遷移有効信号403の論理反転信号が供給され、アンド回路404_2には、遷移発生信号402と遷移有効信号403が供給され、アンド回路404_1と404_2の出力は、オア回路404_3によってオア演算され、遷移挿入経路である信号線CL2に出力される。このように、遷移挿入回路としては、種々の構成を採用することが可能である。
【0115】
(実施の形態4)
図11は、実施の形態4に係わる半導体装置の構成を示す図である。図11は、図2および図9に類似しているので、主に相異点を説明する。相異点は、遷移制御部が変更され、遷移制御部200Bとなっている点と、遷移挿入回路が変更され、マルチプレクサ450となっている点である。
【0116】
遷移制御部200Bは、図2に示した遷移制御部200に類似しているが、遷移発生器が図4(B)に示した遷移発生器204_Bに変更されている。遷移発生器204_Bは、既に説明しているので、説明を省略する。
【0117】
遷移挿入回路としては、図9と同様に、マルチプレクサが用いられている。図9においては、遷移挿入回路を構成するマルチプレクサ404は、遷移挿入経路を形成する信号線CL1とCL2との間に接続され、マルチプレクサ404には、遷移制御部200Aから遷移発生信号402と遷移有効信号403が供給されていた。これに対して、実施の形態4に係わるマルチプレクサ450は、遷移挿入経路を形成する信号線CL1とCL2との間に接続されていることは同じであるが、遷移制御部200Bからは遷移制御信号210のみが、マルチプレクサ450に供給されている。
【0118】
実施の形態4においては、マルチプレクサ450は、信号線CL1に接続された入力端子と、回路ブロックが動作することにより論理値が遷移する信号を伝達する信号線CL3に接続された入力端子とを備える。また、マルチプレクサ450は、信号線CL2に接続された出力端子と、遷移制御信号210が選択信号として供給される選択端子とを備えている。図11においては、信号線CL3として、回路ブロックLGC1に配置されている信号線が例示されているが、これに限定されず、信号線CL3は、図示しない別の回路ブロックあるいは回路ブロックLGC2に配置されている信号線であってもよい。すなわち、信号線CL3は、それが配置されている回路ブロックが動作することにより、論理値が遷移する信号を伝達する信号線であればよい。
【0119】
信号線CL3における信号は、マルチサイクルテストのキャプチャ動作期間において、キャプチャ動作サイクルごとに、遷移挿入点である信号線CL1における信号とは反転論理値へ遷移する確率の高い信号である。信号線CL1を遷移挿入点と見なすと、信号線CL3は、遷移発生点と見なすことができる。
【0120】
実施の形態1および2で説明した所定の解析等によって、遷移確率の低い信号を伝達する信号線CL1として識別する。このとき、所定の解析等によって、例えば信号線CL1に近接して配置されている信号線であって、キャプチャ動作サイクルごとに遷移する確率の高い信号を伝達する信号線を信号線CL3として識別する。マルチプレクサ450は、遷移制御信号210が有効を示す論理値“1”のとき、信号線CL3が接続された入力端子を選択し、出力端子と接続する。一方、マルチプレクサ450は、遷移制御信号210が無効を示す論理値“0”のとき、信号線CL1が接続された入力端子を選択し、出力端子に接続する。
【0121】
これにより、遷移制御信号210が有効を示しているキャプチャ動作期間においては、信号線CL3における信号が信号線CL2に伝達され、回路ブロックLGC2は、信号線CL2に伝達された信号に基づいて動作する。一方、遷移制御信号210が無効を示している通常動作においては、信号線CL1における信号が信号線CL2に伝達され、回路ブロックLGC2は、信号線CL2に伝達された信号に基づいて動作する。
【0122】
<変形例>
図12は、実施の形態4に係わる変形例を示すブロック図である。
【0123】
図12(A)において、LGC1_1は、インバータ回路451を備えた回路ブロックを示している。回路ブロックLGC1_1とFF回路452は、回路ブロックLGC1に含まれている。回路ブロックLGC1_1は、クロック信号SE-CKがクロック端子に接続されたFF回路452の出力端子が接続されたノード453に接続され、ノード453における信号を処理する。この処理の過程において、回路ブロックLGC1_1は、ノード453における信号に対して論理反転された信号をインバータ回路451によって形成する。インバータ回路451の出力は、FF回路452の入力端子に接続されている。ノード453が、遷移発生点である信号線CL3に接続されている。
【0124】
キャプチャ動作期間において、クロック信号SE-CKが変化することにより、FF回路452は、ノード453における信号に対して論理反転された信号を取り込むことになる。その結果として、遷移制御信号210が有効を示す場合、信号線CL2には、信号線CL3における信号、すなわちクロック信号SE-CKの変化に同期して論理値が反転する信号が供給されるようになる。
【0125】
図12(B)~図12(D)は、遷移確率の低い信号を伝達する信号線が、回路ブロックLGC2内のFF回路の入力に接続されている場合の変形例を示している。すなわち、図12(B)~(D)は、回路ブロックLGC2内のFF回路の入力端子における信号の遷移確率が低いと識別された場合を示している。
【0126】
図12(B)においては、遷移挿入回路は、論理反転機能を備えたマルチプレクサ454によって構成されている。また、図12(B)において、455は、回路ブロックLGC2に設けられているFF回路を示している。クロック信号SE-CKがクロック端子に供給されるFF回路455は、回路ブロックLGC2を構成する要素であり、FF回路455の出力に基づいて回路ブロックLGC2は動作する。遷移挿入回路には、このFF回路455の出力が供給されている。すなわち、FF回路455の出力端子が、遷移発生点として識別され、マルチプレクサ450の反転入力端子に接続され、FF回路455の正相入力端子は、信号線CL2に接続されている。遷移制御信号210が有効を示す場合、マルチプレクサ454は、FF回路455の出力を論理反転して、遷移挿入経路を構成する信号線CL2に供給する。これにより、遷移制御信号210が有効を示す場合、信号線CL2における信号は、キャプチャ動作期間において遷移することになる。
【0127】
図12(C)および図12(D)は、図12(B)のマルチプレクサ454を、組み合わせ論理回路で構成した例を示している。マルチプレクサ454の構成は、信号線CL1における信号の論理値の制御性に依存して変わる。すなわち、信号線CL1における信号の論理値が、論理値“1”になる確率が高い場合と、論理値“0”になる確率が高い場合とによって、マルチプレクサ454の構成は異なる。
【0128】
論理値“1”になる確率が高い場合、マルチプレクサ454は、図12(C)に示すように、XOR回路456とアンド回路457とによって構成される。この場合、アンド回路457は、FF回路455から出力された論理値“1”の信号と、論理値“1”の遷移制御信号210との間でアンド演算を実施する。信号線CL1における信号が論理値“1”であれば、XOR回路456からは、論理値“0”の信号が、信号線CL2に出力されることになり、信号線CL2における信号の論理値は遷移する。
【0129】
これに対して、論理値“0”になる確率が高い場合、マルチプレクサ454は、図12(D)に示すように、XOR回路456と論理反転機能を備えたアンド回路458を組み合わせた組み合わせ論理回路によって構成される。この場合、アンド回路458は、FF回路455から出力された論理値“0”の信号を、論理反転し、論理値“1”の遷移制御信号210との間でアンド演算を実施する。信号線CL1における信号が論理値“0”であれば、XOR回路456は、論理値“1”の信号を信号線CL2に出力することになる。
【0130】
図12(A)に示した構成では、遷移期間調整器203によって定まるタイミングで、遷移制御信号210が、有効を示す論理値“1”に変化すると、マルチプレクサ450から、論理値が遷移する信号が信号線CL2に出力される。これに対して、図12(B)~(D)に示した構成では、遷移制御信号210が論理値“1”となることにより、マルチプレクサ、あるいはマルチプレクサを構成する組み合わせ論理回路と、FF回路とによって、反転自己ループが形成されることになる。そのため、遷移制御信号210が有効を示す論理値になった次のサイクルから、信号線CL2における信号の遷移が開始することになる。
【0131】
実施の形態4においては、遷移確率が高い信号を伝達する信号線または遷移挿入経路に接続されたFF回路の出力端子が、遷移発生点として識別される。マルチプレクサのような入力選択機能を備えた遷移挿入回路が、遷移発生点と、遷移挿入点と、遷移挿入経路を構成する信号線との間に接続され、遷移挿入回路は、通常動作では、遷移挿入点を選択し、キャプチャ動作期間においては、遷移発生点を選択する。遷移挿入回路によって選択された遷移挿入点または遷移発生点が、遷移挿入経路を構成する信号線に接続されることになる。
【0132】
信号線CL3として、100%に近い遷移確率の信号が伝播する信号線を使うことにより、遷移制御信号210が論理値“1”になっている期間においては,遷移挿入回路から出力される論理値は毎サイクルで反転することになる。また、遷移挿入回路と遷移発生点を通る反転自己ループの構成により、遷移制御信号210が論理値“1”になる期間は,遷移挿入回路から出力される論理値は毎サイクルで反転することになる。キャプチャ動作期間において、遷移制御信号210が論理値“1”となる期間は,遷移制御部を構成する遷移発生器と遷移期間調整器によって調整することが可能である。
【0133】
実施の形態4によれば、遷移挿入点の近傍の遷移発生点から遷移挿入回路と接続するため,実施の形態3の遷移発生信号の接続と比較すると,配線面積を削減できる。また,遷移制御信号が有効を示す論理値“1”とき,遷移発生点の値が遷移挿入回路の出力へ伝搬するため,遷移発生点に到達する故障の観測確率が向上し,故障検出率が向上する場合がある。また、実施の形態4においても、実施の形態1~3と同様に,マルチサイクルテストのスキャン動作期間中に、遷移挿入経路において信号の遷移を発生させることにより、目標故障検出率を達成するのに必要なスキャンテスト時間を削減することが可能である。
【0134】
実施の形態4においては、遷移発生点において、遷移論理値信号212に相当する遷移信号が発生されていると見なすことができる。そのため、図11に示したアンド回路202を2入力のアンド回路に変更し、2入力のアンド回路により遷移期間信号211とテストイネーブル信号SE-Tとの間のアンド演算を実行し、その結果を遷移制御信号210として用いるようにしてもよい。これにより、遷移制御部200Bの簡素化を図ることが可能である。
【0135】
(実施の形態5)
実施の形態5では、マルチサイクルテストのキャプチャ動作期間において、トグル率の高い組み合わせ論理回路を備える半導体装置を設計する設計装置および設計方法を説明する。図13は、実施の形態5に係わる設計装置の構成を示すブロック図である。設計装置700は、制御入力装置部701、表示出力装置部702、入出力I/F部703、演算処理装置部704および記憶装置部705によって構成されている。
【0136】
制御入力装置部701は、ユーザーが演算処理装置部704および記憶装置部705を制御するための装置部であり、キーボード等を備えている。表示出力装置部702は、ユーザーが演算処理装置部704および記憶装置部705の動作を確認するための表示部であり,ディスプレイ等を備えている。入出力I/F部703は、制御入力装置部701および表示出力装置部702と、演算処理装置部704および記憶装置部705との間を接続するインタフェース部である。
【0137】
演算処理装置部704は,半導体装置を設計するのに必要なプログラムをロードして、設計に必要な各機能プロセスを実行する装置であり、プロセッサ(CPU)およびメモリ等を備えている。記憶装置部705は,ライブラリやネットリストの情報を保存する記憶媒体を示している。特に制限されないが、記憶媒体は、ハードディスク(HDD)やメモリ等である。
【0138】
実施の形態5において、演算処理装置部704は、前記した遷移制御部および遷移挿入回路を生成するため、格納されている遷移制御論理挿入プログラム706を実行する。演算処理装置部704は、実行により得られた遷移制御論理挿入済みネットリストを、記憶装置部705に格納する。遷移制御論理挿入プログラムを実行する時に、演算処理装置部704には、記憶装置部705から、ネットリスト、機能ライブラリおよびユーザー定義の制約が入力される。遷移制御論理挿入済みネットリストによって、マルチサイクルテストにおいて故障検出率の高い組み合わせ論理回路を備えた半導体装置が設計される。
【0139】
演算処理装置部704が、遷移制御論理挿入プログラムを実行することにより、遷移制御部を生成する機能と,回路ブロック中の遷移挿入点を識別して、遷移挿入回路を挿入する機能と,遷移挿入回路と遷移制御部とを接続する機能とが提供される。
【0140】
図14は、実施の形態5に係わる遷移制御論理挿入プログラムによって実行される工程を示すフローチャート図である。
【0141】
ステップS0において、対象となる回路ブロックの構成を表すネットリスト、機能ライブラリ、テスト制約、クロック信号条件等が、演算処理装置部704にロードされる。ステップS1において、ロードしたネットリストおよび機能ライブラリを基にして回路解析が行われ、回路情報が取得される。また、このステップS1において、回路ブロックに含まれる複数のFF回路から、スキャン設計の対象となるスキャン化可能なFF回路とテスト制約が取得される。
【0142】
次に、ステップS2において、ステップS1で取得したスキャン化可能なFF回路および外部入出力端子を、回路探索の起点および終点に設定して、COP(Controllability Observability Program) Testability Measure解析など、所定の解析を実行し、回路ブロックにおける複数の信号線から、遷移確率が低い信号を伝達する複数の信号線を遷移挿入候補信号線として識別する。また、遷移確率が高い信号を伝達する複数の信号線を遷移発生候補信号線として識別する。複数の遷移挿入候補信号線のうち、伝達する信号の遷移確率を上げることにより、回路ブロックにおける信号のトグル率を高くすることが可能な遷移挿入候補信号線を識別する(第1識別工程)。識別された遷移挿入候補信号線が、ステップS3において、遷移挿入点として選定される。
【0143】
ステップS4では、ステップS3において選定された遷移挿入点の数が、テスト制約として設定された目標の挿入数を閾値として、閾値に到達しているか否かの判定が行われる。ステップS4において、未達と判定された場合、ステップS2に戻る。ステップ2では、既に遷移挿入点として選定した遷移挿入候補信号線を除いた遷移挿入候補信号線から、回路ブロックにおける信号のトグル率を高くすることが可能な遷移挿入候補信号線を識別し、ステップS3において、識別した遷移挿入候補信号線を遷移挿入点として選定する。ステップS4において、到達と判定されるまで、ステップS2~S4が繰り返される。
【0144】
ステップS4において到達と判定されると、次にステップS5が実行される。ステップS5では、選定された遷移挿入点に遷移挿入回路を挿入(挿入工程)するとともに、遷移制御部を挿入し、遷移挿入回路と遷移制御部とを接続する。ステップS6において、遷移挿入回路および遷移制御部が挿入された回路ブロックのネットリストが出力され、ステップS7で処理が終了する。
【0145】
ステップS6で出力されたネットリストに基づいて、半導体装置が設計される。
【0146】
特に制限されないが、ステップS5において、挿入される遷移挿入回路および遷移制御部の構成が定められる。また、遷移挿入回路の挿入は、選定された遷移挿入点となる信号線CLを分離し、分離した信号線CL1とCL2との間に遷移挿入回路を接続することを意味している。
【0147】
実施の形態4においては、遷移確率の高い信号を伝達する信号線を用いるが、この信号線は、ステップS2において、遷移発生信号として識別(第2識別工程)される。ステップS3において、遷移挿入点として信号線を選定するときに、選定される信号線に対応する遷移発生信号線を選定する。これにより、ステップS5において、遷移挿入点として選定された信号線と対応する遷移発生信号線とを接続する遷移挿入回路が挿入される。
【0148】
また、ステップS2において、遷移挿入点として選定される候補の信号線にFF回路が接続されているか否かが識別され、識別されたFF回路が、実施の形態4で説明したFF回路455として用いられる。
【0149】
実施の形態5によれば、マルチサイクルテストのキャプチャ動作期間において、トグル率の高い回路ブロックを発生することが可能である。これにより,マルチサイクルテスト適用時に、一回のキャプチャ動作期間において検出可能な故障数を増やし,目標検出率を達成するのに必要なテストステップ数を削減することが可能である。
【0150】
図1(B)に示した半導体装置においては、パワーオンリセットによりマルチサイクルテストが実行されるが、テストステップ数を削減することが可能であるため、パワーオンリセットによって起動されるパワーオンセルフテストPOSTの時間を短縮することが可能である。
【0151】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【0152】
100 半導体装置
200、200A、200B 遷移制御部
201 遷移挿入回路
202 3入力アンド回路
203 遷移期間調整器
204 遷移発生器
205 FF回路
210 遷移制御信号
211 遷移期間信号
212 遷移論理値信号
CL、CL1~CL3 信号線
LGC、LGC1~LGC3 回路ブロック
SF1~SFn SFF回路
TC、TD、TK、TO、TT 外部端子
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17