JPH08170979A - 半導体集積回路及び検査系列生成方法 - Google Patents

半導体集積回路及び検査系列生成方法

Info

Publication number
JPH08170979A
JPH08170979A JP7267280A JP26728095A JPH08170979A JP H08170979 A JPH08170979 A JP H08170979A JP 7267280 A JP7267280 A JP 7267280A JP 26728095 A JP26728095 A JP 26728095A JP H08170979 A JPH08170979 A JP H08170979A
Authority
JP
Japan
Prior art keywords
scan
block
logic block
flops
flip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP7267280A
Other languages
English (en)
Other versions
JP3544415B2 (ja
Inventor
Mitsuho Ota
光保 太田
Akira Motohara
章 本原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP26728095A priority Critical patent/JP3544415B2/ja
Publication of JPH08170979A publication Critical patent/JPH08170979A/ja
Application granted granted Critical
Publication of JP3544415B2 publication Critical patent/JP3544415B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【課題】 大規模な半導体集積回路に対しても、故障を
検出するための検査系列の生成を容易に行うことができ
る検査系列生成方法を提供する。 【解決手段】 スキャン論理ブロックを通過するスキャ
ンチェーンにおいて信号が反転される場合は、処理S3
2又は処理S33によって入力データ又は期待値比較用
データを反転する。処理S34によってシフトインパタ
ーンの前後にシフトパターンを追加する一方、処理S3
5によってシフトアウトパターンの前後にシフトパター
ンを追加し、ブロック検査系列を半導体集積回路全体を
対象とした検査系列に変更する。故障が仮定された全て
のスキャン論理ブロックについて検査系列を生成した後
に、処理S37によって各検査系列をマージする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のスキャンフ
リップフロップからなるスキャンチェーンを備えている
半導体集積回路及びその故障検出のための検査系列生成
方法に関するものである。
【0002】
【従来の技術】従来、半導体集積回路内に発生した故障
を検査するために、予め構成されている複数のスキャン
フリップフロップ(以下、スキャンFFと略記する)か
らなるスキャンチェーンを用いる方法が利用されてい
る。
【0003】スキャンチェーンを用いた半導体集積回路
の検査方法について、以下に説明する。
【0004】図25はスキャンチェーンが構成されてい
る半導体集積回路の回路図の例である。図25におい
て、半導体集積回路50はスキャンFF51、52及び
53並びにANDゲート54を備えている。
【0005】スキャンFF51、52及び53は、ピン
NTの状態が“0”のとき通常のフリップフロップとし
て動作し、入力されるクロックの立上がりエッジによっ
てピンDの状態を内部データとして取り込む(これを通
常モードという)。一方、ピンNTの状態が“1”のと
きは、入力されるクロックの立上がりエッジによってピ
ンDTの状態を内部データとして取り込む(これをスキ
ャンモードという)。
【0006】半導体集積回路50のスキャンイン(Scan
In )用外部端子SIはスキャンFF51のピンDTに
接続されており、スキャンFF51のピンQはスキャン
FF52のピンDTに接続されており、スキャンFF5
2のピンQはスキャンFF53のピンDTに接続されて
いる。さらに、スキャンFF53のピンQは半導体集積
回路50のスキャンアウト(Scan Out)用外部端子SO
に接続されている。すなわち、スキャンFF51、52
及び53は、スキャンモードにおいて、スキャンイン用
外部端子SIを入力としスキャンアウト用外部端子SO
を出力とするシフトレジスタを構成する。これがスキャ
ンチェーンである。
【0007】このスキャンチェーンのシフト動作によっ
て、各スキャンFFへの状態の設定及び各スキャンFF
の状態の観測を容易に行うことができるので、半導体集
積回路中の故障の検査が容易に実行できる。
【0008】半導体集積回路の故障を検出するための検
査系列について、図25に示す回路を対象にして説明す
る。
【0009】図25に示す回路において、信号線Aにお
ける1縮退故障の有無を検出する場合を考える。信号線
Aの1縮退故障を検出するためには、信号線Aに“0”
が設定され信号線Bに“1”が設定されたときの信号線
Yの状態が観測できれば良い。信号線Yの状態が“0”
であれば正常であり、“1”であれば故障が存在すると
いうことになる。
【0010】信号線A及びBの状態はスキャンチェーン
を用いることによって容易に設定できる。半導体集積回
路50の外部端子NTから“1”を入力してピンNTの
状態を“1”にすることによりスキャンFF51、52
及び53をスキャンモードにし、スキャンイン用外部端
子SIから“1”を、続いて“0”を入力してシフト動
作を行うことによって、スキャンFF52に“1”を、
スキャンFF51に“0”を内部データとして各々取り
込ませれば良い。
【0011】また、信号線Yの状態はスキャンチェーン
を用いることによって容易に観測できる。半導体集積回
路50の外部端子NTから“0”を入力してピンNTの
状態を“0”にすることによりスキャンFF51、52
及び53を通常モードにし、1クロック分の通常の動作
を行わせることにより信号線Yの状態をスキャンFF5
3にピンDから取り込ませる。その後、ピンNTの状態
を“1”にすることによりスキャンFF51、52及び
53をスキャンモードにし、シフト動作によってスキャ
ンFF53の内部データすなわち信号線Yの状態をスキ
ャンアウト用外部端子SOから出力させれば良い。
【0012】以上のような動作を行う際の半導体集積回
路50の各外部端子のデータは図26のようになる。図
26において、0及び1は各々入力“0”及び“1”を
表し、Lは出力における期待値が“0”であることを表
す。また、Xはドントケアである。
【0013】図26において、時刻0〜5は、スキャン
モード(NT=1)においてシフトイン動作を行ってい
る。時刻0及び1は、スキャンFF53に設定する値を
外部端子SIから入力している。スキャンFF53には
値を設定する必要がないので入力はドントケアである。
時刻2及び3は、スキャンFF52に設定する値を外部
端子SIから入力している。スキャンFF52には
“1”を設定する必要があるので“1”を入力してい
る。さらに時刻4及び5は、スキャンFF51に設定す
る値を外部端子SIから入力している。スキャンFF5
1には“0”を設定する必要があるので“0”を入力し
ている。ここまででシフトイン動作が完了する。
【0014】時刻6及び7は、通常モード(NT=0)
において、信号線Yの状態をスキャンFF53に取り込
んでいる。
【0015】時刻8〜13は、スキャンモード(NT=
1)においてシフトアウト動作を行っている。時刻8及
び9は、スキャンFF53に取り込まれたデータを外部
端子SOから出力している。このデータが“0”であれ
ば正常であり“1”であれば故障であると判断する(こ
のようなデータを期待値比較用データという)。さら
に、時刻10及び11はスキャンFF52に取り込まれ
たデータを外部端子SOから出力し、時刻12及び13
はスキャンFF51に取り込まれたデータを外部端子S
Oから出力している。ここまででシフトアウト動作が完
了する。
【0016】図26に示すようなデータのパターンを検
査系列という。クロックの立ち上がりによってデータが
1つのフリップフロップ分シフトするので、検査系列の
2行分が1つのシフトパターンに当たる。また、スキャ
ンチェーンを備えた半導体集積回路の故障検出のために
図26に示すような検査系列を生成する方法を検査系列
生成方法といい、従来から様々な方法が提案されてい
る。
【0017】
【発明が解決しようとする課題】ところが、従来の検査
系列生成方法には以下のような問題がある。
【0018】従来の検査系列生成方法では、検査系列の
生成を半導体集積回路全体に対して行っていた。すなわ
ち、スキャンイン用外部端子からのデータ入力、スキャ
ンチェーンにおける入力データのシフトイン動作及び期
待値比較用データのシフトアウト動作、スキャンアウト
用外部端子からのデータ出力といった一連の動作を半導
体集積回路全体に対して行うための検査系列の生成を行
っていた。
【0019】半導体集積回路の規模が小さいときは、従
来の検査系列生成方法で特に問題はなかった。しかし、
集積技術の進歩に伴い半導体集積回路の規模が大きくな
るにつれて、検査系列の生成に膨大な時間を要するよう
になった。特に近年、電子計算機によって検査系列を自
動生成する場合が多いが、半導体集積回路の集積度の飛
躍的な向上により従来の検査系列生成方法では検査系列
生成及び系列長の圧縮に膨大な時間及び膨大な記憶容量
が必要となるという問題があった。
【0020】前記の問題に鑑み、本発明は、検査系列生
成及び系列長の圧縮を容易に行うことができる半導体集
積回路及びこの半導体集積回路を対象にした検査系列生
成方法を提供するものである。
【0021】
【課題を解決するための手段】前記の目的を達成するた
め、本発明は、スキャンチェーンに属するスキャンFF
によって他の論理ブロックとの信号の送受信を行うスキ
ャン論理ブロックを備えた半導体集積回路である。
【0022】また、本発明は前記半導体集積回路を対象
にし、前記スキャン論理ブロックを1つの回路と見なし
てブロック検査系列を生成した後に、このブロック検査
系列を半導体集積回路全体を対象とする検査系列に変換
する検査系列生成方法である。
【0023】具体的に請求項1の発明が講じた解決手段
は、複数の論理ブロックを備えた半導体集積回路を対象
とし、1つ又は複数のスキャンフリップフロップが直列
に接続されることにより構成され、入力端子及び出力端
子が前記半導体集積回路の外部端子に各々接続されてい
る1つ又は複数のスキャンチェーンを備え、前記複数の
論理ブロックのうち少なくとも一つは、他の論理ブロッ
クからの信号を受信する少なくとも1つのスキャンフリ
ップフロップ及び他の論理ブロックに信号を送信する少
なくとも1つのスキャンフリップフロップを含む複数の
スキャンフリップフロップを有し、該複数のスキャンフ
リップフロップは各々前記1つ又は複数のスキャンチェ
ーンのいずれかに属するスキャン論理ブロックである構
成とするものである。
【0024】請求項1の発明の構成により、スキャンチ
ェーンのシフト動作を用いることによって、スキャン論
理ブロック中のスキャンフリップフロップに外部からデ
ータを設定したりスキャンフリップフロップが保持する
データを外部から観測したりすることが可能となる。す
なわち、スキャン論理ブロック中のスキャンフリップフ
ロップは可制御又は可観測となる。スキャン論理ブロッ
クは半導体集積回路の外部又は他の論理ブロックからの
信号をスキャンフリップフロップで受信するので、スキ
ャン論理ブロックの入力が可制御となり、半導体集積回
路の外部又は他の論理ブロックへの信号もスキャンフリ
ップフロップから送信するのでスキャン論理ブロックの
出力が可観測となる。このため、スキャン論理ブロック
を1つの回路として単独で検査を行うことができる。
【0025】また、請求項2の発明が講じた解決手段
は、請求項1に記載の半導体集積回路内に仮定された故
障を検出するための検査系列を生成する検査系列生成方
法を対象とし、仮定された故障が属するスキャン論理ブ
ロックを1つの回路とみなし、前記故障を検出するため
の検査系列であるブロック検査系列を生成するブロック
検査系列生成処理と、前記ブロック検査系列を前記半導
体集積回路全体を対象とした検査系列に変換する変換処
理とを備えている構成とするものである。
【0026】また、請求項3の発明が講じた解決手段
は、請求項1に記載の半導体集積回路内に仮定された故
障を検出するための検査系列を生成する検査系列生成方
法を対象とし、仮定された故障が属するスキャン論理ブ
ロックを1つの回路とみなし、前記故障を検出するため
の検査系列であるブロック検査系列を生成する第1の処
理と、前記スキャン論理ブロックを通過するスキャンチ
ェーンの中でスキャンフリップフロップを最も多く含む
スキャンチェーンに含まれているスキャンフリップフロ
ップの数をMとし、前記スキャン論理ブロックを通過す
るスキャンチェーンの中で前記スキャン論理ブロックの
中にあるスキャンフリップフロップを最も多く含むスキ
ャンチェーンに含まれている前記スキャン論理ブロック
の中にあるスキャンフリップフロップの数をSとしたと
き、前記スキャン論理ブロックを通過する各スキャンチ
ェーンに対して前記スキャン論理ブロックよりも入力側
にあるスキャンフリップフロップの数とSとの合計数を
Mから減じた数を求め、前記ブロック検査系列の中の、
前記スキャン論理ブロックに各スキャンチェーンを介し
て入力データをシフトインするパターンの前に、求めた
数のスキャンフリップフロップをシフトさせるパターン
を各々追加する一方、前記スキャン論理ブロックを通過
する各スキャンチェーンに対して前記スキャン論理ブロ
ックよりも入力側にあるスキャンフリップフロップの数
を求め、前記ブロック検査系列の中の、前記スキャン論
理ブロックに各スキャンチェーンを介して入力データを
シフトインするパターンの後に、求めた数のスキャンフ
リップフロップをシフトさせるパターンを各々追加する
第2の処理と、前記スキャン論理ブロックを通過する各
スキャンチェーンに対して前記スキャン論理ブロックよ
りも出力側にあるスキャンフリップフロップの数を求
め、前記ブロック検査系列の中の、前記スキャン論理ブ
ロックから各スキャンチェーンを介して期待値比較用デ
ータをシフトアウトするパターンの前に、求めた数のス
キャンフリップフロップをシフトさせるパターンを各々
追加する一方、前記スキャン論理ブロックを通過する各
スキャンチェーンに対して前記スキャン論理ブロックよ
りも出力側にあるスキャンフリップフロップの数とSと
の合計数をMから減じた数を求め、前記ブロック検査系
列の中の、前記スキャン論理ブロックから各スキャンチ
ェーンを介して期待値比較用データをシフトアウトする
パターンの後に、求めた数のスキャンフリップフロップ
をシフトさせるパターンを各々追加する第3の処理とを
備えている構成とするものである。
【0027】請求項3の発明の構成により、第1の処理
によって、スキャン論理ブロックを1つの回路とみなし
たときの検査系列であるブロック検査系列が生成され
る。第2の処理によって、第1の処理によって得られた
ブロック検査系列において、各スキャンチェーンを介し
て前記スキャン論理ブロックに入力データをシフトイン
するシフトパターンの前後に、スキャン論理ブロックよ
りも入力側の構成に応じたシフトパターンが追加され
る。第3の処理によって、第1の処理によって得られた
ブロック検査系列において、各スキャンチェーンを介し
て前記スキャン論理ブロックから期待値比較用データを
シフトアウトするシフトパターンの前後に、スキャン論
理ブロックよりも出力側の構成に応じたシフトパターン
が追加される。このため、前記ブロック検査系列が半導
体集積回路全体を対象とした検査系列に変換されること
になる。
【0028】また、請求項4の発明は、請求項3の発明
の構成に、前記スキャン論理ブロックを通過するスキャ
ンチェーンの中で、前記半導体集積回路の外部端子から
前記スキャン論理ブロックの入力端子まで入力データが
シフトする間に信号が反転するスキャンチェーンがある
とき、前記ブロック検査系列の中の前記スキャンチェー
ンに対する入力データを反転させる第4の処理と、前記
スキャン論理ブロックを通過するスキャンチェーンの中
で、前記スキャン論理ブロックの出力端子から前記半導
体集積回路の外部端子まで期待値比較用データがシフト
する間に信号が反転するスキャンチェーンがあるとき、
前記ブロック検査系列の中の前記スキャンチェーンに対
する期待値比較用データを反転させる第5の処理とをさ
らに備えている構成を付加するものである。
【0029】請求項4の発明の構成により、半導体集積
回路の外部端子から前記スキャン論理ブロックの入力端
子まで入力データがシフトする間に信号が反転するスキ
ャンチェーンがあるとき、第4の処理によって、前記ブ
ロック検査系列の中の前記スキャンチェーンに対する入
力データは反転される。また、前記スキャン論理ブロッ
クの出力端子から前記半導体集積回路の外部端子まで期
待値比較用データがシフトする間に信号が反転するスキ
ャンチェーンがあるとき、第5の処理によって、前記ブ
ロック検査系列の中の前記スキャンチェーンに対する期
待値比較用データは反転される。
【0030】また、請求項5の発明が講じた解決手段
は、請求項1に記載の半導体集積回路内に仮定された複
数の故障を検出するための検査系列を生成する検査系列
生成方法を対象とし、仮定された故障が属する各スキャ
ン論理ブロックを1つの回路とみなし、該故障を検出す
るための検査系列であるブロック検査系列を各々生成
し、生成された各ブロック検査系列を前記半導体集積回
路全体を対象とした検査系列に各々変換する検査系列生
成処理と、前記検査系列生成処理によって生成された複
数の検査系列をマージして前記複数の故障を検出するた
めの検査系列を生成する検査系列合成処理とを備えてい
る構成とするものである。
【0031】請求項6の発明は、請求項5の発明の構成
に、前記検査系列生成処理は、仮定された故障が属する
スキャン論理ブロックが前記1つ又は複数のスキャンチ
ェーンのいずれにも属さないフリップフロップを有して
いるとき、該フリップフロップをブラックボックスとみ
なし前記スキャン論理ブロックをフルスキャン回路と仮
定してブロック検査系列を生成する処理を有する構成を
付加するものである。
【0032】また、請求項7の発明が講じた解決手段
は、請求項1に記載の半導体集積回路内に仮定された複
数の故障を検出するための検査系列を生成する検査系列
生成方法を対象とし、仮定された故障が属するA個のス
キャン論理ブロックのうちi(1≦i≦A)番目のスキ
ャン論理ブロックに対し、該スキャン論理ブロックを1
つの回路とみなしたときの検査系列であるブロック検査
系列を生成する第1の処理と、前記A個のスキャン論理
ブロックのいずれかを通過するスキャンチェーンの中で
最も多くのスキャンフリップフロップを含むスキャンチ
ェーンに含まれているスキャンフリップフロップの数を
Nとし、前記A個のスキャン論理ブロックのいずれかを
通過するスキャンチェーンの中でi番目のスキャン論理
ブロックの中にあるスキャンフリップフロップを最も多
く含むスキャンチェーンに含まれている前記i番目のス
キャン論理ブロックの中にあるスキャンフリップフロッ
プの数をTi とするとき、前記i番目のスキャン論理ブ
ロックを通過する各スキャンチェーンに対して前記i番
目のスキャン論理ブロックよりも入力側にあるスキャン
フリップフロップの数とTi との合計数をNから減じた
数を求め、前記ブロック検査系列の中の、前記i番目の
スキャン論理ブロックに各スキャンチェーンを介して入
力データをシフトインするパターンの前に、求めた数の
スキャンフリップフロップをシフトさせるパターンを各
々追加する一方、前記i番目のスキャン論理ブロックを
通過する各スキャンチェーンに対して前記i番目のスキ
ャン論理ブロックよりも入力側にあるスキャンフリップ
フロップの数を求め、前記ブロック検査系列の中の、前
記i番目のスキャン論理ブロックに各スキャンチェーン
を介して入力データをシフトインするパターンの後に、
求めた数のスキャンフリップフロップをシフトさせるパ
ターンを各々追加する第2の処理と、前記i番目のスキ
ャン論理ブロックを通過する各スキャンチェーンに対し
て前記i番目のスキャン論理ブロックよりも出力側にあ
るスキャンフリップフロップの数を求め、前記ブロック
検査系列の中の、前記i番目のスキャン論理ブロックか
ら各スキャンチェーンを介して期待値比較用データをシ
フトアウトするパターンの前に、求めた数のスキャンフ
リップフロップをシフトさせるパターンを各々追加する
一方、前記i番目のスキャン論理ブロックを通過する各
スキャンチェーンに対して前記i番目のスキャン論理ブ
ロックよりも出力側にあるスキャンフリップフロップの
数とTi との合計数をNから減じた数を求め、前記ブロ
ック検査系列の中の、前記i番目のスキャン論理ブロッ
クから各スキャンチェーンを介して期待値比較用データ
をシフトアウトするパターンの後に、求めた数のスキャ
ンフリップフロップをシフトさせるパターンを各々追加
する第3の処理とを備え、前記第1〜第3の処理を繰り
返し実行することにより、前記A個のスキャン論理ブロ
ックに対する検査系列を各々生成し、さらに、生成され
た複数の検査系列を時刻順に重ね合わせてマージするこ
とによりA個のスキャン論理ブロック内に各々仮定した
故障を検出するための検査系列を生成する第4の処理を
備えている構成とするものである。
【0033】請求項7の発明の構成により、第1の処理
によって、i番目のスキャン論理ブロックを1つの回路
とみなしたときの検査系列であるブロック検査系列が生
成される。第2の処理によって、第1の処理によって得
られたブロック検査系列において、各スキャンチェーン
を介して前記スキャン論理ブロックに入力データをシフ
トインするシフトパターンの前後に、スキャン論理ブロ
ックよりも入力側の構成に応じたシフトパターンが追加
される。第3の処理によって、第1の処理によって得ら
れたブロック検査系列において、各スキャンチェーンを
介して前記スキャン論理ブロックから期待値比較用デー
タをシフトアウトするシフトパターンの前後に、スキャ
ン論理ブロックよりも出力側の構成に応じたシフトパタ
ーンが追加される。このため、前記ブロック検査系列が
半導体集積回路全体を対象とした検査系列に変換され
る。前記第1〜第3の処理を繰り返し実行されると、A
個のスキャン論理ブロックに対する検査系列が各々生成
されることになる。第4の処理によって、A個のスキャ
ン論理ブロックに対する各検査系列がマージされること
により仮定した故障を検出するための検査系列が生成さ
れる。
【0034】請求項8の発明は、請求項7の発明の構成
に、前記i番目のスキャン論理ブロックを通過するスキ
ャンチェーンの中で、前記半導体集積回路の外部端子か
ら前記i番目のスキャン論理ブロックの入力端子まで入
力データがシフトする間に信号が反転するスキャンチェ
ーンがあるとき、前記i番目のスキャン論理ブロックに
対するブロック検査系列の中の前記スキャンチェーンに
対する入力データを反転させる第5の処理と、前記i番
目のスキャン論理ブロックを通過するスキャンチェーン
の中で、前記i番目のスキャン論理ブロックの出力端子
から前記半導体集積回路の外部端子まで期待値比較用デ
ータがシフトする間に信号が反転するスキャンチェーン
があるとき、前記i番目のスキャン論理ブロックに対す
るブロック検査系列の中の前記スキャンチェーンに対す
る期待値比較用データを反転させる第6の処理とをさら
に備えている構成を付加するものである。
【0035】
【発明の実施の形態】以下、本発明の実施形態について
図面を参照しながら説明する。
【0036】(第1の実施形態)図1は本発明の第1の
実施形態に係る半導体集積回路10の回路図である。図
1において、半導体集積回路10は4つの論理ブロック
12、14、16及び18を備えている。論理ブロック
12はスキャンFF12a、12b及び12c、NAN
Dゲート12d及びDフリップフロップ12eを有して
いる。また、論理ブロック14はスキャンFF14a及
び14bを有しており、論理ブロック18はスキャンF
F18aを有している。スキャンFF14a、14b、
12b、12c及び18aによって第1のスキャンチェ
ーンが構成され、スキャンFF12aによって第2のス
キャンチェーンが構成されている。
【0037】論理ブロック12は、他の論理ブロック1
4及び16からの信号をスキャンFF12a及び12b
によって受信する一方、論理ブロック18への信号をス
キャンFF12cによって送信する。本実施形態では、
他の論理ブロックからの信号をスキャンFFによって受
信する一方、他の論理ブロックへの信号をスキャンFF
によって送信する論理ブロックをスキャン論理ブロック
と呼ぶ。スキャン論理ブロック12において、スキャン
FF12b及び12cによって第1の部分スキャンチェ
ーンが構成され、スキャンFF12aによって第2の部
分スキャンチェーンが構成されている。第1の部分スキ
ャンチェーンの入力はブロックスキャンインピンB_S
Iに接続されており、ブロックスキャンインピンB_S
Iは論理ブロック14の有するスキャンFF14a及び
14bを介して第1のスキャンイン用外部端子SI1に
接続されている。一方、第1の部分スキャンチェーンの
出力はブロックスキャンアウトピンB_SOに接続され
ており、ブロックスキャンアウトピンB_SOは論理ブ
ロック18の有するスキャンFF18aを介して第1の
スキャンアウト用外部端子SO1に接続されている。第
2の部分スキャンチェーンの入力は第2のスキャンイン
用外部端子SI2に直接接続されている一方、その出力
は第2のスキャンアウト用外部端子SO2に直接接続さ
れている。
【0038】図2は本発明の第1の実施形態に係る検査
系列生成方法における処理の流れを示す流れ図である。
【0039】図2において、処理S11は、スキャン論
理ブロックを1つの回路とみなしたときの検査系列であ
るブロック検査系列を生成する処理である。
【0040】処理S12は、処理S11によって生成さ
れたブロック検査系列において、実際の回路と対応する
ように、スキャン論理ブロックに入力データをシフトイ
ンするパターンの前後にスキャンFFをシフトさせるパ
ターン(以下、シフトパターンという)を追加する処理
である。
【0041】処理S13は、処理S11によって生成さ
れたブロック検査系列において、実際の回路と対応する
ように、スキャン論理ブロックから出力データをシフト
アウトするパターンの前後にシフトパターンを追加する
処理である。
【0042】図1に示す半導体集積回路において、スキ
ャン論理ブロック12の信号線Aにおける0縮退故障の
有無を検査するための検査系列を図2に示す検査系列生
成方法によって生成する場合を例にとって、本実施形態
を説明する。
【0043】ここで、検査対象となるスキャン論理ブロ
ックを通過するスキャンチェーンの中でスキャンFFを
最も多く含むスキャンチェーンに含まれているスキャン
FFの数をMとし、検査対象となるスキャン論理ブロッ
クを通過するスキャンチェーンの中で前記スキャン論理
ブロックの中にあるスキャンFFを最も多く含むスキャ
ンチェーンに含まれている前記スキャン論理ブロックの
中にあるスキャンFFの数をSとする。
【0044】図1に示す半導体集積回路では、第1のス
キャンチェーンに含まれるスキャンFFの数は5であり
第2のスキャンチェーンに含まれるスキャンFFの数は
1であるので、Mの値は5となる。また、スキャン論理
ブロック12の中にあるスキャンFFのうち、第1のス
キャンチェーンに含まれるスキャンFFの数は2であり
第2のスキャンチェーンに含まれるスキャンFFの数は
1であるので、Sの値は2となる。
【0045】また、第1のスキャンチェーンに含まれる
スキャンFFの中でスキャン論理ブロック12よりも入
力側にあるものの数は2、出力側にあるものの数は1、
第2のスキャンチェーンに含まれるスキャンFFの中で
スキャン論理ブロック12よりも入力側にあるものの数
は0、出力側にあるものの数は0である。
【0046】まず、処理S11によって、図3に示すよ
うなブロック検査系列が得られる。図3において、CL
K、NT、IN、SI2及びSO2は半導体集積回路1
0の外部端子であり、B_SI、B_SOは検査対象と
なるスキャン論理ブロック12のピンである。0及び1
は各々入力“0”及び“1”を表し、Hは出力における
期待値が“1”であることを表す。また、Xはドントケ
アである。さらに、クロックの立ち上がりによってデー
タが1つシフトするので、検査系列の2行分が1つのシ
フトパターンに当たる。
【0047】時刻0〜3は、スキャンモード(NT=
1)において、スキャン論理ブロック12の各部分スキ
ャンチェーンに入力データをシフトインする。時刻4〜
7は、通常モード(NT=0)において、信号線Aのデ
ータをスキャンFF12cに取り込む。時刻8〜11
は、スキャンモード(NT=1)において、スキャン論
理ブロック12の各部分スキャンチェーンから期待値比
較用のデータをシフトアウトする。
【0048】次に、処理S12によって、図3に示す検
査系列において、シフトインするパターンの前後にシフ
トパターンを追加する。
【0049】具体的には次のような処理を行う。各部分
スキャンチェーンが属するスキャンチェーン毎に、スキ
ャン論理ブロック12よりも入力側にあるスキャンFF
の数とSとをMから減じた数を求め、求めた数のシフト
パターンを各部分スキャンチェーンに入力データをシフ
トインするパターンの前に追加する。Mの値が5であり
Sの値が2であることから、第1の部分スキャンチェー
ンに入力データをシフトインするパターンの前に1(=
M−S−2)個のシフトパターンが追加され、第2の部
分スキャンチェーンに入力データをシフトインするシフ
トパターンの前に3(=M−S−0)個のシフトパター
ンが追加される。
【0050】また、各部分スキャンチェーンに入力デー
タをシフトインするパターンの後に、各部分スキャンチ
ェーンが属するスキャンチェーンにおいてスキャン論理
ブロック12よりも入力側にあるスキャンFFの数のシ
フトパターンを追加する。第1の部分スキャンチェーン
に入力データをシフトインするパターンの後に2個のシ
フトパターンが追加され、第2の部分スキャンチェーン
に入力データをシフトインするシフトパターンの後に0
個のシフトパターンが追加される。処理S12を行った
結果得られる検査系列を図4に示す。
【0051】次に、処理S13によって、図4に示す検
査系列において、シフトアウトするパターンの前後にシ
フトパターンを追加する。
【0052】具体的には次のような処理を行う。各部分
スキャンチェーンから出力データをシフトアウトするパ
ターンの前に、各部分スキャンチェーンが属するスキャ
ンチェーンにおけるスキャン論理ブロック12よりも出
力側にあるスキャンFFの数のシフトパターンを追加す
る。第1の部分スキャンチェーンから出力データをシフ
トアウトするパターンの後に1個のシフトパターンが追
加され、第2の部分スキャンチェーンから出力データを
シフトアウトするパターンの後に0個のシフトパターン
が追加される。
【0053】また、各部分スキャンチェーンが属するス
キャンチェーン毎に、スキャン論理ブロック12よりも
出力側にあるスキャンFFの数とSとをMから減じた数
を求め、求めた数のシフトパターンを各部分スキャンチ
ェーンから出力データをシフトアウトするパターンの後
に追加する。Mの値が5でありSの値が2であることか
ら、第1の部分スキャンチェーンから出力データをシフ
トアウトするパターンの後に2(=M−S−1)個のシ
フトパターンが追加され、第2の部分スキャンチェーン
から出力データをシフトアウトするシフトパターンの後
に3(=M−S−0)個のシフトパターンが追加され
る。処理S13を行った結果得られる検査系列を図5に
示す。B_SIをSIに、B_SOをSOにそれぞれ変
更することによって、図5に示す検査系列は半導体集積
回路10全体を対象とした検査系列となる。
【0054】以上説明したように、本実施形態による
と、スキャン論理ブロックを1つの回路とみなしてブロ
ック検査系列を生成した後に、シフトインするパターン
の前後及びシフトアウトするパターンの前後に求められ
た数のシフトパターンを追加することによって、半導体
集積回路全体を対象とした検査系列を従来よりも容易に
生成することができる。
【0055】なお、本実施形態によると、シフトインに
要するクロック数とシフトアウトに要するクロック数と
が等しくなることから、複数の故障の検出のために検査
系列を連続して生成する場合に、ある検査系列のシフト
アウトパターンと次の検査系列のシフトインパターンと
のマージが可能となり、より短い検査系列を容易に生成
することができる。
【0056】(第2の実施形態)図6は本発明の第2の
実施形態に係る半導体集積回路20の回路図である。図
1に示した第1の実施形態に係る半導体集積回路10と
比較すると、論理ブロック14中のスキャンFF14b
の出力が反転している(ピンNQから出力されている)
点、及び論理ブロック18中のスキャンFF18aの出
力が反転している(ピンNQから出力されている)点を
除いて構成は同一であり、同一の構成要素には同一符号
を付している。
【0057】図7は本発明の第2の実施形態に係る検査
系列生成方法の処理の流れを示す流れ図である。図2に
示す第1の実施形態に係る検査系列生成方法と比較する
と、処理S11と処理S21、処理S12と処理S2
4、及び処理S13と処理S25とは各々同じ処理であ
る。
【0058】処理S22は、スキャン論理ブロックを通
過する各スキャンチェーンの中で、半導体集積回路のス
キャンイン用外部端子からスキャン論理ブロックの入力
ピンまでスキャンチェーンを介して入力データがシフト
する間に信号が反転するスキャンチェーンについては、
シフトインするパターン中の入力データを反転させる処
理である。
【0059】処理S23は、スキャン論理ブロックを通
過する各スキャンチェーンの中で、スキャン論理ブロッ
クの出力ピンから半導体集積回路のスキャンアウト用外
部端子までスキャンチェーンを介して期待値比較用デー
タがシフトする間に信号が反転するスキャンチェーンに
ついては、シフトアウトするシフトパターン中の期待値
比較用のデータを反転させる処理である。
【0060】図6に示す半導体集積回路において、スキ
ャン論理ブロック12の信号線Aにおける0縮退故障の
有無を検査するための検査系列を図7に示す検査系列生
成方法によって生成する場合を例にとって、本実施形態
を説明する。
【0061】まず、処理S21によって、第1の実施形
態と同様に図3に示すようなブロック検査系列が得られ
る。
【0062】次に、処理S22によって、図3に示すブ
ロック検査系列が図8に示すようなブロック検査系列に
変換される。ここでは、第1のスキャンチェーンを構成
し且つスキャン論理ブロック12よりも入力側にあるス
キャンFF14bの出力が反転しているので、時刻2及
び3のブロックスキャンインピンB_SIの入力データ
が“1”から“0”に変換される。
【0063】次に、処理S23によって、図8に示すブ
ロック検査系列が図9に示すようなブロック検査系列に
変換される。ここでは、第1のスキャンチェーンを構成
し且つスキャン論理ブロック12よりも出力側にあるス
キャンFF18aの出力が反転しているので、時刻8の
ブロックスキャンアウトピンB_SOの期待値比較用デ
ータが“H”から“L”に変換される。Lは出力におけ
る期待値が“0”であることを示す。
【0064】次に、処理S24及びS25によって、第
1の実施形態と同様にシフトインパターンの前後及びシ
フトアウトパターンの前後にシフトパターンの追加が行
われ、図10に示すような検査系列が得られる。B_S
IをSIに、B_SOをSOにそれぞれ変更することに
よって、図10に示す検査系列は半導体集積回路20全
体を対象とした検査系列となる。
【0065】以上説明したように、本実施形態による
と、半導体集積回路のスキャンイン用外部端子からスキ
ャン論理ブロックの入力までスキャンチェーンを介して
入力データがシフトする間に信号が反転する回路、及び
スキャン論理ブロックの出力からスキャンアウト用外部
端子までスキャンチェーンを介して期待値比較用のデー
タがシフトする間に信号が反転する回路についても、検
査系列の生成をスキャン論理ブロック毎に行うことがで
きる。
【0066】なお、第1及び第2の実施形態に係る半導
体集積回路のスキャン論理ブロックは、他の論理ブロッ
クからの信号を必ずしも全てスキャンFFによって受信
していなくても構わない。また、他の論理ブロックへの
信号を必ずしも全てスキャンFFによって送信していな
くても構わない。
【0067】図11は本実施形態に係る半導体集積回路
の他の例を示す回路図である。図11において、20A
は半導体集積回路であり、図6に示す半導体集積回路2
0と比較すると、スキャン論理ブロック12にピンIN
X1及びORゲート12fが追加され、論理ブロック1
4中のスキャンFF14bの出力がピンINX1に入力
されている点を除いて同じ構成であり、同一の構成要素
には同一符号を付している。
【0068】スキャン論理ブロック12は、ピンINX
1の信号をスキャンFFで受信していない。しかし、外
部端子INからの入力を“1”にすればピンINX1の
入力に関わらず(ドントケアとして扱えば良い)ORゲ
ート12fの出力を“1”にすることができるので、す
でに説明した図6に示す回路に対する方法と同様の方法
によって検査系列を生成することができる。
【0069】(第3の実施形態)本発明の第3の実施形
態は、複数のスキャン論理ブロックを対象にして検査系
列を生成するものである。
【0070】図12は本発明の第3の実施形態に係る半
導体集積回路30の回路図である。図12において、半
導体集積回路30は第1のスキャン論理ブロック32、
第2のスキャン論理ブロック34、論理ブロック36及
び38を備えている。第1のスキャン論理ブロック32
はスキャンFF32a、32b及び32c、Dフリップ
フロップ32d、NANDゲート32e及びANDゲー
ト32fを有している。第2のスキャン論理ブロック3
4はスキャンFF34a及び34bを有している。論理
ブロック38はスキャンFF38aを有している。スキ
ャンFF34a、34b、32b、32c及び38aに
よって第1のスキャンチェーンが構成され、スキャンF
F32aによって第2のスキャンチェーンが構成され
る。
【0071】第1のスキャン論理ブロック32は、第2
のスキャン論理ブロック34及び論理ブロック36から
の信号をスキャンFF32a及び32bによって受信す
る一方、論理ブロック38への信号をスキャンFF32
cによって送信する。スキャンFF32b及び32cに
よって第1の部分スキャンチェーンが構成され、スキャ
ンFF32aによって第2の部分スキャンチェーンが構
成されている。第1の部分スキャンチェーンの入力はブ
ロックスキャンインピンB_SIに接続されており、ブ
ロックスキャンインピンB_SIは第2のスキャン論理
ブロック34の有するスキャンFF34a及び34bを
介して第1のスキャンイン用外部端子SI1に接続され
ている。第1の部分スキャンチェーンの出力はブロック
スキャンアウトピンB_SOに接続されており、ブロッ
クスキャンアウトピンB_SOは論理ブロック38の有
するスキャンFF38aを介して第1のスキャンアウト
用外部端子SO1に接続されている。また、第2の部分
スキャンチェーンの入力は第2のスキャンイン用外部端
子SI2に直接接続されている一方、その出力は第2の
スキャンアウト用外部端子SO2に直接接続されてい
る。
【0072】第2のスキャン論理ブロック34は、第1
のスキャンイン用外部端子SI1からの信号をスキャン
FF34aによって受信する一方、第1の論理ブロック
32への信号をスキャンFF34bによって送信する。
【0073】図13は本発明の第3の実施形態に係る検
査系列生成方法における処理の流れを示す流れ図であ
る。図7に示す第2の実施形態に係る検査系列生成方法
と比較すると、処理S31は処理S21と同じであり、
処理S32は処理S22と同じであり、処理S33は処
理S23と同じである。処理S34は処理S24とほぼ
同様であるが、追加するシフトパターンの数を求める方
法が若干異なる。また、処理S35も処理S25とほぼ
同様であるが、追加するシフトパターンの数を求める方
法が若干異なる。この点については後述する。
【0074】処理S31から処理S35までをスキャン
論理ブロック毎に実行する。処理S36は、検査対象と
なる全てのスキャン論理ブロックについて検査系列を生
成したか否かを判定する処理である。
【0075】処理S37は、各スキャン論理ブロックに
ついて生成された検査系列をマージする処理である。
【0076】図12に示す半導体集積回路30におい
て、第1のスキャン論理ブロック32の信号線Bにおけ
る1縮退故障の有無を検査すると共に第2のスキャン論
理ブロック34の信号線Cにおける0縮退故障の有無を
検査するための検査系列を図13に示す検査系列方法に
よって生成する場合を例にとって、本実施形態を説明す
る。
【0077】ここで、検査対象となるスキャン論理ブロ
ックのいずれかを通過するスキャンチェーンの中で最も
多くのスキャンFFを含むスキャンチェーンのスキャン
FFの数をNとする。また、検査対象となるスキャン論
理ブロック毎に、スキャン論理ブロックを通過するスキ
ャンチェーンの中でスキャン論理ブロックの中にあるス
キャンFFを最も多く含むスキャンチェーンに含まれて
いるスキャン論理ブロックの中にあるスキャンFFの数
を求め、その数をTi (iはスキャン論理ブロックの番
号を示す)とする。
【0078】図12に示す半導体集積回路では、第1の
スキャンチェーンに含まれるスキャンFFの数は5であ
り第2のスキャンチェーンに含まれるスキャンFFの数
は1であるので、Nの値は5となる。また、第1のスキ
ャン論理ブロック32の中にあるスキャンFFのうち第
1のスキャンチェーンに含まれるスキャンFFの数は2
であり第2のスキャンチェーンに含まれるスキャンFF
の数は1であるので、T1 は2となる。第2のスキャン
論理ブロック34の中にある2つのスキャンFFは共に
第1のスキャンチェーンに含まれるので、T2 は2とな
る。
【0079】まず、第1のスキャン論理ブロック32に
ついて検査系列を生成する。第1のスキャンチェーンに
含まれるスキャンFFの中で第1のスキャン論理ブロッ
ク32よりも入力側にあるものの数は2、出力側にある
ものの数は1であり、第2のスキャンチェーンに含まれ
るスキャンFFの中で第1のスキャン論理ブロック32
よりも入力側にあるものの数は0、出力側にあるものの
数は0である。
【0080】処理S31によって、Dフリップフロップ
32dをブラックボックスとして、図14に示すような
ブロック検査系列が得られる。図14において、CL
K、NT、SI2及びSO2は半導体集積回路30の外
部端子のデータであり、B_SI及びB_SOは検査対
象となる第1のスキャン論理ブロック32のピンのデー
タである。
【0081】スキャンFF34bの出力が反転している
(ピンNQから出力されている)ので、処理S32によ
って、図14に示すブロック検査系列が図15に示すよ
うなブロック検査系列に変換される。また、スキャンF
F38aの出力が反転している(ピンNQから出力され
ている)ので、処理S33によって、図15に示すブロ
ック検査系列が図16に示すようなブロック検査系列に
変換される。
【0082】次に、処理S34によって、図16に示す
検査系列において、シフトインするパターンの前後にシ
フトパターンを追加する。
【0083】具体的には次のような処理を行う。各部分
スキャンチェーンが属するスキャンチェーン毎に、第1
のスキャン論理ブロック32よりも入力側にあるスキャ
ンFFの数とT1 とをNから減じた数を求め、求めた数
のシフトパターンを各部分スキャンチェーンに入力デー
タをシフトインするパターンの前に追加する。Nの値が
5でありT1 の値が2であることから、第1の部分スキ
ャンチェーンに入力データをシフトインするパターンの
前に1(=N−T1 −2)個のシフトパターンが追加さ
れ、第2の部分スキャンチェーンに入力データをシフト
インするパターンの前に3(=N−T1 −0)個のシフ
トパターンが追加される。
【0084】また、各部分スキャンチェーンに入力デー
タをシフトインするパターンの後に、各部分スキャンチ
ェーンの属するスキャンチェーンにおいて第1のスキャ
ン論理ブロック32よりも入力側にあるスキャンFFの
数のシフトパターンを追加する。第1の部分スキャンチ
ェーンに入力データをシフトインするパターンの後に2
個のシフトパターンが追加され、第2の部分スキャンチ
ェーンに入力データをシフトインするシフトパターンの
後に0個のシフトパターンが追加される。処理S34を
行った結果得られる検査系列を図17に示す。
【0085】次に、処理S35によって、図17に示す
検査系列において、シフトアウトするパターンの前後に
シフトパターンを追加する。
【0086】具体的には次のような処理を行う。各部分
スキャンチェーンから出力データをシフトアウトするパ
ターンの前に、各部分スキャンチェーンが属するスキャ
ンチェーンにおいて第1のスキャン論理ブロック32よ
りも出力側にあるスキャンFFの数のシフトパターンを
追加する。第1の部分スキャンチェーンから出力データ
をシフトアウトするパターンの前に1個のシフトパター
ンが追加され、第2の部分スキャンチェーンから出力デ
ータをシフトアウトするパターンの前に0個のシフトパ
ターンが追加される。
【0087】また、各部分スキャンチェーンが属するス
キャンチェーン毎に、第1のスキャン論理ブロック32
よりも出力側にあるスキャンFFの数とT1 とをNから
減じた数を求め、求めた数のシフトパターンを各部分ス
キャンチェーンから出力データをシフトアウトするパタ
ーンの後に追加する。Nの値が5でありT1 の値が2で
あることから、第1の部分スキャンチェーンから出力デ
ータをシフトアウトするパターンの後に2(=N−T1
−1)個のシフトパターンが追加され、第2の部分スキ
ャンチェーンから出力データをシフトアウトするパター
ンの後に3(=N−T1 −0)個のシフトパターンが追
加される。
【0088】処理S35を行った結果得られる検査系列
を図18に示す。B_SIをSI1に、B_SOをSO
2にそれぞれ変更することによって、図18に示す検査
系列は半導体集積回路30全体を対象とした検査系列と
なる。
【0089】次に、処理S36によって、全てのスキャ
ン論理ブロックに対して検査系列の生成が終了したか否
かを判断する。第2のスキャン論理ブロック34の検査
系列はまだ生成されていないので、処理S31へ戻る。
【0090】次に、第2のスキャン論理ブロック34に
対して検査系列を生成する。第2のスキャン論理ブロッ
ク34を通過するスキャンチェーンは、第1のスキャン
チェーンのみであり、第1のスキャンチェーンに含まれ
るスキャンFFの中で第2のスキャン論理ブロック32
よりも入力側にあるものの数は0、出力側にあるものの
数は3である。
【0091】まず、処理S31によって図19に示すブ
ロック検査系列が得られる。
【0092】第1のスキャンチェーンにおいて第2のス
キャン論理ブロック34よりも入力側では信号が反転し
ないので、処理S32はスキップされる。スキャンFF
38aの出力が反転しているので、処理S33によっ
て、図19に示すブロック検査系列が図20に示すよう
なブロック検査系列に変換される。
【0093】次に、処理S34によって、Nが5、T2
が2であることから、第1のスキャンチェーンに入力デ
ータをシフトインするパターンの前に3個のシフトパタ
ーンが追加され、その後に0個のシフトパターンが追加
される。処理S34の結果得られる検査系列を図21に
示す。
【0094】次に、処理S35によって、第1のスキャ
ンチェーンから出力データをシフトアウトするパターン
の前に3個のシフトパターンが追加され、その後に0個
のシフトパターンが追加される。
【0095】処理S35を行った結果得られる検査系列
を図22に示す。B_SIをSI2に変更することによ
って、図22に示す検査系列は半導体集積回路30全体
を対象とした検査系列となる。
【0096】次に、処理S36によって、全てのスキャ
ン論理ブロックに対して検査系列が生成されたと判断さ
れるので、処理S37へ進む。
【0097】処理S37によって、第1のスキャン論理
ブロック32に対して生成された検査系列及び第2のス
キャン論理ブロック34に対して生成された検査系列を
マージする。
【0098】図18に示す検査系列においてB_SIを
SI1に変更すると共にB_SOをSO2に変更し、ま
た、図22に示す検査系列においてB_SIをSI2に
変更する。得られた2つの検査系列の各ピンのデータ
を、時刻順に重ね合わせて行く。データが異なる場合
は、X(ドントケア)でない方を優先して選択する。こ
の結果、図23に示すような検査系列を得ることができ
る。図23に示す検査系列を用いれば、第1のスキャン
論理ブロック32の信号線Bにおける1縮退故障の有無
及び第2のスキャン論理ブロック34の信号線Cにおけ
る0縮退故障の有無を共に検査することができる。
【0099】以上説明したように、本実施形態による
と、検査系列の生成をスキャン論理ブロック毎に行った
後にそのパターンをマージすることによって検査系列の
圧縮を行うことができる。
【0100】また、半導体集積回路の外部端子からスキ
ャン論理ブロックの入力までスキャンチェーンを介して
入力データがシフトする間に信号が反転する回路、及び
スキャン論理ブロックの出力から半導体集積回路の外部
端子までスキャンチェーンを介して出力データがシフト
する間に信号が反転する回路が含まれていても、検査系
列の生成及び圧縮を行うことができる。
【0101】なお、本実施形態によると、シフトインに
要するクロック数とシフトアウトに要するクロック数と
が等しくなることから、複数の故障の検出のために検査
系列を連続して生成する場合に、ある検査系列のシフト
アウトパターンと次の検査系列のシフトインパターンと
のマージが可能となり、より短い検査系列を容易に生成
することができる。
【0102】なお、本実施形態に係る半導体集積回路の
スキャン論理ブロックは、他の論理ブロックからの信号
を必ずしも全てスキャンFFによって受信していなくて
も構わない。また、他の論理ブロックへの信号を必ずし
も全てスキャンFFによって送信していなくても構わな
い。
【0103】図24は本実施形態に係る半導体集積回路
の回路図である。図24において、30Aは半導体集積
回路であり、図12に示す半導体集積回路30と比較す
ると、第1のスキャン論理ブロック32の2入力AND
ゲート32fの代わりに3入力ANDゲート32gが配
置され、さらにピンINX2が追加され、第2のスキャ
ン論理ブロック34中のスキャンFF34bの出力がピ
ンINX2に入力されている点を除いて同じ構成であ
り、同一の構成要素には同一符号を付している。
【0104】第1のスキャン論理ブロック32は、ピン
INX2の信号をスキャンFFで受信していない。しか
し、スキャンFF32a及び32bの出力をシフトイン
動作によって各々“1”に設定すればピンINX2の入
力に関わらず(ドントケアとして扱えば良い)ANDゲ
ート32gの出力を“0”にできるので、すでに説明し
た図12に示す回路に対する方法と同様の方法によって
検査系列を生成することができる。
【0105】
【発明の効果】請求項1の発明に係る半導体集積回路に
よると、スキャン論理ブロックを外部からスキャンチェ
ーンによって単独で検査可能となるで、回路規模が大き
くなっても故障検出が容易である。
【0106】請求項2〜4の発明に係る検査系列生成方
法によると、スキャン論理ブロックを1つの回路とみな
してブロック検査系列を生成した後、簡単な処理によっ
て半導体集積回路全体を対象とした検査系列に変換する
ことができるので、大規模な半導体集積回路に対しても
検査系列を容易に生成することができる。
【0107】請求項5〜8の発明に係る検査系列生成方
法によると、スキャン論理ブロック毎に検査系列を生成
した後マージすることにより複数の故障を検査するため
の検査系列を生成することができるので、大規模な半導
体集積回路に対しても検査系列を容易に生成することが
できると共に従来よりも検査系列を圧縮することができ
る。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る半導体集積回路
の回路図である。
【図2】本発明の第1の実施形態に係る検査系列生成方
法における処理の流れを示す流れ図である。
【図3】本発明の第1の実施形態に係る検査系列生成方
法の処理S11によって得られる検査系列を示す図であ
る。
【図4】本発明の第1の実施形態に係る検査系列生成方
法の処理S12によって得られる検査系列を示す図であ
る。
【図5】本発明の第1の実施形態に係る検査系列生成方
法によって得られる検査系列を示す図である。
【図6】本発明の第2の実施形態に係る半導体集積回路
の回路図である。
【図7】本発明の第2の実施形態に係る検査系列生成方
法における処理の流れを示す流れ図である。
【図8】本発明の第2の実施形態に係る検査系列生成方
法の処理S22によって得られる検査系列を示す図であ
る。
【図9】本発明の第2の実施形態に係る検査系列生成方
法の処理S23によって得られる検査系列を示す図であ
る。
【図10】本発明の第2の実施形態に係る検査系列生成
方法によって得られる検査系列を示す図である。
【図11】本発明の第2の実施形態に係る半導体集積回
路の回路図である。
【図12】本発明の第3の実施形態に係る半導体集積回
路の回路図である。
【図13】本発明の第3の実施形態に係る検査系列生成
方法における処理の流れを示す流れ図である。
【図14】本発明の第3の実施形態に係る検査系列生成
方法の処理S31によって得られる検査系列を示す図で
ある。
【図15】本発明の第3の実施形態に係る検査系列生成
方法の処理S32によって得られる検査系列を示す図で
ある。
【図16】本発明の第3の実施形態に係る検査系列生成
方法の処理S33によって得られる検査系列を示す図で
ある。
【図17】本発明の第3の実施形態に係る検査系列生成
方法の処理S34によって得られる検査系列を示す図で
ある。
【図18】本発明の第3の実施形態に係る検査系列生成
方法の処理S35によって得られる検査系列を示す図で
ある。
【図19】本発明の第3の実施形態に係る検査系列生成
方法の処理S31によって得られる検査系列を示す図で
ある。
【図20】本発明の第3の実施形態に係る検査系列生成
方法の処理S33によって得られる検査系列を示す図で
ある。
【図21】本発明の第3の実施形態に係る検査系列生成
方法の処理S34によって得られる検査系列を示す図で
ある。
【図22】本発明の第3の実施形態に係る検査系列生成
方法の処理S35によって得られる検査系列を示す図で
ある。
【図23】本発明の第3の実施形態に係る検査系列生成
方法によって得られる検査系列を示す図である。
【図24】本発明の第3の実施形態に係る半導体集積回
路の回路図である。
【図25】従来の検査系列生成方法を説明するための半
導体集積回路の回路図である。
【図26】検査系列の例である。
【符号の説明】
10 半導体集積回路 12 スキャン論理ブロック 12a,12b,12c,14a,14b,18a ス
キャンフリップフロップ 14,16,18 論理ブロック 20,20A 半導体集積回路 30,30A 半導体集積回路 32 スキャン論理ブロック 32a,32b,32c,34a,34b,38a ス
キャンフリップフロップ 34,36,38 論理ブロック

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 複数の論理ブロックを備えた半導体集積
    回路であって、 1つ又は複数のスキャンフリップフロップが直列に接続
    されることにより構成され、入力端子及び出力端子が前
    記半導体集積回路の外部端子に各々接続されている1つ
    又は複数のスキャンチェーンを備え、 前記複数の論理ブロックのうち少なくとも一つは、 他の論理ブロックからの信号を受信する少なくとも1つ
    のスキャンフリップフロップ及び他の論理ブロックに信
    号を送信する少なくとも1つのスキャンフリップフロッ
    プを含む複数のスキャンフリップフロップを有し、該複
    数のスキャンフリップフロップは各々前記1つ又は複数
    のスキャンチェーンのいずれかに属するスキャン論理ブ
    ロックであることを特徴とする半導体集積回路。
  2. 【請求項2】 請求項1に記載の半導体集積回路内に仮
    定された故障を検出するための検査系列を生成する検査
    系列生成方法であって、 仮定された故障が属するスキャン論理ブロックを1つの
    回路とみなし、前記故障を検出するための検査系列であ
    るブロック検査系列を生成するブロック検査系列生成処
    理と、 前記ブロック検査系列を前記半導体集積回路全体を対象
    とした検査系列に変換する変換処理とを備えていること
    を特徴とする検査系列生成方法。
  3. 【請求項3】 請求項1に記載の半導体集積回路内に仮
    定された故障を検出するための検査系列を生成する検査
    系列生成方法であって、 仮定された故障が属するスキャン論理ブロックを1つの
    回路とみなし、前記故障を検出するための検査系列であ
    るブロック検査系列を生成する第1の処理と、 前記スキャン論理ブロックを通過するスキャンチェーン
    の中でスキャンフリップフロップを最も多く含むスキャ
    ンチェーンに含まれているスキャンフリップフロップの
    数をMとし、前記スキャン論理ブロックを通過するスキ
    ャンチェーンの中で前記スキャン論理ブロックの中にあ
    るスキャンフリップフロップを最も多く含むスキャンチ
    ェーンに含まれている前記スキャン論理ブロックの中に
    あるスキャンフリップフロップの数をSとしたとき、 前記スキャン論理ブロックを通過する各スキャンチェー
    ンに対して前記スキャン論理ブロックよりも入力側にあ
    るスキャンフリップフロップの数とSとの合計数をMか
    ら減じた数を求め、前記ブロック検査系列の中の、前記
    スキャン論理ブロックに各スキャンチェーンを介して入
    力データをシフトインするパターンの前に、求めた数の
    スキャンフリップフロップをシフトさせるパターンを各
    々追加する一方、 前記スキャン論理ブロックを通過する各スキャンチェー
    ンに対して前記スキャン論理ブロックよりも入力側にあ
    るスキャンフリップフロップの数を求め、前記ブロック
    検査系列の中の、前記スキャン論理ブロックに各スキャ
    ンチェーンを介して入力データをシフトインするパター
    ンの後に、求めた数のスキャンフリップフロップをシフ
    トさせるパターンを各々追加する第2の処理と、 前記スキャン論理ブロックを通過する各スキャンチェー
    ンに対して前記スキャン論理ブロックよりも出力側にあ
    るスキャンフリップフロップの数を求め、前記ブロック
    検査系列の中の、前記スキャン論理ブロックから各スキ
    ャンチェーンを介して期待値比較用データをシフトアウ
    トするパターンの前に、求めた数のスキャンフリップフ
    ロップをシフトさせるパターンを各々追加する一方、 前記スキャン論理ブロックを通過する各スキャンチェー
    ンに対して前記スキャン論理ブロックよりも出力側にあ
    るスキャンフリップフロップの数とSとの合計数をMか
    ら減じた数を求め、前記ブロック検査系列の中の、前記
    スキャン論理ブロックから各スキャンチェーンを介して
    期待値比較用データをシフトアウトするパターンの後
    に、求めた数のスキャンフリップフロップをシフトさせ
    るパターンを各々追加する第3の処理とを備えているこ
    とを特徴とする検査系列生成方法。
  4. 【請求項4】 請求項3に記載の検査系列方法におい
    て、 前記スキャン論理ブロックを通過するスキャンチェーン
    の中で、前記半導体集積回路の外部端子から前記スキャ
    ン論理ブロックの入力端子まで入力データがシフトする
    間に信号が反転するスキャンチェーンがあるとき、前記
    ブロック検査系列の中の前記スキャンチェーンに対する
    入力データを反転させる第4の処理と、 前記スキャン論理ブロックを通過するスキャンチェーン
    の中で、前記スキャン論理ブロックの出力端子から前記
    半導体集積回路の外部端子まで期待値比較用データがシ
    フトする間に信号が反転するスキャンチェーンがあると
    き、前記ブロック検査系列の中の前記スキャンチェーン
    に対する期待値比較用データを反転させる第5の処理と
    をさらに備えていることを特徴とする検査系列生成方
    法。
  5. 【請求項5】 請求項1に記載の半導体集積回路内に仮
    定された複数の故障を検出するための検査系列を生成す
    る検査系列生成方法であって、 仮定された故障が属する各スキャン論理ブロックを1つ
    の回路とみなし、該故障を検出するための検査系列であ
    るブロック検査系列を各々生成し、生成された各ブロッ
    ク検査系列を前記半導体集積回路全体を対象とした検査
    系列に各々変換する検査系列生成処理と、 前記検査系列生成処理によって生成された複数の検査系
    列をマージすることにより前記複数の故障を検出するた
    めの検査系列を生成する検査系列合成処理とを備えてい
    ることを特徴とする検査系列生成方法。
  6. 【請求項6】 請求項5に記載の検査系列生成方法にお
    いて、 前記検査系列生成処理は、仮定された故障が属するスキ
    ャン論理ブロックが前記1つ又は複数のスキャンチェー
    ンのいずれにも属さないフリップフロップを有している
    とき、該フリップフロップをブラックボックスとみな
    し、前記スキャン論理ブロックをフルスキャン回路と仮
    定してブロック検査系列を生成する処理を有することを
    特徴とする検査系列生成方法。
  7. 【請求項7】 請求項1に記載の半導体集積回路内に仮
    定された複数の故障を検出するための検査系列を生成す
    る検査系列生成方法であって、 仮定された故障が属するA個のスキャン論理ブロックの
    うちi(1≦i≦A)番目のスキャン論理ブロックに対
    し、該スキャン論理ブロックを1つの回路とみなしたと
    きの検査系列であるブロック検査系列を生成する第1の
    処理と、 前記A個のスキャン論理ブロックのいずれかを通過する
    スキャンチェーンの中で最も多くのスキャンフリップフ
    ロップを含むスキャンチェーンに含まれているスキャン
    フリップフロップの数をNとし、前記A個のスキャン論
    理ブロックのいずれかを通過するスキャンチェーンの中
    で前記i番目のスキャン論理ブロックの中にあるスキャ
    ンフリップフロップを最も多く含むスキャンチェーンに
    含まれている前記i番目のスキャン論理ブロックの中に
    あるスキャンフリップフロップの数をTi とするとき、 前記i番目のスキャン論理ブロックを通過する各スキャ
    ンチェーンに対して前記i番目のスキャン論理ブロック
    よりも入力側にあるスキャンフリップフロップの数とT
    i との合計数をNから減じた数を求め、前記ブロック検
    査系列の中の、前記i番目のスキャン論理ブロックに各
    スキャンチェーンを介して入力データをシフトインする
    パターンの前に、求めた数のスキャンフリップフロップ
    をシフトさせるパターンを各々追加する一方、 前記i番目のスキャン論理ブロックを通過する各スキャ
    ンチェーンに対して前記i番目のスキャン論理ブロック
    よりも入力側にあるスキャンフリップフロップの数を求
    め、前記ブロック検査系列の中の、前記i番目のスキャ
    ン論理ブロックに各スキャンチェーンを介して入力デー
    タをシフトインするパターンの後に、求めた数のスキャ
    ンフリップフロップをシフトさせるパターンを各々追加
    する第2の処理と、 前記i番目のスキャン論理ブロックを通過する各スキャ
    ンチェーンに対して前記i番目のスキャン論理ブロック
    よりも出力側にあるスキャンフリップフロップの数を求
    め、前記ブロック検査系列の中の、前記i番目のスキャ
    ン論理ブロックから各スキャンチェーンを介して期待値
    比較用データをシフトアウトするパターンの前に、求め
    た数のスキャンフリップフロップをシフトさせるパター
    ンを各々追加する一方、 前記i番目のスキャン論理ブロックを通過する各スキャ
    ンチェーンに対して前記i番目のスキャン論理ブロック
    よりも出力側にあるスキャンフリップフロップの数とT
    i との合計数をNから減じた数を求め、前記ブロック検
    査系列の中の、前記i番目のスキャン論理ブロックから
    各スキャンチェーンを介して期待値比較用データをシフ
    トアウトするパターンの後に、求めた数のスキャンフリ
    ップフロップをシフトさせるパターンを各々追加する第
    3の処理とを備え、 前記第1〜第3の処理を繰り返し実行することにより、
    前記A個のスキャン論理ブロックに対する検査系列を各
    々生成し、さらに、 生成された複数の検査系列を時刻順に重ね合わせてマー
    ジすることにより前記複数の故障を検出するための検査
    系列を生成する第4の処理を備えている検査系列生成方
    法。
  8. 【請求項8】 請求項7に記載の検査系列生成方法にお
    いて、 前記i番目のスキャン論理ブロックを通過するスキャン
    チェーンの中で、前記半導体集積回路の外部端子から前
    記i番目のスキャン論理ブロックの入力端子まで入力デ
    ータがシフトする間に信号が反転するスキャンチェーン
    があるとき、前記i番目のスキャン論理ブロックに対す
    るブロック検査系列の中の前記スキャンチェーンに対す
    る入力データを反転させる第5の処理と、 前記i番目のスキャン論理ブロックを通過するスキャン
    チェーンの中で、前記i番目のスキャン論理ブロックの
    出力端子から前記半導体集積回路の外部端子まで期待値
    比較用データがシフトする間に信号が反転するスキャン
    チェーンがあるとき、前記i番目のスキャン論理ブロッ
    クに対するブロック検査系列の中の前記スキャンチェー
    ンに対する期待値比較用データを反転させる第6の処理
    とをさらに備えていることを特徴とする検査系列生成方
    法。
JP26728095A 1994-10-18 1995-10-16 半導体集積回路及び検査系列生成方法 Expired - Fee Related JP3544415B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26728095A JP3544415B2 (ja) 1994-10-18 1995-10-16 半導体集積回路及び検査系列生成方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP25192194 1994-10-18
JP6-251921 1994-10-18
JP26728095A JP3544415B2 (ja) 1994-10-18 1995-10-16 半導体集積回路及び検査系列生成方法

Publications (2)

Publication Number Publication Date
JPH08170979A true JPH08170979A (ja) 1996-07-02
JP3544415B2 JP3544415B2 (ja) 2004-07-21

Family

ID=26540432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26728095A Expired - Fee Related JP3544415B2 (ja) 1994-10-18 1995-10-16 半導体集積回路及び検査系列生成方法

Country Status (1)

Country Link
JP (1) JP3544415B2 (ja)

Also Published As

Publication number Publication date
JP3544415B2 (ja) 2004-07-21

Similar Documents

Publication Publication Date Title
JP2746804B2 (ja) 集積回路試験方法および集積回路試験装置
US6959408B2 (en) IC with serial scan path, protocol memory, and event circuit
US20030056164A1 (en) Circuit scan output arrangement
JPH04233635A (ja) 順序ディジタル論理回路の組み込み自己検査用装置
US6883115B2 (en) LSI diagnostic system and method of diagnosing LSI
US5471152A (en) Storage element for delay testing
WO1998043101A1 (fr) Bloc fonctionnel pour circuit integre, circuit integre a semiconducteur, procede d'inspection de circuits integres a semiconducteur, et procede de conception associe
JP2002257903A (ja) 半導体集積回路の試験方法と試験パタン生成方法及び装置並びにプログラム
US7237168B2 (en) Design for test of analog module systems
US5485473A (en) Method and system for testing an integrated circuit featuring scan design
US6105156A (en) LSI tester for use in LSI fault analysis
US6079040A (en) Module level scan testing
US5617427A (en) Method for generating test sequences for detecting faults in target scan logical blocks
JP3544415B2 (ja) 半導体集積回路及び検査系列生成方法
JPH08220192A (ja) 組み込み型自己テスト論理回路
JP4863547B2 (ja) Bist回路内蔵半導体集積回路装置
JP3003781B2 (ja) 検査容易化設計方法、バスエラー回避設計方法及び集積回路
US6691271B1 (en) Built-in self-test apparatus
JP2723957B2 (ja) 半導体集積回路装置
JP3588052B2 (ja) バウンダリスキャンテスト回路
JP4272898B2 (ja) 半導体テスト回路及びそのテスト方法
Wang et al. A design-for-diagnosis technique for diagnosing both scan chain faults and combinational circuit faults
JP3240744B2 (ja) 出力パッド回路及びテスト回路
JP2004279348A (ja) テスト容易化回路、および検査方法
JPH0210178A (ja) 論理回路

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040402

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees