(57)【要約】【課題】テスト時間を短縮し、かつ、シフトモード時の瞬間最大消費電力を低減してIRドロップ解消し、スキャンテスト時の総消費電力を低減することができるスキャンテスト回路を提供する。【解決手段】スキャンテスト回路は、第１スキャンチェーンおよび第２スキャンチェーンを備える。第１スキャンチェーンは、シフトモードの場合に、第１スキャンクロックに同期して、スキャンイン信号を順次シフトインしつつ、前段の第１スキャンセル回路から次段の第１スキャンセル回路へ順次シフトして、全ての第１スキャンセル回路にテストパターンをセットする。第２スキャンチェーンは、シフトモードの場合に、第２スキャンクロックに同期して、各々の第１スキャンセル回路にセットされたテストパターンを各々対応する第２スキャンセル回路にパラレルにシフトして、全ての第２スキャンセル回路にテストパターンをセットする。【選択図】図２
2015215246.tif 000002
【特許請求の範囲】
【請求項１】
スキャンイネーブル信号がイネーブル状態の場合にシフトモードとなり、第１スキャンチェーンを構成するマスタブロック、および、第２スキャンチェーンを構成するスレーブブロックを備え、
前記第１スキャンチェーンは、前記シフトモードの場合に、直列に接続される１以上の第１スキャンセル回路を備え、第１スキャンクロックに同期して、スキャンイン信号を順次シフトインしつつ、前段の前記第１スキャンセル回路から次段の前記第１スキャンセル回路へ順次シフトして、全ての前記第１スキャンセル回路にテストパターンをセットするものであり、
前記第２スキャンチェーンは、前記シフトモードの場合に、各々対応する前記第１スキャンセル回路から直列に接続される１以上の第２スキャンセル回路を備え、第２スキャンクロックに同期して、各々の前記第１スキャンセル回路にセットされたテストパターンを各々対応する前記第２スキャンセル回路にパラレルにシフトして、全ての前記第２スキャンセル回路に前記テストパターンをセットするものであることを特徴とするスキャンテスト回路。
【請求項２】
さらに、各々の前記第１スキャンセル回路に対応して設けられ、マスクイネーブル信号がイネーブル状態の場合に、対応する前記第２スキャンセル回路の出力信号をマスクし、前記マスクイネーブル信号がディスエーブル状態の場合に、対応する前記第２スキャンセル回路の出力信号をそのまま出力する１以上のマスク回路と、
各々の前記第１スキャンセル回路に対応して設けられ、対応する前記第１スキャンセル回路の出力信号、および、対応する前記マスク回路の出力信号をまとめて圧縮した圧縮結果を出力する１以上の圧縮回路とを備え、
全ての前記第１スキャンセル回路に前記テストパターンをセットする場合、
前記マスクイネーブル信号がイネーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路の出力信号をマスクするものであり、
前記圧縮回路は、前段の前記第１スキャンセル回路の出力信号をそのまま出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの場合に、前記第１スキャンクロックに同期して、前記スキャンイン信号を順次シフトインしつつ、前段の前記圧縮回路から出力される、前段の前記第１スキャンセル回路の出力信号を次段の前記第１スキャンセル回路へ順次シフトして、全ての前記第１スキャンセル回路に前記テストパターンをセットするものである請求項１に記載のスキャンテスト回路。
【請求項３】
前記第１スキャンチェーンおよび前記第２スキャンチェーンは、前記スキャンイネーブル信号がディスエーブル状態の場合にキャプチャモードとなり、それぞれ、前記第１スキャンクロックおよび前記第２スキャンクロックに同期して、前記テストパターンに応じて動作した組合わせ回路から出力されるスキャンテストの結果を格納するものである請求項２に記載のスキャンテスト回路。
【請求項４】
前記第１スキャンチェーンに、前記第１スキャンチェーンおよび前記第２スキャンチェーンに格納されたスキャンテストの結果をまとめて圧縮した圧縮結果を格納する場合、
前記マスクイネーブル信号がディスエーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路の出力信号をそのまま出力するものであり、
前記圧縮回路は、対応する前記第１スキャンセル回路の出力信号、および、対応する前記マスク回路の出力信号をまとめて圧縮した圧縮結果を出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの１サイクル目に、前記第１スキャンクロックに同期して、前記スキャンテストの圧縮結果を格納するものである請求項３に記載のスキャンテスト回路。
【請求項５】
前記第１スキャンチェーンに格納されたスキャンテストの圧縮結果を出力する場合、
前記マスクイネーブル信号がイネーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路に格納されたスキャンテストの結果をマスクするものであり、
前記圧縮回路は、対応する前記第１スキャンセル回路に格納されたスキャンテストの圧縮結果をそのまま出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの場合に、前記第１スキャンクロックに同期して、前段の前記圧縮回路から出力される、前段の前記第１スキャンセル回路に格納されたスキャンテストの圧縮結果を次段の前記第１スキャンセル回路へ順次シフトすることにより、前記スキャンテストの圧縮結果を順次シフトアウトし、スキャンアウト信号として出力するものである請求項４に記載のスキャンテスト回路。
【請求項６】
最終段の前記マスク回路は、前記マスクイネーブル信号の状態にかかわらず、対応する前記第２スキャンセル回路の出力信号をそのまま出力するものである請求項２〜５のいずれか１項に記載のスキャンテスト回路。
【請求項７】
前記スレーブブロックは、前記シフトモードの場合に、２以上の前記第２スキャンチェーンを構成するものであり、
２以上の前記第２スキャンチェーンは、前記シフトモードの場合に、それぞれ、前記第２スキャンクロックに同期して、各々の前記第１スキャンセル回路にセットされたテストパターンを各々対応する前記第２スキャンセル回路にパラレルにシフトして、全ての前記第２スキャンセル回路に前記テストパターンをセットするものである請求項１〜６のいずれか１項に記載のスキャンテスト回路。
【請求項８】
前記スレーブブロックは、前記シフトモードの場合に、さらに、ｎ段（ｎは、１以上の整数）の第３スキャンチェーンを構成するものであり、
前記第３スキャンチェーンは、１以上の第３スキャンセル回路を備え、
ｎ段目の前記第３スキャンチェーンの各々の第３スキャンセル回路は、前記ｎが１の場合、各々対応する前記第２スキャンセル回路から直列に接続され、前記ｎが２以上の場合、（ｎ−１）段目の前記第３スキャンチェーンの各々対応する第３スキャンセル回路から直列に接続されるものであり、
前記ｎが１の場合、１段目の前記第３スキャンチェーンは、前記シフトモードの場合に、第３スキャンクロックに同期して、各々の前記第２スキャンセル回路にセットされたテストパターンを、１段目の前記第３スキャンチェーンの各々対応する前記第３スキャンセル回路にパラレルにシフトして、１段目の前記第３スキャンチェーンの全ての前記第３スキャンセル回路に前記テストパターンをセットするものであり、
前記ｎが２以上の場合、ｎ段目の前記第３スキャンチェーンは、前記シフトモードの場合に、第（ｎ＋２）スキャンクロックに同期して、（ｎ−１）段目の前記第３スキャンチェーンの各々の第３スキャンセル回路にセットされたテストパターンを、ｎ段目の前記第３スキャンチェーンの各々対応する第３スキャンセル回路にパラレルにシフトして、ｎ段目の前記第３スキャンチェーンの全ての第３スキャンセル回路に前記テストパターンをセットするものである請求項１〜７のいずれか１項に記載のスキャンテスト回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路（LSI）を効率よくテストするためのテスト容易化回路であるスキャンテスト回路に関するものである。
【背景技術】
【０００２】
スキャンテストには、シフトモードとキャプチャモードの２つのモードがあり、スキャンイネーブル信号で切り替える。
スキャンテストを行う場合、まず、シフトモードにより、スキャンチェーンと呼ばれる、LSI内のフリップフロップ（FF）を直列に接続したシフトレジスタを構成し、LSIの外部からテストパターンを順次シフトインして、スキャンチェーンの全てのFFにテストパターンをセットする。
【０００３】
その後、キャプチャモードにより、LSI内の論理回路（組合わせ回路）がテストパターンに従って動作したスキャンテストの結果を、スキャンチェーンを構成する各々のFFに出力し格納したあと、再び、シフトモードに切り替え、スキャンチェーンを構成する全てのFFに格納されたスキャンテストの結果を順次シフトアウトして、LSIの外部へ出力することによりLSIをテストする。
【０００４】
図３は、従来のスキャンテスト回路の構成を表す一例の回路図である。同図に示すスキャンテスト回路５０は、３つのスキャンチェーン５４、５６、５８と、出力圧縮回路７０とを備えている。
【０００５】
スキャンテスト回路５０は、スキャンイネーブル入力端子SCAN_ENを介して入力されるスキャンイネーブル信号EN（図３では、ENと記載されている箇所は接続されているものとする）がハイレベル（H)の場合に、シフトモードとなり、スキャンイネーブル信号ENがローレベル（L)の場合に、キャプチャモードとなる。また、スキャンクロック入力端子SCAN_CLKを介してスキャンクロックA1を入力する。
【０００６】
スキャンチェーン５４、５６、５８は、それぞれ、シフトモードの場合に、直列に接続されるFF６０および１以上のスキャンセル回路６２を備えている。スキャンセル回路６２は、マルチプレクサ６４と、FF６６とを備えている。
FF６０は、スキャンクロックA1に同期して、スキャンイン入力端子SCAN_INを介して入力されるスキャンイン信号（スキャンテスト時の信号）を保持し、次のサイクルで出力する。
スキャンセル回路６２は、スキャンイネーブル信号ENがLの場合、マルチプレクサ６４から、組合わせ回路の出力信号（テスト結果の信号）を出力し、スキャンイネーブル信号ENがHの場合、前段のFF６０または前段のスキャンセル回路６２の出力信号（スキャンテスト時の信号）を出力する。そして、スキャンクロックA1に同期して、マルチプレクサ６４の出力信号をFF６６に保持し、次のサイクルで出力する。
【０００７】
出力圧縮回路７０は、XOR回路により、３つのスキャンチェーン５４、５６、５８の出力信号の排他的論理和を演算することにより、スキャンテストの結果を圧縮し、その圧縮結果を、スキャンアウト信号として、スキャンアウト出力端子SCAN_OUTを介してLSI６８の外部へ出力する。
【０００８】
スキャンテストを行う場合、まず、シフトモードにより、スキャンイン信号を順次シフトインして、３つのスキャンチェーン５４、５６、５８のFF６０および全てのスキャンセル回路６２のFF６６にテストパターンをセットする。
【０００９】
この場合、スキャンイネーブル信号ENはイネーブル状態のHとされる。
これにより、シフトモードとなり、３つのスキャンチェーン５４、５６、５８において、それぞれ、FF６０および全てのFF６６が直列に接続されたスキャンチェーンが構成される。
【００１０】
続いて、スキャンクロックA1が３つのスキャンチェーン５４、５６、５８のFF６０および全てのFF６６の合計の段数分のサイクル数だけ駆動されるとともに、スキャンイン信号が順次入力される。
これにより、スキャンイン信号が３つのスキャンチェーン５４、５６、５８のそれぞれにパラレルに順次シフトインされ、同じテストパターンがセットされる。
【００１１】
組合わせ回路は、３つのスキャンチェーン５４、５６、５８のFF６０および全てのFF６６にセットされたテストパターン(スキャンイン信号)に従って動作し、そのスキャンテストの結果が組合わせ回路から出力される。
【００１２】
続いて、キャプチャモードにより、組合わせ回路からの出力信号（スキャンテストの結果）を、３つのスキャンチェーン５４、５６、５８に格納する。
【００１３】
この場合、スキャンイネーブル信号ENはキャプチャモードのLとされる。
これにより、キャプチャモードとなり、スキャンセル回路６２のマルチプレクサ６４からは、スキャンテストの結果が出力される。
【００１４】
続いて、スキャンクロックA1が１サイクルだけ駆動される。
これにより、スキャンテストの結果が、各々対応する３つのスキャンチェーン５４、５６、５８の各々のFF６６に入力され、次のサイクルで出力される。
【００１５】
次に、スキャンイネーブル信号ENはHとされ、再び、シフトモードとなる。
【００１６】
続いて、スキャンクロックA1が３つのスキャンチェーン５４、５６、５８のFF６０およびFF６６の段数分のサイクル数だけ駆動される。
これにより、３つのスキャンチェーン５４、５６、５８に格納されたスキャンテストの結果が順次シフトアウトされ、出力圧縮回路７０へ入力されるとともに、次のスキャンイン信号が３つのスキャンチェーン５４、５６、５８に順次シフトインされ、次のテストパターンがセットされてもよい。
【００１７】
出力圧縮回路７０からは、３つのスキャンチェーン５４、５６、５８の出力信号の排他的論理和を演算した結果（スキャンテストの圧縮結果）が、スキャンアウト信号として出力される。
【００１８】
従来のスキャンテスト回路では、スキャンチェーンを構成するFFの数に比例して、シフトモードの場合に、テストパターンをセットおよびスキャンテストとの結果を出力するために必要となる時間が増える。そのため、前述の図３や、特許文献１に示すように、スキャンチェーンを複数のスキャンチェーンに分割して、並列動作（同時動作）させることにより、テスト時間を短縮するものが提案されている。
【００１９】
また、スキャンテストのためのテスト信号の入出力に使用することができるLSIの外部端子が限られていることから、特許文献２に示すように、複数のスキャンチェーンを束ねて、全てのスキャンチェーンに同じテストパターンをセットし、各々のスキャンチェーンのスキャンテストの結果を圧縮して出力することにより、テスト時間を短縮するものが提案されている。
【００２０】
また、従来のスキャンテスト回路では、シフトモード時もキャプチャモード時も、スキャンチェーン内の全てのFFが同時動作する。これは、LSI内のほぼ全てのFFの同時動作することにより瞬間最大消費電力が大きくなり、IRドロップ（電圧降下）を発生させる原因となる。そのため、特許文献３、４のように、スキャンチェーンを複数のスキャンチェーンに分割して、スキャンチェーン毎に独立動作（個別動作）させるものも提案されている。
【００２１】
前述のように、従来のスキャンテスト回路では、スキャンチェーンを複数のスキャンチェーンに分割して、全てのスキャンチェーンを並列動作させることにより、テスト時間を短縮することができる。また、各々のスキャンチェーンを独立動作させることにより、瞬間最大消費電力を低減してIRドロップを解消することができる。しかし、スキャンチェーンの並列動作と独立動作は背反するものであり、これらの問題を同時に解消することができない。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開２００４−３７２５４号公報
【特許文献２】特開２００４−９３４２６号公報
【特許文献３】特開２０１１−１５３９１７号公報
【特許文献４】特開２０１２−７９１０号公報
【発明の概要】
【発明が解決しようとする課題】
【００２３】
本発明の目的は、前記従来技術の問題点を解消し、テスト時間を短縮し、かつ、シフトモード時の瞬間最大消費電力を低減してIRドロップ解消し、スキャンテスト時の総消費電力を低減することができるスキャンテスト回路を提供することにある。
【課題を解決するための手段】
【００２４】
上記目的を達成するために、本発明は、スキャンイネーブル信号がイネーブル状態の場合にシフトモードとなり、第１スキャンチェーンを構成するマスタブロック、および、第２スキャンチェーンを構成するスレーブブロックを備え、
前記第１スキャンチェーンは、前記シフトモードの場合に、直列に接続される１以上の第１スキャンセル回路を備え、第１スキャンクロックに同期して、スキャンイン信号を順次シフトインしつつ、前段の前記第１スキャンセル回路から次段の前記第１スキャンセル回路へ順次シフトして、全ての前記第１スキャンセル回路にテストパターンをセットするものであり、
前記第２スキャンチェーンは、前記シフトモードの場合に、各々対応する前記第１スキャンセル回路から直列に接続される１以上の第２スキャンセル回路を備え、第２スキャンクロックに同期して、各々の前記第１スキャンセル回路にセットされたテストパターンを各々対応する前記第２スキャンセル回路にパラレルにシフトして、全ての前記第２スキャンセル回路に前記テストパターンをセットするものであることを特徴とするスキャンテスト回路を提供するものである。
【００２５】
さらに、各々の前記第１スキャンセル回路に対応して設けられ、マスクイネーブル信号がイネーブル状態の場合に、対応する前記第２スキャンセル回路の出力信号をマスクし、前記マスクイネーブル信号がディスエーブル状態の場合に、対応する前記第２スキャンセル回路の出力信号をそのまま出力する１以上のマスク回路と、
各々の前記第１スキャンセル回路に対応して設けられ、対応する前記第１スキャンセル回路の出力信号、および、対応する前記マスク回路の出力信号をまとめて圧縮した圧縮結果を出力する１以上の圧縮回路とを備え、
全ての前記第１スキャンセル回路に前記テストパターンをセットする場合、
前記マスクイネーブル信号がイネーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路の出力信号をマスクするものであり、
前記圧縮回路は、前段の前記第１スキャンセル回路の出力信号をそのまま出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの場合に、前記第１スキャンクロックに同期して、前記スキャンイン信号を順次シフトインしつつ、前段の前記圧縮回路から出力される、前段の前記第１スキャンセル回路の出力信号を次段の前記第１スキャンセル回路へ順次シフトして、全ての前記第１スキャンセル回路に前記テストパターンをセットするものであることが好ましい。
【００２６】
また、前記第１スキャンチェーンおよび前記第２スキャンチェーンは、前記スキャンイネーブル信号がディスエーブル状態の場合にキャプチャモードとなり、それぞれ、前記第１スキャンクロックおよび前記第２スキャンクロックに同期して、前記テストパターンに応じて動作した組合わせ回路から出力されるスキャンテストの結果を格納するものであることが好ましい。
【００２７】
また、前記第１スキャンチェーンに、前記第１スキャンチェーンおよび前記第２スキャンチェーンに格納されたスキャンテストの結果をまとめて圧縮した圧縮結果を格納する場合、
前記マスクイネーブル信号がディスエーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路の出力信号をそのまま出力するものであり、
前記圧縮回路は、対応する前記第１スキャンセル回路の出力信号、および、対応する前記マスク回路の出力信号をまとめて圧縮した圧縮結果を出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの１サイクル目に、前記第１スキャンクロックに同期して、前記スキャンテストの圧縮結果を格納するものであることが好ましい。
【００２８】
また、前記第１スキャンチェーンに格納されたスキャンテストの圧縮結果を出力する場合、
前記マスクイネーブル信号がイネーブル状態とされて、前記マスク回路は、対応する前記第２スキャンセル回路に格納されたスキャンテストの結果をマスクするものであり、
前記圧縮回路は、対応する前記第１スキャンセル回路に格納されたスキャンテストの圧縮結果をそのまま出力するものであり、
前記第１スキャンチェーンは、前記シフトモードの場合に、前記第１スキャンクロックに同期して、前段の前記圧縮回路から出力される、前段の前記第１スキャンセル回路に格納されたスキャンテストの圧縮結果を次段の前記第１スキャンセル回路へ順次シフトすることにより、前記スキャンテストの圧縮結果を順次シフトアウトし、スキャンアウト信号として出力するものであることが好ましい。
【００２９】
また、最終段の前記マスク回路は、前記マスクイネーブル信号の状態にかかわらず、対応する前記第２スキャンセル回路の出力信号をそのまま出力するものであることが好ましい。
【００３０】
また、前記スレーブブロックは、前記シフトモードの場合に、２以上の前記第２スキャンチェーンを構成するものであり、
２以上の前記第２スキャンチェーンは、前記シフトモードの場合に、それぞれ、前記第２スキャンクロックに同期して、各々の前記第１スキャンセル回路にセットされたテストパターンを各々対応する前記第２スキャンセル回路にパラレルにシフトして、全ての前記第２スキャンセル回路に前記テストパターンをセットするものであることが好ましい。
【００３１】
また、前記スレーブブロックは、前記シフトモードの場合に、さらに、ｎ段（ｎは、１以上の整数）の第３スキャンチェーンを構成するものであり、
前記第３スキャンチェーンは、１以上の第３スキャンセル回路を備え、
ｎ段目の前記第３スキャンチェーンの各々の第３スキャンセル回路は、前記ｎが１の場合、各々対応する前記第２スキャンセル回路から直列に接続され、前記ｎが２以上の場合、（ｎ−１）段目の前記第３スキャンチェーンの各々対応する第３スキャンセル回路から直列に接続されるものであり、
前記ｎが１の場合、１段目の前記第３スキャンチェーンは、前記シフトモードの場合に、第３スキャンクロックに同期して、各々の前記第２スキャンセル回路にセットされたテストパターンを、１段目の前記第３スキャンチェーンの各々対応する前記第３スキャンセル回路にパラレルにシフトして、１段目の前記第３スキャンチェーンの全ての前記第３スキャンセル回路に前記テストパターンをセットするものであり、
前記ｎが２以上の場合、ｎ段目の前記第３スキャンチェーンは、前記シフトモードの場合に、第（ｎ＋２）スキャンクロックに同期して、（ｎ−１）段目の前記第３スキャンチェーンの各々の第３スキャンセル回路にセットされたテストパターンを、ｎ段目の前記第３スキャンチェーンの各々対応する第３スキャンセル回路にパラレルにシフトして、ｎ段目の前記第３スキャンチェーンの全ての第３スキャンセル回路に前記テストパターンをセットするものであることが好ましい。
【発明の効果】
【００３２】
本発明では、スキャンチェーンを、第１スキャンチェーンおよび第２スキャンチェーン、さらには、ｎ段の第３スキャンチェーンに分割し、テストパターンをセットする場合に、第１スキャンチェーンにセットされたテストパターンを、第２スキャンチェーンおよびｎ段の第３スキャンチェーンにパラレルに順次シフトする。また、スキャンテストの結果および圧縮結果を出力する場合に、第１スキャンチェーンにスキャンテストの圧縮結果を格納して順次出力する。
【００３３】
そのため、本発明によれば、シフトモードの場合に、テストパターン長を短くすることができ、テストパターンのセットやスキャンテストの結果の出力のために必要となる時間を短縮することができる。
また、シフトモードの場合に、同時動作するスキャンセル回路の数が減ることから、スキャンテスト時の消費電力総量および瞬間最大消費電力を低減し、IRドロップの発生を回避することができる。
また、シフトモードの場合に、スキャンセル回路間のデータの受け渡しタイミングのケアが必要となるのは第１スキャンセル回路間のみとなり、第２スキャン回路および、ｎ段の第３スキャンセル回路間の受け渡しタイミングのケアが不要となるという利点もある。
【図面の簡単な説明】
【００３４】
【図１】本発明のスキャンテスト回路の構成を表す一実施形態の概念図である。
【図２】本発明のスキャンテスト回路の構成を表す一実施形態の回路図である。
【図３】従来のスキャンテスト回路の構成を表す一例の回路図である。
【発明を実施するための形態】
【００３５】
以下に、添付の図面に示す好適実施形態に基づいて、本発明のスキャンテスト回路を詳細に説明する。
【００３６】
図１および図２は、それぞれ、本発明のスキャンテスト回路の構成を表す一実施形態の概念図および回路図である。これらの図に示すスキャンテスト回路１０は、マスタブロック１４と、スレーブブロック１６とを備えている。
【００３７】
図２に示すように、スキャンクロック入力端子SCAN_CLK_A,SCAN_CLK_B,SCAN_CLK_Cを介してスキャンクロックA1,B1,C1（第１、第２、第３スキャンクロック）が入力される。また、マルチプレクサ３６の選択入力端子には、LSI１８の外部からスキャンイネーブル入力端子SCAN_ENを介してスキャンイネーブル信号EN（図２では、ENと記載されている箇所は接続されているものとする）が入力される。
【００３８】
マスタブロック１４は、スキャンイネーブル信号ENがイネーブル状態の場合にシフトモードとなり、第１スキャンチェーン２６を構成するものである。また、マスタブロック１４は、マスク回路２８と、圧縮回路３０とを備えている。
【００３９】
第１スキャンチェーン２６は、シフトモードの場合に、直列に接続されるフリップフロップ（FF）３２Aおよび１以上のスキャンセル回路３４Aを備えている。
第１スキャンチェーン２６は、シフトモードの場合に、スキャンクロックA1に同期して、スキャンイン信号を順次シフトインしつつ、FF３２Aおよび前段のスキャンセル回路３４Aから次段のスキャンセル回路３４Aへ順次シフトして、FF３２Aおよび全てのスキャンセル回路３４Aにテストパターンをセットするものである。
【００４０】
FF３２Aのデータ入力端子Dには、LSI１８の外部からスキャンイン入力端子SCAN_INを介してスキャンイン信号が入力され、クロック入力端子には、スキャンクロックA1が入力される。
FF３２Aは、スキャンクロックA1に同期して、スキャンイン信号を保持し、次のサイクルでデータ出力端子Qから出力する。
【００４１】
スキャンセル回路３４Aは、マルチプレクサ３６と、FF３８とを備えている。
マルチプレクサ３６の入力端子０、１には、それぞれ、組合わせ回路の出力信号（テスト結果の信号）、および、前段の圧縮回路３０の出力信号（スキャンイン時の信号）が入力され、選択入力端子には、スキャンイネーブル信号ENが入力される。
FF３８のデータ入力端子Dには、マルチプレクサ３６の出力信号が入力され、クロック入力端子には、スキャンクロックA1が入力される。
スキャンセル回路３４Aは、スキャンイネーブル信号ENがLの場合、マルチプレクサ３６から、組合わせ回路の出力信号(テスト結果)を出力し、スキャンイネーブル信号ENがHの場合、マルチプレクサ３６から、前段の圧縮回路３０の出力信号を出力する。そして、スキャンクロックA1に同期して、マルチプレクサ３６の出力信号をFF３８に保持し、次のサイクルでそのデータ出力端子Qから出力する。
【００４２】
マスク回路２８は、FF３２Aおよび各々のスキャンセル回路３４Aに対応して１以上設けられたものであり、例えば、AND回路により構成される。
【００４３】
１段目のマスク回路２８には、LSI１８の外部からマスクイネーブル入力端子MASK_ENを介して入力されるマスクイネーブル信号がインバータ４４により反転された反転信号、および、スレーブブロック１６の対応するFF３２B、３２Cの出力信号が入力される。
例えば、マスクイネーブル信号がイネーブル状態のH、その反転信号がLの場合、FF３２B、３２Cの出力信号は共にマスクされ、１段目のマスク回路２８の２つの出力信号はLとなる。一方、マスクイネーブル信号がL、その反転信号がHの場合、１段目のマスク回路２８は、FF３２B、３２Cの出力信号をそのまま出力する。
【００４４】
２段目〜（最終段−１）段目のマスク回路２８には、マスクイネーブル信号の反転信号、および、スレーブブロック１６の対応するスキャンセル回路３４B、３４Cの出力信号が入力される。
同様に、マスクイネーブル信号がイネーブル状態のH、その反転信号がLの場合、スキャンセル回路３４B、３４Cの出力信号は共にマスクされ、２段目〜（最終段−１）段目のマスク回路２８の２つの出力信号はLとなる。一方、マスクイネーブル信号がL、その反転信号がHの場合、２段目〜（最終段−１）段目のマスク回路２８は、対応するスキャンセル回路３４B、３４Cの出力信号をそのまま出力する。
【００４５】
最終段のマスク回路２８には、マスクイネーブル信号の反転信号は入力されず、スレーブブロック１６の対応する最終段のスキャンセル回路３４B、３４Cの出力信号が入力される。
最終段のマスク回路２８は、例えば、一方の入力端子がHに固定されたAND回路により構成される。
最終段のマスク回路２８は、マスクイネーブル信号に関係なく、最終段のスキャンセル回路３４B、３４Cの出力信号をそのまま出力する。
【００４６】
圧縮回路３０は、FF３２Aおよび各々のスキャンセル回路３４Aに対応して１以上設けられたものであり、例えば、XOR回路により構成される。
【００４７】
１段目の圧縮回路３０には、対応するFF３２Aの出力信号、および、対応する１段目のマスク回路２８から、スレーブブロック１６の対応するFF３２B、３２Cの出力信号に対応する２本の出力信号が入力される。
１段目の圧縮回路３０は、１段目のマスク回路２８により、FF３２B、３２Cの出力信号がマスクされ、１段目のマスク回路２８の２つの出力信号がLの場合に、FF３２Aの出力信号をそのまま出力する。一方、１段目のマスク回路２８から、FF３２B、３２Cの出力信号がそのまま出力される場合に、FF３２Aの出力信号および１段目のマスク回路２８の２つの出力信号の排他的論理和の演算結果を出力することにより、これらをまとめて圧縮して出力する。
【００４８】
２段目〜最終段の圧縮回路３０には、対応するスキャンセル回路３４Aの出力信号、および、対応するマスク回路２８から、スレーブブロック１６の対応するスキャンセル回路３４B、３４Cの出力信号に対応する２本の出力信号が入力される。
２段目〜（最終段−１）の圧縮回路３０は、対応するマスク回路２８により、対応するスキャンセル回路３４B、３４Cの出力信号がマスクされ、マスク回路２８の２つの出力信号がLの場合に、スキャンセル回路３４Ａの出力信号をそのまま出力する。また、マスク回路２８から、スキャンセル回路３４B、３４Cの出力信号がそのまま出力される場合に、スキャンセル回路３４Aの出力信号および対応するマスク回路２８から出力される２つの出力信号の排他的論理和の演算結果を出力することにより、これらをまとめて圧縮して出力する。
【００４９】
最終段の圧縮回路３０は、対応するスキャンセル回路３４Aの出力信号および対応するマスク回路２８から出力される、スレーブブロック１６の対応する最終段のスキャンセル回路３４B、３４Cの出力信号の排他的論理和の演算結果を出力することにより、これらをまとめて圧縮して出力する。
言い換えると、最終段の圧縮回路３０は、マスタブロック１４およびスレーブブロック１６に格納されたスキャンテストの結果の圧縮結果を、スキャンアウト信号として、スキャンアウト出力端子SCAN_OUTを介してLSI１８の外部へ出力する。
【００５０】
続いて、スレーブブロック１６は、スキャンイネーブル信号ENがイネーブル状態の場合にシフトモードとなり、第２スキャンチェーン４０および第３スキャンチェーン４２を構成するものである。
【００５１】
第２スキャンチェーン４０は、シフトモードの場合に、並列に接続されるFF３２Bおよび１以上のスキャンセル回路３４Bを備えている。言い換えると、図２に示すように、FF３２Bおよび１以上のスキャンセル回路３４Bは、シフトモードの場合に、マスタブロック１４の各々対応するFF３２Aおよび１以上のスキャンセル回路３４Aから直列に接続されている。
第２スキャンチェーン４０は、シフトモードの場合に、スキャンクロックB1に同期して、第１スキャンチェーン２６のFF３２Aおよび各々のスキャンセル回路３４Aにセットされたテストパターンを、各々対応するFF３２Bおよび各々のスキャンセル回路３４Bにパラレルにシフトして、FF３２Bおよび全てのスキャンセル回路３４Bにテストパターンをセットし、次のサイクルで出力するものである。
【００５２】
FF３２Bのデータ入力端子Dには、FF３２Aの出力信号が入力され、クロック入力端子には、スキャンクロックB1が入力される。
FF３２Bは、スキャンクロックB1に同期して、FF３２Aの出力信号を保持し、次のサイクルでそのデータ出力端子Qから出力する。
【００５３】
スキャンセル回路３４Bは、マルチプレクサ３６と、FF３８とを備えている。
マルチプレクサ３６の入力端子１には、マスタブロック１４の対応するスキャンセル回路３４Aの出力信号が入力され、FF３８のクロック入力端子には、スキャンクロックB1が入力される。これ以外の構成は、スキャンセル回路３４Aと同じである。
スキャンセル回路３４Bは、スキャンイネーブル信号ENがLの場合、マルチプレクサ３６から、組合わせ回路の出力信号（テスト結果）を出力し、スキャンイネーブル信号ENがHの場合、マルチプレクサ３６から、対応するスキャンセル回路３４Aの出力信号を出力する。そして、スキャンクロックB1に同期して、マルチプレクサ３６の出力信号をFF３８に保持し、次のサイクルでそのデータ出力端子Qから出力する。
【００５４】
第３スキャンチェーン４２は、シフトモードの場合に、並列に接続されるFF３２Cおよび１以上のスキャンセル回路３４Cを備えている。言い換えると、図２に示すように、FF３２Cおよび１以上のスキャンセル回路３４Cは、シフトモードの場合に、第２スキャンチェーン４０の各々対応するFF３２Bおよび１以上のスキャンセル回路３４Bから直列に接続されている。
第３スキャンチェーン４２は、シフトモードの場合に、スキャンクロックC1に同期して、第２スキャンチェーン４０のFF３２Bおよび各々のスキャンセル回路FF３４Bにセットされたテストパターンを、各々対応するFF３２Cおよびスキャンセル回路３４Cにパラレルにシフトして、FF３２Cおよび全てのスキャンセル回路３４Cにテストパターンをセットし、次のサイクルで出力するものである。
【００５５】
FF３２Cのデータ入力端子Dには、FF３２Bの出力信号が入力され、クロック入力端子には、スキャンクロックC1が入力される。
FF３２Cは、スキャンクロックC1に同期して、FF３２Bの出力信号を保持し、次のサイクルでそのデータ出力端子Qから出力する。
【００５６】
スキャンセル回路３４Cは、マルチプレクサ３６と、FF３８とを備えている。
マルチプレクサ３６の入力端子１には、スレーブブロック１６の対応するスキャンセル回路３４Bの出力信号が入力され、FF３８のクロック入力端子には、スキャンクロックC1が入力される。これ以外の構成は、スキャンセル回路３４Aと同じである。
スキャンセル回路３４Cは、スキャンイネーブル信号ENがLの場合、マルチプレクサ３６から、組合わせ回路の出力信号（テスト結果）を出力し、スキャンイネーブル信号ENがHの場合、マルチプレクサ３６から、対応するスキャンセル回路３４Bの出力信号を出力する。そして、スキャンクロックC1に同期して、マルチプレクサ３６の出力信号をFF３８に保持し、次のサイクルでそのデータ出力端子Qから出力する。
【００５７】
次に、スキャンテスト回路１０の動作を説明する。
【００５８】
まず、シフトモードにより、スキャンイン信号を順次シフトインして、第１スキャンチェーン２６のFF３２Aおよび各々のスキャンセル回路３４AのFF３８にテストパターンをセットする。
【００５９】
この場合、スキャンイネーブル信号ENはイネーブル状態のHとされる。
これにより、シフトモードとなり、各々のスキャンセル回路３４A、３４B、３４Cのマルチプレクサ３６からは、スキャンイン時の信号が出力される。従って、マスタブロック１４において第１スキャンチェーン２６が構成され、スレーブブロック１６において第２スキャンチェーン４０および第３スキャンチェーン４２が構成される。
【００６０】
また、マスクイネーブル信号はイネーブル状態のH、つまり、その反転信号はローレベル（L）とされる。
これにより、第２スキャンチェーン４０および第３スキャンチェーン４２の１段目〜（最終段−１）段目のＦＦ３２Ｂ，ＦＦ３２Ｃ，各々対応するスキャンセル回路３４B、３４Cの出力信号はマスクされ、１段目〜（最終段−１）段目のマスク回路２８の出力信号はLとなる。最終段のマスク回路２８からは、第２スキャンチェーン４０および第３スキャンチェーン４２の最終段のスキャンセル回路３４B、３４Cの出力信号がそのまま出力される。
１段目〜（最終段−１）段目の圧縮回路３０からは、FF３２Aおよび前段のスキャンセル回路３４Aの出力信号がそのまま出力される。最終段の圧縮回路３０からは、最終段のスキャンセル回路３４Aの出力信号および最終段のマスク回路２８の２つの出力信号の排他的論理和の演算結果が出力される。
【００６１】
続いて、スキャンクロックB1,C1が停止された状態で、スキャンクロックA1のみが第１スキャンチェーン２６を構成するFF３２Aおよびスキャンセル回路３４AのFF３８の合計の段数分のサイクル数だけ駆動されるとともに、スキャンイン信号が順次入力される。
これにより、スキャンクロックA1に同期して、スキャンイン信号が第１スキャンチェーン２６に順次シフトインされつつ、前段の圧縮回路３０から出力される、FF３２Aの出力信号および前段のスキャンセル回路３４Aの出力信号が次段のスキャンセル回路３４Aへ順次シフトされ、第１スキャンチェーン２６のFF３２Aおよび全てのスキャンセル回路３４Aにテストパターンがセットされる。
【００６２】
続いて、スキャンクロックA1,C1が停止された状態で、スキャンクロックB1のみが１サイクルだけ駆動される。
これにより、スキャンクロックB1に同期して、第１スキャンチェーン２６のFF３２Aおよびスキャンセル回路３４Aにセットされたテストパターンが、第２スキャンチェーン４０の各々対応するFF３２Bおよびスキャンセル回路３４Bにパラレルに、セットされる。つまり、第２スキャンチェーン４０に、第１スキャンチェーン２６と同じテストパターンがセットされる。
【００６３】
続いて、スキャンクロックA1,B1が停止された状態で、スキャンクロックC1のみが１サイクルだけ駆動される。
これにより、スキャンクロックC1に同期して、第２スキャンチェーン４０のFF３２Bおよびスキャンセル回路３４Bにセットされたテストパターンが、第３スキャンチェーン４２の各々対応するFF３２Cおよびスキャンセル回路３４Cにパラレルに、セットされる。つまり、第３スキャンチェーン４２に、第１スキャンチェーン２６と同じテストパターンがセットされる。
【００６４】
組合わせ回路は、第１、第２、第３スキャンチェーン２６、４０、４２にセットされたテストパターンに従って動作し、その出力信号、つまり、スキャンテストの結果が組合わせ回路から出力される。
【００６５】
続いて、キャプチャモードにより、組合わせ回路からの出力信号（スキャンテストの結果）を、第１、第２、第３スキャンチェーン２６、４０、４２に格納する。
【００６６】
この場合、スキャンイネーブル信号ENはディスエーブル状態のLとされる。
これにより、キャプチャモードとなり、各々のスキャンセル回路３４A、３４B、３４Cのマルチプレクサ３６からは、スキャンテストの結果が出力される。
【００６７】
続いて、スキャンクロックA1,B1,C1が１サイクルだけ駆動される。
これにより、スキャンテストの結果が、それぞれ、スキャンクロックA1,B1,C1に同期して、各々のスキャンセル回路３４A、３４B、３４CのＦＦ３８に保持される。
【００６８】
続いて、スキャンイネーブル信号ENはイネーブル状態のHとされ、シフトモードとなる。また、マスクイネーブル信号がディスエーブル状態のL、その反転信号がHとされる。
この場合、１段目のマスク回路２８からは、FF３２B、３２Cの出力信号が出力され、２段目〜最終段のマスク回路２８からは、各々対応するスキャンセル回路３４B、３４Cの出力信号がそのまま出力される。
また、１段目の圧縮回路３０からは、FF３２Aの出力信号およびマスク回路２８の２つの出力信号の排他的論理和の演算結果が出力され、２段目〜最終段の圧縮回路３０からは、各々対応するスキャンセル回路３４Aの出力信号および各々対応するマスク回路２８の２つの出力信号の排他的論理和の演算結果が出力される。
つまり、圧縮回路３０からは、第１、第２、第３スキャンチェーン２６、４０、４２に格納されたスキャンテストの結果を圧縮した圧縮結果が出力される。
【００６９】
続いて、スキャンクロックB1,C1が停止された状態で、スキャンクロックA1のみが１サイクルだけ駆動される。
これにより、シフトモードの１サイクル目に、スキャンクロックA1に同期して、圧縮回路３０の出力信号、つまり、第１、第２、第３スキャンチェーン２６、４０、４２に格納されたスキャンテストの圧縮結果が、各々対応するスキャンセル回路３４AのFF３８に保持される。
【００７０】
続いて、マスクイネーブル信号がイネーブル状態のH、その反転信号がLとされる。マスク回路２８、圧縮回路３０の動作は、第１スキャンチェーン２６にテストパターンをセットする場合と同様である。
【００７１】
続いて、スキャンクロックB1,C1が停止された状態で、スキャンクロックA1のみが第１スキャンチェーン２６のFF３２Aおよびスキャンセル回路３４AのFF３８の合計の段数分のサイクル数だけ駆動されるとともに、次のテストパターンのスキャンイン信号が順次入力される。
これにより、スキャンクロックA1に同期して、前段の圧縮回路３０から出力される、FF３２Aおよび前段のスキャンセル回路３４Aに格納されたスキャンテストの圧縮結果が、次段のスキャンセル回路３４Aへ順次シフトされることにより、第１スキャンチェーン２６に格納されたスキャンテストの圧縮結果が順次シフトアウトされ、スキャンアウト信号として順次出力される。
また、スキャンクロックA1に同期して、前段の圧縮回路３０から出力される、スキャンイン信号が第１スキャンチェーン２６に順次シフトインされ、第１スキャンチェーン２６に次のテストパターンがセットされてもよい。
【００７２】
スキャンテスト回路１０では、スキャンチェーンを、マスタブロック１４の第１スキャンチェーン２６およびスレーブブロック１６の第２、第３スキャンチェーン４０、４２に分割し、テストパターンをセットする場合に、第１スキャンチェーン２６にセットされたテストパターンを、第２、第３スキャンチェーン４０、４２にパラレルに順次シフトする。また、スキャンテストの結果および圧縮結果を出力する場合に、第１スキャンチェーン２６にスキャンテストの圧縮結果を格納して順次出力する。
【００７３】
そのため、スキャンテスト回路１０によれば、シフトモードの場合に、テストパターン長を短くすることができ、テストパターンのセットやスキャンテストの結果の出力のために必要となる時間を短縮することができる。
また、シフトモードの場合に、同時動作するスキャンセル回路の数を減らすことができるから、スキャンテスト時の消費電力総量および瞬間最大消費電力を低減し、IRドロップの発生を回避することができる。
また、シフトモードの場合に、スキャンセル回路間のデータの受け渡しタイミングのケアが必要となるのはマスタブロック１４のスキャンセル回路３４A間のみとなり、スレーブブロック１６のスキャンセル回路３４B、３４C間の受け渡しタイミングのケアが不要となるという利点もある。
【００７４】
なお、第１、第２、第３スキャンチェーンを構成するFF３２A、３２B,32Cは、スキャンセル回路としてもよい。また、第２スキャンチェーン４０のFFの段数は、第１スキャンチェーン２６のFFの段数以下であればよく、第３スキャンチェーン４２のFFの段数は、第１スキャンチェーン２６のFFの段数以下であればよい。
【００７５】
スレーブブロック１６は、シフトモードの場合に、第２スキャンチェーン４０として、２以上のスキャンチェーン４０を構成するものであってもよい。
この場合、２以上の第２スキャンチェーン４０は、シフトモードの場合に、それぞれ、スキャンクロックB1に同期して、第１スキャンチェーン２６の各々のスキャンセル回路３４Aにセットされたテストパターンを、各々対応するスキャンセル回路３４Bにパラレルにシフトして、全てのスキャンセル回路３４Bにテストパターンをセットする。
【００７６】
また、スレーブブロック１６は、シフトモードの場合に、ｎ段（ｎは、１以上の整数）の第３スキャンチェーン４２を構成するものであってもよい。
第３スキャンチェーンは、１以上の第３スキャンセル回路を備える。ｎ段目の第３スキャンチェーンの各々の第３スキャンセル回路は、ｎが１の場合、各々対応する第２スキャンセル回路から直列に接続され、ｎが２以上の場合、（ｎ−１）段目の第３スキャンチェーンの各々対応する第３スキャンセル回路から直列に接続される。
図２の例のように、ｎが１の場合、１段目の第３スキャンチェーン４２は、シフトモードの場合に、スキャンクロックB1に同期して、第２スキャンチェーン４０の各々のスキャンセル回路３４Bにセットされたテストパターンを、各々対応するスキャンセル回路３４Cにパラレルにシフトして、１段目の第３スキャンチェーン４２の全てのスキャンセル回路FF３４Cにテストパターンをセットする。
また、ｎが２以上の場合、ｎ段目の第３スキャンチェーン４２は、シフトモードの場合に、LSI１８の外部からスキャンクロック入力端子SCAN_CLK_C_ｎを介して入力されるスキャンクロックC1_ｎに同期して、（ｎ−１）段目の第３スキャンチェーン４２の各々のスキャンセル回路３４Cにセットされたテストパターンを、ｎ段目の第３スキャンチェーン４２の各々対応する第３スキャンセル回路３４Cにパラレルにシフトして、ｎ段目の第３スキャンチェーン４２の全ての第３スキャンセル回路FF３４Cにテストパターンをセットする。
【００７７】
本発明は、基本的に以上のようなものである。
以上、本発明について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【符号の説明】
【００７８】
１０、５０  スキャンテスト回路
１４  マスタブロック
１６  スレーブブロック
１８、６８  半導体集積回路（LSI）
３６、６４  マルチプレクサ
２６  第１スキャンチェーン
２８  マスク回路
３０  圧縮回路
３２A、３２B、３２C、３８、６０、６６  フリップフロップ（FF）
３４A、３４B、３４C、６２  スキャンセル回路
４０  第２スキャンチェーン
４２  第３スキャンチェーン
４４  インバータ
５４、５６、５８  スキャンチェーン
７０  出力圧縮回路
【図１】
2015215246.tif 000003
【図２】
2015215246.tif 000004
【図３】
2015215246.tif 000005