(57)【要約】【課題】揮発性メモリの指示された（ｄｉｒｅｃｔｅｄ）バンクリフレッシュのシームレスセルフリフレッシュを提供するための方法およびシステム【解決手段】メモリシステムが提供される。該システムは、多数のバンクを有し、かつオートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行するように構成されている揮発性メモリと、該揮発性メモリに該動作モードのうちの１つを実行することを命令するように構成されているメモリコントローラとを含んでいる。該メモリコントローラが該揮発性メモリに該セルフリフレッシュモードを実行することを命令すると、該メモリコントローラはさらに、エントリバンクアドレスを該揮発性メモリに提供するように構成されており、該エントリバンクアドレスは、該セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応している。該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリはさらに、終了バンクアドレスを該メモリコントローラで使用可能にするように構成されており、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している。【選択図】      図４
2008500680.tif 000002
【特許請求の範囲】
【請求項１】
複数のバンクを有し、かつオートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行するように構成されている揮発性メモリと、
前記揮発性メモリに、前記複数の動作モードのうちの１つを実行することを命令するように構成されているメモリコントローラと、
を備えるメモリシステムであって、
前記メモリコントローラが前記揮発性メモリに前記セルフリフレッシュモードを実行するように命令すると、前記メモリコントローラはさらにエントリバンクアドレスを前記揮発性メモリに提供するように構成されており、前記エントリバンクアドレスは前記セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに終了バンクアドレスを前記メモリコントローラで使用可能にするように構成されており、前記終了バンクアドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している、メモリシステム。
【請求項２】
前記メモリコントローラはさらに、前記メモリコントローラが前記終了バンクアドレスを受信した後に、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに続くバンクをリフレッシュするオートリフレッシュコマンドを前記揮発性メモリに発行するように構成されている、請求項１に記載のシステム。
【請求項３】
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに、終了行アドレスを前記メモリコントローラで使用可能にするように構成されており、前記終了行アドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応している、請求項１に記載のシステム。
【請求項４】
前記揮発性メモリは、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）または同期型ＤＲＡＭのうちの一方である、請求項１に記載のシステム。
【請求項５】
エントリバンクアドレスラッチと、終了バンクアドレスラッチと複数のバンクとを有する揮発性メモリと、
オートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行することを前記揮発性メモリに命令するように構成されているメモリコントローラと、
を備えるメモリシステムであって、
前記メモリコントローラが前記揮発性メモリに前記セルフリフレッシュモードを実行するように命令すると、前記メモリコントローラはさらに、エントリバンクアドレスを前記エントリバンクアドレスラッチにロードするように構成されており、前記エントリバンクアドレスは前記セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに、終了バンクアドレスを前記終了バンクアドレスラッチにロードするように構成されており、前記終了バンクアドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応しており、前記終了バンクアドレスラッチは前記メモリコントローラにアクセス可能である、メモリシステム。
【請求項６】
前記メモリコントローラはさらに、前記メモリコントローラが前記終了バンクアドレスラッチから前記終了バンクアドレスを検索した後に、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに続くバンクをリフレッシュするオートリフレッシュコマンドを前記揮発性メモリに発行するように構成されている、請求項５に記載のシステム。
【請求項７】
前記揮発性メモリはさらに終了行アドレスラッチを含んでおり、前記終了行アドレスラッチは前記メモリコントローラにアクセス可能であり、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに、終了行アドレスを前記終了行アドレスラッチにロードするように構成されており、前記終了行アドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応している、請求項５に記載のシステム。
【請求項８】
前記揮発性メモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）または同期型ＤＲＡＭのうちの一方である、請求項５に記載のシステム。
【請求項９】
複数のバンクと、エントリバンクアドレスを記憶するための第１の記憶手段と、終了バンクアドレスを記憶するための第２の手段とを有する揮発性メモリと、
オートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行することを前記揮発性メモリに命令するように構成されているメモリコントローラと、
を備えるメモリシステムであって、
前記メモリコントローラが前記揮発性メモリに前記セルフリフレッシュモードを実行するように命令すると、前記メモリコントローラはさらに前記エントリバンクアドレスを前記第１の記憶手段にロードするように構成されており、前記エントリバンクアドレスは、前記セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに前記終了バンクアドレスを前記第２の記憶手段にロードするように構成されており、前記終了バンクアドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応しており、前記第２の記憶手段は前記メモリコントローラにアクセス可能である、メモリシステム。
【請求項１０】
前記メモリコントローラはさらに、前記メモリコントローラが前記終了バンクアドレスを前記第２の記憶手段から検索した後に、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに続くバンクをリフレッシュするオートリフレッシュコマンドを前記揮発性メモリに発行するように構成されている、請求項９に記載のシステム。
【請求項１１】
前記揮発性メモリはさらに、終了行アドレスを記憶するための第３の記憶手段を含んでおり、
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に、前記揮発セメモリはさらに前記終了行アドレスを前記第３の記憶手段にロードするように構成されており、前記終了行アドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応しており、前記第３の記憶手段は前記メモリコントローラにアクセス可能である、請求項９に記載のシステム。
【請求項１２】
前記揮発性メモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）または同期型ＤＲＡＭのうちの一方である、請求項１０に記載のシステム。
【請求項１３】
複数のバンクと、エントリバンクアドレスラッチと、終了バンクアドレスラッチと、リフレッシュクロックと、リフレッシュカウンタとを有する揮発性メモリであって、前記リフレッシュカウンタはさらに行アドレスカウンタおよび行インクリメントカウンタを有しており、前記リフレッシュクロックは前記リフレッシュカウンタおよび前記エントリバンクアドレスラッチをコントロールするように構成されており、前記行インクリメントカウンタは前記行アドレスカウンタをインクリメントするように構成されている揮発性メモリと、
前記揮発性メモリをコントロールしてオートリフレッシュモードまたはセルフリフレッシュモードを実行するように構成されているメモリコントローラであって、ターゲットバンクのバンクアドレスを前記エントリバンクアドレスラッチにロードするようにさらに構成されているメモリコントローラと、
を備えるメモリシステムであって、
前記メモリコントローラはさらに、前記揮発性メモリに前記オートリフレッシュモードを実行してオートリフレッシュ動作を前記ターゲットバンクに実行することを命令するように構成されており、
前記行インクリメントカウンタは、オートリフレッシュ動作が実行されるたびにインクリメントされるように構成されており、
前記行インクリメントカウンタはさらに、所定数のオートリフレッシュ動作が実行された後に前記行アドレスカウンタをインクリメントするように構成されており、
前記行アドレスカウンタは、前記ターゲットバンクの行を前記オートリフレッシュ動作のために識別するのに使用可能な行アドレスを含んでおり、
前記揮発性メモリが前記セルフリフレッシュモードになると、前記揮発性メモリはさらに、前記エントリバンクアドレスラッチに記憶されている前記バンクアドレスと前記リフレッシュカウンタに記憶されている内容とを使用して１つ以上のセルフリフレッシュ動作を実行するように構成されており、
前記揮発性メモリはさらに、各セルフリフレッシュ動作後に必要に応じて前記エントリバンクアドレスラッチおよび前記リフレッシュカウンタをインクリメントするように構成されており、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリは、前記エントリバンクアドレスラッチの現在値を前記終了バンクアドレスラッチにロードするように構成されており、前記終了バンクアドレスラッチの前記値は、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している、メモリシステム。
【請求項１４】
前記終了バンクアドレスラッチは前記メモリコントローラにアクセス可能であり、
前記メモリコントローラはさらに、前記メモリコントローラが前記終了バンクアドレスラッチに記憶されている値を検索した後に、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに続くバンクをリフレッシュするオートリフレッシュコマンドを前記揮発性メモリに発行するように構成されている、請求項１３に記載のシステム。
【請求項１５】
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリはさらに、前記行インクリメントカウンタをリセットしないように構成されている、請求項１３に記載のシステム。
【請求項１６】
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記メモリコントローラはさらに、平均リフレッシュ期間内に追加リフレッシュを発行しないように構成されている、請求項１３に記載のシステム。
【請求項１７】
前記揮発性メモリはさらに終了行アドレスラッチを含んでおり、
前記揮発性メモリが前記セルフリフレッシュモードを終了すると、前記揮発性メモリは前記行アドレスカウンタの現在値を前記終了行アドレスラッチにロードするように構成されており、前記終了行アドレスラッチの前記値は、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応している、請求項１３に記載のシステム。
【請求項１８】
前記揮発性メモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）または同期型ＤＲＡＭのうちの一方である、請求項１３に記載のシステム。
【請求項１９】
エントリバンクアドレスラッチと、終了バンクアドレスラッチと、複数のバンクと、複数のリフレッシュ行カウンタとを有する揮発性メモリであって、各リフレッシュ行カウンタは対応するバンクと関連しており、かつターゲット行アドレスを記憶するように構成されている揮発性メモリと、
前記揮発性メモリにオートリフレッシュモードを実行することを命令するように構成されており、さらに、ターゲットバンクアドレスを前記エントリバンクアドレスラッチにロードするように構成されているメモリコントローラと、
を備えるメモリシステムであって、
前記揮発性メモリは前記オートリフレッシュモードでオートリフレッシュ動作を実行するように構成されており、前記オートリフレッシュ動作は、前記ターゲットバンクと関連した前記リフレッシュ行カウンタに記憶されている前記ターゲット行アドレスを使用して前記ターゲットバンクアドレスによって識別されたターゲットバンクに実行され、
前記メモリコントローラはさらに、前記揮発性メモリにセルフリフレッシュモードを実行することを命令するように構成されており、
前記揮発性メモリはさらに、前記エントリバンクアドレスラッチをインクリメントして現在のターゲットバンクアドレスを生成することによって前記セルフリフレッシュモードで前記複数のバンクを巡回するように構成されており、
各セルフリフレッシュ動作時に、前記揮発性メモリはさらに、前記関連リフレッシュ行カウンタに記憶されている前記ターゲット行アドレスに基づいて現在のターゲットバンクアドレスによって識別された前記バンクをリフレッシュするように構成されており、
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に、前記揮発性メモリはさらに、前記エントリバンクアドレスラッチに記憶されている値を前記終了バンクアドレスラッチにロードするように構成されており、前記終了バンクアドレスラッチの前記値は、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している、メモリシステム。
【請求項２０】
前記終了バンクアドレスラッチは前記メモリコントローラにアクセス可能であり、
前記メモリコントローラはさらに、前記メモリコントローラが前記終了バンクアドレスラッチに記憶されている値を検索した後に、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに続くバンクをリフレッシュするオートリフレッシュコマンドを前記揮発性メモリに発行するように構成されている、請求項１９に記載のシステム。
【請求項２１】
前記揮発性メモリはさらに、前記揮発性メモリが前記セルフリフレッシュモードになる前に拡張リフレッシュを実行しないように構成されている、請求項１９に記載のシステム。
【請求項２２】
前記揮発性メモリはさらに終了行アドレスラッチを含んでおり、前記終了行アドレスラッチは前記メモリコントローラにアクセス可能であり、
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に、前記揮発性メモリはさらに、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクと関連した前記リフレッシュ行カウンタに記憶されている値を前記終了行アドレスラッチにロードするように構成されている、請求項１９に記載のシステム。
【請求項２３】
前記揮発性メモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）または同期型ＤＲＡＭのうちの一方である、請求項１９に記載のシステム。
【請求項２４】
複数のバンクを有する揮発性メモリのメモリリフレッシュを制御する方法であって、
エントリバンクアドレスを前記揮発性メモリに送ることと、
前記揮発性メモリに、セルフリフレッシュモードを実行して、前記エントリバンクアドレスに基づいて１つ以上のセルフリフレッシュ動作を実行するように命令することであって、前記エントリバンクアドレスは、前記１つ以上のセルフリフレッシュ動作が開始するターゲットバンクに対応していることと、
前記揮発性メモリに、前記揮発性メモリが前記セルフリフレッシュモードを終了する際に終了バンクアドレスを使用可能にするように命令することであって、前記終了バンクアドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応していることと、を備える方法。
【請求項２５】
オートリフレッシュモードを実行して、前記終了バンクアドレスによって識別された前記バンクに続くバンクにオートリフレッシュ動作を実行することを前記揮発性メモリに命令することをさらに備える、請求項２４に記載の方法。
【請求項２６】
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に前記揮発性メモリに終了行アドレスを使用可能にするように命令することであって、前記終了行アドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応している、請求項２４に記載の方法。
【請求項２７】
エントリバンクアドレスラッチと、終了バンクアドレスラッチと複数のバンクとを有する揮発性メモリのメモリリフレッシュを制御する方法であって、
エントリバンクアドレスを前記エントリバンクアドレスラッチにロードすることと、
前記揮発性メモリに、前記エントリバンクアドレスを前記エントリバンクアドレスラッチから検索するように命令することと、
前記揮発性メモリに、セルフリフレッシュモードを実行して、前記エントリバンクアドレスに基づいて１つ以上のセルフリフレッシュ動作を実行するように命令することであって、前記エントリバンクアドレスは、前記１つ以上のセルフリフレッシュ動作が開始するターゲットバンクに対応していることと、
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に終了バンクアドレスを前記終了バンクアドレスラッチに記憶することであって、前記終了バンクアドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応していることと、を備える方法。
【請求項２８】
前記終了バンクアドレスを前記終了バンクアドレスラッチから検索することと、
前記揮発性メモリに、オートリフレッシュモードを実行して、前記終了バンクアドレスによって識別された前記バンクに続くバンクにオートリフレッシュ動作を実行するように命令することとをさらに備える、請求項２７に記載の方法。
【請求項２９】
前記揮発性メモリはさらに終了行アドレスラッチを含んでおり、前記方法はさらに、
前記揮発性メモリが前記セルフリフレッシュモードを終了する際に終了行アドレスを前記終了行アドレスラッチに記憶することであって、前記終了行アドレスは、前記揮発性メモリが前記セルフリフレッシュモードを終了する前にリフレッシュされた最後の行に対応していることを備える、請求項２７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は、２００４年５月２７日に出願された米国特許仮出願第６０／５７５，３３５号に対する優先権を請求するものである。
【０００２】
本開示は、概してメモリデバイスに関し、より具体的には、揮発性メモリの指示されたバンクリフレッシュのシームレスセルフリフレッシュを提供するための方法およびシステムに関する。
【背景技術】
【０００３】
揮発性メモリは、多数のアレイ（つまりバンク）として一般的に構成される記憶媒体である。各バンクはさらに、「メモリセル」のマトリックスとして行列に配列され、各列はさらにメモリの入力／出力（Ｉ／Ｏ）幅によって分割される。メモリ内の位置はバンク、行および列によって一意に特定される。メモリコントローラは、データのバンク、行および列の位置を示すことによってメモリからデータを検索するために使用されることがある。例えば、１６ビットの外部データバスを有する４倍長(quad)バンクの１２８Ｍｂメモリについて、可能な論理アドレスマッピングは、９ビットの列アドレスと、２ビットのバンクアドレスと１２ビットの行アドレスとを含む。
【０００４】
メモリ位置の読み取りまたは書き込みの前に、対応する行が最初に開かれなければならない。行を開くプロセスは、最少数のクロックサイクルｔＲＣＤを必要とし、これは行対列遅延を表している。行が開かれると、この行内の列アドレスは所望により読み取りまたは書き込み可能である。同期型ＤＲＡＭ（ＳＤＲＡＭ）などのダイナミックランダムアクセスメモリ（ＤＲＡＭ）について、一度に開いたままにしておけるのはバンク当たり１個の行のみであり、同一バンク内であるが異なる行で実行される後続のメモリアクセスは、現在の行を閉じることと、新たな行を開くこととを必要とする。
【０００５】
ダイナミック揮発性メモリの場合、各セルは、データの統合性を維持するために、平均間隔ｔＲＥＦＩで定期的にリフレッシュまたは再エネルギー付与されなければならない。セルは、経時的に放電することがある電荷を貯蔵するキャパシターの周辺に設計されるため、リフレッシュされなければならない。リフレッシュとは、メモリ内のセルを再充電または再エネルギー付与するプロセスである。セルは一般的に一度に１行ずつリフレッシュされる。揮発性メモリをリフレッシュするように設計された多数の方法が現存している。これらの方法のうちの全部ではなく一部は、性能および／または電力のコスト高を招く。例えば、現在のディジタルシステムにおいて揮発性メモリのリフレッシュを制御するために一般的に使用される２つの共通の方法または技術がある。一方の方法は、メモリで使用可能な内蔵リフレッシュ機構を使用してリフレッシュされる必要がある行およびバンクのトラックを維持するのにメモリに依存しており、もう一方の方法は、リフレッシュされる必要のある行およびバンクのトラックを維持するのにメモリコントローラに依存している。
【０００６】
最も一般的に使用される方法は、揮発性メモリのオートリフレッシュおよびセルフリフレッシュ機能によって利用される。これらの機能はメモリの内蔵リフレッシュアドレスを使用する。メモリのアクティブ使用中、リフレッシュサイクルが必要ならば、メモリコントローラは全バンクをプリチャージしてから、オートリフレッシュコマンドを使用してメモリに内部リフレッシュサイクルを発行するように伝達する。オートリフレッシュコマンドを受信すると、メモリは内部リフレッシュアドレスカウンタをインクリメントし、内部リフレッシュサイクルを実行する。オートリフレッシュモードでは、メモリはこの内部リフレッシュアドレスカウンタのリフレッシュアドレスを使用して、いずれの行／バンクがリフレッシュサイクルを実行し、かつ当該行を巡回するかを判断する。一実施において、内部リフレッシュアドレスカウンタは行アドレスレジスタおよびバンクアドレスレジスタを含む。内部リフレッシュアドレスカウンタはリフレッシュクロックによってコントロールされる。バンクアドレスレジスタはインクリメントされて、行アドレスレジスタにインクリメントさせるバンクアドレスレジスタの実行によってメモリバンクの各々を巡回する。全バンクが同時にリフレッシュされるため、他の実施はバンクアドレスレジスタを有していない。
【０００７】
現在の非同時バンクオートリフレッシュ実施の欠点は、メモリコントローラがいずれの内部バンクがリフレッシュされるのかを知らないために、メモリコントローラがオートリフレッシュコマンドを発行する前に開いている行をすべて閉じる必要があるということである。結果として、オートリフレッシュシーケンス時のメモリデータバス使用可能性はゼロである。せいぜい、このシーケンスがｔＲＰ＋ｔＲＦＣ＋ｔＲＣＤ個のサイクルですみ、ここでｔＲＰは行プリチャージ遅延を表しており、ｔＲＦＣはリフレッシュサイクル時間を表しており、ｔＲＣＤは行対列遅延を表している。１３３ＭＨｚメモリについて、これは１６個のクロックサイクル（１２０ｎｓ）であってもよい。これらのサイクルは、メモリデータバスがこの期間中は使用可能ではないために、デッドサイクルと称されることもある。
【０００８】
使用しない期間中、メモリコントローラはメモリをセルフリフレッシュモードにすることがある。セルフリフレッシュモードでは、メモリはこれ自身の内部クロックおよびリフレッシュアドレスカウンタを使用して、メモリの（複数の）行をリフレッシュするためのリフレッシュを生成する。この方法は、セルフリフレッシュモードが使用可能なために、アイドル状態時の節電には効果的である。セルフリフレッシュ状態は少量の電力を使用し、メモリをリフレッシュすることによってメモリの内容を維持する。少量の必要電力ゆえに、この方法は通常小電力用途に使用される。
【０００９】
第２の方法は、上記メモリデータバス上のデッドサイクルを回避するために使用されることがある。この第２の方法によると、リフレッシュの制御はメモリコントローラを介して実行される。この方法は、メモリ上で使用可能な内蔵リフレッシュ機構を全く使用しない。この方法では、定期的な所与の間隔（ｔＲＥＦＩ）で、メモリコントローラは、バンク／行アドレスの組み合わせを使用して連続的に行を開閉することによってリフレッシュを積極的に生成する。リフレッシュレートを決定するリフレッシュクロックと、バンク／行アドレスの組み合わせとはメモリコントローラに対して内在的である。この方法は、高速／高性能用途には最良のものである。この方法によってメモリコントローラは特定のメモリバンクをリフレッシュしつつ、他のメモリバンクをアクセス用に開いたままにすることができ、より高性能をもたらすことができ、また他のバンクに対する読み取りおよび書き込みは一般的に平行して継続されて中断されない。この方法の欠点は、システムの電力ダウンまたは長期のアイドル状態時に、メモリコントローラがメモリをリフレッシュしていない場合には、メモリがセルフリフレッシュ状態に維持されないということである。上記のように、セルフリフレッシュ状態は多くの揮発性メモリの内蔵機能である。メモリのセルフリフレッシュ機能は、メモリコントローラとは別に、メモリのリフレッシュアドレスカウンタに記憶されているリフレッシュアドレス（つまり、行／バンクアドレス）をインクリメントするため、メモリによって維持されるリフレッシュアドレスはメモリコントローラとは一貫しておらず、またはこれと同期していない。
【００１０】
各リフレッシュサイクルはメモリをデータアクセスが不可能なアイドル状態に強制するため、リフレッシュ動作はメモリサブシステムの性能を低下させる恐れがある。例えば、特定のバンクがアクティブ状態にある時にリフレッシュサイクルが特定のメモリバンクに対して必要とされる場合、バンクは、リフレッシュ動作を生じさせるためにシャットダウンされなければならない。バンクのシャットダウンは、実行されるはずであったデータ動作はすべて遅延されることになり、システム性能に悪影響を及ぼすことを意味している。
【００１１】
リフレッシュ動作のパフォーマンスインパクトを低下させるためにいくつかの既存のスキームが使用可能である。このようなスキームは通常、必要以上に高いリフレッシュレートを使用することを伴うため、多くのメモリバンクは所定のリフレッシュ期間内にリフレッシュ可能である。より多くのメモリバンクをリフレッシュさせることによって、アクティブメモリバンクをリフレッシュのためにシャットダウンしなければならない可能性が低くなる。しかしながら、より高いリフレッシュレートの使用は欠点を有している。例えば、リフレッシュレートの増大はより多くの電力が必要であることを意味し、これはまた性能の低下をもたらす。また、単により高いリフレッシュレートを使用することは必ずしも、リフレッシュが必要な場合にアクティブメモリバンクをシャットダウンする必要性を緩和せず、アクティブメモリバンクが無関係にシャットダウンされて、より高いリフレッシュレートを使用する利点を否定する状況もある。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
従って、揮発性メモリの指示されたバンクリフレッシュのシームレスセルフリフレッシュを提供するためのより効率的な方法およびシステムを提供することが望ましいであろう。
【課題を解決するための手段】
【００１３】
本発明の一態様では、メモリシステムは、複数のバンクを有し、かつオートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行するように構成されている揮発性メモリと、該複数の動作モードのうちの１つを実行するように該揮発性メモリに命令するように構成されているメモリコントローラとを含んでおり、該メモリコントローラが該揮発性メモリに該セルフリフレッシュモードを実行するように命令すると、該メモリコントローラはさらに、エントリバンクアドレスを該揮発性メモリに提供するように構成されており、該エントリバンクアドレスは、該セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、また該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリはさらに、終了バンクアドレスを該メモリコントローラで使用可能にするように構成され、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している。
【００１４】
本発明の別の態様において、メモリシステムは、エントリバンクアドレスラッチと、終了バンクアドレスラッチと複数のバンクとを有する揮発性メモリと、オートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行することを該揮発性メモリに命令するように構成されているメモリコントローラとを含んでおり、該メモリコントローラが該揮発性メモリに該セルフリフレッシュモードを実行するように命令すると、該メモリコントローラはさらに、エントリバンクアドレスを該エントリバンクアドレスラッチにロードするように構成されており、該エントリバンクアドレスは、該セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、また該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリはさらに、終了バンクアドレスを該終了バンクアドレスラッチにロードするように構成されており、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応しており、また該終了バンクアドレスラッチは該メモリコントローラにアクセス可能である。
【００１５】
本発明のさらに別の態様では、メモリシステムは、複数のバンクと、エントリバンクアドレスを記憶するように構成されている第１の記憶手段と、終了バンクアドレスを記憶するように構成されている第２の記憶手段とを有する揮発性メモリと、オートリフレッシュモードおよびセルフリフレッシュモードを含む複数の動作モードのうちの１つを実行するように該揮発性メモリに命令するように構成されているメモリコントローラとを含んでおり、該メモリコントローラが該揮発性メモリに該セルフリフレッシュモードを実行することを命令すると、該メモリコントローラはさらに、該エントリバンクアドレスを該第１の記憶手段にロードするように構成されており、該エントリバンクアドレスは、該セルフリフレッシュモード時にリフレッシュされる最初のバンクに対応しており、該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリはさらに、該終了バンクアドレスを該第２の記憶手段にロードするように構成されており、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応しており、該第２の記憶手段は該メモリコントローラにアクセス可能である。
【００１６】
本発明の一態様では、メモリシステムは、複数のバンクと、エントリバンクアドレスラッチと、終了バンクアドレスラッチと、リフレッシュクロックと、リフレッシュカウンタとを有する揮発性メモリであって、該リフレッシュカウンタはさらに行アドレスカウンタおよび行インクリメントカウンタを有しており、該リフレッシュクロックは該リフレッシュカウンタおよび該エントリバンクアドレスラッチを制御するように構成されており、該行インクリメントカウンタは該行アドレスカウンタをインクリメントするように構成されている揮発性メモリと、該揮発性メモリを制御して、オートリフレッシュモードまたはセルフリフレッシュモードを実行するように構成されているメモリコントローラであって、ターゲットバンクのバンクアドレスを該エントリバンクアドレスラッチにロードするようにさらに構成されているメモリコントローラとを含んでおり、該メモリコントローラはさらに、該揮発性メモリに、該オートリフレッシュモードを実行してオートリフレッシュ動作を該ターゲットバンクに実行するように命令するように構成されており、該行インクリメントカウンタは、オートリフレッシュ動作が実行されるたびにインクリメントされるように構成されており、該行インクリメントカウンタはさらに、所定数のオートリフレッシュ動作が実行された後に該行アドレスカウンタをインクリメントするように構成されており、該行アドレスカウンタは、該オートリフレッシュ動作に対する該ターゲットバンクのうちの１行を識別するために使用可能な行アドレスを含んでおり、該揮発性メモリが該セルフリフレッシュモードになると、該揮発性メモリはさらに、該エントリバンクアドレスラッチに記憶されている該バンクアドレスを使用して１つ以上のセルフリフレッシュ動作を実行するように構成されており、該揮発性メモリはさらに、各セルフリフレッシュ動作後に該エントリバンクアドレスラッチをインクリメントするように構成されており、該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリは、該エントリバンクアドレスラッチの現在値を該終了バンクアドレスラッチにロードするように構成されており、該終了バンクアドレスラッチの該値は、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している。
【００１７】
本発明のさらに別の態様では、メモリシステムは、エントリバンクアドレスラッチと、終了バンクアドレスラッチと、複数のバンクと、複数のリフレッシュ行カウンタとを有する揮発性メモリであって、各リフレッシュ行カウンタが対応するバンクと関連しており、かつターゲット行アドレスを記憶するように構成されている揮発性メモリと、該揮発性メモリにオートリフレッシュモードを実行することを命令するように構成されているメモリコントローラであって、ターゲットバンクアドレスを該エントリバンクアドレスラッチにロードするようにさらに構成されているメモリコントローラとを含んでおり、該揮発性メモリは該オートリフレッシュモードでオートリフレッシュ動作を実行するように構成されており、該オートリフレッシュ動作は、該ターゲットバンクと関連した該リフレッシュ行カウンタに記憶されている該ターゲット行アドレスを使用して該ターゲットバンクアドレスによって識別されたターゲットバンクに実行され、該メモリコントローラはさらに、該揮発性メモリにセルフリフレッシュモードを実行することを命令するように構成されており、該揮発性メモリはさらに、該エントリバンクアドレスラッチをインクリメントして現在のターゲットバンクアドレスを生成することによって該セルフリフレッシュモードで該複数のバンクを巡回するように構成されており、また各セルフリフレッシュ動作時に、該揮発性メモリはさらに、該関連したリフレッシュ行カウンタに記憶されている該ターゲット行アドレスに基づいて該現在のターゲットバンクアドレスによって識別された該バンクをリフレッシュするように構成されており、該揮発性メモリが該セルフリフレッシュモードを終了すると、該揮発性メモリはさらに、該エントリバンクアドレスラッチに記憶されている該値を該終了バンクアドレスラッチにロードするように構成されており、該終了バンクアドレスラッチの該値は、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応している。
【００１８】
本発明のさらなる態様では、複数のバンクを有する揮発性メモリのメモリリフレッシュを制御する方法は、エントリバンクアドレスを該揮発性メモリに送ることと、該揮発性メモリに、セルフリフレッシュモードを実行して該エントリバンクアドレスに基づいて１つ以上のセルフリフレッシュ動作を実行するように命令することであって、該エントリバンクアドレスは該１つ以上のセルフリフレッシュ動作が開始するターゲットバンクに対応していることと、該揮発性メモリが該セルフリフレッシュモードを終了する際に、該揮発性メモリに終了バンクアドレスを使用可能にするように命令することであって、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応していることとを含んでいる。
【００１９】
本発明のさらに別の態様では、エントリバンクアドレスラッチと、終了バンクアドレスラッチと複数のバンクとを有する揮発性メモリのメモリリフレッシュを制御する方法は、エントリバンクアドレスを該エントリバンクアドレスラッチにロードすることと、該揮発性メモリに該エントリバンクアドレスを該エントリバンクアドレスラッチから検索するように命令することと、該揮発性メモリに、セルフリフレッシュモードを実行して、該エントリバンクアドレスに基づいて１つ以上のセルフリフレッシュ動作を実行するように命令することであって、該エントリバンクアドレスは、該１つ以上のセルフリフレッシュ動作が開始するターゲットバンクに対応していることと、該揮発性メモリが該セルフリフレッシュモードを終了する際に終了バンクアドレスを該終了バンクアドレスラッチに記憶することであって、該終了バンクアドレスは、該揮発性メモリが該セルフリフレッシュモードを終了する前にリフレッシュされた最後のバンクに対応していることとを含んでいる。
【００２０】
本発明の他の実施形態は以下の詳細な説明から当業者には容易に明らかになることが理解され、本発明の種々の実施形態は例証によって示され、かつ説明される。実現されるように、本発明は他の異なる実施形態も可能であり、またこの複数の詳細は、本発明の主旨および範囲から逸脱することなく、種々の点の修正も可能である。従って、図面および詳細な説明は本質的に例示とみなされ、制限的とみなされるべきではない。
【００２１】
本発明の態様は添付の図面において、制限する目的ではなく一例として示されている。
【発明を実施するための最良の形態】
【００２２】
添付の図面と関連して以下に説明される詳細な説明は本発明の種々の実施形態の説明とされ、本発明が実践可能な実施形態のみを表すことを意図していない。詳細な説明は、本発明の完全な理解を提供するために具体的な詳細を含む。しかしながら、本発明はこれらの具体的な詳細なしで実践可能であることは当業者には明らかであろう。いくつかの例では、本発明の概念のあいまいさを回避するために、既知の構造およびコンポーネントはブロック図の形態で示されている。
【００２３】
次にメモリシステムの種々の実施形態を説明する。一実施形態では、メモリがセルフリフレッシュモードになると第１のリフレッシュ動作に対して具体的なバンクを特定可能にするシームレスリフレッシュ方法が提供される。このリフレッシュ方法によってまた、メモリがセルフリフレッシュモードを終了すると、最後にリフレッシュされたバンクに関する情報がメモリコントローラに送られる。図１は、シームレスリフレッシュ方法を実践するために使用可能な配列１００を示している。図１に示されるように、シームレスリフレッシュ方法は、揮発性メモリ１１０と、揮発性メモリ１１０を制御するように構成されているメモリコントローラ１２０とによって実践可能である。揮発性メモリ１１０は例えば、ＤＲＡＭ（ダイナミックランダムアクセスメモリ）、ＳＤＲＡＭ（同期型ＤＲＡＭ）、および種々のタイプのＤＲＡＭなどであってもよい。ここに提供されている開示および教示に基づいて、当業者は、リフレッシュ動作を必要とする他のタイプのメモリによって本開示を実践する方法を理解するであろう。一実施形態では、シームレスリフレッシュ方法は、メモリコントローラ１２０および揮発性メモリ１１０を制御する制御論理やプロセッサ（図示せず）によって実行される。制御論理やプロセッサは、独立モジュールとして実施されても、メモリコントローラ１２０などの別のコンポーネントの一部として一体化されてもよいことが理解されるべきである。
【００２４】
図２は、シームレスリフレッシュ方法を実践するために使用可能な揮発性メモリ１１０の一実施形態を示している。揮発性メモリ１１０はさらに、多数のバンク２００と、エントリバンクアドレスラッチ２１０と、終了バンクアドレスラッチ２２０とを含んでもよい。シームレスリフレッシュ方法は、オートリフレッシュサイクルとセルフリフレッシュサイクル間の推移を最適化する。メモリコントローラ１２０が揮発性メモリ１１０にセルフリフレッシュモードになるように命令すると、メモリコントローラ１２０は、ターゲットバンクアドレスを使用することによっていずれのバンクを次にリフレッシュするかを揮発性メモリ１１０に示唆する。ターゲットバンクアドレスは、エントリバンクアドレスラッチ２１０にロードされる。
【００２５】
図３は、サイクル「２」において、メモリの最初のセルフリフレッシュサイクルが特定のバンクＢａｎｋＸで実行されることを示すセルフリフレッシュモードに揮発性メモリ１１０を配置するというコマンドをメモリコントローラ１２０が発行することを示している。そして、サイクル「ｍ＋１」で、揮発性メモリ１１０はセルフリフレッシュモードを終了して、最後にリフレッシュされたバンクＢａｎｋＹのバンクアドレスを終了バンクアドレスラッチ２２０にロードする。メモリコントローラ１２０は終了バンクアドレスラッチ２２０の内容を検索してから、これを、セルフリフレッシュモードを終了する前に揮発性メモリ１１０がリフレッシュした最後のバンクを識別するために使用する。メモリコントローラ１２０は、この最後のバンクがいつリフレッシュされたかを知らないため、メモリコントローラ１２０は揮発性メモリ１１０に、可及的速やかにリフレッシュに適したオートリフレッシュ動作を次のバンクＢａｎｋＹ＋１に実行するように命令する。
【００２６】
図６に示されているような別の実施形態では、揮発性メモリ１１０はさらに終了行アドレスラッチ２３０を含んでもよい。セルフリフレッシュモードを終了する前に、最後にリフレッシュされた行の行アドレスは終了行アドレスラッチ２３０にロードされてもよい。終了行アドレスラッチ２３０の内容はメモリコントローラ１２０（図１参照）にアクセス可能である。ゆえに、揮発性メモリ１１０がセルフリフレッシュモードを終了した後、最後にリフレッシュされた行およびバンクのバンクアドレスおよび行アドレスに関する情報が終了行アドレスラッチ２３０および終了バンクアドレスラッチ２２０からメモリコントローラ１２０に使用可能である。そしてメモリコントローラ１２０はこの情報を将来の動作に対して利用可能である。
【００２７】
ここに提供されている開示および教示に基づいて、当業者は、本開示に開示されている概念に従って、ここに開示されているシームレスリフレッシュ方法を異なる揮発性メモリ配列に適用する方法を理解するであろう。例えば、メモリコントローラが、オートリフレッシュモードでメモリ内の特定のバンクにリフレッシュを向けることができるシームレスリフレッシュ方法は、提案されている２つのアプローチと関連して使用可能である。
【００２８】
第１のアプローチでは、メモリコントローラは、特定のバンクのターゲットバンクアドレスを、オートリフレッシュモードのオートリフレッシュ動作のために揮発性メモリに提供可能である。図４は、第１のアプローチで指示されたリフレッシュ方法を実践するために使用可能な揮発性メモリ１１０の一実施形態を示している。揮発性メモリ１１０はさらに、行アドレスカウンタ４５０および行インクリメントカウンタ４２０を有するリフレッシュカウンタ４００と、リフレッシュトリガ４４０と、エントリバンクアドレスラッチ２１０と多数のバンク４１０とを含んでもよい。
【００２９】
リフレッシュトリガ４４０は、リフレッシュカウンタ４００およびエントリバンクアドレスラッチ２１０の両方をコントロールするために使用可能である。リフレッシュトリガ４４０は、オートリフレッシュモードまたはセルフリフレッシュモードのいずれかでリフレッシュ動作を開始するために揮発性メモリ１１０によって使用される。例えば、メモリコントローラ１２０（図１参照）からオートリフレッシュコマンドを受信すると、揮発性メモリ１１０はリフレッシュトリガ４４０にオートリフレッシュ動作を開始することを命令してもよい。リフレッシュトリガ４４０は例えば、クロックや他のタイミング機構であってもよい。
【００３０】
行アドレスカウンタ４５０は、リフレッシュされる行のターゲット行アドレスを記憶するために使用可能である。エントリバンクアドレスラッチ２１０は、リフレッシュされる行を含む特定のバンクのターゲットバンクアドレスを記憶するために使用可能である。
【００３１】
他のメモリバンクがアクセス可能なままである時に、メモリコントローラ１２０は揮発性メモリ１１０に、揮発性メモリ１１０内の特定のメモリバンクをオートリフレッシュするように命令してもよい。メモリコントローラ１２０によって開始されるオートリフレッシュサイクルごとに、バンクアドレス４７０はメモリコントローラ１２０（図１参照）によってエントリバンクアドレスラッチ２１０にロードされてもよい。バンクアドレス４７０はバンク４１０のうちの１つをリフレッシュに選択するために使用される。メモリコントローラ１２０（図１参照）はリフレッシュされる特定のバンクを知っているため、他の内部バンクへのアクセスは中断なく継続可能である。これは、メモリデータバス利用を最大化する傾向があり、不必要な行の開／閉シーケンスを回避することによって電力消費を削減し、また転送待ち時間を最小化するように作用する。
【００３２】
行インクリメントカウンタ４２０は電源投入やリセット時に初期化されてもよい。行インクリメントカウンタ４２０に対して初期化された値は任意であってもよい。行インクリメントカウンタ４２０によって行アドレスカウンタ４５０は、所定数のオートリフレッシュ動作が実行された後にインクリメントされる。行アドレスカウンタ４５０は、リフレッシュされる行のターゲット行アドレスを含む。行アドレスカウンタ４５０は、全バンク４１０の同一行を指し示す。
【００３３】
メモリコントローラ１２０は、オートリフレッシュコマンドを揮発性メモリ１１０に発行し、かつリフレッシュされるこのバンクのバンクアドレス４７０をエントリバンクアドレスラッチ２１０にロードすることによって各オートリフレッシュを開始する。オートリフレッシュコマンドを受信すると、揮発性メモリ１１０はリフレッシュトリガ４４０を使用して、各オートリフレッシュ動作を開始する。リフレッシュトリガ４４０は行インクリメントカウンタ４２０をインクリメントさせる。周期的に、行アドレスカウンタ４５０は行インクリメントカウンタ４２０からの実行信号４６０によってインクリメントされる。例えば、行インクリメントカウンタ４２０は２ビットカウンタであってもよく、これは、行インクリメントカウンタ４２０は４個のリフレッシュクロックサイクルごとに反復するのに対して、行アドレスカウンタ４５０は各４番目のオートリフレッシュ動作後にインクリメントされることを意味している。行アドレスカウンタ４５０に記憶されているターゲット行アドレスとエントリバンクアドレスラッチ２１０に記憶されているバンクアドレスは次いで、識別されたバンクの特定の行をリフレッシュするために使用される。
【００３４】
ターゲット行アドレスは所定数のオートリフレッシュ動作に基づいて周期的に変化し、かつメモリコントローラ１２０は行アドレスカウンタ４５０がいつインクリメントされるかを知らないため、メモリコントローラ１２０（図１参照）は、バンク４１０に対して一貫した順番でオートリフレッシュコマンドを発行する、つまり、メモリコントローラ１２０は、各オートリフレッシュサイクル時に順次一度に１つずつ、バンク４１０のバンクアドレスをエントリバンクアドレスラッチ２１０にロードする。結果として、バンク４１０は連続オートリフレッシュサイクルで順次リフレッシュされる。例えば、図４に示されている４個のバンクについて、リフレッシュバンク順番は「３−２−１−０−３−２−１−０」または「０−１−２−３−０−１−２−３」のいずれであってもよい。一方の順番がもう一方よりも好都合なわけではない。従って、いずれか一方が使用可能である。一実施では、シーケンス「０−１−２−３−０−１−２−３−・・・」が使用されてもよい。さらに後述されるように、このシーケンスの選択は、セルフリフレッシュモードへの推移を簡略化する。
【００３５】
図４に示されているような揮発性メモリ１１０の動作はさらに以下のように一例として示される。本例では、行インクリメントカウンタ４２０の初期値はゼロ（０）とされ、行インクリメントカウンタ４２０の実行信号４６０は、４番目のオートリフレッシュ動作ごとに起動される。メモリコントローラ１２０（図１参照）はオートリフレッシュコマンドを揮発性メモリ１１０に発行し、バンク４１０ａのバンクアドレス４７０をエントリバンクアドレスラッチ２１０にロードして最初のオートリフレッシュサイクルを開始する。オートリフレッシュコマンドを受信すると、揮発性メモリ１１０はリフレッシュトリガ４４０にオートリフレッシュ動作を開始することを命令する。オートリフレッシュ動作時に、行インクリメントカウンタ４２０は値１にインクリメントされる。本例では、実行信号４６０は起動されず、行アドレスカウンタ４５０はインクリメントされない。行アドレスカウンタ４５０およびエントリバンクアドレスラッチ２１０に現在記憶されているターゲット行アドレスおよびバンクアドレスは次いで、バンク４１０ａの特定の行をリフレッシュするためにそれぞれ使用される。
【００３６】
続いて、メモリコントローラ１２０（図１参照）は別のオートリフレッシュコマンドを揮発性メモリ１１０に発行し、バンク４１０ｂのバンクアドレス４７０をエントリバンクアドレスラッチ２１０にロードして、第２のオートリフレッシュサイクルを開始する。同様に、第２のオートリフレッシュコマンドを受信すると、揮発性メモリ１１０はリフレッシュトリガ４４０に別のオートリフレッシュ動作を開始するように命令する。このオートリフレッシュ動作時に、行インクリメントカウンタ４２０は値２にインクリメントされる。また、実行信号４６０は起動されず、行アドレスカウンタ４５０はインクリメントされない。行アドレスカウンタ４５０およびエントリバンクアドレスラッチ２１０に現在記憶されているターゲット行アドレスおよびバンクアドレスは次いで、バンク４１０ｂの特定の行をリフレッシュするためにそれぞれ使用される。行アドレスカウンタ４５０はインクリメントされないため、このオートリフレッシュ動作で使用されるターゲット行アドレスは最後のオートリフレッシュ動作で使用されるものと同じである点に注目すべきである。しかしながら、このオートリフレッシュ動作について、エントリバンクアドレスラッチ２１０に記憶されているバンクアドレスは、異なるバンク４１０ｂが識別される点が異なる。結果として、（バンク４１０ａとは反対に）異なるバンク４１０ｂの同一行がリフレッシュされる。
【００３７】
同様に、第３および第４のオートリフレッシュサイクルについて、（行インクリメントカウンタ４２０の実行信号４６０が起動されないため）行アドレスカウンタ４５０はインクリメントされないことが理解されるであろう。結果的に、異なるバンク４１０ｃおよび４１０ｄの同一行は第３および第４のオートリフレッシュサイクル時にリフレッシュされる。
【００３８】
第５のオートリフレッシュサイクルについて、メモリコントローラ１２０（図１参照）によってエントリバンクアドレスラッチ２１０にロードされたバンクアドレス４７０はバンク４１０ａをまた指し示す。さらに、４個のオートリフレッシュ動作は既に実行されているため、行インクリメントカウンタ４２０の実行信号４６０が次に起動される。また実行信号４６０は行アドレスカウンタ４５０をインクリメントすることによって、ターゲット行アドレスを新たな行に移動させてリフレッシュする。この同一の新たな行は次いで、連続オートリフレッシュサイクル時に全４個のバンク４１０についてリフレッシュされる。
【００３９】
揮発性メモリ１１０がオートリフレッシュモードに命令されると、揮発性メモリ１１０は、メモリコントローラ１２０が最後のオートリフレッシュコマンドを揮発性メモリ１１０に発行することを停止したポイントから、エントリバンクアドレスラッチ２１０に現在記憶されているバンクアドレスを内部的に使用してリフレッシュの生成を開始する。上記のようにメモリコントローラ１２０はオートリフレッシュコマンドを順次発行するため、これは可能と思われる。
【００４０】
続いて、セルフリフレッシュモードの各リフレッシュに続いて、エントリバンクアドレスラッチ２１０の出力がインクリメントされる。事実、エントリバンクアドレスラッチ２１０はカウンタになる。ゆえに、セルフリフレッシュモードで、エントリバンクアドレスラッチ２１０が周期的にインクリメントされ、かつバンク４１０を巡回するために使用され、また行インクリメントカウンタ４２０も周期的にインクリメントされ、これはまた、リフレッシュされる行のターゲット行アドレスを含む行アドレスカウンタ４５０をインクリメントすることによって、行はバンク４１０を巡回するようになる。
【００４１】
図４に示されるような揮発性メモリ１１０はさらに、上記シームレスリフレッシュ方法を実行するための終了バンクアドレスラッチ２２０を含んでもよい。セルフリフレッシュモードでリフレッシュされた最後のバンクのバンクアドレスは揮発性メモリ１１０によって終了バンクアドレスラッチ２２０にロードされ、メモリコントローラ１２０で使用可能となる。セルフリフレッシュモードでリフレッシュされた最後のバンクのバンクアドレスは次にメモリコントローラ１２０で使用可能になるため、メモリコントローラ１２０は、セルフリフレッシュモードが停止する場所をピックアップして、オートリフレッシュコマンドを揮発性メモリ１１０のリフレッシュ固有の位置に発行することが可能である。ゆえに、セルフリフレッシュモードを終了する際に揮発性メモリ１１０は行インクリメントカウンタ４２０をリセットする必要はなく、また揮発性メモリ１１０は、セルフリフレッシュモードを終了した後に１個の平均リフレッシュ期間（ｔＲＥＦＩ）内に多数のオートリフレッシュを発行する必要もない。
【００４２】
別の実施形態では、終了行アドレスラッチ２３０（図６参照）は図４に示されているような揮発性メモリ１１０と併用可能である。揮発性メモリ１１０はさらに、行アドレスを行アドレスカウンタ４５０から終了行アドレスラッチ２３０にロードしてもよい。行アドレスは、揮発性メモリ１１０がセルフリフレッシュモードを終了する前にリフレッシュされた最後の行を表す。終了バンクアドレスラッチ２２０および終了行アドレスラッチ２３０の内容はメモリコントローラ１２０（図１参照）で使用可能である。結果として、メモリコントローラ１２０は、最後にリフレッシュされたバンクおよび行に関する情報を将来の動作について利用可能である。
【００４３】
第２のアプローチでは、メモリコントローラは、オートリフレッシュモードのオートリフレッシュ動作のために揮発性メモリに任意の順番でリフレッシュを発行することができ、また揮発性メモリのいくつかのバンクは他のバンクよりも優勢にリフレッシュ可能である。
【００４４】
図５は、第２のアプローチで独立リフレッシュ方法を実践するために使用可能な揮発性メモリ１１０の一実施形態を示している。揮発性メモリ１１０はさらに、エントリバンクアドレスラッチ２１０と、リフレッシュトリガ５３０と、多数のリフレッシュ行カウンタ５１０ａ〜５１０ｄと多数のバンク５２０ａ〜５２０ｄとを含んでもよい。エントリバンクアドレスラッチ２１０は、リフレッシュされる特定のバンクのターゲットバンクアドレスを記憶するために使用される。バンク５２０ａ〜５２０ｄは各々対応するリフレッシュ行カウンタ５１０ａ〜５１０ｄと関連している。リフレッシュ行カウンタ５１０ａ〜５１０ｄの初期値は電源投入やリセット時に初期化される。例えば、リフレッシュ行カウンタ５１０ａはバンク５２０ａと関連している。リフレッシュ行カウンタ５１０ａ〜５１０ｄは、それぞれのバンク５２０ａ〜５２０ｄでリフレッシュされる行のターゲット行アドレスを維持するために使用される。リフレッシュ行カウンタ５１０ａ〜５１０ｄ内に記憶されているターゲット行アドレスは相互に独立している。リフレッシュトリガ５３０は、さらに後述されるように、セルフリフレッシュモード時にエントリバンクアドレスラッチ２１０を制御するために使用される。リフレッシュトリガ５３０は例えば、クロックや他のタイミング機構であってもよい。
【００４５】
（バンク５２０ｂ〜５２０ｄなどの）他のバンクがアクセス可能なままである時に、メモリコントローラ１２０（図１参照）は揮発性メモリ１１０に、オートリフレッシュモードになり、特定のバンク、例えば揮発性メモリ１１０内のバンク５２０ａをオートリフレッシュするように命令可能である。オートリフレッシュサイクルを開始するために、メモリコントローラ１２０（図１参照）はオートリフレッシュコマンドを揮発性メモリ１１０に発行し、バンクアドレス５４０をエントリバンクアドレスラッチ２１０にロードする。バンクアドレス５４０は、リフレッシュ目的でバンク５２０ａ〜５２０ｄのうちの１つを識別するために使用される。バンクアドレス５４０は、リフレッシュされるバンクと関連した対応するリフレッシュ行カウンタを識別するためにも使用される。ゆえに、エントリバンクアドレスラッチ２１０に記憶されているバンクアドレスと、対応するリフレッシュ行カウンタに記憶されているターゲット行アドレスとによって、特定のバンクの特定の行がリフレッシュのために識別可能である。リフレッシュ動作が実行された後、リフレッシュされたバンクと関連したリフレッシュ行カウンタは制御論理（図示せず）によってインクリメントされる。メモリコントローラ１２０はリフレッシュされる特定のバンクを知っているため、他のバンクへのアクセスは中断なく継続可能である。これはメモリデータバス利用を最大化し、不必要な行の開／閉シーケンスを回避することによって電力消費を削減し、また転送待ち時間を最小化するように作用する。
【００４６】
加えて、バンク５２０ａ〜５２０ｄは自身のリフレッシュ行カウンタ５１０ａ〜５１０ｄを有しているため、メモリコントローラ１２０は、独立リフレッシュを特定のバンクに割り当てるという柔軟性を有する。言い換えると、バンク５２０ａ〜５２０ｄは相互に関係なくリフレッシュ可能である。例えば、一例では、メモリコントローラ１２０は（複数の）オートリフレッシュコマンドを揮発性メモリ１１０に発行してバンク５２０ａをオートリフレッシュしてもよい。そして、バンク５２０ａと関連したリフレッシュ行カウンタ５１０ａに記憶されているターゲット行アドレスを発端に、バンク５２０ａの１つ以上の行がリフレッシュされる。別の例では、メモリコントローラ１２０は（複数の）オートリフレッシュコマンドを揮発性メモリ１１０に発行して異なるバンクであるバンク５２０ｃをオートリフレッシュしてもよい。バンク５２０ｃと関連したリフレッシュ行カウンタ５１０ｃに記憶されているターゲット行アドレスを発端に、バンク５２０ｃの１つ以上の行がリフレッシュされる。リフレッシュ行カウンタ５１０ａおよび５１０ｃに記憶されているターゲット行アドレスはそれぞれ同一でも異なってもよい点に注目すべきである。
【００４７】
各バンクが独立してリフレッシュされるようにすることによって、メモリコントローラ１２０は所与のバンクがアイドルである期間を利用して、（複数の）オートリフレッシュコマンドを揮発性メモリ１１０に発行できるため、（複数の）拡張（ａｄｖａｎｃｅｄ）リフレッシュが、期限前にアイドルバンクに対して実行可能である。結果的に、バンク５２０ａ〜５２０ｄがアクティブである場合には（複数の）スケジュール済みリフレッシュはそれ程頻繁に実行されないため、バンク５２０ａ〜５２０ｄの使用可能性は増大する。一例では、バンク５２０ａが延長期間中アイドルであれば、（複数の）追加拡張リフレッシュがバンク５２０ａに対して実行可能であり、続いて、バンク５２０ａがアクティブである時、バンク５２０ａの（複数の）スケジュール済みリフレッシュはスキップ可能である。別の例では、バンク５２０ｂがより短期間アイドルであれば、メモリコントローラ１２０は、（複数の）より少数の拡張リフレッシュを開始することを選択してもよい。
【００４８】
予定より早くリフレッシュする能力を有することによってバンク５２０ａ〜５２０ｄは、高データトラヒック期間中により効率的に動作可能である。例えば、所与のバンクが予定より早いｎ個のリフレッシュである場合、メモリコントローラ１２０はｎ個の規則的にスケジューリングされたリフレッシュをこのバンクに発行するというオーバーヘッドを回避することができるが、その代わりメモリアクセス動作の実行を継続することができる。これは、メモリデータバス利用を最大化し、不必要な行の開／閉シーケンスを回避することによって電力消費を削減し、また転送待ち時間を最小化するように作用する。
【００４９】
さらに、メモリコントローラ１２０は揮発性メモリ１１０にセルフリフレッシュモードになるように命令してもよい。セルフリフレッシュモードになると、揮発性メモリ１１０は、エントリバンクアドレスラッチ２１０に記憶されている最も新しいバンクアドレスから開始する。最も新しいバンクアドレスは一般的に、最新のオートリフレッシュ動作で使用されるバンクアドレスである。エントリバンクアドレスラッチ２１０に現在記憶されているバンクアドレスを使用することによって、揮発性メモリ１１０は、メモリコントローラ１２０が最後のオートリフレッシュ動作後に停止する場所をピックアップすることができる。
【００５０】
各セルフリフレッシュ動作時に、リフレッシュされるターゲットバンクは、エントリバンクアドレスラッチ２１０に現在記憶されているバンクアドレスによって識別される。リフレッシュされるターゲットバンクの特定の行はさらに、ターゲットバンクと関連したリフレッシュ行カウンタに現在記憶されているターゲット行アドレスによって識別される。ゆえに、リフレッシュ動作はターゲットバンクの特定の行に対して実行可能である。
【００５１】
さらに、各セルフリフレッシュ動作時に、エントリバンクアドレスラッチ２１０はリフレッシュトリガ５３０によってインクリメントされる。エントリバンクアドレスラッチ２１０をインクリメントすることによって、バンクアドレスは、リフレッシュされる次のターゲットバンクを識別するために更新される。加えて、リフレッシュされたバンクと関連したリフレッシュ行カウンタもまた制御論理（図示せず）によってインクリメントされて、このバンクの更新済みターゲット行アドレスを提供し、更新済みターゲット行アドレスは、次回バンクがリフレッシュされるときに使用される。
【００５２】
次のセルフリフレッシュ動作は次いで、エントリバンクアドレスラッチ２１０の更新済みバンクアドレスと、更新済みバンクアドレスによって識別されたバンクと関連した対応するリフレッシュ行カウンタとを使用して実行される。
【００５３】
結果として、揮発性メモリ１１０がセルフリフレッシュモードになると、バンク５２０ａ〜５２０ｄはこの対応するリフレッシュ行カウンタ５１０ａ〜５１０ｄを使用して巡回される。
【００５４】
代替的に、揮発性メモリ１１０がセルフリフレッシュモードになると、全バンク５２０ａ〜５２０ｄは、対応するリフレッシュ行カウンタ５１０ａ〜５１０ｄによってそれぞれ記憶されているターゲット行アドレスを使用して同時にリフレッシュ可能である。全バンク５２０ａ〜５２０ｄの同時リフレッシュと、リフレッシュ行カウンタ５１０ａ〜５１０ｄの関連動作は制御論理（図示せず）によって達成可能である。ここに提供されている開示および教示に基づいて、当業者は、本開示に開示されている概念に従って同時リフレッシュを実行する方法を理解するであろう。
【００５５】
図５に示されているような揮発性メモリ１１０はさらに、上記シームレスリフレッシュ方法を実行するための終了バンクアドレスラッチ２２０を含んでもよい。セルフリフレッシュモードになると、セルフリフレッシュサイクルが開始すべきターゲットバンクのバンクアドレスはエントリバンクアドレスラッチ２１０にロードされる。セルフリフレッシュモードを終了すると、セルフリフレッシュモードでリフレッシュされた最後のバンクのバンクアドレスは終了バンクアドレスラッチ２２０に揮発性メモリ１１０によってロードされ、メモリコントローラ１２０で使用可能となる。エントリおよび終了バンクアドレスラッチ２１０および２２０を有することによって、メモリコントローラ１２０はもはや、セルフリフレッシュモードになる前に追加リフレッシュを実行するように揮発性メモリ１１０に命令する必要はない。シームレスリフレッシュ方法を使用してメモリコントローラ１２０および揮発性メモリ１１０を同期化することなく、セルフリフレッシュモードになる場合およびこれを終了する場合にバンク５２０の各々について拡張リフレッシュが必要とされることがあるため、揮発性メモリ１１０がセルフリフレッシュモードになる前に追加拡張リフレッシュがバンクごとに必要となるであろう。
【００５６】
別の実施形態では、終了行アドレスラッチ２３０（図６）は図５に示されているような揮発性メモリ１１０と併用可能である。揮発性メモリ１１０はさらに、行アドレスをリフレッシュ行カウンタ５１０のうちの１つから終了行アドレスラッチ２３０にロードしてもよい。行アドレスは、揮発性メモリ１１０がセルフリフレッシュモードになる前にリフレッシュされた最後の行を表す。終了バンクアドレスラッチ２２０および終了行アドレスラッチ２３０の内容はメモリコントローラ１２０（図１参照）で使用可能である。結果として、メモリコントローラ１２０は、最後にリフレッシュされたバンクおよび行に関する情報を将来の動作に利用してもよい。
【００５７】
ここに開示されている実施形態と関連して説明された方法やアルゴリズムは、制御論理、プログラミング指令または他の命令の形態で、ハードウェア、プロセッサによって実行可能なソフトウェアモジュール、あるいは両者の組み合わせで直接具現化されてもよい。ソフトウェアモジュールはＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、あるいは当業界で既知の任意の形態の記憶媒体に存在してもよい。プロセッサが記憶媒体から情報を読み取ったり、これに情報を書き込んだりすることができるように、記憶媒体はプロセッサに結合されてもよい。代替例では、記憶媒体はプロセッサと一体的であってもよい。
【００５８】
開示された実施形態についての上記説明は、当業者が本発明を為したり、これを使用できるようにするために提供される。これらの実施形態の種々の修正は当業者には容易に明らかであろうし、ここに定義されている一般原理は本発明の範囲の主旨から逸脱することなく他の実施形態にも適用可能である。従って、本発明はここに示されている実施形態に制限されることはないが、請求項に即した全範囲に従うべきであり、ここで、特に言及されなければ単数形の要素への言及は「１個かつ唯一」であることを意味するわけではなく、「１つ以上」を意味する。当業者には既知であるか、後に知ることになる、本開示に渡って説明されている種々の実施形態の要素に対する全ての構造的かつ機能的等化物は明らかに参照してここに組み込まれており、請求項に包含されることを意図している。さらに、このような開示が請求項に明確に引用されているか否かに関係なく、ここに開示されているものは一般化されることはない。要素が「〜のための手段」というフレーズを使用して明確に列挙されたり、方法クレームの場合には要素が「〜のためのステップ」というフレーズを使用して列挙されたりしない場合には、請求項の要素は米国特許法第１１２項、第６段落の規定に基づいて解釈されるべきではない。
【図面の簡単な説明】
【００５９】
【図１】本開示に従ったシームレスリフレッシュ方法を実践するために使用可能な配列を示す簡略ブロック図である。
【図２】本開示に従ったシームレスリフレッシュ方法を実践するために使用可能な揮発性メモリの一実施形態を示す簡略ブロック図である。
【図３】本開示に従ったリフレッシュ方法の動作時の種々の信号を示す簡略タイミング図である。
【図４】本開示に従ったシームレスリフレッシュ方法を実践するために使用可能な揮発性メモリの別の実施形態を示す簡略ブロック図である。
【図５】本開示に従ったシームレスリフレッシュ方法を実践するために使用可能な揮発性メモリの別の実施形態を示す簡略ブロック図である。
【図６】本開示に従ったシームレスリフレッシュ方法を実践するために使用可能な揮発性メモリの別の実施形態を示す簡略ブロック図である。
【図１】
2008500680.tif 000003
【図２】
2008500680.tif 000004
【図３】
2008500680.tif 000005
【図４】
2008500680.tif 000006
【図５】
2008500680.tif 000007
【図６】
2008500680.tif 000008
【国際調査報告】
2008500680.tif 000009
2008500680.tif 000010