(57)【要約】      （修正有）【課題】共通データバスを共有する複数のローカルメモリユニットが重複してデータを転送すること、あるいは、複数のローカルメモリユニットに対して重複してデータを転送することを抑制した半導体記憶装置を提供する。【解決手段】半導体記憶装置は、複数のメモリセルを含む複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞を備える。共通データバスＤＢは、複数のローカルメモリユニットに共有され、複数のローカルメモリユニットからデータを転送し、あるいは、複数のローカルメモリユニットへデータを転送する。タイミングコントローラＴ／Ｃはローカルメモリユニットの単位で配置するのではなく、インターリーブ動作を行なう単位（ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞のグループ）に対して1つ配置する。これにより読出しデータまたは書込みデータは、共通データバスＤＢにおいて衝突しない。【選択図】図３
2013097843.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを含む複数のメモリユニットと、
前記複数のメモリユニットに共有され、前記複数のメモリユニットからデータを転送し、あるいは、該複数のメモリユニットへデータを転送するデータバスと、
前記データバスを共有する前記複数のメモリユニットに対して共通に設けられた遅延時間ユニットを含み、入力信号を受け取ってから所定の遅延時間後に前記複数のメモリユニットを駆動させる制御信号を出力するタイミングコントローラとを備えた半導体記憶装置。
【請求項２】
前記タイミングコントローラは、前記データバスへデータを重複することなく連続して送信し、あるいは、前記データバスからデータを重複することなく連続して受け取る前記複数のメモリユニットに対して共通に設けられていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記タイミングコントローラは、
直列に接続された複数の前記遅延時間ユニットで形成された遅延時間ユニット列と、
複数の前記遅延時間ユニットのそれぞれに対応して設けられ、対応する前記遅延時間ユニットが入力信号を伝達したことを示す複数のステータスラッチ部とを含むことを特徴とする請求項１または請求項２に記載の半導体記憶装置。
【請求項４】
前記複数のステータスラッチ部は、前記遅延時間ユニット列を共有していることを特徴とする請求項３に記載の半導体記憶装置。
【請求項５】
前記複数ステータスラッチ部のそれぞれから出力された複数の制御信号は、選択された前記メモリユニットを動作させるために用いられることを特徴とする請求項３または請求項４に記載の半導体記憶装置。
【請求項６】
前記遅延時間ユニットは、入力信号をラッチするラッチ回路と、前記ラッチ回路にラッチされた信号を所定の遅延時間の経過後に出力する遅延素子と、前記ラッチ回路の出力および前記遅延素子の出力を両方が活性化されたときに出力を活性化させる論理ゲートとを備えたことを特徴とする請求項１から請求項５のいずれかに記載の半導体記憶装置。
【請求項７】
前記遅延素子と前記ラッチ回路との間に接続され、前記論理ゲートから出力される信号のパルス幅を決定するパルス幅決定遅延素子をさらに備えたことを特徴とする請求項６に記載の半導体記憶装置。
【請求項８】
前記データバスの出力部に接続され、前記複数のメモリユニットから読み出したデータを記憶するキャッシュメモリをさらに備えたことを特徴とする請求項１から請求項７のいずれかに記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明による実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
従来からＭＲＡＭ（Magnetic Random Access Memory）等の半導体記憶装置は、複数のメモリユニットに対して共通に設けられた共通データバスを備え、この共通データバスを介して連続的にデータを転送するように構成されている（インターリーブ動作）。この場合、データバスを共有する複数のメモリユニットが重複してデータを転送しないように、あるいは、該複数のメモリユニットへ重複してデータを転送しないようにタイミングを制御する必要がある。
【０００３】
従来、複数のメモリユニットのそれぞれに対してデータ転送のタイミングを制御するために、各メモリユニットに対応して遅延回路を設ける必要があった。しかし、遅延回路は、プロセスばらつき等によって、遅延時間にばらつきが生じる。このような遅延時間のばらつきは、データバスにおけるデータの重複転送を引き起こすおそれがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−４９７３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
データバスを共有する複数のメモリユニットが重複してデータを転送することを抑制し、あるいは、上記複数のメモリユニットに対して重複してデータを転送することを抑制した半導体記憶装置を提供する。
【課題を解決するための手段】
【０００６】
本実施形態による半導体記憶装置は、複数のメモリセルを含む複数のメモリユニットを備える。データバスは、複数のメモリユニットに共有され、複数のメモリユニットからデータを転送し、あるいは、該複数のメモリユニットへデータを転送する。遅延時間ユニットは、データバスを共有する複数のメモリユニットに対して共通に設けられている。タイミングコントローラは、遅延時間ユニットを含み、入力信号を受け取ってから所定の遅延時間後に複数のメモリユニットを駆動させる制御信号を出力する。
【図面の簡単な説明】
【０００７】
【図１】本実施形態に従った磁気ランダムアクセスメモリ（以下、ＭＲＡＭ）のメモリチップを示すブロック図。
【図２】４つのメモリユニットＭＵを示すブロック図。
【図３】第１の実施形態による共通データバスＤＢ、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞およびタイミングコントローラＴ／Ｃの関係を示すブロック図。
【図４】第１の実施形態によるタイミングコントローラＴ／Ｃの内部構成を示す構成図。
【図５】遅延時間ユニットＴｋの内部構成を示す構成図、遅延素子Ｔｅの内部構成を示す回路図および遅延時間ユニットＴｋの動作を示すタイミング図。
【図６】アドレスストローブ信号ＡＳＴのパルス幅の劣化を示す比較例の図。
【図７】第１の実施形態による半導体記憶装置のデータ読出し動作を示すタイミング図。
【図８】第２の実施形態に従った共通データバスＤＢ、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞およびタイミングコントローラＴ／Ｃの関係を示すブロック図。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
【０００９】
（第１の実施形態）
図１は、第１の実施形態に従った磁気ランダムアクセスメモリ（以下、ＭＲＡＭ）のメモリチップを示すブロック図である。図２は、４つのメモリユニットＭＵをさらに拡大表示したブロック図である。尚、本実施形態は、ＭＲＡＭ以外の抵抗変化型素子を用いたメモリ（例えば、ＰＣＲＡＭ、ＲｅＲＡＭ等）、その他、ＳＲＡＭ、ＤＲＡＭ等のメモリ一般にも適用可能である。
【００１０】
本実施形態によるＭＲＡＭは、メモリセルアレイＭＣＡと、センスアンプＳＡと、ライトドライバＷＤと、メインロウデコーダＭＲＤと、ローカルロウデコーダＬＲＤと、リードバッファＲＢと、カラムデコーダＣＤと、タイミングコントローラＴ／Ｃと、制御信号ドライバＣＳＤと、共通データバスＤＢと、カラム選択線ＣＳＬとを備えている。
【００１１】
メモリセルアレイＭＣＡは、例えばマトリクス状に二次元配置された複数のメモリセルＭＣを備えている。各メモリセルＭＣはビット線対ＢＬ１、ＢＬ２とワード線ＷＬとの交点に対応して配置されている。すなわち、メモリセルＭＣの一端は、ビット線対の一方ＢＬ１に接続され、他端はビット線対の他方ＢＬ２に接続される。ビット線対ＢＬ１，ＢＬ２は、カラム方向に延伸している。ワード線ＷＬは、カラム方向に対して直交するロウ方向に延伸している。
【００１２】
メモリセルＭＣは、ＴＭＲ（tunneling magnetoresistive）効果を利用したＭＴＪ（Magnetic Tunnel Junction）素子と、セルトランジスタとを備え、スピン偏極トンネル効果による磁気抵抗の変化によりデジタルデータを記憶する。
【００１３】
データ読出しまたはデータ書込み時に、同時にアクセスされる複数のメモリセルアレイＭＣＡは、それぞれローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞を構成している。即ち、各ローカルメモリユニットＬＭＵ＜ｉ＞（ｉ＝０〜７）に含まれるメモリセルアレイＭＣＡは、同じタイミングでアクセスされる。
【００１４】
センスアンプＳＡは、例えば、ビット線ＢＬ１を介してメモリセルＭＣに接続されており、メモリセルＭＣのデータを検出する機能を有する。ライトドライバＷＤは、例えば、ビット線ＢＬ１、ＢＬ２を介してメモリセルＭＣに接続されており、メモリセルＭＣにデータを書き込む機能を有する。データ読出し時には、ビット線ＢＬ２は、基準電圧（グランド）に接続される。データ書込み時には、ライトドライバＷＤは、書込みデータの論理によって、ビット線ＢＬ１を高レベル電圧にし、あるいは、ビット線ＢＬ２を高レベル電圧にする。
【００１５】
メインロウデコーダＭＲＤは、ロウアドレスを受け取り、ローカルロウデコーダＬＲＤへそのロウアドレスを送る。ローカルロウデコーダＬＲＤは、ロウアドレスに従って選択されたワード線ＷＬに電圧を印加する。
【００１６】
カラムデコーダＣＤは、カラムアドレスに従って選択されたカラム選択線ＣＳＬを介してセンスアンプＳＡまたはライトドライバＷＤを駆動させ、選択カラムのビット線対ＬＢ１、ＢＬ２に電圧を印加するように構成されている。
【００１７】
共通データバスＤＢは、複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に共有されている。共通データバスＤＢは、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞からのデータを異なるタイミングで転送し、あるいは、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞へデータを異なるタイミングで転送する。
【００１８】
尚、本実施形態において、１６本の共通データバス対群ＤＢが、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に共有されている。しかし、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に共有される共通データバスＤＢの数はこれに限定しない。また、本実施形態において、データバスＤＢを共有するローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞の数は８個であるが、データバスＤＢを共有するローカルメモリユニットの数もこれに限定しない。
【００１９】
リードバッファＲＢは、共通データバスＤＢを介してセンスアンプＳＡから読み出されたデータを受け取り、一時的に保持するバッファである。尚、書込みデータは、ＷＲＩＴＥバッファから共通データバスＤＢを介してライトドライバＷＤへ転送される。
【００２０】
タイミングコントローラＴ／Ｃは、同一の共通データバス対群ＤＢに接続されたローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に含まれる複数のメモリセルアレイＭＣＡがデータを重複することなく転送することができるように、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞のそれぞれの動作タイミングを制御する。これにより、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞は、互いに異なるタイミングで共通データバスＤＢへデータを転送し、あるいは、互いに異なるタイミングで共通データバスＤＢからデータを受け取ることができる。タイミングコントローラＴ／Ｃは、複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に対して共通に設けられている。タイミングコントローラＴ／Ｃは、メモリがインターリーブ動作することができるようにリードバッファＲＢ，ライトバッファＷＢおよびキャッシュメモリＣＭも制御する。
【００２１】
制御信号ドライバＣＳＤは、タイミングコントローラＴ／Ｃからのコマンドを受けて、センスアンプＳＡ、ライトドライバＷＤおよびローカルロウデコーダＬＲＤ等を動作させるように構成されている。
【００２２】
図３は、第１の実施形態による共通データバスＤＢ、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞およびタイミングコントローラＴ／Ｃの関係を示すブロック図である。図３は、選択カラムの複数のメモリセルアレイＭＣＡおよび該選択カラムの共通データバス対群ＤＢを示していると考えてもよい。
【００２３】
タイミングコントローラＴ／Ｃは、単数または複数の共通データバス対群ＤＢを共有する複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に対して共通に設けられている。タイミングコントローラＴ／Ｃは、アドレスストローブ信号ＡＳＴおよびＬＭＵ選択アドレス信号ＬＳＡを受け取り、互いに異なるタイミングでデータを転送するようにローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞を制御する。例えば、アドレスストローブ信号ＡＳＴを受け取ったときにＬＭＵ選択アドレス信号ＬＳＡがＬＭＵ＜０＞を選択している場合には、タイミングコントローラＴ／Ｃは、ＬＭＵ＜０＞を駆動させ、ＬＭＵ＜０＞が共通データバスＤＢへデータを転送する。次にアドレスストローブ信号ＡＳＴを受け取ったときにＬＭＵ選択アドレス信号ＬＳＡがＬＭＵ＜１＞を選択している場合には、タイミングコントローラＴ／Ｃは、ＬＭＵ＜１＞を駆動させ、ＬＭＵ＜１＞がデータを共通データバスＤＢへ転送する。このように、タイミングコントローラＴ／Ｃは、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞からのデータを重複することなく連続的に共通データバスＤＢへ転送することができる。逆に、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞が共通データバスＤＢからデータを受け取るときも、タイミングコントローラＴ／Ｃは、共通データバスＤＢからのデータを重複することなく連続的にローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞へ転送することができる。即ち、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞は、インターリーブ動作をすることができる。
【００２４】
このように、本実施形態では、ローカルメモリユニットの単位でタイミングコントローラを配置するのではなく、データバスＤＢを共有しインターリーブ動作を行なう単位（ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞のグループ）に対して1つのタイミングコントローラＴ／Ｃを配置している。これにより、インターリーブ動作において、連続して転送されるデータが同一の共通データバスＤＢにおいて重複しない。即ち、読出しデータまたは書込みデータは、共通データバスＤＢにおいて衝突しない。以下、本実施形態をより詳細に説明する。
【００２５】
図４は、第１の実施形態によるタイミングコントローラＴ／Ｃの内部構成を示す構成図である。タイミングコントローラＴ／Ｃは、遅延時間ユニット列ＴＤＣと、カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞と、アドレスデコーダＡＤ＜０＞〜ＡＤ＜７＞と、論理ゲート（ＮＡＮＤゲート）Ｇ＜０＞〜Ｇ＜７＞とを備えている。
【００２６】
遅延回路としての遅延時間ユニット列ＴＤＣは、複数の遅延時間ユニットＴ０〜Ｔｎを直列に接続して構成されており、８つのカスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞に対して共有されている。カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞が、１つの遅延時間ユニット列ＴＤＣに対して並列に接続されていると換言してもよい。各遅延時間ユニットＴ０〜Ｔｎ−１は、アドレスストローブ信号ＡＳＴを受けてから所定の遅延時間（例えば、２ｎｓ）の経過後に、次の遅延時間ユニットＴ１〜Ｔｎへアドレスストローブ信号ＡＳＴを出力するように構成されている。最初の遅延時間ユニットＴ０はアドレスデコーダＡＤ＜０＞〜ＡＤ＜７＞からアドレスストローブ信号ＡＳＴを受ける。最後の遅延時間ユニットＴｎは選択カラムの論理ゲートＧｎにアドレスストローブ信号ＡＳＴを出力する。遅延時間ユニットＴ０〜Ｔｎの内部構成は、図５を参照して後述する。
【００２７】
アドレスデコーダＡＤ＜０＞〜ＡＤ＜７＞は、ＬＭＵ選択アドレス信号ＬＳＡを受けて、これをデコードするように構成されている。そして、アドレスデコーダＡＤ＜０＞〜ＡＤ＜７＞は、自己のカラムが選択されている場合、アドレスストローブ信号ＡＳＴに基づいてカスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞を動作させる。
【００２８】
カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞は、それぞれローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞に対応して設けられている。カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞は、それぞれ複数のＳＲ（Set-Reset）ラッチ回路Ｌ０〜Ｌｎと、論理ゲートＧ０〜Ｇｎとを備えている。
【００２９】
カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞の構成はそれぞれ同じであるので、以下、カスケードステートマシンＣＳＭ＜０＞の構成を説明し、他のカスケードステートマシンＣＳＭ＜１＞〜ＣＳＭ＜７＞の構成の説明を省略する。
【００３０】
ステータスラッチ部としてのＳＲラッチ回路Ｌ０〜Ｌｎは、それぞれ遅延時間ユニットＴ０〜Ｔｎに対応して設けられており、アドレスデコーダＡＤ＜０＞または論理ゲートＧ０〜Ｇｎ−１から受け取ったアドレスストローブ信号ＡＳＴをラッチするように構成されている。ＳＲラッチ回路Ｌ０〜Ｌｎがアドレスストローブ信号ＡＳＴをラッチするタイミングは、それぞれ遅延時間ユニットＴ０〜Ｔｎによって決定される。或る遅延時間ユニットＴｋ（ｋ＝０〜ｎ）がアドレスストローブ信号ＡＳＴを伝達しているとき、その遅延時間ユニットＴｋに対応するラッチ回路Ｌｋは、アドレスストローブ信号ＡＳＴをラッチする。そして、アドレスストローブ信号ＡＳＴが全ての遅延時間ユニットＴ０〜Ｔｎを通過すると、全てのＳＲラッチ回路Ｌ０〜Ｌｎがアドレスストローブ信号ＡＳＴをラッチした状態となる。その後、リセット信号ＲＥＳＥＴｎ＜０＞が活性化すると、全ＳＲラッチ回路Ｌ０〜Ｌｎにラッチされていたデータは、全てリセットされる。即ち、ラッチ回路Ｌ０〜Ｌｎは、それぞれに対応する遅延時間ユニットＴ０〜Ｔｎがアドレスストローブ信号ＡＳＴを伝達したことを示すステータスラッチ部として機能する。
【００３１】
例えば、ラッチ回路Ｌ０〜Ｌｎは、当初、論理ロウを出力するように設定されている。即ち、ノードＴ０＜０＞〜Ｔｎ＜０＞および制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞は、論理ロウの状態である。また、アドレスデコーダＡＤ＜０＞は、当初、論理ハイに不活性化されている。
【００３２】
ＬＭＵ選択アドレス信号ＬＳＡがカスケードステートマシンＣＳＭ＜０＞を選択する信号である場合、アドレスデコーダＡＤ＜０＞がアドレスストローブ信号ＡＳＴの活性化（論理ハイ）を受けて、論理ロウを出力する。これにより、ラッチ回路Ｌ０がノードＴ０＜０＞に論理ハイをラッチする。遅延時間ユニットＴ０が、所定の遅延時間の経過後、アドレスストローブ信号ＡＳＴ（論理ハイ）を出力する。これにより、制御信号ＲＡＳＴ＜０＞が倫理ハイに活性化される。論理ゲートＧ０は、ラッチ回路Ｌ０からの出力値（論理ハイ）および遅延時間ユニットＴ０からの出力値（論理ハイ）を受けて、ラッチ回路Ｌ１へ論理ロウを出力する。これにより、ラッチ回路Ｌ１は、ノードＴ１＜０＞に論理ハイをラッチする。遅延時間ユニットＴ０からのアドレスストローブ信号ＡＳＴは、遅延時間ユニットＴ１へも出力される。
【００３３】
遅延時間ユニットＴ１が、所定の遅延時間の経過後、アドレスストローブ信号ＡＳＴの論理ハイを出力する。これにより、制御信号ＲＡＳＴ＜１＞が倫理ハイに活性化される。論理ゲートＧ１は、ラッチ回路Ｌ１からの出力値（論理ハイ）および遅延時間ユニットＴ１からの出力値（論理ハイ）を受けて、ラッチ回路Ｌ２へ論理ロウを出力する。
【００３４】
このように、遅延時間ユニット列ＴＤＣは、ラッチ回路Ｌｋがアドレスストローブ信号ＡＳＴをラッチしてから遅延時間ユニットＴｋの遅延時間の経過後に、制御信号ＲＡＳＴ＜ｋ＞を活性化させ、かつ、次のラッチ回路Ｌｋ＋１へアドレスストローブ信号ＡＳＴを伝達する。さらに、遅延時間ユニット列ＴＤＣは、ラッチ回路Ｌｋ＋１がアドレスストローブ信号ＡＳＴをラッチしてから遅延時間ユニットＴｋ＋１の遅延時間の経過後に、制御信号ＲＡＳＴ＜ｋ＋１＞を活性化させ、かつ、次のラッチ回路Ｌｋ＋２へアドレスストローブ信号ＡＳＴを伝達する。
【００３５】
これを繰り返すことによって、遅延時間ユニット列ＴＤＣは、アドレスストローブ信号ＡＳＴが入力されてから遅延時間ユニットＴ０〜Ｔｎの総遅延時間の経過後に制御信号ＲＡＳＴ＜ｎ＞を論理ハイに活性化させる。即ち、アドレスストローブ信号ＡＳＴが入力されてからアドレスストローブ信号ＡＳＴが制御信号ＲＡＳＴ＜ｎ＞として出力されるまでの時間は、遅延時間ユニットＴ０〜Ｔｎによって決定される。
【００３６】
本実施形態において、制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞は、ローカルメモリユニットＬＭＵ＜０＞の各構成要素を動作させるために割り当てられる。例えば、制御信号ＲＡＳＴ＜０＞は、メインロウデコーダＭＲＤ、ローカルロウデコーダＬＲＤを駆動させ、選択ワード線ＷＬを活性化させるために用いられ得る。制御信号ＲＡＳＴ＜１＞は、センスアンプＳＡを活性化させるセンスアンプイネーブル信号として用いられ得る。制御信号ＲＡＳＲ＜２＞は、データの検出開始のトリガーとして用いられ得る。制御信号ＲＡＳＴ＜ｎ＞が活性化されると、ローカルメモリユニットＬＭＵ＜０＞からの読出しデータが共通データバスＤＢを介してリードバッファＲＢへ転送される。このように、タイミングコントローラＴ／Ｃは、共通データバスＤＢへのデータ転送のタイミングを決定するだけでなく、メモリの各構成要素の動作タイミングを決定することができる。
【００３７】
ＬＭＵ選択アドレス信号ＬＳＡを変更することによって、他のカスケードステートマシンＣＳＭ＜１＞〜ＣＳＭ＜７＞を選択することができる。このとき、カスケードステートマシンＣＳＭ＜１＞〜ＣＳＭ＜７＞も上記カスケードステートマシンＣＳＭ＜０＞と同様に動作する。これにより、本実施形態による半導体記憶装置は、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞のインターリーブ動作のタイミングを司る遅延回路を一元化することができる。
【００３８】
このように本実施形態では、遅延時間ユニットＴ０〜Ｔｎは、カスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞に対して共通である。従って、いずれのカスケードステートマシンＣＳＭ＜０＞〜ＣＳＭ＜７＞が選択された場合であっても、アドレスストローブ信号ＡＳＴが入力されてからアドレスストローブ信号ＡＳＴがＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞として出力されるまでの遅延時間は同じである。
【００３９】
図５（Ａ）は、遅延時間ユニットＴ０〜Ｔｎのうち或る遅延時間ユニットＴｋの内部構成を示す構成図である。ｋは０〜ｎの整数である。図５（Ａ）に示すように、遅延時間ユニットＴｋは、ラッチ回路Ｌｔと、遅延素子Ｔｅと、パルス幅決定遅延素子Ｔｐと、論理ゲートＧｔとを備えている。論理ゲートＧｔは、ラッチ回路Ｌｔの出力および遅延素子Ｔｅの出力を受けて、それらのＮＡＮＤ演算結果を出力する。即ち、論理ゲートＧｔは、ラッチ回路Ｌｔの出力および遅延素子Ｔｅの出力の両方が論理ハイに活性化されたときに、出力を論理ロウに活性化させる。ラッチ回路Ｌｔは、入力信号ＡＳＴｉｎに応じて実質的に遅滞無くノードＸの信号（例えば、論理ハイ）を論理ゲートＧｔおよび遅延素子Ｔｅへ出力する。ラッチ回路Ｌｔは、入力信号ＡＳＴｉｎをラッチする機能を有する。遅延素子Ｔｅは、ラッチされたノードＸの信号を受けて、所定の遅延時間の経過後に、論理ゲートＧｔおよびパルス幅決定遅延素子ＴｐへノードＸの信号を出力する。これにより、論理ゲートＧｔは、入力信号ＡＳＴｉｎが入力されてから所定の遅延時間の経過後に論理ロウを出力する。即ち、出力信号ＡＳＴｏｕｔが論理ハイに活性化されるタイミングは、入力信号ＡＳＴｉｎが入力されてから所定の遅延時間の経過後である。このように、遅延素子Ｔｅは、遅延時間ユニットＴｋにおけるアドレスストローブ信号ＡＳＴの遅延時間を実質的に決定することができる。
【００４０】
パルス幅決定遅延素子Ｔｐは、遅延素子Ｔｅとラッチ回路Ｌｔとの間に接続され、遅延素子Ｔｅからの出力信号を受けて、所定の遅延時間後に、ラッチ回路ＬｔへノードＸの信号を出力する。これにより、遅延時間ユニットＴｋは、出力信号ＡＳＴｏｕｔが立ち上がってからパルス幅決定遅延素子Ｔｐの遅延時間の経過後に出力信号ＡＳＴｏｕｔを立ち下ける。即ち、パルス幅決定遅延素子Ｔｐは、出力信号ＡＳＴｏｕｔのパルス幅を決定する機能を有する。
【００４１】
遅延時間ユニットＴ０〜Ｔｎの構成は、遅延時間ユニットＴｋの構成と同様でよい。
【００４２】
図５（Ｂ）は、遅延素子Ｔｅの内部構成を示す回路図である。図５（Ｂ）に示すように、遅延素子ＴｅはＣＲ遅延回路で構成されてもよい。これにより、遅延素子Ｔｅの遅延時間は、Ｃ（Capacitor）およびＲ（Resistor）の大きさによって設定することができる。キャパシタＣは、ゲートキャパシタを用いて形成することができる。抵抗Ｒは、拡散層抵抗またはポリシリコン抵抗を用いて形成することができる。
【００４３】
図５（Ｃ）は、遅延時間ユニットＴｋの動作を示すタイミング図である。入力信号ＡＳＴｉｎが論理ハイに活性化されると、ノードＸが遅滞無く論理ハイにラッチされる。遅延時間Ｔｄの経過後、遅延素子ＴｅがノードＸの信号を論理ゲートＧｔへ出力する。これにより、論理ゲートＧｔが論理ロウを出力し、出力信号ＡＳＴｏｕｔが論理ハイに活性化される。
【００４４】
その後、パルス幅決定遅延素子Ｔｐが、遅延時間Ｔｐｌｓの経過後、ノードＸの反転信号をラッチ回路Ｌｔへ出力する。これにより、ノードＸの信号が論理ロウにラッチされ、出力信号ＡＳＴｏｕｔが論理ロウに不活性化される。
【００４５】
このように、入力信号ＡＳＴｉｎは、遅延時間Ｔｄの経過後に、Ｔｐｌｓのパルス幅を有する信号ＡＳＴｏｕｔとして出力される。尚、遅延時間ユニットＴｋの構成は、特に限定されず、インバータ遅延回路、単なるＲＣ遅延回路、定電流源を使用した遅延回路等であってもよい。
【００４６】
ただし、図５（Ａ）に示すラッチ回路Ｌｔ、パルス幅決定遅延素子Ｔｐ、論理ゲートＧｔを省いて、図５（Ｂ）に示すような、単にＲＣ遅延回路付きインバータを遅延時間ユニットＴｋとして用いた場合、アドレスストローブ信号ＡＳＴのパルス幅は、遅延時間ユニットＴ０〜Ｔｎの後段へ伝達されるに従い劣化する（短くなる）。例えば、図６に示すように、アドレスストローブ信号ＡＳＴのパルス幅は、遅延時間ユニットＴ０からＴｎへ伝達されるに従って劣化する。これでは、タイミングコントローラＴ／Ｃが正常に機能せず、誤動作を誘発するおそれがある。
【００４７】
これに対処するために、本実施形態では、図５（Ａ）に示すように、ラッチ回路Ｌｔ、パルス幅決定遅延素子Ｔｐ、論理ゲートＧｔを設けることによって、パルス幅を回復させている。これにより、図５（Ｃ）に示すように、アドレスストローブ信号ＡＳＴのパルス幅は、各遅延時間ユニットＴ０〜ＴｎにおいてＴｐｌｓに設定される。パルス幅決定遅延素子Ｔｐは、例えば、ファンアウト３程度のインバータを偶数段接続した程度の単純な構成でよい。遅延時間Ｔｐｌｓは、例えば、約１ｎｓでよい。このように、本実施形態によれば、アドレスストローブ信号ＡＳＴのパルス幅を維持することができる。
【００４８】
本実施形態による半導体記憶装置は、インターリーブ動作のタイミングを司る遅延回路を一元化している。これにより、共通データバスＤＢを共有する複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞におけるデータ転送の遅延時間がばらつかない。よって、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞が、共通データバスＤＢにおいてデータを重複して転送することを抑制できる。あるいは、共通データバスＤＢからローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞へ重複してデータを転送することを抑制することができる。
【００４９】
例えば、従来のように、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞ごとに遅延回路が設けられており、各遅延回路の遅延時間が３０ｎｓとする。このようなメモリを実際に製造すると、各遅延回路の遅延時間はプロセスばらつき等によりばらつく。この遅延時間のばらつきが±１０％と仮定すると、或る遅延回路の遅延時間が３３ｎｓとなり、他の遅延回路の遅延時間が２７ｎｓとなり得る。この場合、データバスを連続して伝搬する２つのデータの時間間隔が６ｎｓも短縮する可能性がある。複数のローカルメモリユニットが５ｎｓごとに連続してインターリーブ動作をした場合、共通データバスＤＢにおいて、２つのデータがコリジョンする。
【００５０】
これに対し、本実施形態では、共通データバスＤＢを共有する複数のローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞におけるデータ転送の遅延時間がばらつかない。よって、共通データバスＤＢにおいて複数のデータがコリジョンすることを抑制することができる。
【００５１】
さらに、遅延素子のキャパシタおよび抵抗は、通常、設置面積を要する。従って、本実施形態によれば、インターリーブ動作のタイミングを司る遅延回路を一元化することより、従来よりも、タイミングコントローラＴ／Ｃのレイアウト面積を小さくすることができる。
【００５２】
図７は、第１の実施形態による半導体記憶装置のデータ読出し動作を示すタイミング図である。図７には、２つのローカルメモリユニットＬＭＵ＜０＞、ＬＭＵ＜１＞に連続してアクセスするときのインターリーブ動作を示している。勿論、本実施形態による半導体記憶装置は、より多くのローカルメモリユニットに連続してアクセスし、インターリーブ動作をすることもできる。
【００５３】
ｔ０においてＬＭＵ選択アドレスＬＳＡおよびアドレスストローブ信号ＡＳＴがタイミングコントローラＴ／Ｃに入力されると、タイミングコントローラＴ／Ｃは、ＬＭＵ選択アドレスＬＳＡに従ってカスケードステートマシンＣＳＭを駆動させる。ＬＭＵ選択アドレスＬＳＡがローカルメモリユニットＬＭＵ＜０＞を選択するアドレスである場合、タイミングコントローラＴ／Ｃは、ローカルメモリユニットＬＭＵ＜０＞に対応するカスケードステートマシンＣＳＭ＜０＞を駆動させる。
【００５４】
上述のように、遅延時間ユニット列ＴＤＣは、アドレスストローブ信号ＡＳＴを所定の遅延時間ずつ遅延させながら制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞を活性化させる。また、遅延時間ユニット列ＴＤＣは、アドレスストローブ信号ＡＳＴを所定の遅延時間ずつ遅延させながらカスケードステートマシンＣＳＭ＜０＞のラッチ回路Ｌ０〜Ｌｎのラッチ状態を順に反転させる。
【００５５】
まず、アドレスストローブ信号ＡＳＴによってラッチ回路Ｌ０が反転する（ｔ１）。その後、遅延時間ユニットＴ０の遅延時間が経過すると、制御信号ＲＡＳＴ＜０＞が活性化され、かつ、ラッチ回路Ｌ１のラッチ状態が反転する（ｔ２）。さらに、遅延時間ユニットＴ１の遅延時間が経過すると、制御信号ＲＡＳＴ＜１＞が活性化され、かつ、ラッチ回路Ｌ２のラッチ状態が反転する（ｔ３）。遅延時間ユニット列ＴＤＣおよびカスケードステートマシンＣＳＭ＜０＞がこのような動作を繰り返し、ｔｎ＋１において、ラッチ回路ＬｎがノードＴｎ＜０＞を立ち上げると、ｔｒｓｔ０において、論理ゲートＧｎがリセット信号ＲＥＳＥＴｎ＜０＞を論理ロウに活性化させる。リセット信号ＲＥＳＥＴｎ＜０＞が論理ロウに活性化されることによって、カスケードステートマシンＣＳＭ＜０＞内の全ラッチ回路Ｌ０〜Ｌｎが初期状態にリセットされる。
【００５６】
一方、ｔ０においてＬＭＵ選択アドレスＬＳＡおよびアドレスストローブ信号ＡＳＴを受けてからΔＴｓ（例えば、５ｎｓ）後に、次のＬＭＵ選択アドレスＬＳＡおよびアドレスストローブ信号ＡＳＴがタイミングコントローラＴ／Ｃに入力される（ｔ１０）。ＬＭＵ選択アドレスＬＳＡがローカルメモリユニットＬＭＵ＜１＞を選択するアドレスである場合、タイミングコントローラＴ／Ｃは、ローカルメモリユニットＬＭＵ＜１＞に対応するカスケードステートマシンＣＳＭ＜１＞を駆動させる。
【００５７】
そして、遅延時間ユニット列ＴＤＣは、アドレスストローブ信号ＡＳＴを所定の遅延時間ずつ遅延させながら制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞を活性化させる。また、遅延時間ユニット列ＴＤＣは、アドレスストローブ信号ＡＳＴを所定の遅延時間ずつ遅延させながら、カスケードステートマシンＣＳＭ＜１＞のラッチ回路Ｌ０〜Ｌｎのラッチ状態を順に反転させる。
【００５８】
まず、アドレスストローブ信号ＡＳＴによってラッチ回路Ｌ０が反転する（ｔ１１）。その後、遅延時間ユニットＴ０の遅延時間が経過すると、制御信号ＲＡＳＴ＜０＞が活性化され、かつ、ラッチ回路Ｌ１のラッチ状態が反転する（ｔ１２）。さらに、遅延時間ユニットＴ１の遅延時間が経過すると、制御信号ＲＡＳＴ＜１＞が活性化され、かつ、ラッチ回路Ｌ２のラッチ状態が反転する（ｔ１３）。カスケードステートマシンＣＳＭ＜１＞がこのような動作を繰り返し、ｔ１（ｎ＋１）において、ラッチ回路ＬｎがノードＴｎ＜１＞を立ち上げると、ｔｒｓｔ１において、論理ゲートＧｎがリセット信号ＲＥＳＥＴｎ＜１＞を論理ロウに活性化させる。リセット信号ＲＥＳＥＴｎ＜１＞が論理ロウに活性化されることによって、カスケードステートマシンＣＳＭ＜１＞内の全ラッチ回路Ｌ０〜Ｌｎが初期状態にリセットされる。
【００５９】
ここで、カスケードステートマシンＣＳＭ＜０＞およびＣＳＭ＜１＞に入力された連続する２つのアドレスストローブ信号ＡＳＴの時間間隔はΔＴｓである。また、カスケードステートマシンＣＳＭ＜０＞の制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞の活性化のタイミングとおよびカスケードステートマシンＣＳＭ＜１＞の制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞の活性化のタイミングとの時間間隔も、ストローブの時間間隔と同じΔＴｓとなる。これは、カスケードステートマシンＣＳＭ＜０＞およびＣＳＭ＜１＞が、遅延時間ユニット列ＴＤＣを共有しているため、時間間隔ΔＴｓが一致するからである。他のカスケードステートマシンＣＳＭ＜２＞〜ＣＳＭ＜ｎ＞についても同様のことが言える。従って、複数のＬＭＵ選択アドレスＬＳＡおよび複数のアドレスストローブ信号ＡＳＴが時間間隔ΔＴｓごとに連続して入力された場合に、本実施形態によるタイミングコントローラＴ／Ｃは、時間間隔ΔＴｓを維持した状態で、ＬＭＵ選択アドレスＬＳＡに対応する制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞を連続して活性化させることができる。その結果、本実施形態によるＭＲＡＭは、アドレスストローブ信号ＡＳＴの時間間隔ΔＴｓに従って、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞を駆動させることができる。
【００６０】
以上、データ読出し動作について説明したが、本実施形態は、データ書込み動作についても、同様のタイミングコントローラＴ／Ｃを用いてインターリーブ動作を実行することができる。この場合、例えば、図４に示す制御信号ＲＡＳＴ＜０＞〜ＲＡＳＴ＜ｎ＞のいずれかの信号ＲＡＳＴ＜ｋ＞を用いてライトドライバＷＤを駆動する。次に、制御信号ＲＡＳＴ＜ｋ＋１＞を用いて共通データバスＤＢを介して書込みデータをライトドライバＷＤへ転送する。その後、信号ＲＡＳＴ＜ｋ＋２＞を用いてライトドライバＷＤからメモリセルＭＣへのデータ書込みを開始する。書込み動作は、制御信号ＲＡＳＴ＜ｎ＞の活性化によって終了させればよい。これにより、データ書込みにおけるインターリーブ動作においても、複数の書込みデータが共通データバスＤＢにおいてコリジョンすることを抑制できる。タイミングコントローラＴ／Ｃの構成および動作は、図４、図５、図７に示したものと同様であるので、その説明を省略する。
【００６１】
データ読出しに用いられるタイミングコントローラＴ／Ｃとデータ書込みに用いられるタイミングコントローラＴ／Ｃとは、それぞれ別個に設けてもよいが、共通にしてもよい。タイミングコントローラＴ／Ｃを共通にすることによって、さらに、ＭＲＡＭのチップサイズを小さくすることができる。
【００６２】
尚、各遅延時間ユニットＴ０〜Ｔｎの遅延時間は、インターリーブ動作における連続する複数のアドレスストローブ信号ＡＳＴの時間間隔ΔＴｓ（ローカルメモリユニットＬＭＵの動作サイクル）よりも短くする必要がある。逆に、複数のアドレスストローブ信号ＡＳＴの時間間隔ΔＴｓは、各遅延時間ユニットＴ０〜Ｔｎの遅延時間よりも長くする必要があると言ってもよい。複数のアドレスストローブ信号ＡＳＴの時間間隔ΔＴｓがいずれかの遅延時間ユニットＴ０〜Ｔｎの遅延時間以下の場合、複数のアドレスストローブ信号ＡＳＴが同一の遅延時間ユニットＴｋに取り込まれる可能性があるからである。また、各遅延時間ユニットＴ０〜Ｔｎの遅延時間は、必ずしも等しい値に設定する必要はなく、ΔＴｓ以内であれば、異なっていても構わない。
【００６３】
（第２の実施形態）
図８は、第２の実施形態に従った共通データバスＤＢ、ローカルメモリユニットＬＭＵ＜０＞〜ＬＭＵ＜７＞およびタイミングコントローラＴ／Ｃの関係を示すブロック図である。第２の実施形態は、リードバッファＲＢの出力部にＳＲＡＭが接続されている点で第１の実施形態と異なる。ＳＲＡＭは、インターリーブ動作可能なように、タイミングコントローラＴ／Ｃの制御を受ける。第２の実施形態のその他の構成は、第１の実施形態の対応する構成と同様でよい。
【００６４】
ＳＲＡＭは、キャッシュメモリとして用いられ、読出し動作において以前にアクセスされたアドレスのデータをそのアドレスとともに保持する。そして、同一アドレスのメモリにアクセスがあった場合に、ＳＲＡＭは、保持しているデータを出力する。これにより、本実施形態によるＭＲＡＭは、読出し時に同一アドレスのメモリに複数のアクセスがあった場合に、メモリセルＭＣに対して再度アクセスすることなく、迅速に読出しデータを出力することができる。
【００６５】
上記第１および第２の実施形態においては、アドレスストローブ信号ＡＳＴからＲＣ遅延を利用してアナログ的に遅延時間を生成している。これに対し、外部クロックをカウンタで計数し、遅延時間を計る方法も考えられる。カウンタを使用するというデジタル的な手法であれば、仮にローカルメモリユニットＬＭＵ毎にタイミングコントローラを配置するような手法をとったとしても遅延時間のばらつきは存在せず読出しデータまたは書込みデータは、共通データバスＤＢにおいて衝突しない。しかし、この場合、当然のことながら、各制御信号のタイミングは、外部クロックの周波数に依存することになる。通常、半導体記憶装置の動作周波数のもととなる外部クロックの周波数は、その上限値（即ち、最高周波数）だけ規定されており、半導体記憶装置は、その上限値より低い周波数であればゆっくり動作をさせてもよい場合が多い。このような場合、外部クロックの周波数が低いと、各制御信号のタイミングは遅くなり、制御信号間の間隔も長くなる。特に、スピン注入書き込み方式ＭＴＪ素子を備えたＭＲＡＭは、データ読出し時にセンスアンプＳＡの活性化時間（セル電流をＭＴＪ素子に流す時間）が増大すると、ＭＴＪ素子のデータの論理を反転させてしまうおそれがある（リードディスターブ）。従って、外部クロックを用いて遅延時間を生成する方式は好ましくない。
【００６６】
したがって、上記実施形態は、外部クロックをカウントして遅延時間を生成する方法を用いず、アドレスストローブ信号ＡＳＴからＲＣ遅延を利用して遅延時間を生成している。ゆえに、遅延時間は、外部クロックの周波数に依存することなく、一定に維持することができる。その結果、本実施形態は、リードディスターブを抑制することができる。
【００６７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００６８】
ＭＣＡ・・・メモリセルアレイ、ＳＡ・・・センスアンプ、ＷＤ・・・ライトドライバ、ＭＲＤ・・・メインロウデコーダ、ＬＲＤ・・・ローカルロウデコーダ、ＲＢ・・・リードバッファ、ＣＤ・・・カラムデコーダ、Ｔ／Ｃ・・・タイミングコントローラ、ＣＳＤ・・・制御信号ドライバ、ＤＢ・・・共通データバス、ＣＳＬ・・・カラム選択線、ＬＭＵ＜０＞〜ＬＭＵ＜７＞・・・ローカルメモリユニット、ＴＤＣ・・・遅延時間ユニット列、Ｔ０〜Ｔｎ・・・遅延時間ユニット、ＣＳＭ＜０＞〜ＣＳＭ＜７＞・・・カスケードステートマシン、Ｌ０〜Ｌｎ・・・ラッチ回路、ＡＤ＜０＞〜ＡＤ＜７＞・・・アドレスデコーダ、Ｇ＜０＞〜Ｇ＜７＞・・・論理ゲート、Ｔｅ・・・遅延素子、Ｔｐ・・・パルス幅決定遅延素子
【図１】
2013097843.tif 000003
【図２】
2013097843.tif 000004
【図３】
2013097843.tif 000005
【図４】
2013097843.tif 000006
【図５】
2013097843.tif 000007
【図６】
2013097843.tif 000008
【図７】
2013097843.tif 000009
【図８】
2013097843.tif 000010