(57)【要約】  アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供する。  半導体記憶装置は、データを保持する複数のメモリセルをそれぞれ有する複数のメモリブロックと、同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて異なるメモリブロック内のメモリセルを特定するデコーダと、前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行する読み書き制御部とを含む。
2012124063.tif 000002
【特許請求の範囲】
【請求項１】
データを保持する複数のメモリセルをそれぞれ有する複数のメモリブロックと、
同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて異なるメモリブロック内のメモリセルを特定するデコーダと、
前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行する読み書き制御部と
を含む、半導体記憶装置。
【請求項２】
前記半導体記憶装置において、
前記メモリブロックは、前記読み書き制御部の一方の側又は他方の側に配設されるサブアレイであり、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて、前記読み書き制御部の一方の側のサブアレイ内のメモリセルと、前記読み書き制御部の他方の側のサブアレイ内のメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項３】
前記半導体記憶装置において、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、奇数ビットについて前記読み書き制御部の一方の側のサブアレイ内のメモリセルを選択するとともに、偶数ビットについて前記読み書き制御部の他方の側のサブアレイ内のメモリセルを選択するためのパターン選択データに基づいて、前記読み書き制御部の一方の側のサブアレイ内のメモリセルと、前記読み書き制御部の他方の側のサブアレイ内のメモリセルとを特定する、請求項２記載の半導体記憶装置。
【請求項４】
前記半導体記憶装置において、
前記メモリブロックは、前記メモリセルをそれぞれ含む複数のサブブロックが階層化されたサブバンクであり、前記サブバンクは、前記読み書き制御部で読み出し又は書き込みが行われるデータを当該半導体記憶装置の外部回路との間で入出力するための入出力部の一方の側と他方の側とに配設されており、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて、前記入出力部の一方の側のサブバンク内のメモリセルと、前記入出力部の他方の側のサブバンク内のメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項５】
前記半導体記憶装置において、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、奇数ビットについて前記入出力部の一方の側のサブバンク内のメモリセルを選択するとともに、偶数ビットについて前記入出力部の他方の側のサブバンク内のメモリセルを選択するためのパターン選択データに基づいて、前記入出力部の一方の側のサブバンク内のメモリセルと、前記入出力部の他方の側のサブバンク内のメモリセルとを特定する、請求項４記載の半導体記憶装置。
【請求項６】
前記半導体記憶装置において、
前記メモリブロックは、前記メモリセルをそれぞれ含む複数のサブブロックが階層化されたサブバンクであり、前記サブバンクは、前記読み書き制御部で読み出し又は書き込みが行われるデータを当該半導体記憶装置の外部回路との間で入出力するための入出力部の一方の側と他方の側とに配設されており、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて、前記入出力部の一方の側のサブバンク内のサブブロックと、前記入出力部の他方の側のサブバンク内のサブブロックとを特定するとともに、前記サブブロックの前記読み書き制御部の一方の側と他方の側とに配設されるサブアレイについて、１ビットずつ又は２ビットずつ、前記読み書き制御部の一方の側のサブアレイに含まれるメモリセルと、前記読み書き制御部の他方の側のサブアレイに含まれるメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項７】
データを保持する複数のメモリセルをそれぞれ有する複数のメモリブロックを有する半導体記憶装置の制御方法において、
前記半導体記憶装置のデコーダが、同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて異なるメモリブロック内のメモリセルを特定するステップと、
前記半導体記憶装置の読み書き制御部が、前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行するステップと
を含む、半導体記憶装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、半導体記憶装置及び半導体記憶装置の制御方法に関する。
【背景技術】
【０００２】
従来より、α線等を含む宇宙線がメモリセルアレイ内のメモリセルに入射してソフトエラーによりメモリセルアレイのパリティの値の反転が生じた場合、パリティが無効になることを抑制するため、マトリクス状に配列された複数個のメモリセルを有する半導体記憶装置において、同一のビット線選択回路に接続されるビット線を、互いに隣接しないように配列した半導体記憶装置があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２０８７９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のようなソフトエラーは、宇宙線のうち、電荷を持つα線等、又は、電荷を持たない中性子線等が半導体記憶装置に入射することによって生じる。【０００５】
半導体記憶装置は、微細化によるサイズ縮小、省電力化による動作電圧の低電圧化等により、保持するビットの値の反転が生じた場合において、データが破壊される領域が増大し、パリティで保護される１バイト等の単位データに含まれる複数ビットにわたるデータ破壊が生じやすくなる傾向にある。【０００６】
しかしながら、同一のビット線選択回路に接続されるビット線を、互いに隣接しないように配列した半導体記憶装置では、ビット線の配線長が長くなり、レイアウト、動作速度に制約が生じる。【０００７】
このため、同一のビット線選択回路に接続されるビット線を、互いに隣接しないように配列した半導体記憶装置は、高い周波数で動作するＳＲＡＭ（Static Random Access Memory）のような半導体記憶装置には不向きであった。【０００８】
また、複数ビットの反転によるデータ破壊の確率を低下させるには、例えば、カラム数を増加させることが考えられる。【０００９】
しかしながら、カラム数の増加は、半導体記憶装置のアスペクト比の変化（横長化）、ワードラインの長大化による動作速度の低下に繋がるという問題があった。【００１０】
そこで、アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の実施の形態の半導体記憶装置は、データを保持する複数のメモリセルをそれぞれ有する複数のメモリブロックと、同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて異なるメモリブロック内のメモリセルを特定するデコーダと、前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行する読み書き制御部とを含む。
【発明の効果】
【００１２】
アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】ＳＲＡＭに用いられるシングルポート型のビットセル１０の構造を概略的に示す図である。
【図２】図１のビットセル１０の構造を詳細に示す図である。
【図３】８トランジスタ型のマルチポートビットセルを示す図である。
【図４】比較例の半導体記憶装置の一例であるＳＲＡＭ３０の一部分を示す図である。
【図５】他の比較例の半導体記憶装置の一例であるＳＲＡＭ３０Ａの一部分を示す図である。
【図６】実施の形態１の半導体記憶装置を含む情報処理装置を示す図である。
【図７】図６の半導体記憶装置を拡大して示す図である。
【図８】実施の形態１のＳＲＡＭ２００の一部分を示す図である。
【図９Ａ】実施の形態１のＳＲＡＭ２００の入力アドレスのデータ構成を示す図である。
【図９Ｂ】実施の形態１のＳＲＡＭ２００のロウデコーダ２２１の回路を示す図である。
【図９Ｃ】実施の形態１のＳＲＡＭ２００のサブブロックデコーダ２２２の回路を示す図である。
【図９Ｄ】実施の形態１のＳＲＡＭ２００の上下選択デコーダ２２３の回路を示す図である。
【図９Ｅ】実施の形態１のＳＲＡＭ２００のパターン選択デコーダ２２４の回路を示す図である。
【図９Ｆ】実施の形態１のＳＲＡＭ２００のカラムデコーダ２２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図９Ｇ】実施の形態１のＳＲＡＭ２００のカラムデコーダ２２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図９Ｈ】実施の形態１のＳＲＡＭ２００のカラムデコーダ２２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図９Ｉ】実施の形態１のＳＲＡＭ２００のカラムデコーダ２２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図１０】実施の形態１のＳＲＡＭ２００のカラム選択／読み書き回路２１３と、カラム選択データを伝送する信号線との接続関係を示す図である。
【図１１】実施の形態１のＳＲＡＭ１００のカラム選択／読み書き回路２１３の回路を示す図である。
【図１２】実施の形態１のＳＲＡＭ２００における第１パターンと第２パターンによるビットの選択の仕方を示す図である。
【図１３】実施の形態１のＳＲＡＭ２００の動作例を示すタイミングチャートである。
【図１４】実施の形態１のＳＲＡＭ２００の動作例を示す図である。
【図１５】実施の形態１のＳＲＡＭ２００の動作例を示す図である。
【図１６】実施の形態２のＳＲＡＭ４００を示す図である。
【図１７】実施の形態２のＳＲＡＭ４００の切替回路２１５を示す図である。
【図１８】実施の形態２のＳＲＡＭ４００の一部分を示す図である。
【図１９Ａ】実施の形態２のＳＲＡＭ４００の入力アドレスのデータ構成を示す図である。
【図１９Ｂ】実施の形態２のＳＲＡＭ４００のロウデコーダ４２１の回路を示す図である。
【図１９Ｃ】実施の形態２のＳＲＡＭ４００のサブアレイデコーダ４２２の回路を示す図である。
【図１９Ｄ】実施の形態２のＳＲＡＭ４００のパターン選択デコーダ４２３の回路を示す図である。
【図１９Ｅ】実施の形態２のＳＲＡＭ４００のカラムデコーダ４２４の回路を示す図である。
【図２０】実施の形態２のＳＲＡＭ４００における同一アドレスのビットセルを含むサブブロックを色分けして示す図である。
【図２１】実施の形態２のＳＲＡＭ４００における同一アドレスのビットセルを含むサブブロックを色分けして示す図である。
【図２２】実施の形態３のＳＲＡＭ６００を示す図である。
【図２３】実施の形態３のＳＲＡＭ６００の一部分を示す図である。
【図２４Ａ】実施の形態３のＳＲＡＭ６００の入力アドレスのデータ構成を示す図である。
【図２４Ｂ】実施の形態３のＳＲＡＭ６００のロウデコーダ２２１の回路を示す図である。
【図２４Ｃ】実施の形態３のＳＲＡＭ６００のサブブロックデコーダ２２２の回路を示す図である。
【図２４Ｄ】実施の形態３のＳＲＡＭ６００のパターン選択デコーダ６２３の回路を示す図である。
【図２４Ｅ】実施の形態３のＳＲＡＭ６００の領域選択デコーダ６２４の回路を示す図である。
【図２４Ｆ】実施の形態３のＳＲＡＭ６００のカラムデコーダ６２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図２４Ｇ】実施の形態３のＳＲＡＭ６００のカラムデコーダ６２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図２４Ｈ】実施の形態３のＳＲＡＭ６００のカラムデコーダ６２５に含まれるカラムアドレスをデコードする回路を示す図である。
【図２４Ｉ】実施の形態３のＳＲＡＭ６００のカラムデコーダ６２５に含まれるカラムアドレスをデコードする回路を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の半導体記憶装置及び半導体記憶装置の制御方法を適用した実施の形態について説明する。
【００１５】
実施の形態１乃至３の半導体記憶装置及び半導体記憶装置の制御方法について説明する前に、まず、図１乃至図５を用いて、比較例の半導体記憶装置と問題点について説明する。
【００１６】
図１は、ＳＲＡＭ（Static Random Access Memory）に用いられるシングルポート型のビットセル１０の構造を概略的に示す図であり、図２は図１のビットセル１０の構造を詳細に示す図である。
【００１７】
図１に示すように、ビットセル１０は、一対の否定回路であるインバータ１１、１２と一対のＮＭＯＳ（N-type Metal Oxide Semiconductor：Ｎ型金属酸化膜半導体）トランジスタ１３、１４を含む。
【００１８】
インバータ１１、１２は、ループを形成するように接続されている。ＮＭＯＳトランジスタ１３、１４のゲートは、ともにワードラインＷＬ（Ｗｏｒｄ  Ｌｉｎｅ）に接続されており、ＮＭＯＳトランジスタ１３のドレインは正極性のビットラインＢＬに接続され、ＮＭＯＳトランジスタ１４のドレインは負極性のビットラインＢＬＢ（ＢＬバー）に接続されている。
【００１９】
また、ＮＭＯＳトランジスタ１３、１４のソースは、ループ状に接続されるインバータ１１、１２の接続部Ｎ１、Ｎ２に接続されている。
【００２０】
図２に示すように、インバータ１１は、ＰＭＯＳ（P-type Metal Oxide Semiconductor：Ｐ型金属酸化膜半導体）トランジスタ１１ＡとＮＭＯＳトランジスタ１１Ｂとを有するＣＭＯＳ（Complementary Metal Oxide Semiconductor：相補型金属酸化膜半導体）型のインバータである。同様に、インバータ１２は、ＰＭＯＳトランジスタ１２ＡとＮＭＯＳトランジスタ１２Ｂとを有するＣＭＯＳ型のインバータである。すなわち、図１、図２に示すビットセルは、６つのＭＯＳトランジスタを含む。
【００２１】
ＭＯＳトランジスタ１１Ａ、１１Ｂの入出力端子と、ＭＯＳトランジスタ１２Ａ、１２Ｂの入出力端子とは、交差して接続されており、ビットセル１０は、インバータ１１、１２を含むラッチ回路として実現される。
【００２２】
ＭＯＳトランジスタ１１Ａ、１１Ｂのドレイン同士の接続部Ｎ１は、図１に示す接続部Ｎ１に相当し、記憶ノードＮ１として機能する。また、ＭＯＳトランジスタ１２Ａ、１２Ｂのドレイン同士の接続部Ｎ２は図１に示す接続部Ｎ２に相当し、記憶ノードＮ２として機能する。
【００２３】
記憶ノードＮ１、Ｎ２に、"１"、"０"又は"０"、"１"の相補データを保持させ、ワードラインＷＬと一対のビットラインＢＬ、ＢＬＢでビットセル１０を選択することにより、記憶ノードＮ１、Ｎ２のデータの読み出し、及び書き込みを行う。
【００２４】
データの読み出す際は、一対のビットラインＢＬ、ＢＬＢをＨレベルにして、ワードラインＷＬを駆動すると、ビットラインＢＬ、ＢＬＢのいずれか一方が記憶ノードＮ１又はＮ２によりＬレベルにされ、読み出しデータとして出力される。
【００２５】
一方、データを書き込む際は、一対のビットラインＢＬ、ＢＬＢのいずれか一方をＨレベル、他方をＬレベルにした状態で、ワードラインＷＬを駆動し、記憶ノードＮ１、Ｎ２に書き込みを行う。
【００２６】
図１、図２に示すような６トランジスタ型のビットセル１０は、１つのビットセル１０においてデータの読み出しと書き込みを同時に行うことはできず、読み出しと書き込みは異なるサイクルで行われる。
【００２７】
次に、同時にデータの読み書きを行うことのできるマルチポートビットセルについて説明する。
【００２８】
図３は、８トランジスタ型のマルチポートビットセルを示す図である。図３に示すマルチポート型のビットセル２０は、２つのインバータを含む。２つのインバータ自体は、図１に示したシングルポート型のビットセル１０に含まれるインバータ１１、１２と同一であり、それぞれが２つのトランジスタを含むため（図２参照）、ここでは同一符号を用い、その説明を省略する。
【００２９】
図３に示すマルチポート型のビットセル２０は、ワードラインが２本あり、（Ｗｒｉｔｅ  Ｗｏｒｄ  Ｌｉｎｅ）と（Ｒｅａｄ  Ｗｏｒｄ  Ｌｉｎｅ）を含む。また、ビットラインは二対あり、正極性の書き込み用ビットラインＷＢＬ（Ｗｒｉｔｅ  Ｂｉｔ  Ｌｉｎｅ）、負極性の書き込み用ビットラインＷＢＬＢ（Ｗｒｉｔｅ  Ｂｉｔ  Ｌｉｎｅ  Ｂａｒ）、及び正極性の読み出し用ビットラインＲＢＬ（Ｒｅａｄ  Ｂｉｔ  Ｌｉｎｅ）、負極性の読み出し用ビットラインＲＢＬＢ（Ｒｅａｄ  Ｂｉｔ  Ｌｉｎｅ  Ｂａｒ）を含む。
【００３０】
読み出し用ワードラインＲＷＬには、ＮＭＯＳトランジスタ２１、２２のゲートがそれぞれ接続されている。ＮＭＯＳトランジスタ２１のドレインは読み出し用ビットラインＲＢＬＢに接続され、ソースは記憶ノードＮ１に接続されている。また、ＮＭＯＳトランジスタ２２のドレインは読み出し用ビットラインＲＢＬに接続され、ソースは記憶ノードＮ２に接続されている。
【００３１】
書き込み用ワードラインＷＷＬには、ＮＭＯＳトランジスタ２３、２４のゲートがそれぞれ接続されている。ＮＭＯＳトランジスタ２３のドレインは書き込み用ビットラインＷＢＬＢに接続され、ソースは記憶ノードＮ１に接続されている。また、ＮＭＯＳトランジスタ２４のドレインは書き込み用ビットラインＷＢＬに接続され、ソースは記憶ノードＮ２に接続されている。
【００３２】
データを読み出す際は、読み出し用ワードラインＲＷＬと、読み出し用ビットラインＲＢＬ、ＲＢＬＢとでビットセル２０を選択する。
【００３３】
データを書き込む際は、書き込み用ワードラインＷＷＬと、書き込み用ビットラインＷＢＬ、ＷＢＬＢとでビットセル２０を選択する。
【００３４】
このように、ビットセル２０は、読み出しと書き込みに用いるトランジスタ（２１、２２、２３、２４）を二対含み、読み出しと書き込みで別々のワードライン及びビットラインを用いるため、同時に読み書きを行うことができる。
【００３５】
なお、図３では、書き込み用ワードラインＷＷＬ、読み出し用ワードラインＲＷＬ、書き込み用ビットラインＷＢＬ、ＷＢＬＢ、読み出し用ビットラインＲＢＬ、ＲＢＬＢのように、ワードラインとビットラインを読み出し用と書き込み用に分けて説明した。しかしながら、ワードラインとビットラインは読み出し用と書き込み用に区別する必要はなく、いずれを用いてデータの読み出し又は書き込みを行ってもよい。
【００３６】
次に、図１及び図２に示すビットセル１０を含む比較例の半導体記憶装置について説明する。
【００３７】
図４は、比較例の半導体記憶装置の一例であるＳＲＡＭ３０の一部分を示す図である。
【００３８】
図４に示すＳＲＡＭ３０は、アレイ状に配列された複数のビットセル１０、ワードラインドライバ３１、３２、カラム選択／読み書き回路３３、ワードラインＷＬ（Word Line）、及びビットラインＢＬ（Bit Line）、ＢＬＢ（Bit Line Bar）を含む。
【００３９】
ビットラインＢＬとＢＬＢは対をなしており、対をなしたビットラインＢＬ、ＢＬＢとに接続されたビットセル１０が１つずつ配置されている。
【００４０】
ワードラインドライバ３１、３２は、それぞれ、４本のワードラインＷＬが接続されており、ロウアドレスをデコードして出力するロウ選択データ（ロウ選択信号）に基づき、ロウの選択（ワードラインの選択）を行う。
【００４１】
カラム選択／読み書き回路３３は、ビットラインＢＬ、ＢＬＢが接続されており、カラムアドレスをデコードして出力するカラム選択データ（カラム選択信号）に基づき、カラムの選択（ビットラインの選択）を行う。
【００４２】
図４に示す４８個のビットセル１０は、カラム選択／読み書き回路３３よりも上側に示す２４個が１つのサブアレイに含まれており、カラム選択／読み書き回路３３よりも下側に示す２４個が他の１つのサブアレイに含まれている。すなわち、図４には、２つのサブアレイを示す。サブアレイは、例えば、下層から上層に向かってサブアレイ／サブブロック／バンクと階層分けされているメモリ階層の最小単位である。
【００４３】
ここで、ＳＲＡＭ３０に含まれる各ビットをＤ[ｎ]と表す。ｎは任意の自然数であり、ＳＲＡＭ３０のビット数を表す。
【００４４】
図４に示すＳＲＡＭ３０は、各ビットが４カラムを含む。すなわち、Ｄ[ｎ−１]、Ｄ[ｎ]、Ｄ[ｎ＋１]、Ｄ[ｎ＋２]の各ビットは、それぞれ、４カラムを含む（図４には、説明の簡単化のため、Ｄ[ｎ−１]の３カラム分とＤ[ｎ＋２]の１カラム分を示す）。
【００４５】
また、上述のように、ワードラインドライバ３１、３２には、それぞれ、４本のワードラインＷＬが接続されている。
【００４６】
従って、図４に示すＳＲＡＭ３０は、１つのサブアレイの内部において、１つのビットに対して（４ロウ×４カラムで）１６個のビットセル１０が割り当てられていることになる。
【００４７】
このような比較例のＳＲＡＭ３０において、図４に太線で示すＳＲＡＭ３０は、例えば、１バイト単位で読み書きを行なうため、ビットＤ[ｎ＋１]、Ｄ[ｎ]、Ｄ[ｎ−１]が同一のバイトに含まれる場合には、それぞれ異なるビットＤ[ｎ＋１]、Ｄ[ｎ]、Ｄ[ｎ−１]の３つのビットセルは、同一アドレスとなる。ここでは、太線で示す３つのビットセル１０を区別するために、ビットＤ[ｎ＋１]内のビットセルを１０Ａ、ビットＤ[ｎ]内のビットセルを１０Ｂ、ビットＤ[ｎ−１]内のビットセルを１０Ｃと表す。
【００４８】
このような比較例のＳＲＡＭ３０において、ＳＲＡＭ３０に入射したα線又は中性子線がビットセル１０Ａに衝突し、ビットセル１０Ａからビットセル１０Ｂまでの５つのビットセルが保持するデータが破壊されたとする。すなわち、５つの連続的に隣接するビットセル１０のデータが当該α線又は中性子線によって破壊されたことになる。
【００４９】
ビットセル１０Ａと１０Ｂが、同一アドレスである場合には、このようなデータ破壊は、同一アドレスで指定される１バイトのデータ中に含まれる２ビットにわたってデータ破壊が生じたことになる。
【００５０】
このように、比較例のＳＲＡＭ３０では、２ビット以上の複数ビットのデータ破壊が生じる可能性がある。
【００５１】
このようなα線等によるデータ破壊は、半導体記憶装置の微細化によるサイズ縮小、省電力化による動作電圧の低電圧化等により、増加傾向にある。
【００５２】
次に、図５を用いて、他の比較例の半導体記憶装置におけるデータ破壊について説明する。
【００５３】
図５は、他の比較例の半導体記憶装置の一例であるＳＲＡＭ３０Ａの一部分を示す図である。
【００５４】
図５に示す他の比較例のＳＲＡＭ３０Ａは、１ビットが８カラムを含む構成である点が図４に示す比較例のＳＲＡＭ３０と異なる。その他の構成は、図４に示す比較例のＳＲＡＭ３０と同様であるため、同一又は同等の構成要素には同一符号を付し、その説明を省略する。
【００５５】
このようなＳＲＡＭ３０Ａに、図４に示すＳＲＡＭ３０に入射したα線又は中性子線と同一の運動エネルギを有するα線又は中性子線が入射し、ビットＤ[ｎ]内のビットセル１０Ａに衝突し、５つの連続的に隣接するビットセル１０のデータが当該α線又は中性子線によって破壊されたとする。
【００５６】
この場合に、図５に示すＳＲＡＭ３０Ａにおいて、データ破壊はビットセル１０Ａからビットセル１０Ｄまで及ぶが、ビットセル１０Ａからビットセル１０Ｄの５つのビットセルはともに同一のビットＤ[ｎ]に含まれるため、データ破壊は１ビットで済む。
【００５７】
このように、各ビットＤ[ｋ]（ｋはｎ−１〜ｎ＋１）内のカラム数を増加させれば、複数ビットにわたるデータ破壊を抑制することができる。
【００５８】
しかしながら、ビット内におけるカラム数の増加は、半導体記憶装置のアスペクト比の変化（横長化）、ワードラインの長大化による動作速度の低下に繋がるという問題がある。
【００５９】
以上のように、比較例の半導体記憶装置（図４参照）は、複数ビットにおけるデータ破壊が生じやすいという問題があった。また、他の比較例の半導体記憶装置（図５参照）は、カラム数の増加によるアスペクト比の変化（横長化）、ワードラインの長大化による動作速度の低下が生じるという問題があった。
【００６０】
このため、以下で説明する実施の形態１乃至３では、上述の問題点を解決した半導体記憶装置及び半導体記憶装置の制御方法を提供することを目的とする。以下、実施の形態１、２の半導体回路装置について説明する。
【００６１】
＜実施の形態１＞
図６は、実施の形態１の半導体記憶装置を含む情報処理装置を示す図であり、図７は、図６の半導体記憶装置を拡大して示す図である。
【００６２】
実施の形態１では、一例として情報処理装置がサーバ１００の実施形態について説明する。
【００６３】
図６に示すように、サーバ１００は、ＬＳＩ（Large Scale Integrated circuit：大規模集積回路）１０１、主記憶装置１０２、及び補助記憶装置１０３を含む。ＬＳＩ１０１と主記憶装置１０２の間、及び主記憶装置１０２と補助記憶装置１０３の間は、例えば、それぞれ専用のバスで接続されている。
【００６４】
ＬＳＩ１０１は、プロセッサコア１１１、Ｌ１（Ｌｅｖｅｌ−１：一次）インストラクションキャッシュ１１２、Ｌ１データキャッシュ１１３、Ｌ２（Ｌｅｖｅｌ−２：二次）キャッシュ１１４、及びメモリコントローラ１１５を有する。
【００６５】
プロセッサコア１１１は、例えば、ＣＰＵ（Central Processing Unit：中央演算処理装置）コア（Core）であり、情報処理装置としてのサーバ１００の演算処理を行う演算処理装置である。ここで、プロセッサコア１１１、Ｌ１インストラクションキャッシュ１１２、及びＬ１データキャッシュ１１３は、ＣＰＵとして一体化されていてもよい。プロセッサコア１１１は、複数あってもよく、その場合は、各プロセッサコア１１１にＬ１インストラクションキャッシュ１１２とＬ１データキャッシュ１１３が一つずつ接続されていてもよい。
【００６６】
Ｌ１インストラクションキャッシュ１１２は、プロセッサコア１１１の演算処理に必要なプログラムを一時的に記憶する一次命令キャッシュである。Ｌ１インストラクションキャッシュの機能を実現するため、例えば、ＳＲＡＭが用いられる。
【００６７】
Ｌ１データキャッシュ１１３は、プロセッサコア１１１が演算処理に必要なデータ、又は演算処理で生成されたデータを保持する一次データキャッシュである。実施の形態１では、Ｌ１データキャッシュ１１３に、実施の形態１の半導体記憶装置としてのＳＲＡＭを用いる形態について説明する。なお、詳細な構造については、後述する。
【００６８】
Ｌ２キャッシュ１１４は、メモリ階層構造において主記憶装置１０２に近いという意味で、Ｌ１インストラクションキャッシュ１１２及びＬ１データキャッシュ１１３よりも下位のキャッシュであり、典型的には、Ｌ１インストラクションキャッシュ１１２及びＬ１データキャッシュ１１３よりも処理速度は低いが、容量の大きいキャッシュである。Ｌ２キャッシュ１１４の機能は、例えば、ＳＲＡＭで実現される。
【００６９】
メモリコントローラ１１５は、ＬＳＩ１０１が主記憶装置１０２との間でデータの読み書きを行う際の制御を行う制御装置であり、例えば、ＬＳＩで実現される。
【００７０】
主記憶装置１０２は、例えば、ＤＲＡＭ（Dynamic Random Access Memory：ダイナミックランダムアクセスメモリ）で実現され、補助記憶装置１０３は、例えば、ハードディスクで実現される。
【００７１】
なお、サーバ１００は、外部装置との通信を行うデータ入出力インタフェース等を含んでいてもよい。
【００７２】
図７に示すように、Ｌ１データキャッシュ１１３は、複数のＳＲＡＭ２００Ａ、２００Ｂ、・・・、２００Ｘを含む。ＳＲＡＭ２００Ａ、２００Ｂ、・・・、２００Ｘは、プロセッサコア１１１に対して並列に接続されており、プロセッサコア１１１によって選択が行われる。
【００７３】
ＳＲＡＭ２００Ａ、２００Ｂ、・・・、２００Ｘの構造はすべて同様であるため、ここでは、ＳＲＡＭ２００Ａについて説明する。なお、ここでは、ＳＲＡＭが複数あることを説明するためにＳＲＡＭ２００Ａ、２００Ｂ、・・・、２００Ｘと記すが、Ｌ１データキャッシュ１１３に含まれるＳＲＡＭの数は１つでもよいし、例えば、２つ以上の数のＳＲＡＭが配列されていてもよい。
【００７４】
ＳＲＡＭ２００Ａは、図７の左側に示すように、メモリ領域が複数のサブブロック（Sub Block）２１０に分けられて階層化されており、デコーダ（Decoder）２２０、入出力ポート（I/O）２３０Ａ、２３０Ｂ、及びタイマ（Timer）２４０を含む。
【００７５】
図７の左側に示すように、サブブロック２１０は、入出力ポート（I/O）２３０Ａの上下に４段ずつ配設されるとともに、入出力ポート（I/O）２３０Ｂの上下に４段ずつ配設される。ここで、入出力ポート（I/O）２３０Ａ及び２３０Ｂの上下に４段ずつ配設される１６個のサブブロックに、入出力ポート（I/O）２３０Ａ、２３０Ｂから近い方から順に、サブブロック番号０〜３を付す。
【００７６】
なお、以下では、入出力ポート（I/O）２３０Ａ、２３０Ｂを区別しない場合には、入出力ポート（I/O）２３０と称す。
【００７７】
各サブブロック２１０は、図７のＳＲＡＭ２００Ａの右側に拡大して示すように、２つのサブアレイ（Sub Array）２１１Ａ、２１１Ｂ、ワードラインドライバ２１２Ａ、２１２Ｂ、及びカラム選択／読み書き回路（Column Select/Read/Write logic）２１３を含む。図７の右側には、サブブロック番号が２と３のサブブロック２１０（Sub Block 2, Sub Block 3）を示す。
【００７８】
なお、各サブブロック２１０は、複数のビットに分けられている。ここでは、一例として、比較例のＳＲＡＭ３０（図４参照）と同様に、１つのビットが４カラムを含むこととする。
【００７９】
ＳＲＡＭ２００Ａに含まれるすべてのサブアレイ２１１Ａ、２１１Ｂは、同様の構造であり、メモリセルとしてのビットセルがアレイ状に配列され、デコーダ２２０に入力される入力アドレスのデコーダ２２０によるデコード結果に基づいてワードラインとビットラインの選択が行えるようになっている。
【００８０】
ここで、入力アドレスは、プロセッサコア１１１（図６参照）からデコーダ２２０に入力される。入力アドレスは、カラムを特定するためのカラムアドレス、ロウを特定するためのロウアドレス、及び、サブアレイを特定するためのサブアレイアドレスを含む。
【００８１】
また、デコーダ２２０は、カラムアドレスをデコードするカラムデコーダ、ロウアドレスをデコードするロウデコーダ、及び、サブアレイアドレスをデコードするためのサブアレイデコーダを含む。
【００８２】
ワードラインドライバ２１２Ａ、２１２Ｂは、それぞれサブアレイ２１１Ａ、２１１Ｂに対応して設けられており、それぞれサブアレイ２１１Ａ、２１１Ｂに含まれるワードラインに接続されている。ワードラインドライバ２１２Ａ、２１２Ｂは、それぞれデコーダ２２０がロウアドレスをデコードして出力するロウ選択データ（ロウ選択信号）に基づき、ロウの選択（ワードラインの選択）を行う。
【００８３】
カラム選択／読み書き回路２１３は、各サブブロック２１０に対応して設けられており、各サブブロック２１０内の２つのサブアレイ２１１Ａ、２１１Ｂのビットラインに接続されている。カラム選択／読み書き回路２１３は、デコーダ２２０がカラムアドレスをデコードして出力するカラム選択データ（カラム選択信号）に基づき、カラムの選択（ビットラインの選択）を行う。
【００８４】
各階層のサブブロック２１０のカラム選択／読み書き回路２１３は、それぞれ、切替回路２１５Ａ、２１５Ｂを有する。
【００８５】
サブアレイ２１１Ａ、２１１Ｂのビットラインは、カラム選択／読み書き回路２１３内において、切替回路２１５Ａ、２１５Ｂを介して、グローバルビットライン２１４に接続されている。
【００８６】
図７には、説明の便宜上、切替回路２１５Ａ、２１５Ｂが、それぞれ、１本のビットラインと１本のグローバルビットライン２１４とを接続する形態を示すが、切替回路２１５Ａは、複数のビットラインと１本のグローバルビットライン２１４を接続していてもよい。
【００８７】
以下の説明では、一例として、切替回路２１５Ａが４本のビットラインと１本のグローバルビットライン２１４を接続する形態について説明する。
【００８８】
このようなカラム選択／読み書き回路２１３内の切替回路２１５Ａ、２１５Ｂにより、階層化されたすべてのサブブロック２１０に含まれるサブアレイ２１１Ａ、２１１Ｂのビットラインは、グローバルビットライン２１４に接続されている。グローバルビットライン２１４は、入出力ポート（I/O）２３０に接続されている。
【００８９】
以上のような構成により、各階層のサブブロック２１０は、グローバルビットライン２１４によって階層化されている。
【００９０】
切替回路２１５Ａ、２１５Ｂは、カラム選択データに基づいて、データの読み出し又は書き込みを行うメモリセルに接続されたビットラインをグローバルビットライン２１４と接続する。
【００９１】
切替回路２１５Ａ、２１５Ｂを含むカラム選択／読み書き回路２１３は、読み書き制御部である。
【００９２】
なお、以下では、ＳＲＡＭ２００Ａ、２００Ｂ、・・・、２００Ｘを特に区別をしない場合には、ＳＲＡＭ２００と表記することとする。
【００９３】
また、図７に示すサブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂ等の位置関係は、サブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂ等の階層構造を表しており、本明細書中における「上」又は「下」なる文言は、物理的な上下関係を表すものではない。
【００９４】
次に、図８を用いて、実施の形態１の半導体記憶装置としてのＳＲＡＭ２００の詳細な構造について説明する。
【００９５】
図８は、実施の形態１のＳＲＡＭ２００の一部分を示す図である。
【００９６】
図８に示すＳＲＡＭ２００の一部分は、図７に示す入出力ポート（I/O）２３０Ａの上側に接続されるサブブロック番号０のサブブロック２１０（Sub Block 0）のビットＤ[ｎ]の部分、ワードラインドライバ２１２Ａ、２１２Ｂ、カラム選択／読み書き回路２１３、グローバルビットライン２１４、及びデコーダ２２０に対応する部分である。
【００９７】
ＳＲＡＭ２００は、プロセッサコア１１１（図６参照）から入力される読み出し命令と書き込み命令に従って、データの読み出しと書き込みを行う。
【００９８】
サブアレイ２１１Ａ、２１１Ｂは、それぞれ、アレイ状に配列された複数のメモリセルとしてのビットセル１０を含む。
【００９９】
実施の形態１のＳＲＡＭ２００で用いるビットセル１０は、図１及び図２に示す比較例の６トランジスタ型のビットセル１０と同様である。このため、ビットセル１０の動作説明は、省略する。
【０１００】
なお、ビットセル１０に含まれるＭＯＳトランジスタ１３のソースとドレインの接続は、逆であっても構わない。同様に、ＭＯＳトランジスタ１４のソースとドレインの接続についても、逆であっても構わない。  また、実施の形態１では、図１及び図２に示す６トランジスタ型のビットセル１０の代わりに、図３に示す８トランジスタ型のビットセル２０を用いてもよい。
【０１０１】
比較例のＳＲＡＭ３０（図４参照）は、同一アドレスの複数のビットセルを、１つのサブアレイに含まれる各ビットに１つずつ割り当てている。このため、図４に示すように、隣接するビットＤ[ｎ＋１]とビットＤ[ｎ]に、同一アドレスのビットセル１０Ａと１０Ｂが含まれている。
【０１０２】
これに対して、実施の形態１のＳＲＡＭ２００は、同一アドレスのビットセル１０を隣接するビットに割り当てず、１つのサブブロック２１０に含まれる２つのサブアレイ２１１Ａ及び２１１Ｂの中で、千鳥状に割り当てる。
【０１０３】
すなわち、例えば、１つのサブブロック２１０の中で、サブアレイ２１１Ａ内の奇数番目のビットと、サブアレイ２１１Ｂの偶数番目のビットとに含まれるビットセル１０に、同一アドレスを割り当てる。また、１つのサブブロック２１０の中で、サブアレイ２１１Ａ内の偶数番目のビットと、サブアレイ２１１Ｂの奇数番目のビットとに含まれるビットセル１０に、同一アドレスを割り当てる。なお、このようなアドレスの割り当てについては、図１０乃至図１２を用いて後述する。
【０１０４】
このため、実施の形態１のＳＲＡＭ２００では、読み出し命令は、いずれかのサブブロック２１０内のサブアレイ２１１Ａ及び２１１Ｂ内のビットセル１０を千鳥状に特定する入力アドレスと、ライトイネーブル（Ｗｒｉｔｅ  Ｅｎａｂｌｅ）信号Ｗ／Ｅ（Ｌレベル）とを含む。書き込み命令は、いずれかのサブブロック２１０内のサブアレイ２１１Ａ及び２１１Ｂ内のビットセル１０を千鳥状に特定する入力アドレスと、ライトイネーブル信号Ｗ／Ｅ（Ｈレベル）とを含む。
【０１０５】
なお、読み出し命令と書き込み命令は、プロセッサコア１１１（図６参照）から要求される命令である。
【０１０６】
ここで、実施の形態１のＳＲＡＭ２００では、同一アドレスの複数のビットセル１０が、１つのサブブロック２１０の中のサブアレイ２１１Ａと２１１Ｂとにわたって千鳥状に配設されているため、データの読み出しと書き込みはサブブロック２１０単位で行う。
【０１０７】
データの読み出しは、ＳＲＡＭ２００に多数含まれるサブブロック２１０のうちのいずれかのサブブロック２１０に含まれるサブアレイ２１１Ａ及び２１１Ｂに対して同時に行う。
【０１０８】
同様に、データの書き込みは、ＳＲＡＭ２００に多数含まれるサブブロック２１０のうちのいずれかのサブブロック２１０に含まれるサブアレイ２１１Ａ及び２１１Ｂに対して同時に行う。
【０１０９】
このようにデータの読み出しと書き込みをサブブロック２１０単位で行うため、実施の形態１のＳＲＡＭ２００は、サブブロックの選択を行う必要がある。サブブロックの選択は、サブブロック番号を特定することによって実現される。
【０１１０】
また、サブブロック２１０は、図７に示すように、入出力ポート（I/O）２３０の上下に同一のサブブロック番号が割り当てられているため、ＳＲＡＭ２００内の多数のサブブロック２１０の中から一つのサブブロック２１０を選択するためには、サブブロック番号の特定に加えて、上下の指定が必要になる。
【０１１１】
また、データの読み出し又は書き込みは、サブアレイ２１１Ａ及び２１１Ｂ内の奇数番目のビットと偶数番目のビットとに対して選択的に行うため、次の２パターンがある。
【０１１２】
第１パターンは、サブアレイ２１１Ａ内の奇数番目のビットとサブアレイ２１１Ｂの偶数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０１１３】
これは、同一アドレスのビットをサブアレイ２１１Ａ内の奇数番目のビットとサブアレイ２１１Ｂの偶数番目のビットとに割り当てることによって実現される。
【０１１４】
第２パターンは、サブアレイ２１１Ａ内の偶数番目のビットとサブアレイ２１１Ｂの奇数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０１１５】
これは、同一アドレスのビットをサブアレイ２１１Ａ内の偶数番目のビットとサブアレイ２１１Ｂの奇数番目のビットとに割り当てることによって実現される。
【０１１６】
このため、実施の形態１のＳＲＡＭ２００では、データの読み出し及び書き込みを第１パターンと第２パターンのどちらで行うかを選択する必要がある。
【０１１７】
従って、実施の形態１のＳＲＡＭ２００では、ロウ選択及びカラム選択に加えて、サブブロックの選択、上下の選択、及び、第１又は第２パターンの選択が必要になる。
【０１１８】
ロウ選択、カラム選択、サブブロックの選択、上下の選択、及び第１又は第２パターンの選択は、読み出し命令又は書き込み命令に含まれる入力アドレスに基づいて行われる。
【０１１９】
例えば、入力アドレスの下位から上位にかけて、カラム選択を行うカラムアドレス、ロウ選択を行うロウアドレス、第１又は第２パターン選択を行うパターン選択アドレス、サブブロック選択を行うサブブロックアドレス、上下選択を行う上下選択アドレスを、それぞれ割り当てればよい。この場合に、各アドレスには、入力アドレスのうちの数ビットずつが割り当てられるようにすればよい。なお、具体的なアドレスの割当例については、図９Ａを用いて後述する。
【０１２０】
次に、ワードライン及びビットラインの接続関係と、デコーダ２２０について説明する。
【０１２１】
サブアレイ２１１Ａ（Sub Array 0）は、４本のワードラインＷＬ００〜ＷＬ０３と、４対のビットラインＢＬ００、ＢＬＢ（ＢＬバー）００〜ＢＬ０３、ＢＬＢ０３を含む。ワードラインＷＬ００〜ＷＬ０３は、それぞれワードラインドライバ２１２Ａに接続されており、ビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３は、それぞれカラム選択／読み書き回路２１３に接続されている。
【０１２２】
ここで、ビットラインＢＬ、ＢＬＢの添え数字をビットラインのライン番号と称す。
【０１２３】
サブアレイ２１１Ｂ（Sub Array 1）は、４本のワードラインＷＬ１０〜ＷＬ１３と、４対のビットラインＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３を含む。ワードラインＷＬ１０〜ＷＬ１３は、それぞれワードラインドライバ２１２Ｂに接続されており、ビットラインＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３は、それぞれカラム選択／読み書き回路２１３に接続されている。
【０１２４】
なお、各ビットセル１０は、ワードラインとビットライン対の交差部に配設される。
【０１２５】
また、図８にはサブアレイ２１１Ａ、２１１Ｂのうちの１ビット（Ｄ[ｎ]）の部分だけを示すが、実際にはｎビットあるため、各ワードラインは、ワードラインドライバ２１２Ａ、２１２Ｂからすべてのビットに伸びている。
【０１２６】
デコーダ２２０は、ロウデコーダ２２１、サブブロックデコーダ２２２、上下（Top/Bottom）選択デコーダ２２３、パターン選択デコーダ２２４、及びカラムデコーダ２２５を含む。デコーダ２２０には、入力アドレスが入力される。また、カラムデコーダ２２５には、ライトイネーブル信号Ｗ／Ｅが入力される。
【０１２７】
なお、ロウデコーダ２２１、サブブロックデコーダ２２２、上下選択デコーダ２２３、パターン選択デコーダ２２４、及びカラムデコーダ２２５は、ＳＲＡＭ２００全体に対して、一つずつ配設される。
【０１２８】
ロウデコーダ２２１、サブブロックデコーダ２２２、及び上下選択デコーダ２２３は、信号線を介して、ワードラインドライバ２１２Ａ、２１２Ｂに接続されている。実際には、サブブロック２１０は階層化されているため（図７参照）、ロウデコーダ２２１、サブブロックデコーダ２２２、及び上下選択デコーダ２２３は、すべてのサブブロック２１０のワードラインドライバ２１２Ａ、２１２Ｂに接続されている。
【０１２９】
次に、ロウデコーダ２２１によるロウ選択、サブブロックデコーダ２２２によるサブブロック選択、上下選択デコーダ２２３による上下の選択、カラムデコーダ２２５によるカラム選択について説明する。
【０１３０】
ロウデコーダ２２１は、信号線を介して、ワードラインドライバ２１２Ａ、２１２Ｂに接続されており、読み出し命令又は書き込み命令の入力アドレスに含まれるロウアドレスをデコードしてロウ選択データＲＯＷ[３：０]を出力する。ロウ選択データＲＯＷ[３：０]は、ワードラインドライバ２１２Ａ、２１２Ｂに入力される。
【０１３１】
この結果、ワードラインドライバ２１２Ａ、２１２Ｂは、ロウ選択データＲＯＷ[３：０]を用いてロウ選択を行い、ワードラインＷＬ００〜ＷＬ０３、ＷＬ１０〜ＷＬ１３のいずれかを選択する。
【０１３２】
ロウ選択データＲＯＷ[３：０]は、ワードラインドライバ２１２Ａ、２１２Ｂに入力される４ビットのデータである。
【０１３３】
ロウ選択データＲＯＷ[３：０]は、図７に示す入出力ポート(I/O)２３０の上下に４段ずつ配列されるすべてのサブブロック２１０内のワードラインドライバ２１２Ａ、２１２Ｂにロウデコーダ２２１から入力される。このため、ロウ選択データＲＯＷ[３：０]に基づくロウ選択は、すべてのサブアレイの中で行われる。
【０１３４】
なお、ロウ選択データＲＯＷ[３：０] は、ロウ選択データＲＯＷ[３]、ロウ選択データＲＯＷ[２]、ロウ選択データＲＯＷ[１]、ロウ選択データＲＯＷ[０]の４ビットのロウ選択データをまとめて表す。
【０１３５】
サブブロックデコーダ２２２は、信号線を介して、ワードラインドライバ２１２Ａ、２１２Ｂに接続されており、読み出し命令又は書き込み命令の入力アドレスに含まれるサブブロックアドレスをデコードしてサブブロック選択データＳＢＳを出力する。
【０１３６】
図８には、サブブロック番号０のサブブロック２１０の中の一部分を示すため、サブブロックデコーダ２２２から１本の信号線を介して出力されるサブブロック選択データとしてＳＢＳ[０]のみを示す。
【０１３７】
しかしながら、実際には、図７に示すように入出力ポート(I/O)２３０の上下にサブブロック２１０が４段ずつあるため、サブブロックデコーダ２２２には８本の信号線が接続される。また、サブブロックデコーダ２２２は、サブブロック選択データＳＢＳ[０]〜ＳＢＳ[３]を出力する。なお、サブブロック選択データＳＢＳの添え数字は、サブブロック番号（０〜３）に対応する。
【０１３８】
８本の信号線は、それぞれ、入出力ポート(I/O)２３０の上下の４段のサブブロック２１０のワードラインドライバ２１２Ａ、２１２Ｂに接続される。
【０１３９】
サブブロック選択データＳＢＳ[０]〜ＳＢＳ[３]は、８本の信号線を介して、それぞれ、４段のサブブロック２１０のワードラインドライバ２１２Ａ、２１２Ｂに入力される。
【０１４０】
上下選択デコーダ２２３は、信号線を介して、図７に示す入出力ポート(I/O)２３０の上下の４段のサブブロック２１０の中のワードラインドライバ２１２Ａ、２１２Ｂに接続されている。上下選択デコーダ２２３は、読み出し命令又は書き込み命令の入力アドレスに含まれる上下選択アドレスをデコードしてＴＯＰデータ及びＢＯＴ（Bottom）データを出力する。
【０１４１】
ＴＯＰデータは、入出力ポート(I/O)２３０よりも上側にあるサブブロック２１０に割り当てられ、ＢＯＴデータは、入出力ポート(I/O)２３０よりも下側にあるサブブロック２１０に割り当てられる。
【０１４２】
図８に示すサブアレイ２１１Ａ及び２１１Ｂは入出力ポート(I/O)２３０よりも上側にあるサブブロック２１０（Sub Block 0）であるため、図８にはＴＯＰデータのみを示すが、入出力ポート(I/O)２３０よりも下側にあるサブブロック２１０には、上下選択デコーダ２２３からＢＯＴデータが入力される。
【０１４３】
実施の形態１のＳＲＡＭ２００では、サブブロックデコーダ２２２から出力されるサブブロック選択データＳＢＳと、上下選択デコーダ２２３から出力されるＴＯＰデータ又はＢＯＴデータとにより、入出力ポート(I/O)２３０の上側又は下側の何段目にあるサブブロック２１０を選択するかが決定される。
【０１４４】
この場合に、図７に示すＳＲＡＭ２００では、デコーダ２２０の左右にある同じ段の（サブブロック番号の等しい）サブブロック２１０が選択される。
【０１４５】
なお、データの読み出し又は書き込みを行うための１サイクル中に、読み出し命令又は書き込み命令の入力アドレスに基づいて選択されるサブブロック２１０は、図７に示すＳＲＡＭ２００では、デコーダ２２０の左右にある同じ段の２つのサブブロック２１０である。
【０１４６】
パターン選択デコーダ２２４は、信号線を介してカラムデコーダ２２５に接続されており、読み出し命令又は書き込み命令の入力アドレスに含まれるパターン選択アドレスをデコードして第１パターン選択データＦ（First）及び第２パターン選択データＳ（Second）を出力する。
【０１４７】
第１パターン選択データＦ及び第２パターン選択データＳは、それぞれ、第１パターン又は第２パターンを選択するためのデータであり、カラムデコーダ２２５に入力される。
【０１４８】
第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、第１パターンを選択することを表す。これとは逆に、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、第２パターンを選択することを表す。
【０１４９】
ここで、第１パターンでは、サブアレイ２１１Ａ内の奇数番目のビットとサブアレイ２１１Ｂの偶数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行う。
【０１５０】
第２パターンでは、サブアレイ２１１Ａ内の偶数番目のビットとサブアレイ２１１Ｂの奇数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行う。
【０１５１】
カラムデコーダ２２５は、信号線を介して、カラム選択／読み書き回路２１３に接続されている。カラムデコーダ２２５は、実際には、図７に示すすべてのサブブロック２１０の中のカラム選択／読み書き回路２１３に接続されている。
【０１５２】
カラムデコーダ２２５には、読み出し命令又は書き込み命令の入力アドレスに含まれるカラムアドレスに加えて、第１パターン選択データＦ、第２パターン選択データＳ、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０１５３】
カラムデコーダ２２５は、カラムアドレスをデコードし、第１パターン選択データＦ及び第２パターン選択データＳのデータ値と、ライトイネーブル信号Ｗ／Ｅの信号レベルとに応じたカラム選択データを出力する。
【０１５４】
カラムデコーダ２２５が出力するカラム選択データは、第１パターン又は第２パターンによるデータの読み出し又は書き込みを実現するように、サブアレイ２１１Ａ及び２１１Ｂのビット内のカラムを選択するためのデータである。
【０１５５】
カラム選択データは、カラム選択／読み書き回路２１３に入力される。
【０１５６】
カラムデコーダ２２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＬレベルで、第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]を出力する。
【０１５７】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]は、第１パターンでのデータの読み出しを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０１５８】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]により、第１パターンに従って、サブアレイ２１１Ａの各奇数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対と、サブアレイ２１１Ｂの各偶数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対とがデータの読み出しのために選択される。
【０１５９】
カラムデコーダ２２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＬレベルで、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]を出力する。
【０１６０】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０] は、第２パターンでのデータの読み出しを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０１６１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]により、第２パターンに従って、サブアレイ２１１Ａの各偶数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対と、サブアレイ２１１Ｂの各奇数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対とがデータの読み出しのために選択される。
【０１６２】
なお、図８には、１つのビットＤ[ｎ]のみを示すが、実際にはサブアレイ２１１Ａ及び２１１Ｂは多数のビットを含む。このため、カラム選択データに基づいて、各奇数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対と、各偶数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対とが選択される。
【０１６３】
また、カラムデコーダ２２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＨレベルで、第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]を出力する。
【０１６４】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]は、第１パターンでのデータの書き込みを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０１６５】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]により、第１パターンに従って、サブアレイ２１１Ａの各奇数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対と、サブアレイ２１１Ｂの各偶数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対とがデータの書き込みのために選択される。
【０１６６】
また、カラムデコーダ２２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＨレベルで、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]を出力する。
【０１６７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０] は、第２パターンでのデータの書き込みを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０１６８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]により、第２パターンに従って、サブアレイ２１１Ａの各偶数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対と、サブアレイ２１１Ｂの各奇数ビット内のいずれかのビットラインＢＬ、ＢＬＢの対とがデータの書き込みのために選択される。
【０１６９】
なお、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]は、それぞれ、４ビットのカラム選択データをまとめて示す表記である。
【０１７０】
例えば、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]を含む。これは、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]についても同様である。
【０１７１】
次に、カラム選択／読み書き回路２１３について説明する。
【０１７２】
カラム選択／読み書き回路２１３には、ビットラインＢＬ００〜ＢＬ０３、ＢＬＢ００〜ＢＬＢ０３、ＢＬ１０〜ＢＬ１３、ＢＬＢ１０〜ＢＬＢ１３が接続されている。
【０１７３】
カラム選択／読み書き回路２１３は、カラムデコーダ２２５から入力されるカラム選択データに基づき、ビットラインを選択する。
【０１７４】
カラム選択／読み書き回路２１３は、カラムデコーダ２２５から入力されるカラム選択データに基づいて、ビットラインＢＬ、ＢＬＢの選択、読み出し／書き込みの切り替え、読み出しデータ／書き込みデータの受け渡しを行える回路であればよい。
【０１７５】
カラム選択／読み書き回路２１３は、データの読み出し又は書き込みのために、カラムデコーダ２２５からカラム選択データが入力されると、ライン番号が同一のビットラインＢＬとＢＬＢの対を選択する。
【０１７６】
また、カラム選択／読み書き回路２１３には、読み出したデータ又は書き込むデータを入出力ポート（I/O）２３０（図７参照）との間で伝送するグローバルビットライン２１４が接続されている。
【０１７７】
グローバルビットライン２１４は、ビットラインＢＬ、ＢＬＢを通じて読み出したデータを入出力ポート（I/O）２３０（図７参照）に伝送するとともに、書き込むデータを入出力ポート（I/O）２３０からビットラインＢＬ、ＢＬＢに伝送する。
【０１７８】
また、カラム選択／読み書き回路２１３のうち、ビットラインの選択を行う回路は、カラムデコーダ２２５から伝送されるカラム選択データに基づいて、２つのサブアレイ２１１Ａ、２１１Ｂにそれぞれ四対含まれるビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３、ＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３を選択できれば、その形式は問わない。
【０１７９】
また、カラム選択／読み書き回路２１３のうち、読み出しデータ及び書き込みデータの受け渡しを行う回路は、ライトイネーブル信号Ｗ／Ｅの信号レベルに応じたカラム選択データに基づいて読み出し処理と書き込み処理を切り替えることができ、グローバルビットライン２１４との間でデータの受け渡しができる回路であれば、その形式は問わない。
【０１８０】
なお、実際には、図７に示すようにサブブロック２１０は多数存在するため、カラムデコーダ２２５によるカラム選択は、すべてのサブブロック２１０の中から行われる。
【０１８１】
次に、図９（Ａ）〜図９（Ｉ）を用いて、入力アドレスのデータ構成とデコーダ２２０の回路構成について説明する。
【０１８２】
図９（Ａ）は、実施の形態１のＳＲＡＭ２００の入力アドレスの割当例を示す図である。入力アドレスＡ[７：０]は８ビットのデータであり、下位ビットから上位ビットにかけて、カラムアドレス（column）、ロウアドレス（row）、パターン選択アドレス（F/S）、サブブロックアドレス（Sub Block）、上下選択アドレス（Top/Bot）を含む。
【０１８３】
カラムアドレス（column）にはＡ[１：０]の２ビット、ロウアドレス（row）にはＡ[３：２]の２ビット、パターン選択アドレス（F/S）にはＡ[４]の１ビット、サブブロックアドレス（Sub Block）にはＡ[６：５]の２ビット、上下選択アドレス（Top/Bot）にはＡ[７]の１ビットが、それぞれ割り当てられている。
【０１８４】
図９（Ｂ）は、実施の形態１のＳＲＡＭ２００のロウデコーダ２２１の回路を示す図である。
【０１８５】
ロウデコーダ２２１は、２入力型のＡＮＤ（論理積）回路３００、３０１、３０２、３０３を含む。ＡＮＤ回路３００〜３０３には、それぞれ、２本の信号線が接続されており、それぞれ、ロウアドレスＡ[３]、Ａ[２]が入力される。
【０１８６】
ＡＮＤ回路３００、３０１、３０２、３０３は、それぞれ、ロウ選択データＲ[０]、Ｒ[１]、Ｒ[２]、Ｒ[３]を出力する。
【０１８７】
ロウ選択データＲ[０]は、図８に示すワードラインＷＬ００及びＷＬ１０を選択するためのロウ選択データである。同様に、ロウ選択データＲ[１]、Ｒ[２]、Ｒ[３]は、それぞれ、図８に示すワードラインＷＬ０１及びＷＬ１１、ＷＬ０２及びＷＬ１２、ＷＬ０３及びＷＬ１３を選択するためのロウ選択データである。
【０１８８】
ＡＮＤ回路３００には、ロウアドレスＡ[３]及びＡ[２]がともに否定演算されて入力される。ＡＮＤ回路３０１には、ロウアドレスＡ[３]が否定演算されて入力され、ロウアドレスＡ[２]はそのまま入力される。ＡＮＤ回路３０２には、ロウアドレスＡ[３]がそのまま入力され、ロウアドレスＡ[２]は否定演算されて入力される。ＡＮＤ回路３０３には、ロウアドレスＡ[３]及びＡ[２]がともにそのまま入力される。
【０１８９】
ロウデコーダ２２１は、ロウアドレスＡ[３]、Ａ[２]が"０"、"０"の場合は、ロウ選択データＲＯＷ[０]を"１"にし、ロウ選択データＲＯＷ[１]、ＲＯＷ[２]、ＲＯＷ[３]を"０"にする。
【０１９０】
ロウデコーダ２２１は、ロウアドレスＡ[３]、Ａ[２]が"０"、"１"の場合は、ロウ選択データＲＯＷ[１]を"１"にし、ロウ選択データＲＯＷ[０]、ＲＯＷ[２]、ＲＯＷ[３]を"０"にする。
【０１９１】
ロウデコーダ２２１は、ロウアドレスＡ[３]、Ａ[２]が"１"、"０"の場合は、ロウ選択データＲＯＷ[２]を"１"にし、ロウ選択データＲＯＷ[０]、ＲＯＷ[１]、ＲＯＷ[３]を"０"にする。
【０１９２】
ロウデコーダ２２１は、ロウアドレスＡ[３]、Ａ[２]が"１"、"１"の場合は、ロウ選択データＲＯＷ[３]を"１"にし、ロウ選択データＲＯＷ[０]、ＲＯＷ[１]、ＲＯＷ[２]を"０"にする。
【０１９３】
次に、図９（Ｃ）を用いて、サブブロックデコーダ２２２の回路について説明する。
【０１９４】
図９（Ｃ）は、実施の形態１のＳＲＡＭ２００のサブブロックデコーダ２２２の回路を示す図である。
【０１９５】
サブブロックデコーダ２２２は、ロウデコーダ２２１と同様に、２入力型のＡＮＤ（論理積）回路３１０、３１１、３１２、３１３を含む。ＡＮＤ回路３１０〜３１３には、それぞれ、２本の信号線が接続されており、それぞれ、サブブロックアドレスＡ[６]、Ａ[５]が入力される。
【０１９６】
ＡＮＤ回路３１０、３１１、３１２、３１３は、それぞれ、サブブロック選択データＳＢＳ[０]、ＳＢＳ[１]、ＳＢＳ[２]、ＳＢＳ[３]を出力する。
【０１９７】
サブブロック選択データＳＢＳ[０]は、図７に示すサブブロック番号０のサブブロック２１０（Sub Block 0）を選択するためのサブブロック選択データである。同様に、サブブロック選択データＳＢＳ[１]、ＳＢＳ[２]、ＳＢＳ[３]は、それぞれ、図７に示すサブブロック番号１、２、３のサブブロック２１０（Sub Block 1, Sub Block 2, Sub Block 3）を選択するためのサブブロック選択データである。
【０１９８】
ＡＮＤ回路３１０には、サブブロック選択アドレスＡ[６]及びＡ[５]がともに否定演算されて入力される。ＡＮＤ回路３１１には、サブブロック選択アドレスＡ[６]が否定演算されて入力され、サブブロック選択アドレスＡ[５]はそのまま入力される。ＡＮＤ回路３１２には、サブブロック選択アドレスＡ[６]がそのまま入力され、サブブロック選択アドレスＡ[５]は否定演算されて入力される。ＡＮＤ回路３１３には、サブブロック選択アドレスＡ[６]及びＡ[５]がともにそのまま入力される。
【０１９９】
サブブロックデコーダ２２２は、サブブロック選択アドレスＡ[６]、Ａ[５]が"０"、"０"の場合は、サブブロック選択データＳＢＳ[０]を"１"にし、サブブロック選択データＳＢＳ[１]、ＳＢＳ[２]、ＳＢＳ[３]を"０"にする。
【０２００】
サブブロックデコーダ２２２は、サブブロック選択アドレスＡ[６]、Ａ[５]が"０"、"１"の場合は、サブブロック選択データＳＢＳ[１]を"１"にし、サブブロック選択データＳＢＳ[０]、ＳＢＳ[２]、ＳＢＳ[３]を"０"にする。
【０２０１】
サブブロックデコーダ２２２は、サブブロック選択アドレスＡ[６]、Ａ[５]が"１"、"０"の場合は、サブブロック選択データＳＢＳ[２]を"１"にし、サブブロック選択データＳＢＳ[０]、ＳＢＳ[１]、ＳＢＳ[３]を"０"にする。
【０２０２】
サブブロックデコーダ２２２は、サブブロック選択アドレスＡ[６]、Ａ[５]が"１"、"１"の場合は、サブブロック選択データＳＢＳ[３]を"１"にし、サブブロック選択データＳＢＳ[０]、ＳＢＳ[１]、ＳＢＳ[２]を"０"にする。
【０２０３】
次に、図９（Ｄ）を用いて、上下選択デコーダ２２３の回路について説明する。
【０２０４】
図９（Ｄ）は、実施の形態１のＳＲＡＭ２００の上下選択デコーダ２２３の回路を示す図である。
【０２０５】
上下選択デコーダ２２３は、１入力・２出力型の回路を有し、上下選択アドレスＡ[７]をデコードしてＴＯＰデータとＢＯＴデータを出力する。ＴＯＰデータはインバータ３２０により上下選択アドレスＡ[７]のデータ値の反転値として出力され、ＢＯＴデータは上下選択アドレスＡ[７]のデータ値のまま出力される。
【０２０６】
ＴＯＰデータは、上述のように、図７に示す入出力ポート（I/O）２３０の上側に配列されるサブブロック２１０のワードラインドライバ２１２Ａ及び２１２Ｂに入力される。
【０２０７】
ＢＯＴデータは、上述のように、図７に示す入出力ポート（I/O）２３０の下側に配列されるサブブロック２１０のワードラインドライバ２１２Ａ及び２１２Ｂに入力される。
【０２０８】
ＴＯＰデータが"１"でＢＯＴデータが"０"である場合は、入出力ポート（I/O）２３０の上側に配列されるサブブロック２１０が選択される場合である。これとは逆に、ＴＯＰデータが"０"でＢＯＴデータが"１"である場合は、入出力ポート（I/O）２３０の下側に配列されるサブブロック２１０が選択される場合である。
【０２０９】
次に、図９（Ｅ）を用いて、パターン選択デコーダ２２４の回路について説明する。
【０２１０】
図９（Ｅ）は、実施の形態１のＳＲＡＭ２００のパターン選択デコーダ２２４の回路を示す図である。
【０２１１】
パターン選択デコーダ２２４は、１入力・２出力型の回路を有し、パターン選択アドレスＡ[４]をデコードして第１パターン選択データＦと第２パターン選択データＳを出力する。第１パターン選択データＦはインバータ３３０によりパターン選択アドレスＡ[４]のデータ値の反転値として出力され、第２パターン選択データＳはパターン選択アドレスＡ[４]のデータ値のまま出力される。
【０２１２】
第１パターン選択データＦ及び第２パターン選択データＳは、それぞれ、第１パターン又は第２パターンを選択するためのデータであり、カラムデコーダ２２５に入力される。
【０２１３】
第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、第１パターンを選択することを表す。これとは逆に、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、第２パターンを選択することを表す。
【０２１４】
次に、図９（Ｆ）〜図９（Ｉ）を用いて、カラムデコーダ２２５の回路について説明する。
【０２１５】
カラムデコーダ２２５は、カラムアドレスをデコードし、第１パターン選択データＦ及び第２パターン選択データＳのデータ値と、ライトイネーブル信号Ｗ／Ｅの信号レベルとに応じたカラム選択データを出力する。
【０２１６】
図９（Ｆ）〜図９（Ｉ）は、実施の形態１のＳＲＡＭ２００のカラムデコーダ２２５に含まれるカラムアドレスをデコードする回路を示す図である。
【０２１７】
カラムデコーダ２２５は、第１パターンによるデータの読み出しを行うためにカラムアドレスをデコードする回路３４０Ｒと、第１パターンによるデータの書き込みを行うためにカラムアドレスをデコードする回路３４０Ｗとを含む。
【０２１８】
また、カラムデコーダ２２５は、第２パターンによるデータの読み出しを行うためにカラムアドレスをデコードする回路３５０Ｒと、第２パターンによるデータの書き込みを行うためにカラムアドレスをデコードする回路３５０Ｗとをさらに含む。
【０２１９】
図９（Ｆ）に示すように、第１パターンによるデータの読み出しを行うためにカラムアドレスをデコードする回路３４０Ｒは、４入力型のＡＮＤ（論理積）回路３６０Ｒ、３６１Ｒ、３６２Ｒ、３６３Ｒを含む。ＡＮＤ回路３６０Ｒ〜３６３Ｒには、それぞれ、４本の信号線が接続されており、それぞれ、第１パターン選択データＦ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２２０】
ＡＮＤ回路３６０Ｒ、３６１Ｒ、３６２Ｒ、３６３Ｒは、それぞれ、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を出力する。
【０２２１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]は、第１パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０２２２】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]は、第１パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０２２３】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]は、第１パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０２２４】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]は、第１パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０２２５】
ＡＮＤ回路３６０Ｒには、第１パターン選択データＦ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２２６】
ＡＮＤ回路３６１Ｒには、第１パターン選択データＦ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２２７】
ＡＮＤ回路３６２Ｒには、第１パターン選択データＦ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２２８】
ＡＮＤ回路３６３Ｒには、第１パターン選択データＦ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２２９】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２３０】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２３１】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２３２】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]を"０"にする。
【０２３３】
なお、第１パターン選択データＦが"０"である場合は、第１パターンによるデータの読み出しを行わない場合であるため、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]は、すべて"０"になる。
【０２３４】
図９（Ｇ）に示すように、第１パターンによるデータの書き込みを行うためにカラムアドレスをデコードする回路３４０Ｗは、４入力型のＡＮＤ（論理積）回路３６０Ｗ、３６１Ｗ、３６２Ｗ、３６３Ｗを含む。ＡＮＤ回路３６０Ｗ〜３６３Ｗには、それぞれ、４本の信号線が接続されており、それぞれ、第１パターン選択データＦ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２３５】
ＡＮＤ回路３６０Ｗ、３６１Ｗ、３６２Ｗ、３６３Ｗは、それぞれ、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を出力する。
【０２３６】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]は、第１パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０２３７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]は、第１パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０２３８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]は、第１パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０２３９】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]は、第１パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０２４０】
ＡＮＤ回路３６０Ｗには、第１パターン選択データＦ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２４１】
ＡＮＤ回路３６１Ｗには、第１パターン選択データＦ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２４２】
ＡＮＤ回路３６２Ｗには、第１パターン選択データＦ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２４３】
ＡＮＤ回路３６３Ｗには、第１パターン選択データＦ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２４４】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２４５】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２４６】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"０"にする。
【０２４７】
カラムデコーダ２２５は、第１パターン選択データＦが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]を"０"にする。
【０２４８】
なお、第１パターン選択データＦが"０"である場合は、第１パターンによるデータの書き込みを行わない場合であるため、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]は、すべて"０"になる。
【０２４９】
図９（Ｈ）に示すように、第２パターンによるデータの読み出しを行うためにカラムアドレスをデコードする回路３５０Ｒは、４入力型のＡＮＤ（論理積）回路３７０Ｒ、３７１Ｒ、３７２Ｒ、３７３Ｒを含む。ＡＮＤ回路３７０Ｒ〜３７３Ｒには、それぞれ、４本の信号線が接続されており、それぞれ、第２パターン選択データＳ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２５０】
ＡＮＤ回路３７０Ｒ、３７１Ｒ、３７２Ｒ、３７３Ｒは、それぞれ、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を出力する。
【０２５１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]は、第２パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０２５２】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]は、第２パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０２５３】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]は、第２パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０２５４】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]は、第２パターンによるデータの読み出しを行うために、図８に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０２５５】
ＡＮＤ回路３７０Ｒには、第２パターン選択データＳ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２５６】
ＡＮＤ回路３７１Ｒには、第２パターン選択データＳ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２５７】
ＡＮＤ回路３７２Ｒには、第２パターン選択データＳ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２５８】
ＡＮＤ回路３７３Ｒには、第２パターン選択データＳ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０２５９】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２６０】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２６１】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２６２】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]を"０"にする。
【０２６３】
なお、第２パターン選択データＳが"０"である場合は、第２パターンによるデータの読み出しを行わない場合であるため、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]は、すべて"０"になる。
【０２６４】
図９（Ｉ）に示すように、第２パターンによるデータの書き込みを行うためにカラムアドレスをデコードする回路３５０Ｗは、４入力型のＡＮＤ（論理積）回路３７０Ｗ、３７１Ｗ、３７２Ｗ、３７３Ｗを含む。ＡＮＤ回路３７０Ｗ〜３７３Ｗには、それぞれ、４本の信号線が接続されており、それぞれ、第２パターン選択データＳ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２６５】
ＡＮＤ回路３７０Ｗ、３７１Ｗ、３７２Ｗ、３７３Ｗは、それぞれ、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を出力する。
【０２６６】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]は、第２パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０２６７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]は、第２パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０２６８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]は、第２パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０２６９】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]は、第２パターンによるデータの書き込みを行うために、図８に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０２７０】
ＡＮＤ回路３７０Ｗには、第２パターン選択データＳ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２７１】
ＡＮＤ回路３７１Ｗには、第２パターン選択データＳ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２７２】
ＡＮＤ回路３７２Ｗには、第２パターン選択データＳ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２７３】
ＡＮＤ回路３７３Ｗには、第２パターン選択データＳ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０２７４】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２７５】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２７６】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"０"にする。
【０２７７】
カラムデコーダ２２５は、第２パターン選択データＳが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]を"０"にする。
【０２７８】
なお、第２パターン選択データＳが"０"である場合は、第２パターンによるデータの書き込みを行わない場合であるため、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]は、すべて"０"になる。
【０２７９】
次に、図１０を用いて、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]と、ビットの選択の仕方について説明する。
【０２８０】
図１０は、実施の形態１のＳＲＡＭ２００のカラム選択／読み書き回路２１３と、カラム選択データを伝送する信号線との接続関係を示す図である。
【０２８１】
図１０には、サブアレイ２１１Ａ及び２１１ＢのビットＤ[ｎ]内の４つのカラムをＣ[０]、Ｃ[１]、Ｃ[２]、Ｃ[３]と表す。また、ビットＤ[ｎ]に隣接するビットＤ[ｎ−１]のカラムＣ[３]と、ビットＤ[ｎ＋１]のカラムＣ[０]とを示す。
【０２８２】
サブアレイ２１１Ａ内のカラムＣ[０]〜Ｃ[３]には、それぞれ、ビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３が含まれる。
【０２８３】
また、サブアレイ２１１Ｂ内のカラムＣ[０]〜Ｃ[３]には、それぞれ、ビットラインＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３が含まれる。
【０２８４】
また、サブアレイ２１１Ａ内には、４本のワードラインＷＬ００〜ＷＬ０３が配列され、サブアレイ２１１Ｂ内には、４本のワードラインＷＬ１０〜ＷＬ１３が配列される。
【０２８５】
ビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３、ＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３と、ワードラインＷＬ００〜ＷＬ０３、ＷＬ１０〜ＷＬ１３との交点には、ビットセル１０が１つずつ配置される。図１０には、全部で４８個のビットセルを示す。
【０２８６】
また、カラム選択／読み書き回路２１３は、カラム毎に設けられている。
【０２８７】
ここで、ビットＤ[ｎ]は奇数ビットであり、ビットＤ[ｎ−１]、Ｄ[ｎ＋１]は偶数ビットであるとする。
【０２８８】
上述のように、第１パターンは、サブアレイ２１１Ａ内の奇数番目のビットとサブアレイ２１１Ｂの偶数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０２８９】
また、第２パターンは、サブアレイ２１１Ａ内の偶数番目のビットとサブアレイ２１１Ｂの奇数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０２９０】
また、カラム選択データは、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]の４種類ある。
【０２９１】
カラム選択／読み書き回路２１３は、第１パターン又は第２パターンによるデータの読み出し又は書き込みを実現するために、ビット毎に、４種類のカラム選択データの入力先を上側（Upper）又は下側（Lower）のビットのいずれかに振り分けている。
【０２９２】
ここで、サブブロック２１０内の上側のサブアレイ２１１Ａのビットをデータの読み出し用に選択するカラム選択データをＲ＿ＣＯＬ＿ＳＥＬ＿Ｕと表す。
【０２９３】
また、サブブロック２１０内の下側のサブアレイ２１１Ｂのビットをデータの読み出し用に選択するカラム選択データをＲ＿ＣＯＬ＿ＳＥＬ＿Ｌと表す。
【０２９４】
同様に、サブブロック２１０内の上側のサブアレイ２１１Ａのビットをデータの書き込み用に選択するカラム選択データをＷ＿ＣＯＬ＿ＳＥＬ＿Ｕと表す。
【０２９５】
また、サブブロック２１０内の下側のサブアレイ２１１Ｂのビットをデータの書き込み用に選択するカラム選択データをＷ＿ＣＯＬ＿ＳＥＬ＿Ｌと表す。
【０２９６】
第１パターンで用いるカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]は、奇数ビットＤ[ｎ]には、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｕ及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｕとして入力される。
【０２９７】
また、第１パターンで用いるカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]は、偶数ビットＤ[ｎ−１]及びＤ[ｎ＋１]には、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｌ及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｌとして入力される。
【０２９８】
これとは逆に、第２パターンで用いるカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]は、偶数ビットＤ[ｎ−１]及びＤ[ｎ＋１]には、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｕ及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｕとして入力される。
【０２９９】
また、第２パターンで用いるカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]は、奇数ビットＤ[ｎ]には、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｌ及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｌとして入力される。
【０３００】
以上のように、第１パターン及び第２パターンによるデータの読み出し又は書き込みを行うためのカラム選択データを、上述のように奇数ビットと偶数ビットで振り分けることにより、同一アドレスのビットは次のように配置されることになる。
【０３０１】
例えば、データの読み出しを行うために、ロウ選択データＲＯＷ[２]が"１"で、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０] が"１"であるとする。これは第１パターンで読み出しを行う場合に相当する。
【０３０２】
この場合、奇数ビットＤ[ｎ]では、ワードラインＷＬ０２と、カラムＣ[０]の交点に位置するビットセル１０Ｅが選択され、偶数ビットＤ[ｎ＋１]では、ワードラインＷＬ１２とカラムＣ[０]との交点に位置するビットセル１０Ｆが選択される。
【０３０３】
すなわち、隣り合うビットについては、異なるサブアレイ（２１１Ａ、２１１Ｂ）内のビットセルが同一アドレスになっている。この関係は、すべてのビット内で、ワードラインＷＬ００〜０３及びＷＬ１０〜１３と、カラムＣ[０]〜Ｃ[３]とによって特定されるアドレスについて同様である。
【０３０４】
実施の形態１のＳＲＡＭ２００では、第１パターン及び第２パターンによるデータの読み出し又は書き込みを行うためのカラム選択データを、上述のように奇数ビットと偶数ビットで振り分けることにより、隣接するビット間における同一アドレスのビットセルを千鳥状に配列させている。
【０３０５】
次に、図１１を用いて、カラム選択／読み書き回路２１３について説明する。
【０３０６】
図１１は、実施の形態１のＳＲＡＭ１００のカラム選択／読み書き回路２１３の回路を示す図である。
【０３０７】
カラム選択／読み書き回路２１３は、各サブブロック２１０に１つずつ設けられており、各サブブロック２１０内の２つのサブアレイ２１１Ａ、２１１ＢのビットラインＢＬ、ＢＬＢに接続されている。
【０３０８】
ここでは、サブブロック２１０内の上側のサブアレイ２１１Ａに接続されるビットラインをＢＬＵ、ＢＬＢＵ（添え字ＵはUpperの略）と表し、下側のサブアレイ２１１Ｂに接続されるビットラインをＢＬＬ、ＢＬＢＬ（添え字ＬはLowerの略）と表す。
【０３０９】
ビットラインをＢＬＵ、ＢＬＢＵは、例えば、図１０に示すビットラインをＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬ０３に相当し、ビットラインをＢＬＬ、ＢＬＢＬは、例えば、図１０に示すビットラインをＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬ１３に相当する。
【０３１０】
また、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｕ、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｌ、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｕ、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｌは、図１０に示すように、カラム選択／読み書き回路２１３に入力される。
【０３１１】
図１１に示すように、カラム選択／読み書き回路２１３は、ＮＭＯＳトランジスタ３８１、３８２、３８３、３８４、及びインバータ３８５を含む。
【０３１２】
ＮＭＯＳトランジスタ３８１及び３８２は、ゲートにカラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｕが入力され、ＮＭＯＳトランジスタ３８３及び３８４は、ゲートにカラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｌが入力される。
【０３１３】
ＮＭＯＳトランジスタ３８１は、ドレインが上側のビットラインＢＬＢＵに接続されるとともに、ソースがＮＭＯＳトランジスタ３８３のドレインに接続されている。
【０３１４】
ＮＭＯＳトランジスタ３８３は、ソースが下側のビットラインＢＬＢＬに接続されるとともに、ドレインがＮＭＯＳトランジスタ３８１のソースに接続されている。
【０３１５】
同様に、ＮＭＯＳトランジスタ３８２は、ドレインが上側のビットラインＢＬＵに接続されるとともに、ソースがＮＭＯＳトランジスタ３８４のドレインに接続されている。
【０３１６】
ＮＭＯＳトランジスタ３８４は、ソースが下側のビットラインＢＬＬに接続されるとともに、ドレインがＮＭＯＳトランジスタ３８２のソースに接続されている。
【０３１７】
ＮＭＯＳトランジスタ３８１のソースとＮＭＯＳトランジスタ３８３のドレインの接続点は、データ書き込み用のグローバルビットライン２１４Ｗに接続されている。
【０３１８】
また、ＮＭＯＳトランジスタ３８１のソースとＮＭＯＳトランジスタ３８３のドレインの接続点にはインバータ３８５の入力端子が接続され、ＮＭＯＳトランジスタ３８２のソースとＮＭＯＳトランジスタ３８４のドレインの接続点には、インバータ３８５の出力端子が接続されている。
【０３１９】
ＮＯＲ（否定論理和）回路３８６の一対の入力端子には、それぞれ、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｕ、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｌが入力される。
【０３２０】
ＮＯＲ回路３８６の一対の入力端子のうち、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｕが入力される方の入力端子は、インバータ３８７の入力端子に接続されている。
【０３２１】
インバータ３８７の出力端子は、ＰＭＯＳトランジスタ３８８のゲートに接続されている。
【０３２２】
ＰＭＯＳトランジスタ３８８のドレインは、所定電圧（Ｖｄｄ）の電源に接続され、ソースはＰＭＯＳトランジスタ３８９のドレインに接続されている。
【０３２３】
ＰＭＯＳトランジスタ３８９のゲートは、上側のビットラインＢＬＵに接続され、ソースはＰＭＯＳトランジスタ３９０のドレインに接続されている。
【０３２４】
ＰＭＯＳトランジスタ３９０のゲートは、下側のビットラインＢＬＬに接続され、ソースはＰＭＯＳトランジスタ３９１のソースに接続されている。
【０３２５】
ＰＭＯＳトランジスタ３９１のドレインは、所定電圧（Ｖｄｄ）の電源に接続され、ゲートはインバータ３９２の出力端子に接続されている。
【０３２６】
インバータ３９２の入力端子は、ＮＯＲ回路３８６の他方の入力端子に接続されている。
【０３２７】
ＰＭＯＳトランジスタ３８９のソースと、ＰＭＯＳトランジスタ３９０のドレインとの接続点は、ＮＭＯＳトランジスタ３９３のドレインに接続されるとともに、ＮＭＯＳトランジスタ３９４のゲートに接続されている。
【０３２８】
ＮＭＯＳトランジスタ３９３のソースは接地され、ゲートはＮＯＲ回路３８６の出力端子に接続されている。
【０３２９】
ＮＭＯＳトランジスタ３９４のドレインは、データ読み出し用のグローバルビットライン２１４Ｒに接続され、ソースは接地されている。
【０３３０】
以上のようなカラム選択／読み書き回路２１３において、上側のビットにデータを書き込む際には、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｕが"１"になる。
【０３３１】
このとき、ＮＭＯＳトランジスタ３８１、３８２がオンになり、データ書き込み用のグローバルビットライン２１４Ｗと上側のビットラインＢＬＵ、ＢＬＢＵが接続される。この結果、データ書き込み用のグローバルビットライン２１４Ｗから上側のビットラインＢＬＵ、ＢＬＢＵを経て、上側のビットにデータを書き込むことができる。
【０３３２】
また、下側のビットにデータを書き込む際には、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｌが"１"になる。
【０３３３】
このとき、ＮＭＯＳトランジスタ３８３、３８４がオンになり、データ書き込み用のグローバルビットライン２１４Ｗと下側のビットラインＢＬＬ、ＢＬＢＬが接続される。この結果、データ書き込み用のグローバルビットライン２１４Ｗから下側のビットラインＢＬＬ、ＢＬＢＬを経て、下側のビットにデータを書き込むことができる。
【０３３４】
また、上側のビットのデータを読み出す際には、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｕが"１"になる。
【０３３５】
このとき、ＰＭＯＳトランジスタ３８８がオンになり、ＮＯＲ回路３８６の出力は"０"になる。また、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｕが"１"のときには、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿Ｕは"０"であるため、ＮＭＯＳトランジスタ３８２はオフであり、この結果、ＰＭＯＳトランジスタ３８９はオンになる。
【０３３６】
また、ＮＯＲ回路３８６の出力が"０"であることから、ＮＭＯＳトランジスタ３９３はオフであり、ＮＭＯＳトランジスタ３９４はオンになる。
【０３３７】
この結果、上側のビットラインＢＬＵとデータ読み出し用のグローバルビットライン２１４Ｒが接続され、上側のビットのデータをデータ読み出し用のグローバルビットライン２１４Ｒを経て読み出すことができる。
【０３３８】
なお、カラム選択／読み書き回路２１３の上下の対称性から、下側のビットのデータを読み出す際の動作は次の通りである。
【０３３９】
下側のビットのデータを読み出す際に、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｌが"１"になると、下側のビットラインＢＬＬとデータ読み出し用のグローバルビットライン２１４Ｒが接続され、下側のビットのデータをデータ読み出し用のグローバルビットライン２１４Ｒを経て読み出すことができる。
【０３４０】
以上のように、カラム選択／読み書き回路２１３によれば、上側又は下側のビットに対して、データの読み出し又は書き込みを自在に行うことができる。
【０３４１】
なお、図１１には１カラムに対して配設されるカラム選択／読み書き回路２１３と、データ読み出し用のグローバルビットライン２１４Ｒ、及び、データ書き込み用のグローバルビットライン２１４Ｗとの関係を示している。
【０３４２】
しかしながら、実際には、実施の形態１では、一対のグローバルビットライン２１４Ｒ、２１４Ｗに対して、４つ（４カラム分）のカラム選択／読み書き回路２１３が接続される。
【０３４３】
図１１には示さない他の３カラム分のカラム選択／読み書き回路２１３は、すべて図１１に示すカラム選択／読み書き回路２１３と同様の回路構成を有する。
【０３４４】
図１１には示さない他の３カラム分のカラム選択／読み書き回路２１３は、ＮＭＯＳトランジスタ３８１〜３８４及びインバータ３８５を介して、データ書き込み用のグローバルビットライン２１４Ｗに接続される。
【０３４５】
４つのカラム選択／読み書き回路２１３のうちのいずれか１つのカラム選択／読み書き回路２１３内のＮＭＯＳトランジスタ３８１〜３８４をオンにすることにより、４つのうちのいずれか１つのカラム選択／読み書き回路２１３がデータ書き込み用のグローバルビットライン２１４Ｗに接続される。
【０３４６】
同様に、  図１１には示さない他の３カラム分のカラム選択／読み書き回路２１３は、ＮＭＯＳトランジスタ３９４を介して、データ読み出し用のグローバルビットライン２１４Ｒに接続される。
【０３４７】
４つのカラム選択／読み書き回路２１３のうちのいずれか１つのカラム選択／読み書き回路２１３内のＮＭＯＳトランジスタ３９４をオンにすることにより、４つのうちのいずれか１つのカラム選択／読み書き回路２１３がデータ読み出し用のグローバルビットライン２１４Ｒに接続される。
【０３４８】
このように、ＮＭＯＳトランジスタ３８１〜３８４及びＮＭＯＳトランジスタ３９４は、４つのカラム選択／読み書き回路２１３のうちのいずれか１つをデータ書き込み用のグローバルビットライン２１４Ｗ及びデータ読み出し用のグローバルビットライン２１４Ｒに接続する切替回路２１５Ａ、２１５Ｂ（図７参照）である。
【０３４９】
次に、図１２を用いて、第１パターン又は第２パターンによってビットを千鳥状に選択する方法について説明する。
【０３５０】
図１２は、実施の形態１のＳＲＡＭ２００における第１パターンと第２パターンによるビットの選択の仕方を示す図である。
【０３５１】
図１２の右側には、入出力ポート(I/O)２３０Ａの上側にあるサブブロック番号３のサブブロック２１０を拡大して示す。
【０３５２】
ここでは、サブアレイ２１１Ａとサブアレイ２１１Ｂが４つのビットＤ[０]、Ｄ[１]、Ｄ[２]、Ｄ[３]を含み、サブアレイ２１１Ａと２１１Ｂとの間に、カラム選択／読み書き回路２１３があるものとして説明を行う。
【０３５３】
図１２に示す８つのビットは、それぞれ、４ロウ×４カラムの１６個のビットセルを含む。図１２では、説明の便宜上、ビットセルを正方形の升目で示す。
【０３５４】
各ビットＤ[０]、Ｄ[１]、Ｄ[２]、Ｄ[３]に含まれる４つのカラムをＣ[０]、Ｃ[１]、Ｃ[２]、Ｃ[３]と表す。サブアレイ２１１Ａ内のカラムＣ[０]〜Ｃ[３]には、それぞれ、ビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３が含まれる。
【０３５５】
また、図１２には、説明の便宜上、ワードラインそのものを図示せず、符号ＷＬ００〜ＷＬ０３、ＷＬ１０〜ＷＬ１３のみを示す。
【０３５６】
ここで、第１パターンは、サブアレイ２１１Ａ内の奇数番目のビットとサブアレイ２１１Ｂの偶数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０３５７】
このため、第１パターンでは、図１２に白く示すように、サブアレイ２１１Ａ及び２１１Ｂ内から、ビットを１つ飛ばしで千鳥状に選択することになる。
【０３５８】
また、第２パターンは、サブアレイ２１１Ａ内の偶数番目のビットとサブアレイ２１１Ｂの奇数番目のビットとに含まれる同一アドレスの複数のビットセル１０に対してデータの読み出し又は書き込みを行うパターンである。
【０３５９】
このため、第２パターンでは、図１２にグレーで示すように、サブアレイ２１１Ａ及び２１１Ｂ内から、ビットを１つ飛ばしで千鳥状に選択することになる。
【０３６０】
ここで、例えば、次の（１）〜（５）の条件によってデータを読み出す場合を考える。
【０３６１】
（１）ロウデコーダ２２１から出力されるロウ選択データＲＯＷ[０]が"１"であり、ロウ選択データＲＯＷ[１]、ＲＯＷ[２]、及びＲＯＷ[３]は、すべて"０"である。
【０３６２】
（２）サブブロックデコーダ２２２から出力されるサブブロック選択データＳＢＳ[３]が"１"であり、サブブロック選択データＳＢＳ[０]、ＳＢＳ[１]、及びＳＢＳ[２]がすべて"０"である。
【０３６３】
（３）上下選択デコーダ２２３から出力されるデータがＴＯＰデータである。
【０３６４】
（４）パターン選択デコーダ２２４から出力される第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である。
【０３６５】
（５）カラムデコーダ２２５から出力されるカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]が"１"であり、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]がすべて"０"である。なお、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３：０]は、すべて"０"である。
【０３６６】
上述の（１）〜（５）の条件は、第１パターンでデータを読み出す場合である。
【０３６７】
この場合に、サブアレイ２１１Ａ内で選択されるビットセルは、図１２に矢印で示すように、奇数ビットＤ[１]及びＤ[３]の内部のカラムＣ[０]とワードラインＷＬ００の交点にある２つのビットセルである。
【０３６８】
また、この場合に、サブアレイ２１１Ｂ内で選択されるビットセルは、図１２に矢印で示すように、偶数ビットＤ[０]及びＤ[２]の内部のカラムＣ[０]とワードラインＷＬ１０の交点にある２つのビットセルである。
【０３６９】
これら４つのビットセルは、第１パターンによって特定される同一アドレスのビットであり、図１２に白く示すように、千鳥状に配列された４つのビット内に１つずつ含まれる。
【０３７０】
次に、図１３のタイミングチャートを用いて、実施の形態１のＳＲＡＭ２００において、図１２を用いて説明した４つのビットセルから第１パターンによってデータを読み出す際の動作について説明する。
【０３７１】
図１３は、実施の形態１のＳＲＡＭ２００の動作例を示すタイミングチャートである。
【０３７２】
図１２において説明した４つのビットセルは、奇数ビットＤ[１]及びＤ[３]についてはカラムＣ[０]とワードラインＷＬ００によって特定され、偶数ビットＤ[０]及びＤ[２]についてはカラムＣ[０]とワードラインＷＬ１０によって特定される。ワードラインＷＬ００とＷＬ１０は、ロウ選択データＲＯＷ[０]によって特定される。
【０３７３】
このため、図１３には、システムクロックＣＬＫ(Clock)、読み出し用の入力アドレスＲＡ（Read Address）、ロウ選択データＲＯＷ[０]〜ＲＯＷ[３]、サブブロック選択データＳＢＳ、及びワードラインＷＬ００〜ＷＬ０３、ＷＬ１０〜ＷＬ１３の信号レベルを示す。
【０３７４】
また、図１３には、さらに、ビットＤ[１]及びＤ[３]のビットラインＢＬ００の信号レベル、ビットＤ[０]及びＤ[２]のビットラインＢＬ１０の信号レベル、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、及び読み出しデータＲＤ（Read Data）を示す。
【０３７５】
なお、システムクロックＣＬＫは、タイマ２４０（図７参照）から出力される。
【０３７６】
時刻ｔ１のシステムクロックＣＬＫの立ち上がりで読み出し用の入力アドレスがＲＡ１に切り替わると、時刻ｔ２でロウ選択データＲＯＷ[０]とサブブロック選択データＳＢＳが立ち上がる。
【０３７７】
ロウ選択データＲＯＷ[０]とサブブロック選択データＳＢＳの立ち上がりにより、時刻ｔ３では、ワードラインＷＬ００及びＷＬ１０が選択される。
【０３７８】
また、読み出し用の入力アドレスがＲＡ１は第１パターンによるデータの読み出しを指定するため、時刻ｔ３でカラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]が"１"に立ち上がる。
【０３７９】
この結果、時刻ｔ３の後に、奇数ビットＤ[１]及びＤ[３]の内部のカラムＣ[０]とワードラインＷＬ００の交点にある２つのビットセルと、偶数ビットＤ[０]及びＤ[２]の内部のカラムＣ[０]とワードラインＷＬ１０の交点にある２つのビットセルとの合計４つのビットセルのデータが読み出される。
【０３８０】
奇数ビットＤ[１]及びＤ[３]の内部のカラムＣ[０]とワードラインＷＬ００の交点にある２つのビットセルのデータは、それぞれ、ビットＤ[１]及びＤ[３]のビットラインＢＬ００を通じて読み出される。
【０３８１】
同様に、偶数ビットＤ[０]及びＤ[２]の内部のカラムＣ[０]とワードラインＷＬ１０の交点にある２つのビットセルのデータは、それぞれ、ビットＤ[０]及びＤ[２]のビットラインＢＬ１０を通じて読み出される。
【０３８２】
この結果、時刻ｔ４で読み出しデータがＲＤ１になる。
【０３８３】
次に、図１４及び図１５を用いて、第１パターン及び第２パターンによってビットセルを選択する際の動作例について説明する。
【０３８４】
図１４及び図１５は、実施の形態１のＳＲＡＭ２００において、第１パターン及び第２パターンによってデータの読み出しを行うためにビットセルを選択する際の動作例を示す図である。
【０３８５】
図１４及び図１５には、サブアレイ２１１Ａ及び２１１Ｂに含まれるビットＤ[０]、Ｄ[１]、Ｄ[２]、Ｄ[３]と、ワードラインＷＬ００〜ＷＬ０３とＷＬ１０〜ＷＬ１３を示す。また、各ビット内には、カラムＣ[０]〜Ｃ[３]を示す。
【０３８６】
図１４及び図１５では、データの読み出しの際に、第１パターンによって選択されるサブアレイ２１１Ａ内の奇数ビットとサブアレイ２１１Ｂ内の偶数ビットを白抜きで示す。
【０３８７】
同様に、第２パターンによって選択されるサブアレイ２１１Ａ内の偶数ビットとサブアレイ２１１Ｂ内の奇数ビットをグレーで示す。
【０３８８】
図１４では、ロウ選択データＲＯＷ[２]が"１"であり、ロウ選択データＲＯＷ[０]、ＲＯＷ[１]、及びＲＯＷ[３]は、すべて"０"である。
【０３８９】
また、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[２]が"１"であり、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｆ[１]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ[３]はすべて"０"である。
【０３９０】
このような場合、データが読み出されるのは、奇数ビットＤ[１]及びＤ[３]内ではカラムＣ[２]とワードラインＷＬ０２との交点に位置するビットセルであり、偶数ビットＤ[０]及びＤ[２]内ではカラムＣ[２]とワードラインＷＬ１２との交点に位置するビットセルである。
【０３９１】
これら４つのビットセルは、すべて同一アドレスである。
【０３９２】
以上、実施の形態１のＳＲＡＭ２００は同一アドレスのビットセルを、隣接ビットについて異なるサブアレイ（２１１Ａ、２１１Ｂ）に配置してあるため、第１パターンでデータを読み出す際には、奇数ビットについてはサブアレイ２１１Ａからデータを読み出し、偶数ビットについてはサブアレイ２１１Ｂからデータを読み出すことになる。
【０３９３】
図１５は、ロウ選択データＲＯＷ[０]が"１"であり、ロウ選択データＲＯＷ[１]、ＲＯＷ[２]、及びＲＯＷ[３]は、すべて"０"である。
【０３９４】
また、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[１]が"１"であり、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿Ｓ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿Ｓ[３]はすべて"０"である。
【０３９５】
このような場合、データが読み出されるのは、奇数ビットＤ[１]及びＤ[３]内ではカラムＣ[１]とワードラインＷＬ１０との交点に位置するビットセルであり、偶数ビットＤ[０]及びＤ[２]内ではカラムＣ[１]とワードラインＷＬ００との交点に位置するビットセルである。
【０３９６】
これら４つのビットセルは、すべて同一アドレスである。
【０３９７】
以上、実施の形態１のＳＲＡＭ２００は同一アドレスのビットセルを、隣接ビットについて異なるサブアレイ（２１１Ａ、２１１Ｂ）に配置してあるため、第２パターンでデータを読み出す際には、奇数ビットについてはサブアレイ２１１Ｂからデータを読み出し、偶数ビットについてはサブアレイ２１１Ａからデータを読み出すことになる。
【０３９８】
以上のように、実施の形態１のＳＲＡＭ２００では、同一アドレスの複数のビットセルを、隣接ビットについて異なるサブアレイ内に配置している。すなわち、同一アドレスの複数のビットセルは、隣接ビットについて、１つのサブブロック２１０内の一対のサブアレイ２１１Ａ及び２１１Ｂ内で、千鳥状に分散させてある。
【０３９９】
同一アドレスのビットセルを千鳥状に分散させることは、上述のように、同一アドレスのビットセルを含む奇数ビットと偶数ビットとを、互いに異なるサブアレイ２１１Ａ、２１１Ｂ内に配列させることによって実現されている。
【０４００】
このため、比較例のＳＲＡＭ３０（図４参照）と同様に１ビットが４カラムを含む構成であっても、α線又は中性子線の入射によるデータ破壊が生じても、１ビットが８カラムを含む他の比較例のＳＲＡＭ３０Ａ（図５参照）と同等の耐性を発揮することができる。
【０４０１】
一方、他の比較例のＳＲＡＭ３０Ａ（図５参照）とは異なり、１ビットのカラム数は４カラムで済むため、アスペクト比の変化（横長化）及びワードラインの長大化による動作速度の低下を抑制することができる。
【０４０２】
以上、実施の形態１によれば、アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供することができる。
【０４０３】
実施の形態１のＳＲＡＭ２００は、従来のＳＲＡＭにおける２ビット以上のデータ破壊に相当するデータ破壊が生じても、ビットセルの配置を上述のように物理的に変更することにより、データの破壊を抑制することができる。
【０４０４】
なお、図１４及び図１５では、データの読み出しを行う場合について説明したが、データの書き込みを行う場合は、カラム選択データがＲ＿ＣＯＬ＿ＳＥＬ＿Ｆ又はＲ＿ＣＯＬ＿ＳＥＬ＿Ｓから、Ｗ＿ＣＯＬ＿ＳＥＬ＿Ｆ又はＷ＿ＣＯＬ＿ＳＥＬ＿Ｓに変わるだけで、ビットセルの選択の仕方は同様である。
【０４０５】
＜実施の形態２＞
図１６は、実施の形態２のＳＲＡＭ４００を示す図である。
【０４０６】
実施の形態２のＳＲＡＭ４００は、同一アドレスの複数のビットセルを、隣接ビットについて、互いに異なるサブバンク４５０Ｕ、４５０Ｌ内のサブブロック番号が同一のサブブロック内で、千鳥状に分散させてある点が実施の形態１のＳＲＡＭ２００と異なる。
【０４０７】
以下、実施の形態１と同一又は同等の構成要素には同一符号を付し、その説明を省略する。
【０４０８】
図１６に示すＳＲＡＭ４００は、サブブロック２１０、デコーダ４２０、入出力ポート４３０Ａ、４３０Ｂ、及びタイマ２４０を含む。
【０４０９】
サブブロック２１０は、実施の形態１と同様に、入出力ポート４３０Ａ、４３０Ｂの上下にそれぞれ４段配列されている。すなわち、図１６には、１６個のサブブロック２１０を示す。
【０４１０】
サブブロック番号は、入出力ポート４３０Ａ、４３０Ｂの上下において、入出力ポート４３０Ａ、４３０Ｂに近い側から遠い側にかけて、０、１、２、３と割り振られている。これは、実施の形態１と同様である。
【０４１１】
ここで、入出力ポート４３０Ａ及び４３０Ｂの上側に４段ずつある８個のサブブロック２１０の集合をサブバンク４５０Ｕ（Upper）と称し、入出力ポート４３０Ａ及び４３０Ｂの下側に４段ずつある８個のサブブロック２１０の集合をサブバンク４５０Ｌ（Lower）と称す。
【０４１２】
各サブブロック２１０は、実施の形態１と同様に、サブアレイ２１１Ａ、２１１Ｂ、及びカラム選択／読み書き回路４１３を含む。サブアレイ２１１Ａは、カラム選択／読み書き回路４１３の上側に位置し、サブアレイ２１１Ｂは、カラム選択／読み書き回路４１３の下側に位置する。
【０４１３】
ここで、図１６に示すサブアレイ２１１Ａ、２１１Ｂは、ビットＤ[ｎ−３]からＤ[ｎ]の部分である。各サブアレイ２１１Ａ、２１１Ｂ内の各ビットは、４ロウ×４カラムの１６個のビットセルを含むが、紙面の都合上、図１６には各ビットのサブアレイ２１１Ａ、２１１Ｂについて、２ロウ×４カラム分のビットセルを升目で示す。
【０４１４】
なお、図１６の入出力ポート４３０Ａの内部には、データの読み出しを模式的に表すために切替回路２１５を示す。切替回路２１５については図１７を用いて説明する。
【０４１５】
また、図１６に示すサブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂ等の位置関係は、サブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂ等の階層を表しており、本明細書中における「上」又は「下」なる文言は、物理的な上下関係を表すものではない。
【０４１６】
図１７は、実施の形態２のＳＲＡＭ４００の切替回路２１５を示す図である。
【０４１７】
図１７に示すように、切替回路２１５には、後述するパターン選択デコーダ４２３（図１８参照）から第１パターン選択データＦ及び第２パターン選択データＳが入力される。
【０４１８】
図１７に示すように、切替回路２１５は、隣同士で第１パターン選択データＦ及び第２パターン選択データＳが千鳥状に入力されるように接続されている。
【０４１９】
図１７に示す４つの切替回路２１５は、第１パターン選択データＦ及び第２パターン選択データＳに応じて、隣接するビットについて、サブバンク４５０Ｕ又はサブバンク４５０Ｌから選択したビットセル１０に対してデータの読み出し又は書き込みを行う。
【０４２０】
次に、図１８を用いて、実施の形態２のＳＲＡＭ４００の回路構成について説明する。
【０４２１】
図１８は、実施の形態２のＳＲＡＭ４００の一部分を示す図である。
【０４２２】
図１８には、入出力ポート（I/O）４３０Ａ、入出力ポート（I/O）４３０Ａの上下に位置する２つのサブブロック番号０のサブブロック２１０のうちのビットＤ[ｎ]の部分、２つのカラム選択／読み書き回路４１３、グローバルビットライン２１４、デコーダ４２０、及び二対のワードラインドライバ４１２Ａ、４１２Ｂを示す。
【０４２３】
ＳＲＡＭ４００は、プロセッサコア１１１（図６参照）から入力される読み出し命令と書き込み命令に従って、データの読み出しと書き込みを行う。
【０４２４】
説明の便宜上、図１８にはビットセル１０を示さないが、サブアレイ２１１Ａ、２１１Ｂは、それぞれ、アレイ状に配列された複数のビットセルを含む。
【０４２５】
実施の形態２では、各サブブロック２１０に含まれるサブアレイ２１１Ａ及び２１１Ｂにサブアレイ番号を付す。サブアレイ２１１Ａ及び２１１Ｂは、入出力ポート（I/O）４３０Ａ及び４３０Ｂの上側にそれぞれ８段配列され、入出力ポート（I/O）４３０Ａ及び４３０Ｂの下側にそれぞれ８段配列される。
【０４２６】
サブアレイ番号は、入出力ポート（I/O）４３０Ａの上側の８段のサブアレイ２１１Ａ及び２１１Ｂに対して、入出力ポート（I/O）４３０Ａに近い方から入出力ポート（I/O）４３０Ａから離れている方にかけて、０〜７である。これは、入出力ポート（I/O）４３０Ｂの上側の８段のサブアレイ２１１Ａ及び２１１Ｂについても同様である。
【０４２７】
図１８には、説明の便宜上、入出力ポート（I/O）４３０Ａの上側については、サブブロック番号０のサブブロック２１０に含まれるサブアレイ番号０と１のサブアレイ２１１Ａ及び２１１Ｂだけを示す。また、入出力ポート（I/O）４３０Ａの下側についても、サブブロック番号０のサブブロック２１０に含まれるサブアレイ番号０と１のサブアレイ２１１Ａ及び２１１Ｂだけを示す。
【０４２８】
図１８に示さないサブブロック２１０内のサブアレイのサブアレイ番号については、次の通りである。
【０４２９】
図１６に示す入出力ポート（I/O）４３０Ａの上側のサブブロック番号１のサブブロック２１０は、サブアレイ番号２のサブアレイ２１１Ｂと、サブアレイ番号３のサブアレイ２１１Ａを含む。同様に、入出力ポート（I/O）４３０Ａの上側のサブブロック番号２のサブブロック２１０は、サブアレイ番号４のサブアレイ２１１Ｂと、サブアレイ番号５のサブアレイ２１１Ａを含む。入出力ポート（I/O）４３０Ａの上側のサブブロック番号４のサブブロック２１０は、サブアレイ番号６のサブアレイ２１１Ｂと、サブアレイ番号７のサブアレイ２１１Ａを含む。
【０４３０】
また、図１６に示す入出力ポート（I/O）４３０Ａの下側のサブブロック番号１のサブブロック２１０は、サブアレイ番号２のサブアレイ２１１Ａと、サブアレイ番号３のサブアレイ２１１Ｂを含む。同様に、入出力ポート（I/O）４３０Ａの下側のサブブロック番号２のサブブロック２１０は、サブアレイ番号４のサブアレイ２１１Ａと、サブアレイ番号５のサブアレイ２１１Ｂを含む。入出力ポート（I/O）４３０Ａの下側のサブブロック番号４のサブブロック２１０は、サブアレイ番号６のサブアレイ２１１Ａと、サブアレイ番号７のサブアレイ２１１Ｂを含む。
【０４３１】
これは、入出力ポート（I/O）４３０Ｂの上下のサブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂについても同様である。
【０４３２】
ワードラインドライバ４１２Ａ及び４１２Ｂは、それぞれ、各サブアレイ２１１Ａ及び２１１Ｂのワードラインに接続される。図１８には、説明の便宜上、ワードラインの番号を示さないが、ワードラインの番号の振り方は、実施の形態１のＳＲＡＭ２００と同様である。
【０４３３】
デコーダ４２０は、ロウデコーダ４２１、サブアレイデコーダ４２２、パターン選択デコーダ４２３、及びカラムデコーダ４２４を含む。デコーダ４２０には、入力アドレスが入力される。また、カラムデコーダには、ライトイネーブル信号Ｗ／Ｅが入力される。
【０４３４】
なお、ロウデコーダ４２１、サブアレイデコーダ４２２、パターン選択デコーダ４２３、及びカラムデコーダ４２４は、ＳＲＡＭ４００全体に対して、一つずつ配設される。
【０４３５】
ロウデコーダ４２１及びサブアレイデコーダ４２２は、信号線を介して、ワードラインドライバ４１２Ａ、４１２Ｂに接続されている。実際には、サブブロック２１０は階層化されているため（図７参照）、ロウデコーダ４２１及びサブアレイデコーダ４２２は、すべてのサブブロック２１０のワードラインドライバ４１２Ａ、４１２Ｂに接続されている。
【０４３６】
次に、ロウデコーダ４２１によるロウ選択、サブアレイデコーダ４２２によるサブアレイ選択、パターン選択デコーダ４２３による第１パターン又は第２パターンの選択、カラムデコーダ４２４によるカラム選択について説明する。
【０４３７】
ロウデコーダ４２１は、信号線を介して、ワードラインドライバ４１２Ａ、４１２Ｂに接続されており、読み出し命令又は書き込み命令の入力アドレスに含まれるロウアドレスをデコードしてロウ選択データＲＯＷ[３：０]を出力する。ロウ選択データＲＯＷ[３：０]は、ワードラインドライバ４１２Ａ、４１２Ｂに入力される。ロウデコーダ４２１は実施の形態１のロウデコーダ２２１と同様のデコーダであり、ロウデコーダ４２１が出力するロウ選択データＲＯＷ[３：０]も実施の形態１のロウデコーダ２２１が出力するロウ選択データＲＯＷ[３：０]と同様である。
【０４３８】
サブアレイデコーダ４２２は、信号線を介して、ワードラインドライバ４１２Ａ、４１２Ｂに接続されており、読み出し命令又は書き込み命令の入力アドレスに含まれるサブアレイアドレスをデコードしてサブアレイ選択データＳＡＳを出力する。
【０４３９】
サブアレイ選択データＳＡＳの添え数字は、サブアレイ番号（０〜７）に対応する。
【０４４０】
パターン選択デコーダ４２３は、信号線を介して入出力ポート（I/O）４３０Ａに接続されており、第１パターン及び第２パターン自体も実施の形態１の第１パターン及び第２パターンとは異なる。
【０４４１】
なお、図１８には、入出力ポート（I/O）４３０Ｂを示さないが、パターン選択デコーダ４２３は入出力ポート（I/O）４３０Ｂにも同様に接続されている。
【０４４２】
パターン選択デコーダ４２３は、読み出し命令又は書き込み命令の入力アドレスに含まれるパターン選択アドレスをデコードして第１パターン選択データＦ及び第２パターン選択データＳを出力する。
【０４４３】
第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、第１パターンを選択することを表す。これとは逆に、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、第２パターンを選択することを表す。
【０４４４】
実施の形態２の第１パターンは、サブバンク４５０Ｕに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の奇数番目のビットと、サブバンク４５０Ｌに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の偶数番目のビットとに対してデータの読み出し又は書き込みを行うパターンである。
【０４４５】
これは、サブバンク４５０Ｕに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の奇数番目のビットと、サブバンク４５０Ｌに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の偶数番目のビットとに、同一アドレスのビットセルが含まれることを意味する。
【０４４６】
なお、第１パターンによってサブバンク４５０Ｕ及び４５０Ｌ内でそれぞれ選択されるサブアレイ２１１Ａ又は２１１Ｂは、サブアレイ番号が同一のサブアレイである。
【０４４７】
実施の形態２の第２パターンは、サブバンク４５０Ｕに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の偶数番目のビットと、サブバンク４５０Ｌに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の奇数番目のビットとに対してデータの読み出し又は書き込みを行うパターンである。
【０４４８】
これは、サブバンク４５０Ｕに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の偶数番目のビットと、サブバンク４５０Ｌに含まれるサブアレイ２１１Ａ又はサブアレイ２１１Ｂ内の奇数番目のビットとに、同一アドレスのビットセルが含まれることを意味する。
【０４４９】
なお、第２パターンによってサブバンク４５０Ｕ及び４５０Ｌ内でそれぞれ選択されるサブアレイ２１１Ａ又は２１１Ｂは、サブアレイ番号が同一のサブアレイである。
【０４５０】
このように、実施の形態２のＳＲＡＭ４００では、同一アドレスのビットセルは、隣接ビットについて、互いに異なるサブバンク４５０Ｕ、４５０Ｌ内のサブブロック２１０に割り当てられている。
【０４５１】
カラムデコーダ４２４は、信号線を介して、カラム選択／読み書き回路４１３に接続されている。
【０４５２】
カラムデコーダ４２４には、読み出し命令又は書き込み命令の入力アドレスに含まれるカラムアドレスに加えて、ライトイネーブル信号Ｗ／Ｅが入力される。
【０４５３】
カラムデコーダ４２４は、カラムアドレスをデコードし、ライトイネーブル信号Ｗ／Ｅの信号レベルに応じたカラム選択データを出力する。カラム選択データは、カラム選択／読み書き回路４１３に入力される。
【０４５４】
カラムデコーダ４２４は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＬレベルである場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ[３：０]を出力する。
【０４５５】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ [３：０]は、データの読み出しを実行する際に、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０４５６】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ [３：０]により、サブアレイ２１１Ａ又は２１１ＢのいずれかのビットラインＢＬ、ＢＬＢの対がデータの読み出しのために選択される。
【０４５７】
また、カラムデコーダ４２４は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＨレベルである場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ[３：０]を出力する。
【０４５８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ[３：０]は、データの書き込みを実行する際に、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０４５９】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ[３：０]により、サブアレイ２１１Ａ又は２１１Ｂ内のいずれかのビットラインＢＬ、ＢＬＢの対がデータの書き込みのために選択される。
【０４６０】
次に、カラム選択／読み書き回路４１３について説明する。
【０４６１】
カラム選択／読み書き回路４１３には、ビットラインＢＬ００〜ＢＬ０３、ＢＬＢ００〜ＢＬＢ０３、ＢＬ１０〜ＢＬ１３、ＢＬＢ１０〜ＢＬＢ１３が接続されている。
【０４６２】
カラム選択／読み書き回路４１３は、カラムデコーダ４２４から入力されるカラム選択データに基づき、ビットラインを選択する。
【０４６３】
カラム選択／読み書き回路４１３は、カラムデコーダ４２４から入力されるカラム選択データに基づいて、ビットラインＢＬ、ＢＬＢの選択、読み出し／書き込みの切り替え、読み出しデータ／書き込みデータの受け渡しを行える回路であればよい。
【０４６４】
カラム選択／読み書き回路４１３は、データの読み出し又は書き込みのために、カラムデコーダ４２４からカラム選択データが入力されると、ライン番号が同一のビットラインＢＬとＢＬＢの対を選択する。
【０４６５】
また、カラム選択／読み書き回路４１３には、読み出したデータ又は書き込むデータを入出力ポート（I/O）４３０Ａ、４３０Ｂ（図１６参照）との間で伝送するグローバルビットライン２１４が接続されている。
【０４６６】
また、カラム選択／読み書き回路４１３のうち、ビットラインの選択を行う回路は、カラムデコーダ４２４から伝送されるカラム選択データに基づいて、２つのサブアレイ２１１Ａ、２１１Ｂにそれぞれ四対含まれるビットラインＢＬ００、ＢＬＢ００〜ＢＬ０３、ＢＬＢ０３、ＢＬ１０、ＢＬＢ１０〜ＢＬ１３、ＢＬＢ１３を選択できれば、その形式は問わない。
【０４６７】
また、カラム選択／読み書き回路４１３のうち、読み出しデータ及び書き込みデータの受け渡しを行う回路は、ライトイネーブル信号Ｗ／Ｅの信号レベルに応じたカラム選択データに基づいて読み出し処理と書き込み処理を切り替えることができ、グローバルビットライン２１４との間でデータの受け渡しができる回路であれば、その形式は問わない。
【０４６８】
次に、図１９（Ａ）〜図１９（Ｅ）を用いて、入力アドレスのデータ構成とデコーダ２２０の回路構成について説明する。
【０４６９】
図１９（Ａ）は、実施の形態２のＳＲＡＭ４００の入力アドレスのデータ構成を示す図である。入力アドレスＡ[７：０]は８ビットのデータであり、下位ビットから上位ビットにかけて、カラムアドレス（column）、ロウアドレス（row）、サブアレイアドレス（Sub Array）、及びパターン選択アドレス（F/S）を含む。
【０４７０】
カラムアドレス（column）にはＡ[１：０]の２ビット、ロウアドレス（row）にはＡ[３：２]の２ビット、サブアレイアドレスにはＡ[６：４]の３ビット、パターン選択アドレス（F/S）にはＡ[７]の１ビットが、それぞれ割り当てられている。
【０４７１】
図１９（Ｂ）は、実施の形態２のＳＲＡＭ４００のロウデコーダ４２１の回路を示す図である。
【０４７２】
ロウデコーダ４２１は、２入力型のＡＮＤ（論理積）回路５００、５０１、５０２、５０３を含む。ＡＮＤ回路５００〜５０３には、それぞれ、２本の信号線が接続されており、それぞれ、ロウアドレスＡ[３]、Ａ[２]が入力される。
【０４７３】
ＡＮＤ回路５００、５０１、５０２、５０３は、それぞれ、ロウ選択データＲ[０]、Ｒ[１]、Ｒ[２]、Ｒ[３]を出力する。
【０４７４】
ロウデコーダ４２１は、実施の形態１のロウデコーダ２２１と同様のデコーダである。
【０４７５】
次に、図１９（Ｃ）を用いて、サブアレイデコーダ４２２の回路について説明する。
【０４７６】
図１９（Ｃ）は、実施の形態２のＳＲＡＭ４００のサブアレイデコーダ４２２の回路を示す図である。
【０４７７】
サブアレイデコーダ４２２は、３入力型のＡＮＤ（論理積）回路５１０、５１１、５１２、５１３、５１４、５１５、５１６、５１７を含む。ＡＮＤ回路５１０〜５１７には、それぞれ、３本の信号線が接続されており、それぞれ、サブアレイアドレスＡ[６]、Ａ[５]、Ａ[４]が入力される。
【０４７８】
ＡＮＤ回路５１０、５１１、５１２、５１３、５１４、５１５、５１６、５１７は、それぞれ、サブアレイ選択データＳＡＳ[０]、ＳＡＳ[１]、ＳＡＳ[２]、ＳＡＳ[３]、ＳＡＳ[４]、ＳＡＳ[５]、ＳＡＳ[６]、ＳＡＳ[７]を出力する。
【０４７９】
サブアレイ選択データＳＡＳ[０]は、サブアレイ番号０のサブアレイ２１１Ａ（Sub Array 0）を選択するためのサブアレイ選択データである。サブアレイ選択データＳＡＳ[０]は、サブバンク４５０Ｕ及び４５０Ｌに１つずつ含まれるサブアレイ番号０のサブアレイ２１１Ａを同時に選択するためのサブアレイ選択データである。
【０４８０】
同様に、サブアレイ選択データＳＡＳ[１]〜ＳＡＳ[７]は、それぞれ、サブアレイ番号１〜７のサブアレイ２１１Ａ又は２１１Ｂを選択するためのサブアレイ選択データである。サブアレイ選択データＳＡＳ[１]〜ＳＡＳ[７]は、サブバンク４５０Ｕ及び４５０Ｌに１つずつ含まれるサブアレイ番号のサブアレイ２１１Ａ又は２１１Ｂを同時に選択するためのサブアレイ選択データである。
【０４８１】
ＡＮＤ回路５１０には、サブブロック選択アドレスＡ[６]、Ａ[５]、及びＡ[４]がすべて否定演算されて入力される。
【０４８２】
ＡＮＤ回路５１１には、サブブロック選択アドレスＡ[６]及びＡ[５]が否定演算されて入力され、サブブロック選択アドレスＡ[４]はそのまま入力される。
【０４８３】
ＡＮＤ回路５１２には、サブブロック選択アドレスＡ[６]及びＡ[４]が否定演算されて入力され、サブブロック選択アドレスＡ[５]はそのまま入力される。
【０４８４】
ＡＮＤ回路５１３には、サブブロック選択アドレスＡ[６]が否定演算されて入力され、サブブロック選択アドレスＡ[５]及びＡ[４]はそのまま入力される。
【０４８５】
ＡＮＤ回路５１４には、サブブロック選択アドレスＡ[６]はそのまま入力され、サブブロック選択アドレスＡ[５]及びＡ[４]が否定演算されて入力される。
【０４８６】
ＡＮＤ回路５１５には、サブブロック選択アドレスＡ[６]及びＡ[４]はそのまま入力され、サブブロック選択アドレスＡ[５]が否定演算されて入力される。
【０４８７】
ＡＮＤ回路５１６には、サブブロック選択アドレスＡ[６]及びＡ[５]はそのまま入力され、サブブロック選択アドレスＡ[４]が否定演算されて入力される。
【０４８８】
ＡＮＤ回路５１７には、サブブロック選択アドレスＡ[６]、Ａ[５]、及びＡ[４]はすべてそのまま入力される。
【０４８９】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"０"、"０"、"０"の場合は、サブアレイ選択データＳＡＳ[０]を"１"にし、サブアレイ選択データＳＡＳ[１]〜ＳＡＳ[７]を"０"にする。
【０４９０】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"０"、"０"、"１"の場合は、サブアレイ選択データＳＡＳ[１]を"１"にし、サブアレイ選択データＳＡＳ[０]、ＳＡＳ[２]〜ＳＡＳ[７]を"０"にする。
【０４９１】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"０"、"１"、"０"の場合は、サブアレイ選択データＳＡＳ[２]を"１"にし、サブアレイ選択データＳＡＳ[０]、ＳＡＳ[１]、ＳＡＳ[３]〜ＳＡＳ[７]を"０"にする。
【０４９２】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"０"、"１"、"１"の場合は、サブアレイ選択データＳＡＳ[３]を"１"にし、サブアレイ選択データＳＡＳ[０]〜ＳＡＳ[２]、ＳＡＳ[４]〜ＳＡＳ[７]を"０"にする。
【０４９３】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"１"、"０"、"０"の場合は、サブアレイ選択データＳＡＳ[４]を"１"にし、サブアレイ選択データＳＡＳ[０]〜ＳＡＳ[３]、ＳＡＳ[５]〜ＳＡＳ[７]を"０"にする。
【０４９４】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"１"、"０"、"１"の場合は、サブアレイ選択データＳＡＳ[５]を"１"にし、サブアレイ選択データＳＡＳ[０]〜ＳＡＳ[４]、ＳＡＳ[６]、ＳＡＳ[７]を"０"にする。
【０４９５】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"１"、"１"、"０"の場合は、サブアレイ選択データＳＡＳ[６]を"１"にし、サブアレイ選択データＳＡＳ[０]〜ＳＡＳ[５]、ＳＡＳ[７]を"０"にする。
【０４９６】
サブアレイデコーダ４２２は、サブブロック選択アドレスＡ[６]、Ａ[５]、Ａ[４]が"１"、"１"、"１"の場合は、サブアレイ選択データＳＡＳ[７]を"１"にし、サブアレイ選択データＳＡＳ[０]〜ＳＡＳ[６]を"０"にする。
【０４９７】
次に、図１９（Ｄ）を用いて、パターン選択デコーダ４２３の回路について説明する。
【０４９８】
図１９（Ｄ）は、実施の形態２のＳＲＡＭ４００のパターン選択デコーダ４２３の回路を示す図である。
【０４９９】
パターン選択デコーダ４２３は、１入力・２出力型の回路を有し、パターン選択アドレスＡ[７]をデコードして第１パターン選択データＦと第２パターン選択データＳを出力する。第１パターン選択データＦはインバータ５２０によりパターン選択アドレスＡ[７]のデータ値の反転値として出力され、第２パターン選択データＳはパターン選択アドレスＡ[７]のデータ値のまま出力される。
【０５００】
第１パターン選択データＦ及び第２パターン選択データＳは、それぞれ、第１パターン又は第２パターンを選択するためのデータであり、入出力ポート(I/O)４３０Ａ、４３０Ｂに入力される。
【０５０１】
第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、第１パターンを選択することを表す。これとは逆に、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、第２パターンを選択することを表す。
【０５０２】
図１９（Ｅ）は、実施の形態２のＳＲＡＭ４００のカラムデコーダ４２４の回路を示す図である。
【０５０３】
カラムデコーダ４２４は、２入力型のＡＮＤ（論理積）回路５３０、５３１、５３２、５３３を含む。ＡＮＤ回路５３０〜５３３には、それぞれ、２本の信号線が接続されており、それぞれ、カラムアドレスＡ[１]、Ａ[０]が入力される。
【０５０４】
ＡＮＤ回路５３０、５３１、５３２、５３３は、それぞれ、カラム選択データカラム選択データＲ＿ＣＯＬ＿ＳＥＬ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ[３]をそれぞれ出力する。
【０５０５】
実施の形態２のＳＲＡＭ４００は、第１パターン選択データＦ又は第２パターン選択データＳに基づき、入出力ポート(I/O)４３０Ａ及び４３０Ｂが、第１パターン又は第２パターンで、グローバルビットライン２１４を介して各ビットから読み出すデータ又は各ビットに書き込むデータを選択する。
【０５０６】
これは、実施の形態２のＳＲＡＭ４００では、同一アドレスのビットセルは、隣接ビットについて、互いに異なるサブバンク４５０Ｕ、４５０Ｌ内のサブブロック２１０に割り当てられているからである。
【０５０７】
実施の形態２のＳＲＡＭ４００における同一アドレスの複数のビットセルは、隣接ビットについて、互いに異なるサブバンク４５０Ｕとサブバンク４５０Ｌ内のサブブロック２１０に割り当てられることにより、千鳥状に分散されている。
【０５０８】
次に、実施の形態２のＳＲＡＭ４００における同一アドレスの複数のビットセルの配置について、図２０及び図２１を用いて説明する。
【０５０９】
図２０及び図２１は、実施の形態２のＳＲＡＭ４００における同一アドレスのビットセルを含むサブブロックを色分けして示す図である。
【０５１０】
図２０及び図２１には、サブバンク４５０Ｕ、４５０Ｌ内に含まれるビットＤ[０]〜Ｄ[７]についてのサブブロック番号０〜３のサブブロック２１０を升目で表す。図中では、ビットＤ[０]のサブブロック番号３のサブブロックだけに符号２１０を示すが、各升目はサブブロック（図１６及び図１８参照）を表す。各サブブロック２１０内のサブアレイ及びビットセルは図示を省略する。
【０５１１】
また、サブバンク４５０Ｕとサブバンク４５０Ｌとの間に入出力ポート４３０Ａを示す。入出力ポート４３０Ａは、切替回路２１５を含む。
【０５１２】
図２０及び図２１において、白抜きで示す升目のサブブロック２１０は、第１パターンによってデータの読み出し又は書き込みが行われるサブアレイ２１１Ａ又は２１１Ｂ（図１６及び図１８参照）を含むサブブロックである。
【０５１３】
これらのサブブロック２１０内に含まれるビットセルのうち、カラム番号とロウ番号が同一のビットセルは、同一アドレスのビットセルである。
【０５１４】
実施の形態２のＳＲＡＭ４００では、図２０及び図２１に示すように、第１パターンでデータの読み出し又は書き込みが行われるビットセルは、奇数ビットについてはサブバンク４５０Ｕに割り当てられ、偶数ビットについてはサブバンク４５０Ｌに割り当てられる。
【０５１５】
また、図２０及び図２１において、グレーで示す升目のサブブロック２１０は、第２パターンによってデータの読み出し又は書き込みが行われるサブアレイ２１１Ａ又は２１１Ｂ（図１６及び図１８参照）を含むサブブロックである。
【０５１６】
これらのサブブロック２１０内に含まれるビットセルのうち、カラム番号とロウ番号が同一のビットセルは、同一アドレスのビットセルである。
【０５１７】
実施の形態２のＳＲＡＭ４００では、図２０及び図２１に示すように、第２パターンでデータの読み出し又は書き込みが行われるビットセルは、偶数ビットについてはサブバンク４５０Ｕに割り当てられ、奇数ビットについてはサブバンク４５０Ｌに割り当てられる。
【０５１８】
図２０には、サブアレイ選択データＳＡＳ[４]又はＳＡＳ[５]が"１"になり、サブブロック番号２のサブブロックから第１パターンでデータの読み出しを行う場合のデータの流れを矢印で表す。
【０５１９】
また、図２１には、サブアレイ選択データＳＡＳ[２]又はＳＡＳ[３]が"１"になり、サブブロック番号１のサブブロックから第２パターンでデータの読み出しを行う場合のデータの流れを矢印で表す。
【０５２０】
このように、実施の形態２のＳＲＡＭ４００では、同一アドレスの複数のビットセルは、隣接ビットについて、互いに異なるサブバンク４５０Ｕとサブバンク４５０Ｌ内のサブブロック２１０に割り当てられて、千鳥状に分散されている。
【０５２１】
このため、比較例のＳＲＡＭ３０（図４参照）と同様に１ビットが４カラムを含む構成であっても、α線又は中性子線の入射によるデータ破壊が生じても、１ビットが８カラムを含む他の比較例のＳＲＡＭ３０Ａ（図５参照）と同等の耐性を発揮することができる。
【０５２２】
一方、他の比較例のＳＲＡＭ３０Ａ（図５参照）とは異なり、１ビットのカラム数は４カラムで済むため、アスペクト比の変化（横長化）及びワードラインの長大化による動作速度の低下を抑制することができる。
【０５２３】
以上、実施の形態２によれば、アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供することができる。
【０５２４】
＜実施の形態３＞
図２２は、実施の形態３のＳＲＡＭ６００を示す図である。
【０５２５】
実施の形態３のＳＲＡＭ６００は、実施の形態１のＳＲＡＭ２００における同一アドレスの複数のビットセルの分散と、実施の形態２のＳＲＡＭ４００における同一アドレスの複数のビットセルの分散とを融合させたものである。
【０５２６】
以下、実施の形態１、２と同一又は同等の構成要素には同一符号を付し、その説明を省略する。
【０５２７】
図２２に示すＳＲＡＭ６００は、サブブロック２１０、デコーダ６２０、入出力ポート４３０Ａ、４３０Ｂ、及びタイマ２４０を含む。
【０５２８】
図２２には、ＳＲＡＭ６００のサブブロック２１０のうちの４ビット分（Ｄ[ｎ]、Ｄ［ｎ−１］、Ｄ［ｎ−２］、Ｄ［ｎ−３］）を示す。ビットＤ［ｎ］は奇数ビットであるものとする。
【０５２９】
ここで、各サブブロック２１０内のサブアレイ２１１Ａ、２１１Ｂの各ビットは、４ロウ×４カラムの１６個のビットセル１０を含むが、紙面の都合上、図２２には、各ビットのサブアレイ２１１Ａ、２１１Ｂについて、２ロウ×４カラム分のビットセルを升目で示す。
【０５３０】
図２２では、ビットＤ［ｎ−３］〜Ｄ［ｎ］内のビットセルを白とグレーでの色分けるとともに、×印の有無で区別してあるが、図２２に図示しないビット内のビットセルについても、図２２と同様のパターンで、白／グレーの色分けと×印の有無とによって４ビットずつグループ分けがされている。このグループ分けについては後述する。
【０５３１】
なお、図２２に示すサブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂ等の位置関係は、サブブロック２１０及びサブアレイ２１１Ａ、２１１Ｂの階層構造を表しており、本明細書中における「上」又は「下」なる文言は、物理的な上下関係を表すものではない。
【０５３２】
図２３は、実施の形態３のＳＲＡＭ６００の一部分を示す図である。
【０５３３】
図２３には、入出力ポート（I/O）４３０Ａ、入出力ポート（I/O）４３０Ａの上下に位置する２つのサブブロック番号０のサブブロック２１０のうちのビットＤ[ｎ]、Ｄ[ｎ−１]の部分、２つのカラム選択／読み書き回路２１３、グローバルビットライン２１４、デコーダ４２０、及び二対のワードラインドライバ２１２Ａ、２１２Ｂを示す。
【０５３４】
なお、ここでは、ビットＤ[ｎ]が奇数ビットでビット[ｎ−１]が偶数ビットであるものとする。
【０５３５】
また、ビットＤ[ｎ]のｎをビット番号と称す。
【０５３６】
ＳＲＡＭ６００は、プロセッサコア１１１（図６参照）から入力される読み出し命令と書き込み命令に従って、データの読み出しと書き込みを行う。
【０５３７】
説明の便宜上、図２３にはビットセル１０を示さないが、サブアレイ２１１Ａ、２１１Ｂは、それぞれ、アレイ状に配列された複数のビットセルを含む。
【０５３８】
サブブロック２１０は、サブアレイ２１１Ａ、２１１Ｂ、ワードラインドライバ２１２Ａ、２１２Ｂ、カラム選択／読み書き回路２１３を含む。
【０５３９】
サブアレイ２１１Ａ及び２１１Ｂの配列とサブアレイ番号については、実施の形態２のＳＲＡＭ４００と同様である。
【０５４０】
ワードラインドライバ２１２Ａ、２１２Ｂは、それぞれサブアレイ２１１Ａ、２１１Ｂに対応して設けられており、それぞれサブアレイ２１１Ａ、２１１Ｂに含まれるワードラインに接続されている。ワードラインドライバ２１２Ａ、２１２Ｂは、それぞれデコーダ２２０がロウアドレスをデコードして出力するロウ選択データ（ロウ選択信号）に基づき、ロウの選択（ワードラインの選択）を行う。
【０５４１】
カラム選択／読み書き回路２１３は、各サブブロック２１０に対応して設けられており、各サブブロック２１０内の２つのサブアレイ２１１Ａ、２１１Ｂのビットラインに接続されている。カラム選択／読み書き回路２１３は、デコーダ２２０がカラムアドレスをデコードして出力するカラム選択データ（カラム選択信号）に基づき、カラムの選択（ビットラインの選択）を行う。
【０５４２】
デコーダ６２０は、ロウデコーダ２２１、サブブロックデコーダ２２２、パターン選択デコーダ６２３、領域選択デコーダ６２４、及びカラムデコーダ６２５を含む。デコーダ６２０には、入力アドレスが入力される。また、カラムデコーダ６２５には、ライトイネーブル信号Ｗ／Ｅが入力される。
【０５４３】
すなわち、デコーダ６２０は、実施の形態１のデコーダ２２０の上下選択デコーダ２２３の代わりにパターン選択デコーダ６２３を組み込み、パターン選択デコーダ２２４の代わりに領域選択デコーダ６２４を組み込み、カラムデコーダ２２５の代わりにカラムデコーダ６２５を組み込んだものである。
【０５４４】
ロウデコーダ２２１及びサブブロックデコーダ２２２は、実施の形態１のロウデコーダ２２１及びサブブロックデコーダ２２２と同様である。
【０５４５】
パターン選択デコーダ６２３は、第１パターンと第２パターンを選択するためのデコーダであり、実施の形態１のパターン選択デコーダ２２４と同様であるが、第１パターン選択データＦ（First）及び第２パターン選択データＳ（Second）を出力する信号線は、入出力ポート(I/O)４３０Ａ、４３０Ｂに接続されている。
【０５４６】
パターン選択デコーダ６２３は、読み出し命令又は書き込み命令の入力アドレスに含まれるパターン選択アドレスをデコードして第１パターン選択データＦ及び第２パターン選択データＳを出力する。
【０５４７】
第１パターン選択データＦ及び第２パターン選択データＳは、それぞれ、第１パターン又は第２パターンを選択するためのデータである。
【０５４８】
第１パターン選択データＦは、奇数ビットＤ[ｎ]の入出力ポート(I/O)４３０Ａに入力され、第２パターン選択データＳは、偶数ビットＤ[ｎ−１]の入出力ポート(I/O)４３０Ａに入力される。
【０５４９】
第１パターン選択データＦが"１"であり、第２パターン選択データＳが"０"である場合は、第１パターンを選択することを表す。これとは逆に、第１パターン選択データＦが"０"であり、第２パターン選択データＳが"１"である場合は、第２パターンを選択することを表す。
【０５５０】
ここで、第１パターンでは、サブバンク４５０Ｕの奇数ビットに対してデータの読み出し又は書き込みを行うとともに、サブバンク４５０Ｌの偶数ビットに対してデータの読み出し又は書き込みを行う。
【０５５１】
また、第２パターンでは、サブバンク４５０Ｕの偶数ビットに対してデータの読み出し又は書き込みを行うとともに、サブバンク４５０Ｌの奇数ビットに対してデータの読み出し又は書き込みを行う。
【０５５２】
領域選択デコーダ６２４は、１つのサブブロック２１０に含まれる上側のサブアレイ２１１Ａと下側のサブアレイ２１１Ｂからビットを選択する。
【０５５３】
領域選択デコーダ６２４は、サブアレイ２１１Ａの奇数ビットと、この奇数ビットに隣接する偶数ビットを第１領域として選択する。第１領域に含まれる奇数ビット及び偶数ビットは、一例として偶数ビットの方が奇数ビットよりもビット番号が若いものとする。
【０５５４】
また、領域選択デコーダ６２４は、サブアレイ２１１Ｂの奇数ビットと、この奇数ビットに隣接する偶数ビットを第２領域として選択する。第２領域に含まれる奇数ビット及び偶数ビットは、一例として偶数ビットの方が奇数ビットよりもビット番号が若いものとする。
【０５５５】
ここで、第１領域に含まれるすべてのビットのビット番号と、第２領域に含まれるすべてのビットのビット番号とは異なる。
【０５５６】
第１領域に含まれるビットのビット番号は、２ずつ抜けており、例えば、０、１、４、５、８、９、１２、１３、・・・と並んでいる。
【０５５７】
第２領域に含まれるビットのビット番号は、２ずつ抜けており、例えば、２、３、６、７、１０、１１、１４、１５・・・と並んでいる。
【０５５８】
これにより、第１領域は、例えば、図２２に白く示すビットを含む領域であり、第２領域は図２２にグレーで示すビットを含む領域である。
【０５５９】
すなわち、領域選択デコーダ６２４は、各サブブロック２１０内のサブアレイ２１１Ａ、２１１Ｂのビットを２ビットずつ千鳥状に選択し、これにより図２２に一例として示す白い第１領域とグレーの第２領域に分けられる。
【０５６０】
領域選択デコーダ６２４は、第１領域又は第２領域を選択するために、入力アドレスに含まれる領域選択アドレスをデコードして、第１領域選択データＦＡ（First Area）又は第２領域選択データＳＡ（Second Area）を出力する。
【０５６１】
カラムデコーダ６２５は、信号線を介して、カラム選択／読み書き回路２１３に接続されている。カラムデコーダ６２５は、実際には、図２３に示すすべてのサブブロック２１０の中のカラム選択／読み書き回路２１３に接続されている。
【０５６２】
カラムデコーダ６２５には、読み出し命令又は書き込み命令の入力アドレスに含まれるカラムアドレスに加えて、第１領域選択データＦＡ、第２領域選択データＳＡ、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０５６３】
カラムデコーダ６２５は、カラムアドレスをデコードし、第１領域選択データＦＡ及び第２領域選択データＳＡのデータ値と、ライトイネーブル信号Ｗ／Ｅの信号レベルとに応じたカラム選択データを出力する。
【０５６４】
カラムデコーダ６２５が出力するカラム選択データは、第１領域又は第２領域におけるデータの読み出し又は書き込みを実現するように、サブアレイ２１１Ａ及び２１１Ｂのビット内のカラムを選択するためのデータである。
【０５６５】
カラム選択データは、カラム選択／読み書き回路２１３に入力される。
【０５６６】
カラムデコーダ６２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＬレベルで、第１領域選択データＦＡが"１"であり、第２領域選択データＳＡが"０"である場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]を出力する。
【０５６７】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]は、第１領域でのデータの読み出しを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０５６８】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]により、サブアレイ２１１Ａ及び２１１Ｂの第１領域内のビットのいずれかのビットラインＢＬ、ＢＬＢの対がデータの読み出しのために選択される。
【０５６９】
カラムデコーダ６２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＬレベルで、第１領域選択データＦＡが"０"であり、第２領域選択データＳＡが"１"である場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]を出力する。
【０５７０】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０] は、第２領域でのデータの読み出しを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０５７１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]により、サブアレイ２１１Ａ及び２１１Ｂの第２領域内のビットのいずれかのビットラインＢＬ、ＢＬＢの対がデータの読み出しのために選択される。
【０５７２】
また、カラムデコーダ６２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＨレベルで、第１領域選択データＦＡが"１"であり、第２領域選択データＳＡが"０"である場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]を出力する。
【０５７３】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]は、第１領域でのデータの書き込みを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０５７４】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]により、サブアレイ２１１Ａ及び２１１Ｂの第１領域内のビットのいずれかのビットラインＢＬ、ＢＬＢの対がデータの書き込みのために選択される。
【０５７５】
また、カラムデコーダ６２５は、ライトイネーブル信号Ｗ／Ｅの信号レベルがＨレベルで、第１領域選択データＦＡが"０"であり、第２領域選択データＳＡが"１"である場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]を出力する。
【０５７６】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０] は、第２領域でのデータの書き込みを実現するために、サブアレイ２１１Ａ及び２１１Ｂ内のビットのカラムを選択するためのカラム選択データである。
【０５７７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]により、サブアレイ２１１Ａ及び２１１Ｂの第２領域内のビットのいずれかのビットラインＢＬ、ＢＬＢの対がデータの書き込みのために選択される。
【０５７８】
なお、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]は、それぞれ、４ビットのカラム選択データをまとめて示す表記である。
【０５７９】
例えば、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、及びＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]を含む。これは、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３：０]、及びＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３：０]についても同様である。
【０５８０】
以上のように、実施の形態３のＳＲＡＭ６００では、パターン選択デコーダ６２３が第１パターン又は第２パターンを選択するとともに、領域選択デコーダ６２４が第１領域又は第２領域を選択する。
【０５８１】
これにより、同一アドレスの複数のメモリセルを特定する際に、隣接ビットについて、第１パターン又は第２パターンのいずれかが選択されることにより、入出力ポート(I/O)４３０Ａの上側のサブバンク４５０Ｕ又は下側のサブバンク４５０Ｌが千鳥状に特定される。これは、図２２に×の有無で示す状態である。
【０５８２】
また、これに加えて、第１領域又は第２領域のいずれかが選択されることにより、各サブブロック２１０内のサブアレイ２１１Ａ、２１１Ｂについて、２ビットずつ千鳥状に、ビットセルを含むビットが選択される。これは、図２２に白／グレーで示す状態である。
【０５８３】
これにより、実施の形態３のＳＲＡＭ６００では、同一アドレスのビットセルは、白で×印のあるビット、白で×印のないビット、グレーで×印のあるビット、グレーで×印のないビットによって表される４つのグループのいずれかに属するように分けられる。
【０５８４】
４つのグループの各々に含まれるビットセルのうち、同一のカラム番号及びロウ番号のビットセルは、同一アドレスのビットセルである。
【０５８５】
次に、図２４を用いて、入力アドレスのデータ構成とデコーダ６２０の回路構成について説明する。
【０５８６】
図２４（Ａ）は、実施の形態３のＳＲＡＭ６００の入力アドレスのデータ構成を示す図である。入力アドレスＡ[７：０]は８ビットのデータであり、下位ビットから上位ビットにかけて、カラムアドレス（column）、ロウアドレス（row）、領域選択アドレス（FA/SA）、サブブロックアドレス（Sub Block）、パターン選択アドレス（F/S）を含む。
【０５８７】
カラムアドレス（column）にはＡ[１：０]の２ビット、ロウアドレス（row）にはＡ[３：２]の２ビット、領域選択アドレス（FA/SA）にはＡ[４]の１ビット、サブブロックアドレス（Sub Block）にはＡ[６：５]の２ビット、パターン選択アドレス（F/S）にはＡ[７]の１ビットが、それぞれ割り当てられている。
【０５８８】
図２４（Ｂ）は、実施の形態３のＳＲＡＭ６００のロウデコーダ２２１の回路を示す図である。
【０５８９】
ロウデコーダ２２１は、２入力型のＡＮＤ（論理積）回路３００、３０１、３０２、３０３を含む。ＡＮＤ回路３００〜３０３には、それぞれ、２本の信号線が接続されており、それぞれ、ロウアドレスＡ[３]、Ａ[２]が入力される。
【０５９０】
ＡＮＤ回路３００、３０１、３０２、３０３は、それぞれ、ロウ選択データＲ[０]、Ｒ[１]、Ｒ[２]、Ｒ[３]を出力する。
【０５９１】
ロウデコーダ２２１は、実施の形態１のロウデコーダ２２１と同様である。
【０５９２】
次に、図２４（Ｃ）を用いて、サブブロックデコーダ２２２の回路について説明する。
【０５９３】
図２４（Ｃ）は、実施の形態３のＳＲＡＭ６００のサブブロックデコーダ２２２の回路を示す図である。
【０５９４】
サブブロックデコーダ２２２は、実施の形態１のサブブロックデコーダ２２２と同様であり、サブブロック選択データＳＢＳ[０]、ＳＢＳ[１]、ＳＢＳ[２]、ＳＢＳ[３]を出力する。
【０５９５】
次に、図２４（Ｄ）を用いて、パターン選択デコーダ６２３の回路について説明する。
【０５９６】
図２４（Ｄ）は、実施の形態３のＳＲＡＭ６００のパターン選択デコーダ６２３の回路を示す図である。
【０５９７】
パターン選択デコーダ６２３は、１入力・２出力型の回路を有し、パターン選択アドレスＡ[７]をデコードして第１パターン選択データＦと第２パターン選択データＳを出力する。第２パターン選択データはインバータ７２０によりパターン選択アドレスＡ[７]のデータ値の反転値として出力され、第１パターン選択データＦはパターン選択アドレスＡ[７]のデータ値のまま出力される。
【０５９８】
第１パターン選択データＦが"１"で第２パターン選択データＳが"０"である場合は、第１パターンを選択する場合である。これとは逆に、第１パターン選択データＦが"０"で第２パターン選択データＳが"１"である場合は、第２パターンを選択する場合である。
【０５９９】
次に、図２４（Ｅ）を用いて、領域選択デコーダ６２４の回路について説明する。
【０６００】
図２４（Ｅ）は、実施の形態３のＳＲＡＭ６００の領域選択デコーダ６２４の回路を示す図である。
【０６０１】
領域選択デコーダ６２４は、１入力・２出力型の回路を有し、領域選択アドレスＡ[４]をデコードして第１領域選択データＦＡと第２領域選択データＳＡを出力する。第１領域選択データＦＡはインバータ７３０により領域選択アドレスＡ[４]のデータ値の反転値として出力され、第２領域選択データＳＡは領域選択アドレスＡ[４]のデータ値のまま出力される。
【０６０２】
第１領域選択データＦＡ及び第２領域選択データＳＡは、それぞれ、第１領域又は第２領域を選択するためのデータであり、カラムデコーダ２２５に入力される。
【０６０３】
第１領域選択データＦＡが"１"であり、第２領域選択データＳＡが"０"である場合は、第１領域を選択することを表す。これとは逆に、第１領域選択データＦＡが"０"であり、第２領域選択データＳＡが"１"である場合は、第２領域を選択することを表す。
【０６０４】
次に、図２４（Ｆ）〜図２４（Ｉ）を用いて、カラムデコーダ６２５の回路について説明する。
【０６０５】
カラムデコーダ６２５は、カラムアドレスをデコードし、第１領域選択データＦＡ及び第２領域選択データＳＡのデータ値と、ライトイネーブル信号Ｗ／Ｅの信号レベルとに応じたカラム選択データを出力する。
【０６０６】
図２４（Ｆ）〜図２４（Ｉ）は、実施の形態３のＳＲＡＭ６００のカラムデコーダ６２５に含まれるカラムアドレスをデコードする回路を示す図である。
【０６０７】
カラムデコーダ６２５は、第１領域におけるデータの読み出しを行うためにカラムアドレスをデコードする回路７４０Ｒと、第１領域におけるデータの書き込みを行うためにカラムアドレスをデコードする回路７４０Ｗとを含む。
【０６０８】
また、カラムデコーダ６２５は、第２領域におけるデータの読み出しを行うためにカラムアドレスをデコードする回路７５０Ｒと、第２領域におけるデータの書き込みを行うためにカラムアドレスをデコードする回路７５０Ｗとをさらに含む。
【０６０９】
図２４（Ｆ）に示すように、第１領域におけるデータの読み出しを行うためにカラムアドレスをデコードする回路７４０Ｒは、４入力型のＡＮＤ（論理積）回路７６０Ｒ、７６１Ｒ、７６２Ｒ、７６３Ｒを含む。ＡＮＤ回路７６０Ｒ〜７６３Ｒには、それぞれ、４本の信号線が接続されており、それぞれ、第１領域選択データＦＡ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６１０】
ＡＮＤ回路７６０Ｒ、７６１Ｒ、７６２Ｒ、７６３Ｒは、それぞれ、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を出力する。
【０６１１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]は、第１領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０６１２】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]は、第１領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０６１３】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]は、第１領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０６１４】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]は、第１領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０６１５】
ＡＮＤ回路７６０Ｒには、第１領域選択データＦＡ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６１６】
ＡＮＤ回路７６１Ｒには、第１領域選択データＦＡ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６１７】
ＡＮＤ回路７６２Ｒには、第１領域選択データＦＡ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６１８】
ＡＮＤ回路７６３Ｒには、第１領域選択データＦＡ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６１９】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６２０】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６２１】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６２２】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]を"０"にする。
【０６２３】
なお、第１領域選択データＦＡが"０"である場合は、第１領域におけるデータの読み出しを行わない場合であるため、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]は、すべて"０"になる。
【０６２４】
図２４（Ｇ）に示すように、第１領域におけるデータの書き込みを行うためにカラムアドレスをデコードする回路７４０Ｗは、４入力型のＡＮＤ（論理積）回路７６０Ｗ、７６１Ｗ、７６２Ｗ、７６３Ｗを含む。ＡＮＤ回路７６０Ｗ〜７６３Ｗには、それぞれ、４本の信号線が接続されており、それぞれ、第１領域選択データＦＡ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６２５】
ＡＮＤ回路７６０Ｗ、７６１Ｗ、７６２Ｗ、７６３Ｗは、それぞれ、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を出力する。
【０６２６】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]は、第１領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０６２７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]は、第１領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０６２８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]は、第１領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０６２９】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]は、第１領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０６３０】
ＡＮＤ回路７６０Ｗには、第１領域選択データＦＡ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６３１】
ＡＮＤ回路７６１Ｗには、第１領域選択データＦＡ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６３２】
ＡＮＤ回路７６２Ｗには、第１領域選択データＦＡ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６３３】
ＡＮＤ回路７６３Ｗには、第１領域選択データＦＡ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６３４】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６３５】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６３６】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"０"にする。
【０６３７】
カラムデコーダ６２５は、第１領域選択データＦＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]を"０"にする。
【０６３８】
なお、第１領域選択データＦＡが"０"である場合は、第１領域におけるデータの書き込みを行わない場合であるため、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[２]、及びＷ＿ＣＯＬ＿ＳＥＬ＿ＦＡ[３]は、すべて"０"になる。
【０６３９】
図２４（Ｈ）に示すように、第２領域におけるデータの読み出しを行うためにカラムアドレスをデコードする回路７５０Ｒは、４入力型のＡＮＤ（論理積）回路７７０Ｒ、７７１Ｒ、７７２Ｒ、７７３Ｒを含む。ＡＮＤ回路７７０Ｒ〜７７３Ｒには、それぞれ、４本の信号線が接続されており、それぞれ、第２領域選択データＳＡ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６４０】
ＡＮＤ回路７７０Ｒ、７７１Ｒ、７７２Ｒ、７７３Ｒは、それぞれ、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を出力する。
【０６４１】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]は、第２領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０６４２】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]は、第２領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０６４３】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]は、第２領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０６４４】
カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]は、第２領域におけるデータの読み出しを行うために、図２３に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０６４５】
ＡＮＤ回路７７０Ｒには、第２領域選択データＳＡ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６４６】
ＡＮＤ回路７７１Ｒには、第２領域選択データＳＡ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６４７】
ＡＮＤ回路７７２Ｒには、第２領域選択データＳＡ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６４８】
ＡＮＤ回路７７３Ｒには、第２領域選択データＳＡ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及び否定演算されたライトイネーブル信号Ｗ／Ｅが入力される。
【０６４９】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６５０】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６５１】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６５２】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＬレベルの場合は、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"１"にし、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]を"０"にする。
【０６５３】
なお、第２領域選択データＳＡが"０"である場合は、第２領域におけるデータの読み出しを行わない場合であるため、カラム選択データＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｒ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、及びＲ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]は、すべて"０"になる。
【０６５４】
図２４（Ｉ）に示すように、第２領域におけるデータの書き込みを行うためにカラムアドレスをデコードする回路７５０Ｗは、４入力型のＡＮＤ（論理積）回路７７０Ｗ、７７１Ｗ、７７２Ｗ、７７３Ｗを含む。ＡＮＤ回路７７０Ｗ〜７７３Ｗには、それぞれ、４本の信号線が接続されており、それぞれ、第２領域選択データＳＡ、カラムアドレスＡ[１]、Ａ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６５５】
ＡＮＤ回路７７０Ｗ、７７１Ｗ、７７２Ｗ、７７３Ｗは、それぞれ、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を出力する。
【０６５６】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]は、第２領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ００及びＢＬＢ００と、ビットラインＢＬ１０及びＢＬＢ１０を選択するためのカラム選択データである。
【０６５７】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]は、第２領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０１及びＢＬＢ０１と、ビットラインＢＬ１１及びＢＬＢ１１を選択するためのカラム選択データである。
【０６５８】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]は、第２領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０２及びＢＬＢ０２と、ビットラインＢＬ１２及びＢＬＢ１２を選択するためのカラム選択データである。
【０６５９】
カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]は、第２領域におけるデータの書き込みを行うために、図２３に示すビットラインＢＬ０３及びＢＬＢ０３と、ビットラインＢＬ１３及びＢＬＢ１３を選択するためのカラム選択データである。
【０６６０】
ＡＮＤ回路７７０Ｗには、第２領域選択データＳＡ、否定演算されたカラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６６１】
ＡＮＤ回路７７１Ｗには、第２領域選択データＳＡ、否定演算されたカラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６６２】
ＡＮＤ回路７７２Ｗには、第２領域選択データＳＡ、カラムアドレスＡ[１]、否定演算されたカラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６６３】
ＡＮＤ回路７７３Ｗには、第２領域選択データＳＡ、カラムアドレスＡ[１]、カラムアドレスＡ[０]、及びライトイネーブル信号Ｗ／Ｅが入力される。
【０６６４】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６６５】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"０"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６６６】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"０"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"０"にする。
【０６６７】
カラムデコーダ６２５は、第２領域選択データＳＡが"１"、カラムアドレスＡ[１]、Ａ[０]が"１"、"１"、かつ、ライトイネーブル信号Ｗ／ＥがＨレベルの場合は、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]を"１"にし、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]を"０"にする。
【０６６８】
なお、第２領域選択データＳＡが"０"である場合は、第２領域におけるデータの書き込みを行わない場合であるため、カラム選択データＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[０]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[１]、Ｗ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[２]、及びＷ＿ＣＯＬ＿ＳＥＬ＿ＳＡ[３]は、すべて"０"になる。
【０６６９】
入出力ポート４３０Ａ、４３０Ｂは、実施の形態２の入出力ポート４３０Ａ、４３０Ｂと同様であり、第１パターン選択データＦ又は第２パターン選択データＳに基づき、第１パターン又は第２パターンで、グローバルビットライン２１４を介して各ビットから読み出すデータ又は各ビットに書き込むデータを選択する。
【０６７０】
奇数ビットＤ[ｎ]及び偶数ビットＤ[ｎ−１]の入出力ポート(I/O)４３０Ａには、第１パターン選択データＦ及び第２パターン選択データＳの両方が入力される。
【０６７１】
以上で説明した実施の形態３のＳＲＡＭ６００によれば、第１パターン又は第２パターンによるデータの読み出し又は書き込みを行うために、奇数ビット又は偶数ビットに含まれるアドレスのビットセルをサブバンク４５０Ｕ又は４５０Ｌから千鳥状に選択することができる。
【０６７２】
これは、例えば、図２２に示す×印のある４カラムを含むビットを第１パターンで選択するか、×印のない４カラムを含むビットを第２パターンで選択するかに相当する。
【０６７３】
また、実施の形態３のＳＲＡＭ６００では、第１領域と第２領域でのデータの読み出し又は書き込みを行うために、図２２に白く示すビットと、グレーで示すビットとを選択することができる。
【０６７４】
すなわち、実施の形態３のＳＲＡＭ６００によれば、同一アドレスのビットセルは、白で×印のあるビット、白で×印のないビット、グレーで×印のあるビット、グレーで×印のないビットによって表される４つのグループのいずれかに属するように分けられている。
【０６７５】
４つのグループの各々に含まれるビットセルのうち、同一のカラム番号及びロウ番号のビットセルは、同一アドレスのビットセルである。
【０６７６】
このため、実施の形態３のＳＲＡＭ６００によれば、白で×印のあるビット、白で×印のないビット、グレーで×印のあるビット、グレーで×印のないビットの４通りのビットの４通りのビットの選び方を選択することができる。
【０６７７】
例えば、白で×印のあるビットに着目すると、隣接するビットは、異なるサブバンクにあり、かつ、カラム選択／読み書き回路２１３に対して反対側のサブアレイ（２１１Ａ又は２１１Ｂ）に含まれている。
【０６７８】
そして、白で×印のあるビットに着目すると、同一のサブアレイ２１１Ａ又は２１１Ｂ内における隣のビットとの間には３ビットの間隔があることになる。
【０６７９】
これは、１ビットが１６カラムを含むＳＲＡＭと同等の構成であり、白で×印のないビット、グレーで×印のあるビット、グレーで×印のないビットのグループについても同様である。
【０６８０】
このように、実施の形態３のＳＲＡＭ６００では、同一アドレスの複数のビットセルは、隣接ビットについて、互いに異なるサブバンク４５０Ｕとサブバンク４５０Ｌ内のサブブロック２１０に割り当てられ、かつ、カラム選択／読み書き回路２１３に対して反対側のサブアレイ（２１１Ａ又は２１１Ｂ）に含まれている。
【０６８１】
このため、比較例のＳＲＡＭ３０（図４参照）と同様に１ビットが４カラムを含む構成であっても、α線又は中性子線の入射によるデータ破壊が生じても、１ビットが１６カラムを含むＳＲＡＭと同等の耐性を発揮することができる。
【０６８２】
一方、１ビットのカラム数は４カラムで済むため、アスペクト比の変化（横長化）及びワードラインの長大化による動作速度の低下を抑制することができる。
【０６８３】
以上、実施の形態３によれば、アスペクト比の変更、動作速度の低下を抑制しつつ、複数ビットにわたるデータ破壊の発生を抑制した半導体記憶装置及び半導体記憶装置の制御方法を提供することができる。
【０６８４】
以上、本発明の例示的な実施の形態の半導体記憶装置及び半導体記憶装置の制御方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０６８５】
１０、１０Ａ、１０Ｂ、１０Ｃ、１０Ｄ、１０Ｅ、１０Ｆ  ビットセル
１１、１２  インバータ
１１Ａ、１１Ｂ  ＭＯＳトランジスタ
１２Ａ、１２Ｂ  ＭＯＳトランジスタ
１３、１４  ＮＭＯＳトランジスタ
Ｎ１、Ｎ２  記憶ノード
２０  ビットセル
２１、２２、２３、２４  ＮＭＯＳトランジスタ
３０、３０Ａ  ＳＲＡＭ
３１、３２  ワードラインドライバ
３３  カラム選択／読み書き回路
１００  サーバ
１０１  ＬＳＩ
１０２  主記憶装置
１０３  補助記憶装置
１１１  プロセッサコア
１１２  Ｌ１インストラクションキャッシュ
１１３  Ｌ１データキャッシュ
１１４  Ｌ２キャッシュ
１１５  メモリコントローラ
２００、２００Ａ、２００Ｂ、２００Ｘ、４００、６００  ＳＲＡＭ
２１０  サブブロック
２１１Ａ、２１１Ｂ  サブアレイ
２１２Ａ、２１２Ｂ、４１２Ａ、４１２Ｂ  ワードラインドライバ
２１３、４１３  カラム選択／読み書き回路
２１４  グローバルビットライン
２１５Ａ、２１５Ｂ  切替回路
２２０、４２０  デコーダ
２２１、４２１  ロウデコーダ
２２２  サブブロックデコーダ
２２３  上下選択デコーダ
２２４  パターン選択デコーダ
２２５、４２４  カラムデコーダ
２３０Ａ、２３０Ｂ、４３０Ａ、４３０Ｂ  入出力ポート（I/O）
２４０  タイマ
４２２  サブアレイデコーダ
４２３  パターン選択デコーダ
４５０Ｕ、４５０Ｌ  サブバンク
【図１】
2012124063.tif 000003
【図２】
2012124063.tif 000004
【図３】
2012124063.tif 000005
【図４】
2012124063.tif 000006
【図５】
2012124063.tif 000007
【図６】
2012124063.tif 000008
【図７】
2012124063.tif 000009
【図８】
2012124063.tif 000010
【図９Ａ】
2012124063.tif 000011
【図９Ｂ】
2012124063.tif 000012
【図９Ｃ】
2012124063.tif 000013
【図９Ｄ】
2012124063.tif 000014
【図９Ｅ】
2012124063.tif 000015
【図９Ｆ】
2012124063.tif 000016
【図９Ｇ】
2012124063.tif 000017
【図９Ｈ】
2012124063.tif 000018
【図９Ｉ】
2012124063.tif 000019
【図１０】
2012124063.tif 000020
【図１１】
2012124063.tif 000021
【図１２】
2012124063.tif 000022
【図１３】
2012124063.tif 000023
【図１４】
2012124063.tif 000024
【図１５】
2012124063.tif 000025
【図１６】
2012124063.tif 000026
【図１７】
2012124063.tif 000027
【図１８】
2012124063.tif 000028
【図１９Ａ】
2012124063.tif 000029
【図１９Ｂ】
2012124063.tif 000030
【図１９Ｃ】
2012124063.tif 000031
【図１９Ｄ】
2012124063.tif 000032
【図１９Ｅ】
2012124063.tif 000033
【図２０】
2012124063.tif 000034
【図２１】
2012124063.tif 000035
【図２２】
2012124063.tif 000036
【図２３】
2012124063.tif 000037
【図２４Ａ】
2012124063.tif 000038
【図２４Ｂ】
2012124063.tif 000039
【図２４Ｃ】
2012124063.tif 000040
【図２４Ｄ】
2012124063.tif 000041
【図２４Ｅ】
2012124063.tif 000042
【図２４Ｆ】
2012124063.tif 000043
【図２４Ｇ】
2012124063.tif 000044
【図２４Ｈ】
2012124063.tif 000045
【図２４Ｉ】
2012124063.tif 000046
【手続補正書】
【提出日】平成26年3月28日(2014.3.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを保持する複数のメモリセルを前記データのビット毎にそれぞれ有する複数のメモリブロックと、
同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について異なるメモリブロック内のメモリセルを特定するデコーダと、
前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行する読み書き制御部と
を含む、半導体記憶装置。
【請求項２】
前記半導体記憶装置において、
前記メモリブロックは、前記読み書き制御部の一方の側又は他方の側に配設されるサブアレイであり、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について、前記読み書き制御部の一方の側のサブアレイ内のメモリセルと、前記読み書き制御部の他方の側のサブアレイ内のメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項３】
前記半導体記憶装置において、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、奇数ビットについて前記読み書き制御部の一方の側のサブアレイ内のメモリセルを選択するとともに、偶数ビットについて前記読み書き制御部の他方の側のサブアレイ内のメモリセルを選択するためのパターン選択データに基づいて、前記読み書き制御部の一方の側のサブアレイ内のメモリセルと、前記読み書き制御部の他方の側のサブアレイ内のメモリセルとを特定する、請求項２記載の半導体記憶装置。
【請求項４】
前記半導体記憶装置において、
前記メモリブロックは、前記メモリセルをそれぞれ含む複数のサブブロックが階層化されたサブバンクであり、前記サブバンクは、前記読み書き制御部で読み出し又は書き込みが行われるデータを当該半導体記憶装置の外部回路との間で入出力するための入出力部の一方の側と他方の側とに配設されており、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について、前記入出力部の一方の側のサブバンク内のメモリセルと、前記入出力部の他方の側のサブバンク内のメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項５】
前記半導体記憶装置において、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、奇数ビットについて前記入出力部の一方の側のサブバンク内のメモリセルを選択するとともに、偶数ビットについて前記入出力部の他方の側のサブバンク内のメモリセルを選択するためのパターン選択データに基づいて、前記入出力部の一方の側のサブバンク内のメモリセルと、前記入出力部の他方の側のサブバンク内のメモリセルとを特定する、請求項４記載の半導体記憶装置。
【請求項６】
前記半導体記憶装置において、
前記メモリブロックは、前記メモリセルをそれぞれ含む複数のサブブロックが階層化されたサブバンクであり、前記サブバンクは、前記読み書き制御部で読み出し又は書き込みが行われるデータを当該半導体記憶装置の外部回路との間で入出力するための入出力部の一方の側と他方の側とに配設されており、
前記デコーダは、前記同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について、前記入出力部の一方の側のサブバンク内のサブブロックと、前記入出力部の他方の側のサブバンク内のサブブロックとを特定するとともに、前記サブブロックの前記読み書き制御部の一方の側と他方の側とに配設されるサブアレイについて、１ビットずつ又は２ビットずつ、前記読み書き制御部の一方の側のサブアレイに含まれるメモリセルと、前記読み書き制御部の他方の側のサブアレイに含まれるメモリセルとを特定する、請求項１記載の半導体記憶装置。
【請求項７】
データを保持する複数のメモリセルを前記データのビット毎にそれぞれ有する複数のメモリブロックを有する半導体記憶装置の制御方法において、
前記半導体記憶装置のデコーダが、同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について異なるメモリブロック内のメモリセルを特定するステップと、
前記半導体記憶装置の読み書き制御部が、前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行するステップと
を含む、半導体記憶装置の制御方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
本発明の実施の形態の半導体記憶装置は、データを保持する複数のメモリセルを前記データのビット毎にそれぞれ有する複数のメモリブロックと、同一アドレスの複数のメモリセルを特定する際に、隣接する前記ビット同士について異なるメモリブロック内のメモリセルを特定するデコーダと、前記デコーダが特定したメモリセルが保持するデータの読み出しと、前記デコーダが特定したメモリセルに対するデータの書き込みとを実行する読み書き制御部とを含む。
【国際調査報告】
2012124063.tif 000047
2012124063.tif 000048
2012124063.tif 000049
2012124063.tif 000050