JP2004077356A - スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム - Google Patents

スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム Download PDF

Info

Publication number
JP2004077356A
JP2004077356A JP2002240176A JP2002240176A JP2004077356A JP 2004077356 A JP2004077356 A JP 2004077356A JP 2002240176 A JP2002240176 A JP 2002240176A JP 2002240176 A JP2002240176 A JP 2002240176A JP 2004077356 A JP2004077356 A JP 2004077356A
Authority
JP
Japan
Prior art keywords
scan
group
scan flip
flops
scan chain
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.)
Withdrawn
Application number
JP2002240176A
Other languages
English (en)
Inventor
Takayoshi Sannomiya
三宮 隆慶
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.)
Renesas Micro Systems Co Ltd
Original Assignee
Renesas Micro Systems 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 Renesas Micro Systems Co Ltd filed Critical Renesas Micro Systems Co Ltd
Priority to JP2002240176A priority Critical patent/JP2004077356A/ja
Publication of JP2004077356A publication Critical patent/JP2004077356A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

【課題】テストパタン数を低減するスキャンチェーンの構築方法を提供する
【解決手段】ScanFF10〜15それぞれのデータ入力端に接続する組合せ回路24,25のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化するグループ化処理ステップS1〜S3と、それぞれのグループ内のScanFF10〜15をグループ単位にそれぞれバイパスさせるセレクタ30,31を、グループ間にそれぞれ挿入してスキャンチェーンを構築するスキャンチェーン構築処理ステップS4〜S7とを有する。
【選択図】   図1

Description

【0001】
【発明の属する技術分野】
本発明はスキャンチェーンの構築方法およびスキャンチェーン回路に係わり、特に順序レジスタを数珠繋ぎにシフトレジスタ化することでシフト動作により各順序レジスタに外部端子から直接値を設定したり値を観測することで被テスト対象回路のテストを容易にするスキャンチェーンの構築方法およびスキャンチェーン回路に関する。
【0002】
【従来の技術】
この種の従来のスキャンチェーン回路を用いて行なうスキャンパステスト手法は、一般的に、外部から順序レジスタに直接にデータ値を設定したり、順序レジスタが取り込んだデータ値を、外部から観測することが出来るように構成されている。
【0003】
しかし、データ値を設定/観測する毎に、スキャンチェーンに接続されている順序レジスタ数に対応したシフト動作回数が必要なため、チェーンをテストするために要するテストパタン数のうちで、シフト動作させるためのパタン数が大きな割合を占めてしまうという問題がある。
【0004】
さらに、近年では、テスト対象回路の大規模化によりテストパタン数が膨大な数となり、テスト時間が長くなってきている。そのため、テスト効率を向上させるためにもテストパタン数を少なくすることが要請されている。
【0005】
この要請に応えるためのスキャンチェーン構成手段の例が特許第2738351号公報に記載されている。従来のスキャンチェーン回路の構成図を示した図6を参照すると、同公報記載のスキャンチェーン構成手段は、スキャンチェーンの途中にセレクタを挿入し、前段の回路の出力信号をバイパスさせることでシフトの動作回数を低減している。
【0006】
すなわち、スキャンフリップフロップ(以下、ScanFFと称す)を縦属接続して構成するスキャンチェーンのScanFF(1)〜ScanFF(n)(nはn>1の整数)と、ScanFF(n+1)〜ScanFF(m)(mはm>n+1の整数)は、ScanFF(n)とScanFF(n+1)との間に挿入されたセレクタ63とScanFF(m)の出力に挿入されたセレクタ64を介してスキャンパステスト時にシフトレジスタ構成となる。
【0007】
ScanFF(1)〜ScanFF(n)のクロック入力端子はラッチ回路61の出力端に共通接続され、ScanFF(n+1)からScanFF(m)のクロック入力端子はラッチ回路62の出力端に共通接続され、ラッチ回路61とラッチ回路62のデータ入力端子はともにクロック端子66からクロック信号66が与えられる。
【0008】
セレクタ63の選択制御信号は、ラッチ回路61のゲート信号とともにバイパス信号が与えられる。同様に、セレクタ64の選択制御信号は、ラッチ回路62のゲート信号とともに、バイパス信号69が与えられる。
【0009】
この従来例によれば、AND回路79の1テストは、クロック信号2n+1回で行なえることになるとし、スキャンイン端子65からAND回路79の2つの入力端に同時にテストデータ入力d74とテストデータ入力b72を印加するためのnクロックを要し、AND回路79の出力端からのテストデータ出力a71をスキャンアウトに出力するまでに(n+1)クロックを要するため、1テストは(2n+1)クロック・サイクルとされる。
【0010】
この構成により、フリップフロップ回路の動作を抑制し試験対象以外の組合せ回路の動作を回避するとともに、スキャンイン端子からスキャンテストパターンを入力し、スキャンパスを介して組合せ回路にテスト信号を加え、その組合せ回路からの出力信号を、スキャンパスを介してスキャンアウト端子に出力するまでに要するクロック数を削減する。このクロック数の削減により、スキャンテストパターン長を削減することができるというものである。
【0011】
【発明が解決しようとする課題】
上述したように従来のスキャンチェーン回路によれば、複数のScanFF間にバイパス用のセレクタ回路を挿入して分割し、各ScanFFのクロック信号に所定のラッチ回路を挿入する。ラッチ回路を介して分割されたScanFF群へのクロック供給を制御して、ScanFFの動作を抑制し試験対象以外の組合せ回路の動作を回避するが、後述する本発明の一実施の形態の構成例との比較からも明らかなように、複数のScanFF間にバイパス用のセレクタ回路を挿入してスキャンチェーンを分割するに際し、分割のグループ分けおよび配置順序を、複数の組合せ回路部をテストするのに必要なテストパタン数に基づき決定するという、スキャンチェーン構築の技術思想は見られない。
【0012】
本発明の目的は、スキャンチェーンテスト時に、従来は組合せ回路部のテストが終了した前段のScanFFに対しても、余計なシフト動作を必要としたが、本発明では、前段の組合せ回路部のテストが終了した時点でその組合せ回路部の入力および出力端に接続されたScanFFをバイパスさせることで、次段のスキャングループのScanFFのテスト時には前段のスキャングループのシフト動作をパスさせてテストパタン数を低減するスキャンチェーンの構築方法を提供することにある。
【0013】
【課題を解決するための手段】
本発明のスキャンチェーン構築方法は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築することを特徴とする。
【0014】
本発明のスキャンチェーン構築方法の他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンチェーンをグループ化してテストするためのスキャンチェーングループ化の前処理として、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストパタン数を算出するためのステップを含むことにある。
【0015】
また、前記スキャンチェーングループ化の前処理として、前記組合せ回路の算出テストパタン数を、前記組合せ回路の出力を受ける前記スキャンフリップフロップのグループ番号に設定することができる。
【0016】
さらに、前記スキャンチェーングループ化の前処理として、前記組合せ回路の入力端および出力端に接続されるスキャンフリップフロップそれぞれに設定された前記グループ番号を比較して大小関係のデータを取得することもできる。
【0017】
さらにまた、前記スキャンチェーングループ化の前処理として、取得した前記大小関係のデータを基に、前記組合せ回路の入力端および出力端のうち前記入力端に接続された第1のスキャンフリップフロップのグループ番号が、前記出力端に接続された第2のスキャンフリップフロップの番号よりも小さいとき、前記第1のスキャンフリップフロップのグループ番号を前記第2のスキャンフリップフロップの番号と同じ番号に書き変えて同一グループ内に属する前記第1および前記第2のスキャンフリップフロップのグループ番号を共通化してもよい。
【0018】
また、前記スキャンチェーングループ化に係わる前処理を全て終了後、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、前記スキャンチェーン内の前記グループ番号が異なるスキャンフリップフロップ間には、スキャンイン端子からの信号と前段のグループ内の第1および第2のスキャンフリップフロップのうち前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタを、前記前段に続く後段のグループ内の第1および第2のスキャンフリップフロップのうち前記第1のスキャンフリップフロップの入力端にそれぞれ挿入しスキャンチェーンを構築することもできる。
【0019】
さらに、前記組合せ回路のテストパタン数に代えて前記組合せ回路の入力端子数を用いることもできる。
【0020】
本発明のスキャンチェーン構築方法のまた他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化するグループ化処理ステップと、それぞれのグループ内の第1および第2のスキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築するスキャンチェーン構築処理ステップとを有することにある。
【0021】
また、前記グループ化処理ステップは、前記組合せ回路をテストするのに必要なパタン数を算出するパタン数算出処理ステップと、前記パタン数算出処理ステップで算出した算出テストパタン数を前記第1および前記第2のスキャンフリップフロップそれぞれのグループ番号として割り当てるグループ番号処理ステップと、前記グループ番号処理ステップで割り当てた、テスト対象の前記組合せ回路の入力端に接続された前記第1のスキャンフリップフロップおよび出力端に接続された前記第2のスキャンフリップフロップそれぞれの前記グループ番号を比較する比較処理ステップと、前記第1のスキャンフリップフロップのグループ番号が、前記第2のスキャンフリップフロップのグループ番号より小さいかを解析するグループ番号解析処理ステップとを有する。
【0022】
さらに、前記スキャンチェーン構築処理ステップは、前記グループ番号解析処理ステップでの処理結果に基づき、前記第2のスキャンフリップフロップのグループ番号が前記第1のスキャンフリップフロップのグループ番号よりも小さかった場合に、前記第2のスキャンフリップフロップのグループ番号を前記第1のスキャンフリップフロップのグループ番号に置き換えるグループ番号置き換え処理ステップと、全ての前記スキャンフリップフロップにおける前記比較処理ステップおよび前記グループ番号解析処理ステップステップのチェックが終了していなければ前記比較処理ステップへ戻り、終了していれば次の処理ステップへ進むチェック終了確認処理ステップと、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、縦続接続された複数のグループうち前段のグループ内の前記第2のスキャンフリップフロップおよび前記前段に続く後段のグループ内の前記第1のスキャンフリップフロップの間には、スキャンイン端子からの信号または前記前段のグループ内の前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタ挿入しスキャンチェーンを構築するセレクタ挿入処理ステップとを有する。
【0023】
本発明のスキャンチェーン構築方法のさらに他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続した前記組合せ回路の入力端子数をそれぞれ算出し、算出入力端子数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築することにある。
【0024】
本発明のスキャンチェーン構築方法のまたさらに他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路の入力端子数をそれぞれ算出し、算出入力端子数に対応してグループ化する端子数によるグループ化処理ステップと、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築する端子数によるスキャンチェーン構築処理ステップとを有することにある。
【0025】
また、前記端子数によるグループ化処理ステップは、前記組合せ回路の入力端子数を算出する入力端子数算出処理ステップと、前記入力端子数算出処理ステップで算出した算出端子数を前記スキャンフリップフロップそれぞれのグループ番号として割り当てるグループ番号処理ステップと、前記グループ番号処理ステップで割り当てた、テスト対象の前記組合せ回路の入力端に接続された第1のスキャンフリップフロップおよび出力端に接続された第2のスキャンフリップフロップそれぞれの前記グループ番号を比較する比較処理ステップと、前記第1のスキャンフリップフロップの前記グループ番号が、前記第2のスキャンフリップフロップの前記グループ番号より小さいかを解析するグループ番号解析処理ステップとを有することができる。
【0026】
さらに、前記端子数によるスキャンチェーン構築処理ステップは、前記グループ番号解析処理ステップで、前記第2のスキャンフリップフロップのグループ番号が前記第1のスキャンフリップフロップのグループ番号よりも小さかった場合に、前記第2のスキャンフリップフロップのグループ番号を前記第1のスキャンフリップフロップのグループ番号に置き換えるグループ番号置き換え処理ステップと、全ての前記スキャンフリップフロップにおける前記比較処理ステップおよび前記グループ番号解析処理ステップステップのチェックが終了していなければ前記比較処理ステップへ戻り、終了していれば次の処理ステップへ進むチェック終了確認処理ステップと、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、縦続接続された複数のグループのうち前段のグループ内の前記第2のスキャンフリップフロップおよび前記前段に続く後段のグループ内の前記第1のスキャンフリップフロップの間には、スキャンイン端子からの信号または前記前段のグループ内の前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタ挿入しスキャンチェーンを構築するセレクタ挿入処理ステップとを有することもできる。
【0027】
さらにまた、テストをするのに必要なテストパタン数が少ないグループの順番にスキャンチェーンを構築し、異なるグループ間である、第n+1(nは整数)番目のグループの前記組合せ回路のテストが終了した時点で、第n+1番目のグループ出力側の前記セレクタにスキャン端子からの信号を選択させることにより、前記第n番目および前記n+1番目のグループ内それぞれの前記第1および前記第2のスキャンフリップフロップのシフト動作を行なわずに、第n+2番目のグループの前記第1のスキャンフリップフロップに外部から直接値を設定して第n+2番目のグループの前記組合せ回路のテストを行うことができる。
【0028】
また、所定の前記グループ内の組合せ回路部のテストが終了した時点で、後続する次段のグループとの間に設けた前記セレクタに前記所定のブロックの入力端に設けたセレクタからの信号を選択させることにより、初段のブロックから前記所定のブロックまでの全てのスキャンフリップフロップへのシフト動作を行なわずに前記次段のグループのスキャンフリップフロップに直接データ値を設定して残りの組合せ回路部をテストしテストパタンのシフト動作を減少させることができる。
【0029】
本発明のスキャンチェーン構築方法の他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築し、前記セレクタの制御を外部端子から直接行なわずに、制御回路を用いて行ない、前記制御回路は、セレクタ制御信号とセレクタクロック信号と制御回路リセット信号とを入力し、前記リセット信号で初期化した後、前記セレクタ制御信号およびセレクタ端子をアクティブにして順次各セレクタをアクティブにすることにある。
【0030】
本発明のスキャンチェーン回路は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ備えることを特徴とする。
【0031】
本発明のスキャンチェーン回路の他の特徴は、1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパス用に前記グループ間にそれぞれ挿入されるセレクタと、前記セレクタを制御する制御回路とを備え、前記制御回路は、セレクタ制御信号とセレクタクロック信号と制御回路リセット信号とを入力し、前記リセット信号で初期化した後、前記セレクタ制御信号およびセレクタ端子をアクティブにして順次各セレクタをアクティブにする機能を有することにある。
【0032】
また、縦続接続された前記各グループうち前段のグループの出力をバイパスさせる前記セレクタの個数に関わらず、前記セレクタの制御を行なう外部端子はセレクタ制御信号、セレクタクロック信号およびセレクタリセット信号の3端子を備えることができる。
【0033】
【発明の実施の形態】
本発明の第1の実施の形態を図面を参照しながら詳細に説明する。
【0034】
図1は本発明の第1の実施の形態におけるスキャンチェーンを構築するためのフローチャートであり、図2は図1のフローチャートを基に構成されたスキャンチェーン回路図である。
【0035】
図1を参照すると、本発明のスキャンチェーン構築方法は、まず、処理ステップS1で、各ScanFFのデータ入力端子にそれぞれ接続されている組合せ回路部をテストするのに必要なテストパタン数を算出するための処理を行う。
【0036】
この組合せ回路部に必要なテストパタン数の算出方法については、パタン作成アルゴリズムを用いて算出するが、これらは公知の技術であることからここでの説明を省略する。
【0037】
次の処理ステップS2では、処理ステップS1で算出したテストパタン数をScanFFそれぞれのグループ番号として割り当てる処理を行う。
【0038】
処理ステップS3では、処理ステップS2で割り当てた、対象とするScanFF、これをScanFF_Aとし、ScanFF_Aのデータ入力側に接続されるScanFF、これをScanFF_Bとすると、これらScanFF_AおよびScanFF_Bのグループ番号を比較する。すなわち、グループ番号の小さい順(昇順)に、対象とするScanFF_AとこのScanFF_Aのデータ入力側に接続されている組合せ回路部それぞれの入力となっているScanFF_Bとのグループ番号を調査するための処理を行う。
【0039】
次の処理ステップ4では、処理ステップS3において比較したScanFF_Bのグループ番号がScanFF_Aのグループ番号より小さいかを解析する。
【0040】
処理ステップ5では、処理ステップS4で解析した結果、ScanFF_Bのグループ番号がScanFF_Aのグループ番号より小さかった場合、ScanFF_Bのグループ番号をScanFF_Aのグループ番号に書き換えるための処理を行う。
【0041】
ここで、ScanFF_AとScanFF_Bとを同じグループ番号にするのは、入力側のScanFF_Bのスキャンチェーンが、対象となるScanFF_Aより後で構築されている場合には、ScanFF_Aのデータ入力端子に接続されている組合せ回路部のテストが終了するまでScanFF_Bにはスキャンシフト動作により値を設定することができるが、ScanFF_Aより前で構築されている場合は、ScanFF_Bのデータ入力端子に接続されている組合せ回路部のテストが終了した時点でScanFF_Bはバイパスされてしまい値の設定が出来なくなるためである。
【0042】
すなわち、スキャンチェーンを用いてのテストの仕方は、例えば図2に対応させると、ScanFF_B(12)からScanFF_A(13)間に存在する組合せ回路部(1)(24)をテストするためには、組合せ回路部(1)(24)の入力端子に繋がっているScanFF_B(12)にスキャンシフト動作によりある値を設定して組合せ回路部(1)(24)に入力値を設定し、組合せ回路部(1)(24)の出力端子に繋がっているScanFF_A(13)にはそのScanFF_B(12)で設定した入力値を基に、組合せ回路部(1)(24)から出力される値を取り込む必要がある。
【0043】
これより、ScanFF_BがScanFF_Aの属するグループよりも前のグループで構築されている場合は、ScanFF_Bの入力に繋がる組み合わせ回路のテストが終わり次第本発明によりバイパスされてしまい、スキャンシフト動作によりScanFF_Aの入力に繋がる組合せ回路部(1)に入力値を設定することができなくなってしまう。
【0044】
しかし、例えば図2のように、ScanFF_B(14)がScanFF_A(13)よりも後ろで構築されている場合、少なくともScanFF_A(13)の組合せ回路部(1)(24)のテストが終了するまでバイパスされることがなく、スキャンシフト動作により値を設定することが可能であり、問題ない。
【0045】
つまり、ScanFF_Aの入力側に繋がる組み合わせ回路(1)に入力信号を与えるScanFF_BがScanFF_Aより後のグループに属するのであれば、組み合わせ回路(1)のテストが終了するまでバイパスされることがなく、ScanFF_Bの組み合わせ回路にシフト動作により値を設定することが可能であるということになる。
【0046】
したがって、ScanFF_Bのグループ番号がScanFF_Aより小さい場合には、ScanFF_Bに繋がる組み合わせ回路(2)のテストが終わり次第バイパスされてしまうので、それを防ぐために同じグループ番号にする必要がある。
【0047】
また、ScanFFのグループ番号を小さい順番から調査していくのは、あるScanFFが複数の信号入力となっている場合、最後に調査したScanFFよりグループ番号が大きいScanFFがあったとしても最後に調査したScanFFの方にグループ化されてしまい、上述したように、最後に調査したScanFFのデータ入力端子に接続されている組合せ回路部のテストが終了した時点でバイパスされてしまう。
【0048】
従ってさらにテストパタンが必要な組合せ回路部に値が設定できなくなってしまうため、最終的にパタン数が多いほうのScanFFにグループ化させる必要があるためである。
【0049】
すなわち、例えば図2のように、ScanFF_B(14)が、ScanFF_A(13)の出力端子に繋がっている組合せ回路部(1)(24)とScanFF_C(15)の出力端子に繋がっている組合せ回路部(2)(25)の信号入力とし、ScanFF_A(13)に繋がっている組合せ回路部(1)(24)をテストするのに必要なパタン数が2パタンであるのに対し、ScanFF_C(15)に繋がっている組合せ回路部(2)(25)をテストするのに必要なパタン数は1000パタンとする。
【0050】
この場合、ScanFF_B(14)には組合せ回路部(2)(25)をテストするために1000パタン分の入力値を設定する必要があるが、ScanFF_A(13)と同じグループにまとめてしまうと、2パタンでScanFF_A(13)およびScanFF_B(14)がバイパスされてしまい、その後の値をスキャンシフト動作により組み合わせ回路部(2)25に設定することができなくなってしまう。
【0051】
これより、最終的にはパタン数が多いほうのグループにまとめる必要があるので、小さい順番に調査していく必要がある。
【0052】
次の処理ステップ6では、全てのScanFFのチェックが終了していなければ処理ステップS3へ戻り、終了したら処理ステップS7へ進むための処理を行う。
【0053】
処理ステップ7では、異なるグループ間、例えばグループが異なるScanFF11とScanFF12との間には、SIN端子3からの信号とScanFF11からの信号をSEL端子2によって選択的に出力するセレクタ30を挿入接続し、また、例えばグループが異なるScanFF13とScanFF14の間には、セレクタ30からの信号とScanFF13からの信号とをSEL端子1によって選択的に出力するセレクタ31を挿入し、スキャンチェーンの出力信号はSO端子5から出力するスキャンチェーンを構築するための処理を行う。
【0054】
上述した図1のフローチャートに示す本発明のスキャンチェーン構築方法により構築されたスキャンチェーン回路は、図2に示すように、ScanFFのデータ入力に接続されている組合せ回路部をテストするのに必要なテストパタン数を考慮した上で、ScanFFを、例えばScanFF10とScanFF11との間に組合せ回路部24を接続して1つのグループの単位とし、組合せ回路のテストパタン数を基に、スキャンチェーンを複数のグループにグループ化して分割し、グループが異なるScanFF11とScanFF12の間には、スキャンイン端子(以下、SIN端子と称す)3からの信号とScanFF11からの信号をセレクト信号入力端子(以下、SEL端子と称す)2によって選択するセレクタ30を挿入接続する。
【0055】
また、組合せ回路のテストパタン数を基に分割したグループが互いに異なるScanFF13とScanFF14の間には、セレクタ30からの信号とScanFF13からの信号をSEL端子1からの制御信号で選択的に出力するセレクタ31を設けるように構成する。
【0056】
すなわち、スキャンチェーン回路は、BUF21のテストをするScanFF10およびScanFF11と、BUF21をテストするのに必要なテストパタン数よりも多数のテストパタン数が必要な組合せ回路部24のテストをするScanFF12およびScanFF13と、組合せ回路部24をテストするのに必要なテストパタン数よりも多数のテストパタン数が必要な組合せ回路部25のテストをするScanFF14およびScanFF15との、3つのグループに分割している。
【0057】
これらの分割された3つのグループを、テストをするのに必要なテストパタン数が少ない順番(昇順)にスキャンチェーンを構築し、異なるグループ間であるScanFF11とScanFF12との間には、SIN端子3からの信号とScanFF11からの信号とを挿入接続する。
【0058】
さらに、スキャンチェーン回路は、SEL端子2からの制御信号によって前段のグループのScanFF11の出力またはSIN端子3からの信号を選択出力するセレクタ30と、ScanFF13とScanFF14との間には、セレクタ30からの信号とScanFF13からの信号とをSEL端子1からの制御信号で選択的に出力するセレクタ31とを挿入接続し、スキャンチェーンの出力信号はSO端子5から出力する。
【0059】
また、データ入力端子4とScanFF10のD端子との間にはBUF20が接続され、ScanFF11の出力端とScanFF12のD端子との間にはBUF21が接続され、ScanFF12の出力端とScanFF13のD端子との間には組合せ回路24が接続され、ScanFF14の出力端とScanFF15のD端子との間には組合せ回路25が接続されている。
【0060】
上述した構成により、BUF21のテストが終了した時点で、セレクタ30にSIN端子3からの信号を選択させることにより、ScanFF10およびScanFF11のシフト動作を行なわずに、ScanFF12に直接、SIN端子3からスキャンイン値を設定することができ、組合せ回路部24のテストが行なえることになる。
【0061】
さらに、組合せ回路部24のテストが終了した時点で、セレクタ31にセレクタ30からの信号を選択させることにより、ScanFF10およびScanFF11へのシフト動作と,ScanFF12およびScanFF13へのシフト動作とをそれぞれ行なわずに、ScanFF14に直接、SIN端子3からスキャンイン値を設定することができ、残りの組合せ回路部25をテストするテストパタンは少ないシフト動作に対応したテストパタンによりテストすることができるようになる。
【0062】
以下に、図1および図2を参照しながら、スキャンチェーンの構築方法をさらに詳細に説明する。なお、本発明では組合せ回路部をテストするのに必要なパタン数が少ない順番に構築する例である。
【0063】
処理ステップS1において、各ScanFF11、13,15のデータ入力端子に接続されている組合せ回路部をテストするのに必要なパタン数を算出し、各ScanFF10〜15とパタン数とを対応させる。
【0064】
組合せ回路部をテストするのに必要なパタン数を各ScanFFに反映させた表1を参照すると、ScanFF10、11,12はそれぞれパタン数が「2」,ScanFF13はパタン数が「32」,ScanFF14はパタン数が「2」,ScanFF15はパタン数が「128」である。
【0065】
【表1】
Figure 2004077356
【0066】
処理ステップS2において、処理ステップS1で算出したパタン数を表2のように各ScanFFのグループ番号として割り当てる。
【0067】
各ScanFFに必要なパタン数をグループ番号として設定した表2を参照すると、ScanFF10、11,12はそれぞれグループ番号がパタン数と同じ「2」,ScanFF13はグループ番号がパタン数と同じ「32」,ScanFF14はグループ番号がパタン数と同じ「2」,ScanFF15はグループ番号がパタン数と同じ「128」である。
【0068】
ステップS3において、グループ番号が小さい順に、対象とするScanFF11,13,15(ScanFF_A)のデータ入力端子に接続されているScanFF10,12,14(ScanFF_B)のグループ番号を調査する。
【0069】
一例として、ScanFF11を対象ScanFF(ScanFF_A)とした場合、ScanFF11の入力に接続されている組合せ回路部21(バッファ)の入力となっているScanFF10(ScanFF_B)のグループ番号を調査する。
【0070】
処理ステップS4において、処理ステップS3で調査したグループ番号が小さい場合は、処理ステップS5へ進み、大きいかもしくは同数の場合は処理ステップS6へ移る。
【0071】
一例として、ScanFF11の入力に接続されている組合せ回路部の入力に接続されたScanFF10のグループ番号は表2を参照すると、ScanFF11と同じ「2」であるため第6の処理ステップに移る。
【0072】
また、ScanFF15の入力に接続されている組合せ回路部25の入力に接続されたScanFF14のグループ番号も表2を参照するとScanFF15のグループ番号「128」より小さい「2」のため処理ステップS5に移る。
【0073】
【表2】
Figure 2004077356
【0074】
処理ステップS5において、対象とするScanFF11,13,15(ScanFF_A)のデータ入力端子に接続されているScanFF10,12,14(ScanFF_B)のグループ番号をScanFF_Aのグループ番号に書き換える。
【0075】
ここで、例えばScanFF15のデータ入力に接続されている組合せ回路部25の入力となっているScanFF14のグループ番号は、表2を参照すると「2」であり、ScanFF15の「128」より小さいため、ScanFF15のグループ番号に書き換えられる。すなわち、各ScanFFのグループ番号を書き換えた表3を参照するとScanFF14のグループ番号も「128」となる。同様に、ScanFF12のグループ番号は「32」となる。
【0076】
処理ステップS6で、全てのScanFF10〜15のチェックが終了していなければ処理ステップS3へ進み、終了したら処理ステップS7へ移る。
【0077】
その結果、全てのScanFF10〜15のチェックが終了した時点でのグループ番号は表3のように変更される。
【0078】
【表3】
Figure 2004077356
【0079】
処理ステップS7において、グループが異なるScanFF11とScanFF12の間には、SIN端子3からの信号かScanFF11からの信号をSEL端子2にによって選択的に出力するセレクタ30を挿入接続し、ScanFF13とScanFF14の間にはセレクタ30からの信号かScanFF13からの信号をSEL端子1によって選択的に出力するセレクタ31を挿入し、スキャンチェーンを構築する。
【0080】
上述した第1の実施の形態の効果を、図2を参照しながら説明する。
【0081】
まず最初は、BUF20、BUF21を含め全ての組合せ回路部のテストを行なう必要がありバイパスさせずにテストを行なうため、ScanFF10、ScanFF11、ScanFF12、ScanFF13、ScanFF14、ScanFF15に値の設定/観測が必要である。ここでは、6回のシフト動作が必要となる。
【0082】
最初の2パタンが終了した時点で、ScanFF10とScanFF11のデータ入力側に接続されたBUF20とBUF21のテストが終了するため、セレクタ30にSIN端子3からの信号を選択させる。
【0083】
SIN端子3からの信号選択により、ScanFF10およびScanFF11をバイパスさせてScanFF12、ScanFF13、ScanFF14、ScanFF15にのみスキャン値の設定/観測を行なう。ここでは、4回のシフト動作で組合せ回路部24および組合せ回路部25のテストができる。
【0084】
すなわち、ScanFF10および11、12および13間毎に配置される組合せ回路部21,24,25は、それぞれ平行してテストを実施できることから、組合せ回路部24をテストするパタン数は「32」パタンである。
【0085】
しかし、最初のグループであるScanFF10および11のテストにおいて2パタン分は既に実施しているので、(32−2=30)の「30」パタンでテストをすることになる。
【0086】
次に、組合せ回路部24のテストが終了次第、セレクタ31のデータ入力にセレクタ30からの信号を選択させて、ScanFF10、ScanFF11、ScanFF12、ScanFF13をそれぞれバイパスさせる。
【0087】
このバイパスにより、残りのパタンは、(組合せ回路部25をテストするのに必要なパタン数)−(セレクタ31にSIN端子を選択する前まで実施したテストのパタン数)=(128−32)=96となり、この「96」パタンについては、ScanFF14、ScanFF15にのみスキャンデータ値の設定/観測を行なえばよいので、結局、2回のシフト動作によりテストができる。
【0088】
上述したバイパス動作により、本発明を適用した場合必要なパタン数は、
6×2+(6−2)×(32−2)+(6−4)×(128−32)
=6×2+4×30+2×96=12+120+198=330
と「330」パタンなる。
【0089】
なお、従来の技術で説明したように、特許第2738351号に記載のスキャンチェーン回路は、上述したテストパタン数を削減する効果がないため、必要なテストパタン数は従来のスキャンテスト手法と同様となり6×128=768の「768」パタンとなる。
【0090】
上述したように、グループ化されたスキャンチェーンの組合せ回路部のテストをそれぞれ同時に行ない、テストが終了した組合せ回路部から順々にScanFFをバイパスしているので、テストをするのに多数の入力パタンが必要な組合せ回路部への値の設定および観測を行なう際のシフト回数を減らすことができ、テスト対象回路にかかる総合でのテストパタン数を少なくすることができる。
【0091】
つまり、組合せ回路部のテストが終了したグループのScanFFを順次バイパスさせることによって、無駄なシフト動作を行なわないようにするので、テストパタン数の削減効果が得られる。
【0092】
次に、本発明の第2の実施の形態を説明する。
【0093】
第2の実施の形態におけるスキャンチェーン回路を構築するフローチャートの一例を示した図3を参照すると、上述した第1の実施の形態との相違点は、第1の実施の形態ではScanFFのグループ番号とスキャンチェーンの順序を決定する際、組合せ回路部に必要なテストパタン数を基準に採用したが、ここではテストパターンに代わり、組合せ回路部の端子数で算出することである。
【0094】
テストパタンを考える場合、一般的に、BUF等の入力端子が1端子の回路については、“0”“1”の「2」パタン、2入力のAND回路等の入力端子が2端子ある回路については、(0,0)、(0,1)、(1,0)、(1,1)の「4」パタン、3入力のAND回路等の入力端子が3端子ある回路については(0,0,0)、(0,0,1)、(0,1,0)、(0,1,1)、(1,0,0)、(1,0,1)、(1,1,0)、(1,1,1)の「8」パタンというように、組合せ回路部に必要なパタン数の最大値は2の入力端子乗で算出することができる。
【0095】
このことから、本発明の第1の実施の形態であるスキャンチェーン構築フローチャートに対し、処理ステップS1において、各ScanFF11,13,15のデータ入力端子に接続されている組合せ回路部21,24,25の入力端子数を算出し、処理ステップS2においてその入力端子数をグループ番号として採用する。
【0096】
処理ステップS3以降のフローについては、第1の実施の形態と同様であるから、ここでのフローチャートの説明は省略する。
【0097】
グループ番号に組合せ回路の端子数を採用する第2の実施の形態では、組合せ回路の回路内部を解析し、テストパタン数を算出する代わりに、回路内部は解析せず端子数情報だけを取り出せばよいので、容易にグループ化ができ、テストパタン数の低減効果が得られる。
【0098】
本発明の第3の実施の形態を説明する。
【0099】
第3の実施の形態におけるスキャンチェーン回路の構成を示した図4を参照すると、スキャン信号をバイパスさせるセレクタの制御を外部端子から直接行なうのではなく、制御回路40を用いて行なっている。
【0100】
図5は制御回路40の回路構成である。図5を参照すると、この制御回路40は、RESET付きFF50〜5nを備える。RESET付きFF50〜5nのクロック入力端は、SEL_CLK端子42にそれぞれ共通接続されている。
【0101】
RESET入力端は、SEL_RST端子43に接続されている。初段のRESET付きFF50のD端子にはSEL端子41が接続され、それ以降のRESET付きFF51〜5nのD端子は、前段のRESET付きFFの出力端が接続されている。各々セレクタを制御する信号はRESET付きFF50〜5nの出力端44,45,46に接続されている。
【0102】
上述した構成において、セレクタ30およびセレクタ31の制御信号が“0”の時に、前段からのScanFFの信号を選択し、“1”の時に外部SIN端子3を選択するとした場合、まず制御回路内部のFF50〜5nをSEL_RST端子43から全て初期化する。全てのFF50〜5nに“0”を設定することにより、通常のシフト動作が行われる。
【0103】
テストが終了した時点でSEL端子41に“1”を設定し、SEL_CLK端子42をアクティブにすれば、SEL端子41には“1”が設定され、セレクタ30は外部SIN端子3からの信号を選択し、ScanFF10、ScanFF11はバイパスされる。
【0104】
次に、組合せ回路部24のテストが終了した時点で、SEL_CLK端子をアクティブにすれば、図5のSEL_2(45)にも“1”が設定され、SEL_2(45)の信号で制御される図4のセレクタ31はScanFF12、ScanFF13をバイパスしてセレクタ30からの信号を選択し、結局、ScanFF10、ScanFF11、ScanFF12、ScanFF13をバイパスさせる。
【0105】
上述したように、SEL端子41に“1”を設定しSEL_CLK端子42をアクティブにすれば、そのアクティブクロックに同期して順次セレクタの制御信号に“1”が設定され順次に対応するセレクタが前段のセレクタ出力を選択し、前段までのScanFFをバイパスすることができる。
【0106】
従って、バイパスさせるセレクタが多数存在しても、セレクタの制御を行なう外部端子はSEL信号とSEL_CLK信号、およびSEL_RST信号の計3端子で済むというメリットがある。
【0107】
上述したスキャンチェーンを構築するフローチャートのプログラムは、スキャンチェーンを制御するCPUの周辺記憶装置に内蔵され、CPUの制御により順次読み出されて制御動作する。
【0108】
【発明の効果】
上述したように、本発明のスキャンチェーン回路、スキャンチェーン構築方法およびそのプログラムは、ScanFFそれぞれのデータ入力端に接続する組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内のScanFFをグループ単位にそれぞれバイパスさせるセレクタを、グループ間にそれぞれ挿入してスキャンチェーンを構築するので、テストをするのに多数の入力パタンが必要な組合せ回路部への値の設定および観測を行なう際のシフト回数を減らすことができる。従って、テスト対象回路にかかる総合でのテストパタン数を少なくすることができる。
【0109】
また、テストパタン数を算出する代わりに、回路内部は解析せず端子数情報だけを取り出せばよいので、容易にグループ化ができ、テストパタン数の低減効果が得られる。
【0110】
また、スキャン信号をバイパスさせるセレクタの制御を外部端子から直接行なうのではなく、制御回路を備える場合は、バイパスさせるセレクタが多数存在しても、セレクタの制御を行なう外部端子はSEL信号とSEL_CLK信号、およびSEL_RST信号の計3端子でいいというメリットがある。
【図面の簡単な説明】
【図1】本発明の第1の実施形態のスキャンチェーン構築のフローチャートである。
【図2】本発明を適用し手構築したたスキャンチェーン回路の構成図である。
【図3】第2の実施例として、グループ番号を各組合せ回路部に必要なパタン数の代わりに組合せ回路部の入力端子数としてスキャンチェーンを構築するフロー図である。
【図4】第3の実施の形態として、バイパスさせるセレクタの制御信号に制御回路を設けたスキャンチェーン回路の構成図である。
【図5】図5の制御回路の回路図である。
【図6】従来のスキャンチェーン回路の一例を示す構成図である。
【符号の説明】
1,2,41  SEL端子
3  SIN端子
4  データ入力端子
5  SO端子
10,11,12,13,14,15  ScanFF
20,21  バッファ
24,25  組合せ回路部
30,31,63,64  セレクタ
40  制御回路
42  SEL_CLK端子
43  SEL_RST端子
61,62  ラッチ回路
79  AND回路
65  スキャンイン端子
66  クロック端子
71  テストデータ出力a
72  テストデータ入力b
74  テストデータ入力d

Claims (23)

  1. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築することを特徴とするスキャンチェーン構築方法。
  2. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンチェーンをグループ化してテストするためのスキャンチェーングループ化の前処理として、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストパタン数を算出するためのステップを含むことを特徴とするスキャンチェーン構築方法。
  3. 前記スキャンチェーングループ化の前処理として、前記組合せ回路の算出テストパタン数を、前記組合せ回路の出力を受ける前記スキャンフリップフロップのグループ番号に設定する請求項2記載のスキャンチェーン構築方法。
  4. 前記スキャンチェーングループ化の前処理として、前記組合せ回路の入力端および出力端に接続されるスキャンフリップフロップそれぞれに設定された前記グループ番号を比較して大小関係のデータを取得する請求項2または3記載のスキャンチェーン構築方法。
  5. 前記スキャンチェーングループ化の前処理として、取得した前記大小関係のデータを基に、前記組合せ回路の入力端および出力端のうち前記入力端に接続された第1のスキャンフリップフロップのグループ番号が、前記出力端に接続された第2のスキャンフリップフロップの番号よりも小さいとき、前記第1のスキャンフリップフロップのグループ番号を前記第2のスキャンフリップフロップの番号と同じ番号に書き変えて同一グループ内に属する前記第1および前記第2のスキャンフリップフロップのグループ番号を共通化する請求項2または3記載のスキャンスキャンチェーン構築方法。
  6. 前記スキャンチェーングループ化に係わる前処理を全て終了後、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、前記スキャンチェーン内の前記グループ番号が異なるスキャンフリップフロップ間には、スキャンイン端子からの信号と前段のグループ内の第1および第2のスキャンフリップフロップのうち前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタを、前記前段に続く後段のグループ内の第1および第2のスキャンフリップフロップのうち前記第1のスキャンフリップフロップの入力端にそれぞれ挿入しスキャンチェーンを構築する請求項2,3,4または5記載のスキャンチェーン構築方法。
  7. 前記組合せ回路のテストパタン数に代えて前記組合せ回路の入力端子数を用いる請求項2または3記載のスキャンチェーン構築方法。
  8. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化するグループ化処理ステップと、それぞれのグループ内の第1および第2のスキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築するスキャンチェーン構築処理ステップとを有することを特徴とするスキャンチェーン構築方法。
  9. 前記グループ化処理ステップは、前記組合せ回路をテストするのに必要なパタン数を算出するパタン数算出処理ステップと、前記パタン数算出処理ステップで算出した算出テストパタン数を前記第1および前記第2のスキャンフリップフロップそれぞれのグループ番号として割り当てるグループ番号処理ステップと、前記グループ番号処理ステップで割り当てた、テスト対象の前記組合せ回路の入力端に接続された前記第1のスキャンフリップフロップおよび出力端に接続された前記第2のスキャンフリップフロップそれぞれの前記グループ番号を比較する比較処理ステップと、前記第1のスキャンフリップフロップのグループ番号が、前記第2のスキャンフリップフロップのグループ番号より小さいかを解析するグループ番号解析処理ステップとを有する請求項8記載のスキャンチェーン構築方法。
  10. 前記スキャンチェーン構築処理ステップは、前記グループ番号解析処理ステップでの処理結果に基づき、前記第2のスキャンフリップフロップのグループ番号が前記第1のスキャンフリップフロップのグループ番号よりも小さかった場合に、前記第2のスキャンフリップフロップのグループ番号を前記第1のスキャンフリップフロップのグループ番号に置き換えるグループ番号置き換え処理ステップと、全ての前記スキャンフリップフロップにおける前記比較処理ステップおよび前記グループ番号解析処理ステップステップのチェックが終了していなければ前記比較処理ステップへ戻り、終了していれば次の処理ステップへ進むチェック終了確認処理ステップと、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、縦続接続された複数のグループうち前段のグループ内の前記第2のスキャンフリップフロップおよび前記前段に続く後段のグループ内の前記第1のスキャンフリップフロップの間には、スキャンイン端子からの信号または前記前段のグループ内の前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタ挿入しスキャンチェーンを構築するセレクタ挿入処理ステップとを有する請求項8記載のスキャンチェーン構築方法。
  11. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続した前記組合せ回路の入力端子数をそれぞれ算出し、算出入力端子数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築することを特徴とするスキャンチェーン構築方法。
  12. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路の入力端子数をそれぞれ算出し、算出入力端子数に対応してグループ化する端子数によるグループ化処理ステップと、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築する端子数によるスキャンチェーン構築処理ステップとを有することを特徴とするスキャンチェーン構築方法。
  13. 前記端子数によるグループ化処理ステップは、前記組合せ回路の入力端子数を算出する入力端子数算出処理ステップと、前記入力端子数算出処理ステップで算出した算出端子数を前記スキャンフリップフロップそれぞれのグループ番号として割り当てるグループ番号処理ステップと、前記グループ番号処理ステップで割り当てた、テスト対象の前記組合せ回路の入力端に接続された第1のスキャンフリップフロップおよび出力端に接続された第2のスキャンフリップフロップそれぞれの前記グループ番号を比較する比較処理ステップと、前記第1のスキャンフリップフロップの前記グループ番号が、前記第2のスキャンフリップフロップの前記グループ番号より小さいかを解析するグループ番号解析処理ステップとを有する請求項12記載のスキャンチェーン構築方法。
  14. 前記端子数によるスキャンチェーン構築処理ステップは、前記グループ番号解析処理ステップで、前記第2のスキャンフリップフロップのグループ番号が前記第1のスキャンフリップフロップのグループ番号よりも小さかった場合に、前記第2のスキャンフリップフロップのグループ番号を前記第1のスキャンフリップフロップのグループ番号に置き換えるグループ番号置き換え処理ステップと、全ての前記スキャンフリップフロップにおける前記比較処理ステップおよび前記グループ番号解析処理ステップステップのチェックが終了していなければ前記比較処理ステップへ戻り、終了していれば次の処理ステップへ進むチェック終了確認処理ステップと、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、縦続接続された複数のグループのうち前段のグループ内の前記第2のスキャンフリップフロップおよび前記前段に続く後段のグループ内の前記第1のスキャンフリップフロップの間には、スキャンイン端子からの信号または前記前段のグループ内の前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタ挿入しスキャンチェーンを構築するセレクタ挿入処理ステップとを有する請求項12記載のスキャンチェーン構築方法。
  15. テストをするのに必要なテストパタン数が少ないグループの順番にスキャンチェーンを構築し、異なるグループ間である、第n+1(nは整数)番目のグループの前記組合せ回路のテストが終了した時点で、第n+1番目のグループ出力側の前記セレクタにスキャン端子からの信号を選択させることにより、前記第n番目および前記n+1番目のグループ内それぞれの前記第1および前記第2のスキャンフリップフロップのシフト動作を行なわずに、第n+2番目のグループの前記第1のスキャンフリップフロップに外部から直接値を設定して第n+2番目のグループの前記組合せ回路のテストを行う請求項2,3,4または5記載のスキャンチェーン構築方法。
  16. 所定の前記グループ内の組合せ回路部のテストが終了した時点で、後続する次段のグループとの間に設けた前記セレクタに前記所定のブロックの入力端に設けたセレクタからの信号を選択させることにより、初段のブロックから前記所定のブロックまでの全てのスキャンフリップフロップへのシフト動作を行なわずに前記次段のグループのスキャンフリップフロップに直接データ値を設定して残りの組合せ回路部をテストしテストパタンのシフト動作を減少させる請求項6記載のスキャンチェーンテスト構築方法。
  17. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築し、前記セレクタの制御を外部端子から直接行なわずに、制御回路を用いて行ない、前記制御回路は、セレクタ制御信号とセレクタクロック信号と制御回路リセット信号とを入力し、前記リセット信号で初期化した後、前記セレクタ制御信号およびセレクタ端子をアクティブにして順次各セレクタをアクティブにすることを特徴とするスキャンチェーン構築方法。
  18. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ備えることを特徴とするスキャンチェーン回路。
  19. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化し、それぞれのグループ内の前記スキャンフリップフロップを前記グループ単位にそれぞれバイパス用に前記グループ間にそれぞれ挿入されるセレクタと、前記セレクタを制御する制御回路とを備え、前記制御回路は、セレクタ制御信号とセレクタクロック信号と制御回路リセット信号とを入力し、前記リセット信号で初期化した後、前記セレクタ制御信号およびセレクタ端子をアクティブにして順次各セレクタをアクティブにする機能を有することを特徴とするスキャンチェーン回路。
  20. 縦続接続された前記各グループうち前段のグループの出力をバイパスさせる前記セレクタの個数に関わらず、前記セレクタの制御を行なう外部端子はセレクタ制御信号、セレクタクロック信号およびセレクタリセット信号の3端子を備える請求項19記載のスキャンチェーン回路。
  21. 1入力のバッファまたは複数入力の論理回路で構成する組合せ回路およびスキャンフリップフロップを縦続接続したスキャンチェーンのテストを行うためのスキャンチェーン構築方法において、前記スキャンフリップフロップそれぞれのデータ入力端に接続された前記組合せ回路のテストに必要なテストパターン数をそれぞれ算出し、算出テストパターン数に対応してグループ化するグループ化処理ステップと、それぞれのグループ内の第1および第2のスキャンフリップフロップを前記グループ単位にそれぞれバイパスさせるセレクタを、前記グループ間にそれぞれ挿入して前記スキャンチェーンを構築するスキャンチェーン構築処理ステップとを、コンピュータに実行させるプログラム。
  22. 前記グループ化処理ステップは、前記組み合せ回路をテストするのに必要なパタン数を算出するパタン数算出処理ステップと、前記パタン数算出処理ステップで算出した算出テストパタン数を前記第1および前記第2のスキャンフリップフロップそれぞれのグループ番号として割り当てるグループ番号処理ステップと、前記グループ番号処理ステップで割り当てた、テスト対象の前記組合せ回路の入力端および出力端に接続された前記第1および前記第2のスキャンフリップフロップの前記グループ番号を比較する比較処理ステップと、前記入力端に接続された第1のスキャンフリップフロップのグループ番号が、前記出力端に接続された第2のスキャンフリップフロップのグループ番号より小さいかを解析するグループ番号解析処理ステップとを、コンピュータに実行させるプログラム。
  23. 前記スキャンチェーン構築処理ステップは、前記グループ番号解析処理ステップでの処理結果に基づき、前記第2のスキャンフリップフロップのグループ番号が前記第1のスキャンフリップフロップのグループ番号よりも小さかった場合に、前記第2のスキャンフリップフロップのグループ番号を前記第1のスキャンフリップフロップのグループ番号に置き換えるグループ番号置き換え処理ステップと、全ての前記スキャンフリップフロップにおける前記比較処理ステップおよび前記グループ番号解析処理ステップステップのチェックが終了していなければ前記比較処理ステップへ戻り、終了していれば次の処理ステップへ進むチェック終了確認処理ステップと、前記算出テストパタン数を基に設定された前記グループ番号の小さい方から順番にスキャンチェーンを構築するとともに、縦続接続された前記各グループうち前段のグループ内の前記第2のスキャンフリップフロップおよび前記前段に続く後段のグループ内の前記第1のスキャンフリップフロップの間には、スキャンイン端子からの信号と前記前段のグループ内の前記第2のスキャンフリップフロップからの信号を選択端子の信号で選択するセレクタ挿入しスキャンチェーンを構築するセレクタ挿入処理ステップとを、コンピュータに実行させるプログラム。
JP2002240176A 2002-08-21 2002-08-21 スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム Withdrawn JP2004077356A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002240176A JP2004077356A (ja) 2002-08-21 2002-08-21 スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002240176A JP2004077356A (ja) 2002-08-21 2002-08-21 スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム

Publications (1)

Publication Number Publication Date
JP2004077356A true JP2004077356A (ja) 2004-03-11

Family

ID=32023028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002240176A Withdrawn JP2004077356A (ja) 2002-08-21 2002-08-21 スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム

Country Status (1)

Country Link
JP (1) JP2004077356A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010223808A (ja) * 2009-03-24 2010-10-07 Fujitsu Ltd 回路モジュール、半導体集積回路、および検査装置
US7996805B2 (en) * 2008-01-08 2011-08-09 National Semiconductor Corporation Method of stitching scan flipflops together to form a scan chain with a reduced wire length
JP2013092517A (ja) * 2011-10-25 2013-05-16 Lsi Corp スキャン・チェーン用動的クロック領域バイパス
US20160274184A1 (en) 2015-03-18 2016-09-22 Renesas Electronics Corporation Semiconductor apparatus and design apparatus
US11275114B2 (en) 2020-03-19 2022-03-15 Kabushiki Kaisha Toshiba Semiconductor device for controlling supply of clock signal

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996805B2 (en) * 2008-01-08 2011-08-09 National Semiconductor Corporation Method of stitching scan flipflops together to form a scan chain with a reduced wire length
JP2010223808A (ja) * 2009-03-24 2010-10-07 Fujitsu Ltd 回路モジュール、半導体集積回路、および検査装置
US8621295B2 (en) 2009-03-24 2013-12-31 Fujitsu Limited Circuit module, semiconductor integrated circuit, and inspection apparatus and method thereof
JP2013092517A (ja) * 2011-10-25 2013-05-16 Lsi Corp スキャン・チェーン用動的クロック領域バイパス
US20160274184A1 (en) 2015-03-18 2016-09-22 Renesas Electronics Corporation Semiconductor apparatus and design apparatus
US10496771B2 (en) 2015-03-18 2019-12-03 Renesas Electronics Corporation Semiconductor apparatus and design apparatus
US11275114B2 (en) 2020-03-19 2022-03-15 Kabushiki Kaisha Toshiba Semiconductor device for controlling supply of clock signal

Similar Documents

Publication Publication Date Title
US7353440B2 (en) Multicore processor test method
US4764926A (en) Integrated circuits
US7055077B2 (en) Systems and methods for circuit testing
JP2591716B2 (ja) デジタル集積回路の疑似完全な自己検査方法とその装置及びテストポイントコンパクタ
JP3851782B2 (ja) 半導体集積回路及びそのテスト方法
JP2003332443A (ja) 半導体集積回路とその設計支援装置およびテスト方法
JP2002286810A (ja) スキャン方式3重み加重ランダムス・ビルトイン・セルフテストのテストセット生成方法、スキャン方式ビルトイン・セルフテスト回路
US7266746B2 (en) Device and method for testing integrated circuit
US10496771B2 (en) Semiconductor apparatus and design apparatus
US7308631B2 (en) Wrapper serial scan chain functional segmentation
JP3059424B2 (ja) 検査系列生成方法
JPH11352188A (ja) 半導体装置
JP2004077356A (ja) スキャンチェーン回路、スキャンチェーン構築方法およびそのプログラム
US7032202B2 (en) System and method for implementing a flexible top level scan architecture using a partitioning algorithm to balance the scan chains
KR910008920B1 (ko) 다중-모우드 카운터 회로망 및 이 회로망의 동작 검사 방법
JP4549701B2 (ja) 半導体回路装置及び半導体回路に関するスキャンテスト方法
JP3803283B2 (ja) 集積回路のテストのための圧縮テストプランの生成、テスト系列生成およびテスト
JP2003121497A (ja) 論理回路テスト用スキャンパス回路及びこれを備えた集積回路装置
JP2000258500A (ja) 半導体集積回路及び記憶媒体
JPH11203158A (ja) テスト回路付パイプライン回路およびテスト回路付パイプライン回路をテストするための自動テストパターン生成方法
EP1083435A2 (en) Integrated circuit test apparatus
US6898748B1 (en) Test circuit method and apparatus
JPH08220192A (ja) 組み込み型自己テスト論理回路
Ohtake et al. A method of test generation for path delay faults in balanced sequential circuits
JP2006292401A (ja) テスト構成の半導体集積回路およびそのテスト方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040130

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051125

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060308

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20070507