(57)【要約】【課題】動作速度が速い半導体装置を提供する。【解決手段】この半導体集積回路装置では、ＲＭＷ動作時に、選択メモリセルＭＣに対応するワード線ＷＬを「Ｈ」レベルに維持したまま、選択メモリセルＭＣからデータ信号ＤＯを読み出し、そのデータ信号ＤＯにレジスタ４から読み出したデータ信号を加算して書込データ信号ＤＩを生成し、そのデータ信号ＤＩを選択メモリセルＭＣに書き込む。したがって、データ読出とデータ書込の間でワード線ＷＬを「Ｌ」レベルに立ち下げていた従来に比べ、動作速度が速くなる。【選択図】図４
2010182375.tif 000002
【特許請求の範囲】
【請求項１】
複数行複数列に配置された複数のメモリセルと、それぞれ前記複数行に対応して設けられた複数のワード線と、それぞれ前記複数列に対応して設けられた複数のビット線と、それぞれ前記複数列に対応して設けられた複数のソース線とを含むメモリアレイを備え、
各メモリセルは、抵抗値のレベル変化によってデータを記憶する磁気抵抗素子と、ソースが対応のソース線に接続され、ドレインが前記磁気抵抗素子を介して対応のビット線に接続され、対応のワード線が選択レベルにされた場合に導通するトランジスタとを有し、
さらに、前記複数のメモリセルのうちの選択メモリセルからデータを読み出した後に前記選択メモリセルに他のデータを書き込む読出／書込動作時に、前記選択メモリセルに対応するワード線を予め定められた第１の時間だけ前記選択レベルにするワード線駆動回路と、
前記第１の時間内に、前記選択メモリセルに対応するビット線およびソース線を介して、前記選択メモリセルからデータを読み出した後に前記選択メモリセルに他のデータを書き込む読出／書込回路とを備える、半導体装置。
【請求項２】
前記半導体装置はクロック信号に同期して動作し、
前記選択メモリセルからデータを読み出すために必要な第２の時間は前記クロック信号の１サイクルよりも短く、前記選択メモリセルにデータを書き込むために必要な第３の時間は前記１サイクルよりも長く、前記第２および第３の時間の和である第４の時間は２サイクルよりも短く、
前記第１の時間は、前記第４の時間と前記２サイクルとの間の時間に設定されている、請求項１に記載の半導体装置。
【請求項３】
複数行複数列に配置された複数のメモリセルと、それぞれ前記複数行に対応して設けられた複数のワード線と、それぞれ前記複数列に対応して設けられた複数のビット線と、それぞれ前記複数列に対応して設けられた複数のソース線とを含むメモリアレイを備え、
各メモリセルは、抵抗値のレベル変化によってデータを記憶する磁気抵抗素子と、ソースが対応のソース線に接続され、ドレインが前記磁気抵抗素子を介して対応のビット線に接続され、対応のワード線が選択レベルにされた場合に導通するトランジスタとを有し、
さらに、前記複数のメモリセルのうちの第１の選択メモリセルからデータを読み出した後に前記第１の選択メモリセルと同じ行の第２の選択メモリセルに他のデータを書き込む読出／書込動作時に、前記第１および第２の選択メモリセルに対応するワード線を予め定められた第１の時間だけ前記選択レベルにするワード線駆動回路と、
前記第１の時間内に、前記第１の選択メモリセルに対応するビット線およびソース線を介して前記第１の選択メモリセルからデータを読み出した後に、前記第２の選択メモリセルに対応するビット線およびソース線を介して前記第２の選択メモリセルに他のデータを書き込む読出／書込回路とを備える、半導体装置。
【請求項４】
前記半導体装置はクロック信号に同期して動作し、
前記第１の選択メモリセルからデータを読み出すために必要な第２の時間は前記クロック信号の１サイクルよりも短く、前記第２の選択メモリセルにデータを書き込むために必要な第３の時間は前記１サイクルよりも長く、前記第２および第３の時間の和である第４の時間は２サイクルよりも短く、
前記第１の時間は、前記第４の時間と前記２サイクルとの間の時間に設定されている、請求項３に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は半導体装置に関し、特に、抵抗値のレベル変化によってデータを記憶する磁気抵抗素子を備えた半導体装置に関する。
【背景技術】
【０００２】
不揮発性半導体記憶装置は、電源電圧が遮断されても記憶データを保持することができ、待機状態時において電源電圧を供給する必要がない。このため、低消費電力であることが要求される携帯機器において広く用いられている。
【０００３】
このような不揮発性半導体記憶装置の１つに、磁気抵抗効果を利用してデータを記憶するＭＲＡＭ（Magnetic Random Access Memory）がある。また、ＭＲＡＭの１つに、ＳＴＴＳ（Spin Torque transfer magnetization Switching)を利用したものがある（たとえば、非特許文献１参照）。
【０００４】
このＭＲＡＭは、複数行複数列に配置された複数のメモリセルと、各行に対応して設けられたワード線と、各列に対応して設けられたビット線およびソース線とを含むメモリアレイを備える。各メモリセルは、磁気抵抗素子およびトランジスタを含む。磁気抵抗素子の一方電極はビット線に接続され、その他方電極はトランジスタを介してソース線に接続され、トランジスタのゲートはワード線に接続される。
【０００５】
書込動作時は、選択した行のワード線を選択レベルにしてその行の各メモリセルのトランジスタを導通させるとともに、書込データに応じた極性の書込電流を選択した列のビット線とソース線の間に流して、選択したメモリセルの磁気抵抗素子を高抵抗状態または低抵抗状態にする。読出動作時は、選択した行のワード線を選択レベルにしてその行の各メモリセルのトランジスタを導通させ、選択した列のビット線から選択したメモリセルの磁気抵抗素子およびトランジスタを介してソース線に流れる電流に基づいて、そのメモリセルの記憶データを読み出す。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】IEDM 2005 A Novel Nonvolatile Memory with Spin Torque Transfer Magnetization Switching:Spin-RAM
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、このようなＭＲＡＭでは、非特許文献１の図９に示すように、書込動作時に磁気抵抗素子に電流を流す時間（Write Pulse Width）が１０−８秒以下になると、データ書込に必要な電流が増大する。したがって、小さな電流でデータ書込を行なうためには、磁気抵抗素子に電流を流す時間ｔＷを十分に長く確保する必要がある。一方、データ読出に必要な時間ｔＲは、データ書込に必要な時間ｔＷよりも短くて済む。
【０００８】
このため、クロック信号に同期して動作するＭＲＡＭでは、読出動作時は、データ読出に必要な時間ｔＲだけワード線を選択レベルにしてクロック信号の１サイクルｔＣでデータ読出を行なっている（ｔＲ＜ｔＣ）。また、書込動作時は、データ書込に必要な時間ｔＷだけワード線を選択レベルにしてクロック信号の２サイクル時間（２ｔＣ）でデータ書込を行なっている（ｔＣ＜ｔＷ＜２ｔＣ）。なお、ｔＲ＋ｔＷ＜２ｔＣである。
【０００９】
ところで、ＭＲＡＭを実際に使用する場合、同じアドレスのメモリセルのデータ読出とデータ書込を連続的に行なう頻度が高い。従来は、このような場合でも、データ読出とデータ書込を別々に行なっていたので、平均の動作速度が遅いと言う問題があった。
【００１０】
それゆえに、この発明の主たる目的は、動作速度が速い半導体装置を提供することである。
【課題を解決するための手段】
【００１１】
この発明に係る半導体装置は、複数行複数列に配置された複数のメモリセルと、それぞれ複数行に対応して設けられた複数のワード線と、それぞれ複数列に対応して設けられた複数のビット線と、それぞれ複数列に対応して設けられた複数のソース線とを含むメモリアレイを備えたものである。各メモリセルは、抵抗値のレベル変化によってデータを記憶する磁気抵抗素子と、ソースが対応のソース線に接続され、ドレインが磁気抵抗素子を介して対応のビット線に接続され、対応のワード線が選択レベルにされた場合に導通するトランジスタとを有する。この半導体装置は、さらに、複数のメモリセルのうちの選択メモリセルからデータを読み出した後に選択メモリセルに他のデータを書き込む読出／書込動作時に、選択メモリセルに対応するワード線を予め定められた第１の時間だけ選択レベルにするワード線駆動回路と、第１の時間内に、選択メモリセルに対応するビット線およびソース線を介して、選択メモリセルからデータを読み出した後に選択メモリセルに他のデータを書き込む読出／書込回路とを備える。
【発明の効果】
【００１２】
この発明に係る半導体装置では、選択メモリセルからデータを読み出した後に選択メモリセルに他のデータを書き込む読出／書込動作時に、選択メモリセルに対応するワード線を予め定められた第１の時間だけ選択レベルにするワード線駆動回路と、第１の時間内に、選択メモリセルに対応するビット線およびソース線を介して、選択メモリセルからデータを読み出した後に選択メモリセルに他のデータを書き込む読出／書込回路とが設けられる。したがって、ワード線が選択レベルにされている間に、選択メモリセルのデータ読出とデータ書込を連続的に行なうので、動作速度の高速化を図ることができる。
【図面の簡単な説明】
【００１３】
【図１】この発明の一実施の形態による半導体集積回路装置の構成を示すブロック図である。
【図２】図１に示したＭＲＡＭの構成を示す回路ブロック図である。
【図３】図２に示したドライバの構成を示す回路ブロック図である。
【図４】図１〜図３に示した半導体集積回路装置の動作を例示するタイムチャートである。
【図５】実施の形態の変更例を示すタイムチャートである。
【発明を実施するための形態】
【００１４】
図１は、この発明の一実施の形態による半導体集積回路装置の構成を示すブロック図である。図１において、この半導体集積回路装置は、ＣＰＵ(Central Processing Unit：中央処理装置）１、クロック発生回路６、ＡＮＤゲート７、論理回路８、ＲＯＭ(Read Onry Memory)９、およびＭＲＡＭ１５を備える。
【００１５】
ＲＯＭ９には、複数の命令コードＣＭＤが格納されている。ＣＰＵ１は、ＲＯＭ９から複数の命令コードＣＭＤを１つずつ順次読み出し、各命令コードＣＭＤに従って、ＭＲＡＭ１５からのデータ読出、読出データを用いた演算、ＭＲＡＭ１５へのデータ書込などを実行する。
【００１６】
すなわちＣＰＵ１は、命令デコーダ２、レジスタ３，４、および加算器５を含む。命令デコーダ２は、クロック信号ＣＬＫ０に同期して動作し、ＲＯＭ１４から読み出した命令コードＣＭＤに従って、制御信号ＲＤ，ＳＤを生成する。
【００１７】
たとえば、命令コードＣＭＤによって所定アドレスからデータを読み出し、読出データを用いて演算を行ない、その演算結果を所定アドレスに書き戻すＲＭＷ（Read Modify Write)動作が指示された場合、レジスタ３からＭＲＡＭ１５にアドレス信号Ａ５〜Ａ１１，ＡＷ０〜ＡＷ４，ＡＲ０〜ＡＲ４が与えられる。ＭＲＡＭ１５のアドレス信号Ａ５〜Ａ１１，ＡＲ０〜ＡＲ４によって指定されたアドレスから読み出されたデータ信号ＤＯ０〜ＤＯ７は、加算器５に与えられる。
【００１８】
加算器５は、それらのデータ信号ＤＯ０〜ＤＯ７とレジスタ４から読み出されたデータ信号とを加算してデータ信号ＤＩ０〜ＤＩ７を求め、ＭＲＡＭ１５に与える。データ信号ＤＩ０〜ＤＩ７は、ＭＲＡＭ１５のアドレス信号Ａ５〜Ａ１１，ＡＷ０〜ＡＷ４によって指定されたアドレスに書き込まれる。なお、アドレス信号Ａ５〜Ａ１１，ＡＲ０〜ＡＲ４によって指定されたアドレスと、アドレス信号Ａ５〜Ａ１１，ＡＲ０〜ＡＲ４によって指定されたアドレスとは、同じアドレスである。
【００１９】
クロック発生回路６は、クロック信号ＣＬＫ０に同期して、ＭＲＡＭ１５の動作を制御するためのクロック信号ＣＬＫ１〜ＣＬＫ３を生成する。ＡＮＤゲート７は、ＣＰＵ１で生成された制御信号ＲＤとクロック信号ＣＬＫ２に基づいて、制御信号Ｒ／Ｗを生成する。制御信号Ｒ／Ｗが「Ｈ」レベルである場合、ＭＲＡＭ１５ではデータ読出が行なわれる。制御信号Ｒ／Ｗが「Ｌ」レベルである場合、ＭＲＡＭ１５ではデータ書込が行なわれる。
【００２０】
論理回路８は、ゲート回路９，１０，１３、フリップフロップ１１、およびＯＲゲート１２を含み、ＣＰＵ１で生成された制御信号ＳＤとクロック信号ＣＬＫ１，ＣＬＫ３に基づいて、制御信号ＷＬＥを生成する。制御信号ＷＬＥが「Ｈ」レベルである場合、ＭＲＡＭ１５では選択された行のワード線が選択レベルの「Ｈ」レベルにされる。制御信号ＷＬＥが「Ｌ」レベルの場合は、ＭＲＡＭ１５では全てのワード線が非選択レベルの「Ｌ」レベルにされる。
【００２１】
ＭＲＡＭ１５は、制御信号Ｒ／Ｗ，ＷＬＥによって制御され、アドレス信号Ａ５〜Ａ１１，ＡＷ０〜ＡＷ４によって指定されたアドレスにデータ信号ＤＩ０〜ＤＩ７を書き込み、アドレス信号Ａ５〜Ａ１１，ＡＲ０〜ＡＲ４によって指定されたアドレスからデータ信号ＤＯ０〜ＤＯ７を読み出す。
【００２２】
図２は、ＭＲＡＭ１５の構成を示す回路ブロック図である。図２において、ＭＲＡＭ１５は、メモリアレイＭＡを備える。メモリアレイＭＡは、複数行複数列に配置された複数のメモリセルＭＣと、それぞれ複数行に対応して設けられた複数のワード線ＷＬと、それぞれ複数列に対応して設けられた複数のビット線ＢＬと、それぞれ複数列に対応して設けられた複数のソース線ＳＬとを含む。
【００２３】
各メモリセルＭＣは、磁気抵抗素子２０およびＮチャネルＭＯＳトランジスタ２１を含む。磁気抵抗素子２０は、ＳＴＳを利用したものであり、抵抗値のレベル変化によってデータを記憶する。磁気抵抗素子２０の抵抗値は、書込電流の極性によって変化する。ＮチャネルＭＯＳトランジスタ２１のゲートは対応のワード線ＷＬに接続され、そのソースは対応のソース線ＳＬに接続され、そのドレインは磁気抵抗素子２０を介して対応のビット線ＢＬに接続される。
【００２４】
また、ＭＲＡＭ１５は、行デコーダ２２およびワード線ドライバ２５を備える。行デコーダ２２は、それぞれ複数のワード線ＷＬに対応して設けられた複数の行デコーダ単位回路２３を含む。各行デコーダ単位回路２３は、複数のＡＮＤゲート２４を含み、ＣＰＵ１から与えられた行アドレス信号Ａ５〜Ａ１１と、予め割当てられた固有の行アドレス信号とが一致したことに応じて「Ｈ」レベルの信号を出力する。
【００２５】
ワード線ドライバ２５は、各行デコーダ単位回路２３に対応して設けられたドライバ２６を含む。各ドライバ２６は、ＮＡＮＤゲート２７およびインバータ２８を含み、制御信号ＷＬＥが活性化レベルの「Ｈ」レベルにされ、かつ対応の行デコーダ単位回路２３の出力信号が「Ｈ」レベルにされた場合に、対応のワード線ＷＬを選択レベルの「Ｈ」レベルにする。ワード線ＷＬが「Ｈ」レベルにされると、そのワード線ＷＬに対応する各メモリセルＭＣのトランジスタ２１が導通し、そのメモリセルＭＣのデータの読出および書込が可能になる。
【００２６】
また、ＭＲＡＭ１５は、列デコーダ３０と、それぞれ複数列に対応して設けられた複数のドライバ３１とを備える。このＭＲＡＭ１５では、メモリアレイＭＡの複数の列は８つずつ３２のグループに分割されており、３２のグループにそれぞれ３２本の列選択線ＣＳＬＷ０〜ＣＳＬＷ３１が設けられている。列デコーダ３０は、ＣＰＵ１から与えられた列アドレス信号ＡＷ０〜ＡＷ４に従って、３２本の列選択線ＣＳＬＷ０〜ＣＳＬＷ３１のうちのいずれかの列選択線ＣＳＬＷを選択し、その列選択線ＣＳＬＷを選択レベルの「Ｈ」レベルにする。「Ｈ」レベルにされた列選択線ＣＳＬＷに対応するグループの８つの列の選択された行の８つのメモリセルＭＣには、８ビットのデータ信号ＤＩ０〜ＤＩ７を一度に書き込むことが可能となっている。
【００２７】
図２では、列選択線ＣＳＬＷ０に対応するグループのうちのデータ信号ＤＩ０，ＤＩ１，ＤＩ７に対応する３つの列と、列選択線ＣＳＬＷ１に対応するグループのうちのデータ信号ＤＩ０，ＤＩ１に対応する２つの列と、列選択線ＣＳＬＷ３１に対応するグループのうちのデータ信号ＤＩ７に対応する１つの列とが示されている。また、各ドライバ３１は、対応の列選択線ＣＳＬＷ、ビット線ＢＬ、およびソース線ＳＬに接続されるとともに、対応の書込データ信号ＤＩおよび制御信号Ｒ／Ｗを受ける。
【００２８】
ドライバ３１は、図３に示すように、インバータ３２、ＮＡＮＤゲート３３，３６，３９、ゲート回路３４、ＯＲゲート３５、ＰチャネルＭＯＳトランジスタ３７，４０、およびＮチャネルＭＯＳトランジスタ３８，４１を含む。
【００２９】
書込データ信号ＤＩは、インバータ３２を介してＮＡＮＤゲート３３およびＯＲゲート３５の一方入力ノードに入力されるとともに、ＮＡＮＤゲート３９の一方入力ノードに直接入力される。列選択線ＣＳＬＷは、ゲート回路３４およびＮＡＮＤゲート３６の一方入力ノードに接続される。制御信号Ｒ／Ｗは、ゲート回路３４およびＯＲゲート３５の他方入力ノードに入力される。ゲート回路３４の出力信号は、ＮＡＮＤゲート３３，３９の他方入力ノードに入力される。ＯＲゲート３５の出力信号はＮＡＮＤゲート３６の他方入力ノードに入力される。
【００３０】
ＰチャネルＭＯＳトランジスタ３７は、電源電圧ＶＤＤのラインと対応のビット線ＢＬの一方端との間に接続され、そのゲートはＮＡＮＤゲート３３の出力信号を受ける。ＮチャネルＭＯＳトランジスタ３８は、対応のビット線ＢＬの一方端と接地電圧ＧＮＤのラインとの間に接続され、そのゲートはＮＡＮＤゲート３６の出力信号を受ける。
【００３１】
ＰチャネルＭＯＳトランジスタ４０は、電源電圧ＶＤＤのラインと対応のソース線ＳＬの一方端との間に接続され、そのゲートはＮＡＮＤゲート３９の出力信号を受ける。ＮチャネルＭＯＳトランジスタ４１は、対応のソース線ＳＬの一方端と接地電圧ＧＮＤのラインとの間に接続され、そのゲートはＮＡＮＤゲート３９の出力信号を受ける。
【００３２】
次に、図３に示したドライバ３１の動作について説明する。書込動作時は、制御信号Ｒ／Ｗが「Ｌ」レベルにされる。また、１本のワード線ＷＬが「Ｈ」レベルにされ、そのワード線ＷＬに対応するメモリセルＭＣのＮチャネルＭＯＳトランジスタ２１が導通する。対応の列選択線ＣＳＬＷが選択レベルの「Ｈ」レベルにされ、かつ対応の書込データ信号ＤＩが「Ｌ」レベルにされた場合、ＮＡＮＤゲート３３，３６の出力信号がともに「Ｌ」レベルになり、ＰチャネルＭＯＳトランジスタ３７が導通するとともにＮチャネルＭＯＳトランジスタ３８が非導通になり、対応のビット線ＢＬの一方端が「Ｈ」レベルにされる。また、ＮＡＮＤゲート３９の出力信号が「Ｈ」レベルになり、ＰチャネルＭＯＳトランジスタ４０が非導通になるとともにＮチャネルＭＯＳトランジスタ４１が導通し、対応のソース線ＳＬの一方端が「Ｌ」レベルにされる。
【００３３】
これにより、電源電圧ＶＤＤのライン、ＰチャネルＭＯＳトランジスタ３７、ビット線ＢＬ、磁気抵抗素子２０、ＮチャネルＭＯＳトランジスタ２１、ソース線ＳＬ、ＮチャネルＭＯＳトランジスタ４１、および接地電圧ＧＮＤのラインの経路で書込電流が流れ、磁気抵抗素子２０はたとえば低抵抗状態にされる。
【００３４】
また、対応の列選択線ＣＳＬＷが選択レベルの「Ｈ」レベルにされ、かつ対応の書込データ信号ＤＩが「Ｈ」レベルにされた場合、ＮＡＮＤゲート３３，３６の出力信号がともに「Ｈ」レベルになり、ＰチャネルＭＯＳトランジスタ３７が非導通になるとともにＮチャネルＭＯＳトランジスタ３８が導通し、対応のビット線ＢＬの一方端が「Ｌ」レベルにされる。また、ＮＡＮＤゲート３９の出力信号が「Ｌ」レベルになり、ＰチャネルＭＯＳトランジスタ４０が導通するとともにＮチャネルＭＯＳトランジスタ４１が非導通になり、対応のソース線ＳＬの一方端が「Ｈ」レベルにされる。
【００３５】
これにより、電源電圧ＶＤＤのライン、ＰチャネルＭＯＳトランジスタ４０、ソース線ＳＬ、ＮチャネルＭＯＳトランジスタ２１、磁気抵抗素子２０、ビット線ＢＬ、ＮチャネルＭＯＳトランジスタ３８、および接地電圧ＧＮＤのラインの経路で書込電流が流れ、磁気抵抗素子２０はたとえば高抵抗状態にされる。
【００３６】
また、読出動作時は、制御信号Ｒ／Ｗが「Ｈ」レベルにされる。対応の列選択線ＣＳＬＷが選択レベルの「Ｈ」レベルにされた場合、ＮＡＮＤゲート３３，３６の出力信号がそれぞれ「Ｈ」レベルおよび「Ｌ」レベルになり、トランジスタ３７，３８がともに非導通になり、対応のビット線ＢＬの一方端がハイ・インピーダンス状態にされる。また、ＮＡＮＤゲート３９の出力信号が「Ｈ」レベルになり、ＰチャネルＭＯＳトランジスタ４０が非導通になるとともにＮチャネルＭＯＳトランジスタ４１が導通し、対応のソース線ＳＬの一方端が「Ｌ」レベルにされる。これにより、後述するデータ読出が可能となる。
【００３７】
なお、列選択線ＣＳＬＷが非選択レベルの「Ｌ」レベルの場合は、データ信号ＤＩおよび制御信号Ｒ／Ｗに関係なく、ゲート回路３４の出力信号が「Ｌ」レベルになり、ＮＡＮＤゲート３３，３６，３９の出力信号がともに「Ｈ」レベルになり、ＰチャネルＭＯＳトランジスタ３７，４０が非導通になるとともにＮチャネルＭＯＳトランジスタ３８，４１が導通し、ビット線ＢＬおよびソース線ＳＬの一方端に接地電圧ＧＮＤが与えられる。
【００３８】
図２に戻って、ＭＲＡＭ１５は、列デコーダ４５と、それぞれ３２本の列選択線ＣＳＬＷ０〜ＣＳＬＷ３１に対応して設けられた３２本の列選択線ＣＳＬＲ０〜ＣＳＬＲ３１と、それぞれ３２本の列選択線ＣＳＬＲ０〜ＣＳＬＲ３１に対応して設けられた３２個のＡＮＤゲート４６とを備える。各ＡＮＤゲート４６の一方入力ノードは制御信号Ｒ／Ｗを受け、その他方入力ノードは列デコーダ４５に接続され、その出力ノードは対応する列選択線ＣＳＬＲの一方端に接続される。
【００３９】
制御信号Ｒ／Ｗが「Ｌ」レベルの場合は、各ＡＮＤゲート４６の出力ノードが「Ｌ」レベルになり、全列選択線ＣＳＬＲ０〜ＣＳＬＲ３１は「Ｌ」レベルに固定される。制御信号Ｒ／Ｗが「Ｈ」レベルの場合は、列デコーダ４５と列選択線ＣＳＬＲ０〜ＣＳＬＲ３１とが結合される。列デコーダ４５は、ＣＰＵ１から与えられた列アドレス信号ＡＲ０〜ＡＲ４に従って、３２本の列選択線ＣＳＬＲ０〜ＣＳＬＲ３１のうちのいずれかの列選択線ＣＳＬＲを選択し、その列選択線ＣＳＬＲを選択レベルの「Ｈ」レベルにする。
【００４０】
また、ＭＲＡＭ１５は、それぞれ複数列に対応して設けられた複数のＮチャネルＭＯＳトランジスタ４７と、８本のデータ線ＤＬ０〜ＤＬ７と、それぞれ８本のデータ線ＤＬ０〜ＤＬ７に対応して設けられた８個の読出アンプ４８とを備える。
【００４１】
このＭＲＡＭ１５では、メモリアレイＭＡの複数の列は８つずつ３２のグループに分割されており、３２本の列選択線ＣＳＬＲ０〜ＣＳＬＲ３１はそれぞれ３２のグループに対応して設けられている。また、８本のデータ線ＤＬ０〜ＤＬ７は、３２のグループに共通に設けられ、かつ各グループの８つの列にそれぞれ対応して設けられる。各ＮチャネルＭＯＳトランジスタ４７は、対応の列のビット線ＢＬの他方端と対応のデータ線ＤＬとの間に接続され、そのゲートは対応の列選択線ＣＳＬＲに接続される。
【００４２】
１本の列選択線ＣＳＬＲが選択レベルの「Ｈ」レベルにされると、その列選択線ＣＳＬＲに対応する８つのＮチャネルＭＯＳトランジスタ４７が導通し、８本のビット線ＢＬがそれぞれ８本のデータ線ＤＬ０〜ＤＬ７に接続される。
【００４３】
各読出アンプ４８は、対応のデータ線ＤＬとＮチャネルＭＯＳトランジスタ４７を介して、ビット線ＢＬに書込電圧よりも十分に低い読出電圧を印加し、ビット線ＢＬ、磁気抵抗素子２０、ＮチャネルＭＯＳトランジスタ２１、ソース線ＳＬの経路に流れる読出電流に基づいて、そのメモリセルＭＣの記憶データを読み出す。たとえば、読出電流が所定のしきい値電流よりも小さい場合は、そのメモリセルＭＣの磁気抵抗素子２０は高抵抗状態であるので、記憶データは“１”となる。逆に、読出電流が所定のしきい値電流よりも大きい場合は、そのメモリセルＭＣの磁気抵抗素子２０は低抵抗状態であるので、記憶データは“０”となる。
【００４４】
このＭＲＡＭ１５では、「Ｈ」レベルにされた列選択線ＣＳＬＷに対応するグループの８つの列の選択された行の８つのメモリセルＭＣから、８ビットのデータ信号ＤＯ０〜ＤＯ７を一度に読み出すことが可能となっている。
【００４５】
図４（ａ）〜（ｑ）は、図１〜図３に示した半導体集積回路装置の動作を例示するタイムチャートである。図４（ａ）〜（ｃ）に示すように、３つのクロック信号ＣＬＫ１〜ＣＬＫ３は、同じ周期を有する。１サイクルを２πで表わすと、クロック信号ＣＬＫ１は、１サイクルのうちの０〜１．５πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる信号である。クロック信号ＣＬＫ２は、１サイクルのうちの０〜πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる信号である。クロック信号ＣＬＫ３は、１サイクルのうちのπ〜１．５πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる信号である。
【００４６】
図４（ａ）〜（ｑ）のサイクル１，２でＲＭＷ動作が示され、サイクル３，４では書込動作が示され、サイクル５では読出動作が示されている。まずＲＭＷ動作時は、図４（ｄ）のサイクル１，２に示すように、制御信号ＳＤが「Ｈ」レベルにされる。制御信号ＳＤが「Ｈ」レベルにされると、図１の論理回路８において、ゲート回路１０の出力信号は「Ｌ」レベルに固定され、ゲート回路１３はＯＲゲート１２の出力信号をそのまま通過させる。また、ゲート回路９はインバータとして動作し、ゲート回路９およびフリップフロップ１１はクロック信号ＣＬＫ１の周期を２倍にする分周回路として動作する。したがって、フリップフロップ１１の出力信号Ｑは、図４（ｈ）のサイクル１，２に示すように、クロック信号ＣＬＫ１の周期を２倍にした信号となる。
【００４７】
制御信号ＷＬＥは、クロック信号ＣＬＫ１と信号Ｑとの論理和信号となり、図４（ｊ）のサイクル１，２に示すように、サイクル１の０〜２πの期間とサイクル２の０〜１．５πの期間で「Ｈ」レベルになり、サイクル２の１．５π〜２πの期間で「Ｌ」レベルになる。
【００４８】
また、図４（ｅ）に示すように、サイクル１，２の各々においてＣＰＵ１から同じ行アドレス信号ｘ０が与えられ、その行アドレス信号ｘ０に対応する行デコーダ単位回路２３の出力信号が「Ｈ」レベルにされる。また、その行デコーダ単位回路２３に対応するドライバ２６は、制御信号ＷＬＥが「Ｈ」レベルにされている期間だけ対応のワード線ＷＬ０を「Ｈ」レベルにする。
【００４９】
したがって、図４（ｋ）のサイクル１，２に示すように、ワード線ＷＬ０の電圧は制御信号ＷＬＥと同じ波形になる。ワード線ＷＬ０が「Ｈ」レベルにされると、ワード線ＷＬ０に対応する各メモリセルＭＣのトランジスタ２１が導通し、そのメモリセルＭＣのデータの読出および書込が可能となる。なお、ワード線ＷＬ０と異なるワード線ＷＬｘの電圧は「Ｌ」レベルに固定される。
【００５０】
また、制御信号ＲＤは、図４（ｇ）に示すように、サイクル１で「Ｈ」レベルにされた後にサイクル２で「Ｌ」レベルにされる。制御信号ＲＤが「Ｈ」レベルである場合は、図１のＡＮＤゲート７はクロック信号ＣＬＫ２をそのまま通過させる。また、制御信号ＲＤが「Ｌ」レベルである場合は、図１のＡＮＤゲート７の出力信号は「Ｌ」レベルに固定される。
【００５１】
したがって、ＡＮＤゲート７の出力信号である制御信号Ｒ／Ｗは、図４（ｉ）のサイクル１，２に示すように、サイクル１のうちの０〜πの期間で「Ｈ」レベルになり、サイクル１のπ〜２πの期間およびサイクル２の０〜２πの期間で「Ｌ」レベルになる。よって、サイクル１のうちの０〜πの期間でデータ読出が行なわれ、サイクル１のπ〜２πの期間およびサイクル２の０〜２πの期間でデータ書込が行なわれる。
【００５２】
また、図４（ｆ）に示すように、サイクル１，２の各々においてＣＰＵ１から同じ列アドレス信号ｙ０が与えられる。これにより、図４（ｍ）に示すように、サイクル１の０〜πの期間では列アドレス信号ｙ０に対応する列選択線ＣＳＬ０（すなわちＣＳＬＷ０，ＣＳＬＲ０）が「Ｈ」レベルにされる。この期間では、制御信号Ｒ／Ｗが「Ｈ」レベルにされ、かつ列選択線ＣＳＬＷ０が「Ｈ」レベルにされるので、列選択線ＣＳＬＷ０に対応するグループの各列において、ドライバ３１によってソース線ＳＬが「Ｌ」レベルにされるとともにビット線ＢＬがハイ・インピーダンス状態にされる。
【００５３】
また、この期間では、列選択線ＣＳＬＲ０が「Ｈ」レベルにされるので、列選択線ＣＳＬＲ０に対応するグループの各列において、トランジスタ４７が導通し、ビット線ＢＬ０が対応のデータ線ＤＬに接続される。図４（ｏ）に示すように、読出アンプ４８によってサイクル１の０〜πの期間ｔＲだけビット線ＢＬに読出電流が流され、データ読出が行なわれる。
【００５４】
このとき、列選択線ＣＳＬＲ０に対応する８つのメモリセルＭＣからデータ信号ＤＯ０〜ＤＯ７が読み出されてＣＰＵ１に与えられる。ＣＰＵ１では、レジスタ４から読み出されたデータ信号がデータ信号ＤＯ０〜ＤＯ７に加算されて書込データ信号ＤＩ０〜ＤＩ７が生成される。書込データ信号ＤＩ０〜ＤＩ７は、ＭＲＡＭ１５に与えられる。
【００５５】
次に、図４（ｉ）に示すように、サイクル１のπ〜２πの期間およびサイクル２の０〜２πの期間において制御信号Ｒ／Ｗが「Ｌ」レベルにされ、データ書込が行なわれる。制御信号Ｒ／Ｗが「Ｌ」レベルにされると、図４（ｍ）のサイクル１，２に示すように、列選択線ＣＳＬＷ０が「Ｈ」レベルに維持され、列選択線ＣＳＬＲ０は「Ｌ」レベルに立ち下げられる。列選択線ＣＳＬＲ０が「Ｌ」レベルにされると、トランジスタ４７が非導通になり、ビット線ＢＬ０とデータ線ＤＬは電気的に切り離される。
【００５６】
列選択線ＣＳＬ０に対応するドライバ３１は、図４（ｏ）のサイクル１，２に示すように、対応のビット線ＢＬ０およびソース線ＳＬ間に書込データ信号ＤＩに応じた極性の電流を流し、選択されたメモリセルＭＣの磁気抵抗素子２０を高抵抗状態または低抵抗状態にする。サイクル２の１．５π〜２πの期間では、図４（ｊ）（ｋ）（ｏ）に示すように、制御信号ＷＬＥが「Ｌ」レベルに立ち下げられ、ワード線ＷＬ０が「Ｌ」レベルに立ち下げられ、ビット線ＢＬ０に流れる電流は遮断される。このようにして、ＲＭＷ動作が終了する。
【００５７】
次に、書込動作時は、図４（ｄ）のサイクル３，４に示すように、制御信号ＳＤは「Ｈ」レベルにされる。制御信号ＳＤが「Ｈ」レベルにされると、フリップフロップ１１の出力信号Ｑは、図４（ｈ）のサイクル３，４に示すように、クロック信号ＣＬＫ１の周期を２倍にした信号となる。制御信号ＷＬＥは、クロック信号ＣＬＫ１と信号Ｑとの論理和信号となり、図４（ｊ）のサイクル３，４に示すように、２サイクルのうちの０〜３．５πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる。
【００５８】
また、図４（ｅ）に示すように、サイクル３，４の各々においてＣＰＵ１から同じ行アドレス信号ｘｘが与えられ、その行アドレス信号ｘｘに対応する行デコーダ単位回路２３の出力信号が「Ｈ」レベルにされる。また、その行デコーダ単位回路２３に対応するドライバ２６は、制御信号ＷＬＥが「Ｈ」レベルにされている期間だけ対応のワード線ＷＬｘを「Ｈ」レベルにする。
【００５９】
したがって、ワード線ＷＬｘの電圧は、図４（ｌ）のサイクル３，４に示すように、２サイクルのうちの０〜３．５πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる。ワード線ＷＬｘが「Ｈ」レベルにされると、そのワード線ＷＬｘに対応する各メモリセルＭＣのトランジスタ２１が導通し、そのメモリセルＭＣへのデータ書込が可能となる。なお、ワード線ＷＬｘと異なるワード線ＷＬ０の電圧は「Ｌ」レベルに固定される。
【００６０】
また、制御信号ＲＤは、図４（ｇ）のサイクル３，４に示すように、「Ｌ」レベルに固定される。制御信号ＲＤが「Ｌ」レベルである場合は、図１のＡＮＤゲート７の出力信号は「Ｌ」レベルに固定される。したがって、ＡＮＤゲート７の出力信号である制御信号Ｒ／Ｗは、図４（ｉ）のサイクル３，４に示すように、「Ｌ」レベルに固定される。
【００６１】
また、図４（ｆ）に示すように、サイクル３，４の各々においてＣＰＵ１から同じ列アドレス信号ｙｙが与えられる。これにより、図４（ｎ）のサイクル３，４に示すように、列アドレス信号ｙｙに対応する列選択線ＣＳＬＷｙが「Ｈ」レベルにされるとともに、列アドレス信号ｙｙに対応する列選択線ＣＳＬＲｙが「Ｌ」レベルにされる。列選択線ＣＳＬＲｙが「Ｌ」レベルにされると、トランジスタ４７が非導通になり、ビット線ＢＬとデータ線ＤＬは電気的に切り離される。
【００６２】
列選択線ＣＳＬＷｙに対応するドライバ３１は、図４（ｐ）のサイクル３，４に示すように、対応のビット線ＢＬｙおよびソース線ＳＬ間に書込データ信号ＤＩに応じた極性の電流を流し、選択されたメモリセルＭＣの磁気抵抗素子２０を高抵抗状態または低抵抗状態にする。サイクル４の１．５π〜２πの期間では、図４（ｊ）（ｋ）（ｏ）に示すように、制御信号ＷＬＥが「Ｌ」レベルに立ち下げられ、ワード線ＷＬｘが「Ｌ」レベルに立ち下げられ、ビット線ＢＬｙに流れる電流は遮断される。このようにして、書込動作が終了する。
【００６３】
次に、読出動作時は、図４（ｄ）のサイクル５に示すように、制御信号ＳＤは「Ｌ」レベルにされる。制御信号ＳＤが「Ｌ」レベルにされると、図１の論理回路８において、ゲート回路９の出力信号は「Ｌ」レベルに固定され、図４（ｈ）のサイクル５に示すように、フリップフロップ１１の出力信号Ｑは「Ｌ」レベルに固定される。したがって、ＯＲゲート１２の出力信号はクロック信号ＣＬＫ１となる。また、ゲート回路１０は、クロック信号ＣＬＫ３をそのまま通過させる。したがって、制御信号ＷＬＥは、クロック信号ＣＬＫ１とクロック信号ＣＬＫ３の反転信号との論理積信号となり、図４（ｊ）に示すように、サイクル５の０〜πの期間で「Ｈ」レベルとなり、サイクル５のπ〜２πの期間で「Ｌ」レベルとなる。
【００６４】
また、図４（ｅ）のサイクル５に示すように、ＣＰＵ１から行アドレス信号ｘ０が与えられ、その行アドレス信号ｘ０に対応する行デコーダ単位回路２３の出力信号が「Ｈ」レベルにされる。また、その行デコーダ単位回路２３に対応するドライバ２６は、制御信号ＷＬＥが「Ｈ」レベルにされている期間だけ対応のワード線ＷＬ０を「Ｈ」レベルにする。
【００６５】
したがって、ワード線ＷＬ０の電圧は、図４（ｋ）のサイクル５に示すように、０〜πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルになる。これにより、ワード線ＷＬ０に対応する各メモリセルＭＣのトランジスタ２１が導通し、そのメモリセルＭＣのデータの読出が可能となる。なお、ワード線ＷＬ０と異なるワード線ＷＬｘの電圧は「Ｌ」レベルに固定される。
【００６６】
また、制御信号ＲＤは、図４（ｇ）の５サイクルに示すように、「Ｈ」レベルにされる。制御信号ＲＤが「Ｈ」レベルである場合は、図１のＡＮＤゲート７はクロック信号ＣＬＫ２をそのまま通過させる。したがって、ＡＮＤゲート７の出力信号である制御信号Ｒ／Ｗは、図４（ｉ）のサイクル５に示すように、サイクル５のうちの０〜πの期間で「Ｈ」レベルになり、残りの期間で「Ｌ」レベルとなる。よって、サイクル５のうちの０〜πの期間でデータ読出が行なわれる。
【００６７】
また、図４（ｆ）のサイクル５に示すように、ＣＰＵ１から列アドレス信号ｙｙが与えられる。これにより、図４（ｎ）のサイクル５に示すように、列アドレス信号ｙｙに対応する列選択線ＣＳＬｙ（すなわちＣＳＬＷｙ，ＣＳＬＲｙ）が「Ｈ」レベルにされる。０〜πの期間では、制御信号Ｒ／Ｗが「Ｈ」レベルにされ、かつ列選択線ＣＳＬＷｙが「Ｈ」レベルにされるので、列選択線ＣＳＬＷｙに対応するグループの各列において、ドライバ３１によってソース線ＳＬが「Ｌ」レベルにされるとともにビット線ＢＬがハイ・インピーダンス状態にされる。
【００６８】
また、０〜２πの期間では、列選択線ＣＳＬＲｙが「Ｈ」レベルにされるので、列選択線ＣＳＬＲｙに対応するグループの各列において、トランジスタ４７が導通し、ビット線ＢＬｙが対応のデータ線ＤＬに接続される。図４（ｐ）のサイクル５に示すように、読出アンプ４８によって０〜πの期間ｔＲだけビット線ＢＬｙに読出電流が流され、データ読出が行なわれる。このようにしてデータ読出が終了する。
【００６９】
従来のＭＲＡＭでは、ＲＭＷ動作時に、選択されたワード線ＷＬを所定時間だけ「Ｈ」レベルにしてデータ読出を行なった後（図４のサイクル５参照）、選択されたワード線ＷＬを所定時間だけ「Ｈ」レベルにしてデータ書込を行なっていたので（図４のサイクル３，４参照）、ＲＭＤ動作を行なうために３サイクルを必要としていた。
【００７０】
これに対して本願発明では、選択されたワード線ＷＬ０を選択レベルの「Ｈ」レベルに維持したまま、データ読出とデータ書込を連続的に行なうので、２サイクルでＲＭＷ動作を行なうことができ、ＲＭＷ動作の高速化を図ることができる（図４のサイクル１，２参照）。
【００７１】
図５（ａ）〜（ｑ）は、この実施の変更例を示すタイムチャートであって、図４（ａ）〜（ｐ）のうちのサイクル１，２と対比される図である。この変更例では、同じ行で異なる列の２つのメモリセルＭＣが選択され、一方のメモリセルＭＣからデータ信号ＤＯが読み出され、そのデータ信号ＤＯに演算処理が施されて書込データ信号ＤＩが生成され、そのデータ信号ＤＩが他方のメモリセルＭＣに書き込まれる。
【００７２】
すなわち、図５（ｆ）に示すように、サイクル１の０〜πの期間で列アドレス信号ｙ０が与えられ、サイクル１のπ〜２πの期間およびサイクル２の０〜２πの期間で列アドレス信号ｙ１が与えられる。これにより、サイクル１の０〜πの期間において、列アドレス信号ｙ０に対応する列選択線ＣＳＬ０（すなわちＣＳＬＷ０，ＣＳＬＲ０）が「Ｈ」レベルにされ、列選択線ＣＳＬ０に対応する８つのメモリセルＭＣからデータ信号ＤＯ０〜ＤＯ７が読み出される。
【００７３】
データ信号ＤＯ０〜ＤＯ７は、ＣＰＵ１に与えられる。ＣＰＵ１では、レジスタ４から読み出されたデータ信号がデータ信号ＤＯ０〜ＤＯ７に加算されて書込データ信号ＤＩ０〜ＤＩ７が生成される。書込データ信号ＤＩ０〜ＤＩ７は、ＭＲＡＭ１５に与えられる。
【００７４】
サイクル１のπ〜２πの期間およびサイクル２の０〜２πの期間で列アドレス信号ｙ１に対応する列選択線ＣＳＬＷ１が「Ｈ」レベルにされるとともに列選択線ＣＳＬＲ０が「Ｌ」レベルにされ、列選択線ＣＳＬ０に対応する８つのメモリセルＭＣにデータ信号ＤＩ０〜ＤＩ７が書き込まれる。この変更例でも、実施の形態と同じ効果が得られる。
【００７５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７６】
１  ＣＰＵ、２  命令デコーダ、３，４  レジスタ、５  加算器、６  クロック発生回路、７，２４，４６  ＡＮＤゲート、８  論理回路、９，１０，１３，３４  ゲート回路、１１  フリップフロップ、１２，３５  ＯＲゲート、１４  ＲＯＭ、１５  ＭＲＡＭ、２０  磁気抵抗素子、２１，３８，４１，４７  ＮチャネルＭＯＳトランジスタ、２２  行デコーダ、２３  行デコーダ単位回路、２５  ワード線ドライバ、２６，３１  ドライバ、２７，３３，３４，３９  ＮＡＮＤゲート、２８，３２  インバータ、３０，４５  列デコーダ、３７，４０  ＰチャネルＭＯＳトランジスタ、４８  読出アンプ、ＢＬ  ビット線、ＣＳＬ  列選択線、ＤＬ  データ線、ＭＡ  メモリアレイ、ＭＣ  メモリセル、ＳＬ  ソース線、ＷＬ  ワード線。
【図１】
2010182375.tif 000003
【図２】
2010182375.tif 000004
【図３】
2010182375.tif 000005
【図４】
2010182375.tif 000006
【図５】
2010182375.tif 000007