(57)【要約】【課題】設計工程での作業量を軽減可能な半導体記憶装置を提供する。【解決手段】実施形態によれば、複数のメモリセルを有するメモリコアと、第１のアドレス変換部と、入力データ変換部と、出力データ変換部と、を備える半導体記憶装置が提供される。前記第１のアドレス変換部は、前記メモリコアのワードの１つを指定する第１のアドレスを、前記メモリセルの配置に応じて、第２のアドレスに変換する。前記入力変換部は、前記第２のアドレスに応じて、第１の入力データを前記第２のアドレスに応じたメモリセルに書き込まれる第２の入力データに変換する。前記出力データ変換部は、前記入力データ変換部の変換処理を考慮して、前記第２のアドレスに応じたメモリセルから読み出された第１の出力データを、前記第１の入力データと対応する期待値と比較される第２の出力データに変換する。【選択図】図１
2013200911.tif 000002
【特許請求の範囲】
【請求項１】
第１の方向および前記第１の方向とは異なる第２の方向に、マトリクス状に配置される複数のメモリセルを有するメモリコアと、
前記メモリコアのワードの１つを指定する第１のアドレスを、前記第１の方向に並ぶメモリセルの数および前記第２の方向に並ぶメモリセルの数に応じて、前記第１の方向のアドレスおよび前記第２の方向のアドレスを含む第２のアドレスに変換する第１のアドレス変換部と、
前記第１の方向のアドレスおよび前記第２の方向のアドレスの少なくとも一方と、第１の入力データとの論理演算を行って、前記第１の入力データを前記第２のアドレスに応じたメモリセルに書き込まれる第２の入力データに変換する入力データ変換部と、
前記入力データ変換部の変換処理を考慮して、前記第２のアドレスに応じたメモリセルから読み出された第１の出力データを、前記第１の入力データと対応する期待値と比較される第２の出力データに変換する出力データ変換部と、を備え、
前記入力データ変換部は、前記メモリコアに書き込まれるデータが、チェッカーボードパターンまたはストライプパターンとなるよう、前記第１の入力データを前記第２の入力データに変換することを特徴とする半導体記憶装置。
【請求項２】
複数のメモリセルを有するメモリコアと、
前記メモリコアのワードの１つを指定する第１のアドレスを、前記メモリセルの配置に応じて、第２のアドレスに変換する第１のアドレス変換部と、
前記第２のアドレスに応じて、第１の入力データを前記第２のアドレスに応じたメモリセルに書き込まれる第２の入力データに変換する入力データ変換部と、
前記入力データ変換部の変換処理を考慮して、前記第２のアドレスに応じたメモリセルから読み出された第１の出力データを、前記第１の入力データと対応する期待値と比較される第２の出力データに変換する出力データ変換部と、を備えることを特徴とする半導体記憶装置。
【請求項３】
前記複数のメモリセルは、第１の方向および前記第１の方向とは異なる第２の方向に、マトリクス状に配置され、
前記第１のアドレス変換部は、前記第１の方向に並ぶメモリセルの数および前記第２の方向に並ぶメモリセルの数に応じて、前記第１のアドレスを前記第２のアドレスに変換することを特徴とする請求項２に記載の半導体記憶装置。
【請求項４】
前記第２のアドレスは、前記第１の方向のアドレスおよび前記第２の方向のアドレスを含み、
前記入力データ変換部は、前記第１の方向のアドレスおよび前記第２の方向のアドレスの少なくとも一方と、前記第１の入力データとの論理演算を行って、前記第２の入力データを生成することを特徴とする請求項３に記載の半導体記憶装置。
【請求項５】
前記メモリコアは、
第１の書き込み・読み出しポートおよび第２の書き込み・読み出しポートと、
これらにそれぞれ対応する第１のアドレスポートおよび第２のアドレスポートと、を有し、
当該半導体記憶装置は、
前記第２のアドレスを、前記メモリコアの第１のアドレスポートに入力される第３のアドレスに変換する第２のアドレス変換部と、
前記第２のアドレスを、前記メモリコアの第２のアドレスポートに入力される、前記第３のアドレスとは異なる第４のアドレスに変換する第３のアドレス変換部と、を備え、
前記第３のアドレスおよび前記第４のアドレスの一方のアドレスにより指定されるメモリセルに、前記第２の入力データが書き込まれ、
前記第１の出力データは、前記第３のアドレスおよび前記第４のアドレスの他方のアドレスにより指定されるメモリセルから読み出されたデータであることを特徴とする請求項２乃至４のいずれかに記載の半導体記憶装置。
【請求項６】
前記入力データ変換部は、前記メモリコアに書き込まれるデータが、チェッカーボードパターンまたはストライプパターンとなるよう、前記第１の入力データを前記第２の入力データに変換することを特徴とする請求項２乃至５のいずれかに記載の半導体記憶装置。
【請求項７】
複数のメモリセルを有するメモリコアと、
前記メモリコアのワードの１つを指定する第１のアドレスを、前記メモリセルの配置に応じて、第２のアドレスに変換するアドレス変換部と、
前記第２のアドレスに応じて、第１の入力データを前記第２のアドレスに応じたメモリセルに書き込まれる第２の入力データに変換するとともに、前記第２のアドレスに応じて、前記第１の入力データと対応する第１の期待値を第２の期待値に変換する入力データ変換部と、
前記第２のアドレスに応じたメモリセルから読み出された出力データと、前記第２の期待値とを比較する出力データ比較部と、を備えることを特徴とする半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
半導体記憶装置に対して、半導体集積回路上に搭載された組み込み自己テスト（Built-In Self-Test、以下、ＢＩＳＴと呼ぶ）回路を用いてテストを行い、製造上の欠陥の有無を検出するものがある。ＢＩＳＴ回路を用いて複数の半導体記憶装置のテストを行う場合、テスト対象の半導体記憶装置の物理的な構成がそれぞれ異なることがある。
【０００３】
そのため、テスト対象の半導体記憶装置の物理的なアドレス構成に応じたアドレスやデータの変換を行うテスト回路が必要である。これらのテスト回路は、半導体記憶装置を囲うメモリカラーモジュール内に形成されるのが一般的である。
【０００４】
ところが、設計途中に、半導体記憶装置を、論理構成は同一であるが物理構成が異なる半導体記憶装置に置き換えることがある。この場合、テストを正しく行うためには、半導体記憶装置のみならず、メモリカラーモジュール内のテスト回路も置き換える必要がある。これにより設計工程での作業量が増加してしまうという問題がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−１３５０９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
設計工程での作業量を軽減可能な半導体記憶装置を提供する。
【課題を解決するための手段】
【０００７】
実施形態によれば、複数のメモリセルを有するメモリコアと、第１のアドレス変換部と、入力データ変換部と、出力データ変換部と、を備える半導体記憶装置が提供される。前記第１のアドレス変換部は、前記メモリコアのワードの１つを指定する第１のアドレスを、前記メモリセルの配置に応じて、第２のアドレスに変換する。前記入力変換部は、前記第２のアドレスに応じて、第１の入力データを前記第２のアドレスに応じたメモリセルに書き込まれる第２の入力データに変換する。前記出力データ変換部は、前記入力データ変換部の変換処理を考慮して、前記第２のアドレスに応じたメモリセルから読み出された第１の出力データを、前記第１の入力データと対応する期待値と比較される第２の出力データに変換する。
【図面の簡単な説明】
【０００８】
【図１】メモリコアの構成を概略的に示す図。
【図２】メモリセルのアドレスの概略を示す図。
【図３】第１の実施形態に係る半導体記憶装置２００の概略構成を示すブロック図。
【図４】アドレス変換部２１の内部構成の一例を示すブロック図。
【図５】変換部２１１の動作の一例を示す図。
【図６】入力データ変換部２２の入出力関係の一例を示す図。
【図７】図１（ａ）のメモリコア２０における入力データ変換部２２の入出力関係を具体的に示す図。
【図８】図１（ａ）のメモリコア２０に書き込まれるパターンを概略的に示す図。
【図９】図１（ｂ）のメモリコア２０における入力データ変換部２２の入出力関係を具体的に示す図。
【図１０】図１（ｂ）のメモリコア２０に書き込まれるパターンを概略的に示す図。
【図１１】出力データ変換部２５の入出力関係の一例を示す図。
【図１２】出力データ比較部３１の内部構成の一例を示す図。
【図１３】図３の半導体記憶装置２００の処理動作の一例を示すフローチャート。
【図１４】第２の実施形態に係る半導体記憶装置２００ａの概略構成を示すブロック図。
【図１５】第３の実施形態に係る半導体記憶装置２００ｂの概略構成を示すブロック図。
【図１６】図１５の半導体記憶装置２００ｂの処理動作の一例を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、実施形態について、図面を参照しながら具体的に説明する。
【００１０】
（第１の実施形態）
図１は、ＳＲＡＭ（Static Random Access Memory）等のメモリコアの構成を概略的に示す図である。メモリコアは、ロウ方向（第１の方向）およびカラム（第２の方向）に、メモリセルがマトリクス状に配置された構成となっている。よって、メモリコアのアドレスは、ロウ方向のアドレス（以下、ロウアドレスと呼ぶ）と、カラム方向のアドレス（以下、カラムアドレスと呼ぶ）とに分割できる。
【００１１】
ただし、１つの論理構成のメモリコアに対して、複数の物理構成のメモリコアが存在し得る。すなわち、メモリコアのロウアドレス幅およびカラムアドレス幅は、メモリセルの物理的な配置に依存し、論理アドレス幅が同じメモリコアであっても、ロウアドレス幅およびカラムアドレス幅が互いに異なることもある。
【００１２】
図１（ａ），（ｂ）のメモリコアは、両方とも、論理アドレス幅は１６（４ビット）であり、ビット幅は３である。なお、同図の一点鎖線で囲んだ部分が、各アドレスの最下位ビットを示している。図１（ａ）のメモリコアは、ロウアドレス幅が８（３ビット）、カラムアドレス幅が２（１ビット）であるのに対し、図１（ｂ）のメモリコアは、ロウアドレス幅が４（２ビット）、カラムアドレス幅が４（２ビット）である。
【００１３】
メモリコアのテストを行う際、アドレスを変化させながら書き込みや読み出しを行うが、メモリコアのアドレスを変化させる方式には２通りある。
【００１４】
図２は、メモリセルのアドレスの概略を示す図である。１つの方式は、まずロウアドレスを変化させるファストロウ方式（図２（ａ））であり、他の方式は、まずカラムアドレスを変化させるファストカラム方式（図２（ｂ））である。いずれの方式でアドレスを変化させるかは、メモリコアごとに異なる。
【００１５】
メモリコアにおいて、ワード線やビット線、あるいは、メモリセル間の干渉により引き起こされる不良をテストするためには、これらの間の信号値が同一あるいは逆の状態を意図的に生成するのが有効である。そのためには、例えばチェッカーボード（市松）パターンやストライプパターンをメモリコアに入力するのがよい。
【００１６】
ところが、図１に示すように、論理アドレス幅が同じメモリであってもロウアドレス幅およびカラムアドレス幅が互いに異なるメモリコアや、図２に示すように、ファストロウ方式のメモリもあればファストカラム方式のメモリコアもある。そのため、このようなメモリセルの物理的な配置を考慮してテストを行わなければならない。
【００１７】
半導体集積回路の設計途中に、メモリマクロ内のメモリコアを、論理構成は同一であるが物理構成が異なるメモリコアに置き換えることがある。仮に、メモリコアのテストを行うためのテスト回路をメモリマクロとは別個に設けておくと、メモリコアを置き換える際にテスト回路を置き換える必要が生じる。テスト回路はテスト対象のメモリコアにおけるメモリセルの物理的な配置を考慮して設計されているためである。
【００１８】
しかしながら、テスト回路を置き換える作業は大きな負担となってしまう。そこで、本実施形態では、テスト回路を可能な限りメモリコア内に搭載することにより、作業負担の軽減を図るものである。
【００１９】
図３は、第１の実施形態に係る半導体記憶装置２００の概略構成を示すブロック図である。半導体記憶装置２００は、複数のメモリセルを有するメモリコア２０と、テスト回路である、アドレス変換部２１、入力データ変換部２２、セレクタ２３，２４および出力データ変換部２５とを備えている。これらがハードマクロ化されてメモリマクロと呼ばれ、同一の半導体基板上に形成される。
【００２０】
半導体記憶装置２００内の各テスト回路は、別の半導体集積回路１００に搭載されるＢＩＳＴ制御部３０により制御される。ＢＩＳＴ制御部３０は、アクセスされる１つのワードを指定するテストアドレス信号（第１のアドレス）ＡＤＲｔ１と、アドレス制御信号ＣＮＴａと、メモリセルに書き込まれるテストデータ信号（第１の入力データ）ＤＡＴｔ１と、データ制御信号ＣＮＴｄと、メモリセルから読み出されるデータの期待値を示す期待値信号ＥＸＰとを生成する。期待値信号ＥＸＰはメモリコア２０に書き込まれるパターンを考慮して定められ、例えばテストアドレス信号ＡＤＲｔ１に応じたアドレスに書き込まれたテストデータ信号ＤＡＴｔ１と等価な信号である。
【００２１】
半導体記憶装置２００内のアドレス変換部２１には、テストアドレス信号ＡＤＲｔ１およびアドレス制御信号ＣＮＴａが入力される。アドレス信号ＡＤＲｔ１は、少なくともメモリコア２０の論理アドレス幅と等しいビット幅を有する。そして、アドレス変換部２１は、アドレス制御信号ＣＮＴａに応じて、アドレス信号ＡＤＲｔ１を、メモリセルの物理的な配置を考慮したテストアドレス信号（第２のアドレス）ＡＤＲｔ２に変換する。テストアドレス信号ＡＤＲｔ２は、ロウアドレスＡＤＲｔ２（Ｒ）およびカラムアドレスＡＤＲｔ２（Ｃ）から構成される。
【００２２】
なお、本明細書において「変換」とは同一の信号を生成することも含み、アドレス信号ＡＤＲｔ２はアドレス信号ＡＤＲｔ１と等しい場合もある。
【００２３】
入力データ変換部２２には、テストデータ信号ＤＡＴｔ１、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２が入力される。そして、入力データ変換部２２は、テストデータ信号ＤＡＴｔ１を、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２に応じて、テストデータ信号（第２の入力データ）ＤＡＴｔ２に変換する。テストデータ信号ＤＡＴｔ１およびデータ制御信号ＣＮＴｄは、メモリコア２０に書き込むパターンに応じて定められる。テストデータ信号ＤＡＴｔ１そのものではなく、これを変換して得られるテストデータ信号ＤＡＴｔ２がテストアドレス信号ＡＤＲｔ２により指定されるメモリセルに書き込まれる。そのため、テストデータ信号ＤＡＴｔ１のビット幅は必ずしもメモリコア２０のビット幅と等しくなくてもよく、本実施形態では１ビットの信号である例を示す。一方、テストデータ信号ＤＡＴｔ２のビット幅はメモリコア２０のビット幅と等しい。
【００２４】
セレクタ２３には、テストアドレス信号ＡＤＲｔ２およびシステムアドレス信号ＡＤＲｓが入力され、テストモード選択信号ＭＯＤＥ＿ＳＥＬに応じて、いずれか一方がメモリコア２０のアドレスポートＡＤＲに入力される。テストモード選択信号ＭＯＤＥ＿ＳＥＬは、メモリコア２０のテスト時にはテストアドレス信号ＡＤＲｔ２が選択され、通常動作時にはシステムアドレス信号ＡＤＲｓが選択されるよう、設定される。
【００２５】
セレクタ２４には、テストデータ信号ＤＡＴｔ２およびシステムデータ信号ＤＡＴｓが入力され、テストモード選択信号ＭＯＤＥ＿ＳＥＬに応じて、いずれか一方がメモリコア２０のデータ入力ポートＤＩＮに入力される。テストモード選択信号ＭＯＤＥ＿ＳＥＬは、メモリコア２０のテスト時にはテストデータ信号ＤＡＴｔ２が選択され、通常動作時にはシステムデータ信号ＤＡＴｓが選択されるよう、設定される。
【００２６】
出力データ変換部２５には、メモリコア２０のデータ出力ポートＤＯＵＴから出力される出力データ信号（第１の出力データ）ＤＯＵＴ、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２が入力される。そして、出力データ変換部２５は、出力データ信号ＤＯＵＴを、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２に応じて、テスト出力データ信号（第２の出力データ）ＤＯＵＴｔに変換する。出力データ変換部２５は入力データ変換部２２の変換処理を考慮した変換処理を行う。より具体的には、出力データ変換部２５は入力データ変換部２２と入出力関係が逆の変換処理を行う。
【００２７】
半導体記憶装置２００の外部に設けられる出力データ比較部３１は、出力データ信号ＤＯＵＴｔと、ＢＩＳＴ制御部３０が生成する期待値信号ＥＸＰとを比較し、メモリコア２０が不良か否かを判定し、判定結果を示す良否フラグを生成する。半導体記憶装置２００および出力データ比較部３１により、メモリカラーモジュール３００が構成される。
【００２８】
以下、半導体記憶装置２００内のアドレス変換部２１、入力データ変換部２２および出力データ変換部２５、ならびに、出力データ比較部３１について、詳しく説明する。
【００２９】
図４は、アドレス変換部２１の内部構成の一例を示すブロック図である。アドレス変換部２１は、変換部２１１と、セレクタ２１２とを有する。以下、図４のアドレス変換部２１の処理動作を、図１（ａ）に示す、論理アドレス幅が１６であり、ロウ方向に８つ、カラム方向に２つのメモリセルが配置されるメモリコア２０を例に取って説明する。
【００３０】
メモリコア２０内のメモリセルがロウ方向およびカラム方向に配置される場合、メモリセルを指定するテストアドレス信号ＡＤＲｔ１は、ロウアドレス信号ＡＤＲｔ１（Ｒ）およびカラムアドレス信号ＡＤＲｔ１（Ｃ）に分割できる。図１（ａ）のメモリコア２０の場合では、テストアドレス信号ＡＤＲｔ１は４ビットで表されるが、そのうちの３ビットがロウアドレス信号ＡＤＲｔ１（Ｒ）であり、１ビットがカラムアドレス信号ＡＤＲｔ１（Ｃ）である。ただし、ファストロウ方式であるかファストカラム方式であるかに応じて、上位側ビットをロウアドレス信号とするか下位側ビットをロウアドレス信号とするか、が異なる。
【００３１】
そこで、図５に示すように、変換部２１１は、まずテストアドレス信号ＡＤＲｔ１を、上位側の１ビットをカラムアドレス信号ＡＤＲｔ１（Ｃ）とし、下位側の３ビットをロウアドレス信号ＡＤＲｔ１（Ｒ）とする。このテストアドレス信号ＡＤＲｔ１は、まずロウアドレスが変化する、ファストロウ用のアドレス信号である。そして、変換部２１１は、カラムアドレス信号ＡＤＲｔ１（Ｃ）とロウアドレス信号ＡＤＲｔ１（Ｒ）とを入れ替えて、テストアドレス信号ＡＤＲｔ１’を生成する。このテストアドレス信号ＡＤＲｔ１’は、まずカラムアドレスが変化する、ファストカラム用のアドレス信号である。
【００３２】
そして、セレクタ２１２は、アドレス制御信号ＣＮＴａに応じて、ファストロウ用のテストアドレス信号ＡＤＲｔ１またはファストカラム用のテストアドレス信号ＡＤＲｔ１’を選択して、テストアドレス信号ＡＤＲｔ２とする。
【００３３】
このように、変換部２１１が、メモリセルの物理的な配置を考慮して、テストアドレス信号ＡＤＲｔ１’を生成する。そのため、ＢＩＳＴ制御部３０はファストカラム方式であるかファストロウ方式であるかを示すアドレス制御信号ＣＮＴａを生成するだけでよく、メモリセルの物理的な配置を考慮する必要はない。
【００３４】
続いて、入力データ変換部２２について説明する。図６は、入力データ変換部２２の入出力関係の一例を示す図である。同図では、２ビットのデータ制御信号ＣＮＴｄに応じて、メモリコア２０に、全メモリセルに一定値／カラムストライプパターン／ロウストライプパターン／チェッカーボードパターンの４パターンのうちのいずれかを書き込む例を示している。なお、本実施形態におけるテストデータ信号ＤＡＴｔ１は１ビットである。
【００３５】
データ制御信号ＣＮＴｄが“００”である場合、入力データ変換部２２は、テストデータ信号ＤＡＴｔ２の全ビットを、テストデータ信号ＤＡＴｔ１とする。
【００３６】
データ制御信号ＣＮＴｄが“０１”である場合、入力データ変換部２２は、テストデータ信号ＤＡＴｔ２の全ビットを、カラムアドレス信号の最下位ビットＡＤＲｔ２（Ｃ）［０］とテストデータ信号ＤＡＴｔ１との排他的論理和とする。
【００３７】
データ制御信号ＣＮＴｄが“１０”である場合、入力データ変換部２２は、テストデータ信号ＤＡＴｔ２の全ビットを、ロウアドレス信号の最下位ビットＡＤＲｔ２（Ｒ）［０］とテストデータ信号ＤＡＴｔ１との排他的論理和とする。
【００３８】
データ制御信号ＣＮＴｄが“１１”である場合、入力データ変換部２２は、テストデータ信号ＤＡＴｔ２の全ビットを、カラムアドレス信号の最下位ビットＡＤＲｔ２（Ｃ）［０］と、ロウアドレス信号の最下位ビットＡＤＲｔ２（Ｒ）［０］と、テストデータ信号ＤＡＴｔ１との排他的論理和とする。
【００３９】
図７は、図６の入出力関係に基づく、図１（ａ）のメモリコア２０における入力データ変換部２２の入出力関係を具体的に示す図である。図７では、ファストカラム方式かつテストデータ信号ＤＡＴｔ１＝０である例を示している。また、図８は、図７の場合に、図１（ａ）のメモリコア２０に書き込まれるパターンを概略的に示す図である。メモリセル内の数字はアドレスを示しており、スポットを付したメモリセルは０値が書き込まれ、スポットを付していないメモリセルは１値が書き込まれることを意味している。
【００４０】
図８（ａ）は、図７において、データ制御信号ＣＮＴｄ＝“００”の場合であり、メモリコア２０の全メモリセルに０値が書き込まれる。
【００４１】
図８（ｂ）は、図７において、データ制御信号ＣＮＴｄ＝“０１”の場合である。メモリコア２０には、ロウ方向に隣接するメモリセルとは値が等しいが、カラム方向に隣接するメモリセルとは互いに値が異なる、カラムストライプパターンが書き込まれる。
【００４２】
図８（ｃ）は、図７において、データ制御信号ＣＮＴｄ＝“１０”の場合である。メモリコア２０には、カラム方向に隣接するメモリセルとは値が等しいが、ロウ方向に隣接するメモリセルとは互いに値が異なる、ロウストライプパターンが書き込まれる。
【００４３】
図８（ｄ）は、図７において、データ制御信号ＣＮＴｄ＝“１１”の場合である。メモリコア２０には、隣接するメモリセルとは互いに値が異なる、チェッカーボードパターンが書き込まれる。
【００４４】
このように、ＢＩＳＴ制御部３０から、１ビットのテストデータ信号ＤＡＴｔ１および２ビットのデータ制御信号ＣＮＴｄを生成するだけで、４通りのパターンをメモリコア２０に書き込むことができる。図８の０値と１値を反転させたい場合は、テストデータ信号ＤＡＴｔ１を１値に設定すればよい。また、図示しないが、ファストロウ方式の場合でも、図８と同様のパターンをメモリコア２０に書き込むことができる。
【００４５】
図９は、図６の入出力関係に基づく、図１（ｂ）のメモリコア２０における入力データ変換部２２の入出力関係を具体的に示す図である。図９では、ファストカラム方式かつテストデータ信号ＤＡＴｔ１＝０である例を示している。また、図１０は、図９の場合に、図１（ｂ）のメモリコア２０に書き込まれるパターンを概略的に示す図である。詳細な説明は省略するが、図１０（ａ）〜（ｄ）に示すように、図１（ｂ）の構成のメモリコア２０にも、図８（ａ）〜（ｄ）と同様のパターンを書き込むことができる。
【００４６】
図１（ａ）のメモリコア２０と図１（ｂ）のメモリコア２０は、メモリセルの物理的な配置構成が互いに異なっている。それにも関わらず、ＢＩＳＴ制御部３０が生成する、テストアドレス信号ＡＤＲｔ１、テストデータ信号ＤＡＴｔ１およびデータ制御信号ＣＮＴｄは、いずれも共通している。言い換えると、ＢＩＳＴ制御部３０はメモリセルの物理的な配置を意識して各信号を生成する必要はない。そのため、図１（ａ）に示す物理構成のメモリコア２０を、図１（ｂ）に示す物理構成のメモリコア２０に置き換えた場合でも、アドレス変換部２１および入力データ変換部２２が自動的に置き換えられることにより、ＢＩＳＴ制御部３０の置き換えは不要である。
【００４７】
次に、出力データ変換部２５について説明する。図１１は、出力データ変換部２５の入出力関係の一例を示す図である。同図は図６と対応しており、入力データ変換部２２と逆の変換を示している。出力データ変換部２５は、以下のようにして、メモリコア２０から読み出された出力データ信号ＤＯＵＴを、テスト出力データ信号ＤＯＵＴｔに変換する。
【００４８】
データ制御信号ＣＮＴｄが“００”である場合、出力データ変換部２５は、テスト出力データ信号のｋビット目ＤＯＵＴｔ［ｋ］を、出力データ信号ＤＯＵＴのｋビット目ＤＯＵＴ［ｋ］とする（ｋは、０〜（ｎ−１）、ｎはメモリコア２０のビット幅）。
【００４９】
データ制御信号ＣＮＴｄが“０１”である場合、出力データ変換部２５は、テスト出力データ信号のｋビット目ＤＯＵＴｔ［ｋ］を、カラムアドレス信号の最下位ビットＡＤＲｔ２（Ｃ）［０］と出力データ信号のｋビット目ＤＯＵＴ［ｋ］との排他的論理和とする。
【００５０】
データ制御信号ＣＮＴｄが“１０”である場合、出力データ変換部２５は、テスト出力データ信号のｋビット目ＤＯＵＴｔ［ｋ］を、ロウアドレス信号の最下位ビットＡＤＲｔ２（Ｒ）［０］と出力データ信号のｋビット目ＤＯＵＴ［ｋ］との排他的論理和とする。
【００５１】
データ制御信号ＣＮＴｄが“１１”である場合、出力データ変換部２５は、テスト出力データ信号のｋビット目ＤＯＵＴｔ［ｋ］を、カラムアドレス信号の最下位ビットＡＤＲｔ２（Ｃ）［０］と、ロウアドレス信号の最下位ビットＡＤＲｔ２（Ｒ）［０］と、出力データ信号のｋビット目ＤＯＵＴ［ｋ］との排他的論理和とする。
【００５２】
これにより、メモリコア２０のビット幅と等しいビット幅を有するテスト出力データ信号ＤＯＵＴｔが生成される。１ビットのテストデータ信号ＤＡＴｔ１に基づいて書き込みを行った場合、メモリコア２０が正常であれば、テスト出力データ信号ＤＯＵＴｔの全ビットは等しい値となる。
【００５３】
次に、出力データ比較部３１について説明する。図１２は、出力データ比較部３１の内部構成の一例を示す図である。出力データ比較部３１は、メモリコア２０のビット幅と等しいｎ個の比較部３１０〜３１（ｎ−１）と、判定部３１２とを有する。本実施形態では、上記のようにテスト出力データ信号ＤＯＵＴｔの全ビットが等しい値になるはずであるから、期待値信号ＥＸＰはテストデータ信号ＤＡＴｔと同じ１ビットの信号でよい。
【００５４】
比較部３１ｋは、テスト出力データ信号のｋビット目ＤＯＵＴｔ［ｋ］と、期待値信号ＥＸＰとを比較する。判定部３１２は、比較部３１０〜３１（ｎ−１）の比較結果のうち少なくとも１つが一致していなければメモリコア２０が不良であると判定し、すべてが一致していれば不良ではないと判定する。判定結果は良否フラグとして出力される。以上のようにして、メモリコア２０の良否判定を行うことができる。
【００５５】
図１３は、図３の半導体記憶装置２００の処理動作の一例を示すフローチャートである。まず、アドレス変換部２１は、ＢＩＳＴ制御部３０から入力されるテストアドレス信号ＡＤＲｔ１を、アドレス制御信号ＣＮＴａに応じて、テストアドレス信号ＡＤＲｔ２に変換する（ステップＳ１）。また、入力データ変換部２２は、ＢＩＳＴ制御部３０から入力されるテストデータ信号ＤＡＴｔ１を、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２に応じて、テストデータ信号ＤＡＴｔ２に変換する（ステップＳ２）。
【００５６】
そして、テストアドレス信号ＡＤＲｔ２により指定されるメモリコア２０内のメモリセルに、テストデータ信号ＤＡＴｔ２が書き込まれる（ステップＳ３）。必要に応じて、テストアドレス信号ＡＤＲｔ１を変化させながら他のメモリセルにもデータを書き込み、メモリコア２０にはチェッカーボードパターンやストライプパターン等のテストパターンが書き込まれる。
【００５７】
その後、テストアドレス信号ＡＤＲｔ２により指定されるメモリコア２０内のメモリセルからデータを読み出す（ステップＳ４）。出力データ変換部２５は、読み出されたデータを示す出力データ信号ＤＯＵＴを、データ制御信号ＣＮＴｄに応じて、テスト出力データ信号ＤＯＵＴｔに変換する（ステップＳ５）。テスト出力データ信号ＤＯＵＴｔは、出力データ比較部３１により、期待値信号ＥＸＰと比較される。
【００５８】
このように、第１の実施形態では、アドレス変換部２１、入力データ変換部２２、出力データ変換部２５を、半導体記憶装置２００の外部ではなく、内部に設ける。そのため、メモリコア２０を論理構成が等しく物理構成が異なる別のメモリコア２０に置き換えた場合に、これらのテスト回路も自動的に置き換えられる。結果として、ＢＩＳＴ制御部３０等、半導体記憶装置２００外の回路を置き換える必要はなく、設計工程での作業量を軽減できる。
【００５９】
（第２の実施形態）
上述した第１の実施形態は、メモリコア２０が１つの書き込み・読み出しポートを有するものであったが、以下に説明する第２の実施形態は、メモリコア２０が複数の書き込み・読み出しポートを有するものである。
【００６０】
図１４は、第２の実施形態に係る半導体記憶装置２００ａの概略構成を示すブロック図である。メモリコア２０ａは２つの書き込み・読み出しポートをもち、それぞれに対応する書き込み・読み出し用アドレスポートＡＤＲ１，ＡＤＲ２を有する。同図では、図３と共通する部分の図示を省略し、メモリコア２０ａのアドレスポートＡＤＲ１，ＡＤＲ２と関連する部分を中心に描いている。
【００６１】
図１４の半導体記憶装置２００ａは、アドレス変換部２１１，２１２と、セレクタ２３１，２３２とを有する。
【００６２】
アドレス変換部２１１は、テストアドレス信号ＡＤＲｔ２をテストアドレス信号（第３のアドレス）ＡＤＲｔ３１に変換する。より具体的には、アドレス変換部２１１は、アドレス制御信号ＣＮＴａに応じて、テストアドレス信号ＡＤＲｔ２をそのままテストアドレス信号ＡＤＲｔ３１とするか、テストアドレス信号ＡＤＲｔ２とは異なる（例えばテストアドレス信号ＡＤＲｔ２の最下位ビットを反転させた）テストアドレス信号ＡＤＲｔ３１を生成する。
【００６３】
セレクタ２３１は、テストモード選択信号ＭＯＤＥ＿ＳＥＬに応じて、テストアドレス信号ＡＤＲｔ３１またはシステムアドレス信号ＡＤＲｓ１を選択する。選択されたアドレス信号は、メモリコア２０ａのアドレスポートＡＤＲ１に入力される。
【００６４】
アドレス変換部２１２は、テストアドレス信号ＡＤＲｔ２をテストアドレス信号（第４のアドレス）ＡＤＲｔ３２に変換する。より具体的には、アドレス変換部２１２は、アドレス制御信号ＣＮＴａに応じて、テストアドレス信号ＡＤＲｔ２をそのままテストアドレス信号ＡＤＲｔ３２とするか、テストアドレス信号ＡＤＲｔ２とは異なる（例えばテストアドレス信号ＡＤＲｔ２の最下位ビットを反転させた）テストアドレス信号ＡＤＲｔ３２を生成する。
【００６５】
セレクタ２３２は、テストモード選択信号ＭＯＤＥ＿ＳＥＬに応じて、テストアドレス信号ＡＤＲｔ３２またはシステムアドレス信号ＡＤＲｓ２を選択する。選択されたアドレス信号は、メモリコア２０ａのアドレスポートＡＤＲ２に入力される。
【００６６】
アドレス変換部２１１，２１２の動作例として、これらの一方は、テストアドレス信号ＡＤＲｔ２をそのまま出力し、他方は、テストアドレス信号ＡＤＲｔ２とは異なるテストアドレス信号を出力する。これにより、テストアドレス信号ＡＤＲｔ３１，ＡＤＲｔ３２は互いに異なるワードのアドレスを指定する。よって、メモリコア２０ａに対して、同時に２つの異なるアドレスにアクセスできる。
【００６７】
このように、第２の実施形態では、複数のアドレスポートに対応してさらにアドレス変換部を設けるため、１つのアドレスポートから書き込みを行いつつ、他のアドレスポートから読み出しを行う等、アクセス条件が異なるテストを同時に実行できる。また、アドレス変換部２１１，２１２を半導体記憶装置２００ａ内に設けることで、メモリコア２０を論理構成が等しく物理構成が異なる別のメモリコア２０に置き換えた場合に、アドレス変換部２１１，２１２を含むテスト回路も自動的に置き換えられる。よって、設計工程での作業量を軽減できる。
【００６８】
（第３の実施形態）
上述した第１および第２の実施形態は、入力データ変換部がテストデータ信号ＤＡＴｔ１を変換するものであったが、以下に説明する第３の実施形態は、入力データ変換部が期待値信号ＥＸＰも変換するものである。
【００６９】
図１５は、第３の実施形態に係る半導体記憶装置２００ｂの概略構成を示すブロック図である。以下では、図３との相違点を中心に説明する。
【００７０】
図１５の半導体記憶装置２００ｂは、出力データ変換部を備えていない代わりに、入力データ変換部２２ａが期待値信号（第１の期待値）ＥＸＰ１も変換し、期待値信号（第２の期待値）ＥＸＰ２を生成する。入力データ変換部２２ａによる期待値信号ＥＸＰ１に対する変換処理は、テストデータ信号ＤＡＴｔ１に対する変換処理と同様である。
【００７１】
また、半導体記憶装置２００ｂの内部に出力データ比較部３１ａが設けられる。出力データ比較部３１ａは、出力比較イネーブル信号ＥＮＢがイネーブルとなったタイミングで、メモリコア２０から読み出された出力データ信号ＤＯＵＴと、期待値信号ＥＸＰ２とを比較し、メモリコア２０の良否判定を行う。
【００７２】
図１６は、図１５の半導体記憶装置２００ｂの処理動作の一例を示すフローチャートである。まず、アドレス変換部２１は、ＢＩＳＴ制御部３０から入力されるテストアドレス信号ＡＤＲｔ１を、アドレス制御信号ＣＮＴａに応じて、テストアドレス信号ＡＤＲｔ２に変換する（ステップＳ１）。また、入力データ変換部２２ａは、ＢＩＳＴ制御部３０から入力されるテストデータ信号ＤＡＴｔ１および期待値信号ＥＸＰ１を、データ制御信号ＣＮＴｄおよびテストアドレス信号ＡＤＲｔ２に応じて、テストデータ信号ＤＡＴｔ２および期待値信号ＥＸＰ２にそれぞれ変換する（ステップＳ２’）。
【００７３】
そして、テストアドレス信号ＡＤＲｔ２により指定されるメモリコア２０内のメモリセルに、テストデータ信号ＤＡＴ２が書き込まれる（ステップＳ３）。必要に応じて、テストアドレス信号ＡＤＲｔ１を変化させながら、他のメモリセルにもデータを書き込み、メモリコア２０にはチェッカーボードパターンやストライプパターン等のテストパターンが書き込まれる。
【００７４】
その後、テストアドレス信号ＡＤＲｔ２により指定されるメモリ２０内のメモリセルからデータを読み出す（ステップＳ４）。そして、出力データ比較部３１ａは、読み出されたデータを示す出力データ信号ＤＯＵＴと、期待値信号ＥＸＰ２と比較する（ステップＳ６）。すなわち、出力データ比較部３１ａは、両者が一致すればメモリコア２０は不良なしと判定し、一致しなければメモリコア２０は不良ありと判定する。
【００７５】
このように、第３の実施形態では、入力データ変換部２２ａが期待値信号ＥＸＰ１をも変換するため、出力データ比較部３１ａを半導体記憶装置２００ｂ内に設けることができる。そのため、メモリコア２０を論理構成が等しく物理構成が異なる別のメモリコア２０に置き換えた場合に、出力データ比較部３１ａを含むテスト回路も自動的に置き換えられる。よって、設計工程での作業量を軽減できる。
【００７６】
なお、第３の実施形態において、図１４と同様に、複数のアドレスポートを有するメモリコア２０ａ用にさらなるアドレス変換部を設けてもよい。
【００７７】
また、上述した各実施形態では、半導体記憶装置はＢＩＳＴ制御部３０から制御される例を示したが、外部の半導体テスタ等から直接制御されてもよい。
【００７８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００７９】
２０  メモリコア
２１，２１１，２１２  アドレス変換部  
２２，２２ａ  入力データ変換部
２５  出力データ変換部
３１，３１ａ  出力データ比較部
２００，２００ａ，２００ｂ  半導体記憶装置
【図１】
2013200911.tif 000003
【図２】
2013200911.tif 000004
【図３】
2013200911.tif 000005
【図４】
2013200911.tif 000006
【図５】
2013200911.tif 000007
【図６】
2013200911.tif 000008
【図７】
2013200911.tif 000009
【図８】
2013200911.tif 000010
【図９】
2013200911.tif 000011
【図１０】
2013200911.tif 000012
【図１１】
2013200911.tif 000013
【図１２】
2013200911.tif 000014
【図１３】
2013200911.tif 000015
【図１４】
2013200911.tif 000016
【図１５】
2013200911.tif 000017
【図１６】
2013200911.tif 000018