(57)【要約】 【課題】セキュリティに配慮した上で、簡易かつ迅速にフリップフロップの故障検出を行うことができる。【解決手段】テスト回路は、クロック信号に同期して動作する複数のフリップフロップと、複数のフリップフロップの出力信号を予め定めた論理に設定することを指示する第１設定信号と、前記複数のフリップフロップの出力信号の故障検出を指示する第２設定信号とを生成するとともに、前記第１設定信号の指示解除のタイミングから前記クロック信号の偶数周期分遅れて前記第２設定信号の指示解除のタイミングを設定するタイミング調整回路と、第１設定信号の指示が解除されてから、前記第２設定信号の指示が解除されるまでの間に、複数のフリップフロップの出力信号の中に論理が異なる出力信号が存在する場合に、故障検出信号を出力する故障検出回路と、を備える。【選択図】図１
2020041821.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に同期して動作する複数のフリップフロップと、
前記複数のフリップフロップの出力信号を予め定めた論理に設定することを指示する第１設定信号と、前記複数のフリップフロップの出力信号の故障検出を指示する第２設定信号とを生成するとともに、前記第１設定信号の指示解除のタイミングから前記クロック信号の偶数周期分遅れて前記第２設定信号の指示解除のタイミングを設定するタイミング調整回路と、
前記第１設定信号の指示が解除されてから、前記第２設定信号の指示が解除されるまでの間に、前記複数のフリップフロップの出力信号の中に論理が異なる出力信号が存在する場合に、故障検出信号を出力する故障検出回路と、を備える、テスト回路。
【請求項２】
前記故障検出回路は、前記第１設定信号の指示が開始されてから、前記第２設定信号の指示が解除されるまでの間に、前記複数のフリップフロップの少なくとも一つの出力信号が第１論理に固着する不良と、第２論理に固着する不良とを別々のタイミングで検出し、少なくとも一方の不良が検出されると、前記故障検出信号を出力する、請求項１に記載のテスト回路。
【請求項３】
前記第１設定信号の指示が解除されてから、前記第２設定信号の指示が解除されるまでの間に、前記クロック信号に同期させて、前記複数のフリップフロップのそれぞれの出力信号を反転させて対応するフリップフロップに入力させるトグル回路を備える、請求項１又は２に記載のテスト回路。
【請求項４】
前記複数のフリップフロップの少なくとも一つは、前記第１設定信号が入力される設定信号端子を有し、
前記設定信号端子を有するフリップフロップは、前記設定信号端子に前記第１設定信号が入力されている間は前記予め定めた論理の出力信号を出力し、前記設定信号端子に前記第１設定信号が入力されなくなり、かつ前記第２設定信号の指示が解除されるまでの間は、前記トグル回路に従って前記クロック信号に同期させて論理反転動作を行う、請求項３に記載のテスト回路。
【請求項５】
前記複数のフリップフロップの少なくとも一つの信号入力端子に接続され、前記第１設定信号の指示が開始されたときに前記予め定めた論理の出力信号が対応するフリップフロップから出力されるように、対応する信号入力端子に入力される信号を生成する設定信号生成回路を備え、
前記設定信号生成回路が前記信号入力端子に接続されたフリップフロップは、前記設定信号生成回路に前記第１設定信号が入力されている間は前記予め定めた論理の出力信号を出力し、前記設定信号生成回路に前記第１設定信号が入力されなくなり、かつ前記第２設定信号の指示が解除されるまでの間は、前記トグル回路に従って前記クロック信号に同期させて論理反転動作を行う、請求項３に記載のテスト回路。
【請求項６】
前記故障検出回路は、前記複数のフリップフロップの出力信号同士の排他的論理和に基づいて前記故障検出信号を出力する、請求項１乃至５のいずれか一項に記載のテスト回路。
【請求項７】
前記タイミング調整回路は、初期化信号を前記クロック信号にて同期化した前記第１設定信号を生成するとともに、前記第１設定信号の指示が開始されるタイミングに合わせて指示が開始され、かつ前記第１設定信号の指示が解除されるタイミングから、前記クロック信号の偶数周期分遅れて指示が解除される前記第２設定信号を生成する、請求項１乃至６のいずれか一項に記載のテスト回路。
【請求項８】
クロック信号に同期して動作する複数のフリップフロップの出力信号を予め定めた論理に設定することを指示する第１設定信号と、前記複数のフリップフロップの出力信号の故障検出を指示する第２設定信号とを生成するとともに、前記第１設定信号の指示解除のタイミングから前記クロック信号の偶数周期分遅れて前記第２設定信号の指示解除のタイミングを設定し、
前記第１設定信号の指示が解除されてから、前記第２設定信号の指示が解除されるまでの間に、前記複数のフリップフロップの出力信号の中に論理が異なる出力信号が存在する場合に、故障検出信号を出力する、テスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、テスト回路及びテスト方法に関する。
【背景技術】
【０００２】
デジタル信号を扱う半導体チップ内には多数のフリップフロップが設けられている。例えば、データの保持に用いられるレジスタ回路は、複数のフリップフロップで構成されている。フリップフロップは、クロック信号ＣＬＫに同期して動作するが、フリップフロップの出力信号の論理が固着する不良が発生することがある。また、フリップフロップが特定の論理の信号を出力するときだけ、論理が固着する不良が発生することもある。
【０００３】
この種の不良を検出するには、各フリップフロップに入力するデータの論理を変えて、各フリップフロップの出力を検出する処理を全フリップフロップに対して行わなければならず、故障検出に要する時間が長くなるという問題がある。
【０００４】
あるいは、レジスタ回路内の各フリップフロップに書き込んだデータを読み出して、所望のデータが正しく書き込まれているか否かを検査する手法もあるが、レジスタ回路にすでに書き込んだデータを読み出すことがセキュリティ上好ましくない場合もある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特公平７−９７３３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の一態様は、セキュリティに配慮した上で、簡易かつ迅速にフリップフロップの故障検出を行うことが可能なテスト回路及びテスト方法を提供するものである。
【課題を解決するための手段】
【０００７】
本実施形態によれば、クロック信号に同期して動作する複数のフリップフロップと、
前記複数のフリップフロップの出力信号を予め定めた論理に設定することを指示する第１設定信号と、前記複数のフリップフロップの出力信号の故障検出を指示する第２設定信号とを生成するとともに、前記第１設定信号の指示解除のタイミングから前記クロック信号の偶数周期分遅れて前記第２設定信号の指示解除のタイミングを設定するタイミング調整回路と、
前記第１設定信号の指示が解除されてから、前記第２設定信号の指示が解除されるまでの間に、前記複数のフリップフロップの出力信号の中に論理が異なる出力信号が存在する場合に、故障検出信号を出力する故障検出回路と、を備える、テスト回路が提供される。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態によるテスト回路の回路図。
【図２】タイミング調整回路の一例を示す回路図。
【図３】図１のテスト回路の動作タイミング図。
【図４】リセット端子を有するフリップフロップと、セット端子を有するフリップフロップとが混在するテスト回路の回路図。
【図５】第２の実施形態によるテスト回路の回路図。
【図６】第３の実施形態によるテスト回路の回路図。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態を説明する。以下の実施形態では、テスト回路内の特徴的な構成および動作を中心に説明するが、テスト回路には以下の説明で省略した構成および動作が存在しうる。
【００１０】
（第１の実施形態）
図１は第１の実施形態によるテスト回路１の回路図である。図１のテスト回路１は、複数のフリップフロップ２を有するレジスタ回路３と、タイミング調整回路４と、故障検出回路５とを備えている。図１のテスト回路１は、レジスタ回路３から出力される複数の出力信号の少なくとも一つが第１論理又は第２論理に固着する故障を検出するものである。なお、図１のテスト回路１は、レジスタ回路３の代わりに、複数のフリップフロップ２を有する種々の回路（例えば、後述するシフトレジスタなど）から出力される複数の出力信号の少なくとも一つが第１論理又は第２論理に固着する故障を検出する場合にも適用可能である。
【００１１】
図１の細実線は、通常のレジスタ回路３の結線を示すのに対して、太実線は通常のレジスタ回路３に加えて新たに必要となる結線及び回路部品を示している。
【００１２】
タイミング調整回路４は、複数のフリップフロップ２の出力信号を予め定めた論理に設定することを指示する第１設定信号と、複数のフリップフロップ２の出力信号の故障検出を指示する第２設定信号とを生成するとともに、第１設定信号の指示解除のタイミングからクロック信号の偶数周期分遅れて第２設定信号の指示解除のタイミングを設定する。第１設定信号とは、例えば第１リセット信号Reset1がリセット状態になる場合を指し、第２設定信号とは、例えば第２リセット信号Reset2がリセット状態になる場合を指す。より具体的な一例では、第１設定信号とは第１リセット信号Reset1がローの場合を指し、第２設定信号とは第２リセット信号Reset2がローの場合を指す。
【００１３】
図２はタイミング調整回路４の一例を示す回路図である。図２のタイミング調整回路４は、第１フリップフロップ６と、第２フリップフロップ７と、第３フリップフロップ８と、ＡＮＤゲート９とを有する。第１フリップフロップ６は、外部リセット信号（第３設定信号）Resetをクロック信号ＣＬＫで同期化させた第１リセット信号Reset1を生成する。第２フリップフロップ７は、第１フリップフロップ６の出力である第１リセット信号Reset1をクロック信号ＣＬＫの１周期分遅らせた信号を生成する。第３フリップフロップ８は、第２フリップフロップ７の出力信号をクロック信号ＣＬＫの１周期分遅らせた信号を生成する。ＡＮＤゲート９は、第１〜第３フリップフロップ６〜８の各出力信号の論理積信号である第２リセット信号Reset2を生成する。
【００１４】
故障検出回路５は、第１設定信号の指示が解除されてから、第２設定信号の指示が解除されるまでの間に、複数のフリップフロップ２の出力信号の中に論理が異なる出力信号が存在する場合に、故障検出信号を出力する。より詳細には、故障検出回路５は、第１設定信号の指示が解除されてから、第２設定信号の指示が解除されるまでの間に、複数のフリップフロップ２の少なくとも一つの出力信号が第１論理に固着する不良と、第２論理に固着する不良とを別々のタイミングで検出し、少なくとも一方の不良が検出されると、故障検出信号を出力する。
【００１５】
図１のレジスタ回路３には、トグル回路１１が接続されている。トグル回路１１は、第１設定信号の指示が解除されてから、第２設定信号の指示が解除されるまでの間に、クロック信号ＣＬＫに同期させて、複数のフリップフロップ２のそれぞれの出力信号を反転させて対応するフリップフロップ２に入力させる。
【００１６】
トグル回路１１は、各フリップフロップ２ごとに設けられている。より詳細には、トグル回路１１は、第１セレクタ１２と、インバータ１３と、第２セレクタ１４とを有する。
【００１７】
第１セレクタ１２は、第２リセット信号Reset2の論理に基づいて、第１論理（例えばハイ）信号とフリップフロップ２の出力信号とのいずれかを選択する。具体的には、第１セレクタ１２は、第２リセット信号Reset2がハイのときは、第１論理信号を選択し、第２リセット信号Reset2がローのときは、フリップフロップ２の出力信号を選択する。第１セレクタ１２の出力信号は、インバータ１３で論理が反転された後に、第２セレクタ１４に入力される。
【００１８】
第２セレクタ１４は、第２リセット信号Reset2の論理に基づいて、第３セレクタ１５の出力信号と、インバータ１３の出力信号（第１セレクタ１２の出力反転信号）とのいずれかを選択する。具体的には、第２セレクタ１４は、第２リセット信号Reset2がハイのときは、第３セレクタ１５の出力信号を選択し、第２リセット信号Reset2がローのときは、第１セレクタ１２の出力反転信号を選択する。
【００１９】
図１の各フリップフロップ２は、リセット端子を有する。各フリップフロップ２のリセット端子には、第１リセット信号Reset1が入力されている。第１リセット信号Reset1がローのときに、各フリップフロップ２はリセット状態となり、その出力信号はローになる。
【００２０】
このように、図１の各フリップフロップ２は、リセット端子にローレベルの第１リセット信号Reset1が入力されている間は、ローの出力信号を出力し、その後、第１リセット信号Reset1がハイになり、かつ第２リセット信号Reset2がハイになるまでの間は、トグル回路１１に従って、クロック信号ＣＬＫに同期させて、出力信号を反転させる動作を行う。
【００２１】
第３セレクタ１５は、ライトイネーブル信号の論理に基づいて、入力データと、第４セレクタ１６の出力信号とのいずれかを選択する。具体的には、第３セレクタ１５は、ライトイネーブル信号がハイのときは、入力データを選択し、ライトイネーブル信号がローのときは、第４セレクタ１６の出力信号を選択する。
【００２２】
第４セレクタ１６は、第２リセット信号Reset2の論理に基づいて、対応するフリップフロップ２の出力信号と、第２論理（例えばロー）信号とのいずれかを選択する。具体的には、第４セレクタ１６は、第２リセット信号Reset2がハイのときは、対応するフリップフロップ２の出力信号を選択し、第２リセット信号Reset2がローのときは、第２論理信号を選択する。第４セレクタ１６は、第２リセット信号Reset2がロー（リセット状態）のときに、後段回路への入力論理を、対応するフリップフロップ２の出力論理に合わせるために設けられており、図１のレジスタ回路３内の全フリップフロップ２がリセット端子を有するため、いずれの第４セレクタ１６も、第２リセット信号Reset2がローのときは、第２論理（ロー）信号を選択する。
【００２３】
図１では、簡略化のため、３つのフリップフロップ２を図示しているが、図１のテスト回路１内に設けられるフリップフロップ２の数は、２個以上であればよく、その数に特に制限はない。
【００２４】
故障検出回路５は、例えば排他的論理和を演算するＥＸＯＲゲート１７と、第５セレクタ１８とを有する。ＥＸＯＲゲート１７には、各フリップフロップ２の出力信号が入力されている。ＥＸＯＲゲート１７は、各フリップフロップ２の出力信号の中に、他のフリップフロップ２とは異なる論理の出力信号が含まれる場合に、第１論理（例えばハイ）の信号を出力する。すなわち、ＥＸＯＲゲート１７は、全フリップフロップ２の出力信号の論理が同じであればローの信号を出力し、全フリップフロップ２の出力信号の中に論理の異なる出力信号が含まれていれば、ハイの信号を出力する。
【００２５】
第５セレクタ１８は、第２リセット信号Reset2の論理に基づいて、第２論理（例えばロー）信号と、ＥＸＯＲゲート１７の出力信号とのいずれかを選択する。具体的には、第５セレクタ１８は、第２リセット信号Reset2がハイのときは、第２論理信号を選択し、第２リセット信号Reset2がローのときは、ＥＸＯＲゲート１７の出力信号を選択する。第５セレクタ１８の出力信号は、故障検出信号であり、故障検出信号がハイのときは、複数のフリップフロップ２の出力信号の少なくとも一つが論理固着の故障を起こしていることを示している。
【００２６】
図３は図１のテスト回路１の動作タイミング図である。以下、図３に基づいて、図１のテスト回路１の動作を説明する。初期状態では、ライトイネーブル信号はローとする。時刻ｔ０で、外部リセット信号Resetがハイからローになり、その後、クロック信号ＣＬＫの立ち上がりエッジが入力された時点（時刻ｔ１）で、第１リセット信号Reset1はハイからローに変化する。これにより、各フリップフロップ２はリセット状態になり、各フリップフロップ２の出力信号はロー固定になる。また、第２リセット信号Reset2も、時刻ｔ１でハイからローに変化する。よって、第１セレクタ１２は、対応するフリップフロップ２の出力信号（ロー）を選択し、インバータ１３は、反転したハイ信号を出力する。第２セレクタ１４は、第２リセット信号Reset2がローであることから、インバータ１３から出力されたハイ信号を選択して、対応するフリップフロップ２に入力する。
【００２７】
その後、時刻ｔ２でクロック信号ＣＬＫの立ち上がりエッジが入力されるが、この時点では、第１リセット信号Reset1はリセット状態（ロー）であるため、各フリップフロップ２の出力はローのままである。ただし、図２のタイミング調整回路４内の第１フリップフロップ６の出力は反転し、第１リセット信号Reset1はハイになり、各フリップフロップ２のリセット状態が解除される。このように、時刻ｔ２でクロック信号ＣＬＫの立ち上がりエッジが入力された後に、第１リセット信号Reset1はハイになり、各フリップフロップ２はリセット状態から解除される。
【００２８】
その後、時刻ｔ３でクロック信号ＣＬＫの立ち上がりエッジが入力されると、すでに各フリップフロップ２のリセット状態は解除されているため、各フリップフロップ２の出力はローからハイに反転する。この時点では、第２リセット信号Reset2はまだローであるため、第１セレクタ１２は対応するフリップフロップ２の出力（ハイ信号）を選択する。第１セレクタ１２の出力信号は、インバータ１３で反転されて、第２セレクタ１４を通って、対応するフリップフロップ２に入力される。これにより、各フリップフロップ２の入力はハイからローに変化する。
【００２９】
時刻ｔ２で、クロック信号ＣＬＫの立ち上がりエッジが入力されると、各フリップフロップ２の出力は、故障を起こしていなければロー固定になる。よって、ＥＸＯＲゲート１７の出力はローになるはずである。仮に、いずれかのフリップフロップ２の出力がハイに固着していれば、ＥＸＯＲゲート１７の出力はハイになる。これにより、時刻ｔ２〜ｔ３の間は、いずれかのフリップフロップ２の出力がハイに固着した故障を検出できる。２以上のフリップフロップ２の出力がハイに固着している場合であっても、ＥＸＯＲゲート１７の出力はハイになるため、同様に、２以上のフリップフロップ２の出力がハイに固着した故障を検出できる。ただし、すべてのフリップフロップ２の出力がハイに固着すると、ＥＸＯＲゲート１７の出力はローのままであり、ハイ固着の故障を検出できなくなるが、すべてのフリップフロップ２がハイに固着する故障を起こすことは現実的にはありえないため、すべてのフリップフロップ２の出力がハイに固着する不良を考慮に入れる必要はない。
【００３０】
その後、時刻ｔ３でクロック信号ＣＬＫの立ち上がりエッジが入力されると、各フリップフロップ２の出力は、故障を起こしていなければハイ固定になる。よって、ＥＸＯＲゲート１７の出力はローになるはずである。仮に、いずれかのフリップフロップ２の出力がローに固着していれば、ＥＸＯＲゲート１７の出力はハイになる。これにより、時刻ｔ３から、クロック信号ＣＬＫの次の立ち上がりエッジが入力されるまで（時刻ｔ４）は、いずれかのフリップフロップ２の出力がローに固着した故障を検出できる。
【００３１】
時刻ｔ３４クロック信号ＣＬＫの立ち上がりエッジが入力されると、図２のタイミング調整回路のＡＮＤゲート１０から出力される第２リセット信号Reset2はローからハイに変化する。これにて、図１のテスト回路１のリセット期間は終了し、それ以降は、各フリップフロップ２の出力が第４セレクタ１６で選択される。時刻ｔ４以降に、ライトイネーブル信号ＷＥがローからハイに変化すると、第３セレクタ１５は入力データを選択し、第２セレクタ１４は第３セレクタ１５の出力信号を選択するため、各フリップフロップ２には入力データが入力される。
【００３２】
図３では、第１リセット信号Reset1のリセット状態が解除された（ハイになった）後、２つ目のクロック信号ＣＬＫの立ち上がりエッジで第２リセット信号Reset2のリセット状態を解除する例を示したが、２つ目以外の偶数個目のクロック信号ＣＬＫの立ち上がりエッジで第２リセット信号Reset2のリセット状態を解除してもよい。
【００３３】
このように、図１のテスト回路１は、外部リセット信号Resetが入力されると、次のクロック信号ＣＬＫの立ち上がりエッジに同期させて第１リセット信号Reset1をローにし、各フリップフロップ２をリセット状態にする。これにより、各フリップフロップ２の出力は故障していなければローになる。もし、いずれかのフリップフロップ２の出力がハイに固着していれば、ＥＸＯＲゲート１７の出力がハイになるため、いずれかのフリップフロップ２の出力がハイに固着する故障を検出できる。第１リセット信号Reset1が解除された後、偶数個目のクロック信号ＣＬＫの立ち上がりエッジに同期させて、第２リセット信号Reset2が解除される。第１リセット信号Reset1が解除されてから、第２リセット信号Reset2が解除されるまでの間は、各フリップフロップ２は、クロック信号ＣＬＫに同期させて、トグル回路１１によるトグル動作を繰り返す。これにより、各周期ごとに、各フリップフロップ２のハイ固着又はロー固着の故障検出を交互に行うことができる。
【００３４】
図１のテスト回路１内の各フリップフロップ２は、リセット端子を有するが、各フリップフロップ２がセット端子を有する場合であっても、同様にハイに固着する故障とローに固着する故障とをクロック信号ＣＬＫに同期させて検出可能である。図４は、リセット端子を有するフリップフロップ２と、セット端子を有するフリップフロップ２とが混在するテスト回路１の回路図である。第１リセット信号Reset1がローのときに、リセット端子を有するフリップフロップ２はリセット状態となり、その出力信号はローになる。また、セット端子を有するフリップフロップ２はセット状態となり、その出力信号はハイになる。
【００３５】
図４のテスト回路１内の各フリップフロップ２は、リセット端子又はセット端子にローレベルの第１リセット信号Reset1が入力されている間は、ロー又はハイの出力信号を出力し、その後、第１リセット信号Reset1のリセット状態が解除され（ハイになり）、かつ第２リセット信号Reset2のリセット状態が解除される（ハイになる）までの間は、トグル回路１１に従って、クロック信号ＣＬＫに同期させて、出力信号を反転させる動作を行う。
【００３６】
図４では、最上段と最下段のフリップフロップ２はリセット端子を有し、中間のフリップフロップ２はセット端子を有する例を示しているが、各フリップフロップ２がリセット端子又はセット端子のどちらを有するかは任意である。セット端子を有するフリップフロップ２の後段に接続された第４セレクタ１６は、第２リセット信号Reset2がローのときに、ロー信号を選択する。一方、リセット端子を有するフリップフロップ２の後段に接続された第４セレクタ１６は、第２リセット信号Reset2がローのときに、ハイ信号を選択する。これは、第２リセット信号がリセット状態又はセット状態のときに、図１のテスト回路の出力データの論理を、対応するフリップフロップの出力論理に合わせるためである。
【００３７】
図４に示すように、セット端子を有するフリップフロップ２の出力端子にはインバータ１９が接続されている。これは、リセット期間中のＥＸＯＲゲート１７の各入力信号の論理をローに合わせるためである。
【００３８】
本明細書では、フリップフロップ２のリセット端子又はセット端子を総称して設定信号端子と呼ぶ。設定信号端子を有するフリップフロップ２は、設定信号端子に第１設定信号が入力されている間は予め定めた論理の出力信号を出力し、設定信号端子に第１設定信号が入力されなくなり、かつタイミング調整回路が第２設定信号を出力するまでの間は、トグル回路に従ってクロック信号に同期させて論理反転動作を行う。
【００３９】
このように、図１及び図４のテスト回路１では、複数のフリップフロップ２を有するレジスタ回路３に記憶したデータを読み出すことなく、各フリップフロップ２を初期化している期間中に、各フリップフロップ２をトグル動作させて、いずれかのフリップフロップ２の出力がハイ固着する故障とロー固着する故障とを、クロック信号ＣＬＫの各周期ごとに交互にＥＸＯＲゲート１７にて検出できる。これにより、セキュリティに配慮した上で、簡易かつ迅速に複数のフリップフロップ２の故障を検出できる。また、本実施形態によれば、レジスタ回路３にテスト用のデータを書き込んで、それを読み出して検証するソフトウェアが不要であり、通常のレジスタ回路３に、若干の回路と結線を追加するだけで、ハードウェアにて故障検出を行えるため、故障検出用のソフトウェアを開発する手間が省けるとともに、簡易かつ迅速に故障検出を行える。
【００４０】
（第２の実施形態）
第１の実施形態では、リセット端子又はセット端子を有するフリップフロップ２の故障を検出する例を説明したが、リセット端子やセット端子を持たないフリップフロップ２の故障を検出することも可能である。
【００４１】
図５は第２の実施形態によるテスト回路１の回路図である。図５のテスト回路１は、リセット端子やセット端子を持たない複数のフリップフロップ２と、設定信号生成回路２１と、タイミング調整回路４と、故障検出回路５とを備えている。
【００４２】
タイミング調整回路４と故障検出回路５の回路構成は、図１のテスト回路１と同様である。設定信号生成回路２１は、複数のフリップフロップ２の少なくとも一つの信号入力端子に接続され、第１設定信号が入力されたときに予め定めた論理の出力信号が対応するフリップフロップ２から出力されるように、対応する信号入力端子に入力される信号を生成する。
【００４３】
具体的には、設定信号生成回路２１は、第６セレクタ２２を有する。第６セレクタ２２は、第１リセット信号Reset1の論理に基づいて、第１論理（例えばハイ）信号と、第２セレクタ１４の出力信号とのいずれかを選択する。より詳細には、第６セレクタ２２は、第１リセット信号Reset1がローのときは第１論理信号を選択し、第１リセット信号Reset1がハイのときは第２セレクタ１４の出力信号を選択する。
【００４４】
図５は、リセット端子を有するフリップフロップ２と同様の動作を行う設定信号生成回路２１を設ける例を示したが、セット端子を有するフリップフリップと同様の動作を行う設定信号生成回路２１を設けてもよい。図５の例では、第４セレクタ１６が第２リセット信号Reset2がローのときに選択する信号を第１論理信号（ハイ信号）にしているが、第２論理信号（ロー）でもよい。また、複数のフリップフリップ２のうち、一部のフリップフロップ２はリセット端子やセット端子を有し、残りのフリップフロップ２はリセット端子やセット端子の代わりに設定信号生成回路２１を設けてもよい。
【００４５】
このように、第２の実施形態では、リセット端子やセット端子を持たないフリップフロップ２であっても、フリップフロップ２の入力端子に設定信号生成回路２１を接続することで、第１の実施形態と同様に、いずれかのフリップフロップ２の出力がハイ固着又はロー固着する故障を簡易かつ迅速に検出できる。
【００４６】
（第３の実施形態）
上述した第１及び第２の実施形態では、レジスタ回路３内の複数のフリップフロップ２の故障を検出するテスト回路１について説明したが、例えば図６に示すようにシフトレジスタ２３内の複数のフリップフロップ２の故障検出するテスト回路１にも適用可能である。
【００４７】
図６では、通常のシフトレジスタ２３内の回路部品及び結線を細実線で示し、新たに追加する回路部品及び結線を太実線で示している。シフトレジスタ２３は、複数のフリップフロップを、ＡＮＤゲート２４を間に挟んで、直列に接続した構成になっている。また、図６のシフトレジスタ２３では、図１の第３セレクタ１５と第４セレクタ１６は省略されている。
【００４８】
図６のテスト回路１においても、外部リセット信号Resetが入力されてから、第２リセット信号Reset2のリセット状態が解除されるまでの間に、いずれかのフリップフロップ２がハイ固着する故障と、ロー固着する故障とを、クロック信号ＣＬＫの各周期ごとに交互に検出できる。
【００４９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００５０】
１  テスト回路、２  フリップフロップ、３  レジスタ回路、４  タイミング調整回路、５  故障検出回路、６  第１フリップフロップ、７  第２フリップフロップ、８  インバータ、９  ＯＲゲート、１１  トグル回路、１２  第１セレクタ、１３  インバータ、１４  第２セレクタ、１５  第３セレクタ、１６  第４セレクタ、１７  ＥＸＯＲゲート、１８  第５セレクタ、１９  インバータ、２１  設定信号生成回路、２２  第６セレクタ
【図１】
2020041821.tif 000003
【図２】
2020041821.tif 000004
【図３】
2020041821.tif 000005
【図４】
2020041821.tif 000006
【図５】
2020041821.tif 000007
【図６】
2020041821.tif 000008