以下、本発明の実施の形態の例について図面に従って説明する。しかしながら、かかる実施の形態例が本発明の技術的範囲を限定するものではない。
図1は、複数のメモリとそれをコントロールする制御部との関係を示した概略図である。システム側である制御部10に、この例では4つのSDRAM12,14,16,18が接続されている。この例では、コマンド信号COMMANDとアドレス信号ADDRESSとは、クロックCLKに同期して与えられる。また、書き込みデータ信号は、データ入出力端子DQに、データストローブ信号DSに同期して与えられる。こうすることで、負荷容量が大きいデータ入出力端子DQに対するストローブ信号DSを、コマンド信号やアドレス信号等に対するストローブ信号であるクロックCLKとは非同期にすることができ、より確実に書き込みデータをメモリ12〜18に与えることができる。
図2は、上記したクロックCLKとそれに非同期のデータストローブ信号DSとを利用した書き込み動作の概略タイミングチャートを示す図である。この例では、クロックclk1に同期してコマンド信号COMMANDに書き込みコマンドがアドレス信号ADDRESSに列アドレスがそれぞれ与えられる。それに対して、データストローブ信号DSの立ち上がりと立ち下がりエッジに同期して、書き込みデータD0,D1,D2,D3がデータ入出力端子DQに与えられる。
データストローブ信号DSは、クロックCLKと非同期ではあるが、同一周波数であって、位相が早まる方向であればtDSS 以内、遅くなる方向であればtDSH 以内になることが規格上決められている。そこで、図中(a)は、データストローブ信号DSが、最大tDSS だけ位相が早まった場合のデータストローブ信号DSとデータ入出力端子DQの書き込みデータとの関係を示す。また、図中(b)は、データストローブ信号DSが、最大tDSH だけ位相が遅くなった場合のデータストローブ信号DSとデータ入出力端子DQの書き込みデータとの関係を示す。
図中(a)の場合は、データストローブ信号DSの立ち上がりエッジから所定時間経過したタイミングで、データ入出力端子DQに与えられた書き込みデータD0を取り込み、更にデータストローブ信号DSの次の立ち下がりエッジから所定時間経過したタイミングで、データ入出力端子DQに与えられた書き込みデータD1を取り込む。同様に、書き込みデータD2,D3もデータストローブ信号DSに同期して取り込まれる。従って、クロックclk1.5のタイミングで既に2ビットの書き込みデータD0,D1の取り込みは終了し、更に、アドレスの入力も終了している。従って、何時でも内部の書き込み動作を開始することができることが理解される。
図中には、一例として、クロックclk2のタイミングで内部の書き込み動作が開始することが示されている。
一方、図2中(b)の場合は、クロックclk1のタイミングより時間tDSH遅れたタイミングでデータストローブ信号DSが立ち上がる。そして、上記(a)の場合と同様に、データストローブ信号DSの立ち上がりエッジから所定時間経過したタイミングで、データ入出力端子DQに与えられた書き込みデータD0が取り込まれ、更にデータストローブ信号DSの次の立ち下がりエッジから所定時間経過したタイミングで、データ入出力端子DQに与えられた書き込みデータD1が取り込まれる。従って、この場合は、クロックclk2より少し早いタイミングで、両データD0,D1の入力が終了する。
図3は、内部書き込み動作がクロックCLKに同期して行われる場合のメモリの概略構成図である。この例では、メモリセル領域は、奇数側メモリセルアレイ20と偶数側メモリセルアレイ21とから構成される。そして、両メモリセルアレイ20,21に対応して、奇数側センスアンプ22,偶数側センスアンプ23、及び奇数側列デコーダ24、偶数側列デコーダ25がそれぞれ設けられる。
このメモリセルアレイに対して、周辺回路の内、書き込みデータ入力回路部分と、列アドレス信号の処理回路部分とが図3に示される。
また、図4は、データストローブ信号DSが、基準のクロックよりもtDSS だけ位相が進んでいる場合のタイミングチャート図である。また、図5は、データストローブ信号DSが、基準のクロックよりもtDSH だけ位相が遅れている場合のタイミングチャート図である。
まず、まず図3に示した、書き込みデータ入力回路部分から説明する。データ入出力端子DQには、入力バッファ30が接続され、外部から与えられるレファレンスレベルVrefを利用して、与えられる書き込みデータ信号D0,D1が入力される。この書き込みデータ信号の取り込みは、上記した通り、データストローブ信号DSの立ち上がりエッジまたは立ち下がりエッジで行われる。その為に、外部から与えられたデータストローブ信号DSをバッファ回路46で入力し、その入力された内部データストローブ信号int.DSは、遅延回路48で一定時間遅延されて遅延したデータストローブ信号DDSとなる。そして、その遅延したデータストローブ信号DDSは、立ち上がりエッジ(H側エッジ)トリガ回路50に供給され、立ち上がりエッジトリガ回路50は、最初の書き込みデータ信号DQを取り込む第一のデータストローブ信号DSPZを生成する。その結果、第一のデータストローブ信号DSPZのタイミングで、書き込みデータ信号D0(図中は内部書き込みデータ信号int.DQ)が第一のデータラッチ回路32に取り込まれる。
更に、データストローブ信号DSの立ち下がりエッジに同期した第二のデータストローブ信号DSPXが、立ち下がりエッジ(L側エッジ)トリガ回路52により生成され、入力された二番目の書き込みデータ信号D1がその第二のデータストローブ信号DSPXのタイミングで、第二のデータラッチ回路36に取り込まれる。その時、同時にデータラッチ回路32内の最初の書き込みデータ信号D0は、データシフトレジスタ34にラッチされる。ここまでは、書き込みデータ信号D0,D1が、データストローブ信号DSに同期して内部に取り込まれる動作である。
データシフトレジスタ34とデータラッチ回路36にそれぞれラッチされた第一と第二の書き込みデータDQE1とDQO1とは、トランスファクロック発生回路56により生成されるクロックに同期したデータトランスファ信号DQTZのタイミングで、それぞれのデータトランスファ回路38,40にラッチされる。トランスファクロック生成回路56には、バッファ54により入力されたクロックCLK(図中では内部クロックint.CLK)が与えられる。従って、データトランスファ信号DQTZは、2つの書き込みデータD0,D1の取り込みが確実に終了するクロックclk2のタイミングから所定時間後のタイミングで生成される。その結果、データストローブ信号に同期していた書き込みデータ信号が、データトランスファー回路38,40でクロックに同期した信号になる。尚、この例では、最初の書き込みデータD0は偶数側書き込みデータで、第二の書き込みデータD1は奇数側書き込みデータの例である。
そして、書き込みクロック発生回路58により生成された書き込み信号WRTZのタイミングで、偶数側書き込みアンプ42と奇数側書き込みアンプ44が活性化され、それぞれのデータバス43,45に書き込みデータ信号が出力される。
一方、列アドレスの処理部分は以下の通りである。列アドレス端子ADDRESSに供給された列アドレス信号は、クロックclk1の立ち上がりエッジに同期したタイミングで、アドレスバッファ62により内部に取り込まれる。そして、内部に取り込まれた列アドレス信号CAxxZ(xxは、アドレス番号を意味する。)は、トランスファクロック発生回路56により、クロックclk1のタイミングから所定時間遅延したタイミングで発生されるタイミングコントロール信号65のタイミングで、内部列アドレスラッチ・カウンタ回路66に入力される。
この内部列アドレスラッチ・カウンタ回路66は、与えられた列アドレスをラッチし、それに+1加算するカウンタ機能により連続する列アドレスを生成する。そして、最初の列アドレスが偶数の場合は、その列アドレスを偶数側のプリデコーダ等に与え、+1加算された第二の列アドレスを奇数側のプリデコーダ等に与える。
そして、書き込みクロック発生回路58では、アドレス生成信号ADLZを書き込み信号WRTZと同様に、クロックclk2のタイミングから所定時間経過したタイミングで生成する。その結果、アドレス生成信号ADLZに応答して、内部列アドレスラッチ・カウンタ66は、奇数側列アドレスCAxxZ1Oと偶数側列アドレスCAxxZ1Eとを、冗長比較回路68,78とプリデコーダ70,80にそれぞれ与える。それぞれの回路は、比較結果信号COMZO,COMZEと、プリデコード信号PCAxxZO,PCAxxZEとをそれぞれ生成する。
書き込みクロック生成回路58が生成するタイミング信号CSZに応答して、コラム選択パルス発生回路60は、コラム選択信号CSELZを生成し、書き込み信号WRTZとほぼ同じタイミングで、列デコーダ24,25にそれぞれの比較結果信号COMZ1O,COMZ1Eとプリデコード信号PCAxxZ1O,PCAxxZ1Eとを与える様に、ドライバ72,74,82,84を駆動させる。即ち、クロックclk2のタイミングに同期して、書き込み信号WRTとコラム選択信号CSELZとを生成して、データバス43,45への書き込みデータの出力と、列アドレスに応じたプリデコード信号や冗長比較結果信号の列デコーダ回路24,25への出力とのタイミングが、合わせられる。
従って、図3〜図5で示したメモリでは、書き込みデータ信号はデータストローブ信号DSに同期して取り込まれるが、内部の書き込み動作は、クロックclk2のタイミングに応答して生成されるデータトランスファ信号DQTZを基準にして制御される。
ところが、上記説明からも理解される通り、第一、第二の書き込みデータ信号の取り込みには、クロックCLKの1サイクルを要する。それは、データストローブ信号DSの立ち上がりエッジと立ち下がりエッジで第一と第二の書き込みデータ信号が取り込まれるからである。かかる理由から、クロックclk1から1サイクル後のクロックclk2のタイミングで内部の書き込み動作を開始することが適切といえる。
しかし、図4に示した通り、データストローブ信号DSが早いタイミングで入力される場合は、図中のクロックclk1.5とclk2の中間のタイミングで既に書き込みデータD0,D1の取り込みは終了している。更に、列アドレスもクロックclk1に同期して与えられている。その場合は、クロックclk2のタイミングまで待機することは、書き込み時間を長くする原因となる。
更に、アドレス生成信号ADLZに応答して列アドレスの生成、冗長アドレスとの比較、及びプリデコードが開始されるので、冗長の比較結果信号やプリデコード信号が生成されてからコラム選択信号CSELZを生成するタイミングが遅くなってしまう。
図6は、本発明にかかる実施の形態例であるデータストローブ信号に同期して内部の書き込み動作が行われるメモリの概略構成図である。図7は、図6において、データストローブ信号DSが、基準のクロックよりもtDSS だけ位相が進んでいる場合のタイミングチャート図である。また、図8は、図6において、データストローブ信号DSが、基準のクロックよりもtDSH だけ位相が遅れている場合のタイミングチャート図である。
図6に示したメモリは、図3のメモリの構成と同様に、図中左上半分の書き込みデータ入力回路部と、左下半分の列アドレス処理部とを有する。図中右側のメモリセルアレイ部分は、同様の構成である。従って、図3に対応する部分には、同じ引用番号を付した。
図6のメモリの例では、書き込みデータ信号DQ(D0,D1)は、データストローブ信号DSに同期して内部に取り込まれ、更に、内部の書き込みタイミングもデータストローブ信号DSをもとに制御される。具体的には、第一のデータストローブ信号DSPZと第二のデータストローブ信号DSPXにより、データ入出力端子DQからの書き込みデータ信号D0,D1が取り込まれる。更に、第二のデータストローブ信号DSPXに基づいて、書き込みクロッック発生回路58にて、書き込みアンプ42,44を活性化する書き込み信号WRTZが生成され、更にコラム選択パルス発生回路60にてコラム選択信号CSELZが生成される。
更に、図6のメモリの例では、列アドレス信号ADDRESSは、クロックCLKに同期したタイミングで、内部への取り込み、+1増加したアドレスの生成、及び冗長比較回路68,78やプリデコーダ70,80での動作が制御される。
従って、概略的な動作は、クロックclk1のタイミングで、列アドレスの取り込み、カウンタ動作、プリデコード動作、冗長比較動作等が行われる。その一方で、データストローブ信号DSの立ち上がりエッジと立ち下がりエッジとで書き込みデータ信号を取り込み、更にデータストローブ信号の立ち下がりエッジを起点にしたタイミングで、内部での書き込み動作が行われる。内部での書き込み動作は、書き込みアンプ42,44の活性化により、データバス線に書き込みデータ信号を出力し、コラム選択信号CSELZにより冗長の比較結果信号COMZ3とプリデコード信号PCAxxZ3とをメモリセルアレイのコラムデコーダ24、25に供給する。
上記の動作を行う為に、図6に示したメモリでは、図3と異なり、書き込みクロック発生回路58は、データストローブ信号DSから生成された第二のデータストローブ信号DSPXに応答して、書き込み信号WRTを生成する。また、コラム選択パルス発生回路60は、書き込みクロック発生回路58が生成する信号CSZによりコラム選択信号CSELZを生成する。この点でも図3と異なる。従って、図3におけるデータトランスファ回路38,40は、図6の例には存在しない。
更に、図6に示したメモリでは、図3と比較して、冗長比較回路68,78やプリデコーダ70,80は、内部の書き込み動作とは別に、クロックCLKのクロックタイミングclk1のタイミングで先行して制御される。そのために、内部列アドレスラッチ・カウンタ66による列アドレスCAxxZ1の出力のタイミングは、内部クロック発生回路90により生成されるアドレス生成信号ADLZにより制御される。
図7を参照しながら、図6の構成と動作について以下に説明する。図7は、データストローブ信号DSがクロックclk1よりも時間tDDS 早い位相をもつ場合である。データ入出力端子DQから入力される最初の書き込みデータD0は、データストローブ信号DSから生成された遅延データストローブ信号DDSの立ち上がりエッジのタイミングで生成される第一のデータストローブ信号DSPZにより、第一のデータラッチ回路32にラッチされる。更に、その後の遅延データストローブ信号DDSの立ち下がりエッジのタイミングで生成される第二のデータストローブ信号DSPXにより、二番目の書き込みデータD1が第二のデータラッチ回路36にラッチされる。そして、第二のデータストローブ信号DSPXのタイミングで、同時に第一のデータラッチ回路32にラッチされた書き込みデータD0が、データシフトレジスタ34に保持される。
上記した第二のデータストローブ信号DSPXのタイミング後に、2つの書き込みデータ信号D0,D1はラッチ完了する為、書き込みクロック発生回路58は、その信号DSPXに応答して、書き込み信号WRTZを生成する。更に、書き込みクロック発生回路58により生成される信号CSZに基づいて、コラム選択パルス発生回路60が、コラム選択信号CSELZを生成する。
一方で、クロックclk1のタイミングで、内部クロック発生回路90が生成するアドレスバッファラッチ信号ABLにより、アドレスバッファ62は、列アドレスADDRESSを取り込み、内部の列アドレスCAxxZが生成される。尚、ここでxxとは、複数の列アドレスが存在することを示している。
更に、内部列アドレスラッチ・カウンタ回路66は、与えられた内部列アドレスCAxxZから、+1増加した次の列アドレスをカウンタにより生成し、例えば、偶数側列アドレスCAxxZ1Eと奇数側列アドレスCAxxZ1Oとを生成する。これらの偶数側列アドレスCAxxZ1Eと奇数側列アドレスCAxxZ1Oとは、アドレス生成信号ADLZのタイミングで、奇数側の冗長比較回路68とプリデコーダ70に、及び偶数側の冗長比較回路78とプリデコーダ80にそれぞれ与えられる。そして、アドレス生成信号ADLZは、クロックclk1に基づいて内部クロック発生回路90により生成される。
従って、列アドレス信号ADDRESSに対する、増加アドレスの生成、冗長アドレスとの比較、プリデコード動作などは、データストローブ信号DSとは無関係に、クロックclk1に基づくタイミングで早期に行われる。従って、各ドライバ72,74,76,78による、比較結果信号COMZO,COMZEとプリデコード信号PCAxxZO,PCAxxZEの出力のタイミングは、図3の場合よりも早いタイミングにすることができる。そのタイミングは、コラム選択信号CSELZのタイミングである。
図7に示される通り、内部書き込み動作は、クロックclk1.5から僅かに遅れたt10のタイミングで実質的に開始する。従って、図3の場合にクロックclk2から内部の書き込み動作を開始する場合に比較して、図7中中央に示した通り、時間ΔTだけ早く内部書き込み動作を開始することができる。このような、早いタイミングで内部の書き込み動作を行う為には、上記した通り、列アドレスの処理は、クロックclk1のタイミングに従って早期に開始しておくことが必要になる。図3の例では、列アドレスの処理は、クロックclk2以降に行われている。
図8は、データストローブ信号DSが、クロックclk1より時間tDSH だけ位相が遅れる場合のタイミングチャート図である。この場合の図6に示した構成の動作は、図7の場合と同様である。図8に示される通り、クロックclk1のタイミングに応じて、列アドレスの処理は先行して行われる。そして、クロックclk1より時間tDSH 遅れて与えられるデータストローブ信号DSの立ち上がりエッジ(第一のデータストローブ信号DSPZ)で最初の書き込みデータ信号D0がラッチされ、立ち下がりエッジ(第二のデータストローブ信号DSPX)で第二の書き込みデータ信号D1がラッチされる。そして、その第二のデータストローブ信号DSPXを起点にして、時刻t10から内部の書き込み動作が開始される。
従って、図8の場合は、内部の書き込み動作は、図3の場合と同等の時刻に開始する。但し、図3の場合は、図4,5に示した通り、内部書き込み動作が時刻t10で開始してから、図中t20で示した様に冗長比較動作やプリデコード動作が行われるので、それらの結果である比較結果信号COMZO,COMZEやプリデコード信号PCAxxZO,PCAxxZEは、その後に生成される。それに対して、図6のメモリの場合は、図8に示される通り、内部の書き込み動作が開始する時刻t10より前に、図中t20で示した様に、冗長比較動作やプリデコード動作が行われる。従って、列アドレス信号処理により生成される比較結果信号COMZO,COMZEやプリデコード信号PCAxxZO,PCAxxZEが内部の書き込み動作開始の時刻t10よりも前に既に生成される。従って、全体としては、書き込み完了までの時間は短くなる。
この様に、列アドレス信号は、クロックclk1に同期して取り込まれるので、それに引き続いてクロックclk1に同期した制御タイミングで、列アドレスに対する冗長比較やプリデコード動作を先行させることで、その後に発生する内部書き込み動作の処理時間を短くすることができる。
図9は、ドライバ72,74,76,78の回路構成を示す図である。図6に示されたドライバ回路は、3つの制御信号TCS1,TCS2,CSELZが与えられる。但し、紙面の都合で、その詳細な構成は示されていない。従って、図9にてその詳細構成と動作を説明する。
図9に示された通り、3つの制御信号TCS1,TCS2,CSELZが、ラッチ回路92、ラッチ回路94及び最終駆動回路96の前段のゲートを制御する。内部クロック発生回路90により生成されたタイミングコントロール信号TCS1は、インバータ102により反転され、CMOSトランスファゲートを構成するN型トランジスタ100とP型トランジスタ101とを制御する。即ち、タイミングコントロール信号TCS1により、冗長比較回路68、78からの比較結果信号COMZとプリデコーダ70,80からのプリデコード信号PCAxxZとが取り込まれ、ラッチ回路92にラッチされる。ラッチ回路92は、2つのインバータ103,104にて構成される。これにより、冗長比較動作やプリデコード動作の結果が、クロックclk1から生成されたタイミングコントロール信号TCS1により、ドライバ回路内にラッチされる。その結果、ノードn1には、ラッチされた結果信号COMZ1とプリデコード信号PCAxxZ1とが保持される。
次に、書き込みクロック発生回路58により生成される第二のタイミングコントロール信号TCS2により、CMOSトランスファーゲート105,106が開かれ、ノードn1の信号がラッチ回路94にラッチされる。この第二のタイミングコントロール信号TCS2は、データストローブ信号DSにより生成される信号であり、内部書き込み開始に応じて比較結果信号やプリデコード信号がラッチ回路94にラッチされる。従って、ラッチ回路94は、クロックCLKに同期した制御から、データストローブ信号に同期した制御に以降する為のトランスファー回路の機能を有する。ラッチ回路94は、NANDゲート108とインバータ109から構成され、ノードn2には、ラッチされた結果信号COMZ2とプリデコード信号PCAxxZ2とが保持される。
ここで、最後に、コラム選択パルス発生回路58が生成するコラム選択信号SELZにより、NANDゲート110が開かれ、インバータ111により、結果信号COMZ3とプリデコード信号PCAxxZ3とがメモリセルアレイに設けられたコラムデコーダ24,25に供給される。即ち、書き込みアンプ回路42,44の動作に整合して、結果信号COMZ3とプリデコード信号PCAxxZ3とが出力される。従って、内部書き込み動作は、データストローブ信号DSに同期した制御となる。
上記した通り、ドライバ回路72,74,76,78は、第二のタイミングコントロール信号TCS2のHレベルにより、プリデコード信号PCAxxZと比較結果信号COMZとがラッチ回路94に保持される。そして、コラム選択信号CSELZのHレベルの期間ラッチ回路94が保持しているプリデコード信号PCAxxZ2と比較結果信号COMZ2とがそれぞれプリデコード信号PCAxxZ3と比較結果信号COMZ3として、コラムデコーダ24,25に与えられる。従って、第二のタイミングコントロール信号TCS2とコラム選択信号CSELZとが、データストローブ信号DSに同期した制御タイミングで、内部書き込み動作を可能にする。そして、第一のタイミングコントロール信号TCS1は、クロックclk1に同期して制御されて、先行して行った冗長比較結果信号COMZなどをラッチ回路92にラッチする。
尚、読み出し信号READがHレベルの時は、NANDゲート112と108が開かれ、プリデコード信号と比較結果信号とが直接NANDゲート110に供給される。従って、読み出しの時は、タインミングコントロール信号TCS1,TCS2は利用されず、コラム選択信号CSELZにより制御されたタイミングで、コラムデコーダに出力されるだけである。
図10は、図6に示された第一、第二のデータラッチ回路32,36とデータシフトレジスタ回路34の具体的回路の例を示す図である。先に入力される偶数側の書き込みデータD0を、第一のデータストローブ信号DSPZで取り込む第一のデータラッチ回路32は、マスタースライス型のフリップフロップ回路で構成される。第一のデータストローブ信号DSPZのHレベルによりCMOSゲート120,121が導通し、2つのインバータ123,124で構成されるスレーブ側のラッチ回路に第一の書き込みデータ信号D0がラッチされる。そして、第一のデータストローブ信号DSPZのLレベルにより、CMOSゲート125,146が導通し、2つのインバータ127,128で構成されるマスター側ラッチ回路に保持される。
第二のデータラッチ回路36とデータシフトレジスタ34とは、第一のデータラッチ回路32と構成は同等である。データストローブ信号DSの立ち下がりエッジに同期した第二のデータストローブ信号DSPXのHレベルにより、第二の書き込みデータD1が、第二のデータラッチ回路36のインバータ143,144からなるラッチ回路にラッチされる。同時に、第一のデータラッチ回路32が保持していたデータ信号DQEも、データシフトレジスタ34のインバータ133,134からなるラッチ回路にラッチされる。そして、第二のデータストローブ信号DSPXのLレベルにより、それぞれの回路34,36内のインバータ137,138からなるラッチ回路と、インバータ147,148からなるラッチ回路とにそれぞれの書き込みデータD0,D1が保持される。その結果、偶数側の書き込みデータ信号DQE1と奇数側書き込みデータ信号DQO1とが、それぞれの回路34,36で生成されることになる。
図11は、データラッチ回路32,34の具体的回路の別の例を示す図である。この例は、前段のラッチ回路176と後段のラッチ回路178とから構成される。前段ラッチ回路176は、P型トランジスタ150,151,158,161及びN型トランジスタ152,153,154,159,160,162,163で構成される。また、後段のラッチ回路178は、2つのインバータ172,173により構成される。
その動作を簡単に説明すると、制御信号DSPZ、DSPXがLレベルの間は、データラッチ回路は非活性状態であり、電流消費がない。即ち、トランジスタ150,151が導通し、ノードn10,n11が共にHレベルにある。その結果、インバータ166によりノードn12はLレベル、インバータ167によりノードn13もLレベルにある。従って、トランジスタ168〜171は全て非導通であり、ノードn14,n15は高インピーダンス状態である。その結果、後段ラッチ回路178は、前の状態を保持している。
次に、内部入出力端子int.DQに書き込みデータ信号D0,D1が与えられた時に、制御信号DSPZ、DSPXがHレベルになると、トランジスタ150,151が非導通となり、トランジスタ154が導通し、書き込みデータD0,D1とその反転信号が与えられるトランジスタ152,153で構成される差動増幅器が活性化される。今、仮に書き込みデータ信号がHレベルとすると、トランジスタ152が導通し、ノードn10がLレベル、ノードn11がHレベルとなる。従って、トランジスタ168が導通、トランジスタ169が非導通となり、ノードn14がHレベルとなる。一方、トランジスタ171が導通して、ノードn15はLレベルとなる。これらのノードn12,n13の信号は、トランジスタ160,163にフィードバックされ、前段のラッチ回路176のラッチを促進する。また、ノードn14とn15により後段ラッチ回路178は、そのデータをラッチする。
このデータラッチ回路は、制御信号DSPZ、DSPXの立ち上がりエッジだけで、書き込みデータ信号D0,D1を検出して、後段ラッチ回路178にラッチすることができる。従って、図10で示した制御信号の立ち上がりと立ち下がりによりラッチするマスタスレーブ型の回路よりも高速動作が可能になる。しかも、制御信号がHレベルの間だけ電流を消費する省エネタイプとなっている。
図12は、本発明の第二の実施の形態例のメモリの概略構成を示す図である。図12中、図3,図6に対応する部分には、同じ引用番号を付した。また、図13は、図12の動作のフローチャート図である。図13中も、図7,8に対応する部分には同じ引用番号を付した。
図12の回路例での特徴的な点は、データストローブ信号に同期して書き込みデータ信号が与えられる仕様ではなく、外部クロックCLKに同期して書き込みデータ信号が与えられる仕様である。
一般に、列アドレス信号ADDRESSは、書き込みコマンド信号と共に、クロックclk1の立ち上がりエッジに同期して与えられる。そこで、図12に示されたメモリでは、その書き込みコマンドをデコードして、書き込みモードであることが認識されてから、次のクロックclk2のタイミングで書き込みデータ信号を入出力端子DQに与えることにより、入力バッファ回路30の消費電流を低く抑えることができる。即ち、書き込みコマンドを認識してから、入力バッファ回路30をイネーブル信号ENにより活性化して待機すれば良いからである。従って、この例では、書き込みデータ信号D0,D1は、データ入出力端子DQに、クロックclk2の立ち上がりエッジとクロックclk2.5の立ち下がりエッジに同期して、システム側から与えられる。
従って、書き込みデータ信号の取り込みと、それに伴う内部の書き込み動作の開始は、クロックclk2を起点にした内部制御信号のタイミングで制御される。ところが、列アドレスADDRESSは、クロックclk1の立ち上がりエッジに同期して入力されるので、冗長アドレスの比較動作やプリデコード動作などの列アドレスの処理も先行してクロックclk1を起点とする制御信号により行うことで、その後に入力される書き込みデータ信号D0,D1がラッチされた時点から、即座に内部での書き込み動作を開始させることができる。
上記の動作を可能にするために、第一のデータストローブ信号DSPZと第二のデータストローブ信号DSPXとは、外部クロックCLKをバッファ回路46で取り込んだ内部クロックint.CLKに応答して、立ち上がりエッジトリガ回路50と立ち下がりエッジトリガ回路56により生成される。また、内部の書き込み動作を制御する書き込みクロック発生回路58は、上記のクロックint.CLKから生成された第二のデータストローブ信号DSPXにより制御される。書き込みクロック生成回路58により、書き込み信号WRTやコラム選択信号CSELZ等が生成されることは、図6の回路の場合と同等である。
更に、列アドレスADDRESSが与えられるクロックclk1を起点として内部クロック発生回路90は、アドレスバッファラッチ信号ABL、第一のタイミングコントロール信号TCS1,及び内部列アドレスラッチ・カウンタ回路から偶数側と奇数側の列アドレスCAxxZ1O,CAxxZ1Eを出力させるアドレスラッチ信号ADLZを生成する。この構成により、クロックclk1を起点として、先行して冗長アドレスの比較動作を冗長比較回路68,78に行わせ、プリデコード動作をプリデコーダ70,80に行わせることが可能になる。
ドライバ72,74,76,78の動作は、図6、図9の場合と同様であり、第一のタイミングコントロール信号TCS1で、冗長比較結果信号COMZO,COMZEとプリデコード信号PCAxxZO,PCAxxZEとをラッチし、第二のタイミングコントロール信号TCS1で、同信号を更にラッチし、そして、コラム選択信号CSELZのタイミングで、それらの信号COMZ3O,COMZ3EとPCAxxZ3O,PCAxxZ3Eが、コラムデコーダ24,25に出力される。
図13の動作タイミングチャート図に示される通り、クロックclk1のタイミングで列アドレス信号が取り込まれ、図中t20で示した時刻に、冗長比較回路68,78やプリデコーダ70,80での動作が先行して行われる。そして、クロックclk2のタイミングで、書き込みデータ信号D0,D1がシーケンシャルに取り込まれ、時刻t10から内部の書き込み動作が開始される。具体的には、書き込みアンプ42,44に書き込み信号WRTが与えられ、コラム選択信号CSELZがドライバ72、74,82.84に与えられる。冗長比較動作などが先行して行われているので、書き込みデータ信号を取り込んだ直後のコラム選択信号CSELZにより、内部書き込み動作を開始することができる。
図14は、データ入出力端子DQに接続された入力バッファ回路30の具体的回路を示す図である。この入力バアッファ回路は、外部から与えられる書き込みデータ信号D0,D1とレファレンス信号Vrefにより、書き込みデータ信号のHレベル又はLレベルを検出し、CMOSレベルに変換する回路である。P型トランジスタ180,181によりカレントミラー回路が構成され、それを負荷とするトランジスタ182,183により差動増幅回路が構成される。そして、電流源トランジスタ184は、コマンドデコーダ189により生成されたイネーブル信号ENにより導通し、差動増幅回路を活性化する。コマンドデコーダ189には、制御信号/RAS,/CAS,/CS1,/WEが与えられ、それらの制御信号の組み合わせにより、書き込みコマンドが与えられる。
コマンドデコーダ189は、制御信号の組み合わせから書き込みコマンドが与えられたことを検出すると、イネーブル信号ENをHレベルにして、入力バッファ回路30を活性化し、書き込みデータ信号を受信する為に待機する。従って、入力バッファ30は、書き込みの時のみ活性化されるので、消費電力を大幅に節約できる。
尚、インバータ185,186,187により波形整形されて、CMOSレベルに変換された内部書き込みデータ信号int.DQが生成される。
図15は、上記図12に示した第二の実施の形態例の改良例を示す図である。この例は、外部クロックCLKから内部クロックint.CLKを生成する為に、ディレイド・ロック・ループ回路194を利用した例である。
このディレイド・ロック・ループ回路194は、入力バッファ46から入力されたクロックCLKと同期し且つ位相が一致する内部クロックint.CLKを生成する回路である。ディレイド・ロック・ループ回路194は、遅延回路196と、その遅延回路196の遅延量を制御する遅延制御回路198と、位相比較回路199とを有する。そして、擬似的にバッファ回路200を更に有する。
このディレイド・ロック・ループ回路194は、良く知られているが、基本的な動作原理は、外部クロックCLKと内部クロックint.CLKとの位相を位相比較回路で比較し、両クロックの位相が一致する様に、遅延制御回路198が遅延回路196の遅延量を制御する。擬似的なバッファ回路200は、入力バッファ46と同等の遅延特性を有しているので、例えば、内部クロックint.CLKは、外部クロックCLKから1周期遅れて位相が一致するクロックとなる。クロックは、次々にHレベルとLレベルを繰り返すので、外部クロックCLKと内部クロックint.CLKとは、見かけ上全く同じ位相をもったクロックになる。即ち、図13中の内部クロックint.CLKの破線にて示した通り、外部クロックと同じクロックになる。
かかる内部クロックを使用して、クロックの立ち上がりエッジに同期したデータストローブ信号DSPZや、クロックの立ち下がりエッジに同期したデータストローブ信号DSPXを生成すると、データラッチ回路190でのラッチのタイミングを図13の場合よりも早くすることができる。その分、図15の例では、データ入出力端子DQは、図12の例の如く入力バッファ30を経てデータラッチ回路に接続されるのではなく、直接データラッチ回路190,192に接続される。従って、これらのラッチ回路は、入力バッファの機能も併せ持つ。
図15の例は、それ以外の点では、図12の場合と同じであり、対応する回路には同じ引用番号を付した。即ち、クロックclk1のタイミングで、列アドレスを取り込み冗長比較動作まで行う。一方、クロックclk2のタイミングから書き込みデータD0,D1をデータ入出力端子DQから取り込み、内部書き込み動作を行う。
図16は、図15におけるデータラッチ回路190、192の回路例を示す図である。このデータラッチ回路には、外部クロックCLKと外部からのレファレンス電圧Vrefも与えられる。そして、制御クロックとして、データストローブ信号DSPZ、DSPXが与えられる。制御クロックがLレベルの間は、P型トランジスタ214,215が導通状態にあり、ノードn20,n21が共にHレベルに維持される。それにより、トランジスタ228〜231が非道通となり、ノードn22,n23は高いインピーダンス状態となる。
そこで、制御クロックDSPZ、DSPXがHレベルになると、トランジスタ214,215が非導通になり、N型トランジスタ218,219が導通状態になり、トランジスタ216,217から構成される差動回路により、書き込みデータ信号D0,D1が、レファレンス電圧Vrefよりも高いか、低いかのバッファ動作が行われる。それに応じて、ノードn20,n21の一方がHレベルからLレベルに下がる。例えば、書き込みデータ信号がHレベルとすると、トランジスタ216が導通し、ノードn20がLレベルに下がる。
それに従って、トランジスタ228が導通し、ノードn22はHレベルになり、トランジスタ231が導通してノードn23はLレベルになる。それらのノーードの状態が、インバータ232,233からなるラッチ回路によりラッチされる。
即ち、図16に示したデータラッチ回路は、外部クロックCLKと同位相の内部クロックから生成される早いタイミングのデータストローブ信号DSPZ、DSPXにより制御されるので、バッファ機能を有するとともに、制御クロックDSPZ、DSPXの立ち上がりエッジだけで、入力された書き込みデータ信号を高速にラッチする機能を有する。従って、図15のデータラッチ回路として適切である。
図17は、上記図12に示した第二の実施の形態例の別の改良例を示す図である。この例も、外部クロックCLKから内部クロックint.CLKを生成する為に、ディレイド・ロック・ループ回路194を利用している。更に、この例では、データ入出力端子DQに対して1つのデータラッチ回路190を設け、データストローブ信号DSPZ、DSPXにより、時系列に書き込みデータ信号D0,D1が取り込まれ、デマルチプレクサ202により、偶数側の書き込みデータ信号DQE1と奇数側の書き込みデータ信号DQO1とに分けられる。
データラッチ回路190は、図15のデータラッチ回路と同等の構成を持つ。そして、デマルチプレクサ回路202では、データストローブ信号DSPZ、DSPXをそれぞれ遅延した制御信号DDSPZ,DDSPXに応答して、データラッチ回路190がラッチしたデータを、偶数及び奇数側の書き込みデータDQE1とDQO1とに振り分ける。
図18は、そのデマルチプレクサ回路の例を示す図である。この回路は、3つのラッチ回路250,260,270を有する。このデマルチプレクサ回路では、データラッチ回路190によりラッチされた内部のデータIDQが、第一のデータストローブ信号DSPZを遅延させた制御信号DDSPZによりラッチ回路250内のインバータ255,256からなるラッチ部にラッチされる。そして、第二のデータストローブ信号DSPXを遅延させた制御信号DDSPXにより、CMOSゲート262,263,及び272,274が導通し、第二の書き込みデータ信号D1がラッチ回路270内のインバータ275,276のラッチ部にラッチされ、ラッチ回路250にラッチされていたデータDQEがラッチ回路260内のインバータ265,266からなるラッチ部にラッチされる。
図17に示したメモリは、上記したデマルチプレクサ回路を設けた他は、図15のメモリの構成と同様である。したがって、対応する箇所には同じ引用番号を付した。尚、図17及び図18に示したデータラッチ回路190とデマルチプレクサ回路202とは、図12の第二の実施の形態例に限らず、図6の第一の実施の形態例のバッファ回路30、データシフトレジスタ34,36の代わりにも適用することができる。
上記の実施の形態例は、シンクロナスDRAMを例にして説明したが、シンクロナスDRAMに限らず、外部クロックに同期してアドレス等が与えられるメモリに広く本発明は適用することができる。
以上説明した通り、本発明によれば、外部クロックとそれに非同期の外部データストローブ信号を利用したメモリにおいて、外部データストローブ信号に応答して書き込みデータ信号の入力後直ちに内部書き込み動作を開始するので、書き込み動作を高速化することができる。更に、外部クロックに同期して与えられるアドレス信号に対して内部の書き込み動作を待たずに冗長比較動作等を行うことで、更に書き込み動作を高速化することができる。
また、第一の外部クロックに同期してアドレスとコマンドが供給され、第一の外部クロックに続く第二の外部クロックに同期して書き込みデータ信号が供給されるメモリにおいて、第一の外部クロックに同期してアドレス信号が入力されるのに続いて冗長比較動作等を行うので、内部書き込み動作に要する時間を短くすることができる。