TOP > 国内特許検索 > 電子回路 > 明細書

明細書 :電子回路

発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2019-102111 (P2019-102111A)
公開日 令和元年6月24日(2019.6.24)
発明の名称または考案の名称 電子回路
国際特許分類 G11C  14/00        (2006.01)
FI G11C 14/00 230
請求項の数または発明の数 10
出願形態 OL
全頁数 23
出願番号 特願2017-230447 (P2017-230447)
出願日 平成29年11月30日(2017.11.30)
発明者または考案者 【氏名】菅原 聡
【氏名】北形 大樹
【氏名】山本 修一郎
出願人 【識別番号】503360115
【氏名又は名称】国立研究開発法人科学技術振興機構
個別代理人の代理人 【識別番号】100087480、【弁理士】、【氏名又は名称】片山 修平
【識別番号】100137615、【弁理士】、【氏名又は名称】横山 照夫
審査請求 未請求
要約 【課題】消費電力を抑制すること。
【解決手段】各々のメモリセルが、データを揮発的に記憶する双安定回路と、前記双安定回路に記憶されたデータを不揮発的にストアし、不揮発的にストアされたデータを前記双安定回路にリストアする不揮発性素子と、を有し、各々のブロックが少なくとも2つのメモリセルを含む複数のブロックに分割されたセルアレイと、前記セルアレイをシャットダウンするときに、前記複数のブロックからブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出し、抽出されたブロックをシャットダウンし、前記抽出されたブロックをシャットダウンした後前記複数のブロックのうち残りのブロック内のメモリセルにおいて前記双安定回路に記憶されたデータを前記不揮発性素子にストアするストア動作を行い、ストア動作の終了したブロックをシャットダウンする制御部と、を備えることを特徴とする電子回路。
【選択図】図7
特許請求の範囲 【請求項1】
各々のメモリセルが、データを揮発的に記憶する双安定回路と、前記双安定回路に記憶されたデータを不揮発的にストアし、不揮発的にストアされたデータを前記双安定回路にリストアする不揮発性素子と、を有し、各々のブロックが少なくとも2つのメモリセルを含む複数のブロックに分割されたセルアレイと、
前記セルアレイをシャットダウンするときに、前記複数のブロックからブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出し、抽出されたブロックをシャットダウンし、前記抽出されたブロックをシャットダウンした後前記複数のブロックのうち残りのブロック内のメモリセルにおいて前記双安定回路に記憶されたデータを前記不揮発性素子にストアするストア動作を行い、ストア動作の終了したブロックをシャットダウンする制御部と、
を備えることを特徴とする電子回路。
【請求項2】
前記複数のブロックのうちそれぞれのブロック内の少なくとも1つのメモリセルが揮発的に書き換えられたことを示す第1情報をそれぞれ記憶する複数の第1記憶部を備え、
前記制御部は、前記複数の第1記憶部に記憶された前記第1情報に基づき、前記複数のブロックからブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出することを特徴とする請求項1に記載の電子回路。
【請求項3】
前記複数のブロックと接続され、前記複数のブロックから読み出すデータおよび書き込むデータを転送するパラレルバスを備え、
前記制御部は、前記複数のブロックのうち異なるブロックに対応する第1情報を前記パラレルバスの異なる信号線を介し同時に取得することを特徴とする請求項2に記載の電子回路。
【請求項4】
アドレス信号に対応するメモリセルにデータを揮発的に書き込む書込回路と、
前記アドレス信号に基づき前記第1情報を生成する生成回路と、
を備えることを特徴とする請求項2または3に記載の電子回路。
【請求項5】
前記複数のブロックは、各々のブロックが少なくとも2つのメモリセルを含む複数のサブブロックに分割されており、
前記制御部は、前記複数のサブブロックからサブブロック内のいずれのメモリセルも揮発的に書き換えられていないサブブロックを抽出し、抽出されたサブブロックをシャットダウンし、前記抽出されたサブブロックをシャットダウンした後前記複数のサブブロックのうち残りのサブブロックにおいてストア動作を行い、ストア動作の終了したサブブロックをシャットダウンすることを特徴とする請求項1から4のいずれか一項に記載の電子回路。
【請求項6】
前記制御部は、前記残りのサブブロックのうち次のブロックのストア動作を行う前に、前記ストア動作の終了したサブブロックをシャットダウンすることを特徴とする請求項5に記載の電子回路。
【請求項7】
前記複数のサブブロックのうちそれぞれのサブブロック内の少なくとも1つのメモリセルが揮発的に書き換えられたことを示す第2情報をそれぞれ記憶する複数の第2記憶部を備え、
前記制御部は、前記複数の第2記憶部に記憶された前記第2情報に基づき、前記複数のサブブロックからサブブロック内のいずれのメモリセルも揮発的に書き換えられていないサブブロックを抽出することを特徴とする請求項5または6に記載の電子回路。
【請求項8】
前記複数のブロックと接続され、前記複数のブロックから読み出すデータおよび書き込むデータを転送するパラレルバスを備え、
前記制御部は、前記複数のブロックのうち異なるブロックに対応する第2情報を前記パラレルバスの異なる信号線を介し同時に取得することを特徴とする請求項7に記載の電子回路。
【請求項9】
前記制御部は、前記抽出されたブロックを全てシャットダウンした後、前記複数のブロックのうち残りのブロック内のメモリセルにおいてストア動作を行うことを特徴とする請求項1から8のいずれか一項に記載の電子回路。
【請求項10】
各々のメモリセルが、データを揮発的に記憶する双安定回路と、前記双安定回路に記憶されたデータを不揮発的にストアし、不揮発的にストアされたデータを前記双安定回路にリストアする不揮発性素子と、を有し、各々のブロックが少なくとも2つのメモリセルを含む複数のブロックに分割されたセルアレイと、
前記セルアレイをシャットダウンするときに、前記複数のブロックから不揮発的にストアする必要のないブロックを抽出し、抽出されたブロックをシャットダウンし、前記抽出されたブロックをシャットダウンした後前記複数のブロックのうち残りのブロック内のメモリセルにおいて前記双安定回路に記憶されたデータを前記不揮発性素子にストアするストア動作を行い、ストア動作の終了したブロックをシャットダウンする制御部と、
を備えることを特徴とする電子回路。
発明の詳細な説明 【技術分野】
【0001】
本発明は、電子回路に関し、例えば双安定回路と不揮発性素子とを有する複数のメモリセルを備えた電子回路に関する。
【背景技術】
【0002】
特許文献1には、双安定回路と不揮発性素子を有するメモリセルを用いた記憶回路が記載されている。双安定回路のデータを不揮発性素子にストアし(以後、この動作を“不揮発的にストアする”と言うことがある)、不揮発性素子のデータを双安定回路にリストアする回路を不揮発性双安定回路という。特許文献2には、不揮発性双安定回路を有するセルにおいて、SRAM(Static Random Access Memory)動作、スリープ動作、ストア動作および電源遮断(シャットダウン)を行なう記憶回路が記載されている。特許文献3には、双安定回路に記憶されているデータと、不揮発性素子にストアされているデータが一致する場合、ストアをスキップする制御(ストアフリー動作)を行なう記憶回路が記載されている。特許文献4には、セルアレイを複数のブロックに分割し、ストア動作が終了したブロックの電源を遮断することが記載されている。
【先行技術文献】
【0003】

【特許文献1】国際公開第2009/028298号
【特許文献2】国際公開第2013/172066号
【特許文献3】国際公開第2013/172065号
【特許文献4】国際公開第2016/024527号
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献3および4の方法を用いることで、消費電力を抑制できる。しかしながら、セルアレイの記憶容量が大きくなると、ストア動作を待機するブロックに生じるリーク電流による消費電力が大きくなる。
【0005】
本発明は、上記課題に鑑みなされたものであり、消費電力を抑制することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、各々のメモリセルが、データを揮発的に記憶する双安定回路と、前記双安定回路に記憶されたデータを不揮発的にストアし、不揮発的にストアされたデータを前記双安定回路にリストアする不揮発性素子と、を有し、各々のブロックが少なくとも2つのメモリセルを含む複数のブロックに分割されたセルアレイと、前記セルアレイをシャットダウンするときに、前記複数のブロックからブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出し、抽出されたブロックをシャットダウンし、前記抽出されたブロックをシャットダウンした後前記複数のブロックのうち残りのブロック内のメモリセルにおいて前記双安定回路に記憶されたデータを前記不揮発性素子にストアするストア動作を行い、ストア動作の終了したブロックをシャットダウンする制御部と、を備えることを特徴とする電子回路である。
【0007】
上記構成において、前記複数のブロックのうちそれぞれのブロック内の少なくとも1つのメモリセルが揮発的に書き換えられたことを示す第1情報をそれぞれ記憶する複数の第1記憶部を備え、前記制御部は、前記複数の第1記憶部に記憶された前記第1情報に基づき、前記複数のブロックからブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出する構成とすることができる。
【0008】
上記構成において、前記複数のブロックと接続され、前記複数のブロックから読み出すデータおよび書き込むデータを転送するパラレルバスを備え、前記制御部は、前記複数のブロックのうち異なるブロックに対応する第1情報を前記パラレルバスの異なる信号線を介し同時に取得する構成とすることができる。
【0009】
上記構成において、アドレス信号に対応するメモリセルにデータを揮発的に書き込む書込回路と、前記アドレス信号に基づき前記第1情報を生成する生成回路と、を備える構成とすることができる。
【0010】
上記構成において、前記複数のブロックは、各々のブロックが少なくとも2つのメモリセルを含む複数のサブブロックに分割されており、前記制御部は、前記複数のサブブロックからサブブロック内のいずれのメモリセルも揮発的に書き換えられていないサブブロックを抽出し、抽出されたサブブロックをシャットダウンし、前記抽出されたサブブロックをシャットダウンした後前記複数のサブブロックのうち残りのサブブロックにおいてストア動作を行い、ストア動作の終了したサブブロックをシャットダウンする構成とすることができる。
【0011】
上記構成において、前記制御部は、前記残りのサブブロックのうち次のブロックのストア動作を行う前に、前記ストア動作の終了したサブブロックをシャットダウンする構成とすることができる。
【0012】
上記構成において、前記複数のサブブロックのうちそれぞれのサブブロック内の少なくとも1つのメモリセルが揮発的に書き換えられたことを示す第2情報をそれぞれ記憶する複数の第2記憶部を備え、前記制御部は、前記複数の第2記憶部に記憶された前記第2情報に基づき、前記複数のサブブロックからサブブロック内のいずれのメモリセルも揮発的に書き換えられていないサブブロックを抽出する構成とすることができる。
【0013】
上記構成において、前記複数のブロックと接続され、前記複数のブロックから読み出すデータおよび書き込むデータを転送するパラレルバスを備え、前記制御部は、前記複数のブロックのうち異なるブロックに対応する第2情報を前記パラレルバスの異なる信号線を介し同時に取得する構成とすることができる。
【0014】
上記構成において、前記制御部は、前記抽出されたブロックを全てシャットダウンした後、前記複数のブロックのうち残りのブロック内のメモリセルにおいてストア動作を行う構成とすることができる。
【0015】
本発明は、各々のメモリセルが、データを揮発的に記憶する双安定回路と、前記双安定回路に記憶されたデータを不揮発的にストアし、不揮発的にストアされたデータを前記双安定回路にリストアする不揮発性素子と、を有し、各々のブロックが少なくとも2つのメモリセルを含む複数のブロックに分割されたセルアレイと、前記セルアレイをシャットダウンするときに、前記複数のブロックから不揮発的にストアする必要のないブロックを抽出し、抽出されたブロックをシャットダウンし、前記抽出されたブロックをシャットダウンした後前記複数のブロックのうち残りのブロック内のメモリセルにおいて前記双安定回路に記憶されたデータを前記不揮発性素子にストアするストア動作を行い、ストア動作の終了したブロックをシャットダウンする制御部と、を備えることを特徴とする電子回路である。
【発明の効果】
【0016】
本発明によれば、消費電力を抑制することができる。
【図面の簡単な説明】
【0017】
【図1】図1は、実施例1におけるメモリセルの回路図である。
【図2】図2は、実施例1における各期間の消費電流を示す図である。
【図3】図3は、実施例1における電子回路を示すブロック図である。
【図4】図4は、実施例1におけるサブアレイのブロック図である。
【図5】図5は、実施例1における動作を示すフローチャートである。
【図6】図6は、実施例1におけるSRAM動作を示すフローチャートである。
【図7】図7は、実施例1におけるストア動作を示すフローチャートである。
【図8】図8(a)から図8(d)は、実施例1におけるセルアレイを示す模式図である。
【図9】図9(a)から図9(d)は、実施例1におけるサブアレイを示す模式図である。
【図10】図10(a)から図10(c)は、実施例1におけるブロックを示す模式図である。
【図11】図11は、実施例1の転送方法1に用いるSFI回路の例を示すブロック図である。
【図12】図12は、実施例1における転送方法を説明するセルアレイの模式図である。
【図13】図13(a)から図13(d)は、実施例1の転送方法1におけるバスのデータを示す模式図である。
【図14】図14は、実施例1の転送方法2に用いるSFI回路の例を示すブロック図である。
【図15】図15(a)および図15(b)は、実施例1の転送方法2におけるバスのデータを示す模式図である。
【図16】図16(a)から図16(c)は、実施例1および比較例1におけるストアフリー比に対するBETを示す図、図16(d)から図16(f)は、ストアフリー比に対するレイテンシを示す図である。
【図17】図17は、実施例1の変形例1に係るキャッシュメモリのブロック図である。
【図18】図18は、実施例1の変形例2に係るキャッシュメモリのブロック図である。
【発明を実施するための形態】
【0018】
以下、図面を参照し実施例について説明する。
【実施例1】
【0019】
[メモリセルの説明]
図1は、実施例1におけるメモリセルの回路図である。図1に示すように、メモリセル10は、インバータ回路14および16、スピントランスファートルク磁気トンネル接合素子(STT-MTJ:以下では単に強磁性トンネル接合素子と呼ぶ)MTJ1およびMTJ2を有している。
【実施例1】
【0020】
インバータ回路14および16はループ状に接続され双安定回路12を構成している。インバータ回路14は、n型MOSFET(Metal Oxide Semiconductor Field Effect Transistor)m2およびp型MOSFETm1を有している。インバータ回路16は、n型MOSFETm4およびp型MOSFETm3を有している。p型MOSFETm1およびm3のソースは仮想電源電圧VVDDが印加された電源線15aに接続され、n型MOSFETm2およびm4のソースはグランド電圧VGNDが印加されたグランド線15bに接続されている。
【実施例1】
【0021】
インバータ回路14と16が接続されたノードがそれぞれノードQ、QBである。ノードQとノードQBとは互いに相補ノードである。双安定回路12は、ノードQおよびノードQBがそれぞれハイレベルおよびローレベル、または、ノードQおよびノードQBがそれぞれローレベルおよびハイレベルとなることにより安定状態となる。双安定回路12は、安定状態となることにより、データを記憶することができる。
【実施例1】
【0022】
ノードQおよびQBは、それぞれMOSFETm5およびm6を介し入出力線DおよびDBに接続されている。MOSFETm5およびm6のゲートはワード線WLに接続されている。MOSFETm1からm6により6トランジスタ(FET)型のSRAMが形成される。
【実施例1】
【0023】
ノードQと制御線CTRLとの間にMOSFETm7と強磁性トンネル接合素子MTJ1とが接続され、ノードQBと制御線CTRLとの間にMOSFETm8と強磁性トンネル接合素子MTJ2とが接続されている。MOSFETm7およびm8のソースおよびドレインの一方は、ノードQおよびQBに、ソースおよびドレインの他方は強磁性トンネル接合素子MTJ1およびMTJ2にそれぞれ接続されている。MOSFETm7およびm8のゲートはスイッチ線SRに接続されている。なお、MOSFETm7およびm8は、それぞれ、強磁性トンネル接合素子MTJ1およびMTJ2と制御線CTRLとの間に接続されていてもよい。また、MOSFETm7およびm8は、設けられていなくてもよい。
【実施例1】
【0024】
強磁性トンネル接合素子MTJ1とMOSFETm7とは回路PSM1を構成する。同様に、強磁性トンネル接合素子MTJ2とMOSFETm8とは回路PSM2を構成する。
【実施例1】
【0025】
強磁性トンネル接合素子MTJ1およびMTJ2は、それぞれフリー層17、トンネル絶縁膜18およびピン層19を有している。フリー層17およびピン層19は強磁性体からなる。フリー層17とピン層19との磁化方向が平行な状態(平行状態)では、MTJ1およびMTJ2の抵抗値が低くなる。フリー層17とピン層19との磁化方向が反平行な状態(反平行状態)では、MTJ1およびMTJ2の抵抗値が平行状態より高くなる。MTJ1およびMTJ2は、MTJ1およびMTJ2の抵抗値によりデータをストアする。後述する仮想電源方式では、フリー層17が制御線CTRLに接続され、仮想接地方式では、ピン層19が制御線CTRLに接続される。仮想電源方式では、PSM1およびPSM2のMOSFETm7およびm8はn型であり、仮想接地方式では、PSM1およびPSM2のMOSFETm7およびm8はp型である。
【実施例1】
【0026】
双安定回路12へのデータの書き込みおよび読み出しは、従来のSRAMと同じように行われる。すなわち、ワード線WLをハイレベルとしMOSFETm5およびm6を導通状態とすることにより、双安定回路12に入出力線DおよびDBのデータが書き込まれる。また、入出力線DおよびDBを等電位の浮遊状態としワード線WLをハイレベルとしMOSFETm5およびm6を導通状態とすることにより、双安定回路12のデータを入出力線DおよびDBに読み出すことができる。MOSFETm5およびm6を遮断状態とすることにより、双安定回路12のデータが保持される。なお、双安定回路12へのデータの書き込み、読み出し、および保持の際、スイッチ線SRはローレベルとし、MOSFETm7およびm8は遮断状態とすることが好ましい。これにより、ノードQおよびQBと制御線CTRL間の電流をほぼ遮断し、安定動作を実現し、さらに、消費電力の増大を抑制することができる。
【実施例1】
【0027】
[各期間の説明]
図2は、実施例1における各期間の消費電流を示す図である。実線は図1に示したメモリセル10(NV-SRAM)を有する記憶回路の消費電流を示す。実線の消費電流は、リーク電流とストア動作およびリストア動作に用いる電流を含み、通常のSRAM動作における書き込みおよび読み出しの電流は含んでいない。破線は、MOSFETm7、MOSFETm8、MTJ1およびMTJ2を設けない6トランジスタSRAM(6T-SRAM)セルを用いた記憶回路の消費電流を示している。点線は、6T-SRAMセルを用いた記憶回路の通常SRAM動作期間の消費電流を示している。破線および点線の消費電流は、リーク電流を含み、SRAM動作における書き込みおよび読み出しの電流は含んでいない。
【実施例1】
【0028】
図2に示すように、メモリセル10の動作期間には、スリープ期間、SRAM動作(ノーマルSRAMオペレーション)期間、ストア期間、シャットダウン(電源遮断)期間およびリストア期間がある。スリープ期間とSRAM動作期間は、双安定回路12にデータが保持されている期間である。SRAM動作期間は、通常のSRAMとして双安定回路12のデータを書き換え、揮発的に保持する(これを、「データを揮発的に書き換える」という)期間である。スリープ期間は、メモリセル10がスリープモードの期間であり、双安定回路12のデータを保持するのみであり、データの書き換えを行なわない期間である。スリープ期間においては、SRAM動作期間に対し、双安定回路12に供給される仮想電源電圧VVDDを、データを保持できる程度に低くする。例えば、SRAM動作期間のVVDDを1.1V、およびスリープ期間のVVDDを0.9Vとする。これにより、消費電力を抑制できる。スリープ期間およびSRAM動作期間では、制御線CTRLおよびスイッチ線SRはローレベルであり、MOSFETm7およびm8はオフしている。
【実施例1】
【0029】
ストア期間は、ストア動作が行なわれる期間であり、双安定回路12に記憶されたデータを強磁性トンネル接合素子MTJ1およびMTJ2にストアし、これを不揮発的に保持する(これを、「不揮発的にストアする」という)期間である。ストア期間のうち一部の期間において、スイッチ線SRおよび制御線CTRLをハイレベルとし、残りの期間において、スイッチ線SRをハイレベル(MOSFETm7およびm8をオン)とし制御線CTRLをローレベルとする。例えば、ストア期間のうち初めの期間において、制御線CTRLをローレベルとし、ストア期間のうちその後の期間において、制御線CTRLをハイレベルとする。ノードQおよびQBがそれぞれハイレベルおよびローレベルのとき、強磁性トンネル接合素子MTJ1およびMTJ2はそれぞれ高抵抗および低抵抗となる。ノードQおよびQBがそれぞれローレベルおよびハイレベルのとき、強磁性トンネル接合素子MTJ1およびMTJ2はそれぞれ低抵抗および高抵抗となる。このように、双安定回路12のデータが強磁性トンネル接合素子MTJ1およびMTJ2にストアされる。
【実施例1】
【0030】
シャットダウン期間は、メモリセル10をシャットダウンモードとする期間である。シャットダウン期間においては、メモリセル10の電源に供給される電圧(VVDD-VGND)をほぼ0Vとする。これにより、メモリセル10はシャットダウンモードとなる。このとき、メモリセル10にほとんど電流が流れないため、消費電力を抑制することができる。
【実施例1】
【0031】
リストア期間においては、制御線CTRLをローレベルとしスイッチ線SRをハイレベルとした状態で仮想電源電圧VVDDを0Vから立ち上げることにより行なわれる。強磁性トンネル接合素子MTJ1およびMTJ2がそれぞれ高抵抗および低抵抗のとき、ノードQおよびQBはそれぞれハイレベルおよびローレベルとなる。強磁性トンネル接合素子MTJ1およびMTJ2がそれぞれ低抵抗および高抵抗のとき、ノードQおよびQBはそれぞれローレベルおよびハイレベルとなる。このように、強磁性トンネル接合素子MTJ1およびMTJ2にストアされ不揮発的に保持されたデータ(これを、「不揮発的にストアされたデータ」という)が双安定回路12にリストアされる。
【実施例1】
【0032】
スリープ期間の長さをτsleep、6T-SRAMのリーク電流をILS、NV-SRAMのリーク電流をILSNVとする。SRAM動作期間の長さをτact、6T-SRAMのリーク電流をI、NV-SRAMのリーク電流をINVとする。ストア期間の長さをτst、強磁性トンネル接合素子MTJ1およびMTJ2の書き込み電流(ストア動作時に生じる電流)をIMTJとする。シャットダウン期間の長さをτSD、NV-SRAMのリーク電流をISDとする。リストア期間の長さをτret、NV-SRAMのリストア動作時に生じる電流をIRushとする。スリープ期間とSRAM動作期間との合計の長さをτexeとする。スリープ期間からリストア期間までの長さをτcycとする。
【実施例1】
【0033】
スリープ期間およびSRAM動作期間においては、MOSFETm7およびm8にもリーク電流が流れるため、NV-SRAMのリーク電流による消費電力は6T-SRAMより大きい。NV-SRAMにおいては、ストア期間においてはストアのための電流、リストア期間においては、強磁性トンネル接合素子MTJ1およびMTJ2を介して生じる電流と、電源復帰させる回路に生じるラッシュ電流とが生じる。シャットダウン期間においては、NV-SRAMは、わずかにリーク電流が流れるものの消費電力は十分に小さくなる。6T-SRAMにおいては、シャットダウンできないため、NV-SRAMにおけるストア期間、シャットダウン期間およびリストア期間に相当する期間を、スリープ期間とする。よって、これらの期間の6T-SRAMのリーク電流ILSとなる。
【実施例1】
【0034】
NV-SRAMセルにおいて、6T-SRAMセルと比べて、SRAM動作時およびスリープ動作時におけるリーク電流の増加分と、ストア期間およびリストア期間の消費エネルギーの増加分とが、シャットダウンによって節約できるエネルギーに等しくなる期間がBET(Break-even time)である。そこで、待機期間がBET以上のときはシャットダウンを行ない、BET以下のときはスリープとする。これにより、極めて高効率に電力を削減できる。
【実施例1】
【0035】
[電子回路の説明]
図3は、実施例1における電子回路を示すブロック図である。図3に示すように、電子回路100は、セルアレイ20、プリデコーダ26および制御部28を備えている。セルアレイ20は、複数のサブアレイ22に分割されている。サブアレイ22の記憶容量は例えば8Kバイトである。サブアレイ22には複数のメモリセル10がマトリックス状に設けられている。サブアレイ22はバス25に接続されている。サブアレイ22の個数は適宜設計可能である。
【実施例1】
【0036】
サブアレイ22にはパワースイッチ30が設けられている。パワースイッチ30はサブアレイ22毎に電源電圧を遮断(または低く)する。パワースイッチ30は、例えばp型FETであり、サブアレイ22と電圧VDDの電源との間に設けられている。パワースイッチ30がサブアレイ22と電源との間に設けられている場合、図1の電源線15aには電源の電圧VDD以下の仮想電源電圧VVDDが印加され、グランド線15bにはグランド電圧VGNDが印加される。これを仮想電源方式という。
【実施例1】
【0037】
パワースイッチ30は、サブアレイ22とグランドとの間に設けられていてもよい。この場合、電源線15aには電源の電圧VDDが印加され、グランド線15bにはグランド電圧VGND以上の仮想グランド電圧VVGNDが印加される。これを仮想接地方式という。
【実施例1】
【0038】
プリデコーダ26はアドレス信号に基づきサブアレイ22を選択する。制御部28は、パワースイッチ30を制御することでサブアレイ22毎にパワーを制御するパワーマネージメントユニットとして機能する。また、制御部28は、サブアレイ22のストアフリー動作を制御するストアフリーマネージメントユニットとして機能する。さらに、制御部28はバス25を介しサブアレイ22へのデータの入出力を行う。制御部28の少なくとも一部の機能は外部のCPU(Central Processing Unit)が行ってもよい。
【実施例1】
【0039】
[サブアレイの説明]
図4は、実施例1におけるサブアレイのブロック図である。図4に示すように、サブアレイ22は、メモリセル10を有する複数のブロック24(例えば8個)に分割されている。ブロック24の記憶容量は例えば1Kバイトである。ブロック24の個数は適宜設計可能である。サブアレイ22内には複数のメモリセル10がマトリックス状に配置されている。サブアレイ22内には、行方向にワード線WLおよびスイッチ線SRが延伸し、列方向にビット線BL(図1の入出力線DおよびDBに相当する)および制御線CTRLが延伸している。各メモリセル10には、ワード線WL、スイッチ線SR、ビット線BL、制御線CTRL、電源線15aおよびグランド線15bが接続されている。
【実施例1】
【0040】
各サブアレイ22に対応し、パワースイッチ30、周辺回路38およびSFI(ストアフリーインジケータ)回路40が設けられている。制御部28は、パワースイッチ30、周辺回路38およびSFI回路40を制御する。
【実施例1】
【0041】
パワースイッチ30は、ブロック24毎に電源線15aの仮想電源電圧VVDDを変更できる。これにより、パワースイッチ30は、ブロック24毎ごとにメモリセル10をシャットダウンできる。
【実施例1】
【0042】
周辺回路38は、WLデコーダ31、列デコーダ32、プリチャージ回路33、読出書込回路34、SRデコーダ35および列デコーダ36を備えている。
【実施例1】
【0043】
SRAM動作期間において、WLデコーダ31は列アドレスに基づきビット線BLを選択する。プリチャージ回路33はビット線BLをプリチャージする。読出書込回路34は、WLデコーダ31および列デコーダ32に選択されたメモリセル10の双安定回路12にデータを書き込みまたは双安定回路12からデータを読み出す。
【実施例1】
【0044】
ストア期間において、SRデコーダ35は行アドレスに基づきスイッチ線SRを選択する。列デコーダ36は列アドレスに基づき制御線CTRLを選択する。WLデコーダ31および列デコーダ32に選択されたメモリセル10において双安定回路12のデータが強磁性トンネル接合素子MTJ1およびMTJ2に不揮発的にストアされる。
【実施例1】
【0045】
SFI回路40は、選択回路41、記憶部42およびマルチプレクサ(MUX)43を備えている。記憶部42は、SFBF(ストアフリーブロックフラグ)を記憶する記憶部42aおよびSFSF(ストアフリーサブアレイフラグ)を記憶する記憶部42bを有する。記憶部42aは例えばブロック24の個数のビット容量を有する。例えばサブアレイ22が8個のブロック24を有する場合、記憶部42aは8ビットである。記憶部42bは1ビットである。記憶部42は例えばラッチ回路またはフリップフロップ回路である。
【実施例1】
【0046】
選択回路41は、SRAM動作期間において、ブロック24に書き込みが行われると対応するSFBFをセットし(例えばハイレベルとし)、サブアレイ22に書き込みが行われるとSFSFをセットする(例えばハイレベルとする)。マルチプレクサ43は、読出書込回路34が出力する読み出しデータとSFBFおよびSFSFとのいずれかを選択してバス25に出力する。
【実施例1】
【0047】
[動作の説明]
図5は、実施例1における動作を示すフローチャートである。図5に示すように、制御部28は、外部からの指令によりセルアレイ20の電源を投入する(ステップS10)。例えば、制御部28はパワースイッチ30に各サブアレイ22に電源の電圧VDDを供給させる。これにより、各サブアレイ22内のメモリセル10において、強磁性トンネル接合素子MTJ1およびMTJ2内のデータが双安定回路12にリストアされる。
【実施例1】
【0048】
制御部28は、SRAM動作を行う(ステップS12)。制御部28は、外部からセルアレイ20をシャットダウンする指示を受けたか否か判定する(ステップS14)。NoのときステップS12に戻る。Yesのとき、制御部28は、ストア動作およびシャットダウンを行う(ステップS16)。その後終了しステップS10に戻る。
【実施例1】
【0049】
[SRAM動作の説明]
図5のステップS12における動作について説明する。図6は、実施例1におけるSRAM動作を示すフローチャートである。図6に示すように、選択回路41は記憶部42のSFSFおよびSFBFをリセットする(ステップS20)。セルアレイ20のシャットダウンにより記憶部42がリセットされる場合には、ステップS20は行わなくてもよい。
【実施例1】
【0050】
プリデコーダ26に書き込みアドレスが入力される(ステップS22)。プリデコーダ26は、書き込みを行うサブアレイ22(すなわち書き込みを行うメモリセル10を含むサブアレイ22)を選択する(ステップS24)。選択回路41は、選択されたサブアレイ22に対応する記憶部42bにSFSFをセットする(ステップS26)。
【実施例1】
【0051】
WLデコーダ31および列デコーダ32は、書き込みを行うブロック24(すなわち書き込みを行うメモリセル10を含むブロック24)を選択する(ステップS28)。選択回路41は、記憶部42a内に選択されたブロック24のSFBFをセットする(ステップS30)。読出書込回路34は、選択されたブロック24内のメモリセル10にデータを書き込む(ステップS32)。制御部28は、SRAM動作を終了するか判定する(ステップS34)。NoのときステップS22に戻る。Yesのとき終了する。
【実施例1】
【0052】
[ストア動作の説明]
図5のステップS16の動作について説明する。図7は、実施例1におけるストア動作を示すフローチャートである。
【実施例1】
【0053】
図8(a)から図8(d)は、実施例1におけるセルアレイを示す模式図である。図8(a)から図8(d)において、セルアレイ20内のサブアレイ22を3×3の9個として説明する。「スリープ」はスリープ状態(すなわち全てのメモリセル10がスリープモードの状態)のサブアレイ22を示し、「シャットダウン」はシャットダウン状態(すなわち全てのメモリセル10がシャットダウンモードの状態)のサブアレイ22を示し、「ストア」はストア動作中のサブアレイ22を示す。サブアレイ22aから22dは複数のサブアレイ22のうち特定のサブアレイを示す。
【実施例1】
【0054】
図9(a)から図9(d)は、実施例1におけるサブアレイを示す模式図である。図9(a)から図9(d)において、サブアレイ22a内のブロック24を4×2の8個として説明する。「スリープ」はスリープ状態のブロック24を示し、「シャットダウン」はシャットダウン状態のブロック24を示し、「ストア」はストア動作中のブロック24を示す。ブロック24aから24dは複数のブロック24のうち特定のブロックを示す。
【実施例1】
【0055】
図10(a)から図10(c)は、実施例1におけるブロックを示す模式図である。図10(a)から図10(c)において、ブロック24a内には複数の行23が設けられている。「スタンバイ」はストアを待機している状態の行23である。「ストア」はストア動作中の行23を示す。行23aから23cは複数の行23のうちの特定の行を示す。
【実施例1】
【0056】
図7に示すように、図5のステップS16において制御部28がストア動作を開始すると、制御部28は、各サブアレイ22に対応するSFSFをバス25を介し読み出す(ステップS40)。制御部28は、SFSFがセットされたサブアレイ22(これをストアフリーサブアレイという)を一括してシャットダウンする(ステップS42)。例えば制御部28は、パワースイッチ30にストアフリーサブアレイの仮想電源電圧VVDDを遮断(または低下)させる。
【実施例1】
【0057】
図8(a)に示すように、制御部28は9個のサブアレイ22のうち3個のサブアレイ22dをシャットダウンする。残りの6個のサブアレイ22はスリープ状態とする。
【実施例1】
【0058】
制御部28は、SFSFがセットされていない(すなわちストア動作を実行する)サブアレイ22からSFBFをバス25を介し読み出す(ステップS44)。ステップS44はステップS40と同時に行ってもよい。制御部28は、ストアを実行する6個のサブアレイ22内のSFBFがセットされたブロック24(これをストアフリーブロックという)を一括してシャットダウンする(ステップS46)。例えば制御部28は、パワースイッチ30にストアフリーブロックの仮想電源電圧VVDDを遮断(または低下)させる。
【実施例1】
【0059】
図9(a)に示すように、サブアレイ22aにおいては、制御部28は8個のブロック24のうち4個のブロック24dをシャットダウンする。残りの4個のブロック24をスリープ状態とする。
【実施例1】
【0060】
制御部28は、ストア動作を実行するサブアレイ22の一つを選択する(ステップS48)。図8(b)に示すように、制御部28は最初のサブアレイ22aを選択し、ストア動作を開始する。
【実施例1】
【0061】
選択されたサブアレイ22aのストア動作として、制御部28は、選択されたサブアレイ22内のストア動作を実行するブロック24を選択する(ステップS50)。図9(b)に示すように、制御部28は最初のブロック24aを選択し、ストア動作を開始する。
【実施例1】
【0062】
選択されたブロック24aのストア動作として、制御部28は、選択されたブロック24a内を行ごとにストア動作する(ステップS52)。
【実施例1】
【0063】
図10(a)に示すように、制御部28は最初の行23aをストアする。他の行23をスタンバイとする。例えば、図1のMOSFETm7およびm8がn型のとき、制御部28は行23aのスイッチ線SRをハイレベルとし、スタンバイ状態の行23のスイッチ線SRをローレベルとする。制御部28は、列方向に延伸する制御線CTRLにストアのための電圧を印加する。これにより、スイッチ線SRがハイレベルかつ制御線CTRLに電圧を印加したメモリセル10において、双安定回路12のデータが強磁性トンネル接合素子MTJ1およびMTJ2に不揮発的にストアされる。制御線CTRLには、1列ずつ電圧を印加してもよいし複数列同時に電圧を印加してもよい。MOSFETm7およびm8がp型のときはスイッチ線SRのハイレベルおよびローレベルが逆になる。行23a内の全てのメモリセル10のストアが終了すると行23aのストア動作が終了する。
【実施例1】
【0064】
図10(b)に示すように、制御部28は次の行23bをストアする。図10(c)に示すように、制御部28は、順に行23をストアし、最後の行23cをストアする。全ての行23のストアが終了すると、ブロック24aのストア動作が終了する。
【実施例1】
【0065】
制御部28は、ブロック24aをシャットダウンする(ステップS54)。制御部28は、選択されたサブアレイ22内の全てのブロックのストア動作が終了したか判断する(ステップS56)。Noのとき、次のブロック24bに進み(ステップS58)、ステップS50に戻る。
【実施例1】
【0066】
図9(c)に示すように、ステップS50において制御部28はブロック24bを選択し、ステップS52においてブロック24bのストア動作を行なう。ステップS54において制御部28はブロック24bをシャットダウンする。
【実施例1】
【0067】
図9(d)に示すように、サブアレイ22a内の最後のブロック24cのストア動作が終了し、全てのブロック24がシャットダウン状態となる。制御部28はステップS56においてYesと判定する。
【実施例1】
【0068】
制御部28は、セルアレイ20内の全てのサブアレイ22のストア動作が終了したか判断する(ステップS60)。Noのとき、次のサブアレイ22bに進み(ステップS62)、ステップS48に戻る。
【実施例1】
【0069】
図8(c)に示すように、ステップS48において制御部28はサブアレイ22bを選択し、ステップS48からS58においてサブアレイ22bのストア動作を行なう。
【実施例1】
【0070】
図8(d)に示すように、セルアレイ20内の最後のサブアレイ22cのストア動作が終了し、全てのサブアレイ22がシャットダウン状態となる。制御部28はステップS60においてYesと判定する。これにより、セルアレイ20のストアおよびシャットダウンが終了する。
【実施例1】
【0071】
[SFSF、SFBFの転送方法]
図7のステップS40およびS44におけるSFSFおよびSFBFの制御部28への転送方法について説明する。
【実施例1】
【0072】
[転送方法1]
図11は、実施例1の転送方法1に用いるSFI回路の例を示すブロック図である。図11に示すように、サブアレイ22は行が2つのブロック24aに分割され、列が4つのブロック24bに分割されている。WLデコーダ31は、行を2つのブロック24aに分割する行アドレスの上位のビットに対応するアドレス線31bと、アドレス線31bがインバータ31aにより反転されたアドレス線31cと、を有する。列デコーダ32は、列を4つのブロック24bに分割する2つの列アドレスのビットに対応するアドレス線32bおよび32dと、アドレス線32bおよび32dがインバータ32aにより反転されたアドレス線32cおよび32eと、を有する。
【実施例1】
【0073】
選択回路41は、ブロック24の個数に対応する個数のAND回路41aを有する。AND回路41aは、アドレス線31bと31cのいずれかのアドレス線、アドレス線32bと32cのいずれかのアドレス線、およびアドレス線32dと32eとのいずれかのアドレス線の3つのアドレス線と、SRAM動作におけるライトイネーブル信号WEのAND処理を行う。ライトイネーブル信号WEがハイレベルのとき、選択されたメモリセル10を有するブロック24に対応するAND回路41aのみハイレベルをSFBFとして記憶部42aに出力する。記憶部42aにはSRAM動作において書き込みされたメモリセル10を有するブロック24の相当するSFBFが記憶される。
【実施例1】
【0074】
選択回路41は、AND回路41aの少なくとも1つがハイレベルを出力すると、ハイレベルをSFSFとして記憶部42bに出力する。記憶部42bには書き込みされたサブアレイ22の相当するSFSFが記憶される。このように、記憶部42bは選択されたサブアレイ22に対応するチップイネーブル信号とライトイネーブル信号との両方がハイレベルのとき、SFSFとしてハイレベルを記憶する。記憶部42aおよび42bは、ハイレベルを保持するとリセットされるまでハイレベルを維持する。
【実施例1】
【0075】
記憶部42aおよび42bはそれぞれパラレル線25aの各信号線に接続される。記憶部42bは0ビット目の信号線に接続され、記憶部42aは1ビット目から8ビット目の信号線に接続される。記憶部42aおよび42bが接続されていない信号線は接地される。読出書込回路34はパラレル線25cに接続されている。
【実施例1】
【0076】
マルチプレクサ43は、パラレル線25aおよび25cのいずれか一方を選択しバス25に接続する。SRAM動作のときにはマルチプレクサ43はパラレル線25cをバス25に接続する。SFSFおよびSFBFを制御部28に転送するとき、マルチプレクサ43はパラレル線25aをバスに接続する。
【実施例1】
【0077】
図12は、実施例1における転送方法を説明するセルアレイの模式図である。図12に示すように、サブアレイ22Aから22Dが設けられている。サブアレイ22Aから22Dに対応するSFI回路40Aから40Dがバス25に接続されている。各SFI回路40Aから40Dは、SFBFを記憶する記憶部42aとSFSFを記憶する記憶部42bを備えている。
【実施例1】
【0078】
図13(a)から図13(d)は、実施例1の転送方法1におけるバスのデータを示す模式図である。SFSFAからSFSFDはそれぞれSFI回路40Aから40Dが出力するSFSFを示し、SFBFAからSFBFDはそれぞれSFI回路40Aから40Dが出力するSFBFを示す。バス25は64ビットのパラレルバスであり、0ビットから63ビットはそれぞれバス25の信号線に対応する。
【実施例1】
【0079】
図13(a)のように、最初のタイミングではサブアレイ22AのSFI回路40Aから0ビット目にSFSFAが出力され、1ビット目から8ビット目にSFBFAが出力される。図13(b)のように、次のタイミングではサブアレイ22BのSFI回路40Bから0ビット目にSFSFBが出力され、1ビット目から8ビット目にSFBFBが出力される。図13(c)のように、SFI回路40CからSFSFCおよびSFBFCが出力される。図13(d)のように、SFI回路40Dから順次SFSFDおよびSFBFDが出力される。
【実施例1】
【0080】
以上のように、転送方法1では、サブアレイ22Aから22Dから制御部28にSFSFおよびSFBFが逐次転送される。
【実施例1】
【0081】
[転送方法2]
図14は、実施例1の転送方法2に用いるSFI回路の例を示すブロック図である。図14に示すように、記憶部42aはパラレル線25aに接続されている。記憶部42bはパラレル線25bに接続されている。マルチプレクサ44はパラレル線25aおよび25bのいずれか一方をパラレル線25dに接続する。マルチプレクサ43はパラレル線25cおよび25dのいずれかをバス25に接続する。これにより、SFI回路40はSFSFとSFBFを異なるタイミングでバス25に出力できる。
【実施例1】
【0082】
例えば、図12のSFI回路40Aでは、記憶部42aはパラレル線25aの0から7ビット目の信号線に接続され、記憶部42bはパラレル線25bの0ビット目の信号線に接続されている。SFI回路40Bでは、記憶部42aはパラレル線25aの8から15ビット目の信号線に接続され、記憶部42bはパラレル線25bの1ビット目の信号線に接続されている。SFI回路40Cでは、記憶部42aはパラレル線25aの16から23ビット目の信号線に接続され、記憶部42bはパラレル線25bの2ビット目の信号線に接続されている。SFI回路40Dでは、記憶部42aはパラレル線25aの24から31ビット目の信号線に接続され、記憶部42bはパラレル線25bの3ビット目の信号線に接続されている。
【実施例1】
【0083】
図15(a)および図15(b)は、実施例1の転送方法2におけるバスのデータを示す模式図である。図15(a)に示すように、図7のステップS40において、SFI回路40Aから40Dのマルチプレクサ44はパラレル線25bをパラレル線25dに接続し、マルチプレクサ43はパラレル線25dをバス25に接続する。これにより、0ビット目から3ビット目にそれぞれサブアレイ22Aから22DのSFSFAからSFSFDがセットされ、制御部28にパラレルに転送される。
【実施例1】
【0084】
図15(b)に示すように、図7のステップS44において、SFI回路40Aから40Dのマルチプレクサ44はパラレル線25aをパラレル線25dに接続し、マルチプレクサ43のパラレル線25dをバス25に接続する。これにより、0ビット目から31ビット目にサブアレイ22Aから22DのSFBFAからSFBFDがセットされ、制御部28にパラレルに転送される。
【実施例1】
【0085】
以上のように、転送方法2では、サブアレイ22Aから22Dから制御部28にSFSFが一括転送され、SFBFが一括転送される。
【実施例1】
【0086】
転送方法2はサブアレイ22およびブロック24が多いときに有利である。例えばサブアレイ22を8Kバイト、ブロック24を1Kバイト、バス25を64ビットとする。セルアレイ20の記憶容量が16Kバイト、32Kバイト、256Kバイト、1Mバイトおよび2Mバイトのとき、転送方法1でSFSFを転送すると、転送回数は、それぞれ2回、4回、32回、128回および256回となる。一方、転送方法2でSFSFを転送すると、転送回数は、それぞれ1回、1回、1回、2回および4回となる。
【実施例1】
【0087】
[シミュレーション]
実施例1に係る電子回路についてBETおよびレイテンシをシミュレーションした。比較例1として、サブアレイ22およびブロック24の一括遮断を行なわず、SFBFがセットされているブロック24のストア動作を順次スキップする場合についてもシミュレーションした。
【実施例1】
【0088】
シミュレーション条件は以下である。SRAM動作期間、ストア期間およびリストア期間における仮想電源電圧VVDDを1.2Vとした。スリープ期間における仮想電源電圧VVDDおよび制御線CTRLの電圧をそれぞれ0.5Vおよび0Vとした。ストア期間におけるスイッチ線SRの電圧を0.75Vとした。ストア期間における制御線CTRLのハイレベルおよびローレベルの電圧をそれぞれ0.45Vおよび0Vとした。サブアレイ22およびブロック24の記憶容量をそれぞれ8Kバイトおよび1Kバイトとした。転送方法を転送方法2とした。
【実施例1】
【0089】
セルアレイ20内の全メモリセルの個数に対するストア動作の不要なストアフリーメモリセルの個数の比をストアフリー比とした。セルアレイ20内に揮発的に書き込まれるメモリセル10は特定のサブアレイ22およびブロック24に集中することを考慮し、ストア動作にかかる時間をレイテンシとした。セルアレイ20の記憶容量が32Kバイト、256Kバイトおよび2Mバイトについてシミュレーションした。
【実施例1】
【0090】
図16(a)から図16(c)は、実施例1および比較例1におけるストアフリー比に対するBETを示す図、図16(d)から図16(f)は、ストアフリー比に対するレイテンシを示す図である。図16(a)に示すように、比較例1では、32Kバイトのときストアフリー比が大きくなるとBETが短くなる。図16(b)および図16(c)のように、256Kバイトおよび2Mバイトと記憶容量が大きくなると、ストアフリー比が大きくなってもBETは小さくならない。これは以下の理由のためである。すなわち、記憶容量が大きくなると、ストア動作を待機するサブアレイ22およびブロック24が大きくなる。ストア動作の待機中にもメモリセル10にはリーク電流が流れる。このため、セルアレイ20全体でのリーク電流が大きく、ストアフリー比が大きくなってもBETは小さくならない。また、図16(d)から図16(f)に示すように、比較例1ではレイテンシはストアフリー比によらず一定である。
【実施例1】
【0091】
図16(a)から図16(c)のように、実施例1では記憶容量によらずストアフリー比が大きくなるとBETが小さくなる。図16(d)から図16(f)のように、実施例1では記憶容量によらずストアフリー比が大きくなるとレイテンシが短くなる。これらは、実施例1では、ストアフリーのサブアレイ22およびブロック24を最初にシャットダウンするためである。
【実施例1】
【0092】
[実施例1の変形例1]
実施例1の変形例1はキャッシュメモリの例である。図17は、実施例1の変形例1に係るキャッシュメモリのブロック図である。図17に示すように、インデックスデコーダ51、タグアレイ52およびキャッシュアレイ50が設けられている。タグアレイ52およびキャッシュアレイ50にはメモリセル10がマトリックス状に配置されている。タグアレイ52およびキャッシュアレイ50は例えば8個のブロック54に分割されている。タグアレイ52にはキャッシュアレイ50に書き込まれたデータのアドレスが書き込まれる。インデックスデコーダ51は、アドレス線51bと、アドレス線51bがインバータ51aにより反転されたアドレス線51cと、を有する。
【実施例1】
【0093】
選択回路41は、上位の3ビットのアドレス線51bおよび51cからSFBFをセットする。図17では、キャッシュアレイ50が行のみでブロック54に分割されている例を示したが、キャッシュアレイ50は、行および列で分割されていてもよい。その他の構成は実施例1および図14と同じであり説明を省略する。
【実施例1】
【0094】
[実施例1の変形例2]
図18は、実施例1の変形例2に係るキャッシュメモリのブロック図である。図18に示すようにブロック54は複数の行が含まれている。複数のブロック54にそれぞれ対応し、タグアレイ52内にSFBFを記憶する複数の記憶部42aが設けられている。列アドレスが入力する列デコーダ53が設けられている。インデックスデコーダ51に行アドレスが入力すると対応するワード線WLが選択される。ライトイネーブル信号がハイレベル(アサート)でかつブロック54内のいずれかのメモリセル10がアクセスされると、アクセスされたブロック54に対応するタグアレイ52内の記憶部42aにSFBFがセットされる。その他の構成は実施例1の変形例1と同じであり説明を省略する。
【実施例1】
【0095】
キャッシュメモリでは、タグアレイ52内のタグをコントロールするダーティビットを用いブロック54内のメモリセルが書き換えられているか判定してもよい。この場合、タグアレイ52はSFBFを記憶する記憶部としての機能を有する。しかし、ダーティビットが多くなる(例えばダーティビットの数が行の数となる)と、記憶部42aおよびパワースイッチ30等の回路規模が大きくなってしまう。よって、実施例の変形例1のように記憶部42aはタグアレイ52と別に設けることが好ましい。また、実施例1の変形例2のように、複数のブロック54は各々複数の行を含み、タグアレイ52内に複数のブロック54にそれぞれ対応する複数の記憶部42aを設けることが好ましい。
【実施例1】
【0096】
実施例1およびその変形例によれば、セルアレイ20は、各々のサブアレイ22(ブロック)が少なくとも2つのメモリセル10を含む複数のサブアレイ22に分割されている。図7のステップS40、S42および図8(a)のように、制御部28は、セルアレイ20をシャットダウンするときに、複数のサブアレイ22からサブアレイ22内のいずれのメモリセルも揮発的に書き換えられていないサブアレイ22dを抽出する。制御部28は、抽出されたサブアレイ22dをシャットダウンする。なお、抽出されたサブアレイ22dのシャットダウンは、サブアレイ22dを一括してシャットダウンする動作であり、サブアレイ22aのストア動作を行う前に、ストアフリーの全てのサブアレイ22dを一度にまたは逐次シャットダウンする動作である。ステップS48からS62および図8(b)から図8(d)のように、制御部28は、抽出されたサブアレイ22dをシャットダウンした後、複数のサブアレイ22のうち残りのサブアレイ22aから22c内のメモリセル10においてストア動作を行う。制御部28は、ストア動作の終了したサブアレイ22aから22cをシャットダウンする。例えば制御部28は、サブアレイ22aから22cを順次ストア動作し、ストア動作が終了したサブアレイ22aから22cを順次シャットダウンする。これにより、ストアフリーのサブアレイ22のストア動作を待機する待機電力を抑制できる。よって、消費電力を抑制でき、BETを短縮できる。また、レイテンシを短くできる。
【実施例1】
【0097】
図12のように、各サブアレイ22Aから22Dにおける記憶部42b(第1記憶部)は、複数のサブアレイ22Aから22Dのうちそれぞれのサブアレイ22Aから22D内の少なくとも1つのメモリセル10が揮発的に書き換えられたことを示すSFSF(第1情報)をそれぞれ記憶する。図7のステップS40のように、制御部28は、複数の記憶部42bに記憶されたSFSFに基づき、複数のサブアレイ22Aから22D内のいずれのメモリセル10も揮発的に書き換えられていないサブアレイ22Aから22Dを抽出する。これにより、制御部28は、いずれのメモリセル10も揮発的に書き換えられていないサブアレイ22Aから22Dを抽出できる。
【実施例1】
【0098】
図12のように、複数のサブアレイ22Aから22Dと接続され、複数のサブアレイ22Aから22Dから読み出すデータおよび書き込むデータを転送するバス25(パラレルバス)が設けられている。図15(a)のように、制御部28は、複数のサブアレイ22Aから22Dのうち異なるサブアレイに対応するSFSFをバス25の異なる信号線を介し同時に取得する。これにより、SFSFの転送回数を少なくできる。
【実施例1】
【0099】
図4において、読出書込回路34(書込回路)は、アドレス信号に対応するメモリセル10にデータを揮発的に書き込む。選択回路41(生成回路)は、アドレス信号に基づきSFSFおよびSFBFを生成する。これにより、SFSFおよびSFBFを容易に生成することができる。
【実施例1】
【0100】
図4のように、複数のサブアレイ22は、各々のブロック24が少なくとも2つのメモリセル10を含むように複数のブロック24(サブブロック)に分割されている。図7のステップS44、S46および図9(a)のように、制御部28は、複数のブロック24からブロック24内のいずれのメモリセルも揮発的に書き換えられていないブロック24dを抽出する。ステップS46のように、制御部28は、抽出されたブロック24dをシャットダウンする。なお、抽出されたブロック24dのシャットダウンはブロック24dを一括してシャットダウンする動作であり、サブアレイ22aのストア動作の前に全てのストアフリーのサブアレイ22dとサブアレイ22aから22c内のストアフリーの全てのブロック24dを一度にまたは逐次シャットダウンする動作である。ステップS50からS58、図9(b)から図9(d)のように、制御部28は、抽出されたブロック24dをシャットダウンした後、複数のブロック24のうち残りのブロック24aから24cにおいてストア動作を行う。制御部28は、ストア動作の終了したブロック24aから24cをシャットダウンする。例えば制御部28は、ブロック24aから24cを順次ストア動作し、ストア動作が終了したブロック24aから24cを順次シャットダウンする。このように、シャットダウンする領域を2層構造とすることにより、より消費電力を抑制できる。シャットダウンする階層は、1層でもよいし、3層以上でもよい。シャットダウンする階層は、消費電力の削減と回路規模の削減を考慮して決定すればよい。
【実施例1】
【0101】
図7のステップS54および図9(d)のように、制御部28は、サブアレイ22aから22cのうち次のサブアレイ22bのストア動作を行う前に、ストア動作の終了したブロック24aから24dをシャットダウンする。これにより、より消費電力を抑制できる。
【実施例1】
【0102】
図12のように、各サブアレイ22Aから22Dにおける記憶部42a(第2記憶部)は、複数のブロック24のうちそれぞれのブロック24内の少なくとも1つのメモリセルが揮発的に書き換えられたことを示すSFBF(第2情報)をそれぞれ記憶する。図7のステップS44のように、制御部28は、複数の記憶部42aに記憶されたSFBFに基づき、複数のブロック24からブロック内のいずれのメモリセルも揮発的に書き換えられていないブロックを抽出する。これにより、制御部28は、いずれのメモリセル10も揮発的に書き換えられていないブロック24を抽出できる。
【実施例1】
【0103】
図15(b)のように、制御部28は、複数のブロック24のうち異なるサブアレイ22Aから22Dに対応するSFBFをバス25の異なる信号線を介し同時に取得する。これにより、SFBFの転送回数を少なくできる。
【実施例1】
【0104】
制御部28は、図8(a)のように抽出されたサブアレイ22dを全てシャットダウンした後、図8(b)から図8(d)のように残りのサブアレイ22aから22cのメモリセルにおいてストア動作を行う。これにより、より消費電力を抑制できる。
【実施例1】
【0105】
制御部28は、図9(a)のように抽出されたブロック24dを全てシャットダウンした後、図9(b)から図9(d)のように残りのブロック24aから24cのメモリセルにおいてストア動作を行う。これにより、より消費電力を抑制できる。
【実施例1】
【0106】
制御部28は、いずれのメモリセルも揮発的に書き換えられていないサブアレイ22dおよび/またはブロック24dを抽出しているが、不揮発的にストアする必要のないサブアレイ22および/またはブロック24を抽出してもよい。
【実施例1】
【0107】
実施例1およびその変形例において、MTJ1およびMTJ2がノードQおよびQBにそれぞれ接続される例を説明したが、ノードQまたはQBにMTJ1およびMTJ2のいずれか一方が接続されていればよい。メモリセルは、双安定回路12と不揮発性素子を有していればよい。不揮発性素子としてMTJを例に説明したが、不揮発性素子としては巨大磁気抵抗(GMR)素子、ReRAM(Resistance Random Access Memory)に用いられるような可変抵抗素子、または、PRAM(Phase change RAM)に用いられる相変化素子を用いることができる。
【実施例1】
【0108】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0109】
10 メモリセル
12 双安定回路
20 セルアレイ
22、22a-22d、22A-22D サブアレイ
24、24a-24d ブロック
28 制御部
30 パワースイッチ
41 選択回路
42a、42b 記憶部
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8
【図10】
9
【図11】
10
【図12】
11
【図13】
12
【図14】
13
【図15】
14
【図16】
15
【図17】
16
【図18】
17