(57)【要約】【課題】通常時と同じ動作条件でメモリ試験を行う。【解決手段】メモリを試験するメモリ試験回路であって、メモリの動作がテストモードか通常動作モードかを規定するテスト信号と、メモリから読み出されるデータが有すると期待される値を示す期待値との論理を取る第１の回路２１と、第１の回路の出力信号とメモリから読みだされた読出しデータとの排他的論理和を出力する第２の回路２２と、を備えるメモリ試験回路が提供される。【選択図】図２
2010211863.tif 000002
【特許請求の範囲】
【請求項１】
メモリを試験するメモリ試験回路であって、
前記メモリの動作がテストモードか通常動作モードかを規定するテスト信号と、前記メモリから読み出されるデータが有すると期待される値を示す期待値との論理を取る第１の回路と、
前記第１の回路の出力信号と前記メモリから読みだされた読出しデータとの排他的論理和を出力する第２の回路と、
を備えるメモリ試験回路。
【請求項２】
前記第２の回路は、前記読出しデータを制御端子又はソース端子に入力するトランスファーゲート回路を含む請求項１に記載のメモリ試験回路。
【請求項３】
前記第２の回路は、前記トランスファーゲート回路を２つ含み、
前記メモリが通常動作モードの場合、前記テスト信号を負論理と規定することにより、前記メモリが通常動作モードの場合、一方のトランスファーゲート回路の制御端子に電流が流れない請求項２に記載のメモリ試験回路。
【請求項４】
メモリと、
システムクロック信号と同期して前記メモリからのデータ読出しを指示する第１の命令信号を出力する命令部と、
前記システムクロック信号と同期して、前記メモリのテストを指示する第２の命令信号と、前記メモリから読み出されるデータが有すると期待される値を示す期待値とを出力するテスト信号生成部と、
前記メモリの動作がテストモードか、あるいは通常動作モードかを規定するテスト信号を出力するテスト信号出力部と、
前記テスト信号と、前記期待値との論理を取る第１の回路と、
前記第１の回路の出力信号と、前記メモリから読み出された読出しデータとの排他的論理和を出力する第２の回路と、
を備えるプロセッサ。
【請求項５】
前記第２の回路は、前記読出しデータを制御端子又はソース端子に入力するトランスファーゲートを含む請求項４に記載のプロセッサ。
【請求項６】
前記第２の回路は、２つの前記トランスファーゲート回路を含み、
前記メモリが通常動作モードの場合、前記テスト信号を負論理と規定することにより、前記メモリが通常動作モードの場合、一方の前記トランスファーゲート回路の制御端子に電流が流れない請求項５に記載のプロセッサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ試験回路、及びプロセッサに関する。
【背景技術】
【０００２】
メモリ試験に、自己試験（Built In Self Test）方式が使われている。以下、自己試験をＢＩＳＴと称す。ＢＩＳＴでは、テストパターンを生成し、生成したテストパターンに従ってテスト対象となるメモリにデータを読み書きし、そして、メモリから読み出した値と、期待値とを評価することで、メモリ試験を行う。
【０００３】
ＢＩＳＴを行う場合、テストパターン生成回路から出力する動作パターンに基づくメモリ出力値と、テストパターン生成回路から出力される期待値とを比較する回路が設けられる。そのため、通常メモリ使用時のメモリ出力パスと異なるパスに、メモリ出力とテストパターン生成回路から出力される期待値とを比較する回路を設けるメモリ試験装置が提案されている。ＢＩＳＴを行う技術として、例えば特許文献１があげられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平２００４−３０７８３号広報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
メモリ試験用の期待値比較器は、複数の論理ゲートを有する。そのため、期待値比較器を通常のメモリ出力パスと別個に設けると、期待値比較器を通過する信号は、通常のメモリ出力パスよりも論理ゲートの多いパスを通過するため、期待値比較器を通過する信号は、通常時のメモリ出力信号と比して遅延が生じる。さらに、通常時のクロック周波数は期待値比較器を通過するパスに基づいて設定されていないため、通常時のクロック周波数を用いて期待値比較器を通過するメモリの試験を行うと誤動作が生じ得る。そのため、テスト時のクロック周波数は、期待値比較器の信号遅延を考慮して、通常時のクロック周波数より低めに設定する。しかしながら、このような通常時より低いクロック周波数を用いたメモリ試験は、通常時のクロック周波数によるメモリ試験ではないため、通常時のメモリ動作をテストすることは出来ない。
【０００６】
本発明の一形態は、通常時と同じ動作条件でメモリ試験を行うことを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、メモリ試験回路が提供される。
メモリの動作がテストモードか通常動作モードかを規定するテスト信号と、メモリから読み出されるデータが有すると期待される値を示す期待値との論理を取る第１の回路と、第１の回路の出力信号とメモリから読みだされた読出しデータとの排他的論理和を出力する第２の回路と、の出力信号と読出しデータとの排他的論理和を出力する第２の回路と、を備える。
【発明の効果】
【０００８】
本発明の一形態は、通常時と同じ動作条件でメモリ試験を行うことが出来る。
【図面の簡単な説明】
【０００９】
【図１】メモリ試験回路を含むプロセッサの一例を示す図である。
【図２】メモリ試験回路２０の一例を示す図である。
【図３】第１の論理回路２１の一例を示す図である。
【図４】第２の論理回路２２の一例を示す図である。
【図５Ａ】テスト信号test、読出しデータmout、及び期待値EXPDの組み合わせ表の一例を示す図である。
【図５Ｂ】検証値を論理演算により求めるために、図５Ａに示す表を並べなおした表の一例を示す図である。
【図６Ａ】ＮＡＮＤ回路を用いたメモリ試験回路の第１実施例を示す図である。
【図６Ｂ】ＮＡＮＤ回路２２ａ−４、２２ａ−５の一例を示す図である。
【図７Ａ】テストモードにおけるメモリ試験回路２０ａを流れる信号のタイミングチャートである。
【図７Ｂ】通常動作モードにおけるメモリ試験回路２０ａを流れる信号のタイミングチャートである。
【図８】トランスファーゲート回路を用いたメモリ試験回路の第２実施例を示す図である。
【図９Ａ】テストモードにおけるメモリ試験回路２０ｂを流れる信号のタイミングチャートである。
【図９Ｂ】通常動作モードにおけるメモリ試験回路２０ｂを流れる信号のタイミングチャートである。
【図１０】トランスファーゲート回路を用いたメモリ試験回路の第３実施例を示す図である。
【図１１Ａ】テストモードにおけるメモリ試験回路２０ｃを流れる信号のタイミングチャートである。
【図１１Ｂ】通常動作モードにおけるメモリ試験回路２０ｃを流れる信号のタイミングチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、メモリ試験回路を含むプロセッサの実施形態を説明する。
図１は、メモリ試験回路を含むプロセッサの一例を示す図である。図１に示すように、本実施形態によるメモリ試験回路を含むプロセッサ１０は、命令生成ユニット１１、テストパターン生成回路１２、マルチプレクサ（ＭＵＸ）１３ａ〜１３ｃ、メモリ１４、パイプラッチ回路ユニット（ＰＩＰ）１５、テスト信号発生回路１６、及びメモリ試験回路２０を有する。図１に示すように、メモリ試験回路２０の後段に出力ラッチ回路１７、及び回路ユニット１８を有しても良い。以下、プロセッサ１０の各構成要素について順に説明する。
【００１１】
命令生成ユニット１１は、四則演算や論理演算などの演算処理を実行する装置である。命令生成ユニット１１は、プロセッサ１０外部に配置されたメインメモリから命令を読み出し、その命令を実行することにより、各種の計算や制御を行う。命令生成ユニットは、ＡＤ、ＷＤ、ＷＥの信号をメモリ１４に出力する。なお、ＡＤはアドレスデータ信号、ＷＤは書込みデータ信号、ＷＥは書込み許可信号を示す。
【００１２】
図１に示すＣＬＫは、プロセッサ１０外部のクロック発生器から生成されたシステムクロック信号を示す。図１に示すＥＸＰＤは、後述するメモリセルアレイ１４−６から出力されるデータの期待値を示す。
【００１３】
テストパターン生成回路１２は、システムクロック信号ＣＬＫを入力し、そのシステムクロック信号ＣＬＫに同期したテストパターンを生成する。テストパターンは、アドレスデータ信号ＡＤtest、書込みデータ信号ＷＤtest、書込み許可信号ＷＥtestを含む。テストパターンの一例は、メモリ１４の説明と共に後述する。
テストパターン生成回路１２は、テスト用のアドレスデータ信号ADtestをマルチプレクサ１３ａに出力する。テストパターン生成回路１２は、テスト用の書込みデータ信号WDtestをマルチプレクサ１３ｂに出力する。テストパターン生成回路１２は、テスト用の書込み許可信号WEtestをマルチプレクサ１３ｃに出力する。テストパターン生成回路１２は、書込みデータ信号ＷＤtestを、期待値EXPDとしてパイプラッチ回路ユニット１５に出力する。
【００１４】
図１に示すtestはテスト信号である。テスト信号testは、メモリの動作がテストモードであることを示す論理値、又は、メモリの動作が通常動作モードであることを示す論理値のいずれかの値を取る。
なお、テスト信号発生回路１６は、プロセッサ１０内の図示しない制御レジスタの値に従って、テスト時を示す論理値、又は、非テスト時を示す論理値のいずれかのテスト信号testを出力する。
【００１５】
マルチプレクサ１３ａ〜１３ｃは、テスト信号testに従って、複数の入力信号から１つの信号を選択して出力する回路である。言い換えれば、マルチプレクサ１３ａ〜１３ｃが、メモリの動作がテストモードであることを規定するテスト信号testを入力すると、テストパターン生成回路１２から出力されるテスト用の信号を選択して出力する。そして、マルチプレクサ１３ａ〜１３ｃが、メモリの動作が通常動作モードであることを規定するテスト信号testを入力すると、命令生成ユニット１１から出力されるテスト用の信号を選択して出力する。
【００１６】
マルチプレクサ１３ａは、命令生成ユニット１１から出力されるアドレスデータ信号ＡＤ、又は、テストパターン生成回路１２から出力されるテスト用のアドレスデータ信号ADtestを入力し、且つテスト信号testに従っていずれかのアドレスデータ信号を出力する。
マルチプレクサ１３ｂは、命令生成ユニット１１から出力される書込みデータ信号ＷＤ、又は、テストパターン生成回路１２から出力されるテスト用の書込みデータ信号WDtestを入力し、且つテスト信号testに従っていずれかの書込みデータ信号を出力する。
マルチプレクサ１３ｃは、命令生成ユニット１１から出力される書込み許可信号ＷＥ、又は、テストパターン生成回路１２から出力されるテスト用の書込み許可信号WEtestを入力し、且つテスト信号testに従っていずれかの書込み許可信号を出力する。
【００１７】
メモリ１４は、メインメモリに格納されるデータの一部を保持することにより、命令生成ユニット１１の演算速度とメインメモリからのデータ読出し速度の速度差を埋めるために用いる高速小容量メモリである。メモリ１４は、ＤＲＡＭ（Dynamic Random Access Memory）であっても良いが、ＤＲＡＭと比して高速動作可能なＳＲＡＭ（Static Random Access Memory）が好ましい。
図１に示すメモリ１４は、アドレスラッチ回路（Ａｄｄ）１４−１、書込みデータ信号ラッチ回路（Ｄｉｎ）１４−２、書込み許可信号ラッチ回路（ＷＥ）１４−３、デコーダ回路（Ｄｅｃ）１４−４、書込み回路（Ｗｒ）１４−５、メモリセルアレイ１４−６を有する。さらに、メモリ１４は、読出し回路（Ｒｅａｄ）１４−７、タイマ１４−８、及び期待値ラッチ回路（ＥＸＰ）１４−９を有する。
【００１８】
アドレスラッチ回路１４−１はアドレスデータ信号を、書込みデータ信号ラッチ回路１４−２は書込みデータ信号を、書込み許可信号ラッチ回路１４−３は書込み許可信号をそれぞれラッチする。デコーダ回路１４−４は、アドレスラッチ回路１４−１に格納されたアドレスをデコードする。書込み回路１４−５は、書込み許可信号ラッチ回路１４−３からの書き込み許可信号がアサートされている期間に、デコーダ回路１４−４でデコードされたアドレスのメモリセルに書込みデータ信号を書込む。読出し回路１４−７は、書込み許可信号ラッチ回路１４−３からの書き込み許可信号がネゲートされている期間に、デコーダ回路１４−４でデコードされたアドレスのメモリセルからデータを読み出す。タイマ１４−８は、システムクロック信号ＣＬＫを取得し、各回路にシステムクロック信号ＣＬＫを伝送する。読出し回路１４−７は、メモリセルアレイ１４−６から伝送される読出しデータmoutを入力し、読出しデータmoutをメモリ試験回路２０に出力する回路である。期待値ラッチ回路１４−９は、テストパターン生成回路１２から出力されパイプラッチ回路ユニット１５を経て出力された期待値EXPDを格納するラッチ回路である。
【００１９】
テストパターン生成回路１２が生成するテストパターンの一例を説明する。以下に例示するテストパターンは、３つのステップを有する。
第１のステップでは、テスト用の書込みデータ信号WDtestを、メモリセルアレイ１４−６に書き込む動作が行われる。デコーダ回路１４−４は、テスト用のアドレスデータ信号ADtestによって指定されるメモリセルアレイ１４−６のアドレス線に電圧を印加する。そして、書込み回路１４−５は、書き込み許可信号がアサートされている期間に、アドレス線で指定されるセルに書込みデータ信号WDtest「０」を書き込む。このような、テスト用の書込みデータ信号WDtest「０」の書込み動作は、アドレスの昇順又は降順で全てのメモリセルに行われる。
【００２０】
第２のステップでは、アドレスの昇順にメモリセルからデータ信号「０」を読出す動作と共に、同じメモリセルにデータ信号「１」を書込む動作が行われる。デコーダ回路１４−４は、テスト用のアドレスデータ信号ADtestによって指定されるメモリセルアレイ１４−６のアドレス線に電圧を印加する。そして、書込み回路１４−５は、書き込み許可信号がネゲートされている期間に、アドレス線で指定されるセルからデータ信号「０」を読み込む。第２のステップのデータ信号の書込み動作は、第１のステップで説明した書込み動作と同じ動作を、書込みデータ信号Wdtest「１」について行う。
【００２１】
第３のステップでは、アドレスの降順にメモリセルからデータ信号「１」を読出す動作と共に、同じメモリセルにデータ信号「０」を書込む動作を行う。データ信号の読出し動作については、第２のステップで説明した読出し動作と同じ動作を行う。データ信号の書込み動作については、第１のステップで説明した書込み動作と同じである。
【００２２】
テストパターン生成回路１２がこのようなテストパターンを生成することで、メモリ試験回路２０は、メモリセルアレイ１４−６の各セルに一度「０」及び「１」を読み書きするだけでなく、アドレス順番や読み書きタイミングを変えたメモリテストを行うことが出来る。このようなテストパターンにより、メモリ試験回路２０は、アドレス線やデータ線結線の不良や、書込み又は読み込み動作の不具合等を発見するためのテストをあらゆるメモリセルに対して行うことが出来る。
【００２３】
メモリ試験回路２０は、テスト信号testと期待値EXPDとの論理積と、読出しデータmoutとの排他的論理和を、ｒｄｉｎとして出力ラッチ回路１７に出力する。メモリ試験回路２０は、通常時は読出しデータmoutを出力し、テスト時は期待値EXPDと読出しデータmoutとの一致検証値を出力する。一致検証値は、期待値EXPDと読出しデータmoutとが一致する場合、正論理であり、期待値EXPDと読出しデータmoutとが不一致の場合、負論理である。メモリ試験回路２０の詳細は、後述する。
【００２４】
パイプラッチ回路ユニット１５は、複数のパイプラッチ回路を有する。パイプラッチ回路は、テストパターン生成回路１２から出力された期待値EXPDを格納し、システムクロック信号ＣＬＫに同期して順に次段のパイプラッチ回路に出力する機能を有する回路である。パイプラッチ回路ユニット１５は、メモリ１４から出力される読出しデータmoutと、テストパターン生成回路１２から出力される期待値EXPDとが同期してメモリ試験回路２０に出力されるように、メモリ１４内の回路段数に合わせた数のパイプラッチ回路を有する。
【００２５】
出力ラッチ回路１７は、スキャンインＳＩから入力されたスキャンデータをタイマ１４−８からのシステムクロック信号ＣＬＫに応じてシフトし、順次スキャンアウトＳＯから出力する回路であり、スキャンチェーンの一部としてプロセッサ１０に実装される。
【００２６】
回路ユニット１８は、出力ラッチ回路１７を介してメモリ試験回路２０から出力された読出しデータＲＤを利用する。回路ユニット１８は、例えば、命令生成ユニット１１のレジスタに読出しデータを格納するための組合せ論理回路である。
【００２７】
図２は、メモリ試験回路２０の一例を示す図である。メモリ試験回路２０は、第１の論理回路２１と、第２の論理回路２２とを有する。以下、各回路について順に説明する。
【００２８】
第１の論理回路２１は、テスト信号test及び期待値EXPDを入力し、テスト信号test及び期待値EXPDの論理を取る。第１の論理回路２１は、例えば、テスト信号test及び期待値EXPDを入力し、テスト信号test及び期待値EXPDの論理積を取る。
【００２９】
図３は、第１の論理回路の一例を示す図である。
図３に示される第１の論理回路２１の一例である第１の論理回路２１ｄは、ＮＡＮＤ回路２１ｄ−１及びインバータ回路２１ｄ−１を有する。ＮＡＮＤ回路２１ｄ−１及びインバータ回路２１ｄ−１は、図３に示されるように、Complementary Metal Oxide Semiconductor（ＣＭＯＳ）を使用する。
ＮＡＮＤ回路２１ｄ−１は、テスト信号test及び期待値EXPDを入力し、テスト信号testと期待値EXPDとの否定論理積であるNANDを出力する。
インバータ回路２１ｄ−１は、テスト信号testと期待値EXPDとの否定論理積NANDを入力し、否定論理積NANDを反転することで、テスト信号testと期待値EXPDとの論理積信号test∧EXPDを出力する。
【００３０】
図４は、第２の論理回路の一例を示す図である。
図４に示される第２の論理回路２２の一例である第２の論理回路２２ｄは、インバータ回路２２ｄ−１及び２２ｄ−２、及びＮＡＮＤ回路２２ｄ−３、２２ｄ−４及び２２ｄ−５を有する。なお、図４に示すインバータ回路２２ｄ−１、２２ｄ−２は、図３に示すインバータ回路２１ｄ−１と同じ回路構成を有するが、図４では、簡略のためインバータ回路をＭＩＬ記号で示した。また、図４に示すＮＡＮＤ回路２２ｄ−３、２２ｄ−４及び２２ｄ−５は、図３に示すＮＡＮＤ回路２１ｄ−２と同じ回路構成を有するが、図４では、ＮＡＮＤ回路２２ｄ−３、２２ｄ−４及び２２ｄ−５は、簡略のためインバータ回路をＭＩＬ記号で示した。
【００３１】
インバータ回路２２ｄ−１は、読出しデータmoutを入力し、読出しデータmoutの反転信号を出力する。インバータ回路２２ｄ−２は、テスト信号testと期待値EXPDとの論理積信号test∧EXPDを入力し、論理積信号test∧EXPDの反転信号を出力する。
ＮＡＮＤ回路２２ｄ−３は、読出しデータmoutの反転信号と論理積信号test∧EXPDとを入力し、読出しデータmoutの反転信号と論理積信号test∧EXPDとの否定論理積NANDを出力する。ＮＡＮＤ回路２２ｄ−４は、論理積信号test∧EXPDの反転信号と読出しデータmoutとを入力し、論理積信号test∧EXPDの反転信号と読出しデータmoutとの否定論理積NANDを出力する。
ＮＡＮＤ回路２２ｄ−５は、ＮＡＮＤ回路２２ｄ−３の出力信号とＮＡＮＤ回路２２ｄ−４の出力信号とを入力し、ＮＡＮＤ回路２２ｄ−３の出力信号とＮＡＮＤ回路２２ｄ−４の出力信号との否定論理積NANDを出力する。ＮＡＮＤ回路２２ｄ−３の出力信号とＮＡＮＤ回路２２ｄ−４の出力信号との否定論理積NANDは、論理積信号test∧EXPDと読出しデータmoutとの排他的論理和に相当する。
【００３２】
なお、図４に示した第２の論理回路２２ｄは、ド・モルガンの法則によって第２の論理回路２２と同じ論理演算を行う他の論理回路を用いても良い。例えば、第２の論理回路２２は、ＮＡＮＤ回路２２ｄ−５の代わりに、回路２２ｄ−３の出力信号とＮＡＮＤ回路２２ｄ−４の出力信号とを反転させて入力するＮＯＲ回路を用いても良い。
【００３３】
このように、第２の論理回路２２は、第１の論理回路２１の出力信号及び読出しデータmoutを入力し、第１の論理回路２１の出力信号と読出しデータとの排他的論理和を出力ラッチ回路１７に出力する。第２の論理回路２２は、テスト信号testが通常動作モードを示している場合は読出データを出力し、テスト信号testがテストモードを示している場合は期待値EXPDと読出データとの一致検証値を出力する。
このような、第１の論理回路２１及び第２の論理回路２２による論理演算を、以下に図５Ａ及び図５Ｂを用いて説明する。
【００３４】
図５Ａは、テスト信号test、読出しデータmout、及び期待値EXPDの組み合わせ表の一例を示す図である。３１ａは、メモリ１４の動作モードを示す列である。３２ａは、テスト信号testの論理値を示す列である。３３ａは、読出しデータmoutの論理値を示す列である。３４ａは、期待値EXPDの論理値を示す列である。３５ａは、テストモード時には、読出しデータmoutと期待値EXPDとが一致するか否かを検証した結果を示す検証値を示す列である。動作モードがテストモードの場合、列３５ａの負論理「０」は、両データが一致した場合を示し、列３５ａの正論理「１」は、両データが不一致の場合を示す。
また、通常動作モード時は、読出しデータmoutと期待値EXPDとの比較検証を行わないため、通常動作モード時における列３５ａの値は、読出しデータmoutと同じ値となる。
【００３５】
図５Ａに示されるように、列３３ａの読出しデータが「０」のときの列３５ａの検証値は、読出しデータが「１」のときの検証値を反転したものである。例えば、通常動作モードの場合、読出しデータが「０」のとき、検証値は期待値に関わらず「０」であり、読出しデータが「１」のとき、検証値は期待値に関わらず「１」である。また、テストモードの場合、読出しデータが「０」のとき、検証値は期待値が「０」のときには「０」、期待値が「１」のときには「１」であり、読出しデータが「１」のとき、検証値は期待値が「０」のときには「１」、期待値が「１」のときには「０」である。つまり、動作モードが通常動作モードの場合、読出しデータと検証値の値は一致し、動作モードがテストモードの場合、検証値は、テスト信号test、読出しデータmout、期待値EXPDを用いて論理演算出来る。
【００３６】
図５Ｂは、検証値を論理演算により求めるために、図５Ａに示す表を並べなおした表の一例を示す図である。３１ｂは、メモリの動作モードを示す列である。３２ｂは、読出しデータmoutを示す列である。３３ｂは、テスト信号testを示す列である。３４ｂは、期待値EXPDを示す列である。３５ｂは、検証値又は読み出しデータを示す列である。３６ｂは、テスト信号と期待値EXPDとの論理積を示す値である。３７ｂは、テスト信号と期待値との論理積と、読出しデータとの排他的論理和を示す値である。
図５Ｂに示すように、テスト信号testと期待値EXPDの論理積と、読出しデータとの排他的論理和は、検証値又は読み出しデータと一致することがわかる。そのため、メモリ試験回路２０が、テスト信号と期待値との論理積と、読出しデータとの排他的論理和を出力することで、メモリ試験回路２０はテストモードの時に期待値と読出しデータとの一致検証値を出力し、通常動作モード信号の時、読出しデータを出力する。そして、テストモード及び通常モードの両ケースにおいて、メモリ試験回路２０は使用される。そのため、メモリ試験回路２０は、通常動作時のシステムクロック信号ＣＬＫを用いて、メモリ性能をテストすることが出来る。
【００３７】
以下、図２に示したメモリ試験回路２０を、テスト信号test及び期待値EXPDの論理積と、読出しデータmoutとの排他的論理和を出力する回路を用いたメモリ試験回路の実施例を説明する。
【００３８】
（第１の実施例）
図６Ａは、ＮＡＮＤ回路を用いたメモリ試験回路の第１実施例を示す図である。
図６Ｂは、ＮＡＮＤ回路２２ａ−４、２２ａ−５の回路構成の一例を示す図である。
【００３９】
図６Ａに示すメモリ試験回路２０ａは、ＮＡＮＤ回路２１ａ、２２ａ−４〜２２ａ−６、及びINVERTER回路２２ａ−１〜２２ａ−３を含む。ＮＡＮＤ回路２１ａは、図２に示す第１の論理回路２１の一例である。INVERTER回路２２ａ−１〜２２ａ−３およびＮＡＮＤ回路２２ａ−４〜２２ａ〜６は、図２に示す第２の論理回路２２の一例である。
【００４０】
図６Ａに示すｎｄ２１は、INVERTER回路２２ａ−１の出力信号である。図６Ａに示すｎｄ２２は、INVERTER回路２２ａ−２の出力信号である。図６Ａに示すｎｄ２３は、INVERTER回路２２ａ−３の出力信号である。図６Ａに示すｎｄ２４は、ＮＡＮＤ回路２１ａの出力信号である。図６Ａに示すｎｄ３５は、ＮＡＮＤ回路２２ａ−４の出力信号である。図６Ａに示すｎｄ３６は、ＮＡＮＤ回路２２ａ−５の出力信号である。
【００４１】
ＮＡＮＤ回路２１ａは、期待値EXPDとテスト信号testとを入力し、信号ｎｄ２４を出力する。信号ｎｄ２４は、期待値EXPDとテスト信号testとの否定論理積の信号である。
【００４２】
INVERTER回路２２ａ−３は、信号ｎｄ２４を入力し、信号ｎｄ２３を出力する。INVERTER回路２２ａ−１は、読出しデータmoutを入力し、信号ｎｄ２１を出力する。INVERTER回路２２ａ−２は、信号ｎｄ２１を入力し、信号ｎｄ２２を出力する。ＮＡＮＤ回路２２ａ−４は、信号ｎｄ２２及び信号ｎｄ２４を入力し、信号ｎｄ３５を出力する。ＮＡＮＤ回路２２ａ−５は、信号ｎｄ２１及び信号ｎｄ２３を入力し、信号ｎｄ３６を出力する。ＮＡＮＤ回路２２ａ−６は、信号ｎｄ３５及び信号ｎｄ３６を入力し、信号ｒｄｉｎを出力ラッチ１７に出力する。
【００４３】
なお、図６Ｂに示すように、ＮＡＮＤ回路２２ａ−４又はＮＡＮＤ回路２２ａ−５は、ゲート段数が２段である回路により回路設計される。Ｖｄｄは電源電圧を有する。
【００４４】
図７Ａは、テストモードにおいてメモリ試験回路２０ａを流れる信号のタイミングチャートである。図７Ａに示す時間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれシステムクロック信号ＣＬＫの１サイクルの始まりを示す。以下、メモリ試験回路２０ａを流れる信号について時間区間毎に説明する。また、メモリ試験回路２０ａはテストモードであるため、図７Ａに示す時間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、テスト信号testは「１」である。なお、図５Ｂでも示したように、一致検証値を出力する出力ラッチ回路１７の出力信号「０」は、読出しデータmoutと期待値EXPDの一致を示し、出力信号「１」は読出しデータmoutと期待値EXPDの不一致を示す。
【００４５】
図７Ａに示す時間区間［Ｔ０，Ｔ１］のタイミングチャートを説明する。
図７Ａに示す時間区間［Ｔ０，Ｔ１］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「０」になることで一致検証値を出力する場合の各信号を示す。
【００４６】
Ｔ０で期待値EXPDが「１」から「０」に変わると、「０」の期待値EXPD及び「１」のテスト信号testを入力とするＮＡＮＤ回路２１ａから出力する信号ｎｄ２４は、ｔ１０１で「０」から「１」になる。信号ｎｄ２３は、「１」の信号ｎｄ２４を入力するＮＡＮＤ回路２２ａ−２の出力であるため、ｔ１０２で「１」から「０」になる。ＮＡＮＤ回路２２ａ−５は、「１」の信号ｎｄ２１及び「０」の信号ｎｄ２３を入力するため、ｔ１０３で「０」から「１」に変化した信号ｎｄ３６を出力する。ＮＡＮＤ回路２２ａ−４は、「０」の信号ｎｄ２２及び「１」の信号ｎｄ２４を入力するため、［Ｔ０，Ｔ１］の期間中、値が「１」の信号ｎｄ３５を出力する。そして、「１」の信号ｎｄ３５及び「１」の信号ｎｄ３６を入力するＮＡＮＤ回路２２ａ−６は、ｔ１０４で「１」から「０」に変化した信号ｒｄｉｎを出力する。
信号ｒｄｉｎは、出力ラッチ回路１７に入力し、次サイクル［Ｔ１、Ｔ２］にその値が確定する。その結果、出力ラッチ回路１７から、読出しデータmoutと期待値EXPDの一致を示す値「０」の信号ＲＤが出力される。
【００４７】
図７Ａに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。
図７Ａに示す時間区間［Ｔ１，Ｔ２］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「０」になることで不一致となる場合の信号を示す。
【００４８】
Ｔ１で読出しデータmoutが「０」から「１」に変わると、「１」の読出しデータmoutを入力とするINVERTER回路２２ａ−１の出力の信号ｎｄ２１は、ｔ１０５で「１」から「０」になる。また、「０」の信号ｎｄ２１を入力とするINVERTER回路２２ａ−２の出力の信号ｎｄ２２は、ｔ１０６で「０」から「１」になる。
一方、「０」の期待値EXPD及び「１」のテスト信号testを入力とするＮＡＮＤ回路２１ａの出力の信号ｎｄ２４は、［Ｔ１，Ｔ２］の期間中「１」になる。したがって、ＮＡＮＤ回路２２ａ−４は「１」の信号ｎｄ２２及び「１」の信号ｎｄ２４を入力するため、ＮＡＮＤ回路２２ａ−４はｔ１０７で「１」から「０」に変化した信号ｎｄ３５を出力する。
また、ＮＡＮＤ回路２２ａ−５は、「０」の信号ｎｄ２１及び「０」の信号ｎｄ２３を入力するため、［Ｔ１，Ｔ２］の期間中「１」の信号ｎｄ３６を出力する。そして、「０」の信号ｎｄ３５及び「１」の信号ｎｄ３６を入力するＮＡＮＤ回路２２ａ−６は、ｔ１０８で「０」から「１」に変化した信号ｒｄｉｎを出力する。
信号ｒｄｉｎは、出力ラッチ回路１７に入力し、次サイクル［Ｔ２、Ｔ３］にその値が確定する。その結果、出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」の信号ＲＤが出力される。
【００４９】
図７Ａに示す時間区間［Ｔ２，Ｔ３］のタイミングチャートを説明する。
図７Ａに示す時間区間［Ｔ２，Ｔ３］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「１」になる場合の信号を示す。
【００５０】
Ｔ２で期待値EXPDが「０」から「１」に変わると、ＮＡＮＤ回路２１ａは、「１」の期待値EXPD及び「１」のテスト信号testを入力するので、「１」から「０」に変化した信号ｎｄ２４を出力する。ＮＡＮＤ回路２２ａ−４は、「０」の信号ｎｄ２４及び「１」の信号ｎｄ２２を入力するため、ｔ１０９で「０」から「１」に変化した信号ｎｄ３５を出力する。そして、ＮＡＮＤ回路２２ａ−６は、「１」の信号ｎｄ３５及び「１」の信号ｎｄ３６を入力するので、ＮＡＮＤ回路２２ａ−６はｔ１１０で「１」から「０」に変化した信号ｒｄｉｎを出力する。
信号ｒｄｉｎは、出力ラッチ回路１７に入力し、次サイクル［Ｔ３、Ｔ４］にその値が確定するので、出力ラッチ回路１７から読出しデータmoutと期待値EXPDの一致を示す値「０」の信号ＲＤが出力される。
【００５１】
図７Ａに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。
図７Ａに示す時間区間［Ｔ３，Ｔ４］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「１」になることで不一致となる場合の信号を示す。
【００５２】
Ｔ３で読出しデータmoutが「１」から「０」に変わると、「０」の読出しデータmoutを入力とするINVERTER回路２２ａ−１から出力する信号ｎｄ２１は、「０」から「１」になる。また、INVERTER回路２２ａ−２は、「１」の信号ｎｄ２１を入力するので、「１」から「０」に変化した信号ｎｄ２２を出力する。ＮＡＮＤ回路２２ａ−５は、「１」の信号ｎｄ２１及び「１」の信号ｎｄ２３を入力するため、ｔ１１１で「１」から「０」に変化した信号ｎｄ３６を出力する。そして、ｔ１１２に示すように、「１」の信号ｎｄ３５及び「０」の信号ｎｄ３６を入力するＮＡＮＤ回路２２ａ−６は、「１」の信号ｒｄｉｎを出力する。
信号ｒｄｉｎは、出力ラッチ回路１７に入力し、次サイクル［Ｔ４、Ｔ５］にその値が確定するので、出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」を持つ信号ＲＤが出力される。出力ラッチ回路１７の信号「１」は不一致を示す。
【００５３】
このように、テスト信号testと期待値EXPDとの論理積と、読出データmoutとの排他的論理和を出力するメモリ試験回路２０ａが、テスト時には期待値EXPDと読出データとの一致検証値を出力することが出来る。
【００５４】
図７Ｂは、通常動作モードにおけるメモリ試験回路２０ａを流れる信号のタイミングチャートである。図７Ｂに示す時間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれクロック信号の１サイクルの始まりを示す。以下、メモリ試験回路２０ａを流れる信号を時間区間毎に説明する。時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、メモリ試験回路２０ａは通常動作モードであるため、図７Ｂに示すテスト信号testは「０」である。
【００５５】
図７Ｂに示す時間区間［Ｔ０，Ｔ１］の各信号の状態を説明する。［Ｔ０，Ｔ１］の期間中、「０」の値の読出し信号moutを入力するINVERTER回路２２ａ−１から出力する信号ｎｄ２１は、［Ｔ０，Ｔ１］の期間中「１」である。Ｔ０で期待値EXPDが「１」から「０」に変わるが、値が「０」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２１ａの出力である信号ｎｄ２４の値は、［Ｔ０，Ｔ１］の期間中「１」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２１が「１」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ａ−２の出力である信号ｎｄ２２は、［Ｔ０，Ｔ１］の期間中「０」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ａ−２の出力である信号ｎｄ２３は、［Ｔ０，Ｔ１］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ０，Ｔ１］の期間中に変化しないため、後段のＮＡＮＤ回路２２ａ−４、２２ａ−５、２２ａ−６の出力信号は、［Ｔ０，Ｔ１］の期間中に変化しない。したがって、［Ｔ０，Ｔ１］の期間中、信号ｎｄ３５の値は「１」であり、信号ｎｄ３６の値は「１」であり、信号ｒｄｉｎの値は「０」であり、信号ＲＤの値は「０」である。
【００５６】
図７Ｂに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。時間区間［Ｔ１，Ｔ２］において、読出し信号moutは「１」である。
Ｔ１で読出し信号moutが「０」から「１」に変わると、読出し信号moutを入力とするINVERTER回路２２ａ−１から出力する信号ｎｄ２１は、「１」から「０」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ａ−２から出力する信号ｎｄ２２は、ｔ１２２で「０」から「１」になる。また、テスト信号test「０」及び期待値EXPD「０」を入力するＮＡＮＤ回路２１ａから出力する信号ｎｄ２４は、［Ｔ１，Ｔ２］の期間中「１」になる。信号ｎｄ２４の「１」を入力するINVERTER回路２２ａ−３から出力する信号ｎｄ２３は、［Ｔ１，Ｔ２］の期間中「０」になる。
【００５７】
ＮＡＮＤ回路２２ａ−４は、「１」の信号ｎｄ２２及び「１」の信号ｎｄ２４を入力し、ｔ１２３で「１」から「０」に変化した信号ｎｄ３５を出力する。ＮＡＮＤ回路２２ａ−５は、「０」の信号ｎｄ２１及び「０」の信号ｎｄ２３を入力し、［Ｔ１，Ｔ２］の期間中「１」の信号ｎｄ３６を出力する。
ＮＡＮＤ回路２２ａ−６は、「０」の信号ｎｄ３５及び「１」の信号ｎｄ３６を入力し、ｔ１２４で「０」から「１」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ２、Ｔ３］に確定する。その結果、出力ラッチ回路１７から「１」の値の信号ＲＤが出力される。
【００５８】
図７Ｂに示す時間区間［Ｔ２、Ｔ３］のタイミングチャートを説明する。［Ｔ２，Ｔ３］の期間中、「１」の値の読出し信号moutを入力するINVERTER回路２２ａ−１から出力する信号ｎｄ２１は、［Ｔ２、Ｔ３］の期間中「０」である。Ｔ２で期待値EXPDが「０」から「１」に変わるが、値が「１」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２１ａの出力である信号ｎｄ２４の値は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２１が「０」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ａ−２の出力である信号ｎｄ２２は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ａ−２の出力である信号ｎｄ２３は、［Ｔ２、Ｔ３］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ２、Ｔ３］の期間中に変化しないため、後段のＮＡＮＤ回路２２ａ−４、２２ａ−５、２２ａ−６の出力信号は、［Ｔ２、Ｔ３］の期間中に変化しない。したがって、［Ｔ２，Ｔ３］の期間中、信号ｎｄ３５の値は「０」であり、信号ｎｄ３６の値は「１」であり、信号ｒｄｉｎの値は「１」であり、信号ＲＤの値は「１」である。
【００５９】
図７Ｂに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。時間区間［Ｔ３，Ｔ４］において、読出し信号moutは「０」である。
Ｔ３で読出し信号moutが「１」から「０」に変わると、読出し信号moutを入力とするINVERTER回路２２ａ−１から出力する信号ｎｄ２１は、ｔ１２５で「１」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ａ−２から出力する信号ｎｄ２２は、ｔ１２６で「１」から「０」になる。また、テスト信号test「０」及び期待値EXPD「１」を入力するＮＡＮＤ回路２１ａから出力する信号ｎｄ２４は、［Ｔ３，Ｔ４］の期間中「１」である。「０」の信号ｎｄ２２と「１」の信号ｎｄ２４とを入力するＮＡＮＤ回路２２ｂ−４から出力する信号ｎｄ３５は、ｔ１２７で「０」から「１」になる。ＮＡＮＤ回路２２ａ−５は、「１」の信号ｎｄ２１及び「０」の信号ｎｄ２３を入力し、「１」の信号ｎｄ３６を出力する。
ＮＡＮＤ回路２２ａ−６は、「１」の信号ｎｄ３５及び「１」の信号ｎｄ３６を入力し、ｔ１２８で「１」から「０」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ４、Ｔ５］に確定し出力ラッチ回路１７から「０」の値の信号ＲＤが出力される。
【００６０】
このように、テスト信号testが論理値「０」の場合、メモリ試験回路２０ａは、読出し信号moutの値をそのまま出力することが出来る。
【００６１】
（第２の実施例）
図８は、トランスファーゲート回路を用いたメモリ試験回路の第２実施例を示す図である。図８に示す２０ｂは、第２実施例に係るメモリ試験回路、２１ｂはNAND回路、２２ｂ−１、２２ｂ−２、２２ｂ−３、及び２２ｂ−６はＮＡＮＤ回路、２２ｂ−４及び２２ｂ−５は、トランスファーゲート回路を示す。１７は、出力ラッチ回路を示す。
【００６２】
メモリ試験回路２０ｂは、ＮＡＮＤ回路２１ｂ、INVERTER回路２２ｂ−１、２２ｂ−２、２２ｂ−３、２２ｂ−６、トランスファーゲート回路２２ｂ−４、２２ｂ−５を含む。テスト信号testと期待値EXPDとを入力するＮＡＮＤ回路２１ｂは、図２に示す第１の論理回路２１の一例である。INVERTER回路２２ｂ−１、２２ｂ−２、２２ｂ−３、２２ｂ−６、トランスファーゲート回路２２ｂ−４、２２ｂ−５は、図２に示す第２の論理回路２２の一例である。
【００６３】
図８に示すｎｄ２１は、INVERTER回路２２ｂ−１の出力信号である。図８に示すｎｄ２２は、INVERTER回路２２ｂ−２の出力信号である。図８に示すｎｄ２４は、ＮＡＮＤ回路２１ｂの出力信号である。図８に示すｎｄ２３は、INVERTER回路２２ｂ−３の出力である。図８に示すｎｄ２５は、トランスファーゲート回路２２ｂ−４、２２ｂ−５の出力信号である。
【００６４】
図８に示されるＮＡＮＤ回路２１ｂ、INVERTER回路２２ｂ−１〜２２ｂ−３は、それぞれ図６Ａに示されるＮＡＮＤ回路２１ａ、INVERTER回路２２ａ−１〜２２ａ−３と同じ回路構成を有するため、説明を省略する。
【００６５】
トランスファーゲート回路は、ｎチャネルトランジスタとｐチャネルトランジスタを並列に配置したものである。トランスファーゲート回路は、各々のトランジスタのゲート端子の入力信号が互いに逆相になるように、各々のトランジスタのゲート端子に信号を入力することで導通又は非導通状態になる。
トランスファーゲート回路２２ｂ−４は、ソース端子に信号ｎｄ２４を入力する。トランスファーゲート回路２２ｂ−４は、pチャネルトランジスタのゲート端子に信号ｎｄ２２を入力し、nチャネルトランジスタのゲート端子に信号ｎｄ２１を入力する。
トランスファーゲート回路２２ｂ−５は、ソース端子に信号ｎｄ２３を入力する。トランスファーゲート回路２２ｂ−５は、pチャネルトランジスタのゲート端子に信号ｎｄ２１を入力し、nチャネルトランジスタのゲート端子に信号ｎｄ２２を入力する。
INVERTER回路２２ｂ−６は、信号ｎｄ２５を入力し、信号ｒｄｉｎを出力する。
【００６６】
図９Ａは、テストモードにおけるメモリ試験回路２０ｂを流れる信号のタイミングチャートである。図９Ａに示す時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれクロック信号の１サイクルの始まりを示す。以下、メモリ試験回路２０ｂを流れる信号のタイミングチャートについて時間区間毎に説明する。メモリ試験回路２０ｂはテストモードであるため、図９Ａに示す時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、図９Ａに示すテスト信号testは「１」である。なお、図５Ｂでも示したように、一致検証値を出力する出力ラッチ回路１７の出力信号「０」は、読出しデータmoutと期待値EXPDの一致を示し、出力信号「１」は読出しデータmoutと期待値EXPDの不一致を示す。
【００６７】
図９Ａに示す時間区間［Ｔ０，Ｔ１］のタイミングチャートを説明する。
図９Ａに示す時間区間［Ｔ０，Ｔ１］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「０」になることで一致するタイミングチャートが示される。
【００６８】
Ｔ０で期待値EXPDが「１」から「０」に変わると、「0」の期待値EXPD及び「１」のテスト信号testを入力とするＮＡＮＤ回路２１ｂから出力する信号ｎｄ２４は、ｔ２０１で「０」から「１」になる。トランスファーゲート回路２２ｂ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「０」であり且つｎチャネルトランジスタのゲート入力の信号ｎｄ２１が「１」であるので、トランスファーゲート回路２２ｂ−４は、導通状態である。一方、トランスファーゲート回路２２ｂ−５は、ｐチャネルトランジスタのゲート入力の信号ｎｄ２１が「１」であり且つｎチャネルトランジスタのゲート入力の信号ｎｄ２２が「０」であるので、トランスファーゲート回路２２ｂ−５は非導通状態である。
【００６９】
導通状態であるトランスファーゲート回路２２ｂ−４は、ソース端子に入力する信号ｎｄ２４がｔ２０１で「０」から「１」になると、ドレイン端子から出力する信号ｎｄ２５はｔ２０２で「０」から「１」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２０３で信号ｎｄ２５の「１」を「０」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ１、Ｔ２］に確定し出力ラッチ回路１７から「０」の値の信号ＲＤが出力される。
【００７０】
図９Ａに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。
図９Ａに示す時間区間［Ｔ１，Ｔ２］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「０」になることで不一致となるタイミングチャートが示される。
【００７１】
Ｔ１で読出しデータmoutが「０」から「１」に変わると、「１」の読出しデータmoutを入力するINVERTER回路２２ｂ−１の出力する信号ｎｄ２１は、ｔ２０４で「１」から「０」になる。また、信号ｎｄ２１を入力とするINVERTER回路２２ｂ−2の出力する信号ｎｄ２２は、「１」から「０」に変わる。トランスファーゲート回路２２ｂ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であるので、導通状態である。一方、トランスファーゲート回路２２ｂ−４はｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であるので、非導通状態である。
【００７２】
導通状態であるトランスファーゲート回路２２ｂ−５は、ソース端子に入力する信号ｎｄ２３が「０」であるので、ドレイン端子から出力する信号ｎｄ２５はｔ２０５で「１」から「０」になる。さらに、「０」の信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２０６で「０」から「１」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクルに確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」の信号ＲＤが出力される。
【００７３】
図９Ａに示す時間区間［Ｔ２，Ｔ３］のタイミングチャートを説明する。
図９Ａに示す時間区間［Ｔ２，Ｔ３］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「１」になることで一致するタイミングチャートが示される。
【００７４】
Ｔ２で期待値EXPDが「０」から「１」に変わると、期待値EXPDを入力とするＮＡＮＤ回路２１ｂから出力する信号ｎｄ２４は、ｔ２０７で「１」から「０」に変わる。トランスファーゲート回路２２ｂ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であるので、トランスファーゲート回路２２ｂ−４は、非導通状態である。一方、トランスファーゲート回路２２ｂ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であるので、導通状態である。
【００７５】
導通状態であるトランスファーゲート回路２２ｂ−５は、ソース端子に入力する信号ｎｄ２３が「１」になると、ドレイン端子から出力する信号ｎｄ２５はｔ２０８で「０」から「１」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２０９で「１」から「０」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ3、Ｔ4］に確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの一致を示す値「０」の信号ＲＤが出力される。
【００７６】
図９Ａに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。
図９Ａに示す時間区間［Ｔ３，Ｔ４］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「１」になることで不一致となるタイミングチャートが示される。
【００７７】
Ｔ３で読出しデータmoutが「１」から「０」に変わると、読出しデータmout「０」を入力するINVERTER回路２２ｂ−１から出力する信号ｎｄ２１は、ｔ２１０で「０」から「１」になる。また、「１」の信号ｎｄ２１を入力とするINVERTER回路２２ｂ−１から出力する信号ｎｄ２２は、「１」から「０」になる。トランスファーゲート回路２２ｂ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２１が「１」であるので、導通状態である。一方、トランスファーゲート回路２２ｂ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２１が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２２が「０」であるので、非導通状態である。
【００７８】
導通状態であるトランスファーゲート回路２２ｂ−４は、ソース端子に入力する信号ｎｄ２４が「０」であるので、ドレイン端子から出力する信号ｎｄ２５はｔ２１１で「１」から「０」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２１２で信号ｎｄ２５の「０」を「１」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクルに確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」の信号ＲＤが出力される。
【００７９】
このように、テスト信号test及び期待値EXPDの論理積と読出データmoutとの排他的論理和を出力するメモリ試験回路２０ｂが、テスト時は期待値EXPDと読出データとの一致検証値を出力することが出来る。
【００８０】
図９Ｂは、通常動作モードにおけるメモリ試験回路２０ｂを流れる信号のタイミングチャートである。図９Ｂに示す時間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれクロック信号の１サイクルの始まりを示す。以下、メモリ試験回路２０ｂを流れる信号のタイミングチャートについて時間区間毎に説明する。時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、メモリ試験回路２０ｂは通常動作モードであるため、図９Ｂに示すテスト信号testは「０」である。
【００８１】
図９Ｂに示す時間区間［Ｔ０，Ｔ１］の各信号の状態を説明する。［Ｔ０，Ｔ１］の期間中、「０」の値の読出し信号moutを入力するINVERTER回路２２ｂ−１から出力する信号ｎｄ２１は、［Ｔ０，Ｔ１］の期間中「１」である。Ｔ０で期待値EXPDが「１」から「０」に変わるが、値が「０」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２１ｂの出力である信号ｎｄ２４の値は、［Ｔ０，Ｔ１］の期間中「１」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２１が「１」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ｂ−２の出力である信号ｎｄ２２は、［Ｔ０，Ｔ１］の期間中「０」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ｂ−２の出力である信号ｎｄ２３は、［Ｔ０，Ｔ１］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ０，Ｔ１］の期間中に変化しないため、後段のトランスファーゲート回路２２ｂ−４〜２２ｂ−６の出力信号は、［Ｔ０，Ｔ１］の期間中に変化しない。したがって、［Ｔ０，Ｔ１］の期間中、信号ｎｄ２５の値は「１」であり、信号ｒｄｉｎの値は「０」であり、信号ＲＤの値は「０」である。
【００８２】
図９Ｂに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。時間区間［Ｔ１，Ｔ２］において、読出し信号moutは「１」である。
Ｔ１で読出し信号moutが「０」から「１」に変わると、読出し信号moutを入力とするINVERTER回路２２ｂ−１から出力する信号ｎｄ２１は、ｔ２２１で「１」から「０」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ｂ−２から出力する信号ｎｄ２２は、「０」から「１」になる。また、テスト信号test「０」及び期待値EXPD「０」を入力するＮＡＮＤ回路２１ｂから出力する信号ｎｄ２４は、［Ｔ１，Ｔ２］の期間中「１」である。信号ｎｄ２４「１」を入力するINVERTER回路２２ｂ−３から出力する信号ｎｄ２３は、［Ｔ１，Ｔ２］の期間中「０」である。
【００８３】
トランスファーゲート回路２２ｂ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であるので、トランスファーゲート回路２２ｂ−４は、非導通状態である。一方、トランスファーゲート回路２２ｂ−５はｐチャネルトランジスタのゲートに入力する信号ｎｄ２１が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２２が「１」であるので、トランスファーゲート回路２２ｂ−５は導通状態である。
【００８４】
導通状態であるトランスファーゲート回路２２ｂ−５は、ソース端子に入力する信号ｎｄ２３が「０」であると、ドレイン端子から出力する信号ｎｄ２５はｔ２２２で「１」から「０」になる。さらに、値「０」の信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２２３で「０」から「１」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ２、Ｔ３］に確定し出力ラッチ回路１７から値「１」の信号ＲＤが出力される。
【００８５】
図９Ｂに示す時間区間［Ｔ２、Ｔ３］のタイミングチャートを説明する。［Ｔ２，Ｔ３］の期間中、「１」の値の読出し信号moutを入力するINVERTER回路２２ｂ−１から出力する信号ｎｄ２１は、［Ｔ２、Ｔ３］の期間中「０」である。Ｔ２で期待値EXPDが「０」から「１」に変わるが、値が「１」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２１ｂの出力である信号ｎｄ２４の値は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２１が「０」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ｂ−２の出力である信号ｎｄ２２は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ｂ−２の出力である信号ｎｄ２３は、［Ｔ２、Ｔ３］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ２、Ｔ３］の期間中に変化しないため、後段のトランスファーゲート回路２２ｂ−４〜２２ａ−６の出力信号は、［Ｔ０，Ｔ１］の期間中に変化しない。したがって、［Ｔ２，Ｔ３］の期間中、信号ｎｄ２５の値は「０」であり、信号ｒｄｉｎの値は「１」であり、信号ＲＤの値は「１」である。
【００８６】
図９Ｂに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。
Ｔ３で読出し信号moutが「１」から「０」に変わると、読出し信号moutを入力とするINVERTER回路２２ｂ−１から出力する信号ｎｄ２１は、ｔ２２４で「０」から「１」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ｂ−２から出力する信号ｎｄ２２は、「１」から「０」になる。また、テスト信号test「０」及び期待値EXPD「１」を入力するＮＡＮＤ回路２１ｂから出力する信号ｎｄ２４は、［Ｔ３，Ｔ４］の期間中「１」である。信号ｎｄ２４「１」を入力するINVERTER回路２２ｂ−３から出力する信号ｎｄ２３は、「０」になる。
【００８７】
トランスファーゲート回路２２ｂ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２２が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２１が「１」であるので、トランスファーゲート回路２２ｂ−４は、導通状態である。一方、トランスファーゲート回路２２ｂ−５はｐチャネルトランジスタのゲートに入力する信号ｎｄ２１が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２２が「０」であるので、トランスファーゲート回路２２ｂ−５は非導通状態である。
【００８８】
導通状態であるトランスファーゲート回路２２ｂ−４は、ソース端子に入力する信号ｎｄ２４が「１」になると、ドレイン端子から出力する信号ｎｄ２５はｔ２２５で「０」から「１」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｂ−６は、ｔ２２６で信号ｎｄ２５「１」から「０」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ４、Ｔ５］に確定し出力ラッチ回路１７から値「０」の信号ＲＤが出力される。
【００８９】
このように、テスト信号testが論理値「０」の場合、メモリ試験回路２０ｂは、読出し信号moutの値をそのまま出力することが出来る。
【００９０】
（第３の実施例）
図１０は、トランスファーゲート回路を用いたメモリ試験回路の第３実施例を示す図である。図１０に示す２０ｃは、第３実施例に係るメモリ試験回路、２１ｃ、２２ｃ−２、２２ｃ−３、２２ｃ−５、及び２２ｃ−６はINVERTER回路、22c-1はNAND回路，２２ｃ−４及び２２ｃ−５は、トランスファーゲート回路を示す。１７は、出力ラッチ回路を示す。
【００９１】
メモリ試験回路２０ｃは、ＮＡＮＤ回路２２ｃ-１、INVERTER回路21c、２２ｃ−２、２２ｃ−３、２２ｃ−６、トランスファーゲート回路２２ｃ−４、２２ｃ−５を含む。テスト信号testと期待値EXPDとを入力するＮＡＮＤ回路２１ｃは、図２に示す第１の論理回路２１の一例である。INVERTER回路２１ｃ、２２ｃ−２、２２ｃ−３、２２ｃ−６、トランスファーゲート回路２２ｃ−４、２２ｃ−５は、図２に示す第２の論理回路２２の一例である。
【００９２】
図１０に示すｎｄ２１は、INVERTER回路２１ｃの出力信号である。図１０に示すｎｄ２２は、INVERTER回路２２ｃ−３の出力信号である。図１０に示すｎｄ２４は、ＮＡＮＤ回路２１ｃ−１の出力信号である。図８に示すｎｄ２３は、INVERTER回路２２ｃ−２の出力信号である。図１０に示すｎｄ２５は、トランスファーゲート回路２２ｃ−４、２２ｃ−５の出力信号である。
【００９３】
図１０に示されるＩＮＶＥＲＴＥＲ回路２１ｃ、ＮＡＮＤ回路２２ｃ−１，ＩＮＶＥＲＴＥＲ回路２２ｃ−２〜２２ｃ−３は、それぞれ図６Ａに示されるＮＡＮＤ回路２１ａ、ＩＮＶＥＲＴＥＲ回路２２ａ−１〜２２ａ−３と同じ回路構成を有するため、説明を省略する。
【００９４】
トランスファーゲート回路２２ｃ−４は、ソース端子に信号ｎｄ２２を入力する。トランスファーゲート回路２２ｃ−４は、ｎチャネルトランジスタのゲート端子に信号ｎｄ２３を入力し、ｐチャネルトランジスタのゲート端子に信号ｎｄ２４を入力する。
トランスファーゲート回路２２ｃ−５は、ソース端子に信号ｎｄ２１を入力する。トランスファーゲート回路２２ｃ−５は、ｎチャネルトランジスタのゲート端子に信号ｎｄ２４を入力し、ｐチャネルトランジスタのゲート端子に信号ｎｄ２３を入力する。
INVERTER回路２２ｃ−６は、信号ｎｄ２５を入力し、信号ｒｄｉｎを出力する。
【００９５】
図１１Ａは、テストモードにおけるメモリ試験回路２０ｃを流れる信号のタイミングチャートである。図１１Ａに示す時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれクロック信号の１サイクルの始まりを示す。以下、メモリ試験回路２０ｃを流れる信号のタイミングチャートについて時間区間毎に説明する。メモリ試験回路２０ｃはテストモードであるため、図１１Ａに示す時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、図１１Ａに示すテスト信号testは「１」である。なお、図５Ｂでも示したように、一致検証値を出力する出力ラッチ回路１７の出力信号「０」は、読出しデータmoutと期待値EXPDの一致を示し、出力信号「１」は読出しデータmoutと期待値EXPDの不一致を示す。
【００９６】
図１１Ａに示す時間区間［Ｔ０，Ｔ１］のタイミングチャートを説明する。
図１１Ａに示す時間区間［Ｔ０，Ｔ１］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「０」になることで一致するタイミングチャートが示される。
【００９７】
Ｔ０で期待値EXPDが「１」から「０」に変わると、「１」の期待値EXPD及び「１」のテスト信号testを入力とするＮＡＮＤ回路２２ｃ-1から出力する信号ｎｄ２４は、ｔ３０１で「０」から「１」になる。トランスファーゲート回路２２ｃ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２４が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２３が「０」であるので、トランスファーゲート回路２２ｃ−４は、非導通状態である。一方、トランスファーゲート回路２２ｃ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２2が「0」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２4が「1」であるので、トランスファーゲート回路２２ｃ−５は導通状態である。
【００９８】
導通状態であるトランスファーゲート回路２２ｃ−５は、ソース端子に入力する信号ｎｄ２1が「１」になると、ドレイン端子から出力する信号ｎｄ２５はｔ３０２で「０」から「１」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３０３で信号ｎｄ２５の「１」を「０」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ１、Ｔ２］に確定し出力ラッチ回路１７から値「０」の信号ＲＤが出力される。
【００９９】
図１１Ａに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。
図１１Ａに示す時間区間［Ｔ１，Ｔ２］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「０」になることで不一致となるタイミングチャートが示される。
【０１００】
Ｔ１で読出しデータmoutが「０」から「１」に変わると、「１」の読出しデータmoutを入力とするINVERTER回路２１ｃに出力する信号ｎｄ２１は、ｔ３０４で「１」から「０」になる。また、信号ｎｄ２１を入力とするINVERTER回路２２ｃ−３の出力する信号ｎｄ２２は、「０」から「１」に変わる。トランスファーゲート回路２２ｃ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２３が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２４が「１」であるので、導通状態である。一方、トランスファーゲート回路２２ｃ−４はｐチャネルトランジスタのゲートに入力する信号ｎｄ２４が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２３が「０」であるので、非導通状態である。
【０１０１】
導通状態であるトランスファーゲート回路２２ｃ−５は、ソース端子に入力する信号ｎｄ２１が「０」であるので、ドレイン端子から出力する信号ｎｄ２５はｔ３０５で「１」から「０」になる。さらに、値「０」の信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３０６で「０」から「１」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクルに確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」の信号ＲＤが出力される。
【０１０２】
図１１Ａに示す時間区間［Ｔ２，Ｔ３］のタイミングチャートを説明する。
図１１Ａに示す時間区間［Ｔ２，Ｔ３］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「１」と「１」になることで一致するタイミングチャートが示される。
【０１０３】
Ｔ２で期待値EXPDが「０」から「１」に変わると、期待値EXPDを入力とするＮＡＮＤ回路２２ｃ-１から出力する信号ｎｄ２４は、ｔ３０７で「１」から「０」に変わる。トランスファーゲート回路２２ｃ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２４が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２３が「１」であるので、トランスファーゲート回路２２ｃ−４は、導通状態である。一方、トランスファーゲート回路２２ｃ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２３が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２４が「０」であるので、非導通状態である。
【０１０４】
導通状態であるトランスファーゲート回路２２ｃ−４は、ソース端子に入力する信号ｎｄ２２がｔ３０８で「０」から「１」になると、ドレイン端子から出力する信号ｎｄ２５は「０」から「１」に変わる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３０９で「１」から「０」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ３、Ｔ４］に確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの一致を示す値「０」の信号ＲＤが出力される。
【０１０５】
図１１Ａに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。
図１１Ａに示す時間区間［Ｔ３，Ｔ４］は、読出しデータmoutと、期待値EXPDとが、それぞれ、「０」と「１」になることで不一致となるタイミングチャートが示される。
【０１０６】
Ｔ３で読出しデータmoutが「１」から「０」に変わると、読出しデータmout「０」を入力するINVERTER回路２１ｃから出力する信号ｎｄ２１は、ｔ３１０で「０」から「１」になる。また、値「１」の信号ｎｄ２１を入力とするINVERTER回路２２ｃ−３から出力する信号ｎｄ２２は、ｔ３１１で「１」から「０」になる。トランスファーゲート回路２２ｃ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２４が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２３が「１」であるので、導通状態である。一方、トランスファーゲート回路２２ｃ−５は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２３が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２４が「０」であるので、非導通状態である。
【０１０７】
導通状態であるトランスファーゲート回路２２ｃ−４は、ソース端子に入力する信号ｎｄ２４が「０」であるので、ドレイン端子から出力する信号ｎｄ２５はｔ３１１で「１」から「０」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３１２で信号ｎｄ２５の「０」を「１」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクルに確定し出力ラッチ回路１７から読出しデータmoutと期待値EXPDの不一致を示す値「１」の信号ＲＤが出力される。
【０１０８】
このように、テスト信号test及び期待値EXPDの論理積と読出データmoutとの排他的論理和を出力するメモリ試験回路２０ｃが、テスト時は期待値EXPDと読出データとの一致検証値を出力することが出来る。
【０１０９】
図１１Ｂは、通常動作モードにおけるメモリ試験回路２０ｃを流れる信号のタイミングチャートである。図１１Ｂに示す時間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］は、それぞれクロック信号の１サイクルの始まりを示す。以下、メモリ試験回路２０ｃを流れる信号のタイミングチャートについて時間区間毎に説明する。時間区間［Ｔ０，Ｔ１，Ｔ２，Ｔ３］では、メモリ試験回路２０ｃはテストモードであるため、図１１Ｂに示すテスト信号testは「０」である。
図１１Ｂに示す時間区間［Ｔ０，Ｔ１］の各信号の状態を説明する。［Ｔ０，Ｔ１］の期間中、「０」の値の読出し信号moutを入力するINVERTER回路２１ｃから出力する信号ｎｄ２１は、［Ｔ０，Ｔ１］の期間中「１」である。Ｔ０で期待値EXPDが「１」から「０」に変わるが、値が「０」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２２ｃ−１の出力である信号ｎｄ２４の値は、［Ｔ０，Ｔ１］の期間中「１」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２１が「１」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ｃ−３の出力である信号ｎｄ２２は、［Ｔ０，Ｔ１］の期間中「０」である。［Ｔ０，Ｔ１］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ｃ−２の出力である信号ｎｄ２３は、［Ｔ０，Ｔ１］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ０，Ｔ１］の期間中に変化しないため、後段のトランスファーゲート回路２２ｃ−４〜２２ｃ−６の出力信号は、［Ｔ０，Ｔ１］の期間中に変化しない。したがって、［Ｔ０，Ｔ１］の期間中、信号ｎｄ２５の値は「１」であり、信号ｒｄｉｎの値は「０」であり、信号ＲＤの値は「０」である。
【０１１０】
図１１Ｂに示す時間区間［Ｔ１，Ｔ２］のタイミングチャートを説明する。時間区間［Ｔ１，Ｔ２］において、読出し信号moutは「１」である。
Ｔ１で読出し信号moutが「０」から「１」に変わると、読出し信号moutを入力とするINVERTER回路２１ｃから出力する信号ｎｄ２１は、ｔ３２１で「１」から「０」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ｃ−３から出力する信号ｎｄ２２は、「０」から「１」になる。また、テスト信号test「０」及び期待値EXPD「０」を入力するＮＡＮＤ回路２２ｃ-１から出力する信号ｎｄ２４は、［Ｔ１，Ｔ２］の期間中「１」である。信号ｎｄ２４「１」を入力するINVERTER回路２２ｃ−２から出力する信号ｎｄ２３は、［Ｔ１，Ｔ２］の期間中「０」である。
【０１１１】
トランスファーゲート回路２２ｃ−４は、ｐチャネルトランジスタのゲートに入力する信号ｎｄ２４が「１」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２３が「０」であるので、トランスファーゲート回路２２ｃ−４は、非導通状態である。一方、トランスファーゲート回路２２ｃ−５はｐチャネルトランジスタのゲートに入力する信号ｎｄ２３が「０」であり且つｎチャネルトランジスタのゲートに入力する信号ｎｄ２４が「１」であるので、トランスファーゲート回路２２ｃ−５は導通状態である。
【０１１２】
導通状態であるトランスファーゲート回路２２ｃ−５は、ソース端子に入力する信号ｎｄ２１が「０」であると、ドレイン端子から出力する信号ｎｄ２５はｔ３２２で「１」から「０」になる。さらに、値「０」の信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３２３で「０」から「１」に変化した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ２、Ｔ３］に確定し出力ラッチ回路１７から値「１」の信号ＲＤが出力される。
【０１１３】
図１１Ｂに示す時間区間［Ｔ２、Ｔ３］のタイミングチャートを説明する。［Ｔ２，Ｔ３］の期間中、「１」の値の読出し信号moutを入力するINVERTER回路２１ｃから出力する信号ｎｄ２１は、［Ｔ２、Ｔ３］の期間中「０」である。Ｔ２で期待値EXPDが「０」から「１」に変わるが、値が「１」の期待値EXPDと、値が「０」のテスト信号testとを入力するＮＡＮＤ回路２２ｃ−１の出力である信号ｎｄ２４の値は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２１が「０」から変化しないため、信号ｎｄ２１を入力とするINVERTER回路２２ｃ−３の出力である信号ｎｄ２２は、［Ｔ２、Ｔ３］の期間中「１」である。［Ｔ２、Ｔ３］の期間中、信号ｎｄ２４が「１」から変化しないため、信号ｎｄ２４を入力とするINVERTER回路２２ｃ−２の出力である信号ｎｄ２３は、［Ｔ２、Ｔ３］の期間中「０」である。
このように、信号ｎｄ２１〜信号ｎｄ２４は、［Ｔ２、Ｔ３］の期間中に変化しないため、後段のトランスファーゲート回路２２ｃ−４〜２２ｃ−６の出力信号は、［Ｔ０，Ｔ１］の期間中に変化しない。したがって、［Ｔ２，Ｔ３］の期間中、信号ｎｄ２５の値は「０」であり、信号ｒｄｉｎの値は「１」であり、信号ＲＤの値は「１」である。
【０１１４】
図１１Ｂに示す時間区間［Ｔ３，Ｔ４］のタイミングチャートを説明する。
Ｔ３で読出し信号moutが「１」から「０」に変わると、読出し信号moutを入力とするINVERTER回路２１ｃから出力する信号ｎｄ２１は、ｔ３２４で「０」から「１」になる。また、信号ｎｄ２１を入力するINVERTER回路２２ｃ−３から出力する信号ｎｄ２２は、「１」から「０」になる。また、テスト信号test「０」及び期待値EXPD「１」を入力するＮＡＮＤ回路２２ｃ-１から出力する信号ｎｄ２４は、［Ｔ３，Ｔ４］の期間中「１」である。値「１」の信号ｎｄ２４を入力するINVERTER回路２２ｃ−２から出力する信号ｎｄ２３は、［Ｔ３，Ｔ４］の期間中「０」である。
【０１１５】
トランスファーゲート回路２２ｃ−４は、ｐチャネルトランジスタのゲートから入力する信号ｎｄ２４が「１」であり且つｎチャネルトランジスタのゲートから入力する信号ｎｄ２３が「０」であるので、トランスファーゲート回路２２ｃ−４は、非導通状態である。一方、トランスファーゲート回路２２ｃ−５はｐチャネルトランジスタのゲートから入力する信号ｎｄ２３が「０」であり且つｎチャネルトランジスタのゲートから入力する信号ｎｄ２４が「１」であるので、トランスファーゲート回路２２ｃ−５は導通状態である。
【０１１６】
導通状態であるトランスファーゲート回路２２ｃ−５は、ソース端子から入力する信号ｎｄ２１が「１」になると、ドレイン端子から出力する信号ｎｄ２５はｔ３２５で「０」から「１」になる。さらに、信号ｎｄ２５を入力するINVERTER回路２２ｃ−６は、ｔ３２６で信号ｎｄ２５「１」から「０」に反転した信号ｒｄｉｎを出力する。信号ｒｄｉｎは、出力ラッチ回路１７に入力され、次サイクル［Ｔ４、Ｔ５］に確定し出力ラッチ回路１７から値「０」の信号ＲＤが出力される。
【０１１７】
このように、テスト信号testが論理値「０」の場合、メモリ試験回路２０ｃは、読出し信号moutの値をそのまま出力することが出来る。
【０１１８】
なお、メモリ試験回路２０ａのＮＡＮＤ回路２２ａ−４及びＮＡＮＤ回路２２ａ−５は、図６Ｂに示すように、２段のゲート段数で回路設計されるが、メモリ試験回路２０ｂ、２０ｃでは、ゲート段数が１段のトランスファーゲート回路で回路設計される。そのため、メモリ試験回路２０ｂ、２０ｃは、メモリ試験回路２０ａよりゲート通過時間が短く、メモリ試験回路２０ａよりメモリ試験回路２０ｂ及びメモリ試験回路２０ｃの遅延時間をより短縮することが出来る。
【符号の説明】
【０１１９】
１０    プロセッサ
１１    命令生成ユニット
１２    テストパターン生成回路
１３ａ    マルチプレクサ
１４    メモリ
１５    パイプラッチ回路ユニット
１６    テスト信号発生回路
１７    出力ラッチ回路
１８    回路ユニット
２０、２０ａ〜ｃ    メモリ試験回路
２１，２１ｄ    第１の論理回路
２１ａ〜ｃ    ＮＡＮＤ回路
２２，２２ｄ    第２の論理回路
ＡＤ    アドレスデータ信号
ＣＬＫ    システムクロック信号
ＥＸＰＤ    期待値
ＳＩ    スキャンイン
ＳＯ    順次スキャンアウト
ＷＤ    書込みデータ信号
ＷＥ    書込み許可信号
【図１】
2010211863.tif 000003
【図２】
2010211863.tif 000004
【図３】
2010211863.tif 000005
【図４】
2010211863.tif 000006
【図５Ａ】
2010211863.tif 000007
【図５Ｂ】
2010211863.tif 000008
【図６Ａ】
2010211863.tif 000009
【図６Ｂ】
2010211863.tif 000010
【図７Ａ】
2010211863.tif 000011
【図７Ｂ】
2010211863.tif 000012
【図８】
2010211863.tif 000013
【図９Ａ】
2010211863.tif 000014
【図９Ｂ】
2010211863.tif 000015
【図１０】
2010211863.tif 000016
【図１１Ａ】
2010211863.tif 000017
【図１１Ｂ】
2010211863.tif 000018