(57)【要約】【課題】高速かつ高い書き換え耐性の不揮発性ＲＡＭを提案する。【解決手段】実施形態に係わる不揮発性ＲＡＭは、メモリセルアレイ22と、書き込み時にメモリセルアレイ22をアクセス可能である第１のアクセス回路17-0〜21-0と、読み出し時にメモリセルアレイ22をアクセス可能であり、第１のアクセス回路17-0〜21-0と並列に動作可能な第２のアクセス回路17-1〜21-1と、を備え、書き込みパルスのパルス幅は、読み出しパルスのパルス幅よりも長い。【選択図】図４
2017168167.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイと、
書き込み時に前記メモリセルアレイをアクセス可能である第１のアクセス回路と、
読み出し時に前記メモリセルアレイをアクセス可能であり、前記第１のアクセス回路と並列に動作可能な第２のアクセス回路と、
を具備し、
書き込みパルスのパルス幅は、読み出しパルスのパルス幅よりも長い
不揮発性ＲＡＭ。
【請求項２】
前記書き込み時に、書き込みアドレス及び書き込みデータを記憶する書き込みバッファを含み、前記読み出し時に、前記読み出しアドレスが前記書き込みアドレスに一致する場合、前記書き込みバッファからの前記書き込みデータを読み出しデータとして出力するインターフェース部をさらに具備する請求項１に記載の不揮発性ＲＡＭ。
【請求項３】
前記メモリセルアレイは、複数のブロックを備え、
前記第１及び第２のアクセス回路は、それぞれ、前記複数のブロックに共通の第１のワード線と、前記複数のブロックに対応する複数の第２のワード線と、前記第１のワード線及び前記複数の第２のワード線間に接続される複数のデコーダと、を備える、
請求項１に記載の不揮発性ＲＡＭ。
【請求項４】
前記第１のアクセス回路は、書き込みアドレスに基づき前記書き込みの対象となる第１のメモリセルをアクセスし、前記第２のアクセス回路は、読み出しアドレスに基づき前記読み出しの対象となる第２のメモリセルをアクセスし、
前記第１及び第２のメモリセルが同一のロウに配置され、かつ、前記第１及び第２のメモリセルが同一のメモリセルでない場合、前記書き込み及び前記読み出しの一方を中断する、
請求項１に記載の不揮発性ＲＡＭ。
【請求項５】
第１及び第２の書き込みパルスを生成可能であり、前記書き込み時に、パルス選択信号に基づいて、前記第１及び第２の書き込みパルスのうちの１つを前記メモリセルアレイに供給する書き込み回路をさらに具備する、請求項１乃至４のいずれか１項に記載の不揮発性ＲＡＭ。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、不揮発性ＲＡＭに関する。
【背景技術】
【０００２】
プロセッサの性能向上は、例えば、キャッシュメモリのメモリ容量を増やすことにより実現可能である。キャッシュメモリは、一般的に、ＳＲＡＭ（スタティックランダムアクセスメモリ）などの揮発性ＲＡＭを用いる。このため、キャッシュメモリのメモリ容量を増やすと、システムの消費電力が増大する。そこで、キャッシュメモリとして、揮発性ＲＡＭに代えて、ＭＲＡＭ（マグネティックランダムアクセスメモリ）などの不揮発性ＲＡＭを用いることが検討されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−５５６７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実施形態は、高速(high speed)、かつ、高い書き換え耐性（high endurance）の不揮発性ＲＡＭを提案する。
【課題を解決するための手段】
【０００５】
実施形態によれば、不揮発性ＲＡＭは、メモリセルアレイと、書き込み時に前記メモリセルアレイをアクセス可能である第１のアクセス回路と、読み出し時に前記メモリセルアレイをアクセス可能であり、前記第１のアクセス回路と並列に動作可能な第２のアクセス回路と、を備え、書き込みパルスのパルス幅は、読み出しパルスのパルス幅よりも長い。
【図面の簡単な説明】
【０００６】
【図１】システムの例を示す図。
【図２】書き込み時間と書き込み電圧の関係を示す図。
【図３】書き込み電圧と破壊時間の関係を示す図。
【図４】不揮発性ＲＡＭの例を示す図。
【図５】複数の書き込みパルスの例を示す図。
【図６】読み出しと書き込みの並列動作の例を示す図。
【図７】アドレス処理部の例を示す図。
【図８】書き込みバッファの例を示す図。
【図９】書き込みバッファ内のメモリ部の例を示す図。
【図１０】出力セレクタの例を示す図。
【図１１】メモリセルアレイの例を示す図。
【図１２】同一ロウの２つのメモリセルに対して読み出し／書き込みを行う場合を示す図。
【図１３】分割ワード線構造の第１の例を示す図。
【図１４】同一ロウの２つのメモリセルに対して読み出し／書き込みを行う場合を示す図。
【図１５】分割ワード線構造の第２の例を示す図。
【図１６】メモリセルの例を示す図。
【図１７】アドレス処理部の例を示す図。
【図１８】コマンド処理部の例を示す図。
【図１９】コマンド処理部内のＷＥ制御部の例を示す図。
【発明を実施するための形態】
【０００７】
以下、図面を参照しながら実施例を説明する。  
（実施例）  
図１は、システムの例を示している。
【０００８】
本実施例が適用されるシステムは、制御部１０と、制御部１０により制御される不揮発性ＲＡＭ１１と、を備える。制御部１０は、例えば、ホストやコントローラなどである。制御部１０と不揮発性ＲＡＭ１１は、互いに独立したチップであってもよいし、プロセッサなどの１チップ内に含まれていてもよい。不揮発性ＲＡＭ１１は、マルチポート不揮発性ＲＡＭ、例えば、マルチポートＭＲＡＭである。マルチポートとは、読み出しポートと書き込みポートを有すること、即ち、読み出しと書き込みを並列動作させることが可能なことを意味する。
【０００９】
不揮発性ＲＡＭ１１の書き込みにおいて、例えば、図２に示すように、書き込み電圧は、書き込み時間が短いほど、即ち、書き込みが高速化されるほど、高くなる。特に、書き込み時間が10nsec又はそれよりも小さいエリアでは、書き込み時間が短くなると、書き込み電圧が急激に上昇する。
【００１０】
また、書き込み電圧の上昇は、不揮発性ＲＡＭ１１の書き換え耐性（endurance）を悪化させる。例えば、図３に示すように、書き込み電圧の上昇により、記憶素子、例えば、ＭＲＡＭの場合は磁気抵抗効果素子の劣化が早く進み、記憶素子の寿命（破壊時間）が指数関数的に短くなる。
【００１１】
しかし、例えば、不揮発性ＲＡＭ１１をキャッシュメモリとして使用する場合、従来のキャッシュメモリ、例えば、ＳＲＡＭと同等の高速書き込みを優先すると、書き込み電圧を低下させることはできない。この場合、上述のように、不揮発性ＲＡＭ１１の書き換え耐性が悪化する。一方、キャッシュメモリは、アクセス頻度がメインメモリやストレージメモリなどと比べ非常に高いため、記憶素子の劣化が進み易い。このため、書き換え耐性を優先し、書き込み電圧を低下させると、書き込み時間が長くなる。また、書き込みを行っている間、読み出しが制限される。
【００１２】
このように、不揮発性ＲＡＭ１１においては、高速化と書き換え耐性の向上とがトレードオフの関係にある。
【００１３】
そこで、本実施例では、不揮発性ＲＡＭ１１の高速化と書き換え耐性の向上とを同時に実現する技術を提案する。
【００１４】
まず、制御部１０は、システムが使用される状況（不揮発性ＲＡＭ１１に要求される特性）に応じて、書き込みパルス制御を行う。また、不揮発性ＲＡＭ１１は、複数の書き込みパルス（書き込み電圧）を生成可能な書き込み回路を備える。この書き込み回路は、制御部１０からの書き込みパルス制御に基づき、複数の書き込みパルスのうちの１つを選択する。
【００１５】
例えば、制御部１０は、高速化が優先される状況と判断すると、不揮発性ＲＡＭ１１に、高い書き込み電圧及び短いパルス幅の書き込みパルスを用いて書き込みを行うように指示する。また、制御部１０は、書き換え耐性の向上が優先される状況と判断すると、不揮発性ＲＡＭ１１に、低い書き込み電圧及び長いパルス幅の書き込みパルスを用いて書き込みを行うように指示する。
【００１６】
これにより、高速化が優先される状況では、高速書き込みを実現できる。また、書き換え耐性の向上が優先される状況では、書き換え耐性の向上を実現できる。
【００１７】
次に、制御部１０は、読み出し／書き込み並列制御を行う。また、不揮発性ＲＡＭ１１は、読み出しと書き込みを並列動作させることが可能なように、マルチポート、即ち、読み出しポートと書き込みポートを有する。
【００１８】
この場合、書き換え耐性の向上が優先され、低い書き込み電圧及び長いパルス幅の書き込みパルスを用いて書き込みが行われても、書き込みを行っている間、読み出しが制限されることがない。同様に、高速化が優先され、高い書き込み電圧及び短いパルス幅の書き込みパルスを用いて書き込みを行っている間も、読み出しが制限されることがない。
【００１９】
このように、読み出しと書き込みを並列動作させることにより、高速化を実現できる。特に、低い書き込み電圧及び長いパルス幅の書き込みパルスを選択したときは、高速化と書き換え耐性の向上とを同時に実現できる。
【００２０】
（ブロック図）  
図４は、不揮発性ＲＡＭの例を示している。
【００２１】
不揮発性ＲＡＭ１１は、マルチポートメモリである。不揮発性ＲＡＭ１１は、インターフェース部１１ａと、メモリセルアレイ部１１ｂと、を備える。
【００２２】
インターフェース部１１ａは、例えば、コマンド処理部１２と、書き込みバッファ１３と、アドレス処理部１４と、出力セレクタ１５と、を備える。
【００２３】
メモリセルアレイ部１１ｂは、例えば、書き込み回路１６−０と、読み出し回路１６−１と、マルチポートメモリセルアレイ２２と、を備える。また、メモリセルアレイ部１１ｂは、読み出しと書き込みを並列に行うことが可能なように、即ち、並列アクセスが可能なように、書き込み時にメモリセルアレイ２２内のメモリセルをアクセスする第１のアクセス回路と、読み出し時にメモリセルアレイ２２内のメモリセルをアクセスする第２のアクセス回路と、を備える。
【００２４】
第１のアクセス回路は、ワード線デコーダ１７−０と、ワード線ドライバ１８−０と、ビット線デコーダ１９−０と、ビット線ドライバ２０−０と、マルチプレクサ（ＭＵＸ）２１−０と、を備える。第２のアクセス回路は、ワード線デコーダ１７−１と、ワード線ドライバ１８−１と、ビット線デコーダ１９−１と、ビット線ドライバ２０−１と、マルチプレクサ（ＭＵＸ）２１−１と、を備える。
【００２５】
コマンド処理部１２は、書き込みや、読み出しなどのコマンドＣＭＤを受け付ける。例えば、コマンド処理部１２は、書き込みコマンドを受け付けると、書き込みイネーブル信号ＷＥを出力し、読み出しコマンドを受け付けると、読み出しイネーブル信号ＲＥを出力する。また、コマンド処理部１２は、書き込みパルスを選択するコマンドを受け付けると、パルス選択信号ＰＳを出力する。
【００２６】
書き込みパルスを選択するコマンドは、例えば、図１の制御部１０から書き込みパルス制御として供給される。書き込みイネーブル信号ＷＥ及びパルス選択信号ＰＳは、書き込み回路１６−０に入力される。
【００２７】
書き込み回路１６−０は、複数の書き込みパルス（書き込み電圧）を生成可能である。書き込み回路１６−０は、パルス選択信号ＰＳに基づき、複数の書き込みパルスのうちの１つを選択する。例えば、図５に示すように、書き込み回路１６−０が２つの書き込みパルスＷＰ０，ＷＰ１を生成可能であるとき、書き込み回路１６−０は、パルス選択信号ＰＳに基づき、２つの書き込みパルスＷＰ０，ＷＰ１のうちの１つを選択する。
【００２８】
ここで、例えば、図５に示すように、２つの書き込みパルスＷＰ０，ＷＰ１は、共に、クロックＣＬＫに基づいて生成される。書き込みパルスＷＰ０は、書き込み電圧Ｖｐ０及びパルス幅Ｗｐ０を有する。パルス幅Ｗｐ０は、クロックＣＬＫの１周期に相当する。書き込みパルスＷＰ０は、高速化が優先される状況に使用される。
【００２９】
また、書き込みパルスＷＰ１は、書き込み電圧Ｖｐ１及びパルス幅Ｗｐ１を有する。書き込み電圧Ｖｐ１は、書き込み電圧Ｖｐ０よりも小さい。パルス幅Ｗｐ１は、パルス幅Ｗｐ０よりも長い。パルス幅Ｗｐ１は、クロックＣＬＫの３周期に相当する。書き込みパルスＷＰ１は、書き換え耐性の向上が優先される状況に使用される。
【００３０】
選択された書き込みパルスＷＰは、ビット線ドライバ２０−０に供給される。ビット線ドライバ２０−０は、書き込みデータＷＤの値に応じた向きで、書き込みパルスＷＰをメモリセルアレイ２２に供給する。
【００３１】
書き込みパルスＷＰのパルス幅が可変の場合、例えば、書き換え耐性を向上させるために、長いパルス幅Ｗｐ１を持つ書き込みパルスＷＰ１を選択すると、書き込みサイクル（書き込み時間）が長くなる。この場合、書き込みパルスＷＰのパルス幅が固定の場合に比べて、書き込みを行っている間、読み出しコマンドを受け付けられないというストール(stall)現象が問題となる。
【００３２】
また、書き込みパルスＷＰのパルス幅が固定（１種類）の場合であっても、通常、書き込みサイクルは、読み出しサイクルよりも長い。この場合にも、書き込みを行っている間、読み出しコマンドを受け付けられないというストール現象が問題となる。
【００３３】
例えば、図６の比較例（シングルポート）に示すように、書き込みサイクルＣｗが読み出しサイクルＣｒよりも長い場合、例えば、読み出しサイクルＣｒがクロックの１周期に対応し、かつ、書き込みサイクルＣｗがクロックの３周期に対応する場合、読み出し（Ｒ）中に書き込み（Ｗ）を割り込ませると、書き込み（Ｗ）を行っている間（t0〜t2）、読み出し（Ｒ）を行うことができない。
【００３４】
これに対し、図６の実施例（マルチポート）に示すように、読み出し（Ｒ）と書き込み（Ｗ）とを並列動作させると、例えば、第１のサイクルの開始時刻t0において書き込みコマンドを受け付けた後、書き込み（Ｗ）が終了していなくても、これに続く第２のサイクルの開始時刻t1において読み出しコマンドを受け付けることができる。
【００３５】
ここでは、書き込みパルスＷＰ０を用いたときの書き込みサイクルＣｗ０が読み出しサイクルＣｒと同じ（クロックの１周期）であり、書き込みパルスＷＰ１を用いたときの書き込みサイクルＣｗ１が読み出しサイクルＣｒの３倍（クロックの３周期）である例を示す。
【００３６】
図６の実施例では、通常、書き込みパルスＷＰ１を用いた書き込み（書き込みサイクルＣｗ１）Ｗを行い、例えば、書き込み処理が頻発し、かつ、書き込みバッファが書き込みデータにより満たされた状態になった場合、即ち、マルチポートでもストール現象が発生する懸念が発生した場合に、書き込みパルスＷＰ０を用いた書き込み（書き込みサイクルＣｗ０）Ｗを行うことができる。
【００３７】
図６のタイミングは、コマンド処理部１２が、読み出しコマンドと書き込みコマンドを同時に受け付けることができない場合を前提としているが、これに代えて、コマンド処理部１２は、読み出しコマンドと書き込みコマンドを同時に受け付け可能であってもよい。
【００３８】
書き込みバッファ１３は、書き込みデータ（入力データ）Ｄｉｎのバッファとして機能し、書き込みデータを一時的に記憶する。書き込みバッファ１３は、書き込みアドレスＡＷ及び書き込みデータＤｉｎを蓄積する。書き込みバッファ１３は、書き込みアドレスＡＷＡを、順次、ワード線デコーダ１７−０及びビット線デコーダ１９−０に出力し、書き込みデータＷＤを、順次、書き込み回路１６−０に出力する。アドレス処理部１４は、書き込みアドレスＡＷ及び読み出しアドレスＡＲのバッファとして機能する。出力セレクタ１５は、読み出しデータ（出力データ）Ｄｏｕｔを出力する。
【００３９】
マルチポート不揮発性ＲＡＭ１１では、読み出しと書き込みが並列で行われる。この場合、同一のアドレス（同一のメモリセル）に対して読み出しと書き込みが並行に行われるときの処理を検討しなければならない。なぜなら、同一のアドレスに対して読み出しと書き込みを並行して行うと、読み出しデータと書き込みデータが衝突し、正常動作が行えなくなるからである。
【００４０】
これを防ぐため、本実施例では、コマンド処理部１２が読み出しコマンドを受け付けたときの処理について工夫を施す。例えば、コマンド処理部１２が読み出しコマンドを受け付けたとき、アドレス処理部１４は、読み出しアドレスＡＲを、書き込みバッファ１３内に蓄積された書き込みアドレスＡＷと比較し、両者が一致するときは、通常の読み出し動作（メモリセルからのデータの読み出し）を行わずに、書き込みバッファ１３から読み出しデータＲＤＢを取得するための処理を行う。
【００４１】
また、読み出しコマンドと書き込みコマンドを同時に受け付け可能な場合には、読み出しアドレスＡＲと書き込みアドレスＡＷとを比較してもよい。
【００４２】
例えば、図７に示すように、アドレス処理部１４は、アドレスバッファＡＤＢと、比較回路２３と、インバータ回路２４と、アンド回路２５と、を備える。
【００４３】
比較回路２３は、コマンド処理部１２から読み出しイネーブル信号ＲＥを受けると、読み出しアドレスＡＲと書き込みアドレスＡＷと比較する。両者が一致するとき、比較回路２３は、例えば、一致信号（出力信号）ＷＢＯとして、“１”（アクティブ）を出力する。一致信号ＷＢＯが“１”であるということは、書き込みバッファ１３から読み出しデータＲＤＢを取得する、ということを意味する。
【００４４】
この時、インバータ回路２４の出力信号は、“０”である。このため、アンド回路２５の出力信号は、“０”であり、読み出しイネーブル信号ＲＥにかかわらず、読み出し回路１６−１に供給される読み出しイネーブル信号ＲＥ’は、“０”（ノンアクティブ）である。従って、読み出し回路１６−１は、通常の読み出し動作を行わない。
【００４５】
一方、読み出しアドレスＡＲと書き込みアドレスＡＷとが一致しないとき、比較回路２３は、例えば、一致信号（出力信号）ＷＢＯとして、“０”（ノンアクティブ）を出力する。一致信号ＷＢＯが“０”であるということは、マルチポートメモリセルアレイ２２内のメモリセルから読み出しデータＲＤを読み出す、ということを意味する。
【００４６】
この時、インバータ回路２４の出力信号は、“１”である。また、アンド回路２５の出力信号は、“１”である。このため、読み出しイネーブル信号ＲＥは、そのまま、読み出しイネーブル信号ＲＥ’として、読み出し回路１６−１に出力される。即ち、読み出しイネーブル信号ＲＥが“１”（アクティブ）であれば、読み出しイネーブル信号ＲＥ’も、“１”（アクティブ）である。従って、読み出し回路１６−１は、通常の読み出し動作を行う。
【００４７】
読み出しアドレスＡＲ及び一致信号ＷＢＯは、書き込みバッファ１３に入力される。書き込みバッファ１３は、一致信号ＷＢＯが“１”のとき、読み出しアドレスＡＲに一致する書き込みアドレスＡＷに対応する書き込みデータＤｉｎを読み出しデータＲＤＢとして出力セレクタ１５に出力する機能を備える。このような機能は、例えば、連想メモリ(CAM: Content Addressable Memory)により実現可能である。
【００４８】
書き込みバッファ１３は、例えば、図８に示すように、制御部２７と、メモリ部２６と、を備える。制御部２７は、一致信号ＷＢＯ及び読み出しアドレスＡＲに基づき、アクセス信号φacを出力する。アクセス信号φacは、メモリ部２６から、読み出しアドレスＡＲに一致する書き込みアドレスＡＷに対応する書き込みデータＤｉｎを読み出すためのアクセス信号である。
【００４９】
例えば、図９に示すように、メモリ部２６は、書き込みアドレスＡＷ及び書き込みデータＤｉｎを、順次、蓄積することが可能なように、複数のエントリを備える。同図では、時系列で、書き込みアドレスＡＷが、ＡＷ０，ＡＷ１，ＡＷ２，…ＡＷｍの順番で蓄積され、同様に、書き込みデータＤｉｎが、Ｄｉｎ０，Ｄｉｎ１，Ｄｉｎ２，…Ｄｉｎｍの順番で蓄積される例を示す。この場合、書き込みアドレスＡＷＡ及び書き込みデータＷＤも、その順番で出力される。
【００５０】
ここで、メモリ部２６は、アクセス信号φacを受けると、読み出しアドレスＡＲに一致する書き込みアドレスＡＷを検索し、読み出しアドレスＡＲに一致する書き込みアドレスＡＷに対応する書き込みデータＤｉｎを出力する。例えば、読み出しアドレスＡＲに一致する書き込みアドレスがＡＷｋであるとき、メモリ部２６は、書き込みアドレスＡＷｋに対応する書き込みデータＤｉｎｋを読み出しデータＲＤＢとして出力する。
【００５１】
読み出しデータＲＤＢは、出力セレクタ１５に転送される。
【００５２】
出力セレクタ１５は、例えば、図１０に示すように、選択回路（マルチプレクサ）２９を備える。選択回路２９は、選択信号としての読み出しイネーブル信号ＲＥ’に基づいて、読み出し回路１６−１からの読み出しデータＲＤ、及び、書き込みバッファ１３からの読み出しデータＲＤＢのうちの１つを、読み出しデータ（出力データ）Ｄｏｕｔとして出力する。
【００５３】
即ち、読み出しイネーブル信号ＲＥ’が“１”のときは、読み出し回路１６−１が通常の読み出し動作を行う。従って、出力セレクタ１５は、読み出し回路１６−１からの読み出しデータＲＤを読み出しデータＤｏｕｔとして出力する。また、読み出しイネーブル信号ＲＥ’が“０”のときは、書き込みバッファ１３から読み出しデータＲＤＢが出力されていることを意味する。従って、出力セレクタ１５は、書き込みバッファ１３からの読み出しデータＲＤＢを読み出しデータＤｏｕｔとして出力する。
【００５４】
図１０では、読み出しイネーブル信号ＲＥ’に基づき、２つの読み出しデータＲＤ，ＲＤＢのうちの１つを選択するが、これに代えて、一致信号ＷＢＯに基づき２つの読み出しデータＲＤ，ＲＤＢのうちの１つを選択することも可能である。この場合、読み出しイネーブル信号ＲＥ’に代えて、一致信号ＷＢＯの反転信号を選択回路２９に入力させればよい。
【００５５】
マルチポートメモリセルアレイ２２の例を説明する。
【００５６】
例えば、図１１に示すように、マルチポートメモリセルアレイ２２は、複数のメモリセルＭＣ０，…ＭＣｉと、書き込みのための複数のワード線ＷＬ００，…ＷＬ０ｉと、書き込みのための複数のビット線ＢＬ０，ｂＢＬ０と、読み出しのための複数のワード線ＷＬ１０，…ＷＬ１ｉと、読み出しのための複数のビット線ＢＬ１，ｂＢＬ１と、を備える。
【００５７】
複数のワード線ＷＬ００，…ＷＬ０ｉは、ワード線ドライバ１８−０により駆動され、複数のビット線ＢＬ０，ｂＢＬ０は、ビット線ドライバ２０−０により駆動される。複数のワード線ＷＬ１０，…ＷＬ１ｉは、ワード線ドライバ１８−１により駆動され、複数のビット線ＢＬ１，ｂＢＬ１は、ビット線ドライバ２０−１に接続される。ビット線ドライバ２０−１は、例えば、読み出しデータの値を判別するセンスアンプを備える。
【００５８】
複数のメモリセルＭＣ０，…ＭＣｉの各々は、４つの選択トランジスタ（FET: field effect transistor）と、１つの記憶素子（例えば、磁気抵抗効果素子）と、を備える。
【００５９】
例えば、メモリセルＭＣ０は、記憶素子ＲＥ０と、記憶素子ＲＥ０及びビット線ＢＬ０間の選択トランジスタＴ００と、記憶素子ＲＥ０及びビット線ｂＢＬ０間の選択トランジスタｂＴ００と、記憶素子ＲＥ０及びビット線ＢＬ１間の選択トランジスタＴ０１と、記憶素子ＲＥ０及びビット線ｂＢＬ１間の選択トランジスタｂＴ０１と、を備える。
【００６０】
但し、２つの選択トランジスタＴ００、ｂＴ００のうちの１つは、省略可能である。また、２つの選択トランジスタＴ０１、ｂＴ０１のうちの１つは、省略可能である。
【００６１】
このように、読み出しデータの経路と書き込みデータの経路とを完全に分離することにより、読み出しデータと書き込みデータが衝突することを防止できる。
【００６２】
但し、例えば、図１２に示すように、書き込みの対象となるメモリセルＭＣ_writeと、読み出しの対象となるメモリセルＭＣ_readとが、同一のロウに配置される場合、読み出しデータと書き込みデータが衝突する、即ち、これら２つのメモリセルＭＣ_write，ＭＣ_readが電気的にショートされるため、工夫が必要である。
【００６３】
従って、例えば、そのような場合、書き込みを一時的に中断する。そして、読み出しが終了した後に書き込みを行う。当然、これに代えて、読み出しを一時的に中断してもよい。
【００６４】
書き込みの対象となるメモリセルＭＣ_writeと、読み出しの対象となるメモリセルＭＣ_readとが、同一のロウに配置されているか否かは、読み出しアドレスＡＲＡのうち読み出しロウアドレスが、書き込みアドレスＡＷＡのうち書き込みロウアドレスに一致するか否か、により判断可能である。
【００６５】
両者が一致するとき、例えば、図４のインターフェース部１１ａは、書き込みを一時的に中断する。但し、読み出しアドレスが書き込みアドレスに完全一致する場合（ロウアドレス及びカラムアドレスの双方が一致する場合）を除く。
【００６６】
読み出しアドレスが書き込みアドレスに完全一致する場合は、上述したように、読み出しデータは、書き込みバッファから得られるため、書き込みを一時的に中断する必要がないからである。即ち、書き込みバッファから読み出しデータを出力する動作に並行して、書き込み動作を行うことができる。
【００６７】
（分割ワードライン構造(Divided word line structure)  
本実施例は、分割ワードライン構造と相性がよい。分割ワード線構造とは、グローバルな第１のワード線と、第１のワード線に共通に接続されるローカルな複数の第２のワード線と、複数の第２のワード線を互いに独立にアクセス可能とするデコーダと、を備えたメモリセルアレイ構造のことである。
【００６８】
図１３は、分割ワード線構造の第１の例を示している。
【００６９】
メモリセルアレイ２２は、複数のブロックＢＫ０，ＢＫ１，…ＢＫｊを備える。グローバルなワード線ＷＬ００〜ＷＬ０ｉは、複数のブロックＢＫ０，ＢＫ１，…ＢＫｊに共通に設けられ、かつ、書き込みのためのワード線ドライバ１８−０により駆動される。
【００７０】
複数のブロックＢＫ０，ＢＫ１，…ＢＫｊは、それぞれ、ローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを備える。グローバルなワード線ＷＬ００〜ＷＬ０ｉは、サブデコーダＳＤを介して、ローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊに接続される。
【００７１】
サブデコーダＳＤは、例えば、書き込みアドレスの一部（カラムアドレスの一部）ＡＷＡ’に基づいて、ローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを互いに独立にアクセス可能である。
【００７２】
同様に、グローバルなワード線ＷＬ１０〜ＷＬ１ｉは、複数のブロックＢＫ０，ＢＫ１，…ＢＫｊに共通に設けられ、かつ、読み出しのためのワード線ドライバ１８−１により駆動される。
【００７３】
複数のブロックＢＫ０，ＢＫ１，…ＢＫｊは、それぞれ、ローカルなワード線ＷＬ１０−０，ＷＬ１０−１,…ＷＬ１０−ｊ，ＷＬ１ｉ−０，ＷＬ１ｉ−１,…ＷＬ１ｉ−ｊを備える。グローバルなワード線ＷＬ１０〜ＷＬ１ｉは、サブデコーダＳＤを介して、ローカルなワード線ＷＬ１０−０，ＷＬ１０−１,…ＷＬ１０−ｊ，ＷＬ１ｉ−０，ＷＬ１ｉ−１,…ＷＬ１ｉ−ｊに接続される。
【００７４】
サブデコーダＳＤは、例えば、読み出しアドレスの一部（カラムアドレスの一部）ＡＲＡ’に基づいて、ローカルなワード線ＷＬ１０−０，ＷＬ１０−１,…ＷＬ１０−ｊ，ＷＬ１ｉ−０，ＷＬ１ｉ−１,…ＷＬ１ｉ−ｊを互いに独立にアクセス可能である。
【００７５】
メモリセルＭＣ０，…ＭＣｉの構造（ビット線の構造を含む）は、例えば、図１１の例と同じである。
【００７６】
このような分割ワード線構造によれば、書き込みの対象となるメモリセルを有するブロックと、読み出しの対象となるメモリセルを有するブロックと、が異なれば、書き込みと読み出しを完全に並行して行うことができる。即ち、同一ビット線において、読み出しデータと書き込みデータが衝突することがないため、読み出しアクセス動作と書き込みアクセス動作は、同時に行うことができる。
【００７７】
但し、例えば、図１４に示すように、書き込みの対象となるメモリセルＭＣ_writeと、読み出しの対象となるメモリセルＭＣ_readとが、同一のロウに配置される場合、読み出しデータと書き込みデータが衝突する、即ち、これら２つのメモリセルＭＣ_write，ＭＣ_readが電気的にショートされるため、工夫が必要である。
【００７８】
従って、例えば、そのような場合、書き込みを一時的に中断する。そして、読み出しが終了した後に書き込みを行う。当然、これに代えて、読み出しを一時的に中断してもよい。
【００７９】
書き込みの対象となるメモリセルＭＣ_writeと、読み出しの対象となるメモリセルＭＣ_readとが、同一のロウに配置されているか否かは、例えば、図１３のローカルなワード線ＷＬ１０−０，ＷＬ１０−１,…ＷＬ１０−ｊ，ＷＬ１ｉ−０，ＷＬ１ｉ−１,…ＷＬ１ｉ−ｊを選択するアドレスＡＲＡ’が、ローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを選択するアドレスＡＷＡ’に一致するか否か、により判断可能である。
【００８０】
両者が一致するとき、例えば、図４のインターフェース部１１ａは、書き込みを一時的に中断する。但し、読み出しアドレスが書き込みアドレスに完全一致する場合を除く。読み出しアドレスが書き込みアドレスに完全一致する場合は、上述したように、読み出しデータは、書き込みバッファから得られるため、書き込みを一時的に中断する必要がないからである。即ち、書き込みバッファから読み出しデータを出力する動作に並行して、書き込み動作を行うことができる。
【００８１】
図１５は、分割ワード線構造の第２の例を示している。
【００８２】
第２の例は、第１の例と比べると、書き込みのためのワード線ドライバ１８−０と読み出しのためのワード線ドライバ１８−１とを共有化した点に特徴を有する。
【００８３】
これに伴い、例えば、図１３のグローバルなワード線ＷＬ１０〜ＷＬ１ｉ、ローカルなワード線ＷＬ１０−０，ＷＬ１０−１,…ＷＬ１０−ｊ，ＷＬ１ｉ−０，ＷＬ１ｉ−１,…ＷＬ１ｉ−ｊ、及び、それらの間に接続されるサブデコーダＳＤを省略可能である。
【００８４】
この場合も、第１の例と同様に、書き込みの対象となるメモリセルを有するブロックと、読み出しの対象となるメモリセルを有するブロックと、が異なれば、書き込みと読み出しを完全に並行して行うことができる。また、書き込みの対象となるメモリセルを有するブロックと、読み出しの対象となるメモリセルを有するブロックと、が同じであるときは、例えば、書き込みを一時的に中断することができる。
【００８５】
第２の例に係わる分割ワード線構造では、メモリセルＭＣ０，…ＭＣｉは、例えば、図１６に示すように、１つの選択トランジスタと１つの記憶素子ＲＥとを備える１トランジスタ−１素子構造を採用可能である。このため、第２の例は、第１の例に比べて、メモリセルＭＣ０，…ＭＣｉのサイズを小さくできる。即ち、不揮発性ＲＡＭ１１のメモリ容量の増大に貢献できる。
【００８６】
図１７は、アドレス処理部の例を示している。
【００８７】
アドレス処理部１４は、アドレスバッファＡＤＢと、比較回路２３ａ，２３ｂと、アンド回路２８，２９，３０，３１，３３と、オア回路３２と、を備える。
【００８８】
比較回路２３ａは、コマンド処理部１２から読み出しイネーブル信号ＲＥを受けると、読み出しアドレスＡＲ（ＡＲ’を除く）と書き込みアドレスＡＷ（ＡＷ’を除く）と比較する。比較回路２３ｂは、コマンド処理部１２から読み出しイネーブル信号ＲＥを受けると、読み出しアドレスＡＲ’と書き込みアドレスＡＷ’と比較する。
【００８９】
読み出しアドレスＡＲ及び書き込みアドレスＡＷは、読み出しアドレスＡＲＡ及び書き込みアドレスＡＷＡに対応する。読み出しアドレスＡＲ’及び書き込みアドレスＡＷ’は、ローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを選択するアドレス（ビット）であり、読み出しアドレスＡＲＡ’及び書き込みアドレスＡＷＡ’に対応する。
【００９０】
読み出しアドレスＡＲと書き込みアドレスＡＷが完全一致するとき、比較回路２３ａ，２３ｂは、共に、“１”を出力する。従って、アンド回路２８は、例えば、一致信号（出力信号）ＷＢＯとして、“１”（アクティブ）を出力する。一致信号ＷＢＯが“１”であるということは、書き込みバッファ１３から読み出しデータＲＤＢを取得する、ということを意味する。
【００９１】
この時、アンド回路２９，３０，３１の出力信号は、全て、“０”であるため、オア回路３２の出力信号は、“０”である。このため、アンド回路３３の出力信号は、“０”であり、読み出しイネーブル信号ＲＥにかかわらず、読み出し回路１６−１に供給される読み出しイネーブル信号ＲＥ’は、“０”（ノンアクティブ）である。従って、読み出し回路１６−１は、通常の読み出し動作を行わない。
【００９２】
また、読み出しアドレスＡＲのうちローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを選択するアドレス（ビット）ＡＲ’と、書き込みアドレスＡＷのうちローカルなワード線ＷＬ００−０，ＷＬ００−１,…ＷＬ００−ｊ，ＷＬ０ｉ−０，ＷＬ０ｉ−１,…ＷＬ０ｉ−ｊを選択するアドレス（ビット）ＡＷ’とが一致するとき（ＡＲとＡＷとが完全一致する場合を除く）、比較回路２３ａは、“０”を出力し、比較回路２３ｂは、“１”を出力する。
【００９３】
従って、アンド回路２８は、例えば、一致信号（出力信号）ＷＢＯとして、“０”（ノンアクティブ）を出力する。一致信号ＷＢＯが“０”であるということは、メモリセルアレイ２２から読み出しデータＲＤを取得する、ということを意味する。
【００９４】
また、アンド回路２９は、例えば、中断信号（出力信号）ＲＳＴとして、“１”（アクティブ）を出力する。中断信号ＲＳＴが“１”であるということは、書き込みを一時的に中断する、ということを意味する。例えば、コマンド処理部１２は、図１８に示すように、ＷＥ制御部３４を備える。ＷＥ制御部３４は、例えば、図１９に示すように、アンド回路３４を備える。
【００９５】
ＷＥ制御部３４は、中断信号ＲＳＴが“１”のとき、書き込みイネーブル信号ＷＥを強制的に“０”にする。即ち、書き込みを一時的に中断する。また、ＷＥ制御部３４は、中断信号ＲＳＴが“０”のとき、書き込みイネーブル信号ＷＥをそのまま出力する。
【００９６】
さらに、アンド回路２９の出力信号が“１”であるため、オア回路３２の出力信号は、“１”である。このため、アンド回路３３の出力信号は、“１”であり、読み出しイネーブル信号ＲＥ(＝“１”)は、読み出しイネーブル信号ＲＥ’として、読み出し回路１６−１に供給される。従って、読み出し回路１６−１は、通常の読み出し動作を行う。
【００９７】
それ以外、即ち、読み出しアドレスＡＲ（ＡＲ’を除く）と書き込みアドレスＡＷ（ＡＷ’を除く）が一致し、読み出しアドレスＡＲ’と書き込みアドレスＡＷ’が一致しないとき、及び、読み出しアドレスＡＲ（ＡＲ’を除く）と書き込みアドレスＡＷ（ＡＷ’を除く）が一致せず、読み出しアドレスＡＲ’と書き込みアドレスＡＷ’も一致しないとき、一致信号ＷＢＯ及び中断信号ＲＳＴは、共に“０”になる。
【００９８】
また、アンド回路３０，３１のうちの１つが“１”となるため、オア回路３３の出力信号は、“１”である。このため、読み出しイネーブル信号ＲＥは、そのまま、読み出しイネーブル信号ＲＥ’として、読み出し回路１６−１に出力される。即ち、読み出しイネーブル信号ＲＥが“１”（アクティブ）であれば、読み出しイネーブル信号ＲＥ’も、“１”（アクティブ）である。従って、読み出しと書き込みの並列動作が可能となる。
【００９９】
（むすび）  
以上、実施形態によれば、高速(high speed)、かつ、高い書き換え耐性（high endurance）の不揮発性ＲＡＭを実現できる。
【０１００】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０１】
１１：  不揮発性ＲＡＭ、  １１ａ：  インターフェース部、  １１ｂ：  メモリセルアレイ部、  １２：  コマンド処理部、  １３：  書き込みバッファ、  １４：  アドレス処理部、  １５：  出力セレクタ、  １６−０：  書き込み回路、１７−０：  ワード線デコーダ、  １８−０：  ワード線ドライバ、  １９−０：  ビット線デコーダ、  ２０−０：  ビット線ドライバ、  ２１−０：  マルチプレクサ、  １６−１：  読み出し回路、  １７−１：  ワード線デコーダ、  １８−１：  ワード線ドライバ、  １９−１：  ビット線デコーダ、  ２０−１：  ビット線ドライバ、  ２１−１：  マルチプレクサ、  ２２：  マルチポートメモリセルアレイ。
【図１】
2017168167.tif 000003
【図２】
2017168167.tif 000004
【図３】
2017168167.tif 000005
【図４】
2017168167.tif 000006
【図５】
2017168167.tif 000007
【図６】
2017168167.tif 000008
【図７】
2017168167.tif 000009
【図８】
2017168167.tif 000010
【図９】
2017168167.tif 000011
【図１０】
2017168167.tif 000012
【図１１】
2017168167.tif 000013
【図１２】
2017168167.tif 000014
【図１３】
2017168167.tif 000015
【図１４】
2017168167.tif 000016
【図１５】
2017168167.tif 000017
【図１６】
2017168167.tif 000018
【図１７】
2017168167.tif 000019
【図１８】
2017168167.tif 000020
【図１９】
2017168167.tif 000021
【手続補正書】
【提出日】平成29年2月9日(2017.2.9)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
実施形態は、不揮発性ＲＡＭ及び不揮発性ＲＡＭを含むシステムに関する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
実施形態は、高速(high speed)、かつ、高い書き換え耐性（high endurance）の不揮発性ＲＡＭ及び不揮発性ＲＡＭを含むシステムを提案する。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
メモリセルアレイと、
書き込み時に前記メモリセルアレイをアクセス可能である第１のアクセス回路と、
読み出し時に前記メモリセルアレイをアクセス可能であり、前記第１のアクセス回路と並列に動作可能な第２のアクセス回路と、
前記書き込み時に複数の書き込みパルスのうちのいずれかを前記メモリセルアレイに供給する書き込み回路と、
を具備し、
前記複数の書き込みパルスは、第１の書き込み電圧及び第１のパルス幅を有する第１の書き込みパルスと、前記第１の書き込み電圧よりも低い第２の書き込み電圧及び前記第１のパルス幅よりも長く且つ読み出しパルスのパルス幅よりも長い第２のパルス幅を有する第２の書き込みパルスとを含む
不揮発性ＲＡＭ。
【請求項２】
前記書き込み時に、書き込みアドレス及び書き込みデータを記憶する書き込みバッファを含み、前記読み出し時に、前記読み出しアドレスが前記書き込みアドレスに一致する場合、前記書き込みバッファからの前記書き込みデータを読み出しデータとして出力するインターフェース部をさらに具備する請求項１に記載の不揮発性ＲＡＭ。
【請求項３】
前記メモリセルアレイは、複数のブロックを備え、
前記第１及び第２のアクセス回路は、それぞれ、前記複数のブロックに共通の第１のワード線と、前記複数のブロックに対応する複数の第２のワード線と、前記第１のワード線及び前記複数の第２のワード線間に接続される複数のデコーダと、を備える、
請求項１に記載の不揮発性ＲＡＭ。
【請求項４】
前記第１のアクセス回路は、書き込みアドレスに基づき前記書き込みの対象となる第１のメモリセルをアクセスし、前記第２のアクセス回路は、読み出しアドレスに基づき前記読み出しの対象となる第２のメモリセルをアクセスし、
前記第１及び第２のメモリセルが同一のロウに配置され、かつ、前記第１及び第２のメモリセルが同一のメモリセルでない場合、前記書き込み及び前記読み出しの一方を中断する、
請求項１に記載の不揮発性ＲＡＭ。
【請求項５】
前記不揮発性ＲＡＭは、ＭＲＡＭ（マグネティックランダムアクセスメモリ）である請求項１乃至４のいずれか１項に記載の不揮発性ＲＡＭ。
【請求項６】
請求項１乃至５のいずれか１項に記載の不揮発性ＲＡＭと、
高速化を優先する状況か否かを判断し、高速化を優先する状況と判断した場合には前記第１の書き込みパルスを用いて書き込みを行うように、高速化を優先する状況と判断しない場合には前記第２の書き込みパルスを用いて書き込みを行うように、前記不揮発性ＲＡＭに指示する制御部と、
を具備するシステム。