(57)【要約】【課題】０縮退故障および１縮退故障が発生した箇所を特定することができる記憶回路、集積回路およびスキャン方法を提供すること。【解決手段】クリア信号が印加された場合に、データ０をマスタラッチに設定し、ＡＣＫがオンである場合に、他のフリップフロップのスレイブラッチから出力されるデータをマスタラッチに設定し、また、ＢＣＫがオフであり、かつ、クリア信号が印加された場合に、データ１をスレイブラッチに設定し、ＢＣＫがオンである場合に、マスタラッチから出力されるデータをスレイブラッチに設定する回路構成とする。【選択図】図１
2011007761.tif 000002
【特許請求の範囲】
【請求項１】
第一の記憶素子と第二の記憶素子とを含む記憶回路であって、
クリア信号が印加された場合に、データ０を前記第一の記憶素子に設定し、第一のクロック信号がオンである場合に、他の記憶回路の第二の記憶素子から出力されるデータを前記第一の記憶素子に設定する第一の設定回路と、
第二のクロック信号がオフであり、かつ、クリア信号が印加された場合に、データ１を前記第二の記憶素子に設定するとともに他の記憶回路へ出力し、前記第二のクロック信号がオンである場合に、前記第一の設定回路によって第一の記憶素子に設定されたデータを前記第二の記憶素子に設定するとともに他の記憶回路へ出力する第二の設定回路と
を備えたことを特徴とする記憶回路。
【請求項２】
第一のラッチと第二のラッチとを含む記憶回路であって、
クリア信号が印加された場合に、前記第一のラッチにデータ０を設定するマスタ設定素子と、
第一のクロック信号がオンである場合に、他の記憶回路の第二のラッチから出力されるデータを前記第一のラッチに伝搬させるマスタ伝搬素子と、
第二のクロック信号がオンである場合に、前記第一のラッチから出力されるデータを前記第二のラッチに伝搬させるスレイブ伝搬素子と、
前記第二のクロック信号がオフであり、かつ、クリア信号が印加された場合に、前記第二のラッチにデータ１を設定するスレイブ設定素子と
を備えたことを特徴とする記憶回路。
【請求項３】
第一の記憶素子と第二の記憶素子とを含む記憶回路を有する集積回路であって、
前記記憶回路は、
クリア信号が印加された場合に、データ０を前記第一の記憶素子に設定し、第一のクロック信号がオンである場合に、他の記憶回路の第二の記憶素子から出力されるデータを前記第一の記憶素子に設定する第一の設定回路と、
第二のクロック信号がオフであり、かつ、クリア信号が印加された場合に、データ１を前記第二の記憶素子に設定するとともに他の記憶回路へ出力し、前記第二のクロック信号がオンである場合に、前記第一の設定回路によって第一の記憶素子に設定されたデータを前記第二の記憶素子に設定するとともに他の記憶回路へ出力する第二の設定回路と
を備えたことを特徴とする集積回路。
【請求項４】
第一の記憶素子と第二の記憶素子とを含む記憶回路のスキャン方法であって、
クリア信号が前記記憶回路に印加された場合に、前記記憶回路が有する第一の設定回路が、データ０を前記第一の記憶素子に設定するステップと、
第一のクロック信号がオンである場合に、前記第一の設定回路が、他の記憶回路の第二の記憶素子から出力されるデータを前記第一の記憶素子に設定するステップと、
第二のクロック信号がオフであり、かつ、クリア信号が印加された場合に、前記記憶回路が有する第二の設定回路が、データ１を前記第二の記憶素子に設定するとともに他の記憶回路へ出力するステップと、
前記第二のクロック信号がオンである場合に、前記第二の設定回路が、前記第一の設定回路によって第一の記憶素子に設定されたデータを前記第二の記憶素子に設定するとともに、他の記憶回路へ出力するステップと
を有することを特徴とするスキャン方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶回路、集積回路およびスキャン方法に関する。
【背景技術】
【０００２】
従来、ＬＳＩ（Large  Scale  Integrated  circuit）などの回路が製造された場合、かかる回路に対して、ＬＳＳＤ（Level  Sensitive  Scan  Design）などのスキャンテストが行われる。以下に、スキャンテストの手法について簡単に説明する。
【０００３】
スキャンテストを行う場合、検査対象の回路内のフリップフロップ（以下、「ＦＦ：Flip  Flop」と言う）をスキャンラッチ及びスキャンインタフェースを有するスキャンＦＦに置き換え、スキャンＦＦをスキャンチェーン（Scan  Chain）と呼ばれる経路によってスキャンインタフェース同士をシリアルに接続する。そして、所定のスキャンＦＦのスキャンインタフェースのスキャンイン（Scan  Input）からデータを入力し、シフト動作を行うことにより全てのスキャンＦＦにデータを設定する。このようにスキャンＦＦに設定されたデータが期待値となる。そして、スキャンシフトを行って、スキャンＦＦのスキャンインタフェースのスキャンアウト（Scan  Out）から出力されるデータと、期待値とを比較することにより回路内を検査する。
【０００４】
上記の手法は、安価に実現可能であるが、故障発生時に故障発生箇所を特定することができず、その結果、製造工程のどこに問題があるかを容易に特定できない。そこで、近年では、スキャンＦＦに期待値を設定する手法が工夫されている。例えば、全てのスキャンＦＦにデータ「０」を設定するピンを各スキャンＦＦに設けて、電源投入時に全てのスキャンＦＦに期待値「０」を設定する手法がある。かかる手法では、スキャンアウトから出力されるデータと期待値との相違箇所に基づいて、故障発生箇所を特定することが可能になる。
【０００５】
このようなスキャンＦＦに「０」を設定する手法は、スキャンＦＦに設定した期待値「０」が「１」に変化する「１縮退故障」が発生した場合には検知できるが、期待値「１」が「０」に変化する「０縮退故障」が発生した場合には検知できない。そこで、スキャンＦＦにデータ「０」を設定するピンとともに、データ「１」を設定するピンを設けて、電源投入時に全てのスキャンＦＦに「０」または「１」を設定する手法がある。かかる手法では、「１縮退故障」および「０縮退故障」が発生した箇所を特定することが可能になる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−５１９３６号公報
【特許文献２】特開昭５４−０５５１４１号公報
【特許文献３】特開２００７−４０９２１号公報
【特許文献４】特開平６−２３００７５号公報
【非特許文献】
【０００７】
【非特許文献１】Kevin Stanley,  ”High-Accuracy  Flush-and-Scan  Software  Diagnostic”,  IEEE  Design  ＆  Test  of  Computers,  Vol.18,  pp56-62,  Number  6,  November／December  2001.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術には、回路が大規模になるという問題があった。具体的には、上述した従来技術を用いた場合、「１縮退故障」および「０縮退故障」が発生した箇所を特定するために、全てのスキャンＦＦにデータ「０」および「１」を設定するピンを設けることになる。特に、現状のスキャンＦＦには、データ「１」を設定するピンは一般的に設けられていないため、「０縮退故障」を検知するためには回路規模が増大してしまう。
【０００９】
なお、上述した従来技術の他に、ソフトウェアによって故障箇所を解析する手法も提案されている。かかる手法では、故障により出力データが縮退した場合に、スキャンインから入力した値をシステムクロック印加により故障していないスキャンチェーン上へ伝搬させる。そして、伝搬させた測定結果と、縮退故障をスキャンチェーン上に入力した論理シミュレーションとを比較することにより、縮退故障の箇所を求める。しかし、かかる手法であっても、故障箇所によっては、スキャンＦＦを特定することができない場合があった。
【００１０】
開示の技術は、上記に鑑みてなされたものであって、０縮退故障および１縮退故障が発生した箇所を特定することができる記憶回路、集積回路およびスキャン方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願の開示する記憶回路は、一つの態様において、第一の記憶素子と第二の記憶素子とを含む記憶回路であって、クリア信号が印加された場合に、データ０を前記第一の記憶素子に設定し、第一のクロック信号がオンである場合に、他の記憶回路の第二の記憶素子から出力されるデータを前記第一の記憶素子に設定する第一の設定回路と、第二のクロック信号がオフであり、かつ、クリア信号が印加された場合に、データ１を前記第二の記憶素子に設定するとともに他の記憶回路へ出力し、前記第二のクロック信号がオンである場合に、前記第一の設定回路によって第一の記憶素子に設定されたデータを前記第二の記憶素子に設定するとともに他の記憶回路へ出力する第二の設定回路とを備える。
【発明の効果】
【００１２】
本願の開示する記憶回路の一つの態様によれば、０縮退故障および１縮退故障が発生した箇所を特定することができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例１に係るＦＦの全体図を示す図である。
【図２】図２は、実施例１に係るＦＦの構成を示す図である。
【図３】図３は、ＢＣＫ非印加時にＦＦによって保持されるデータの一例を示す図である。
【図４】図４は、ＢＣＫ印加時にＦＦによって保持されるデータの一例を示す図である。
【図５】図５は、実施例１に係るＦＦの適用例を説明する図である。
【図６】図６は、実施例１に係るＦＦの適用例を説明する図である。
【図７】図７は、実施例１に係るＦＦを用いたスキャンテスト処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下に、本願の開示する記憶回路、集積回路およびスキャン方法の実施例を図面に基づいて詳細に説明する。なお、この実施例により本願の開示する記憶回路、集積回路およびスキャン方法が限定されるものではない。
【実施例１】
【００１５】
実施例１では、本願の開示する記憶回路をＦＦに適用する例について説明する。なお、以下では、まず、実施例１に係るＦＦの全体図について説明し、次に、実施例１に係るＦＦの構成について説明し、次に、実施例１に係るＦＦの適用例について説明し、最後に、実施例１に係るＦＦを用いたスキャンテストについて説明する。
【００１６】
［スキャンチェーンの全体図］
まず、図１を用いて、実施例１に係るＦＦの全体図について説明する。図１は、実施例１に係るＦＦの全体図を示す図である。図１に示した例では、実施例１に係るＦＦ１００ａ〜１００ｃが、スキャンチェーンによってシリアルに接続されている。このようなＦＦ１００ａ〜１００ｃは、ＬＳＩなどの集積回路に含まれる。
【００１７】
図１に示すように、ＦＦ１００ａは、マスタラッチ（Master  Latch）Ｍ１１０ａと、スレイブラッチ（Slave  Latch）Ｓ１２０ａとを含む。マスタラッチＭ１１０ａは、入力端子として、スキャンインＳＩと、データイン（Data  Input）Ｄとを有する。また、スレイブラッチＳ１２０ａは、出力端子として、スキャンアウトＳＯを有する。
【００１８】
同様に、ＦＦ１００ｂは、マスタラッチＭ１１０ｂとスレイブラッチＳ１２０ｂとを含み、ＦＦ１００ｃは、マスタラッチＭ１１０ｃとスレイブラッチＳ１２０ｃとを含む。そして、マスタラッチＭ１１０ｂおよびＭ１１０ｃは、それぞれスキャンインＳＩと、データインＤとを有する。また、スレイブラッチＳ１２０ｂおよびＳ１２０ｃは、それぞれスキャンアウトＳＯを有する。
【００１９】
また、図１に示すように、各ＦＦのスキャンインＳＩは、隣接するＦＦのスキャンアウトＳＯと接続される。図１に示した例では、ＦＦ１００ａのスキャンアウトＳＯと、ＦＦ１００ｂのスキャンインＳＩとが接続されている。また、ＦＦ１００ｂのスキャンアウトＳＯと、ＦＦ１００ｃのスキャンインＳＩとが接続されている。このようにして、各ＦＦは、シリアルに接続される。
【００２０】
また、図１に示すように、マスタラッチＭ１１０ａ〜Ｍ１１０ｃは、それぞれマスタラッチ設定回路Ｍ１１１ａ〜Ｍ１１１ｃを有する。また、マスタラッチＭ１１０ａ〜Ｍ１１０ｃは、クリア信号と、ＡＣＫ（Ａクロック）と呼ばれるクロック信号とを受け付ける。なお、ＡＣＫは、他のＦＦのスレイブラッチからスキャンインＳＩに入力されるデータを、マスタラッチに伝搬させるか否かを制御するクロック信号である。
【００２１】
マスタラッチ設定回路Ｍ１１１ａ〜１１１ｃは、クリア信号が印加された場合に、マスタラッチにデータ０を設定する。例えば、マスタラッチ設定回路Ｍ１１１ａは、クリア信号が印加された場合に、マスタラッチＭ１１０ａにデータ０を設定する。同様に、マスタラッチ設定回路Ｍ１１１ｂは、クリア信号が印加された場合に、マスタラッチＭ１１０ｂにデータ０を設定し、マスタラッチ設定回路Ｍ１１１ｃは、マスタラッチＭ１１０ｃにデータ０を設定する。
【００２２】
また、マスタラッチ設定回路Ｍ１１１ａ〜１１１ｃは、ＡＣＫが印加された場合（ＡＣＫがオンである場合）、他のＦＦのスレイブラッチから出力されるデータをマスタラッチに設定する。例えば、マスタラッチ設定回路Ｍ１１１ｂは、ＡＣＫが印加された場合に、ＦＦ１００ａのスレイブラッチＳ１２０ａから出力されるデータをマスタラッチＭ１１０ｂに設定する。
【００２３】
スレイブラッチＳ１２０ａ〜Ｓ１２０ｃは、図１に示すように、それぞれスレイブラッチ設定回路Ｓ１２１ａ〜Ｓ１２１ｃを有する。また、スレイブラッチＳ１２０ａ〜Ｓ１２０ｃは、クリア信号と、ＢＣＫ（Ｂクロック）と呼ばれるクロック信号とを受け付ける。なお、ＢＣＫは、マスタラッチから出力されるデータをスレイブラッチに伝搬させるか否かを制御するクロック信号である。
【００２４】
スレイブラッチ設定回路Ｓ１２１ａ〜Ｓ１２１ｃは、ＢＣＫが印加された場合（ＢＣＫがオンである場合）、マスタラッチから出力されるデータをスレイブラッチに設定するとともに、接続先のＦＦへ出力する。例えば、スレイブラッチ設定回路Ｓ１２１ａは、ＢＣＫが印加された場合に、マスタラッチＭ１１０ａから出力されるデータをスレイブラッチＳ１２０ａに設定するとともに、かかるデータをＦＦ１００ｂのマスタラッチＭ１１０ｂへ出力する。
【００２５】
また、スレイブラッチ設定回路Ｓ１２１ａ〜Ｓ１２１ｃは、ＢＣＫが印加されず（ＢＣＫがオフ）、かつ、クリア信号が印加された場合に、データ１をスレイブラッチに設定するとともに、接続先のＦＦへ出力する。例えば、スレイブラッチ設定回路Ｓ１２１ａは、ＢＣＫがオフであり、かつ、クリア信号が印加された場合に、データ１をスレイブラッチＳ１２０ａに設定するとともに、かかるデータをＦＦ１００ｂのマスタラッチＭ１１０ｂへ出力する。
【００２６】
このような構成の下、ＦＦ１００ａ〜１００ｃは、データ「０」および「１」の双方を保持することができる。具体的には、ＦＦ１００ａ〜１００ｃは、ＢＣＫがオンである場合にクリア信号が印加されると、マスタラッチＭ１１０ａ〜Ｍ１１０ｃにデータ「０」を保持する。そして、ＢＣＫがオンであるので、スレイブラッチ設定回路Ｓ１２１ａ〜Ｓ１２１ｃは、マスタラッチＭ１１０ａ〜Ｍ１１０ｃから出力されるデータ「０」をスレイブラッチＳ１２０ａ〜Ｓ１２０ｃに設定する。これにより、ＦＦ１００ａ〜１００ｃは、データ「０」を保持することができる。
【００２７】
また、ＦＦ１００ａ〜１００ｃは、ＢＣＫがオフである場合にクリア信号が印加されると、マスタラッチＭ１１０ａ〜Ｍ１１０ｃにデータ「０」を保持する。そして、ＢＣＫがオフであるので、スレイブラッチ設定回路Ｓ１２１ａ〜Ｓ１２１ｃは、データ１をスレイブラッチに設定する。この後に、ＡＣＫが印加された場合、スレイブラッチＳ１２０ａ〜Ｓ１２０ｃに保持されているデータ「１」は、マスタラッチＭ１１０ａ〜Ｍ１１０ｃに伝搬する。これにより、ＦＦ１００ａ〜１００ｃは、データ「１」を保持することができる。
【００２８】
このように、実施例１に係るＦＦは、ＢＣＫがオンである場合にクリア信号が印加されると、データ「０」を保持することができ、ＢＣＫがオフである場合にクリア信号が印加されると、データ「１」を保持することができる。すなわち、実施例１に係るＦＦを用いてスキャンテストを行う場合、０縮退故障および１縮退故障が発生した箇所を特定することができる。
【００２９】
例えば、スキャンテストを行う場合に、ＢＣＫがオフである状態でクリア信号を印加した後に、ＡＣＫを印加することにより、実施例１に係るＦＦにデータ「１」を設定する。これにより、０縮退故障が発生した箇所を特定するスキャンテストを行うことができる。
【００３０】
また、例えば、スキャンテストを行う場合に、ＢＣＫがオンである状態でクリア信号を印加することにより、実施例１に係るＦＦにデータ「０」を設定する。これにより、１縮退故障が発生した箇所を特定するスキャンテストを行うことができる。
【００３１】
なお、図１に示した例において、マスタラッチＭ１１０ａ〜Ｍ１１０ｃは、第一の記憶素子の一例として挙げられる。また、スレイブラッチＳ１２０ａ〜Ｓ１２０ｃは、第二の記憶素子の一例として挙げられる。また、マスタラッチ設定回路Ｍ１１１ａ〜１１１ｃは、第一の設定回路の一例として挙げられる。また、スレイブラッチＳ１２０ａ〜Ｓ１２０ｃは、第二の設定回路の一例として挙げられる。
【００３２】
［実施例１に係るＦＦの構成］
次に、図２を用いて、実施例１に係るＦＦの構成について説明する。図２は、実施例１に係るＦＦの構成を示す図である。なお、図２に示したＦＦ１００は、図１に示したＦＦ１００ａ〜１００ｃに対応する。
【００３３】
図２に示すように、ＦＦ１００は、マスタラッチ１１０と、スレイブラッチ１２０とを含む。マスタラッチ１１０は、データインＤと、スキャンインＳＩと、トランジスタ１１１と、トランジスタ１１２と、トランジスタ１１３と、ＮＯＴ回路１１４とを有する。
【００３４】
データインＤは、任意のデータが入力される。トランジスタ１１１は、ＣＫ（クロック）と呼ばれるクロック信号によってデータの伝搬が制御される。なお、データインＤおよびトランジスタ１１１は、スキャンテスト時におけるＦＦの動作と関連しないため、ここでは詳細な説明を省略する。
【００３５】
スキャンインＳＩは、隣接するＦＦのスキャンアウトＳＯと接続され、スキャンアウトＳＯから出力されるデータを受け付ける。トランジスタ１１２は、ＡＣＫによってデータの伝搬が制御される。具体的には、ＡＣＫが印加された場合、隣接するＦＦのスキャンアウトＳＯから出力されるデータは、かかるスキャンアウトＳＯと接続されているスキャンインＳＩを伝搬して、ＦＦ１００のマスタラッチ１００に入力される。一方、ＡＣＫが印加されていない場合、すなわち、ＡＣＫがオフである場合、隣接するＦＦのスキャンアウトＳＯから出力されるデータは、スキャンインＳＩを伝搬せず、ＦＦ１００のマスタラッチ１００に入力されない。なお、トランジスタ１１２は、マスタ伝搬素子の一例として挙げられる。
【００３６】
トランジスタ１１３は、負極性のクリア信号である−ＣＬによって制御されるＰｃｈ（Ｐチャンネル）のトランジスタである。具体的には、トランジスタ１１３は、クリア信号が印加された場合、データ「１」を出力する。かかるトランジスタ１１３から出力されたデータ「１」は、ＮＯＴ回路１１４に入力される。なお、トランジスタ１１３は、マスタ設定素子の一例として挙げられる。
【００３７】
ＮＯＴ回路１１４は、ＮＯＴ演算を行う回路である。例えば、クリア信号が印加された場合、上述したように、ＮＯＴ回路１１４にはデータ「１」が入力されるので、ＮＯＴ回路１１４は、データ「０」を出力することになる。すなわち、ＦＦ１００に対してクリア信号が印加された場合、マスタラッチ１１０側には、データ「０」が保持されることになる。
【００３８】
また、図２に示すように、スレイブラッチ１２０は、スキャンアウトＳＯと、トランジスタ１２１と、トランジスタ１２２と、トランジスタ１２３と、トランジスタ１２４と、ＮＯＴ回路１２５とを有する。
【００３９】
スキャンアウトＳＯは、隣接するＦＦのスキャンインＳＩと接続され、接続先のスキャンインＳＩにデータを出力する。上述したように、ＡＣＫが印加された場合、スキャンアウトＳＯから出力されるデータは、かかるスキャンアウトＳＯと接続されているスキャンインＳＩを伝搬して、接続先のＦＦのマスタラッチ１００に入力される。
【００４０】
トランジスタ１２１は、ＢＣＫによってデータの伝搬が制御される。トランジスタ１２２は、マスタラッチ１１０とスレイブラッチ１２０とを接続する。したがって、ＢＣＫが印加された場合、マスタラッチ１１０のＮＯＴ回路１１４から出力されるデータは、スレイブラッチ１２０に入力される。一方、ＢＣＫが印加されていない場合、マスタラッチ１１０のＮＯＴ回路１１４から出力されるデータは、スレイブラッチ１２０に伝搬しない。なお、トランジスタ１２１は、スレイブ伝搬素子の一例として挙げられる。
【００４１】
トランジスタ１２３は、正極性のクリア信号である＋ＣＬによって制御されるＮｃｈ（Ｎチャンネル）のトランジスタである。具体的には、クリア印加が行われた場合、トランジスタ１２３は、データ「０」を出力する。トランジスタ１２４は、負極性のＢＣＫである−ＢＣＫによってデータの伝搬が制御される。ＮＯＴ回路１２５は、ＮＯＴ演算を行う回路である。
【００４２】
したがって、ＢＣＫが印加された場合、トランジスタ１２４によってデータの伝搬が行わないため、トランジスタ１２３から出力されるデータは、ＮＯＴ回路１２５に出力されない。一方、ＢＣＫが印加されない場合、トランジスタ１２４によってデータの伝搬が行われるため、トランジスタ１２３から出力されるデータは、ＮＯＴ回路１２５に出力される。なお、トランジスタ１２３および１２４は、スレイブ設定素子の一例として挙げられる。
【００４３】
以上のことから、ＢＣＫが印加されていない状態でクリア信号が印加された場合、トランジスタ１２３から出力されるデータ「０」は、ＮＯＴ回路１２５へ出力される。そして、ＮＯＴ回路１２５は、データ「１」を保持することになる。すなわち、ＢＣＫが印加されていない状態でクリア印加された場合、スレイブラッチ１２０側には、データ「１」が保持されることになる。
【００４４】
一方、ＢＣＫ印加時にクリア信号が印加された場合、トランジスタ１２３から出力されるデータ「０」は、ＮＯＴ回路１２５に入力されず、マスタラッチ１１０からデータが伝搬される。上述したように、クリア印加時にマスタラッチ１１０はデータ「０」を保持しているため、マスタラッチ１１０からデータ「０」がトランジスタ１２２に入力され、トランジスタ１２２からデータ「１」がＮＯＴ回路１２５へ出力される。そして、ＮＯＴ回路１２５は、データ「０」を出力することになる。すなわち、ＢＣＫ印加時にクリア印加された場合、スレイブラッチ１２０側には、データ「０」が保持されることになる。
【００４５】
このように、実施例１に係るＦＦ１００は、ＢＣＫ非印加時にクリア信号が印加される場合と、ＢＣＫ印加時にクリア信号が印加される場合とによって、スレイブラッチ１２０側に保持するデータを「０」または「１」にすることができる。
【００４６】
図３および図４を用いて具体的に説明する。図３は、ＢＣＫ非印加時にＦＦ１００によって保持されるデータの一例を示す図である。また、図４は、ＢＣＫ印加時にＦＦ１００によって保持されるデータの一例を示す図である。なお、図３および図４において、ＡＣＫは印加されないものとする。
【００４７】
図３に示すように、ＢＣＫ非印加時にクリア信号が印加された場合、ＦＦ１００のマスタラッチ１１０側にはデータ「０」が保持され、スレイブラッチ１２０側にはデータ「１」が保持される。この後に、ＡＣＫが印加された場合、スレイブラッチ１２０に保持されているデータは、マスタラッチ１１０に伝搬するので、マスタラッチ１１０には、データ「１」が保持されることになる。このため、ＦＦ１００は、データ「１」を保持することになる。
【００４８】
一方、図４に示すように、ＢＣＫ印加時にクリア信号が印加された場合、ＦＦ１００のマスタラッチ１１０側にはデータ「０」が保持され、スレイブラッチ１２０側にはデータ「０」が保持される。このため、ＦＦ１００は、データ「０」を保持することになる。
【００４９】
すなわち、実施例１に係るＦＦ１００は、データ「０」または「１」を設定することができる。このため、実施例１に係るＦＦ１００を用いてスキャンテストを行った場合、０縮退故障および１縮退故障が発生した箇所を特定することができる。
【００５０】
［適用例］
次に、図５および図６を用いて、実施例１に係るＦＦ１００を用いて、０縮退故障が発生した箇所を特定するスキャンテストの例について説明する。図５および図６は、実施例１に係るＦＦ１００の適用例を説明する図である。図５に示した例では、ＦＦ１００ａ〜１００ｅがシリアルに接続されている例を示している。そして、図５に示した例では、ＦＦ１００ｃとＦＦ１００ｄとの間の接続が故障している例を示している。
【００５１】
ここで、図６の「イベント」に示した処理を行った場合に、ＦＦ１００ａ〜１００ｅに保持されるデータの状態について説明する。なお、ここでは、図６に示した時刻ｔ１、ｔ２、ｔ３、ｔ４、ｔ５の順に処理を行うものとする。
【００５２】
まず、時刻ｔ１に、ＦＦ１００ａ〜１００ｅに対してクリア信号が印加された場合、図６に示すように、ＦＦ１００ａ〜１００ｅ各々のマスタラッチはデータ「０」を保持し、スレイブラッチはデータ「１」を保持する。
【００５３】
続いて、時刻ｔ２に、ＦＦ１００ａ〜１００ｅに対してＡＣＫ印加を行った場合、各ＦＦのスキャンアウトＳＯから出力されるデータは、かかるスキャンアウトＳＯと接続されているスキャンインＳＩを伝搬して、接続先のマスタラッチに入力される。例えば、ＦＦ１００ａのスキャンアウトＳＯから出力されるデータは、ＦＦ１００ｂのマスタラッチに入力され、ＦＦ１００ｂのスキャンアウトＳＯから出力されるデータは、ＦＦ１００ｃのマスタラッチに入力される。すなわち、図６に示した例では、ＦＦ１００ａ〜１００ｅに設定される期待値は、「１１１１１・・・」となる。
【００５４】
ただし、ここでは、ＦＦ１００ｃとＦＦ１００ｄとの間の接続が故障しているので、ＦＦ１００ｃのスキャンアウトＳＯから出力されるデータは、ＦＦ１００ｄのマスタラッチに入力されない。すなわち、図６の時刻ｔ２の行に示したように、ＦＦ１００ｄのマスタラッチには、データ「０」が保持されたままとなる。
【００５５】
続いて、時刻ｔ３に、ＦＦ１００ａ〜１００ｅに対してＢＣＫが印加された場合、各ＦＦ内において、マスタラッチからスレイブラッチへデータが伝搬する。例えば、ＦＦ１００ａのマスタラッチからスレイブラッチへデータ「１」が伝搬し、ＦＦ１００ｂのマスタラッチからスレイブラッチへデータ「１」が伝搬する。
【００５６】
ただし、ここでは、ＦＦ１００ｄのマスタラッチはデータ「０」を保持しているので、ＦＦ１００ａのマスタラッチからスレイブラッチへデータ「０」が伝搬する。すなわち、図６の時刻ｔ３の行に示したように、ＦＦ１００ｄのスレイブラッチには、データ「０」が保持される。
【００５７】
このようにして、ＦＦ１００ａ〜１００ｅに対してＡＣＫ印加とＢＣＫ印加とを交互に行うことにより、スキャンシフトを行う。そして、ＦＦ１００ｅのスキャンアウトＳＯから出力されるデータ「１１１１０・・・」と、期待値「１１１１１・・・」とを比較することにより、１縮退故障が発生した箇所を特定することができる。具体的には、上記例の場合、ＦＦ１００ｅのスキャンアウトＳＯから出力されるデータのうち、先頭から５番目の値が期待値と異なる。これにより、ＦＦ１００ｃとＦＦ１００ｄとの間で０縮退故障が発生していることを特定することができる。
【００５８】
なお、上記では、実施例１に係るＦＦ１００を用いて、１縮退故障が発生した箇所を特定するスキャンテストの例について説明を省略した。しかし、ＢＣＫがオンである状態でクリア信号を印加することにより、実施例１に係るＦＦ１００を用いて、１縮退故障が発生した箇所を特定するスキャンテストを行うこともできる。
【００５９】
［スキャンテスト処理手順］
次に、図７を用いて、実施例１に係るＦＦ１００を用いたスキャンテスト処理の手順について説明する。図７は、実施例１に係るＦＦ１００を用いたスキャンテスト処理手順を示すフローチャートである。なお、ここでは、０縮退故障が発生した箇所を特定するスキャンテスト処理手順について説明する。
【００６０】
まず、実施例１に係るＦＦ１００は、スキャンチェーンによって接続される。そして、スキャンチェーンによって接続されたＦＦ１００は、図７に示すように、ＢＣＫが印加されていない状態でクリア信号が印加される（ステップＳ１０１）。これにより、ＦＦ１００のマスタラッチはデータ「０」を保持し、スレイブラッチはデータ「１」を保持する。
【００６１】
続いて、ＦＦ１００は、ＡＣＫが印加される（ステップＳ１０２）。これにより、各ＦＦのスキャンアウトＳＯから出力されるデータは、かかるスキャンアウトＳＯと接続されているスキャンインＳＩを伝搬して、接続先のマスタラッチに入力される。すなわち、マスタラッチは、接続先のスレイブラッチから出力されるデータを保持する。
【００６２】
続いて、ＦＦ１００は、ＢＣＫが印加される（ステップＳ１０３）。これにより、各ＦＦ内において、マスタラッチからスレイブラッチへデータが伝搬する。すなわち、スレイブラッチは、マスタラッチから出力されるデータを保持する。
【００６３】
続いて、スキャンチェーンによって接続されたＦＦの数の分だけスキャンシフトが行われていない場合（ステップＳ１０４否定）、ＦＦ１００は、再度ＡＣＫが印加される（ステップＳ１０２）。ＦＦ１００は、ＦＦの数の分だけスキャンシフトが行われるまで、上記ステップＳ１０２およびＳ１０３における処理手順が行われる。
【００６４】
そして、スキャンチェーンによって接続されたＦＦの数の分だけスキャンシフトが行われた場合（ステップＳ１０４肯定）、各ＦＦ１００に設定した期待値と、ＦＦ１００のスキャンアウトＳＯから出力される出力データとが比較されることにより、スキャンテストが行われる。
【００６５】
［実施例１の効果］
上述してきたように、実施例１に係るＦＦ１００は、データ「０」および「１」の双方を設定することができる。これにより、実施例１に係るＦＦを用いてスキャンテストを行う場合、０縮退故障および１縮退故障が発生した箇所を特定することができる。
【００６６】
また、図２に示したように、実施例１に係るＦＦ１００は、トランジスタ１２３および１２４を含む制御線によって、データ「１」を設定することが可能になる。すなわち、実施例１に係るＦＦ１００は、データ「１」を設定するピンが設けられた従来のＦＦと比較して、回路規模が小さい。このように、実施例１に係るＦＦ１００は、トランジスタ１２３および１２４を含む制御線が追加されただけで、０縮退故障および１縮退故障が発生した箇所を特定することが可能になる。
【実施例２】
【００６７】
ところで、本願の開示する記憶回路、集積回路およびスキャン方法は、上述した実施例以外にも、種々の異なる形態にて実施されてよい。そこで、実施例２では、本願の開示する記憶回路、集積回路およびスキャン方法の他の実施例について説明する。
【００６８】
［システム構成等］
上記実施例１および２において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６９】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【符号の説明】
【００７０】
１００  ＦＦ
１００ａ〜１００ｅ  ＦＦ
１１０  マスタラッチ
Ｍ１１０ａ〜Ｍ１１０ｃ  マスタラッチ
Ｍ１１１ａ〜Ｍ１１１ｃ  マスタラッチ設定回路
１１１〜１１３  トランジスタ
１１４  ＮＯＴ回路
１２０  スレイブラッチ
Ｓ１２０ａ〜Ｓ１２０ｃ  スレイブラッチ
Ｓ１２１ａ〜Ｓ１２１ｃ  スレイブラッチ設定回路
１２１〜１２４  トランジスタ
１２５  ＮＯＴ回路
【図１】
2011007761.tif 000003
【図２】
2011007761.tif 000004
【図３】
2011007761.tif 000005
【図４】
2011007761.tif 000006
【図５】
2011007761.tif 000007
【図６】
2011007761.tif 000008
【図７】
2011007761.tif 000009