(57)【要約】【課題】半導体記憶装置のオートリフレッシュ動作において、使用環境等によってリフレッシュが間に合わない、または過剰なリフレッシュを行ってしまい消費電力の増加を招くという課題が発生していた。【解決手段】半導体素子の一部に複数のメモリバンクに分割されて形成されるメモリ素子を有し、オートリフレッシュ方式とセルフリフレッシュ方式のいずれかを選択してメモリ素子のリフレッシュ処理を行う半導体記憶装置１であって、オートリフレッシュ方式を選択するコマンドが検出されるごとに半導体素子の温度に応じて、リフレッシュ処理を行う回数を選択する。【選択図】図１
2010170608.tif 000002
【特許請求の範囲】
【請求項１】
半導体素子の一部に複数のメモリバンクに分割されて形成されるメモリ素子を有し、オートリフレッシュ方式とセルフリフレッシュ方式のいずれかを選択して該メモリ素子のリフレッシュ処理を行う半導体記憶装置であって、
前記オートリフレッシュ方式を選択するコマンドが検出されるごとに前記半導体素子の温度に応じて、前記リフレッシュ処理を行う回数を選択する
ことを特徴とする半導体記憶装置。
【請求項２】
前記半導体素子の一部に形成され該半導体素子の温度を検出する温度検出部と、
外部からのコマンドを受けてデコードし、デコードした結果がオートリフレッシュ方式を選択するコマンドの場合にはリフレッシュ実行信号を出力するコマンドデコーダ部と、
前記リフレッシュ実行信号に応じ、前記温度の検出結果に基づいて、予め定められた回数でリフレッシュ起動信号を出力するリフレッシュ起動信号発生部と、
前記複数のメモリバンクの中から特定のメモリバンクを選択するバンクアドレスを前記リフレッシュ実行信号に応じて前記温度によって定められる回数を限度に計数し、前記メモリバンクに対するリフレッシュ処理の分割数で桁上がりするバンクアドレスカウンタと、
前記桁上がりに応じて前記メモリバンクのワード線を選択するＸアドレスをカウントアップするＸアドレスカウンタと、
を有することを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記温度検出部が、前記半導体素子の一部で形成された温度特性が異なる複数の電源部を用いて温度を検出する
ことを特徴とする請求項２に記載の半導体記憶装置。
【請求項４】
前記温度検出部の出力に基づき、前記リフレッシュ実行信号の入力毎に出力状態を保持しながら、前記リフレッシュ起動信号の出力回数を指示する信号を、前記リフレッシュ起動信号発生部に対して出力するリフレッシュ回数設定部
を有することを特徴とする請求項３に記載の半導体記憶装置。
【請求項５】
前記リフレッシュ起動信号が入力されたことに応じて、前記バンクアドレスカウンタから入力されるバンクアドレスで選択されるメモリバンクのリフレッシュ動作を制御するリフレッシュ制御部と、
前記リフレッシュ起動信号が入力されたことに応じて、前記Ｘアドレスカウンタから入力されるＸアドレスを選択し前記複数のメモリバンクに出力するＸアドレスセレクタ部と、
を有することを特徴とする請求項４に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のコマンドが入力された場合に内部のアドレスカウンタで生成したアドレスに対応するメモリセルをリフレッシュする機能を有する半導体記憶装置に関する。
【背景技術】
【０００２】
ダイナミックランダムアクセスメモリ（ＤＲＡＭ）は１つの選択用トランジスタと１つのデータ蓄積用容量を単位メモリセルとし、複数のメモリセルからロウ／カラムのアドレスで特定のメモリセルを選択し、データを読み書きする半導体記憶装置である。しかし、記憶ノードである容量は揮発性であり、一定の間隔でデータの再書き込み（リフレッシュ）を行う必要がある。スペック上、このリフレッシュは回数と最大のリフレッシュ間隔が決まっている。リフレッシュにはオートリフレッシュ（Ａｕｔｏ−Ｒｅｆｒｅｓｈ（ＡＲＥＦ））とセルフリフレッシュ（Ｓｅｌｆ−Ｒｅｆｒｅｓｈ）がある。ＡＲＥＦはＡＲＥＦコマンドが入力された場合に、ｔＲＦＣ期間（ＡＲＥＦコマンドからＡＣＴ（アクティブ）／ＡＲＥＦコマンドまでの期間）に内部のアドレスカウンタによって生成されるアドレスに対応するメモリセルのリフレッシュを行う方式である。リフレッシュ後、アドレスカウンタを更新し、次のＡＲＥＦコマンドに備えるようになっている（例えば特許文献１参照）。
【０００３】
一方、セルフリフレッシュはＲＥＦコマンド（リフレッシュコマンド）と同時にＣＫＥ（クロックイネーブル）を“Ｌ”レベル（ローレベル）にしておくと、ＣＫＥが“Ｌ”レベルの期間中は内部の発振回路（オシレータ）で決められた周波数のタイミング毎にリフレッシュ動作を行うものである。セルフリフレッシュは内部のオシレータの周期を調整することで消費電流とデータ保持時間のトレードオフを調整することが可能であり、このセルフリフレッシュ動作における消費電流削減の方法として、リフレッシュ周期に温度依存を持たせたり、温度センサを使用して周期を変更したりするといった制御は従来行われている。しかし、セルフリフレッシュ動作期間はＣＫＥを“Ｌ”レベルにするため外部クロック信号がＤＲＡＭ内部に入力されない。このため、セルフリフレッシュモードからイグジット（Ｅｘｉｔ）した後はＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋ  Ｌｏｏｐ）等の同期回路の再ロック（ｌｏｃｋ）に長い期間が必要であり、セルフリフレッシュ・イグジット直後にデータを読み出せないという欠点がある。
【０００４】
一方ＡＲＥＦはｔＲＦＣ直後にリード（ＲＥＡＤ）できるため、システムが頻繁に動作している時にはＡＲＥＦが多用されている。このＡＲＥＦは近年のＤＲＡＭスペックでは８Ｋ−リフレッシュ（８Ｋ−Ｒｅｆｒｅｓｈ；８ＫＲＥＦ）が一般的である。８Ｋ−リフレッシュとはＡＲＥＦコマンドを８１９２回繰り返すと元のアドレスに戻る方式である。しかし半導体装置の特性がばらつくなどの原因によりデータ保持時間が短くなった場合には、８１９２回後にまた最初のアドレスをリフレッシュしようとしてもデータが失われてしまうことがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１３５１１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
データ保持時間は温度に依存しており、温度が高いほどデータ保持時間が短くなる。このような時には、リフレッシュを頻繁に行わなければならないが、外部システム上でＡＲＥＦコマンドの間隔を詰めることは難しい。そのため、ｔＲＦＣ期間中に１．５回リフレッシュする５．３ＫＲＥＦ方式（５．３Ｋ−リフレッシュ方式）や２回リフレッシュする４ＫＲＥＦ方式（４Ｋ−リフレッシュ方式）などを採用することでデータが失われないようにしている。ｔＲＦＣ期間中のリフレッシュ回数を増やすと動作電流ＩＤＤ５（ＡＲＥＦ電流）が増加するという問題がある。従来の方法では前もって動作方式を固定して使用しているため、一度５．３ＫＲＥＦ方式や４ＫＲＥＦ方式といったｔＲＦＣサイクル内でリフレッシュ回数の多い方式を採用してしまうと、電流を削減することができなかった。近年システムの低消費電力化が必要とされ、ＤＲＡＭにも低消費電力化が求められている中で５．３ＫＲＥＦ方式や４ＫＲＥＦ方式を採用することは難しくなっている。
【０００７】
このように、外部コマンドであるオートリフレッシュ（ＡＲＥＦ）コマンドに基づくリフレッシュでは、コマンド発行元がＤＲＡＭチップ外部のコントローラであるため、内部でリフレッシュを行うセルフリフレッシュとは異なり、温度に応じてリフレッシュタイミングを変えることができなかった。そのため、従来は、８Ｋ、５．３Ｋ、４ＫＲＥＦ方式をあらかじめ設定することによって、各ＤＲＡＭチップのオートリフレッシュ方式を決定していた。しかしながら、使用環境等によってリフレッシュが間に合わない、または過剰なリフレッシュを行ってしまい消費電力の増加を招くという課題が発生していた。
【課題を解決するための手段】
【０００８】
本発明の半導体記憶装置は、半導体素子の一部に複数のメモリバンクに分割されて形成されるメモリ素子を有し、オートリフレッシュ方式とセルフリフレッシュ方式のいずれかを選択して該メモリ素子のリフレッシュ処理を行う半導体記憶装置であって、前記オートリフレッシュ方式を選択するコマンドが検出されるごとに前記半導体素子の温度に応じて、前記リフレッシュ処理を行う回数を選択することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、半導体素子の温度によってリフレッシュ処理を行う回数、すなわち上述したようなＡＲＥＦの動作モードを切り替えることで、温度の低い時にはｔＲＦＣ内の動作回数を減らして消費電流を削減することができる。他方、温度の高い時にはｔＲＦＣ内の動作回数を増やしてデータの消失を防ぐことができる。これによってシステムの動作状態に合わせてＡＲＥＦ動作を最適化することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の半導体記憶装置の実施の形態を示すブロック図である。
【図２】図１の温度検出回路７０の構成例を示す回路図である。
【図３】図２の温度検出回路７０の動作を説明するための温度−電圧特性図である。
【図４】図２の温度検出回路７０の出力特性を説明するための温度−出力特性図である。
【図５】図１のリフレッシュ回数設定回路８０の構成例を示すブロック図である。
【図６】図１のリフレッシュ回数設定回路８０の入出力特性を示す真理値表である。
【図７】図１のカウンタ回路２０の構成例を示す回路図である。
【図８】図１リフレッシュ起動信号発生回路１０の構成例を示す回路図である。
【図９】図１の半導体記憶装置１の動作例を示すタイミングチャートである。
【図１０】本発明の半導体記憶装置の他の実施の形態を示すブロック図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、この発明の一実施形態としての単体ＤＲＡＭを構成する半導体記憶装置１の構成を示す概略ブロック図である。図１に示す半導体記憶装置１は、半導体素子の一部に複数のメモリバンクに分割されて形成されるメモリ素子を有し、オートリフレッシュ方式とセルフリフレッシュ方式のいずれかを選択してメモリ素子のリフレッシュ処理を行うものであって、オートリフレッシュ方式を選択するコマンドが検出されるごとに半導体素子の温度に応じて、リフレッシュ処理を行う回数を選択するものである。なお、本発明は、オートリフレッシュ方式が選択された際のリフレッシュ処理に関するものであるため、ここではオートリフレッシュ方式によるリフレッシュ処理に関する信号とその制御についてのみ説明することとする。
【００１２】
図１のリフレッシュ処理を行う半導体記憶装置１は、リフレッシュコントローラ２と、アドレスレシーバ３０と、コマンドレシーバ／デコーダ４０と、Ｘアドレスセレクタ／バッファ回路６０と、温度検出回路７０と、リフレッシュ回数設定回路８０と、メモリバンク０（１００）からメモリバンク７（１７０）の８つのメモリバンクとを備えている。また、リフレッシュコントローラ２は、リフレッシュ起動信号発生回路１０と、カウンタ回路２０と、リフレッシュ動作制御回路５０とを有している。また、メモリバンク０（１００）からメモリバンク７（１７０）の８つのメモリバンクは、ＤＲＡＭメモリセルからなるメモリアレイ等を含むＸアドレスラッチ１０１とＸデコーダ・タイミング制御・メモリアレイ１０２とをそれぞれ有している。
【００１３】
上記構成において、アドレスレシーバ３０は、アドレス信号ＡＤＤＲＥＳＳを例えば外部のＤＲＡＭコントローラから入力されると、入力されたアドレスＡＤＤＲＥＳＳを所定のクロック信号に同期して保持し、出力する。
【００１４】
コマンドレシーバ／デコーダ４０は、コマンドＣＭＤを外部のＤＲＡＭコントローラから入力されると、入力されたコマンドＣＭＤをデコードする。コマンドレシーバ／デコーダ４０は、デコードしたコマンドＣＭＤがオートリフレッシュコマンドである場合には、リフレッシュ実行信号ＭＣＲＦＴを発生して、リフレッシュ起動信号発生回路１０およびリフレッシュ回数設定回路８０に対して出力する。また、コマンドレシーバ／デコーダ４０は、デコードしたコマンドＣＭＤがワード線活性のコマンドであることを示すＡＣＴコマンドの場合には、ＭＡＣＴ信号を発生して、Ｘアドレスセレクタ／バッファ回路６０に対して出力する。このＭＡＣＴ信号は、ＡＣＴコマンドが入力された場合に、Ｘアドレスセレクタ／バッファ回路６０によって、アドレスレシーバ３０を介して入力される外部からのアドレスＡＤＤＲＥＳＳを、メモリバンク０（１００）〜７（１７０）内のメモリアレイにおいて活性化するワード線を指定するＸアドレス（すなわち行アドレスあるいはワードアドレス）として選択するための信号である。
【００１５】
なお、本実施の形態においては、コマンドレシーバ／デコーダ４０から出力されるリフレッシュ実行信号ＭＣＲＦＴおよびＭＡＣＴ信号は、予め定められた一定幅のパルス信号（“Ｈ”レベルまたは“Ｌ”レベル）である。
【００１６】
リフレッシュ起動信号発生回路１０は、リフレッシュ実行信号ＭＣＲＦＴに応じ、温度検出回路７０による温度の検出結果に基づいて、予め定められた回数でリフレッシュ起動信号ＲＲＥＦＴを出力する。このリフレッシュ起動信号発生回路１０には、コマンドレシーバ／デコーダ４０からリフレッシュ実行信号ＭＣＲＦＴが入力される。リフレッシュ起動信号発生回路１０には、また、リフレッシュ回数設定回路８０から出力されたＭ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号が入力される。リフレッシュ起動信号発生回路１０は、これらの入力信号に基づいて、予め定められた所定の間隔かつ所定の回数で、リフレッシュ起動信号ＲＲＥＦＴを発生し、カウンタ回路２０、リフレッシュ動作制御回路５０およびＸアドレスセレクタ／バッファ回路６０に出力する。ここで、Ｍ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号は、リフレッシュ処理の回数（すなわちリフレッシュ処理の周期）が異なる３種類のリフレッシュモードのいずれかを指示する信号であり、温度検出回路７０による温度の検出結果に基づいてリフレッシュ回数設定回路８０で生成される。
【００１７】
Ｍ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号は、いずれか１つの信号のみが“Ｈ”レベルとなる信号である。本実施形態では、Ｍ４ＫＲＥＦＴ信号が“Ｈ”レベルの場合、ｔＲＦＣ期間中に２回のリフレッシュ処理が行われる４ＫＲＥＦ方式（４Ｋ−リフレッシュ方式）が選択される。Ｍ５３ＫＲＥＦＴ信号が“Ｈ”レベルの場合、ｔＲＦＣ期間中に１．５回のリフレッシュ処理が行われる５．３ＫＲＥＦ方式（５．３Ｋ−リフレッシュ方式）が選択される。そして、Ｍ８ＫＲＥＦＴ信号が“Ｈ”レベルの場合、ｔＲＦＣ期間中に１回のリフレッシュ処理が行われる８ＫＲＥＦ方式（８Ｋ−リフレッシュ方式）が選択される。また詳細については後述するが、本実施形態では、リフレッシュ起動信号発生回路１０から、１回のリフレッシュ実行信号ＭＣＲＦＴの入力に応じて、Ｍ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号が“Ｈ”レベルとなったときにそれぞれ８回、６回および４回、リフレッシュ起動信号ＲＲＥＦＴが発生される。
【００１８】
カウンタ回路２０は、バンクアドレスカウンタ２１とＸアドレスカウンタ２２とを含んで構成されている。バンクアドレスカウンタ２１は、メモリバンクを指定するアドレスであるバンクアドレスＢＡＤＤを、リフレッシュ起動信号ＲＲＥＦＴが入力される毎にカウントアップする。Ｘアドレスカウンタ２２は、バンクアドレスカウンタ２１の桁上がり出力に応じて、活性化するワード線を指定するＸアドレスＸＡＤＤをカウントアップする。すなわち、カウンタ回路２０では、バンクアドレスカウンタ２１のバンクアドレスＢＡＤＤの最上位ビットがカウントアップすると、つまり、バンクアドレスＢＡＤＤが桁上がりをすると、Ｘアドレスカウンタ２２のＸアドレスＸＡＤＤがカウントアップする。バンクアドレスカウンタ２１は、バンクアドレスＢＡＤＤを、リフレッシュ動作制御回路５０へ出力する。また、Ｘアドレスカウンタ２２は、ＸアドレスＸＡＤＤを、Ｘアドレスセレクタ／バッファ回路６０に出力する。なお、このバンクアドレスＢＡＤＤによって、複数のメモリバンク０（１００）〜７（１７０）の中から特定のメモリバンクが選択される。また、上述したように、リフレッシュ起動信号ＲＲＥＦＴは、リフレッシュ起動信号発生回路１０によって、温度検出回路７０で検出された温度によって定められる回数だけ発生される。したがって、バンクアドレスカウンタ２１は、リフレッシュ実行信号ＭＣＲＦＴが発生される毎にこの温度によって定められる回数を限度にリフレッシュ起動信号ＲＲＥＦＴを計数することになる。また、バンクアドレスカウンタ２１は、後述するようにして、メモリバンク０（１００）〜７（１７０）に対するリフレッシュ処理の分割数のカウントで桁上がりするように構成されている。
【００１９】
なお、バンクアドレスカウンタ２１は、複数のメモリバンクに対して時分割で（あるいは時間差を持たせて）リフレッシュ処理を行う分割数がその内部に設定されており、設定された複数のメモリバンクの分割数で、桁上がりの処理を実行する。本実施の形態では、８個のメモリバンク０（１００）〜７（１７０）を２個ずつ４組のメモリバンクに分けて、すなわちメモリバンクの分割数を“４”として、１度に２個ずつのメモリバンクに対するリフレッシュ処理を行うようにしている。したがって、バンクアドレスカウンタ２１は、“０”〜“３”までの２ビットのバンクアドレスＢＡＤＤを繰り返しカウントする。この場合、“３”の次には“０”へ戻ってから再度カウントアップされる。
【００２０】
また、Ｘアドレスカウンタ２２は、リフレッシュの制御対象とする各メモリバンクのワード数の値がその内部に設定されており、設定された各メモリバンクのワード数の値までＸアドレスＸＡＤＤをカウントし、設定されたメモリバンクのワード数の値でＸアドレスＸＡＤＤの値を“０”に戻し、再度ＸアドレスＸＡＤＤをカウントする。
【００２１】
また、カウンタ回路２０の各カウンタは、つまり、バンクアドレスカウンタ２１とＸアドレスカウンタ２２とのカウンタは、カウントアップするカウンタの値を、１回のリフレッシュ処理が完了した後も保持している。そのため、カウンタ回路２０は、外部のＤＲＡＭコントローラからオートリフレッシュコマンド（ＲＥＦ）が入力される毎に、バンクアドレスＢＡＤＤおよびＸアドレスＸＡＤＤを保持している値を順次カウントアップする。そのため、メモリバンクの全ワード線に対して、リフレッシュ処理を行うことができる。
【００２２】
リフレッシュ動作制御回路５０は、リフレッシュ起動信号ＲＲＥＦＴをリフレッシュコマンド発生回路１０から入力されると、バンクアドレスカウンタ２１から入力されたバンクアドレスＢＡＤＤで選択されるメモリバンクに対応するリフレッシュ制御信号ＰＭＣＢＡＴｉ（ここで、ｉは整数０から７のいずれか１つの値）を予め定められた一定期間出力することにより、各メモリバンク（メモリバンク０（１００）からメモリバンク７（１７０））のリフレッシュ動作を制御する。すなわち、リフレッシュ動作制御回路５０は、メモリバンク０（１００）のリフレッシュを制御するリフレッシュ制御信号ＰＭＣＢＡＴ０、メモリバンク１（１１０）のリフレッシュを制御するリフレッシュ制御信号ＰＭＣＢＡＴ１、…、メモリバンク７（１７０）のリフレッシュを制御するリフレッシュ制御信号ＰＭＣＢＡＴ７を出力する。そして、それぞれのリフレッシュ制御信号ＰＭＣＢＡＴｉの出力は、それぞれのメモリバンクｉに入力される。
【００２３】
ここで、本実施の形態においては、上述したように、リフレッシュ動作制御回路５０が、８個のメモリバンク０（１００）〜７（１７０）を２個ずつ４組のメモリバンクに分割して、１度に２個ずつのメモリバンクに対するリフレッシュ処理を行う。その際、４組のメモリバンクのリフレッシュ処理は、時間的にずらされ、時分割で実行される。具体的な組み合わせとしては、リフレッシュ動作制御回路５０は、メモリバンク０（１００）に対するリフレッシュ制御信号ＰＭＣＢＡＴ０とメモリバンク７（１７０）に対するリフレッシュ制御信号ＰＭＣＢＡＴ７を同一のタイミングで出力する。同様に、メモリバンク４に対するリフレッシュ制御信号ＰＭＣＢＡＴ４とメモリバンク３に対するリフレッシュ制御信号ＰＭＣＢＡＴ３が同一のタイミングで出力される。また、メモリバンク１（１１０）に対するリフレッシュ制御信号ＰＭＣＢＡＴ１とメモリバンク６に対するリフレッシュ制御信号ＰＭＣＢＡＴ６が同一のタイミングで出力される。また、メモリバンク５に対するリフレッシュ制御信号ＰＭＣＢＡＴ５とメモリバンク２に対するリフレッシュ制御信号ＰＭＣＢＡＴ２が同一のタイミングで出力される。
【００２４】
なお、リフレッシュ動作制御回路５０によるリフレッシュ制御信号ＰＭＣＢＡＴｉの発生方法は上記のものに限定されない。例えば、各メモリバンクでリフレッシュ処理の完了信号を発生させるようにして、その完了信号に基づいてリフレッシュ制御信号ＰＭＣＢＡＴｉの発生期間を制御するようにすることなどが可能である。
【００２５】
Ｘアドレスセレクタ／バッファ回路６０は、リフレッシュ起動信号ＲＲＥＦＴが入力されたことに応じて、Ｘアドレスカウンタ２２から入力されるＸアドレスＸＡＤＤを選択し、複数のメモリバンク０（１００）〜７（１７０）内の各Ｘアドレスラッチ（１１０等）に対して出力する。すなわち、Ｘアドレスセレクタ／バッファ回路６０は、リフレッシュ起動信号ＲＲＥＦＴがリフレッシュ起動信号発生回路１０から入力された場合には、その入力に応じて、Ｘアドレスカウンタ２２から出力されるＸアドレスＸＡＤＤを取り込んで保持する。このリフレッシュ起動信号ＲＲＥＦＴは、上述したように、外部のＤＲＡＭコントローラからのコマンドＣＭＤがオートリフレッシュコマンドの場合に発生される信号である。Ｘアドレスセレクタ／バッファ回路６０はまた、リフレッシュ起動信号ＲＲＥＦＴが入力された場合には、保持しているＸアドレスＸＡＤＤを出力として選択し、選択したＸアドレスＸＡＤＤを各メモリバンクヘ出力する。また、Ｘアドレスセレクタ／バッファ回路６０は、ＭＡＣＴ信号がコマンドレシーバ／デコーダ４０から入力された場合には、アドレスレシーバ３０を介して入力される外部アドレスＡＤＤＲＥＳＳを選択し、選択した外部アドレスＡＤＤＲＥＳＳを各メモリバンクヘ出力する。このＭＡＣＴ信号は、上述したように、外部のＤＲＡＭコントローラからのコマンドＣＭＤがＡＣＴコマンドの場合に発生される信号である。
【００２６】
なお、本実施の形態においては、Ｘアドレスセレクタ／バッファ回路６０に入力されるリフレッシュ起動信号ＲＲＥＦＴおよびＭＡＣＴ信号は、共に一定期間のパルス状で出力される信号である。このため、Ｘアドレスセレクタ／バッファ回路６０は、リフレッシュ起動信号ＲＲＥＦＴまたはＭＡＣＴ信号が入力されたことに応じて、ＸアドレスＸＡＤＤまたは外部アドレスＡＤＤＲＥＳＳを、各メモリバンクヘ出力するとともに、次のリフレッシュ起動信号ＲＲＥＦＴまたはＭＡＣＴ信号が入力されるまで、出力したＸアドレスＸＡＤＤまたは外部アドレスＡＤＤＲＥＳＳを保持する。
【００２７】
温度検出回路７０は、半導体記憶装置１を構成する半導体素子の一部で形成された温度特性が異なる複数の電源回路を用いて半導体素子の温度を検出する回路である。また、温度検出回路７０は、異なる複数の温度を基準として出力レベルを異ならせる複数の信号を出力する。本実施形態では、温度検出回路７０が、温度が所定の温度（温度Ａとする。）以上で“Ｈ”レベルとなる信号ＴＨＴＥＭＰＴと、温度が所定の温度（温度Ｂとする。ただし、温度Ａ＜温度Ｂ。）未満で“Ｈ”レベルとなる信号ＴＬＴＥＭＰＴとを出力する。
【００２８】
リフレッシュ設定回路８０は、温度検出回路７０の出力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴに基づき、リフレッシュ起動信号発生回路１０に対してリフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号を出力する。このリフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号であるＭ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号は、リフレッシュ実行信号ＭＣＲＦＴの入力毎に出力状態が保持される信号である。
【００２９】
メモリバンク０（１００）からメモリバンク７（１７０）は、メモリバンク毎に機能をもつそれぞれの回路群を有している。ここでは、メモリバンクについて、リフレッシュ動作に関する回路群のみについて説明する。
【００３０】
メモリバンク０（１００）は、メモリバンク０用のＸアドレスラッチ回路１０１及び、Ｘデコーダ・タイミング制御・メモリアレイ１０２を含む。Ｘデコーダ・タイミング制御・メモリアレイ１０２は、Ｘデコーダ回路、タイミング制御回路、メモリセルアレイなどを含む。
【００３１】
Ｘアドレスラッチ回路１０１は、ＰＭＣＢＡＴ０信号をリフレッシュ動作制御回路５０から入力されたことに応じて、Ｘアドレスセレクタ／バッファ回路６０から出力されたアドレスをラッチし出力する。また、Ｘデコーダ・タイミング制御・メモリアレイ１０２は、リフレッシュ制御信号ＰＭＣＢＡＴ０信号をリフレッシュ動作制御回路５０から入力されたことに応じて、Ｘアドレスラッチ回路１０１から出力されるアドレスで指定されるワード線に対するメモリセルのリフレッシュ動作を実行する。ブロック１（１１０）からブロック７（１７０）は、それぞれメモリバンク１からメモリバンク７用の回路であり、それぞれメモリバンク０（１００）と同様の構成と機能を有する。
【００３２】
次に、図２を参照して、図１の温度検出回路７０の構成例について説明する。図２の温度検出回路７０は、バンドギャップ基準電圧回路７１、ボルテージフォロア回路７０７及び電圧比較回路７２から構成されている。
【００３３】
バンドギャップ基準電圧回路７１は、オペアンプ（演算増幅器）７０１、抵抗７０２、抵抗７０３、トランジスタ７０４、抵抗７０５およびトランジスタ７０６から構成されている。この場合、抵抗７０２と抵抗７０５の抵抗値がＲ２で等しく、抵抗７０３の抵抗値がＲ２と異なるＲ１であるとする。また、トランジスタ７０４をＱ１、トランジスタ７０６をＱ２として表している。オペアンプ７０１の出力電圧が、温度に依存しない基準電圧ＶＢＧＲとなる。このオペアンプ７０１の出力には抵抗７０２と抵抗７０５の各一端が接続されている。抵抗７０２の他端は抵抗７０３の一端に接続され、その接続点がオペアンプ７０１の非反転入力に接続されている。抵抗７０３の他端は、Ｐ型基板の寄生ＰＮＰトランジスタであるトランジスタ７０４のエミッタに接続されている。他方、抵抗７０５の他端は、Ｐ型基板の寄生ＰＮＰトランジスタであるトランジスタ７０６のエミッタに接続され、その接続点がオペアンプ７０１の反転入力に接続されている。
【００３４】
ボルテージフォロア回路７０７は、１個のオペアンプを用い、その出力を反転入力端子に接続することで、非反転入力に入力された電圧ＶＢＧＲと同一の電圧ＶＦを出力する。
【００３５】
電圧比較回路７２は、抵抗７０８、抵抗７０９、抵抗７１０、コンパレータ７１１およびコンパレータ７１２から構成されている。抵抗７０８、抵抗７０９および抵抗７１０は、この順で互いに直列接続されていて、抵抗７０８の一端はボルテージフォロア回路７０７の出力に、他端は抵抗７０９とコンパレータ７１１の非反転入力に接続されている。抵抗７０９の他端は抵抗７１０とコンパレータ７１２の反転入力に接続されている。抵抗７１０の他端はグランド（基板電位ＶＳＳ）に接続されている。また、コンパレータ７１１の反転入力とコンパレータ７１２の非反転入力は、バンドギャップ基準電圧回路７１内の抵抗７０５とトランジスタ７０６のエミッタとの接続点に接続されている。
【００３６】
この場合、抵抗７０８と抵抗７０９の接続点の電圧がＶ１、抵抗７０９と抵抗７１０の接続点の電圧がＶ２であるとしている。また、抵抗７０５とトランジスタ７０６のエミッタとの接続点の電圧をＶＢＥ（Ｑ２）と表すこととする。また、コンパレータ７１１の出力をＴＨＴＥＭＰＴ、コンパレータ７１２の出力をＴＬＴＥＭＰＴとしている。
【００３７】
図２に示す温度検出回路７０は、メモリ素子を構成する半導体基板と同一の基板上に形成される半導体素子を用いて温度を検出する半導体温度センサを構成している。この例では、この半導体温度センサは、半導体のＰＮ接合部の電圧が、温度によって変わることを利用したものである。より詳しくは、本例ではトランジスタのベースとエミッタ間の順方向電圧降下ＶＢＥ（約−２ｍＶ／℃）を利用している。この場合、温度検出回路７０は、半導体素子の一部で形成された温度依存性が無いバンドギャップ基準電圧回路７１（第１の電源部）と、バンドギャップ基準電圧回路７１内の抵抗７０５、トランジスタ７０６等で構成される温度依存性がある電源回路（第２の電源部）との、温度特性が異なる２つ（複数）の電源回路（電源部）を用いて温度を検出する回路を構成している。
【００３８】
バンドギャップ基準電圧回路７１の出力電圧ＶＢＧＲはエミッタサイズの同じ２つのバイポーラトランジスタＱ１、Ｑ２を流れる電流Ｉ１、Ｉ２の電流差を利用して、正の温度係数を持つ特性を作りだし、ベース−エミッタ間電圧ＶＢＥの負の温度係数と相殺して温度依存がほとんど無い電位となるようにしたものである。このＶＢＧＲを基にボルテージフォロア回路７０７によって作られる温度依存がほとんど無い電源電位ＶＦを抵抗分割した電位Ｖ１、Ｖ２と負の温度係数を持つＶＢＥ（Ｑ２）を比較することで温度を検出する。
【００３９】
すなわち、図３に示すように最初温度が低いときはＶＢＥ（Ｑ２）＞Ｖ１、Ｖ２であるが、温度が高くなるに従ってＶＢＥ（Ｑ２）の電位が低下していき、温度Ａより高くなるとＶＩ＞ＶＢＥ（Ｑ２）＞Ｖ２となる。さらに温度が温度Ｂより高くなるとＶ１＞Ｖ２＞ＶＢＥ（Ｑ２）となる。よってＶ１、Ｖ２とＶＢＥの電位を比較すれば温度設定した温度よりも高いか低いかの検出が可能となる。電圧ＶＦの分割抵抗は所望の温度のとき、ＶＢＥ（Ｑ２）よりも出力電位が高くなるように抵抗値を調整しておけばよい。
【００４０】
図２の電圧比較回路７２によれば、例えば図４に示すように、ある温度Ａ以上となると信号ＴＨＴＥＭＰＴが“Ｈ”となり、ある温度Ｂ（Ａ＜Ｂ）以上となると信号ＴＬＴＥＭＰＴが“Ｌ”となるように設定しておく。つまり、半導体素子の温度＜Ａのとき、ＴＨＴＥＭＰＴ＝“Ｌ”かつＴＬＴＥＭＰＴ＝“Ｈ”、Ａ≦半導体素子の温度＜Ｂのとき、ＴＨＴＥＭＰＴ＝“Ｈ”かつＴＬＴＥＭＰＴ＝“Ｈ”、Ｂ≦半導体素子の温度のとき、ＴＨＴＥＭＰＴ＝“Ｈ”かつＴＬＴＥＭＰＴ＝“Ｌ”となる。
【００４１】
次に、図５を参照して、図１のリフレッシュ回数設定回路８０の構成例について説明する。図５のリフレッシュ回数設定回路８０は、温度検出回路７０の出力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴに基づき、リフレッシュ実行信号ＭＣＲＦＴの入力毎に出力状態を保持しながら、リフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号であるＭ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号を出力する。ここで、ブロック８１が、リフレッシュ実行信号ＭＣＲＦＴの入力毎に出力状態を保持しながら、リフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号であるＭ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号を出力する回路ブロックである。他方、ブロック８２が、テストモード時などに温度検出回路７０の出力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴに関わらずに、Ｍ４ＫＲＥＦＴ信号、Ｍ５３ＫＲＥＦＴ信号およびＭ８ＫＲＥＦＴ信号を設定するための回路ブロックである。
【００４２】
ブロック８１は、２オア（ＯＲ）−アンド（ＡＮＤ）・複合ゲート８０１の出力Ｍ４ＫＲＥＦを正論理入力するとともに、２オア−アンド・複合ゲート８０２の出力Ｍ８ＫＲＥＦを負論理入力するアンド８０３と、出力Ｍ４ＫＲＥＦと出力Ｍ８ＫＲＥＦを２入力とする負論理出力のエクスクルーシブ・オア８０４（以下、ＥＸＯＲ８０４）と、出力Ｍ４ＫＲＥＦを負論理入力するとともに出力Ｍ８ＫＲＥＦを正論理入力するアンド８０５とを有している。ブロック８１は、さらに、３個のＤフリップフロップ８０６、８０７および８０８を有している。３個のＤフリップフロップ８０６、８０７および８０８は、アンド８０３、ＥＸＯＲ８０４およびアンド８０５の出力をそれぞれ入力とするとともに、リフレッシュ実行信号ＭＣＲＦＴをクロック信号とする。
【００４３】
Ｄフリップフロップ８０６は、リフレッシュ実行信号ＭＣＲＦＴが“Ｈ”レベルとなったとき、アンド８０３の出力を取り込み、リフレッシュ実行信号ＭＣＲＦＴが“Ｌ”レベルの間取り込んだ値を保持して信号Ｍ４ＫＲＥＦＴとして出力する。Ｄフリップフロップ８０７は、リフレッシュ実行信号ＭＣＲＦＴが“Ｈ”レベルとなったとき、ＥＸＯＲ８０４の出力を取り込み、リフレッシュ実行信号ＭＣＲＦＴが“Ｌ”レベルの間取り込んだ値を保持して信号Ｍ５３ＫＲＥＦＴとして出力する。Ｄフリップフロップ８０８は、リフレッシュ実行信号ＭＣＲＦＴが“Ｈ”レベルとなったとき、アンド８０５の出力を取り込み、リフレッシュ実行信号ＭＣＲＦＴが“Ｌ”レベルの間取り込んだ値を保持して信号Ｍ８ＫＲＥＦＴとして出力する。
【００４４】
ブロック８２は、インバータ８０９、トランジスタ８１０、トランジスタ８１１、フューズ８１２、インバータ８１３、オア８１４、トランジスタ８１５、トランジスタ８１６、フューズ８１７、インバータ８１８、オア８１９およびＤＦＴ（Design For Test）デコーダ８２０から構成されている。この場合、インバータ８０９には半導体記憶装置１の電源投入時に“Ｈ”レベルとなる信号ＰＯＮが入力され、インバータ８０９の出力がトランジスタ８１０および８１５のゲートに接続されている。トランジスタ８１０および８１５のソースは電源に接続され、ドレインはフューズ８１２および８１７にそれぞれ接続されている。トランジスタ８１０および８１５のドレインはまたインバータ８１３および８１８の入力に接続されている。インバータ８１３および８１８の入力にはトランジスタ８１１および８１６のドレインがそれぞれ接続され、出力にはトランジスタ８１１および８１６のゲートがそれぞれ接続されている。このインバータ８１３およびトランジスタ８１１は“Ｈ”レベルの信号ＰＯＮが入力されたときにフューズ８１２の状態に応じた電圧を取り込むラッチ回路を構成し、インバータ８１８およびトランジスタ８１６は“Ｈ”レベルの信号ＰＯＮが入力されたときにフューズ８１７の状態に応じた電圧を取り込む他のラッチ回路を構成する。
【００４５】
オア８１４の負論理入力にはインバータ８１３の出力が接続され、正論理入力にはＤＦＴデコーダ８２０の一方の出力が接続されている。オア８１４の出力は、複合ゲート８０１のオア入力に接続されるとともに、複合ゲート８０２の負論理アンド入力に接続されている。オア８１９の負論理入力にはインバータ８１８の出力が接続され、正論理入力にはＤＦＴデコーダ８２０の他方の出力が接続されている。オア８１９の出力は、複合ゲート８０２のオア入力に接続されるとともに、複合ゲート８０１の負論理アンド入力に接続されている。
【００４６】
また、ＤＦＴデコーダ８２０には外部アドレス信号ＡＤＤＲＥＳＳとテストモードに動作状態を設定するための信号ＴＭＲＳＴが入力されている。
【００４７】
以上の構成で、ブロック８２は、フューズ８１２およびフューズ８１５をカットすることによって温度検出回路７０の出力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴを無効化し、リフレッシュの動作モードを固定する。また、ＤＦＴデコーダ８２０はテストモード時に、温度検出回路７０の出力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴを無効化し、外部アドレス信号ＡＤＤＲＥＲＳＳの値に応じてリフレッシュの動作モードを所望の状態に固定する。
【００４８】
なお、ブロック８２は、温度検出回路７０の出力を無効化する回路であり、本発明の特徴には直接関係なく、省略することも可能である。以下の説明においては、オア８１４およびオア８１９の出力は常に「Ｌ」レベルであり、信号ＴＨＴＥＭＰＴと信号Ｍ４ＫＲＥＦは常に一致し、また、信号ＴＬＴＥＭＰＴと信号Ｍ８ＫＲＥＦは常に一致しているものとする。
【００４９】
ブロック８１では、アンド８０３、ＥＸＯＲ８０４およびアンド８０５によってこの温度検出回路７０の出力信号ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴ（正確にはそれらに一致する信号Ｍ４ＫＲＥＦおよび信号Ｍ８ＫＲＥＦ）がデコードされる。アンド８０３は、ＴＨＴＥＭＰＴ＝“Ｌ”かつＴＬＴＥＭＰＴ＝“Ｈ”のとき、出力＝“Ｈ”となり、その他は出力＝“Ｌ”となる、ＥＸＯＲ８０４は、ＴＨＴＥＭＰＴ＝“Ｈ”かつＴＬＴＥＭＰＴ＝“Ｈ”のとき、出力＝“Ｈ”でその他は出力＝“Ｌ”となる。アンド８０５は、ＴＨＴＥＭＰＴ＝“Ｈ”かつＴＬＴＥＭＰＴ＝“Ｌ”のとき、出力＝“Ｈ”となり、その他は出力＝“Ｌ”となる。これを纏めたものを図６に示す。
【００５０】
図６は、図５のリフレッシュ回数設定回路８０の入出力関係を真理値表としてまとめたものである。半導体素子の温度が所定の温度Ａより低い場合は信号Ｍ８ＫＲＥＦが“Ｈ”レベルとなる。半導体素子の温度が所定の温度Ａ以上で温度Ｂより低い場合は信号Ｍ５３ＫＲＥＦが“Ｈ”レベルとなる。そして、半導体素子の温度が所定の温度Ｂ以上の場合は信号Ｍ４ＫＲＥＦが“Ｈ”レベルとなる。このように信号Ｍ８ＫＲＥＦ、信号Ｍ５３ＫＲＥＦまたは信号Ｍ４ＫＲＥＦのいずれか一つが“Ｈ”レベルとなる。したがって、温度に応じて３つの動作モードから１つを選択することができる。
【００５１】
なお、Ｄフリップフロップ８０６〜８０８は、クロック入力ＣＫが“Ｈ”レベルのとき入力Ｄのレベルに出力Ｑのレベルを一致させ、クロック入力ＣＫが“Ｌ”レベルのとき出力Ｑのレベルを保持する回路である。Ｄフリップフロップ８０６〜８０８には、クロック入力ＣＫとしてリフレッシュ実行信号ＭＣＲＦＴが入力されている。このリフレッシュ実行信号ＭＣＲＦＴはオートリフレッシュコマンドが入力されオートリフレッシュ動作が開始されるときに１回“Ｈ”レベルとなる所定のパルス幅を持つパルス状の信号である。したがって、リフレッシュ回数設定回路８０は、リフレッシュ実行信号ＭＣＲＦＴに“Ｈ”レベルの信号が入力される毎に入力ＴＨＴＥＭＰＴおよびＴＬＴＥＭＰＴに基づいて出力Ｍ４ＫＲＥＦ、Ｍ５３ＫＲＥＦおよびＭ８ＫＲＥＦを変化させ、リフレッシュ実行信号ＭＣＲＦＴが“Ｌ”レベル間そのレベルを保持して出力する。よって、オートリフレッシュ（ＡＲＥＦ）開始前の温度検出回路７０による温度の検知結果を取り込んでＡＲＥＦ期間中に動作モードが変化するのが防止されるようになっている。
【００５２】
次に、図７を参照して、図１のカウンタ回路２０の構成例について説明する。図７のカウンタ回路２０は、バンクアドレスカウンタ２１とＸアドレスカウンタ２２とから構成されている。バンクアドレスカウンタ２１は、入力されるリフレッシュ起動信号ＲＲＥＦＴをカウントし、カウント結果として得られた信号ＢＡ０および信号ＢＡ１の２ビットの信号をバンクアドレスＢＡＤＤとして出力する。Ｘアドレスカウンタ２２は、信号ＢＡ１をカウントし、１３ビットの信号ＸＡＤＤ０、ＸＡＤＤ１、…、ＸＡＤＤ１２からなるＸアドレスＸＡＤＤを出力する。
【００５３】
バンクアドレスカウンタ２１は、Ｄフリップフロップ２１０１、Ｄフリップフロップ２１０２、インバータ２１０３、インバータ２１０４、Ｄフリップフロップ２１０５、Ｄフリップフロップ２１０６、インバータ２１０７およびインバータ２１０８から構成されている。この場合、Ｄフリップフロップ２１０１の出力ＱがＤフリップフロップ２１０２の入力Ｄに接続され、Ｄフリップフロップ２１０２の出力Ｑがインバータ２１０３の入力に接続され、インバータ２１０３の出力がＤフリップフロップ２１０１の入力Ｄに接続されている。また、リフレッシュ起動信号ＲＲＥＦＴがＤフリップフロップ２１０１のクロック入力ＣＫとインバータ２１０４に入力され、インバータ２１０４の出力がＤフリップフロップ２１０２のクロック入力ＣＫに入力されている。そして、Ｄフリップフロップ２１０２の出力ＱがバンクアドレスＸＡＤＤの最下位ビットの信号ＲＢＡ０となっている。また、Ｄフリップフロップ２１０５の出力ＱがＤフリップフロップ２１０６の入力Ｄに接続され、Ｄフリップフロップ２１０６の出力Ｑがインバータ２１０７の入力に接続され、インバータ２１０７の出力がＤフリップフロップ２１０５の入力Ｄに接続されている。また、インバータ２１０３の出力がＤフリップフロップ２１０５のクロック入力ＣＫとインバータ２１０８に入力され、インバータ２１０８の出力がＤフリップフロップ２１０６のクロック入力ＣＫに入力されている。そして、Ｄフリップフロップ２１０６の出力ＱがバンクアドレスＸＡＤＤの下位から２ビット目の信号ＲＢＡ１となっている。
【００５４】
上記の構成では、Ｄフリップフロップ２１０１、Ｄフリップフロップ２１０２、インバータ２１０３およびインバータ２１０４によって、リフレッシュ起動信号ＲＲＥＦＴが“Ｈ”レベルから“Ｌ”レベルに変化する度に、信号ＲＢＡ０のレベルを“Ｈ”から“Ｌ”あるいは“Ｌ”から“Ｈ”に変化させる１ビットのカウンタ回路が構成されている。また、Ｄフリップフロップ２１０５、Ｄフリップフロップ２１０６、インバータ２１０７およびインバータ２１０８によって、信号ＲＢＡ０が“Ｌ”レベルから“Ｈ”レベルに変化する度に、信号ＲＢＡ１のレベルを“Ｈ”から“Ｌ”あるいは“Ｌ”から“Ｈ”に変化させる１ビットのカウンタ回路が構成されている。したがって、これらの回路によって２ビットのカウンタ回路が構成され、信号ＲＢＡ０と信号ＲＢＡ１が２ビットのカウンタのカウント結果として出力される。すなわち、信号ＲＢＡ０と信号ＲＢＡ１は、リフレッシュ起動信号ＲＲＥＦＴが“Ｈ”レベルから“Ｌ”レベルに変化する度に、“０”、“１”、“２”、“３”、“０”、“１”、“２”、“３”、…とカウントアップする２ビットの信号となる。
【００５５】
一方、Ｘアドレスカウンタ２２は、Ｄフリップフロップ２２０１、Ｄフリップフロップ２２０２、インバータ２２０３、インバータ２２０４、Ｄフリップフロップ２２０５、Ｄフリップフロップ２２０６、インバータ２２０７、インバータ２２０８、…、Ｄフリップフロップ２２０９、Ｄフリップフロップ２２１０、インバータ２２１１およびインバータ２２１２から構成されている。
【００５６】
この場合、Ｄフリップフロップ２２０１の出力ＱがＤフリップフロップ２２０２の入力Ｄに接続され、Ｄフリップフロップ２２０２の出力Ｑがインバータ２２０３の入力に接続され、インバータ２２０３の出力がＤフリップフロップ２２０１の入力Ｄに接続されている。また、信号ＲＢＡ１をインバータ２１０７で反転した信号が、Ｄフリップフロップ２２０１のクロック入力ＣＫとインバータ２２０４に入力され、インバータ２２０４の出力がＤフリップフロップ２２０２のクロック入力ＣＫに入力されている。そして、Ｄフリップフロップ２２０２の出力ＱがＸアドレスＸＡＤＤの最下位ビットの信号ＸＡＤＤ０となっている。また、Ｄフリップフロップ２２０５の出力ＱがＤフリップフロップ２２０６の入力Ｄに接続され、Ｄフリップフロップ２２０６の出力Ｑがインバータ２２０７の入力に接続され、インバータ２２０７の出力がＤフリップフロップ２２０５の入力Ｄに接続されている。また、インバータ２２０３の出力がＤフリップフロップ２２０５のクロック入力ＣＫとインバータ２２０８に入力され、インバータ２２０８の出力がＤフリップフロップ２２０６のクロック入力ＣＫに入力されている。そして、Ｄフリップフロップ２２０６の出力ＱがバンクアドレスＸＡＤＤの下位から２ビット目の信号ＸＡＤＤ１となっている。また、Ｄフリップフロップ２２０９の出力ＱがＤフリップフロップ２２１０の入力Ｄに接続され、Ｄフリップフロップ２２１０の出力Ｑがインバータ２２１１の入力に接続され、インバータ２２１１の出力がＤフリップフロップ２２０９の入力Ｄに接続されている。また、ＸＡＤＤ１１（図示略）をインバータで反転した信号がＤフリップフロップ２２０９のクロック入力ＣＫとインバータ２２１２に入力され、インバータ２２１２の出力がＤフリップフロップ２２１０のクロック入力ＣＫに入力されている。そして、Ｄフリップフロップ２２１０の出力ＱがバンクアドレスＸＡＤＤの最上位ビット（下位から１３ビット目）の信号ＸＡＤＤ１２となっている。Ｘアドレスカウンタ２２は、ＸアドレスＸＡＤＤの各ビットの信号ＸＡＤＤ１〜ＸＡＤＤ１２を出力するための同様の構成を１３組分有している。
【００５７】
なお、上記の構成では、Ｄフリップフロップ２２０１、Ｄフリップフロップ２２０２、インバータ２２０３およびインバータ２２０４によって、信号ＲＢＡ１が“Ｌ”レベルから“Ｈ”レベルに変化する度に、信号ＸＡＤＤ０のレベルを“Ｈ”から“Ｌ”あるいは“Ｌ”から“Ｈ”に変化させる１ビットのカウンタ回路が構成されている。また、Ｄフリップフロップ２２０５、Ｄフリップフロップ２２０６、インバータ２２０７およびインバータ２２０８によって、信号ＸＡＤＤ０が“Ｌ”レベルから“Ｈ”レベルに変化する度に、信号ＸＡＤＤ１のレベルを“Ｈ”から“Ｌ”あるいは“Ｌ”から“Ｈ”に変化させる１ビットのカウンタ回路が構成されている。また、Ｄフリップフロップ２２０９、Ｄフリップフロップ２２１０、インバータ２２１１およびインバータ２２１２によって、信号ＸＡＤＤ１１（図示せず）が“Ｌ”レベルから“Ｈ”レベルに変化する度に、信号ＸＡＤＤ１２のレベルを“Ｈ”から“Ｌ”あるいは“Ｌ”から“Ｈ”に変化させる１ビットのカウンタ回路が構成されている。したがって、これらの回路によって全体では１３ビットのカウンタ回路が構成され、信号ＸＡＤＤ０、信号ＸＡＤＤ１、…、信号ＸＡＤＤ１２が１３ビットのカウンタのカウント結果として出力される。すなわち、信号ＸＡＤＤ０、信号ＸＡＤＤ１、…、信号ＸＡＤＤ１２は、バンクアドレスカウンタ２１の桁上がり信号としての最上位ビット信号ＲＢＡ１の反転信号が“Ｈ”レベルから“Ｌ”レベルに変化する度に、“０”、“１”、“２”、“３”、…、“２＾１３−２（＝８１９２−２）”、“２＾１３−１（＝８１９２−１）”、“０”、“１”、“２”、“３”、…とカウントアップする１３ビットの信号となる。
【００５８】
次に、図８および図９を参照して、図１のリフレッシュ起動信号発生回路１０の構成例および動作について説明する。図８は、図１のリフレッシュ起動信号発生回路１０の構成例を示すブロック図である。図９は、図１の半導体記憶装置１内の各部の動作波形を示すタイミングチャートである。ここで図９は、ｔＲＦＣ期間中に２回のリフレッシュ処理を行う４ＫＲＥＦ方式と、同期間中に１．５回のリフレッシュ処理を行う５．３ＫＲＥＦ方式と、同期間中に１回のリフレッシュ処理を行う８ＫＲＥＦ方式とを上中下に並べて示すタイミングチャートである。この場合、方式毎に、リフレッシュ実行信号ＭＣＲＦＴ、リフレッシュ起動信号ＲＲＥＦＴ、バンクアドレスＢＡＤＤおよびリフレッシュ制御信号ＰＭＣＢＡＴｉ（ｉ＝０〜７）の各信号波形を示している。ただし、バンクアドレスＢＡＤＤについてはカウンタ値を数字（“０”〜“３”）で示し、リフレッシュ制御信号ＰＭＣＢＡＴｉ（ｉ＝０〜７）については信号の発生タイミングを波形で示すとともに、その際、Ｘアドレスセレクタ／バッファ回路６０から各メモリバンクに供給されるＸアドレスＸＡＤＤの値を括弧で囲んだ数字（“（００００）”、“（０００１）”、…）で表している。
【００５９】
さて、図８に示すリフレッシュ起動信号発生回路１０は、３個のブロック１１、１２および１３と、１個の２アンド−オア・複合ゲート１４とから構成されている。ブロック１１は、図１のコマンドレシーバ／デコーダ４０から入力されるリフレッシュ実行信号ＭＣＲＦＴに応じて４個のパルス状の信号を出力する回路である。このブロック１１の出力に応じて、複合ゲート１４から４個のパルス状のリフレッシュ起動信号ＲＲＥＦＴが出力される（例えば図９の時刻ｔ１、ｔ２、ｔ３およびｔ４に発生する４個のパルス状のリフレッシュ起動信号ＲＲＥＦＴが出力される）。
【００６０】
図８に示す例では、ブロック１１は、互いに直列接続された３個のディレイ素子１１０１、１１０２および１１０３と、リフレッシュ実行信号ＭＣＲＦＴを入力とするインバータ１１０５と、各ディレイ素子１１０１、１１０２および１１０３の出力を入力とする３個のインバータ１１０６、１１０７および１１０４と、各インバータ１１０５〜１１０８の出力を４入力とするナンド（ＮＡＮＤ）１１０８とから構成されている。なお、ディレイ素子１１０１には、リフレッシュ実行信号ＭＣＲＦＴが入力される。そして、ナンド１１０８の出力が複合ゲート１４のオア入力に接続されている。
【００６１】
ブロック１２は、図１のリフレッシュ動作制御回路５０から入力されるリフレッシュ制御信号ＰＭＣＢＡＴｉの異なる立ち下がりタイミングに応じて、各１回のパルス状の信号を出力する。ただし、本実施形態では、リフレッシュ制御信号ＰＭＣＢＡＴ０および７、ＰＭＣＢＡＴ４および３、ＰＭＣＢＡＴ１および６ならびにＰＭＣＢＡＴ５および２は同一のタイミングの信号である。したがって、各リフレッシュ制御信号ＰＭＣＢＡＴｉが１回立ち下がることで（“Ｈ”から“Ｌ”に変化することで）合計４個のパルス状の信号が出力されることになる。ただし、ブロック１２の出力は、複合ゲート１４のアンド入力に入力されているため、アンド入力のもう一方であるブロック１３の出力信号に応じて、パルス状の信号が複合ゲート１４の出力として発生したり、発生しなかったりする。図９の例では、ブロック１２の出力に応じて、４ＫＲＥＦ方式における時刻ｔ５、ｔ６、ｔ７およびｔ８で４回のパルス状のリフレッシュ起動信号ＲＲＥＦＴが出力されている。また、ブロック１２の出力に応じて、５．３ＫＲＥＦ方式における時刻ｔ５およびｔ６で２回のパルス状のリフレッシュ起動信号ＲＲＥＦＴが出力されている。ただし、８ＫＲＥＦ方式では、ブロック１２の出力に応じてリフレッシュ起動信号ＲＲＥＦＴは発生しない。
【００６２】
図８に示す例では、リフレッシュ制御信号ＰＭＣＢＡＴ０とＰＭＣＢＡＴ７を２入力とするノア１２０１と、ノア１２０１の出力を入力とするディレイ素子１２０２と、ノア１２０１の出力を正論理入力とするとともにディレイ素子１２０２の出力を負論理入力とするナンド１２０３とによって、リフレッシュ制御信号ＰＭＣＢＡＴ０およびＰＭＣＢＡＴ７の立ち下がりに応じた１個のパルス状の信号が生成される。また、リフレッシュ制御信号ＰＭＣＢＡＴ４とＰＭＣＢＡＴ３を２入力とするノア１２０４と、ノア１２０４の出力を入力とするディレイ素子１２０５と、ノア１２０４の出力を正論理入力とするとともにディレイ素子１２０５の出力を負論理入力とするナンド１２０６とによって、リフレッシュ制御信号ＰＭＣＢＡＴ４およびＰＭＣＢＡＴ３の立ち下がりに応じた１個のパルス状の信号が生成される。また、リフレッシュ制御信号ＰＭＣＢＡＴ１とＰＭＣＢＡＴ６を２入力とするノア１２０７と、ノア１２０７の出力を入力とするディレイ素子１２０８と、ノア１２０７の出力を正論理入力とするとともにディレイ素子１２０８の出力を負論理入力とするナンド１２０９とによって、リフレッシュ制御信号ＰＭＣＢＡＴ１およびＰＭＣＢＡＴ６の立ち下がりに応じた１個のパルス状の信号が生成される。また、リフレッシュ制御信号ＰＭＣＢＡＴ５とＰＭＣＢＡＴ２を２入力とするノア１２１０と、ノア１２１０の出力を入力とするディレイ素子１２１１と、ノア１２１０の出力を正論理入力とするとともにディレイ素子１２１１の出力を負論理入力とするナンド１２１２とによって、リフレッシュ制御信号ＰＭＣＢＡＴ２およびＰＭＣＢＡＴ５の立ち下がりに応じた１個のパルス状の信号が生成される。そして、ナンド１２０３、１２０６、１２０９および１２１２の出力を４入力とするナンド１２１３の出力が複合ゲート１４のアンド入力に接続されている。
【００６３】
ブロック１３は、各リフレッシュ方式に応じてカウントの最大値を変化させて、複合ゲート１４から出力されるパルス状のリフレッシュ起動信号ＲＲＥＦＴの発生回数をカウントするカウンタを構成する。ブロック１３は、ブロック１３内のカウンタが最大値に達する前は“Ｈ”レベルの信号を出力し、ブロック１３内のカウンタが最大値に達した場合には“Ｌ”レベルの信号を出力する。このブロック１３の出力は、他方のアンド入力がブロック１２の出力に接続されている複合ゲート１４のアンド入力に入力されている。そのため、ブロック１３の出力が“Ｌ”レベルとなった後は、複合ゲート１４から、ブロック１２の出力に応じたパルス状のリフレッシュ起動信号ＲＲＥＦＴの出力は行われなくなる。すなわち、入力されたリフレッシュ起動信号ＲＲＥＦＴのパルス状の信号の個数が各リフレッシュ方式に応じて設定された最大値に達した後は、ブロック１２の出力に基づくリフレッシュ起動信号ＲＲＥＦＴの発生は起こらないことになる。
【００６４】
具体的には、４ＫＲＥＦ方式ではリフレッシュ起動信号ＲＲＥＦＴが８回発生するとブロック１３の出力すなわちインバータ１３１７の出力が“Ｌ”レベルとなる。５．３ＫＲＥＦ方式ではリフレッシュ起動信号ＲＲＥＦＴが６回発生するとブロック１３の出力すなわちインバータ１３１７の出力が“Ｌ”レベルとなる。８ＫＲＥＦ方式ではリフレッシュ起動信号ＲＲＥＦＴが４回発生するとブロック１３の出力すなわちインバータ１３１７の出力が“Ｌ”レベルとなる。なお、ブロック１３内のカウンタは、最大値に達した後、次のリフレッシュ起動信号ＲＲＥＦＴの入力でリセットされ、再び“０”、“１”、…とカウントアップされる。最大値に達した後は（すなわちブロック１３の出力が“Ｌ”レベルとなった後は）ブロック１２の出力に応じてリフレッシュ起動信号ＲＲＥＦＴが発生されないので、ブロック１１の出力、すなわちリフレッシュ実行信号ＭＣＲＦＴに応じてリフレッシュ起動信号ＲＲＥＦＴが発生した場合にのみ、ブロック１３内のカウンタがリセットされ、再びカウントアップが行われることになる。図９に示す例で、ブロック１２の出力に応じて、すなわちリフレッシュ制御信号ＰＭＣＢＡＴｉの立ち下がりに応じて、各リフレッシュ方式でリフレッシュ起動信号ＲＲＥＦＴが出力される回数が異なるのは、このブロック１３のカウンタの最大値の設定が異なることによるものである。
【００６５】
図８に示す例では、ブロック１３において、Ｄフリップフロップ１３０１、Ｄフリップフロップ１３０２、インバータ１３０３およびインバータ１３０４で最下位ビットのカウンタが構成されている。この場合、Ｄフリップフロップ１３０１の出力ＱがＤフリップフロップ１３０２の入力Ｄに接続され、Ｄフリップフロップ１３０２の出力Ｑがインバータ１３０３の入力に接続され、インバータ１３０３の出力がＤフリップフロップ１３０１の入力Ｄに接続されている。また、複合ゲート１４から出力されたリフレッシュ起動信号ＲＲＥＦＴが、Ｄフリップフロップ１３０１のクロック入力ＣＫとインバータ１３０４に入力され、インバータ１３０４の出力がＤフリップフロップ１３０２のクロック入力ＣＫに入力されている。そして、ナンド１３１６の出力が、Ｄフリップフロップ１３０１のリセット入力に接続されている。
【００６６】
また、ブロック１３において、Ｄフリップフロップ１３０５、Ｄフリップフロップ１３０６、インバータ１３０７およびインバータ１３０８で２ビット目のカウンタが構成されている。この場合、Ｄフリップフロップ１３０５の出力ＱがＤフリップフロップ１３０６の入力Ｄに接続され、Ｄフリップフロップ１３０６の出力Ｑがインバータ１３０７の入力に接続され、インバータ１３０７の出力がＤフリップフロップ１３０５の入力Ｄに接続されている。また、１ビット目のカウンタにおけるインバータ１３０３の出力が、Ｄフリップフロップ１３０５のクロック入力ＣＫとインバータ１３０８に入力され、インバータ１３０８の出力がＤフリップフロップ１３０６のクロック入力ＣＫに入力されている。そして、ナンド１３１６の出力が、Ｄフリップフロップ１３０５のリセット入力に接続されている。
【００６７】
また、ブロック１３において、Ｄフリップフロップ１３０９、Ｄフリップフロップ１３１０、インバータ１３１１およびインバータ１３１２で３ビット目のカウンタが構成されている。この場合、Ｄフリップフロップ１３０９の出力ＱがＤフリップフロップ１３１０の入力Ｄに接続され、Ｄフリップフロップ１３１０の出力Ｑがインバータ１３１１の入力に接続され、インバータ１３１１の出力がＤフリップフロップ１３０９の入力Ｄに接続されている。また、２ビット目のカウンタにおけるインバータ１３０７の出力が、Ｄフリップフロップ１３０９のクロック入力ＣＫとインバータ１３１２に入力され、インバータ１３１２の出力がＤフリップフロップ１３１０のクロック入力ＣＫに入力されている。そして、ナンド１３１６の出力が、Ｄフリップフロップ１３０９のリセット入力に接続されている。
【００６８】
さらに、ブロック１３には、これらの３ビットのカウンタの最大値を設定するための回路として、ナンド１３１３、１３１４、１３１５および１３１６を有している。ナンド１３１３は、リフレッシュ回数設定回路８０から出力されたＭ４ＫＲＥＦＴ信号と、Ｄフリップフロップ１３０２、１３０６および１３１０の出力が入力されている。したがって、ナンド１３１３は、Ｍ４ＫＲＥＦＴ信号が“Ｈ”レベルで、３ビットのカウンタの出力がすべて“Ｈ”レベル（＝“１１１”＝７）となったときに“Ｌ”レベルとなる。ナンド１３１４は、リフレッシュ回数設定回路８０から出力されたＭ５３ＫＲＥＦＴ信号と、Ｄフリップフロップ１３０２、インバータ１３０７およびＤフリップフロップ１３１０の出力が入力されている。したがって、ナンド１３１４は、Ｍ５３ＫＲＥＦＴ信号が“Ｈ”レベルで、３ビットのカウンタの出力が“１０１”＝５となったときに“Ｌ”レベルとなる。ナンド１３１５は、リフレッシュ回数設定回路８０から出力されたＭ８ＫＲＥＦＴ信号と、Ｄフリップフロップ１３０２、１３０６およびインバータ１３１１の出力が入力されている。したがって、ナンド１３１５は、Ｍ８ＫＲＥＦＴ信号が“Ｈ”レベルで、３ビットのカウンタの出力が“０１１”＝３となったときに“Ｌ”レベルとなる。
【００６９】
ナンド１３１６は、ナンド１３１３、１３１４および１３１５のいずれかの出力が“Ｌ”レベルとなったとき、すなわち、いずれかのリフレッシュ方式でカウント値が最大値に達したときに“Ｈ”レベルの信号を出力する。インバータ１３１７は、ナンド１３１６の出力を反転する。したがって、インバータ１３１７の出力は、いずれかのリフレッシュ方式でカウント値が最大値に達したときに“Ｌ”レベルとなり、最大値に達していない間は“Ｈ”レベルとなる。また、ナンド１３１６の出力が“Ｈ”レベルとなったときに、Ｄフリップフロップ１３０１、１３０５、１３０９はリセットされ、Ｄフリップフロップ１３０１、１３０５、１３０９の各出力Ｑが“Ｌ”レベルとなる。ただし、Ｄフリップフロップ１３０１、１３０５、１３０９がリセットされた時点ではＤフリップフロップ１３０２、１３０６および１３１０の出力Ｑは最大値に達した状態で保持され、次にＤフリップフロップ１３０２、１３０６および１３１０のクロック入力ＣＫが“Ｈ”レベルとなったときに、それらの出力Ｑが“Ｌ”レベルにリセットされる。
【００７０】
以上の構成によれば、図９に示すように、４ＫＲＥＦ方式では、リフレッシュ実行信号ＭＣＲＦＴが発生した場合に（時刻ｔ１）、リフレッシュ起動信号発生回路１０からリフレッシュ起動信号ＲＲＥＦＴが４回出力される（時刻ｔ１、ｔ２、ｔ３およびｔ４）。カウンタ回路２０は、時刻ｔ１前の初期値がすべて“０”であったとすると、４回のリフレッシュ起動信号ＲＲＥＦＴに応じて、バンクアドレスＢＡＤＤが“０”から“１”、“２”、“３”、“０”とカウントアップする。時刻ｔ４のリフレッシュ起動信号ＲＲＥＦＴに応じて、このバンクアドレスＢＡＤＤに桁上がり（“３”から“０”への戻り）が発生したとき、ＸアドレスＸＡＤＤは初期値“００００”から１つ増加した“０００１”へと変化する。ただし、Ｘアドレスセレクタ／バッファ回路６０は、各リフレッシュ起動信号ＲＲＥＦＴが発生した時刻ｔ１、ｔ２、ｔ３およびｔ４で、ＸアドレスＸＡＤＤを取り込んで保持して出力するので、時刻ｔ５で次のリフレッシュ起動信号ＲＲＥＦＴが発生するまで、リフレッシュ処理対象のＸアドレスＸＡＤＤは初期値“００００”のまま変化しない。
【００７１】
また、リフレッシュ起動信号ＲＲＥＦＴとバンクアドレスＢＡＤＤに基づき、リフレッシュ動作制御回路５０によって、図９に示すように、各リフレッシュ制御信号ＰＭＣＢＡＴｉが“Ｈ”レベルとされる。リフレッシュ動作制御回路５０は、リフレッシュ処理に必要な所定時間、各リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｈ”レベルとした後、リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｌ”レベルとする。この“Ｈ”から“Ｌ”への立ち下がりに応じて、リフレッシュ起動信号発生回路１０からリフレッシュ起動信号ＲＲＥＦＴが４回出力される（時刻ｔ５、ｔ６、ｔ７およびｔ８）。
【００７２】
カウンタ回路２０は、２度目の４回のリフレッシュ起動信号ＲＲＥＦＴに応じて、バンクアドレスＢＡＤＤを“０”から“１”、“２”、“３”、“０”とカウントアップする。時刻ｔ８のリフレッシュ起動信号ＲＲＥＦＴに応じて、このバンクアドレスＢＡＤＤに桁上がり（“３”から“０”への戻り）が発生したとき、ＸアドレスＸＡＤＤは“０００１”から１つ増加した“０００２”へと変化する。ただし、Ｘアドレスセレクタ／バッファ回路６０は、各リフレッシュ起動信号ＲＲＥＦＴが発生した時刻ｔ５、ｔ６、ｔ７およびｔ８で、ＸアドレスＸＡＤＤを取り込んで保持して出力するので、時刻ｔ９で次のリフレッシュ起動信号ＲＲＥＦＴが発生するまで、リフレッシュ処理対象のＸアドレスＸＡＤＤは“０００１”となっている。
【００７３】
リフレッシュ動作制御回路５０は、リフレッシュ起動信号ＲＲＥＦＴとバンクアドレスＢＡＤＤに基づき、図９に示すように、各リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｈ”レベルとする。リフレッシュ動作制御回路５０は、リフレッシュ処理に必要な所定時間、リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｈ”レベルとした後、リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｌ”レベルとする。時刻ｔ８の時点で、４ＫＲＥＦ方式におけるリフレッシュ起動信号ＲＲＥＦＴの発生回数は８回の最大値に達している。このため、時刻ｔ８より後に、リフレッシュ制御信号ＰＭＣＢＡＴｉの立ち下がりに応じてリフレッシュ起動信号ＲＲＥＦＴが発生することはない。
【００７４】
次に、オートリフレッシュコマンドが入力されてリフレッシュ実行信号ＭＣＲＦＴが発生した場合には（時刻ｔ９）、再び４個＋４個の８個のリフレッシュ起動信号ＲＲＥＦＴが発生し（時刻ｔ９、ｔ１０、ｔ１１、ｔ１２、ｔ１３、ｔ１４、ｔ１５およびｔ１６）、バンクアドレスＢＡＤＤが“０”から“１”、“２”、“３”、“０”、“１”、“２”、“３”、“０”へと変化する。また、バンクアドレスＢＡＤＤが“３”から“０”に２回変化しているので、Ｘアドレスは、“０００２”から“０００３”へ、さらに“０００３”から“０００４”へと変化する。ただし、時刻ｔ９〜ｔ１２で、Ｘアドレスセレクタ／バッファ回路６０によって取り込まれたＸアドレスＸＡＤＤは“０００２”となっている。また、時刻ｔ１３〜ｔ１６で、Ｘアドレスセレクタ／バッファ回路６０によって取り込まれたＸアドレスＸＡＤＤは“０００３”となっている。
【００７５】
このようにして、４ＫＲＥＦ方式では、２回のオートリフレッシュコマンドが入力された場合に、各メモリバンク０（１００）〜７（１７０）の全てに対して、Ｘアドレス“００００”〜“０００３”までを対象としたリフレッシュ処理が行われることになる。
【００７６】
次に、５．３ＫＲＥＦ方式では、リフレッシュ実行信号ＭＣＲＦＴが発生した場合に（時刻ｔ１）、リフレッシュ起動信号発生回路１０からリフレッシュ起動信号ＲＲＥＦＴが４回出力される（時刻ｔ１、ｔ２、ｔ３およびｔ４）。カウンタ回路２０は、時刻ｔ１前の初期値がすべて“０”であったとすると、４回のリフレッシュ起動信号ＲＲＥＦＴに応じて、バンクアドレスＢＡＤＤが“０”から“１”、“２”、“３”、“０”とカウントアップする。このバンクアドレスＢＡＤＤに桁上がり（“３”から“０”への戻り）が発生したとき、ＸアドレスＸＡＤＤは初期値“００００”から１つ増加した“０００１”へと変化する。ただし、Ｘアドレスセレクタ／バッファ回路６０は、各リフレッシュ起動信号ＲＲＥＦＴが発生した時刻ｔ１、ｔ２、ｔ３およびｔ４で、ＸアドレスＸＡＤＤを取り込んで保持して出力するので、時刻ｔ５で次のリフレッシュ起動信号ＲＲＥＦＴが発生するまでリフレッシュ処理対象のＸアドレスＸＡＤＤは初期値“００００”のまま変化しない。
【００７７】
また、リフレッシュ起動信号ＲＲＥＦＴとバンクアドレスＢＡＤＤに基づき、リフレッシュ動作制御回路５０によって、図９に示すように、各リフレッシュ制御信号ＰＭＣＢＡＴｉが“Ｈ”レベルとされる。リフレッシュ動作制御回路５０は、リフレッシュ処理に必要な所定時間、各リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｈ”レベルとした後、リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｌ”レベルとする。このリフレッシュ制御信号ＰＭＣＢＡＴ＜０／７＞および＜４／３＞の“Ｈ”から“Ｌ”への立ち下がりに応じて、リフレッシュ起動信号発生回路１０からリフレッシュ起動信号ＲＲＥＦＴが２回出力される（時刻ｔ５およびｔ６）。時刻ｔ６の時点で、５．３ＫＲＥＦ方式におけるリフレッシュ起動信号ＲＲＥＦＴの発生回数は６回の最大値に達しているため、それ以降は、例えばリフレッシュ制御信号ＰＭＣＢＡＴ＜１／６＞および＜５／２＞の立ち下がりに応じてリフレッシュ起動信号ＲＲＥＦＴが発生することはない。
【００７８】
カウンタ回路２０は、今回の２回のリフレッシュ起動信号ＲＲＥＦＴに応じて、バンクアドレスＢＡＤＤを“０”から“１”、“２”とカウントアップする。Ｘアドレスセレクタ／バッファ回路６０は、各リフレッシュ起動信号ＲＲＥＦＴが発生した時刻ｔ５およびｔ６で、ＸアドレスＸＡＤＤを取り込んで保持して出力するので、時刻ｔ９で次のリフレッシュ起動信号ＲＲＥＦＴが発生するまでリフレッシュ処理対象のＸアドレスＸＡＤＤは“０００１”となっている。
【００７９】
リフレッシュ動作制御回路５０は、リフレッシュ起動信号ＲＲＥＦＴとバンクアドレスＢＡＤＤに基づき、図９に示すように、２組のリフレッシュ制御信号ＰＭＣＢＡＴ＜０／７＞および＜４／３＞を“Ｈ”レベルとする（時刻ｔ５およびｔ６）。リフレッシュ動作制御回路５０は、リフレッシュ処理に必要な所定時間、リフレッシュ制御信号ＰＭＣＢＡＴ＜０／７＞および＜４／３＞を“Ｈ”レベルとした後、リフレッシュ制御信号ＰＭＣＢＡＴ＜０／７＞および＜４／３＞を“Ｌ”レベルとする。
【００８０】
次に、リフレッシュ実行信号ＭＣＲＦＴが発生した場合には（時刻ｔ９）、再び４個＋２個の６個のリフレッシュ起動信号ＲＲＥＦＴが発生し（時刻ｔ９、ｔ１０、ｔ１１、ｔ１２、ｔ１３およびｔ１４）、バンクアドレスＢＡＤＤが“２”から“３”、“０”、“１”、“２”、“３”、“０”へと変化する。また、バンクアドレスＢＡＤＤが“３”から“０”に２回変化しているので、Ｘアドレスは、“０００１”から“０００２”へ、さらに“０００２”から“０００３”へと変化する。この場合、時刻ｔ９およびｔ１０でＸアドレスセレクタ／バッファ回路６０によって取り込まれたＸアドレスＸＡＤＤは“０００１”となっている。また、時刻ｔ１１〜ｔ１４で、Ｘアドレスセレクタ／バッファ回路６０によって取り込まれたＸアドレスＸＡＤＤは“０００２”となっている。
【００８１】
このようにして、５．３ＫＲＥＦ方式では、２回のオートリフレッシュコマンドが入力された場合に、各メモリバンク０（１００）〜７（１７０）の全てに対して、Ｘアドレス“００００”〜“０００２”までを対象としたリフレッシュ処理が行われることになる。
【００８２】
次に、８ＫＲＥＦ方式では、リフレッシュ実行信号ＭＣＲＦＴが発生した場合に（時刻ｔ１）、リフレッシュ起動信号発生回路１０からリフレッシュ起動信号ＲＲＥＦＴが４回出力される（時刻ｔ１、ｔ２、ｔ３およびｔ４）。カウンタ回路２０は、時刻ｔ１前の初期値がすべて“０”であったとすると、４回のリフレッシュ起動信号ＲＲＥＦＴに応じて、バンクアドレスＢＡＤＤが“０”から“１”、“２”、“３”、“０”とカウントアップする。このバンクアドレスＢＡＤＤに桁上がり（“３”から“０”への戻り）が発生したとき、ＸアドレスＸＡＤＤは初期値“００００”から１つ増加した“０００１”へと変化する。ただし、Ｘアドレスセレクタ／バッファ回路６０は、各リフレッシュ起動信号ＲＲＥＦＴが発生した時刻ｔ１、ｔ２、ｔ３およびｔ４で、ＸアドレスＸＡＤＤを取り込んで保持して出力するので、時刻ｔ９で次のリフレッシュ起動信号ＲＲＥＦＴが発生するまでリフレッシュ処理対象のＸアドレスＸＡＤＤは初期値“００００”のまま変化していない。
【００８３】
また、リフレッシュ起動信号ＲＲＥＦＴとバンクアドレスＢＡＤＤに基づき、リフレッシュ動作制御回路５０によって、図９に示すように、各リフレッシュ制御信号ＰＭＣＢＡＴｉが“Ｈ”レベルとされる（時刻ｔ１、ｔ２、ｔ３およびｔ４）。リフレッシュ動作制御回路５０は、リフレッシュ処理に必要な所定時間、各リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｈ”レベルとした後、リフレッシュ制御信号ＰＭＣＢＡＴｉを“Ｌ”レベルとする。ただし、時刻ｔ４で４回のリフレッシュ起動信号ＲＲＥＦＴの発生が行われた時点で、８ＫＲＥＦ方式におけるリフレッシュ起動信号ＲＲＥＦＴの発生回数は４回の最大値に達しているため、８ＫＲＥＦ方式ではリフレッシュ制御信号ＰＭＣＢＡＴｉの立ち下がりに応じてリフレッシュ起動信号ＲＲＥＦＴが発生することはない。
【００８４】
次に、リフレッシュ実行信号ＭＣＲＦＴが発生した場合には（時刻ｔ９）、再び４個のリフレッシュ起動信号ＲＲＥＦＴが発生し（時刻ｔ９、ｔ１０、ｔ１１およびｔ１２）、バンクアドレスＢＡＤＤが“０”から“１”、“２”、“３”、“０”へと変化する。また、バンクアドレスＢＡＤＤが“３”から“０”に１回変化しているので、Ｘアドレスは、“０００１”から“０００２”へと変化する。この場合、時刻ｔ９、ｔ１０、ｔ１１およびｔ１２でＸアドレスセレクタ／バッファ回路６０によって取り込まれたＸアドレスＸＡＤＤは“０００１”となっている。
【００８５】
このようにして、８ＫＲＥＦ方式では、２回のオートリフレッシュコマンドが入力された場合に、各メモリバンク０（１００）〜７（１７０）の全てに対して、Ｘアドレス“００００”〜“０００１”までを対象としたリフレッシュ処理が行われることになる。
【００８６】
以上のように、本実施の形態では、オートリフレッシュコマンドがデコードされ、リフレッシュ実行信号ＭＣＲＦＴが“Ｈ”となると、温度検出回路７０の出力ＴＨＴＥＬＭＰＴおよびＴＬＴＥＭＰＴの情報が、リフレッシュ回数設定回路８０内のＤラッチによってラッチされる。そして、ラッチされた出力ＴＨＴＥＬＭＰＴおよびＴＬＴＥＭＰＴに基づいてリフレッシュコントローラ２が動作し、各メモリバンク０（１００）〜７（１７０）でリフレッシュ動作が行われる。また、リフレッシュ終了後、リフレッシュ実行信号ＭＣＲＦＴが“Ｌ”から“Ｈ”となると、再び温度検出回路７０の出力ＴＨＴＥＬＭＰＴおよびＴＬＴＥＭＰＴがリフレッシュ回数設定回路８０内のＤラッチに取り込めるようになる。
【００８７】
なお、本実施の形態では、２Ｂａｎｋ（バンク）ずつ時分割動作してリフレッシュを行うこととしているが、全てのＢａｎｋを一度にリフレッシュする方式や、４Ｂａｎｋずつ時分割にリフレッシュする方式等、リフレッシュの方式にはさまざまなバリエーションが考えられる。また、ＸアドレスＸＡＤＤのカウント方法についても限定はない。
【００８８】
次に、図１０を参照して、本発明の他の実施の形態について説明する。図１０に示す半導体記憶装置１ａでは、図１の温度検出回路７０、リフレッシュ回数設定回路８０、リフレッシュコントローラ２に代えて、温度検出回路７０ａ、リフレッシュ回数設定回路８０ａ、リフレッシュコントローラ２ａを設けている。温度検出回路７０ａは、図２に示す温度検出回路７０のうち信号ＴＬＴＥＭＰＴの出力に用いる回路（コンパレータ７１２など）を省略したものである。また、リフレッシュ回数設定回路８０ａは、リフレッシュ実行信号ＭＣＲＦＴに応じて（リフレッシュ実行信号ＭＣＲＦＴをクロック入力ＣＫとして）温度検出回路７０ａから出力された信号ＴＨＴＥＭＰＴをラッチするＤフリップフロップ８３０と、信号ＴＨＴＥＭＰＴをインバータ８３２で反転した信号をラッチするＤフリップフロップ８３１とから構成されている。このＤフリップフロップ８３０の出力をＭ４ＫＲＥＦ信号、Ｄフリップフロップ８３１の出力をＭ８ＫＲＥＦ信号として、リフレッシュコントローラ２ａへ入力する。リフレッシュコントローラ２ａは、上記実施形態とほぼ同一の構成で、すなわちＭ５３ＫＲＥＦ信号を“Ｌ”レベルに固定する回路を追加した構成とすることができる。
【００８９】
本実施の形態では、リフレッシュ方式が４ＫＲＥＦ方式と８ＫＲＥＦ方式の２つに限定されている。ある温度以下では信号ＴＨＴＥＭＰＴが“Ｌ”、ある温度を超える場合は“Ｈ”となるように温度検出回路７０ａが動作する。温度が低いときは８ＫＲＥＦ方式、高いときは４ＫＲＥＦ方式と動作モードが２種類に切り替えられるようになる。なお、図１０では８Ｋと４Ｋの切り替えであるが、８Ｋと５．３Ｋまたは５．３Ｋと４Ｋというような組み合わせも考えられる。また、データ保持時間に実力のある製品では１６ＫＲＥＦ方式（１６Ｋ−リフレッシュ）といった方式の採用も考えられる。
【００９０】
以上のように、本発明の半導体記憶装置は、半導体素子の一部に複数のメモリバンクに分割されて形成されるメモリ素子を有し、オートリフレッシュ方式とセルフリフレッシュ方式のいずれかを選択してメモリ素子のリフレッシュ処理を行う半導体記憶装置であって、オートリフレッシュ方式を選択するコマンドが検出されるごとに半導体素子の温度に応じて、リフレッシュ処理を行う回数を選択する。これによれば、温度によってオートリフレッシュの動作モードを切り替えることで、温度の低い時にはｔＲＦＣ内の動作回数を減らして消費電流を削減する。温度の高い時にはｔＲＦＣ内の動作回数を増やしてデータの消失を防ぐ。これによってシステムの動作状態に合わせてオートリフレッシュ動作を最適化できる。
【００９１】
本発明の半導体記憶装置は、前記半導体素子の一部に形成され該半導体素子の温度を検出する温度検出回路と、外部からのコマンドを受けてデコードし、デコードした結果がオートリフレッシュコマンドの場合にはリフレッシュ実行信号ＭＣＲＥＴを出力するコマンドレシーバ／デコーダと、リフレッシュ実行信号ＭＣＲＥＴに応じ、温度の検出結果に基づいて、予め定められた回数でリフレッシュ起動信号ＲＲＥＦＴを出力するリフレッシュ起動信号発生回路と、複数のメモリバンクの中から特定のメモリバンクを選択するバンクアドレスをリフレッシュ実行信号に応じて温度によって定められる回数を限度に計数し、メモリバンクに対するリフレッシュ処理の分割数で桁上がりするバンクアドレスカウンタと、桁上がりに応じてメモリバンクのワード線を選択するＸアドレスをカウントアップするＸアドレスカウンタとを有している。これによれば、オートリフレッシュコマンドが入力される毎に温度の検出結果に基づいてリフレッシュ回数を選択することができるので、温度変化に対して応答性良く動作状態を最適化することができる。
【００９２】
また、温度検出回路が、半導体素子の一部で形成された温度特性が異なる複数の電源回路を用いて温度を検出することで、例えば単独の電源回路を用いて温度を検出する回路を構成する場合に比べ、回路素子の特性や精度を比較的緩やかに管理することができると考える。
【００９３】
また、温度検出回路の出力に基づき、リフレッシュ実行信号ＭＣＲＥＴの入力毎に出力状態を保持しながら、リフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号を、リフレッシュ起動信号発生回路に対して出力するリフレッシュ回数設定回路を設けることで、リフレッシュ起動信号ＲＲＥＦＴの出力回数を指示する信号を安定した信号とすることができ、リフレッシュ動作を切り替える際の動作が不安定となることを容易に防止することができる。
【００９４】
また、リフレッシュ起動信号ＲＲＥＦＴが入力されたことに応じて、バンクアドレスカウンタから入力されるバンクアドレスで選択されるメモリバンクのリフレッシュ動作を制御するリフレッシュ制御回路と、リフレッシュ起動信号ＲＲＥＦＴが入力されたことに応じて、Ｘアドレスカウンタから入力されるＸアドレスを選択し複数のメモリバンクに出力するＸアドレスセレクタ／バッファとを設けることで、リフレッシュ動作を切り替える際でもＸアドレスのカウント動作を容易に安定して行うことができる。
【００９５】
なお、本発明の半導体記憶装置は、半導体記憶装置１または１ａに相当する。また、本発明の温度検出部は、温度検出回路７０に相当する。また、本発明のコマンドデコーダ部は、コマンドレシーバ／デコーダ４０に相当する。また、本発明のリフレッシュ起動信号発生部は、リフレッシュ起動信号発生回路１０に相当する。また、本発明のバンクアドレスカウンタは、バンクアドレスカウンタ２１に相当する。また、本発明のＸアドレスカウンタは、Ｘアドレスカウンタ２２に相当する。また、本発明のリフレッシュ回数設定部は、リフレッシュ回数設定回路８０に相当する。また、本発明のリフレッシュ制御部は、リフレッシュ動作制御回路５０に相当する。また、本発明のＸアドレスセレクタ部は、Ｘアドレスセレクタ／バッファ回路６０に相当する。
【符号の説明】
【００９６】
１…半導体記憶装置、２…リフレッシュコントローラ、１０…リフレッシュ起動信号発生回路、２０…カウンタ回路、２１…バンクアドレスカウンタ、２２…Ｘアドレスカウンタ、３０…アドレスレシーバ、４０…コマンドレシーバ／デコーダ、５０…リフレッシュ動作制御回路、６０…Ｘアドレスセレクタ／バッファ回路、７０…温度検出回路、８０…リフレッシュ回数設定回路、１０１…Ｘアドレスラッチ、１０２…Ｘデコーダ・タイミング制御・メモリアレイ、１００…メモリバンク０、１１０…メモリバンク１、１７０…メモリバンク７。
【図１】
2010170608.tif 000003
【図２】
2010170608.tif 000004
【図３】
2010170608.tif 000005
【図４】
2010170608.tif 000006
【図５】
2010170608.tif 000007
【図６】
2010170608.tif 000008
【図７】
2010170608.tif 000009
【図８】
2010170608.tif 000010
【図９】
2010170608.tif 000011
【図１０】
2010170608.tif 000012
【手続補正書】
【提出日】平成21年2月23日(2009.2.23)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
Ｘアドレスセレクタ／バッファ回路６０は、リフレッシュ起動信号ＲＲＥＦＴが入力されたことに応じて、Ｘアドレスカウンタ２２から入力されるＸアドレスＸＡＤＤを選択し、複数のメモリバンク０（１００）〜７（１７０）内の各Ｘアドレスラッチ（１０１等）に対して出力する。すなわち、Ｘアドレスセレクタ／バッファ回路６０は、リフレッシュ起動信号ＲＲＥＦＴがリフレッシュ起動信号発生回路１０から入力された場合には、その入力に応じて、Ｘアドレスカウンタ２２から出力されるＸアドレスＸＡＤＤを取り込んで保持する。このリフレッシュ起動信号ＲＲＥＦＴは、上述したように、外部のＤＲＡＭコントローラからのコマンドＣＭＤがオートリフレッシュコマンドの場合に発生される信号である。Ｘアドレスセレクタ／バッファ回路６０はまた、リフレッシュ起動信号ＲＲＥＦＴが入力された場合には、保持しているＸアドレスＸＡＤＤを出力として選択し、選択したＸアドレスＸＡＤＤを各メモリバンクヘ出力する。また、Ｘアドレスセレクタ／バッファ回路６０は、ＭＡＣＴ信号がコマンドレシーバ／デコーダ４０から入力された場合には、アドレスレシーバ３０を介して入力される外部アドレスＡＤＤＲＥＳＳを選択し、選択した外部アドレスＡＤＤＲＥＳＳを各メモリバンクヘ出力する。このＭＡＣＴ信号は、上述したように、外部のＤＲＡＭコントローラからのコマンドＣＭＤがＡＣＴコマンドの場合に発生される信号である。