(57)【要約】  メモリセルアレイ（１０２）の列ごとに独立に電源を遮断できる電源制御回路（１０３）を設け、列単位に設けた情報保持が不要であることを判定する回路（４０２）で、前記電源制御回路（１０３）を制御することにより、情報保持が不要なメモリセル（４０１）の電源（ｖｄｄ０，ｖｄｄ１）を遮断する。
2011027501.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルがマトリックス状に接続されてなるメモリセルアレイと、
前記メモリセルの列ごとに分離された電源供給線を、列ごとに独立に遮断し又は低消費電力待機制御する電源制御回路とを備えたことを特徴とする半導体記憶装置。
【請求項２】
請求項１に記載の半導体記憶装置において、
所定の制御信号に応答して、前記メモリセルアレイの列に存在するメモリセルのデータが互いに同一であるかを検出する一致検出回路と、
前記一致検出回路で検出された一致データを記憶する代表値記憶回路とを更に備え、
前記電源制御回路は前記一致検出回路によって制御されることを特徴とする半導体記憶装置。
【請求項３】
請求項２に記載の半導体記憶装置において、
前記メモリセルアレイは複数のブロックに分割されており、
前記電源制御回路及び前記代表値記憶回路は前記ブロックごとに設けられていることを特徴とする半導体記憶装置。
【請求項４】
請求項２に記載の半導体記憶装置において、
前記電源制御回路及び前記代表値記憶回路のうちの少なくとも一方は、前記メモリセルアレイの複数の列で共有されていることを特徴とする半導体記憶装置。
【請求項５】
請求項２に記載の半導体記憶装置において、
前記電源制御回路は、前記メモリセルアレイの列に存在するメモリセルの電源と、列の周辺回路の電源とを制御することを特徴とする半導体記憶装置。
【請求項６】
請求項２に記載の半導体記憶装置において、
前記所定の制御信号に応答して、前記メモリセルアレイの複数の読み出しワード線を同時に選択する回路を更に備えたことを特徴とする半導体記憶装置。
【請求項７】
請求項６に記載の半導体記憶装置において、
前記複数の読み出しワード線は特殊情報記憶メモリセルによってマスクされることを特徴とする半導体記憶装置。
【請求項８】
請求項２に記載の半導体記憶装置において、
前記一致検出回路はキャッシュのウェイの特殊情報を記憶したメモリセル列に存在し、
前記一致検出回路の出力により、対応するウェイのタグマクロ及びデータマクロの電源を制御することを特徴とする半導体記憶装置。
【請求項９】
請求項８に記載の半導体記憶装置において、
前記特殊情報を記憶したメモリセル列はキャッシュメモリのバリッドビットを記憶したメモリセル列であることを特徴とする半導体記憶装置。
【請求項１０】
請求項１に記載の半導体記憶装置において、
前記電源制御回路は、前記メモリセルアレイの列に含まれるメモリセルのデータが有効であることを記憶する有効情報記憶回路によって制御されることを特徴とする半導体記憶装置。
【請求項１１】
請求項１に記載の半導体記憶装置において、
前記メモリセルアレイの列への書き込みが行われたことを検出する書き込み検出回路を更に備え、
前記電源制御回路は前記書き込み検出回路によって制御されることを特徴とする半導体記憶装置。
【請求項１２】
請求項１に記載の半導体記憶装置において、
書き込みデータが前記代表値記憶回路の記憶データと重複しているかを判定する書き込みデータ判定回路を更に備え、
前記電源制御回路は前記書き込みデータ判定回路によって制御されることを特徴とする半導体記憶装置。
【請求項１３】
請求項１２に記載の半導体記憶装置において、
前記書き込みデータ判定回路はキャッシュメモリの特殊情報を記憶したメモリセルアレイの列に存在し、
前記書き込みデータ判定回路によって、対応するキャッシュメモリのタグマクロ及びデータマクロの電源が制御されることを特徴とする半導体記憶装置。
【請求項１４】
請求項１に記載の半導体記憶装置において、
前記所定の制御信号は、前記半導体記憶装置の非動作サイクルに活性化することを特徴とする半導体記憶装置。
【請求項１５】
請求項２に記載の半導体記憶装置において、
前記一致検出回路は、読み出し回路を利用することを特徴とする半導体記憶装置。
【請求項１６】
複数のメモリセルがマトリックス状に接続されてなるメモリセルアレイと、
前記メモリセルの行ごとに分離された電源供給線を、行ごとに独立に遮断し又は低消費電力待機制御する電源制御回路とを備えたことを特徴とする半導体記憶装置。
【請求項１７】
請求項１６に記載の半導体記憶装置において、
前記電源制御回路は、前記メモリセルアレイの行ごとに設けられた特殊情報記憶回路によって制御されることを特徴とする半導体記憶装置。
【請求項１８】
請求項１７に記載の半導体記憶装置において、
前記特殊情報記憶回路はキャッシュのバリッドビットであることを特徴とする半導体記憶装置。
【請求項１９】
請求項１６に記載の半導体記憶装置において、
前記メモリセルアレイの行への書き込みが行われたかを検出する行ごとの書き込み検出回路を更に備え、
前記電源制御回路は前記書き込み検出回路によって制御されることを特徴とする半導体記憶装置。
【請求項２０】
請求項１６に記載の半導体記憶装置において、
前記電源制御回路は、前記メモリセルアレイの行に存在するメモリセルの電源と、行の周辺回路の電源とを制御することを特徴とする半導体記憶装置。
【請求項２１】
第１の記憶回路と、
第２の記憶回路と、
前記第１の記憶回路に接続された電源制御回路とを備え、
前記電源制御回路は、前記第２の記憶回路の記憶データによって前記第１の記憶回路の電源を遮断し又は低消費電力待機制御することを特徴とする半導体記憶装置。
【請求項２２】
請求項２１記載の半導体記憶装置において、
前記第２の記憶回路は、前記第１の記憶回路に対するマスク情報を記憶していることを特徴とする半導体記憶装置。
【請求項２３】
請求項２１記載の半導体記憶装置において、
前記半導体記憶装置は、仮想アドレスを物理アドレスに変換する機能を有し、
前記第１の記憶回路は物理アドレスを記憶する物理アドレスセルに含まれ、前記第２の記憶回路はページサイズを記憶するページサイズセルに含まれることを特徴とする半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に関し、特にメモリセルの電源制御に関するものである。
【背景技術】
【０００２】
半導体製造プロセスの微細化により、リーク電流の増大が深刻化している。加えて、高速化要望に対応するためのトランジスタの閾値電圧の低減、オンチップメモリの大容量化により、リーク電流の問題が更に深刻化する傾向にある。【０００３】
リーク電流は、ゲートリーク電流、接合リーク電流、サブスレッショルド電流等に大別される。ゲートリーク電流とはＭＯＳ（metal-oxide-semiconductor）トランジスタのゲート電極からゲート絶縁膜を介してシリコン基板に流れる電流であり、接合リーク電流とはドレイン電極から基板に流れる電流であり、サブスレッショルド電流とはＭＯＳトランジスタのオフ時にドレイン電極とソース電極との間に流れる電流である。【０００４】
従来のＳＲＡＭ（static random access memory）にてリーク電流を抑制する技術として、待機モードにおいてメモリセルの基板にバックバイアス電圧を印加する技術や、メモリセルに供給するＶＳＳ電源を昇圧してメモリセルトランジスタの閾値電圧を上げる技術等が知られている（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｍ. Ｙａｍａｏｋａ ｅｔ ａｌ., "Ａ ３００ＭＨｚ ２５μＡ/Ｍｂ Ｌｅａｋａｇｅ Ｏｎ-Ｃｈｉｐ ＳＲＡＭ Ｍｏｄｕｌｅ Ｆｅａｔｕｒｉｎｇ Ｐｒｏｃｅｓｓ-Ｖａｒｉａｔｉｏｎ Ｉｍｍｕｎｉｔｙ ａｎｄ Ｌｏｗ-Ｌｅａｋａｇｅ-Ａｃｔｉｖｅ Ｍｏｄｅ ｆｏｒ Ｍｏｂｉｌｅ-Ｐｈｏｎｅ Ａｐｐｌｉｃａｔｉｏｎ Ｐｒｏｃｅｓｓｏｒ," ＩＳＳＣＣ Ｄｉｇ. Ｔｅｃｈ. Ｐａｐｅｒｓ, ｐａｐｅｒ ２７.２, Ｆｅｂ. ２００４
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記従来技術では、ＶＳＳ電源供給線を昇圧しすぎるとメモリセルの記憶データが破壊されてしまう。そのため、一般的なシステムでは、ＶＳＳ電源供給線はメモリセルのデータが壊れないレベルまでしか昇圧できず、遮断できるリーク電流には限界がある。【０００７】
本発明の目的は、メモリセルアレイにおける情報保持が不要なメモリセルの電源を遮断し又は低消費電力待機制御することにより、当該メモリセルアレイにおけるリーク電流を抑制することにある。
【課題を解決するための手段】
【０００８】
本発明によれば、メモリセルアレイにおいて、データを保持する必要があるメモリセルと、保持する必要がないメモリセルとを分類し、データを保持する必要のないメモリセルの電源を待機時及び動作時において遮断し又はＨＩＧＨレベルの電源を従来よりも低いレベルに設定したり、ＬＯＷレベルの電源を従来よりも高いレベルに設定したりすることにより、大幅なリーク電流抑制を実現する。【０００９】
また、本発明では、メモリセルアレイを構成する行又は列という機能レベル単位で電源制御を実施することにより、粒度の細かい低電力制御が可能になる。つまり、本発明の構成では、従来よりも細かい単位での電源制御の実施により、非常に高いリーク電流の削減効果が得られる。しかも、互いに分離された各電源に対して、必要なデータをメモリセルが保持しているか否かを検出する手段と、その検出結果に従って動作する電源制御回路とが設けられる。また、本発明の構成例は、少ない面積オーバーヘッド、タイミングオーバーヘッドで実現できるという点で実用性が高い。【００１０】
データを保持する必要のないメモリセルとして、記憶データが重複しているメモリセル、記憶データが無効なメモリセル、書き込みが行われていない列又は行のメモリセル、システム上使用していない列のメモリセル等が挙げられる。【００１１】
プログラムによって使用するキャッシュメモリのウェイに偏りがある場合や、データアクセスに偏りのあるメモリや、レジスタファイル等のように記憶されるデータに偏りがあるメモリでは、データが重複していたり、使用していないケースが多く、本発明により大きなリーク電流削減効果が得られる。【００１２】
また、キャッシュメモリでウェイのデータが必要かどうかの判定はバリッドビットを利用することで判断できるため、複雑な制御ユニットを設けなくても高い効果が得られる。【００１３】
以下、本願において開示される発明のうち、代表的なものの概要を簡単に説明する。【００１４】
本発明の代表的な１つの形態は、複数のメモリセルがマトリックス状に接続されたメモリセルアレイにおいて、列ごとに電源を分離し、更に列ごとに電源の制御を行う電源制御回路を設ける。更に、列に存在するメモリセルの記憶データが一致していることを検出する一致検出回路と、当該一致検出回路で検出されたデータを列の読み出し回路に出力する代表値記憶回路とを、各列ごとに設ける。システムの待機モード移行時や、メモリへのアクセスが無いサイクルにおいて、列に存在するメモリセルに重複データが記憶されているかどうかを一致検出回路により検出する。列に存在するメモリセルの記憶データが全て同じ場合、当該列のメモリセルの電源を切断し、代わりに代表値記憶回路で、列のメモリセルに記憶されていたデータを記憶する。列へのアクセスがあった場合は、代表値記憶回路から出力する。更に、メモリセルの電源だけでなく、列の周辺回路の電源も切断し、又はＨＩＧＨレベルの電源を従来よりも低いレベルに設定したり、ＬＯＷレベルの電源を従来よりも高いレベルに設定したりすることで更に大きなリーク電流削減効果が得られる。読み出し回路の一部を利用して一致判定を行う場合、同一の出力回路を使って出力するメモリセルどうしを一致判定の対象及び電源制御の対象とすることで、面積的に有効な構成を実現することができる。【００１５】
本発明は、大容量メモリセルアレイや、高速化のために閾値電圧の低いトランジスタを使ったメモリセルアレイや、待機時間が長いメモリセルアレイにおいて特に大きな効果が期待できる。更に、記憶されるデータの大半がＬＯＷデータであるレジスタファイル等、記憶データに偏りのあるメモリセルにおいても大きな効果が期待できる。【００１６】
更に、列の中で更に細かくバンク分けして、それぞれのバンクごとに一致判定を行うことで、より粒度の細かい電源制御が可能となるため、更に効果的にメモリセルのリーク電流削減が可能となる。【００１７】
或いは、面積削減のため、複数の列でまとめて一致判定をして電源制御をする方法も可能である。更に、列の代表値を記憶する回路は、出力データを保持する目的で設けられているラッチや、ラッチ型センスアンプを利用することで、回路部品点数のオーバーヘッドを抑えることができる。【００１８】
次に、本発明の代表的な第２の形態を説明する。最近、高速化と、読み出し時にＳＲＡＭのデータが破壊されることを防止することとを目的として、メモリセルのデータ保持ノードがゲートにつながったトランジスタと、読み出しワード線がゲートにつながったトランジスタとがデータ線とグランドとの間に直列接続された構成の読み出し回路を持つＳＲＡＭの利用が増加傾向にある。この構成のメモリセルの読み出しでは、メモリセルの一方の記憶ノードがＨＩＧＨの場合にはワード線が選択されたのと同時に予めＨＩＧＨレベルにプリチャージされたデータ線の電荷を引き抜くこととなり、記憶ノードがＬＯＷの場合にはデータ線が予めプリチャージされたＨＩＧＨレベルの状態に保たれる。したがって、このようなメモリセルからなるメモリセルアレイでは、複数の読み出しワード線を同時に起動してもメモリセルのデータは破壊されない。複数の読み出しワード線が同時に活性化されたとき、同一データ線に接続されたメモリセルのうち少なくとも１つのメモリセルのデータ保持ノードがＨＩＧＨの場合、読み出しデータ線はディスチャージされる。逆に全てのメモリセルの記憶データが全てＬＯＷの場合のみ、ビット線はＨＩＧＨレベルの状態に保たれる。これにより、同一データ線に接続されたメモリセルのデータが全てＬＯＷかどうかの判定が可能となる。以上のしくみを利用することで、データ一致判定を１サイクルで行うことが可能となり、データ判定のための時間、電力を抑えることができる。また、データ一致判定を行うための多重選択デコーダは、従来のデコーダにわずかに回路を追加するだけで実現でき、一致検出回路は読み出し回路を利用することにより、回路部品点数のオーバーヘッドを抑えることができる。【００１９】
また、複数の読み出しワード線を同時に選択して、同一データ線に接続されたメモリセルのデータが全て同じであるかどうかの判定をする際に、もともと無効なデータを記憶しているメモリセル行に関しては一致判定対象から除外することが可能である。メモリセルに記憶されているデータが無効であることを判断するには、例えば、そのワードの情報が無効であることを記憶したバリッドメモリセルの記憶情報を利用する。すなわち、無効なデータを記憶しているワードのメモリセルのワード線は起動しない状態で一致判定を行えばよい。行のデータが有効であることを記憶する代表的な例としてキャッシュメモリのバリッドビットメモリセルが挙げられる。【００２０】
次に、本発明の代表的な第３の形態を説明する。バリッドビット列に含まれる全てのメモリセルの記憶データが全てＬＯＷであることが検出されれば、そのバリッドビットに対応するキャッシュメモリのウェイのタグマクロ及びデータマクロのデータは全て無効であることが分かる。これにより、前記一致検出回路をキャッシュメモリのバリッドメモリに設けて、当該一致検出回路の出力によって、対応するウェイのタグマクロ及びデータマクロの電源を制御することにより、ウェイを使用していない場合や、有効なデータが入っていないウェイにおけるリーク電流を効果的に削減できる。この技術では、電源制御のための特別な電源制御ユニットが不要なため、信号配線の煩雑度、面積の点で優位である。【００２１】
更に、１ウェイのバリッドビットを複数のブロックに分けて同様の制御をすることで、更に粒度の細かい電源制御が可能となり、より高いリーク電流削減効果が得られる。【００２２】
また、その他の特殊情報を記憶したメモリセルにも応用することができる。例えば、前記特殊情報を記憶したメモリセルは、ＬＲＵ（least recently used）アレイ等のアクセス履歴を記憶したメモリセルを利用することが可能である。その他の例として、ワードごとに設けられた特殊情報記憶メモリセルは、ＢＩＳＴ（built-in self test）で不良が含まれたことが検出されたワードであることを記憶するメモリセルにすることでも効果が得られる。【００２３】
本発明の代表的な第４の形態は、上記の代表例が、メモリセルの列ごとの電源をデータの一致検出回路によって制御するのに対し、そのビットが有効であるという情報を記憶した有効情報記憶回路によって制御されることを特徴とする。これによりシステム上使用していない列の電源を例えばオフすることができ、待機時であるか、アクティブ時であるかに関わらずメモリセルにおけるリーク電流を抑制することができる。有効情報記憶回路は、メモリセルアレイ内に存在する１ラインのメモリセル行を利用することで、小面積化を図ることができる。【００２４】
次に、本発明の代表的な第５の形態を説明する。システムが起動してから、あるビットに対する書き込みが行われなければ、そのビットに記憶されているメモリセルのデータは無効であるので、データを保持しておく必要がない。そこで、例えば、各ビットごとに書き込みが行われたことを検出する書き込み検出回路を設け、その書き込み検出回路で書き込みが検出されたとき、初めてそのビットのメモリセルと、そのビットの周辺回路との電源を投入することで、無駄なリーク電流を削減することが可能となる。【００２５】
更に、書き込みが行われる場合でも、読み出し部に設けられた代表値記憶回路の記憶データと同じデータの場合は、そのビットに対する読み出しアクセスがあったときは代表値記憶回路から読み出せばよいので、そのビットのメモリセルの電源を投入する必要がない。代表値記憶回路の記憶データと異なるデータが書き込まれるときに、その列のメモリセルをリセットし、そして異なるデータを所望のメモリセルに書き込むことで、システム上正常な動作を行うことができる。このような構成にすることで、より無駄なリーク電流の削減ができる。【００２６】
更に、キャッシュメモリのバリッドビットを記憶するためのメモリセルアレイに書き込みデータ判定回路を設け、バリッドビットにＨＩＧＨデータが書き込まれなければ、対応するウェイのタグマクロ及びデータマクロ全体の電源を投入しないように制御することで、有効な情報が含まれないウェイで流れるリーク電流を削減することができる。【００２７】
更に、１ウェイのバリッドビットを複数のグループに分けて同様の制御をすることで、更に粒度の細かい電源制御が可能となり、より高いリーク電流削減効果が得られる。【００２８】
以上の説明では有効情報記憶回路としてバリッドビットを例に挙げたが、その他の情報を記憶したメモリセルへの応用も可能である。【００２９】
次に、本発明の代表的な第６の形態を説明する。キャッシュメモリのタグマクロ及びデータマクロにおけるメモリセルアレイの電源を行単位で分離し、行ごとに電源制御を行う電源制御回路を設ける。キャッシュメモリのバリッドビットで無効であるという情報が記憶されている場合、タグマクロ及びデータマクロの対応する行のデータは無効なデータである。そのため、バリッドビットに記憶されている記憶データによって、対応する行のタグマクロ及びデータマクロの電源を制御することにより、無駄なリーク電流を削減することができる。【００３０】
次に、本発明の代表的な第７の形態を説明する。キャッシュメモリのタグマクロ及びデータマクロにおけるメモリセルアレイの電源を行単位で分離し、行ごとに電源制御を行う電源制御回路を設ける。システムが起動してから、書き込みが行われていないメモリセルアレイのある行に存在するメモリセルの記憶データは無効である。そのため、行ごとに書き込み検出回路を設けて、書き込みが検出されるまで、例えば行の電源を投入しないように構成することで、無駄なリーク電流の削減が可能となる。【００３１】
最後に、本発明の代表的な第８の形態を説明する。互いに接続された第１及び第２の記憶回路を備えた装置において、第１の記憶回路がデータを保持する必要がないことを第２の記憶回路の記憶データが示す場合には、当該第２の記憶回路の記憶データによって第１の記憶回路の電源を遮断し又は低消費電力待機制御する。これにより、第２の記憶回路における無駄なリーク電流を削減することができる。
【発明の効果】
【００３２】
本発明によれば、メモリセルアレイ内のデータ保持が不要なメモリセルの電源を遮断し又は超低電力待機制御することが可能となり、待機電力の大幅な削減、更に動作時のリーク電流の削減が可能となる。これにより一定のシステムの電力仕様の許容範囲内において、高速化のためにトランジスタの閾値電圧を下げることや、高性能化のためにメモリ容量を増大させることが可能となる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施の形態１に係る半導体記憶装置の概要を示す回路図である。
【図２】図１中のメモリセルの詳細構成例を示す回路図である。
【図３】図１の半導体記憶装置の第１の変形例を示す回路図である。
【図４】図１の半導体記憶装置の第２の変形例を示す回路図である。
【図５】図１の半導体記憶装置の第３の変形例を示す回路図である。
【図６】図１の半導体記憶装置の第４の変形例を示す回路図である。
【図７】図１の半導体記憶装置の第５の変形例を示す回路図である。
【図８】本発明の実施の形態２に係る半導体記憶装置の概要を示す回路図である。
【図９】図８の半導体記憶装置の応用例を示す回路図である。
【図１０】本発明の実施の形態３に係る半導体記憶装置の概要を示す回路図である。
【図１１】本発明の実施の形態４に係る半導体記憶装置の概要を示す回路図である。
【図１２】図１１の半導体記憶装置の変形例を示す回路図である。
【図１３】本発明の実施の形態５に係る半導体記憶装置の概要を示す回路図である。
【図１４】図１３の半導体記憶装置の応用例を示す回路図である。
【図１５】本発明の実施の形態６に係る半導体記憶装置の概要を示す回路図である。
【図１６】図１５の半導体記憶装置の変形例を示す回路図である。
【図１７】本発明の実施の形態７に係る半導体記憶装置の概要を示す回路図である。
【図１８】本発明の実施の形態８に係る半導体記憶装置の概要を示す回路図である。
【図１９】図１８の半導体記憶装置の第１の変形例を示す回路図である。
【図２０】図１８の半導体記憶装置の第２の変形例を示す回路図である。
【図２１】図１８の半導体記憶装置の第３の変形例を示す回路図である。
【図２２】図１８の半導体記憶装置の第４の変形例を示す回路図である。
【発明を実施するための形態】
【００３４】
以下、本発明を限定のためではなく、例示説明のための添付図面に示す実施形態に基づき詳細に説明する。
【００３５】
《実施の形態１》
図１及び図２に、本発明の実施の形態１における回路図を示す。図１の半導体記憶装置は、複数のメモリセル３００がマトリックス状に配置されてなるメモリセルアレイ１０２を有する。ただし、図１には１列分のメモリセル３００のみが描かれている。ｎを正の整数とするとき、１５１はｎ＋１本のワード線ｗｌ（０）〜ｗｌ（ｎ）、１５２は１対のビット線、１５４はメモリセル電源供給線である。ｎ＋１本のワード線１５１のうちのいずれかがデコーダ３０５により選択されるようになっている。３０８は待機モード制御回路、３０６は読み出し制御回路、３０７は書き込み制御回路、３０１は書き込み回路、３０２は読み出し回路、３５１は入力データ線ＤＩ、３５２は出力データ線ＤＯである。
【００３６】
更に、ビットごとにメモリセル電源供給線１５４が分離されており、ビットごとに電源制御回路１０３、一致検出回路３０４、代表値記憶回路３０３が設けられている。電源供給線１５４は電源制御回路１０３の出力に接続され、電源制御回路１０３には一致検出回路３０４の出力が入力されている。一致検出回路３０４は、オール０ラッチ３１１と、オール１ラッチ３１２とを有する。
【００３７】
図１の回路の動作について説明する。待機モードにおける電源制御は、待機モード制御信号１５３がアサートされるタイミングで実施される。待機モード制御信号１５３がアサートされると、待機モード制御回路３０８からリセット信号３５４が発行され、オール０ラッチ３１１と、オール１ラッチ３１２とがリセットされる。すなわち、オール０ラッチ３１１は記憶ノードＡがＬＯＷになるようにＶＳＳ電源に接続されたトランジスタＮＲ０によって、オール１ラッチ３１２は記憶ノードＡがＨＩＧＨになるようにトランジスタＮＲ１によってそれぞれリセットされる。列に存在する全てのメモリセル３００に記憶されているデータの一致を検出するため、全てのワード線１５１を順次選択して読み出す必要がある。そのため、待機モード制御信号１５３が入力されると待機モード制御回路３０８においてアドレスのカウントアップが行われ、デコーダ３０５にデコーダカウントアップ・ダウン信号３５６が与えられる。この結果、ワード線１５１が順次選択されて、ビット線１５２に順次読み出しデータが出力される。このとき、待機モード制御回路３０８から内部待機モード制御信号３５５が読み出し制御回路３０６に与えられ、読み出し回路３０２によりビット線１５２のデータ読み出しが制御される。
【００３８】
列に存在するメモリセル３００から順次データが読み出され、データ線ＮＤＯにデータが伝播すると、そのときのデータ線ＮＤＯの状態に応じて、トランジスタＮ０，Ｐ０によってそれぞれオール０ラッチ３１１とオール１ラッチ３１２とが書き換えられる。メモリセル３００の記憶データがＨＩＧＨであれば、データ線ＮＤＯはＬＯＷになる。メモリセル３００の記憶データがＬＯＷであれば、データ線ＮＤＯはＨＩＧＨになる。一連の読み出しにおいて、データ線ＮＤＯが一度でもＬＯＷになることがあれば、トランジスタＰ０によってオール１ラッチ３１２の記憶ノードＢがＨＩＧＨに、記憶ノードＡがＬＯＷになる。逆にデータ線ＮＤＯが一度でもＨＩＧＨになることがあれば、トランジスタＮ０によってオール０ラッチ３１１の記憶ノードＢがＬＯＷに、記憶ノードＡがＨＩＧＨになる。以下、一致判定のための一連の読み出しサイクルにおけるデータ線ＮＤＯの変化と、オール０ラッチ３１１、オール１ラッチ３１２の変化をまとめると、
（１）全データがＬＯＷの場合、オール０ラッチ３１１、オール１ラッチ３１２共に記憶ノードＡがＨＩＧＨになる：
（２）全データがＨＩＧＨの場合、オール０ラッチ３１１、オール１ラッチ３１２共に記憶ノードＡがＬＯＷになる：
（３）ＬＯＷ、ＨＩＧＨのデータが混在している場合、オール０ラッチ３１１の記憶ノードＡがＨＩＧＨになり、オール１ラッチ３１２の記憶ノードＡがＬＯＷになる：
という具合である。
【００３９】
（１）と（２）のケースで電源遮断ができ、代表値記憶回路３０３でそのビットの記憶データの代表値を記憶する。（３）の場合は電源をオフしない。電源遮断のタイミングは、全ワードからの読み出しが完了して、一致検出回路３０４での判定終了後、待機モード制御回路３０８でフラグ判定イネーブル信号３５３がＬＯＷからＨＩＧＨに制御されることで、その時点でのフラグ信号ｆｌａｇ＿ｖｃｎｔの状態に応じて、フラグ判定結果信号３５７がＬＯＷになるかＨＩＧＨになるかが決定される。これにより、電源制御回路１０３を構成するＶＤＤ電源に接続されたトランジスタＰＶ０が制御され、メモリセル電源供給線１５４のオン、オフが制御される。
【００４０】
待機モードが終了すると、待機モード制御信号１５３がネゲートされ、電源遮断しているビットに関しては、代表値記憶回路３０３の記憶データをビット列のメモリセル３００に書き戻す（リフィルする）必要がある。まず、待機モード制御回路３０８によってアドレスがインクリメントされ、同時に書き込み制御回路３０７が制御されて、書き込み回路３０１が動作する。電源遮断が実施されているビットは、書き込み制御回路３０７がイネーブルとなり、代表値記憶回路３０３に記憶されているデータが書き込まれる。電源制御が実施されていないビットにおいては、書き込み回路３０１がネゲートされるので、メモリセル３００に対する書き込みは実施されない。
【００４１】
メモリセル３００へのリフィル方法やワード線１５１を順次切り替える方法は、様々な回路構成が可能であるが、メモリセルの記憶情報の重複を判定して、該当メモリセルの電源のオン、オフを制御するという思想において、その他の構成に関しても本発明は包括されるべきものである。
【００４２】
また、図１の例ではＶＤＤ電源を制御する技術を示したが、ＶＳＳ電源も同様の思想で制御することが可能である。
【００４３】
また、図１の例では、プリチャージ回路（不図示）によって制御される２本のビット線１５２を読み出しに使用しているが、プリチャージ回路によって制御される１本のビット線を利用して読み出す回路においては、メモリセル３００からデータを読み出す前に一旦データ線ＮＤＯをリセットする。このような場合は、リセット期間中にトランジスタＮ０、Ｐ０がオンしないようにマスクする制御が必要となる。
【００４４】
図１の技術では、電源遮断から復帰する際に、代表値記憶回路３０３のデータを書き戻すのに、ワード線１５１の本数分のサイクルが必要になる。これを一括で実施する方法として、メモリセル３００にリセットトランジスタを設ける方法が考えられるが、図１のケースでは、メモリセル３００のデータをＬＯＷ又はＨＩＧＨにするために２つのトランジスタを追加する必要があり、メモリセル３００の面積が増大してしまう。
【００４５】
図３に、この問題を回避する１つの回路例を示す。図３において、３０９は供給電源調整回路である。電源制御回路１０３が２個のトランジスタＰＶ０，ＰＶ１で構成され、供給電源調整回路３０９から、一方のトランジスタＰＶ０に電源制御信号ｖｃｎｔ＿０が、他方のトランジスタＰＶ１に電源制御信号ｖｃｎｔ＿１がそれぞれ与えられる。
【００４６】
図３の回路は、図１の回路とリフィル方法が異なるだけで、それ以外の部分は同様の動作をする。図３の回路のリフィルの方法を説明する。メモリセル３００の記憶部分を構成する２つのインバータのうちの一方のインバータに供給されるＶＤＤ電源と、もう一方のインバータに供給されるＶＤＤ電源とを分離する。そして、列方向に隣接するメモリセル３００の対応する電源同士を接続する。待機モード終了後に、メモリセル３００にリフィルする際、２つのＶＤＤ電源の投入タイミングを供給電源調整回路３０９によりずらすことで、列のメモリセル３００をどちらか一方に一括してリセットすることが可能となる。電源投入の順番は、代表値記憶回路３０３の記憶データに応じて決定する。
【００４７】
ＶＳＳ電源も同様に制御することが可能であるが、一般にメモリセルはＶＳＳ電源を隣接するメモリセル同士で共通化しているケースが多く、ＶＳＳ電源によるリフィルは適していない。
【００４８】
なお、図３中の列に存在するメモリセル３００に記憶されているデータが全てＬＯＷか、又は全てＨＩＧＨかのいずれか一方だけでよい場合は、一致検出回路３０４や、リフィルのための回路３０３，３０９が単純化できる。
【００４９】
図４に、具体的な回路例を示す。図４において、４０１は読み出し／書き込みポート分離型のメモリセル、４０２は一致検出回路兼出力データ保持回路、４５１は書き込みワード線ｗｗｌ（０）〜ｗｗｌ（１）、４５２は読み出しワード線ｒｗｌ（０）〜ｒｗｌ（１）、４５４は読み出しデータ線、４５５は書き込みデータ線である。メモリセル電源供給線１５４は、２本の電源線ｖｄｄ０，ｖｄｄ１からなる。読み出し回路３０２は読み出しデータ線４５４のプリチャージ機構を有し、読み出し制御回路３０６からプリチャージ制御信号ｐｃ＿ｉｏが供給されるようになっている。
【００５０】
図４の回路によれば、待機モード制御信号１５３がアサートされると、リセット信号３５４によってデータ線ＮＤＯをＬＯＷにリセットし、出力データＤＯをＨＩＧＨにリセットする。次に、全ての読み出しワード線４５２を順次選択し、全てのメモリセル４０１からデータ読み出しを行う。メモリセル４０１の記憶ノードＤＡＴＡに全てＨＩＧＨが記憶されている場合は、読み出しデータ線４５４がＨＩＧＨを維持する結果、データ線ＮＤＯはＬＯＷ、出力データＤＯはＨＩＧＨの状態に保たれる。読み出す過程で、いずれかのメモリセル４０１の記憶ノードＤＡＴＡにＬＯＷが含まれている場合は、読み出しデータ線４５４がＬＯＷにディスチャージされる結果、データ線ＮＤＯがＨＩＧＨになり、出力データＤＯがＬＯＷになる。全てのメモリセル４０１からの読み出しが終了すると、フラグ判定イネーブル信号３５３がＬＯＷからＨＩＧＨに遷移する。全てのメモリセル４０１に記憶されているデータがＨＩＧＨである場合は、データ線ＮＤＯがＬＯＷにリセットされたままであるので、フラグ判定イネーブル信号３５３がＨＩＧＨに遷移したタイミングでフラグ判定結果信号３５７がＨＩＧＨに変化する結果、電源制御回路１０３のトランジスタＰＶ０，ＰＶ１がオフし、電源が遮断される。
【００５１】
待機モードが終了すると、待機モード制御信号１５３がＬＯＷになり、フラグ判定イネーブル信号３５３がＨＩＧＨからＬＯＷに変化する。このとき、一方の電源制御信号ｖｃｎｔ＿１が他方の電源制御信号ｖｃｎｔ＿０より遅れてＨＩＧＨからＬＯＷに変化することで、メモリセル４０１のＤＡＴＡ側ノードがＨＩＧＨにリセットされる。
【００５２】
図４中のメモリセル４０１は、記憶ノードがゲートに接続されたトランジスタと、ゲートに読み出しワード線４５２が接続されたトランジスタとが、グランドと読み出しデータ線４５４との間に直列に接続された読み出し回路を持つ。図２のメモリセル３００の構成でも図４と同様に構成することができるが、電源遮断効果は大幅に減少するため有効ではない。
【００５３】
さて、上述した図１、図３、図４の例において、同一ビット内でバンク分割して、バンク内のメモリセルに関して一致判定を行って節電制御をすることで、より効果的に電源の遮断が可能となる。
【００５４】
図５に、回路例を示す。図５において、５０１はバンク読み出し・書き込み制御回路、５５１はバンク制御信号、５５２はグローバル入出力データ線である。図５の構成では、各バンクごとに一致検出回路兼出力データ保持回路４０２及び電源制御回路１０３を設ける。各バンクのローカルな読み出しデータ線４５４とグローバル入出力データ線５５２との接続をオフにした状態で、複数のバンクにて同時にデータ一致判定を実行することができる。
【００５５】
図６に示すように、複数のビットで一致検出回路３０４及び電源制御回路１０３を共用することも可能である。この構成にするメリットは小面積化が可能であるという点である。なお、図６中のＮＤ０及びＮＤ１は代表値記憶回路３０３中のトランジスタ、ＤＩ０及びＤＩ１は入力データ、ＤＯ０及びＤＯ１は出力データである。
【００５６】
図６の回路では、図４の回路と同様に、待機モード制御信号１５３がアクティブになると、一致検出回路３０４のノードＮＯＤＥ＿ＡをトランジスタＮＤでＬＯＷにリセットする。次に、読み出しワード線４５２を順次起動して複数のビットで同時にメモリセル４０１からデータ読み出しを行う。このとき、いずれかのビットのデータ線ＮＤＯ０又はＮＤＯ１がＨＩＧＨになると、一致検出回路３０４にてトランジスタＰ０又はＰ１によりノードＮＯＤＥ＿ＡがＬＯＷからＨＩＧＨに変化する。その後、フラグ判定イネーブル信号３５３がＬＯＷからＨＩＧＨに変化したとき、フラグ信号ｆｌａｇ＿ｖｃｎｔがＬＯＷなのでフラグ判定結果信号３５７はＬＯＷのままで、電源制御回路１０３のトランジスタＰＶ０，ＰＶ１はオンしたままになるため、メモリセル４０１の電源は遮断されない。一方、いずれのビットからも一度もデータ線ＮＤＯ０，ＮＤＯ１がＨＩＧＨになるデータが読み出されないと、フラグ判定イネーブル信号３５３がＬＯＷからＨＩＧＨに変化したとき、フラグ信号ｆｌａｇ＿ｖｃｎｔはＨＩＧＨのままで、フラグ判定結果信号３５７はＬＯＷからＨＩＧＨになり、メモリセル４０１の電源が遮断される。リフィルの手順については、図４と同様である。
【００５７】
図７に、同一ビット内のカラムで一致検出回路３０４及び電源制御回路１０３を共用する例を示す。図７において、６０１はカラム制御回路、６０２はカラム選択回路である。この場合、代表値記憶回路３０３も共用できるため、より小面積化が可能となる。動作原理は図６と同様である。
【００５８】
《実施の形態２》
図８に、本発明の実施の形態２の回路図を示す。図４から図７までの例との違いは、読み出しワード線４５２を多重選択する機構が備わっている点である。図８に示すように、通常のデコーダ３０５の出力と、待機モード制御回路３０８から出力される多重選択イネーブル信号７５１との論理和をとるＯＲ回路７５２により、読み出しワード線４５２が駆動される。この結果、待機モード制御信号１５３がアクティブになると、多重選択イネーブル信号７５１がＬＯＷからＨＩＧＨに遷移し、全ての読み出しワード線４５２がＬＯＷからＨＩＧＨに変化する。図８に示すタイプのメモリセル４０１では、読み出しワード線４５２が多重選択されても、メモリセル４０１内のデータは破壊されない。同一の読み出しデータ線４５４に接続された全てのメモリセル４０１のノードＮＯＤＥ＿ＢにＬＯＷが入っている場合は、読み出しデータ線４５４は予めＶＤＤにプリチャージされていた状態を保つ。いずれかのメモリセル４０１のノードＮＯＤＥ＿ＢがＨＩＧＨになっている場合は、当該読み出しデータ線４５４はＶＳＳにディスチャージされる。このようなしくみで、同一の読み出しデータ線４５４上のいずれかのメモリセル４０１に記憶されているデータがＨＩＧＨであるかどうかを判定することができる。判定後の動作については、図４に示す回路と同様である。メモリセル４０１のデータが破壊されないという点では、ＲＯＭ（read only memory）等でも応用が可能である。図８の構成のメリットは、データ一致判定を１サイクルで行うことができる点である。
【００５９】
図９に、図８の応用例を示す。図８では同一の出力データ線３５２に接続される全てのメモリセル４０１の読み出しワード線４５２を同時に起動したが、例えばキャッシュメモリでは、その中にデータが無効のメモリセル４０１が含まれている場合がある。したがって、図８の場合、一致判定の際に、無効の情報を記憶したメモリセル４０１のノードＮＯＤＥ＿ＢがＨＩＧＨになっていることが原因で、本来は電源遮断が可能であるにもかかわらず、電源遮断ができないケースが考えられる。そのようなケースに対応するため、図９ではメモリセルアレイ１０２のワードが無効かどうかを記憶したバリッドメモリセルアレイ８０１の記憶情報をもとに多重選択イネーブル信号７５１をマスクする構成にする。
【００６０】
具体的に説明すると、図９のバリッドメモリセルアレイ８０１において、７６１は書き込みワード線ｖｗｗｌ（０）〜ｖｗｗｌ（１）、７６２は読み出しワード線ｖｒｗｌ（０）〜ｖｒｗｌ（１）、８５１はバリッドフラグ線ｖｄ（０）〜ｖｄ（１）、ｗｂ＿ｖは書き込みデータ線、ｒｂ＿ｖは読み出しデータ線である。そして、バリッドフラグ線８５１の信号と多重選択イネーブル信号７５１との論理積をとるＡＮＤ回路７６３が設けられ、これらのＡＮＤ回路７６３の出力とデコーダ３０５の出力との論理和をとるＯＲ回路７６４により、メモリセルアレイ１０２の読み出しワード線４５２が多重選択されるようになっている。
【００６１】
《実施の形態３》
図１０に、本発明の実施の形態３の回路図を示す。図１０によれば、キャッシュメモリのバリッドビットを記憶したバリッドメモリセルアレイ８０１のデータ線ＮＤＯに一致検出回路兼出力データ保持回路４０２を設ける。待機モード制御信号１５３が起動するとデータ一致判定が行われる。このとき、バリッドビットを記憶した１列のメモリセル４０１のデータが全てＬＯＷであるという判定結果が出た場合、対応するウェイのタグマクロ及びデータマクロの記憶情報は不要であるということが示される。したがって、バリッドビットに設けられた一致検出回路兼出力データ保持回路４０２のフラグ判定結果信号３５７によって、バリッドメモリセルアレイ８０１のための電源制御回路１０３のトランジスタＰＶ０，ＰＶ１のオン、オフを制御するだけでなく、データ線ＤＯ＿ＴＡＧを持つタグマクロの電源や、データ線ＤＯ＿ＤＡＴＡを持つデータマクロの電源や、データ線ＤＯ＿ＬＲＵを持つＬＲＵアレイの電源をも制御することで、無駄なリーク電流を削減することができる。
【００６２】
図１０の場合の一致検出回路兼出力データ保持回路４０２は、メモリセル４０１のデータが全てＬＯＷであるかを判定する。したがって、複雑な制御ユニットを設ける必要がなく、システムを簡略化できる。なお、この場合もタグマクロ及びデータマクロだけでなく、該当するバリッドビットのデータ線や、周辺回路の電源も遮断することができる。
【００６３】
《実施の形態４》
図１１に、本発明の実施の形態４の回路図を示す。実施の形態１〜３との違いは、各ビットごとに設けられた有効情報記憶回路１００１により電源制御回路１０３が制御される点である。有効情報記憶回路１００１は、そのビットが有効であるかどうかの情報を記憶する回路であり、システムリセット信号１０５２と、バリッドフラグ入力信号１０５１とを受け取り、フラグ判定結果信号３５７を電源制御回路１０３へ出力する。これにより、システムの動作において不使用ビットの電源を随時遮断できるため、無駄なリーク電流の削減が可能となる。
【００６４】
図１２に示すように、各ビットの有効情報記憶回路１００１をメモリセルアレイ１０２の１ワードに割り当てれば、小面積化を図ることができる。この場合、データ記憶用のメモリセル４０１と有効情報記憶回路１００１とは、書き込みデータ線４５５を共用することが可能である。書き込みの際は、有効情報記憶回路１００１を構成するメモリセルの書き込みワード線ｗｗｌ＿ｒｅｓが起動することで、これと同時にビットの有効情報がセットされる。或いは、出力部に設けられた出力データ保持用のラッチを有効情報記憶回路１００１として用いても同様の効果が得られる。
【００６５】
《実施の形態５》
図１３に、本発明の実施の形態５の回路図を示す。図１３では、各ビットごとに設けられた書き込み検出回路１１０１の情報によりビット列の電源が制御される。システムが起動した後、あるビット列内のメモリセル４０１への書き込みが一度も実行されていない状態では、そのビット列のメモリセル４０１に記憶されているデータは無効である。よって、そのビット列の電源を遮断することで無駄なリーク電流の削減ができる。
【００６６】
図１３の構成では、システムが起動すると、システムリセット信号１０５２がＬＯＷからＨＩＧＨになり、トランジスタＮ０によって書き込み検出回路１１０１のノードＮＯＤＥ＿ＡがＬＯＷにリセットされる。これにより電源制御信号ｖｃｎｔがＨＩＧＨになり、メモリセル４０１の電源線ｖｄｄ０，ｖｄｄ１がフローティングになる。この間、ビット列のメモリセル４０１ではリーク電流がほとんど流れない。その後、カラム書き込みイネーブル信号１１５１及びバイト書き込みイネーブル信号１１５２が同時にアクティブになると、トランジスタＰ０によって書き込み検出回路１１０１のノードＮＯＤＥ＿ＡがＨＩＧＨになる。これにより、電源制御信号ｖｃｎｔがＬＯＷになり、電源線ｖｄｄ０，ｖｄｄ１がＶＤＤにドライブされる。
【００６７】
図１４に、図１３の応用例を示す。図１４において、１２０１は書き込みデータ判定回路であり、ＡＮＤ回路１２０２と、ＥＯＲ回路１２０３と、ＮＡＮＤ回路１２０４とで構成される。メモリセル４０１へのデータ書き込みが行われる場合でも、読み出し回路３０２に設けられた代表値記憶回路３０３の記憶データと同じデータが書き込まれる場合には、そのビットに対する読み出しアクセスがあったときは代表値記憶回路３０３からデータを読み出せばよいので、メモリセル４０１の電源を投入する必要がない。代表値記憶回路３０３の記憶データと異なるデータが書き込まれるときに、その列のメモリセル４０１をリセットし、そして異なるデータを所望のメモリセル４０１に書き込むことで、システム上正常な動作を行うことができる。このような構成にすることで、より無駄なリーク電流の削減ができる。
【００６８】
図１４では、図１３と同様にシステムが起動すると、システムリセット信号１０５２がＬＯＷからＨＩＧＨになり、トランジスタＮ０によって書き込み検出回路１１０１のノードＮＯＤＥ＿ＡがＬＯＷにリセットされる。これにより電源制御信号ｖｃｎｔがＨＩＧＨにリセットされ、メモリセル４０１への電源線ｖｄｄ０，ｖｄｄ１がフローティングになる。ところが、代表値記憶回路３０３の記憶データと入力データ線３５１上の書き込みデータＤＩとが異なる場合、ＥＯＲ回路１２０３の出力がＨＩＧＨになり、同時に、カラム書き込みイネーブル信号１１５１及びバイト書き込みイネーブル信号１１５２がアクティブになると、トランジスタＰ０によって書き込み検出回路１１０１のノードＮＯＤＥ＿ＡがＨＩＧＨになる。これにより、電源制御信号ｖｃｎｔがＬＯＷになり、電源線ｖｄｄ０，ｖｄｄ１がＶＤＤにドライブされる。
【００６９】
《実施の形態６》
キャッシュメモリのバリッドビットに０が記憶されている場合、タグマクロ及びデータマクロの対応する行のデータは無効なデータである。そのため、タグマクロ及びデータマクロの電源を行ごとに分離し、行に存在するメモリセル４０１の電源をバリッドビットの記憶データで制御することにより、無駄なリーク電流を削減することができる。
【００７０】
図１５に、これを実現する回路の一例を示す。図１５では、行ごとにメモリセルアレイ１０２の電源が分離され、それぞれの行ごとに電源制御回路１０３が設けられており、この電源制御回路１０３にバリッドフラグ線８５１が接続されている。バリッドメモリセルアレイ８０１のメモリセル・ノードＮＯＤＥ＿ＡにＬＯＷが書き込まれると、対応する行のバリッド制御信号ｖｄがＨＩＧＨになり、メモリセルアレイ１０２の対応する行のメモリセル４０１に供給されるＶＤＤ電源がＬＯＷになる。このとき、メモリセル４０１ではほとんどリーク電流が流れない。逆に、バリッドメモリセルアレイ８０１のメモリセル・ノードＮＯＤＥ＿ＡにＨＩＧＨが書き込まれると、メモリセルアレイ１０２中のメモリセル４０１の電源にＶＤＤが供給される。
【００７１】
図１６に、接続関係は異なるが図１５と同様の効果を得る回路構成を示す。図１５ではメモリセル４０１のＶＤＤ電源を制御していたのに対し、図１６ではＶＳＳ電源を制御する。図１６の回路によれば、読み出しデータ線４５４の電荷を引き抜くトランジスタのソースも遮断されるため、図１５の場合よりもリーク電流の削減効果が高い。
【００７２】
同様の構成により、ＬＯＷのバリッドビットに対応する行のタグマクロ、データマクロ、ＬＲＵアレイ等でも、行に存在するメモリセル４０１で流れるリーク電流を大幅に削減することができる。
【００７３】
また、図１５及び図１６では行に存在するメモリセル４０１の電源だけを電源制御回路１０３の制御対象とする例を示したが、ワードドライバ等の対応する行の周辺回路の電源も制御対象とすると、更に高いリーク電流削減効果が期待できる。
【００７４】
以上、バリッドビットを例にして説明をしたが、本発明ではバリッドビットに限定していない。その他の例として、ワードごとに設けられた特殊情報記憶メモリセルは、ＢＩＳＴで不良が含まれたことが検出されたワードであることを記憶するメモリセルにすることで、不良が含まれるワードに存在する不要な情報を記憶したメモリセルの電源を遮断することにより、不要なリーク電流の削減ができる。
【００７５】
その他、バリッドビットの情報と不良検出情報との両方の組み合わせ情報を記憶したメモリセル等でワードに含まれるメモリセルの電源を制御すること等の応用が可能である。
【００７６】
なお、メモリセルは、タグマクロ、データマクロそれぞれに持つことでメモリ外部の配線を減らすことも可能である。
【００７７】
《実施の形態７》
図１７に、本発明の実施の形態７の回路図を示す。図１３と同様に書き込みが行われていないメモリセル４０１の情報は不要なので、電源を遮断することができる。図１７では、メモリセルアレイ１０２の電源を行ごとに分離し、行ごとに書き込み検出回路１５０１を設ける。行に存在するメモリセル４０１の電源は、書き込みワード線４５１の信号とシステムリセット信号１０５２とが入力される書き込み検出回路１５０１で制御される。
【００７８】
システムが起動すると、システムリセット信号１０５２にパルスが入力され、ＶＳＳ電源供給線ｖｓｓｍ（０）〜ｖｓｓｍ（ｎ）がそれぞれＶＤＤになるように、全ての書き込み検出回路１５０１がリセットされる。このとき、メモリセル４０１ではほとんどリーク電流が流れない。その後、あるワードへの書き込みが実施されると、該当する書き込みワード線４５１がＬＯＷからＨＩＧＨに変化し、該当するＶＳＳ電源供給線ｖｓｓｍがＬＯＷになるように書き込み検出回路１５０１が書き換えられる結果、該当するメモリセル４０１のＶＳＳ電源がＶＳＳにドライブされる。
【００７９】
書き込みワード線４５１を利用しているので、ワードへの書き込みを示す新たな信号の追加が無く、面積、速度面でのメリットが望める。
【００８０】
また、実施の形態６と同様に、行に存在するワードドライバ等の周辺回路も電源制御対象とすることで、更なるリーク電流の削減が可能となる。
【００８１】
また、書き込み検出回路１５０１をワードドライバ内に設けて、書き込みワードドライバの回路と組み合わせることで小面積化を図ることも可能である。
【００８２】
《実施の形態８》
図１８に、本発明の実施の形態８の回路図を示す。図１８の構成概略を説明すると、第１の記憶回路１８０１と、第２の記憶回路１８０２とを備え、第１の記憶回路１８０１のＮＭＯＳトランジスタのソースは、第２の記憶回路１８０２の第１及び第２の記憶ノード１８０３，１８０４のうち第１の記憶ノード１８０３に接続されている。１８０５は第１及び第２の記憶回路１８０１，１８０２に共通のワード線、１８０６は第２の記憶回路１８０２の書き込みデータ線、１８０７は第１の記憶回路１８０１の１対のビット線である。第２の記憶回路１８０２の第１の記憶ノード１８０３にＬＯＷが書き込まれたとき、第１及び第２の記憶回路１８０１，１８０２はＳＲＡＭとしての動作をする。第２の記憶回路１８０２の第１の記憶ノード１８０３にＨＩＧＨが書き込まれたとき、第１の記憶回路１８０１におけるリークパスはなくなり、待機電力の削減を図ることができる。
【００８３】
図１９に、第１の変形例の回路図を示す。図１８との違いは、第２の記憶回路１８０２の第２の記憶ノード１８０４が第１の記憶回路１８０１に含まれるＰＭＯＳトランジスタのソースに接続されている点である。第２の記憶回路１８０２の第２の記憶ノード１８０４にＨＩＧＨが書き込まれたとき、第１及び第２の記憶回路１８０１，１８０２はＳＲＡＭとしての動作をする。第２の記憶回路１８０２の第２の記憶ノード１８０４にＬＯＷが書き込まれたとき、第１の記憶回路１８０１におけるリークパスはなくなり、待機電力の削減を図ることができる。一般にＳＲＡＭのメモリセルのＶＤＤ電源は、隣接するメモリセルと共用される。この場合、任意のメモリセルの電源を制御するには図１８より図１９の構成の方が汎用性が高いといえる。
【００８４】
図２０に、第２の変形例の回路図を示す。第１の記憶回路１８０１のＮＭＯＳトランジスタのソースとＶＳＳ電源との間に電源制御トランジスタＴＦ０が挿入され、当該電源制御トランジスタＴＦ０のゲートに第２の記憶回路１８０２の第２の記憶ノード１８０４が接続されている。図２０の構成によっても、図１８の場合と同等の効果を得ることができる。しかも、図１８の場合よりも、第１及び第２の記憶回路１８０１，１８０２のデータ保持特性が改善する。
【００８５】
図１８、図１９及び図２０の構成は、ＴＬＢ（translation look-aside buffer：アドレス変換バッファ）において有効であり、第１の記憶回路１８０１は物理アドレスを記憶した物理アドレスセルとし、第２の記憶回路１８０２はページサイズを記憶したページサイズセルとすることで、記憶データが無効な物理アドレスセルの待機時のリーク電流を削減できる。更に、物理アドレス読み出し時における無駄なビット線の充放電を防止でき、低消費電力化を図ることができる。
【００８６】
図２１に、第３の変形例の回路図を示す。図２１の構成概略を説明する。図２１において、比較機能付きの第１の記憶回路２１０５に含まれるＰＭＯＳトランジスタのソースは第２の記憶回路１８０２の第２の記憶ノード１８０４に接続されている。比較機能付きの第１の記憶回路２１０５において、２１０１は第１の比較データ線、２１０２は第２の比較データ線、２１０３はマッチ線、２１０４は書き込みデータ線である。第２の記憶回路１８０２の第２の記憶ノード１８０４にＨＩＧＨが書き込まれている場合、比較機能付きの第１の記憶回路２１０５において、第１の比較データ線２１０１及びその反転論理となる第２の比較データ線２１０２のデータと、比較機能付きの第１の記憶回路２１０５に記憶されているデータとの比較が行われ、この比較の結果に基づいて比較結果判定トランジスタＴＲ０，ＴＲ１のオン、オフが制御されて比較読み出し動作が行われる。第２の記憶回路１８０２の第２の記憶ノード１８０４にＬＯＷが書き込まれている場合、比較結果判定トランジスタＴＲ０，ＴＲ１のゲートは決してＨＩＧＨにならず、これらの比較結果判定トランジスタＴＲ０，ＴＲ１が常にオフしているため、比較機能付きの第１の記憶回路２１０５の比較結果はマスクされる。このように、比較機能付きの第１の記憶回路２１０５において、比較結果をマスクする必要がある場合、ＰＭＯＳトランジスタのソース電位がＬＯＷとなっているため、待機時においてリーク電流を抑制することができる。一般的なＳＲＡＭセルではＮＭＯＳトランジスタは隣接メモリセルとＶＳＳ電源を共有している場合が多いため、比較機能付きの第１の記憶回路２１０５の電源制御を行う場合、図２１に示すようにＰＭＯＳトランジスタの電源を制御するのがよい。
【００８７】
図２２に、第４の変形例の回路図を示す。図２２の構成概略を説明する。図２２における比較機能付きの第１の記憶回路２２０１は、図２１における比較機能付きの第１の記憶回路２１０５の別の構成を示し、機能は同じである。図２２における比較機能付きの第１の記憶回路２２０１に含まれるＮＭＯＳトランジスタのソース、及び比較結果判定トランジスタＴＲ０のソースは、第２の記憶回路１８０２の第１の記憶ノード１８０３に接続されている。第２の記憶回路１８０２の第１の記憶ノード１８０３にＬＯＷが書き込まれているとき、比較機能付きの第１の記憶回路２２０１は、機能的に図２１における比較機能付きの第１の記憶回路２１０５の比較読み出し動作と同様の動作を行う。第２の記憶回路１８０２の第１の記憶ノード１８０３にＨＩＧＨが書き込まれているとき、図２１と同様にリーク電流を抑制することができる。また、比較結果判定トランジスタＴＲ０のソース電位はＨＩＧＨとなっているため、この比較結果判定トランジスタＴＲ０によってマッチ線２１０３がＬＯＷに駆動されることがないので、比較結果をマスクする機能を実現することができる。
【００８８】
図２１及び図２２の構成もＴＬＢにおいて有効であり、比較機能付きの第１の記憶回路２１０５，２２０１は物理アドレスを記憶したＣＡＭ（content addressable memory）とし、第２の記憶回路１８０２はページサイズを記憶したページサイズセルとすることで、ＴＬＢにおいて無駄なリーク電流の削減が実現できる。
【００８９】
また、ＴＬＢ以外に、通信分野におけるＴＣＡＭ（ternary CAM）においても同様に無駄なリーク電流削減を実現できる。
【００９０】
なお、上述した各実施の形態ではいずれも、データ保持が不要なメモリセルの電源を遮断する例を示しているが、電源遮断だけでなく、ＶＤＤ電源の電圧を通常より下げたり、ＶＳＳ電源の電圧を通常より上げたりする制御をすることでも、同様にリーク電流を削減する効果が得られる。この場合のリーク電流削減効果は電源遮断の場合よりも劣るが、低消費電力待機モードからの復帰が高速化されるというメリットがある。
【００９１】
更に、メモリセルのデータが保持される範囲でＶＤＤ電源を降圧したり、ＶＳＳ電源を昇圧したりすれば、低消費電力待機モードでもメモリセルデータが保持される。これにより、実施の形態１の構成のように重複データを記憶したメモリセルの電源を低消費電力待機モードにする場合でも、復帰時にメモリセルのデータを重複データで書き戻す作業が不要になるというメリットがある。
【００９２】
また、以上の実施の形態１〜８を組み合わせることで、それぞれのメリットを併せ持つ構成が可能となる。電源制御回路１０３にイネーブルを掛ける信号として待機モード制御信号１５３を例に説明したが、システムによって別の役割を示す信号であっても、同じ効果が得られる構成に関しては本発明に包括されるべきである。
【産業上の利用可能性】
【００９３】
以上説明してきたとおり、本発明に係る半導体記憶装置は、待機電力の大幅な削減、更に動作時のリーク電流の削減が可能となる効果を有し、ＳＲＡＭ等として有用である。
【符号の説明】
【００９４】
１０２  メモリセルアレイ
１０３  電源制御回路
１５１  ワード線
１５２  ビット線
１５３  待機モード制御信号
１５４  メモリセル電源供給線
３００  メモリセル
３０１  書き込み回路
３０２  読み出し回路
３０３  代表値記憶回路
３０４  一致検出回路
３０５  デコーダ
３０６  読み出し制御回路
３０７  書き込み制御回路
３０８  待機モード制御回路
３０９  供給電源調整回路
３１１  オール０ラッチ
３１２  オール１ラッチ
３５１  入力データ線
３５２  出力データ線
３５３  フラグ判定イネーブル信号
３５４  リセット信号
３５５  内部待機モード制御信号
３５６  デコーダカウントアップ・ダウン信号
３５７  フラグ判定結果信号
４０１  読み出し／書き込みポート分離型のメモリセル
４０２  一致検出回路兼出力データ保持回路
４５１  書き込みワード線
４５２  読み出しワード線
４５４  読み出しデータ線
４５５  書き込みデータ線
５０１  バンク読み出し・書き込み制御回路
５５１  バンク制御信号
５５２  グローバル入出力データ線
６０１  カラム制御回路
６０２  カラム選択回路
７５１  多重選択イネーブル信号
８０１  バリッドメモリセルアレイ
８５１  バリッドフラグ線
１００１  有効情報記憶回路
１０５１  バリッドフラグ入力信号
１０５２  システムリセット信号
１１０１  書き込み検出回路
１１５１  カラム書き込みイネーブル信号
１１５２  バイト書き込みイネーブル信号
１２０１  書き込みデータ判定回路
１５０１  書き込み検出回路
１８０１  第１の記憶回路
１８０２  第２の記憶回路
１８０３  第１の記憶ノード
１８０４  第２の記憶ノード
１８０５  ワード線
１８０６  書き込みデータ線
１８０７  ビット線
２１０１  第１の比較データ線
２１０２  第２の比較データ線
２１０３  マッチ線
２１０４  書き込みデータ線
２１０５  比較機能付きの第１の記憶回路
２２０１  比較機能付きの第１の記憶回路
【図１】
2011027501.tif 000003
【図２】
2011027501.tif 000004
【図３】
2011027501.tif 000005
【図４】
2011027501.tif 000006
【図５】
2011027501.tif 000007
【図６】
2011027501.tif 000008
【図７】
2011027501.tif 000009
【図８】
2011027501.tif 000010
【図９】
2011027501.tif 000011
【図１０】
2011027501.tif 000012
【図１１】
2011027501.tif 000013
【図１２】
2011027501.tif 000014
【図１３】
2011027501.tif 000015
【図１４】
2011027501.tif 000016
【図１５】
2011027501.tif 000017
【図１６】
2011027501.tif 000018
【図１７】
2011027501.tif 000019
【図１８】
2011027501.tif 000020
【図１９】
2011027501.tif 000021
【図２０】
2011027501.tif 000022
【図２１】
2011027501.tif 000023
【図２２】
2011027501.tif 000024
【国際調査報告】
2011027501.tif 000025
2011027501.tif 000026
2011027501.tif 000027
2011027501.tif 000028
2011027501.tif 000029
2011027501.tif 000030
2011027501.tif 000031