(57)【要約】【課題】面積オーバーヘッドが小さく、容易に所望のテストパタンを生成することができるスキャンテストポイント回路を提供する。【解決手段】本発明に係るスキャンテストポイント回路２０は、前段に接続された論理回路から出力されたユーザ信号又は自己の出力の反転信号が入力される始点スキャンフリップフロップＳＦＦと、スキャンチェーンにより値が設定され、始点スキャンフリップフロップＳＦＦに入力される信号を前記ユーザ信号あるいは反転信号の一方に設定するテスト用スキャンフリップフロップ２０と、を有する。【選択図】  図２
2008292368.tif 000002
【特許請求の範囲】
【請求項１】
前段に接続された論理回路から出力されたユーザ信号又は自己の出力の反転信号が入力される始点スキャンフリップフロップと、
スキャンチェーンにより値が設定され、前記始点スキャンフリップフロップに入力される信号を前記ユーザ信号あるいは前記反転信号の一方に設定するテスト用スキャンフリップフロップと、を有する
スキャンテストポイント回路。
【請求項２】
前記始点スキャンフリップフロップは、
第１信号及び第２信号が入力され、入力される制御信号に応じて前記第１信号あるいは前記第２信号を選択して出力する第１マルチプレクサと、
入力されるクロックのタイミングに合わせて前記マルチプレクサから出力される前記第１信号あるいは前記第２信号を保持し出力するフリップフロップと、を有する
請求項１記載のスキャンテストポイント回路。
【請求項３】
前記始点スキャンフリップフロップは、
前記第１信号として前記ユーザ信号が入力され、
前記第２信号として前記反転信号あるいは前記スキャンチェーンに入力されるスキャンイン信号が入力され、
前記スキャンテストポイント回路は、
前記スキャンチェーンに入力されるスキャンイネーブル信号が非活性状態で、前記テスト用スキャンフリップフロップの出力を、前記第１マルチプレクサの前記制御信号として前記始点スキャンフリップフロップに出力する制御信号選択回路を更に備えた
請求項２記載のスキャンテストポイント回路。
【請求項４】
一方に前記スキャンイン信号が入力され、他方に前記反転信号が入力され、制御信号として入力される前記スキャンイネーブル信号に応じて前記スキャンイン信号あるいは前記反転信号を選択し、前記第１マルチプレクサの前記第２信号として前記始点スキャンフリップフロップに出力する第２マルチプレクサを更に備えた
請求項３記載のスキャンテストポイント回路。
【請求項５】
前記制御信号選択回路は、一方に前記テスト用スキャンフリップフロップの出力が入力され、他方に前記スキャンイネーブル信号が入力され、前記第１マルチプレクサの前記制御信号として前記始点スキャンフリップフロップに出力するＯＲ回路である
請求項３又は４記載のスキャンテストポイント回路。
【請求項６】
前記テスト用スキャンフリップフロップは、
入力信号を選択する選択回路と、前記選択回路によって選択された前記入力信号を保持し出力するフリップフロップと、を有し、
前記スキャンイネーブル信号が非活性状態において、前記テスト用スキャンフリップフロップの有する前記フリップフロップの入力がＬレベルに設定される
請求項５記載のスキャンテストポイント回路。
【請求項７】
前記始点スキャンフリップフロップは、
前記第１信号として前記ユーザ信号あるいは前記反転信号を入力し、
前記第１マルチプレクサの前記制御信号として前記スキャンチェーンに入力されるスキャンイネーブル信号を入力する
請求項２記載のスキャンテストポイント回路。
【請求項８】
一方に前記反転信号が入力され、他方に前記ユーザ信号が入力され、制御信号として入力される前記テスト用スキャンフリップフロップの出力に応じて、前記反転信号あるいは前記ユーザ信号を選択し、前記第１マルチプレクサの前記第１信号として前記始点スキャンフリップフロップに出力する第３マルチプレクサを更に備えた
請求項７記載のスキャンテストポイント回路。
【請求項９】
前記テスト用スキャンフリップフロップは、前記スキャンイネーブル信号が非活性状態において、入力されるクロックの信号レベルが遷移するタイミングで、前記第３マルチプレクサが前記ユーザ信号を選択するよう前記第３マルチプレクサに前記制御信号を出力する
請求項８記載のスキャンテストポイント回路。
【請求項１０】
請求項１乃至９のうちいずれか１項に記載のスキャンテストポイント回路を備えた集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャン設計においてテスト対象パスに入力する信号を容易に設定するスキャンテストポイント回路、及びこれを備えた集積回路に関する。
【背景技術】
【０００２】
従来より、集積回路内部の論理回路の動作テストを行うために、集積回路のフリップフロップをスキャンフリップフロップに置き換え、複数のスキャンフリップフロップをシリアルに接続してスキャンチェーンを構成し、スキャンチェーンをシフトレジスタのように動作させて動作テストに必要なフリップフロップの設定を行うスキャン設計が知られている。動作テストを行いたいテスト対象パスの前後にスキャンチェーンを構成するスキャンフリップフロップを接続し、テスト対象パスの始点に接続された始点スキャンフリップフロップからテストパタンを入力して、テスト対象パスＴＰを伝播したテスト結果を、テスト対象パスの終点に接続された終点スキャンフリップフロップにキャプチャする。その後、スキャンチェーンをシフトレジスタのように動作させて出力をスキャンすることにより、テスト対象パスの動作を観測することができる。このようなスキャン設計は、例えば、集積回路の縮退故障検出や遅延故障検出に用いられている。
【０００３】
以下に遅延故障検出の手法の一つであるブロードサイド（Ｂｒｏａｄ−Ｓｉｄｅ）方式のディレイテストについて説明を行う。ブロードサイド方式のディレイテストでは、はじめにスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態とし、シフトレジスタ状に接続されたスキャンフリップフロップをシフトサイクルさせ、テストパタンをスキャンイン信号Ｓｃａｎ  ｉｎによって入力する（スキャンイン）。これにより、各スキャンフリップフロップが初期値に設定される。
【０００４】
次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを非活性状態とし、スキャンチェーンのシフトサイクルを解除した状態で、高速クロックパルスＣＬＫ１、ＣＬＫ２を印加する。はじめの高速クロックパルスＣＬＫ１の立ち上がりエッジから２度目の高速クロックパルスＣＬＫ２の立ち上がりエッジまでの時間は実動作と同じに時間に設定する。はじめの高速クロックパルスＣＬＫ１の立ち上がりにおいて、始点スキャンフリップフロップの値を反転させる。次に、２度目の高速クロックパルスＣＬＫ２の立ち上がりにおいて、この反転信号を始点スキャンフリップフロップからテスト対象パスに出力し、テスト対象パスを伝播した結果を終点スキャンフリップフロップでキャプチャする。このキャプチャされた信号をＳｃａｎ  Ｅｎａｂｌｅを活性状態とすることによりスキャンシフトさせて出力する（スキャンアウト）。このスキャンアウトされたテスト結果と、予測されるテスト対象パスの遷移後の予測結果とを比較する。これにより、実動作速度においてテスト対象パスが正常に動作するか否かをテストすることができる。
【０００５】
このように、ブロードサイド方式のディレイテストでは、高速クロックパルスＣＬＫ１の印加時に始点スキャンフリップフロップの値を反転させることが必要である。しかしながら、始点スキャンフリップフロップの前に接続される論理回路が複雑になると、始点スキャンフリップフロップの値を反転させるためには、前方に接続された複数の論理回路を考慮しなければならず、テストパタンの生成に処理時間を要し、さらに、テストパタン数が増大するという問題を有する。場所によっては論理回路の組み合わせにより始点スキャンフリップフロップの値を反転できない箇所では、所望のテストパタンを生成できず遅延故障検出を行うことができない。
【０００６】
スキャンチェーンを用いた動作テストでは、テスト対象パスＴＰの任意の位置に挿入され、任意の位置の値を１又は０に設定することができるスキャンテストポイント回路が用いられる場合がある。しかしながら、従来のスキャンテストポイント回路では、テスト対象パスＴＰの任意の位置の値を１又は０のどちらか一方に設定することしかできない。そのため、遅延故障検出において任意にテスト対象パスＴＰの始点スキャンフリップフロップの値を反転させることができない。また、任意の位置を任意の値に設定することができるスキャンテストポイント回路が用いられる場合もあるが、この場合のスキャンテストポイント回路は回路規模が大きい。
【０００７】
特許文献１には、スキャンフリップフロップの出力を反転させて入力することができるスキャンフリップフロップが記載されている。図６は、特許文献１に示されたスキャンフリップフロップを示す構成図である。このスキャンフリップフロップ６０は、第１セレクタ６１、第２セレクタ６２、フリップフロップ６３、及びラッチ６４を備えている。第１セレクタ６１は、フリップフロップ６３の出力の反転信号ＱＣあるいは前段に接続された論理回路から入力されるデータＤを選択して出力する。第２セレクタ６２は、第１セレクタ６１の出力あるいはスキャンイン信号ＳＩを選択してフリップフロップ６３に出力する。ラッチ６４は、モード信号ＳＭ、クロックＴを入力し、クロックＴのタイミングに合わせて第１セレクタ６１の選択を制御する制御信号を出力する。
【０００８】
このように構成されたスキャンフリップフロップでは、モード信号ＳＭが活性状態においてフリップフロップ６４に１を設定し、次に非活性状態にして第１セレクタ６１の出力および第２セレクタ６２の出力を反転信号ＱＣに設定し、フリップフロップ６３に反転信号ＱＣを入力することができる。
【特許文献１】特開２００１−４７１０号公報、図６
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１に記載された回路では、モード信号ＳＭを活性状態から非活性状態に変化させた後の、最初のクロックＴの入力においては、必ずフリップフロップ６３に反転信号ＱＣが入力されることとなる。そのため、スキャンテストのキャプチャ動作において、フリップフロップ６３に必要に応じて前段の論理回路から入力されるデータ信号Ｄを入力することができない。
【００１０】
もし、前段に接続された論理回路から入力されるデータ信号を選択できるように、前記の任意の値に設定することができるスキャンテストポイント回路を用いようとすると、回路規模が大きくなり、面積オーバーヘッドが大きくなるという問題点を有する。
【課題を解決するための手段】
【００１１】
本発明に係るスキャンテストポイント回路は、前段に接続された論理回路から出力されたユーザ信号又は自己の出力の反転信号が入力される始点スキャンフリップフロップと、
スキャンチェーンにより値が設定され、前記始点スキャンフリップフロップに入力される信号を前記ユーザ信号あるいは前記反転信号の一方に設定するテスト用スキャンフリップフロップと、を有するものである。
【００１２】
このように、スキャンチェーンにより値の設定が可能なテスト用スキャンフリップフロップを用いて、スキャンフリップフロップに入力される信号を、ユーザ信号あるいは反転信号に設定することにより、面積オーバーヘッドが小さいまま、スキャンフリップフロップに入力される信号を任意に反転信号あるいはユーザ信号の一方に容易に設定することができる。
【発明の効果】
【００１３】
本発明のスキャンテストポイント回路によれば、面積オーバーヘッドが小さいまま、スキャンフリップフロップに入力される信号を反転信号あるいはユーザ信号の一方に容易に設定することができる。
【発明を実施するための最良の形態】
【００１４】
以下、添付した図面を参照して本発明の実施の形態について説明する。
【００１５】
図１は、本発明に係るスキャンテストポイント回路２０が挿入される集積回路１０の一構成例を示すブロック図である。集積回路１０は、シリアルに複数のスキャンフリップフロップ１１Ａ〜１１Ｇが接続されたスキャンチェーン１２と、スキャンチェーン１２に接続された論理回路１３とに分けることができる。スキャンチェーン１２は、スキャンフリップフロップ１１Ａ〜１１Ｇが順に接続され、入力側のスキャンフリップフロップ１１Ａにはスキャンテストのテストパタンであるスキャンイン信号Ｓｃａｎ  ｉｎが入力され、出力側のスキャンフリップフロップ１１Ｇからスキャンテストの結果データであるスキャンアウト信号Ｓｃａｎ  ｏｕｔが出力される。なお、スキャンフリップフロップ１１Ａ〜１１Ｇには同期したクロック信号Ｃｌｏｃｋが入力されている。
【００１６】
論理回路１３は、図１の太線で示すように、テストを行うパスであるテスト対象パスＴＰが設定されている。テスト対象パスＴＰは、テストパタン自動生成プログラム、又はユーザによって設定されるパスであり、実行するテスト毎に任意のパスに設定することができる。テスト対象パスＴＰは、入力側にスキャンフリップフロップ１１Ｄが接続され、出力側にスキャンフリップフリップ１１Ｆが接続されている。すなわち、テスト対象パスＴＰは、前後がスキャンフリップフロップ１１に接続されている。以下では、テスト対象パスＴＰの始点に接続されたスキャンフリップフロップ１１Ｄを始点スキャンフリップフロップＳＦＦと称し、テスト対象パスＴＰの終点に接続されたスキャンフリップフロップ１１Ｆを終点スキャンフリップフロップＥＦＦと称す。例えばテスト対象パスＴＰは、図１に示すように、ＮＡＮＤ回路１４、１６、及びＮＯＲ回路１５、１７を介して終点スキャンフリップフロップＥＦＦに接続されているものとする。本実施形態に係るスキャンテストポイント回路（図示せず）は、このように構成された集積回路１０において、始点スキャンフリップフロップＳＦＦに設置される。
【００１７】
［第１の実施形態］
図２は、本発明の第１の実施形態に係るスキャンテストポイント回路２０の構成を示す図である。スキャンテストポイント回路２０は、始点スキャンフリップフロップＳＦＦ、テスト用スキャンフリップフロップ２１、マルチプレクサ２２、及びインバータ２３を備えて構成されている。スキャンテストポイント回路２０は、テスト対象パスＴＰに接続された始点スキャンフリップフロップＳＦＦに設置される。
【００１８】
テスト用スキャンフリップフロップ２１は、スキャンフリップフロップ１１（始点スキャンフリップフロップＳＦＦ）と略同一構成を有するスキャンフリップフロップによって構成されている。テスト用スキャンフリップフロップ２１及び始点スキャンフリップフロップＳＦＦは、マルチプレクサ２５及びフリップフロップ２６を備えたＭＵＸ（マルチプレクサ）式のフリップフロップにより構成されている。マルチプレクサ２５は、一方にデータ信号Ｄａｔａ  ｉｎを入力し、他方にスキャンイン信号Ｓｃａｎ  ｉｎを入力し、制御信号としてスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを入力する。マルチプレクサ２５は、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅが非活性状態において一方から入力されたデータ信号Ｄａｔａ  ｉｎをフリップフロップ２６に出力し、活性状態において他方から入力されたスキャンイン信号Ｓｃａｎ  ｉｎをフリップフロップ２６に出力するよう構成されている。フリップフロップ２６は、クロックＣｌｏｃｋの立ち上がりにおいて、マルチプレクサ２５の出力を取り込み、取り込んだ信号レベルに応じた信号をデータアウト信号Ｄａｔａ  ｏｕｔとして出力するよう構成されている。
【００１９】
すなわち、テスト用スキャンフリップフロップ２１では、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅが非活性状態において、データ信号Ｄａｔａ  ｉｎを取り込んで、マルチプレクサ２２に出力するよう構成されている。テスト用スキャンフリップフロップ２１には、スキャンチェーン１２を構成するスキャンフリップフロップ１１（図１）に入力されるクロックＣｌｏｃｋ及びスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅと同じ信号が入力されている。
【００２０】
マルチプレクサ２２は、一方の入力として始点スキャンフリップフロップＳＦＦの出力がインバータ２３によって反転された反転信号を入力し、他方の入力として外部からのユーザ信号を入力し、制御信号としてテスト用スキャンフリップフロップ２１の出力を入力する。なお、実施形態の説明では、図１に示す前段の論理回路１９から後段のスキャンチェーン１２に入力される信号（ＮＯＲ回路１９、１７の出力）をユーザ信号と呼んでいる。マルチプレクサ２２は、テスト用スキャンフリップフロップ２１の出力がＨレベルにおいて反転信号を始点スキャンフリップフロップＳＦＦに出力し、Ｌレベルにおいてユーザ信号を始点スキャンフリップフロップＳＦＦに出力するよう構成されている。すなわち、マルチプレクサ２２は、テスト用スキャンフリップフロップ２１の出力に応じて、前方の論理回路１３から入力されたユーザ信号か始点スキャンフリップフロップＳＦＦの出力の反転信号を始点スキャンフリップフロップＳＦＦに出力するよう構成されている。
【００２１】
次に、このように構成されたスキャンテストポイント回路２０の動作について説明する。図３Ａは、始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を挿入する前のタイミングチャートである。ブロードサイド方式のディレイテストにおいては、はじめの高速クロックパルスＣＬＫ１印加時に始点スキャンフリップフロップＳＦＦの値を反転する必要がある。高速クロックパルスＣＬＫ１印加時では、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅは非活性状態となり、始点スキャンフリップフロップＳＦＦに入力される信号は、前段に接続されたＮＯＲ回路１９（図１）の出力であるユーザ信号となる。
【００２２】
図３Ａにおいて、はじめに、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態とし、各スキャンフリップフロップ１１に初期値を設定する。スキャンインにおいて、
スキャンフリップフロップ１１Ａ、１１ＢをＬレベルに設定する。これにより、ＮＯＲ回路１９の出力は、Ｈレベルに設定される。同時に、スキャンインにおいて、始点スキャンフリップフロップＳＦＦをＬレベルに設定する。次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを非活性状態として、高速クロックパルスＣＬＫ１、ＣＬＫ２を印加する。はじめの高速クロックパルスＣＬＫ１印加時に、スキャンインによってスキャンフリップフロップ１１Ａ、１１Ｂに設定されたＨレベルのユーザ信号が始点スキャンフリップフロップに入力される。これにより、高速クロックパルスＣＬＫ１の立ち上がりで、始点スキャンフリップフロップＳＦＦは、ＬレベルからＨレベルに反転される。次に、２度目の高速クロックパルスＣＬＫ２により、始点スキャンフリップフロップＳＦＦのＨレベルの信号が、テスト対象パスＴＰを伝播して終点スキャンフリップフロップＥＦＦにキャプチャされる。このテスト結果は、再びスキャンシフトすることにより出力される（スキャンアウト）。
【００２３】
このように、始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を設置する前では、始点スキャンフリップフロップＳＦＦを反転させるためには、スキャンインにおいてＮＯＲ回路１９の動作を考慮した上で前段に接続された論理回路であるスキャンフリップフロップ１１Ａ、１１Ｂの値を設定しなければならない。
【００２４】
図３Ｂは、始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を設置した場合のタイミングチャートである。なお、本実施形態において、始点スキャンフリップフロップＳＦＦの値を反転するか否かは、スキャンインにおいてテスト用スキャンフリップフロップ２１の値をＨレベル又はＬレベルに設定することにより選択可能である。なお、図３Ｂは、始点スキャンフリップフロップＳＦＦの値を反転させる場合のスキャンテストポイント回路２０の動作を示している。はじめに、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態として、各スキャンフリップフロップ１１に初期値を設定する（スキャンイン）。スキャンインによって、テスト用スキャンフリップフロップ２１にＨレベルを設定し、始点スキャンフリップフロップＳＦＦ（１１Ｄ）にＬレベルを設定する。
【００２５】
次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを非活性状態とする。高速クロックパルスＣＬＫ１の立ち上がりにおいて、スキャンインによって設定されたテスト用スキャンフリップフロップ２１のＨレベルは、マルチプレクサ２２の出力を反転信号に設定する。この反転信号は、高速クロックパルスＣＬＫ１の立ち上がりにおいて、始点スキャンフリップフロップＳＦＦに入力される。これにより、高速クロックパルスＣＬＫ１印加時に、始点スキャンフリップフロップＳＦＦの値が反転する。また、高速クロックパルスＣＬＫ１の立ち上がりでテスト用スキャンフリップフロップのデータ信号Ｄａｔａ  ｉｎをＬレベルとしておく。これにより、テスト用スキャンフリップフロップ２１にはＬレベルが入力され、高速クロックパルスＣＬＫ１の印加後にはマルチプレクサ２２がユーザ信号を出力する状態になる。このように、始点スキャンフリップフロップＳＦＦの値を反転させる必要がある高速クロックパルスＣＬＫ１の印加時以外には、クロックの入力の度に始点スキャンフリップフロップ２１の値が反転しない状態に容易に設定できるよう、テスト用スキャンフリップフロップのデータ信号Ｄａｔａ  ｉｎはＬレベルに固定しておくことが好ましい。
【００２６】
次に、高速クロックパルスＣＬＫ２の立ち上がりにおいて、高速クロックパルスＣＬＫ１時に入力された始点スキャンフリップフロップＳＦＦのＨレベルが、テスト対象パスＴＰを伝播して終点スキャンフリップフロップＥＦＦにキャプチャされる。なお、図４に示すように、始点スキャンフリップフロップＳＦＦから終点スキャンフリップフロップＥＦＦの間に介された論理回路（ＮＡＮＤ回路１４、１６、ＮＯＲ回路１５、１７）には、他方の入力に、それぞれテスト対象パスＴＰを活性化するための条件を満たす信号が入力されている。この結果、高速クロックＣＬＫ１印加時に始点スキャンフリップフロップＳＦＦに入力されたＨレベルが、テスト対象パスＴＰを伝播して終点スキャンフリップフロップＥＦＦにキャプチャされる。すなわち、図４に示すように、高速クロックパルスＣＬＫ２の立ち上がりにおいて、始点スキャンフリップフロップＳＦＦの出力はＬからＨ、ＮＡＮＤ回路１４の出力はＨからＬ、ＮＯＲ回路１５の出力はＬからＨ、ＮＡＮＤ回路１６の出力はＨからＬ、そしてＮＯＲ回路１７の出力がＬからＨとなって、終点スキャンフリップフロップＥＦＦにＨレベルがキャプチャされる。
【００２７】
次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態とし、シフトサイクルを再開する（スキャンアウト）。これにより、テスト対象パスＴＰを伝播した出力信号がスキャンアウト信号Ｓｃａｎ  ｏｕｔから出力される。この出力信号を、遅延故障がないとした場合の期待値と比較することにより遅延故障を検出することができる。すなわち、テスト対象パスＴＰに遅延故障がない場合には、出力信号は２度目の高速クロックパルスＣＬＫ２によって変化した値となるが、遅延故障によって信号の伝播が遅れた場合では出力信号が変化する前の値となる。高速クロックパルスＣＬＫ１、ＣＬＫ２の間隔は、実動作速度に設定されているため、テスト対象パスＴＰが実動作速度において所望の動作を行うことができるか否か判定することができる。
【００２８】
また、始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を設置した場合であっても始点スキャンフリップフロップＳＦＦの値を反転しないよう制御することもできる。図１に示すように、始点スキャンフリップフロップＳＦＦ（１１Ｄ）が他の論理回路１３（ＮＯＲ回路１９）の終点となったり、別のパスを活性化させるための値を生成する場合等にあっては、始点スキャンフリップフロップＳＦＦの値を反転させることがテスト対象パスの弊害となる場合がある。このような場合には、スキャンインによって、テスト用スキャンフリップフロップ２１にＬレベルを設定すればよい。これにより、高速クロックパルスＣＬＫ１印加時に始点スキャンフリップフロップＳＦＦには、ユーザ信号が入力されることとなる。なお、始点スキャンフリップフロップＳＦＦの値を反転させない場合であっても、始点スキャンフリップフロップＳＦＦの値が無闇に反転されないようデータ信号Ｄａｔａ  ｉｎはＬレベルに固定されていることが好ましい。
【００２９】
このように、本実施形態によれば、テスト用スキャンフリップフロップ２１の出力信号によって制御され、ユーザ信号又は始点スキャンフリップフロップＳＦＦの出力信号を反転した反転信号を出力するマルチプレクサ２２を、始点スキャンフリップフロップＳＦＦの直前に挿入することにより、始点スキャンフリップフロップＳＦＦに入力される信号を任意で反転することができる。
【００３０】
また、始点スキャンフリップフロップＳＦＦの値を反転させることがテスト対象パスの弊害となる場合にあっても、始点スキャンフリップフロップＳＦＦの入力を任意の信号に選択可能であるため、テスト対象パスＴＰに応じた異なるパタン生成を容易に行うことができる。これにより、テストパタン自動作成プログラムの処理量を削減すると共に、故障検出率を上げることができる。
【００３１】
また、本発明によるスキャンテストポイント回路２０は、１つのテスト用スキャンフリップフロップ２１と、１つのマルチプレクサ２２によって構成されるため、回路規模が小さく、スキャンテストポイント回路２０を挿入したことによる面積オーバーヘッドが小さい。
【００３２】
［第２の実施形態］
次に、本発明の第２の実施形態に係る集積回路について説明を行う。なお、第２の実施形態に係る集積回路全体の構成については、図１と略同一構成であるためその説明を省略する。図５は、本発明の第２の実施形態に係る集積回路が有するスキャンテストポイント回路４０の構成を示す図である。スキャンテストポイント回路４０は、第１の実施形態と同様に、始点スキャンフリップフロップＳＦＦ、テスト用スキャンフリップフロップ２１、インバータ２３を備えて構成されている。
【００３３】
スキャンテストポイント回路４０は、更に、ＯＲ回路４１及びマルチプレクサ４２を備えている。ＯＲ回路４１は、一方にテスト用スキャンフリップフロップ２１の出力を入力し、他方にスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを入力し、論理和をとって始点スキャンフリップフロップＳＦＦのスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅに出力するよう構成されている。マルチプレクサ４２は、一方に始点スキャンフリップフロップＳＦＦの出力の反転信号を入力し、他方にスキャンイン信号Ｓｃａｎ  ｉｎを入力し、制御信号としてスキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを入力する。
【００３４】
マルチプレクサ４２は、スキャンイネーブル信号Ｓｃａｎ  ＥｎａｂｌｅがＨレベルのときにスキャンイン信号Ｓｃａｎ  ｉｎを始点スキャンフリップフロップＳＦＦのスキャンイン信号Ｓｃａｎ  ｉｎに出力し、Ｌレベルのときに始点スキャンフリップフロップＳＦＦの出力の反転信号を始点スキャンフリップフロップＳＦＦのスキャンイン信号Ｓｃａｎ  ｉｎに出力する。また、始点スキャンフリップフロップＳＦＦのデータ信号Ｄａｔａ  ｉｎにはユーザ信号が入力されている。
【００３５】
次に、このように構成されたスキャンテストポイント回路４０の動作について、第１の実施形態の説明で用いた図３Ｂに示すタイミングチャートを用いて説明する。始点スキャンフリップフロップＳＦＦの値を反転させるか否かは、テスト用スキャンフリップフロップ２１にスキャンインで設定する値を、１又は０にすることにより選択可能である。以下には、スキャンフリップフロップＳＦＦの値を反転させる場合について説明する。はじめに、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態とし、各スキャンフリップフロップ１１を初期値に設定する（スキャンイン）。
【００３６】
スキャンインにおいて、テスト用スキャンフリップフロップ２１にＨレベルを設定する。スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅが活性状態では、マルチプレクサ４２は、スキャンイン信号Ｓｃａｎ  ｉｎを始点スキャンフリップフロップＳＦＦに出力する。これにより、始点スキャンフリップフロップＳＦＦには、スキャンイン信号Ｓｃａｎ  ｉｎが入力され、スキャンイン動作が可能となる。
【００３７】
次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを非活性状態に設定する。この状態で高速クロックパルスＣＫＬ１、ＣＬＫ２を印加する。はじめの高速クロックパルスＣＬＫ１印加前の状態では、スキャンインでテスト用スキャンフリップフロップ２１に設定されたＨレベルがＯＲ回路４１に入力される。ＯＲ回路４１は、始点スキャンフリップフロップＳＦＦのスキャンイネーブル信号Ｓｃａｎ  ＥｎａｂｌｅをＨレベルに設定する。マルチプレクサ４２は、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅが非活性状態であるため始点スキャンフリップフロップＳＦＦの反転信号を出力している。これにより、高速クロックパルスＣＬＫ１印加時に、始点スキャンフリップフロップＳＦＦには、スキャンイン信号Ｓｃａｎ  ｉｎとしてマルチプレクサ４２から反転信号が入力される。すなわち、高速クロックパルスＣＬＫ１印加時に、始点スキャンフリップフロップＳＦＦの値が反転される。
【００３８】
高速クロックパルスＣＬＫ２の立ち上がりにおいて、高速クロックパルスＣＬＫ１印加時に始点スキャンフリップフロップＳＦＦに入力された反転信号は、テスト対象パスＴＰを伝播して、終点スキャンフリップフロップＥＦＦにキャプチャされる。なお、テスト対象パスＴＰは、図１及び図４に示す第１の実施形態と同一の回路であるものとする。
【００３９】
次に、スキャンイネーブル信号Ｓｃａｎ  Ｅｎａｂｌｅを活性状態としてシフトサイクルを再開し、テスト結果をスキャンアウト信号Ｓｃａｎ  ｏｕｔとして出力する。この出力信号を期待値と比較することにより、テスト対象パスの遅延故障検出を行う。
【００４０】
なお、始点スキャンフリップフロップＳＦＦの値を反転させることがテスト対象パスの弊害となる場合にあっては、スキャンインによってテスト用スキャンフリップフロップ２１にＬレベルを設定すればよい。これにより、高速クロックパルスＣＬＫ１印加時に、ＯＲ回路４１の出力がＬレベルとなり、始点スキャンフリップフロップＳＦＦのスキャンイネーブル信号Ｓｃａｎ  ＥｎａｂｌｅがＬレベルとなる。これにより、高速クロックパルスＣＬＫ１印加時に、始点スキャンフリップフロップＳＦＦには、データ信号Ｄａｔａ  ｉｎとしてユーザ信号が入力されることとなる。第２の実施形態においても、高速クロックパルスＣＬＫ１印加時以外に、始点スキャンフリップフロップＳＦＦの値が不要に反転されないよう、テスト用スキャンフリップフロップに入力されるデータ信号Ｄａｔａ  ｉｎはＬレベルに設定されていることが好ましい。
【００４１】
このように、始点スキャンフリップフロップＳＦＦの値を反転させたい場合には、スキャンインによってテスト用スキャンフリップフロップＳＦＦにＨレベルを与える。一方、始点スキャンフリップフロップＳＦＦの値を反転させることがテスト対象パスの弊害となる場合等、ユーザ信号を始点スキャンフリップフロップＳＦＦに入力したい場合には、スキャンインによってテスト用スキャンフリップフロップ２１にＬレベルを設定する。このように、スキャンインによってテスト用スキャンフリップフロップ２１の値を設定することにより、任意に始点スキャンフリップフロップＳＦＦの値を反転することができる。これにより、始点スキャンフリップフロップＳＦＦの値を反転させるか否かをテストパタン生成時に決定することができ、パタン生成を容易にすることができる。この結果、自動テストパタン生成の処理時間、及び生成するパタン数を削減することが可能となる。
【００４２】
また、第２の実施形態では、始点スキャンフリップフロップＳＦＦのデータ信号Ｄａｔａ  ｉｎに入力されるユーザ信号が論理素子を介さずに直接入力されているため、ユーザ信号においてスキャンテストポイント回路４０を挿入したことによる遅延が生じない。
【００４３】
なお、本発明は、上述した実施形態に限定されるものではない。始点スキャンフリップフロップの出力を反転した反転信号を、始点スキャンフリップフロップに出力するか否かを選択できるよう構成すれば、その他種種の回路構成によって本発明を実施し、その効果を奏することができる。
【図面の簡単な説明】
【００４４】
【図１】第１の実施の形態に係るスキャンテストポイント回路２０が挿入される集積回路１０の一構成例を示すブロック図である。
【図２】第１の実施形態に係るスキャンテストポイント回路２０の構成を示す図である。
【図３Ａ】始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を設置する前のタイミングチャートである。
【図３Ｂ】始点スキャンフリップフロップＳＦＦ（１１Ｄ）にスキャンテストポイント回路２０を設置し、始点スキャンフリップフロップＳＦＦの値を反転させる場合のタイミングチャートである。
【図４】テスト対象パスＴＰの状態遷移を示す図である。
【図５】本発明の第２の実施形態に係る集積回路が有するスキャンテストポイント回路４０の構成を示す図である。
【図６】従来のスキャンテストポイント回路６０の構成を示す図である。
【符号の説明】
【００４５】
１０...集積回路      １１...スキャンフリップフロップ      １２...スキャンチェーン
１３...論理回路      １４，１６...ＮＡＮＤ回路            １５，１７...ＮＯＲ回路
１８...インバータ    ２０，４０...スキャンテストポイント回路
ＳＦＦ...始点スキャンフリップフロップ      ＥＦＦ...終点スキャンフリップフロップ
ＴＰ...テスト対象パス
【図１】
2008292368.tif 000003
【図２】
2008292368.tif 000004
【図３Ａ】
2008292368.tif 000005
【図３Ｂ】
2008292368.tif 000006
【図４】
2008292368.tif 000007
【図５】
2008292368.tif 000008
【図６】
2008292368.tif 000009