(57)【要約】ＤＲＡＭの未使用部分のリフレッシングを動作不能にすることによって、移動体通信装置の電力消費量が低減される。ＤＲＡＭは、複数の個別にリフレッシュ可能なメモリリフレッシュ範囲（ＭＲＲ）を含む。装置のオペレーティングシステム内のメモリリフレッシュマネージャ（ＭＲＭ）は、後続のスリープモード動作の間、使用されないことになる仮想メモリの範囲を識別する（３０５）。ＭＲＭ（３０７）は、ＭＲＲ全体のコンテンツがスリープモードの間、維持される必要がないように、（使用されないことになる仮想メモリに関連する）物理メモリページをいくつかのＭＲＲ内に凝集するために、仮想メモリ空間を物理メモリ空間にリマップする（３０８）。スリープモードの間、維持される必要がある、任意のリマップされた物理ページ内の情報は、リマッピングの後、前と同じ仮想アドレスで常駐するように、当該情報が複写される。その他のソフトウェアは仮想メモリ空間内で動作し、リマッピングによって影響を受けない（３０９）。いくつかのＭＲＲのリフレッシングは、次いで、スリープモードのために動作不能にされ（３１０）、それにより、電力消費量を低減する。
2009525555.tif 000002
【特許請求の範囲】
【請求項１】
下記を備える方法：
（ａ）移動体通信装置のメモリシステム内に情報を記憶することであって、前記メモリシステムは複数のＭＲＲを備え、特定のＭＲＲのリフレッシングは前記ＭＲＲのその他のリフレッシングから独立して動作不能にされ得、前記メモリシステムは複数の物理ＭＰとして組織されること；
（ｂ）複数の仮想アドレス範囲の各々が前記複数の物理ＭＰの中の対応する１つにマップされるように、仮想アドレスから物理アドレスへの変換を維持すること；
（ｃ）複数の前記ＭＰのうちのいずれが、スリープモードで維持される必要のある情報を記憶するか、および、前記複数のＭＰのうちのいずれが、前記スリープモードの場合に維持される必要のある情報を記憶しないかについての情報を維持することであって、前記複数のＭＰのうちの第１のものは維持される必要がない情報を記憶し、前記複数のＭＰのうちの第２のものは維持される必要がある情報を記憶し、前記複数のＭＰのうちの第３のものは維持される必要がある情報を記憶せず、前記第２および第３のものは前記メモリシステム内の隣接するページであり、前記第１のＭＰは前記複数のＭＲＲのうちの第１のものの一部であり、前記第２および第３のＭＰは前記複数のＭＲＲのうちの第２のものの一部であること；
（ｄ）前記第２のＭＰから前記第１のＭＰに情報を複写すること；
（ｅ）以前に前記第２のＭＰにマップされた前記仮想アドレス範囲が、今度は、前記第１のＭＰにマップされるように、かつ以前に前記第１のＭＰにマップされた前記仮想アドレス範囲が、今度は、前記第２のＭＰにマップされるように、仮想アドレスから物理アドレスへの前記変換を変更すること；および、
（ｆ）前記第１のＭＲＲは前記スリープモードでリフレッシュされるように、しかし前記第２のＭＲＲは前記スリープモードでリフレッシュされないように、前記メモリシステムを構成すること。
【請求項２】
前記移動体通信システムが移動通信電話であり、前記ＭＲＲがＤＲＡＭの領域である、請求項１に記載の方法。
【請求項３】
請求項２記載の方法、ここにおいて、
ステップ（ｃ）が、さらに下記を備える：
ヒープマネージャからヒープメモリの一部の表示を受信すること、ここにおいて、前記ヒープマネージャはヒープを管理し、前記ヒープの前記一部は、前記スリープモードの間、使用されないことになる部分である。
【請求項４】
請求項２記載の方法、ここにおいて、
ステップ（ｃ）が、さらに下記を備える：
タクスマネージャからスタックメモリの一部の表示を受信すること、ここにおいて、前記スタックメモリの前記一部は、前記スリープモードの間、如何なるスタックの一部でもないことになる部分である。
【請求項５】
請求項２に記載の方法、ここにおいて、
前記移動体通信装置上のアプリケーション層のプログラムの実行が、ステップ（ｅ）における仮想アドレスから物理アドレスへの前記変換の前記変更をする間、動作不能にされる。
【請求項６】
請求項２記載の方法、ここにおいて、
前記メモリシステムが、メモリコントローラと、ＤＲＡＭの容量とを備え、（ｆ）における前記構成することが前記メモリコントローラを構成することを伴う。
【請求項７】
前記複数の物理ＭＰのいくつかがＤＲＡＭであり、前記複数の物理ＭＰのその他が他のタイプのメモリである、請求項２に記載の方法。
【請求項８】
請求項２記載の方法、ここにおいて、
前記スリープモードで維持される必要がある情報が、前記スリープモードの間はアクセスされず、むしろスリープモード動作の後にアクセスされ得る情報を含む。
【請求項９】
請求項２に記載の方法、ここにおいて、
前記複数のＭＰのいずれが、ステップ（ｃ）においてスリープモードで維持される必要がある情報を記憶するかについての情報が、１）仮想メモリアドレス範囲のリストであって、前記リスト内の各仮想メモリアドレスが前記スリープモードで維持される必要がない仮想メモリアドレスの範囲である仮想メモリアドレス範囲のリストと、２）仮想メモリアドレス範囲から物理ＭＰへの変換情報と、３）各ＭＲＲに対応する前記複数の物理ＭＰに関する情報とを含む。
【請求項１０】
下記を備える方法：
（ａ）移動体通信装置内のＤＲＡＭ内に情報を記憶することであって、前記ＤＲＡＭは複数のＭＲＲを備え、各ＭＲＲのリフレッシングは互いのＭＲＲのリフレッシングから独立して動作可能および動作不能にされ得ること；
（ｂ）仮想アドレス空間から物理アドレス空間への変換を維持するために、前記移動体通信装置上のＭＭＵを使用することであって、前記変換が複数の物理ＭＰの各々を複数の仮想ＭＰの対応する１つと関連づけること；
（ｃ）前記移動体通信装置の低電力の動作モードの間、使用されないことになる特定の仮想ＭＰを識別すること；
（ｄ）ステップ（ｃ）で識別された前記特定の仮想ＭＰにマップされた前記複数の物理ＭＰのうちの少なくともいくつかが物理メモリ空間内で互いに隣接するように凝集されるように、仮想アドレス空間から物理アドレス空間への前記変換を再マップするために前記ＭＭＵを再構成することであって、前記凝集された物理ＭＰが前記複数のＭＲＲのうちの第１のＭＲＲ内のすべての前記物理ＭＰであること；および、
（ｅ）前記第１のＭＲＲがリフレッシュされないように、しかし前記複数のＭＲＲの中のその他のものがリフレッシュされるように、前記低電力のモードで前記移動体通信装置を動作すること。
【請求項１１】
請求項１０記載の方法、ここにおいて、
ステップ（ｃ）は仮想メモリ空間の範囲のリストを受信することを伴い、ここで、前記リスト内の各範囲は、前記低電力のモードの間、使用されないことになる仮想メモリ空間の範囲であり、
さらにここにおいて、ステップ（ｃ）は、どの仮想ＭＰが前記リスト内の範囲の各々に対応するかを決定することをさらに伴う。
【請求項１２】
請求項１０に記載の方法、ここにおいて、
ステップ（ｃ）は仮想ＭＰのリストを受信することを伴い、ここで、前記リスト内の各仮想ＭＰは、低電力のモードの間、使用されないことになる仮想ＭＰである。
【請求項１３】
請求項１０記載の方法、ここにおいて、
前記低電力のモードの間、使用されることになる物理ＭＰが前記第１のＭＲＲ内に存在しないように、ステップ（ｃ）で識別された前記特定の仮想ＭＰにマップされた前記少なくともいくつかの物理ＭＰが前記複数のＭＲＲのうちの前記第１のＭＲＲ内に凝縮されるように、かつ前記低電力のモードの間、使用されることになる物理ＭＰが前記第２のＭＲＲ内に存在しないように、ステップ（ｃ）で識別された前記特定の仮想ＭＰにマップされた前記複数の物理ＭＰの中のその他のものが前記複数のＭＲＲのうちの第２のＭＲＲ内に凝集されるように、仮想アドレス空間から物理アドレス空間への前記変換を再マップすることをステップ（ｄ）は伴い、ステップ（ｅ）の前記低電力のモードでの前記動作の間、前記第１のＭＲＲも前記第２のＭＲＲもリフレッシュされない。
【請求項１４】
請求項１０に記載の方法、ここにおいて、
前記移動体通信装置がヒープを有する移動体通信電話であり、前記ヒープの第１の部分は、前記移動体通信装置の前記低電力の動作モードの間、使用されないことになる仮想アドレス空間の一部としてステップ（ｃ）において識別され、前記ヒープの第２の部分は、ステップ（ｅ）の前記低電力の動作モードの間、使用される仮想アドレス空間の一部であり、前記第１の部分および前記第２の部分の両方は、前記ＭＭＵによってＤＲＡＭ内の物理ＭＰにマップされる。
【請求項１５】
請求項１０記載の方法、ここにおいて、
前記移動体通信装置がスタックメモリ空間を有する移動体通信電話であり、前記スタックメモリ空間の第１の部分は、前記移動体通信装置の前記低電力の動作モードの間、使用されないことになる仮想アドレス空間の一部としてステップ（ｃ）において識別され、前記スタックメモリ空間の第２の部分が、ステップ（ｅ）の前記低電力の動作モードの間、使用される仮想アドレス空間の一部であり、前記第１の部分および前記第２の部分の両方は、前記ＭＭＵによってＤＲＡＭ内の物理ＭＰにマップされる。
【請求項１６】
下記を備える移動体通信装置：
ＤＲＡＭの容量、ここで、前記ＤＲＡＭは複数のＭＲＲを備え、各ＭＲＲのリフレッシングが互いのＭＲＲのリフレッシングから独立して動作可能および動作不能にされ得る；
仮想アドレス空間から物理的アドレス空間への変換を維持するＭＭＵ、ここで、前記変換は複数の物理ＭＰの各々を複数の仮想ＭＰのうちの対応する１つに関連づける；
プロセッサ実行可能命令のセットを実行するプロセッサであって、前記プロセッサ実行可能命令のセットが、下記ステップを実行する：
（ａ）前記移動体通信装置の低電力の動作モードの間、使用されないことになる特定の仮想ＭＰを識別するステップ；
（ｂ）ステップ（ａ）で識別された前記特定の仮想ＭＰにマップされた前記複数の物理ＭＰのうちの少なくともいくつかが、物理メモリ空間内に互いに隣接するよう凝集されるように、仮想アドレス空間から物理アドレス空間への前記変換を再マップするために前記ＭＭＵを再構成するステップ、ここで、前記凝集された物理ＭＰが前記複数のＭＲＲのうちの第１のＭＲＲ内の全ての前記複数の物理ＭＰである；
（ｃ）前記第１のＭＲＲはリフレッシュされないように、しかし前記複数のＭＲＲの中のその他のものがリフレッシュされるように、前記低電力のモードで前記移動体通信装置を動作するステップ。
【請求項１７】
請求項１６記載の移動体通信装置、ここにおいて、
ステップ（ｂ）が、ステップ（ｃ）の前記動作において使用される仮想ＭＰを再マップすることを伴い、ここで、ステップ（ｂ）における前記再マッピングの前の前記仮想ＭＰが第１の物理ＭＰにマップされ、ステップ（ｂ）における前記再マッピングの後の前記仮想ＭＰが第２の物理ＭＰにマップされ、前記プロセッサ実行可能命令のセットはさらに下記ステップを実行する：
（ｄ）前記第１の物理ＭＰ内に記憶された情報を前記第２の物理ＭＰに複写するステップ、ここで、前記複写することは、ステップ（ａ）の前およびステップ（ｃ）の後に実行される。
【請求項１８】
前記第２の物理ＭＰが、ステップ（ｃ）の前記低電力の動作モードの間、リフレッシュされる、請求項１７に記載の移動体通信装置。
【請求項１９】
下記を備える装置：
ＤＲＡＭの容量、ここで、前記ＤＲＡＭは複数のＭＲＲを備え、各ＭＲＲのリフレッシングが独立して動作可能および動作不能にされ得る；
装置が相対的に非アクティブである後続する期間の間、使用されないことになる仮想メモリ空間の部分が物理メモリ空間にマップされ、複数のＭＲＲのセットにマップされたかかるすべての前記仮想アドレス空間が、前記後続する期間の間、使用されないことになる前記仮想アドレス空間であるように、仮想アドレス空間から物理アドレス空間への変換を再マップするための手段、ここで、前記セット内の前記複数のＭＲＲのすべてのアドレス空間の和が実質的に最大化されるように、前記セットの前記複数のＭＲＲが前記手段によって選択される。
【請求項２０】
請求項１９記載の装置、ここにおいて、
前記装置が移動体通信電話であり、前記手段が、プロセッサと、ＭＭＵと、プロセッサ実行可能命令のセットとを備え、前記手段が、さらに下記に関する：
前記セットの前記複数のＭＲＲの各々のリフレッシングが動作不能にされるように、かつその他のＭＲＲのリフレッシングが動作可能にされるように、前記後続する期間内に前記装置を動作する。
【請求項２１】
プロセッサ可読媒体上に記憶されたプロセッサ実行可能命令のセットであって、
（ａ）装置内のＤＲＡＭの容量内に情報を記憶するステップであって、前記ＤＲＡＭが複数のＭＲＲを備え、各ＭＲＲのリフレッシングが互いのＭＲＲのリフレッシングから独立して動作可能および動作不能にされ得るステップ；
（ｂ）仮想アドレス空間から物理的アドレス空間への変換を維持するＭＭＵを使用するステップ、ここで、前記変換は複数の物理ＭＰの各々を複数の仮想ＭＰの対応する１つと関連づける；
（ｃ）前記装置の低電力の動作モードの間、使用されないことになる特定の仮想ＭＰを識別するステップ；
（ｄ）ステップ（ｃ）で識別された前記特定の仮想ＭＰにマップされた前記複数の物理ＭＰの少なくともいくつかが物理メモリ空間内で互いに隣接するよう凝集されるように、仮想アドレス空間から物理アドレス空間への前記変換を再マップするためにＭＭＵを再構成するステップ、ここで、前記凝集された物理ＭＰが前記複数のＭＲＲのうちの１つの中のすべての前記複数の物理ＭＰである；
（ｅ）前記１つのＭＲＲがリフレッシュされないように、しかし前記複数のＭＲＲの中のその他のものがリフレッシュされるように、前記装置を前記低電力のモードで動作するステップと
を実行するためであるプロセッサ実行可能命令のセット。
【請求項２２】
請求項２１記載のプロセッサ実行可能命令のセット、ここにおいて、
ステップ（ｄ）が、ステップ（ｅ）の前記動作において使用される仮想ＭＰを再マッピングすることを伴い、ステップ（ｄ）における前記再マッピングの前の前記仮想ＭＰが第１の物理ＭＰにマップされ、ステップ（ｄ）における前記再マッピングの後の前記仮想ＭＰが第２の物理ＭＰにマップされ、前記プロセッサ実行可能命令のセットは、さらに下記ステップを実行する：
（ｆ）前記第１の物理ＭＰ内に記憶された情報を、前記第２の物理ＭＰに複写するステップ、ここで、前記複写することはステップ（ｃ）の後およびステップ（ｄ）の前に実行される。
【請求項２３】
前記装置が移動体通信装置である、請求項２１に記載のプロセッサ実行可能命令のセット。
【請求項２４】
ステップ（ｂ）から（ｅ）までを実行する前記プロセッサ実行可能命令が、前記装置上で実行可能なオペレーティングシステムのプロセッサ実行可能命令である、請求項２１に記載のプロセッサ実行可能命令のセット。
【発明の詳細な説明】
【技術分野】
【０００１】
開示された実施形態は、移動体通信装置内の電力を温存するために、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）の部分のリフレッシングを動作不能にすることに関する。
【背景技術】
【０００２】
（移動通信電話などの）移動体通信装置が電池の再充電動作の間にどれだけ長く動作することができるかは、ユーザにとって重要である。したがって、移動体通信装置の電気消費量を低減することが所望される。問題を複雑にしていることとして、移動通信電話は、今日、単に移動体電話機能よりも多くの機能を有することが可能である。移動通信電話は、実際に、それに基づいてオペレーティングシステムを実行する汎用ハードウェアプラットフォームに類するものになってきている。移動通信電話プラットフォームの様々な機能の各々は、一般に、それぞれのアプリケーション層のプログラムを有する。これらのアプリケーション層のプログラムのいくつかを実行することは、大量のメモリと処理リソースとを使用することを必要とすることがある。例えば、移動通信電話は、その移動通信電話機能に加えて、デジタルカメラ機能を有する場合がある。移動通信電話がデジタルカメラとして使用されている場合、大量のメモリは、メガピクセルのデジタル画像を捕捉、処理、および記憶するために使用され得る。したがって、現在、大量のメモリが最新の移動通信電話上で提供される。大量のメモリが提供されるため、メモリは、多くの場合、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）である。ＤＲＡＭはリフレッシングを要求し、このリフレッシングは電力を消費する。電池の再充電の間、移動体通信装置が長い期間動作することができるように、ＤＲＡＭリフレッシュを実行するのに消費される電力量を低減する解決法が所望される。
【発明の開示】
【発明の概要】
【０００３】
移動通信装置（例えば、移動通信電話）の電力消費量は、移動体通信装置のＤＲＡＭの未使用部分のリフレッシングを動作不能にすることによって低減される。１つの例示的な移動体通信装置では、ＤＲＡＭは、複数のメモリリフレッシュ範囲（ＭＲＲ）を含む。各ＭＲＲのリフレッシングは、互いのＭＲＲのリフレッシングから独立して動作可能および動作不能にされ得る。
【０００４】
新規性のあるメモリリフレッシュマネージャ（ＭＲＭ）は、移動体通信装置のオペレーティングシステム内に提供される。ＭＲＭは、後続のスリープモード動作の間、維持される必要がない仮想メモリ空間の範囲を識別する。一実施形態では、オペレーティングシステムのヒープマネージャは、スリープモード動作の間、ヒープによって使用されないであろうヒープ仮想メモリの範囲のリストを提供する。このリストはＭＲＭに提供される。もう１つの例では、オペレーティングシステムのタスクマネージャは、スリープモード動作の間、スタックによって使用されないであろうスタック仮想メモリの範囲のリストを提供する。このリストもＭＲＭに提供される。ＭＲＭは、リスト内の情報を使用して、データを物理メモリ空間内に再配置し、（スリープモードの間、維持される必要がないであろう仮想メモリの範囲に関連する）物理メモリページをＭＲＲの一のセット内に凝集する（conglomerate）ために仮想メモリ空間を物理メモリ空間に再マップする（remap）。再マップ動作は、該セットの中の複数のＭＲＲのうちの如何なるものの如何なる部分もスリープモード内で維持されなくてはならない部分ではないというものである。一実施形態では、ＭＲＭは、該セット内の複数のＭＲＲのすべての合計ＭＲＲメモリ空間を最大化するために、該セット内にあることになるＭＲＲを選択する。このＭＲＲメモリ空間を最大化することによって、後続のスリープモード動作の間、リフレッシュされないＤＲＡＭの容量は最大化される。リフレッシュされないＤＲＡＭの容量を最大化することによって、電力節約の容量も最大化される。
【０００５】
スリープモード動作の間、リフレッシュされる必要がある任意の再マップされた物理メモリページ内の情報は、再マップ動作の後に以前と同じ仮想アドレスに常駐するように、新しい物理メモリページに複写される。この複写することは、上で説明された再マップ動作の前に、ＭＲＭによって行われる。移動体通信装置上で動作する（ＭＲＭ以外の）その他のソフトウェアは、仮想メモリ空間内で動作するため、このその他のソフトウェアの動作は再マップ動作による影響を受けない。
【０００６】
複写と再マップ動作とが一旦実行されると、次いで、該ＭＲＭは、該セットの中の複数のＭＲＲのリフレッシングを動作不能にするために、移動体通信装置のメモリシステムを再構成する。一実施形態では、ＭＲＭは、適切な制御情報をメモリシステムのメモリコントローラに書き込むことによってリフレッシングを動作不能にする。メモリコントローラは、制御情報に従って、ＤＲＡＭ内の各ＭＲＲのリフレッシングを制御する。移動体通信装置は、次いで、スリープモード動作を開始する。スリープモード動作の間、該セットの中のＭＲＲのいずれもリフレッシュされず、それにより、スリープモードの間、ＭＲＲの該セットがリフレッシュされた場合に消費されることになるはずの電力を温存する。スリープモードの間維持されなければならない、または使用されることになる情報を含む（該セットの中のＭＲＲ以外の）その他のＭＲＲは、スリープモードの間に実行されるソフトウェアが適切に機能するようにリフレッシュされる。
【０００７】
移動体通信装置が低電力のスリープモード動作を中止して、通常の操作モード動作を再開する場合、ＭＲＭはすべてのＭＲＲのリフレッシングを可能にするためにメモリシステムを再構成する。ＤＲＡＭのすべてのＭＲＲがリフレッシュされて、動作可能になると、次いで、通常の操作モード動作が再開する。
【０００８】
追加の実施形態および詳細は、下の詳細な説明で説明される。この概要は、本発明を定義することを意味しない。本発明は、特許請求の範囲によって定義される。
【詳細な説明】
【０００９】
図１は、１つの新規性のある実施形態による、移動体通信装置１の機能コンポーネントを図解するブロック図である。移動体通信装置１は、ソフトウェアとハードウェアとを含む。ソフトウェアは、スリープ・マネージャ（ＳＭ）２と、メモリリフレッシュマネージャ（ＭＲＭ）３と、ヒープマネージャ（ＨＭ）４と、タスクマネージャ（ＴＭ）５とを含むオペレーティングシステム１３を含む。ハードウェアは、中央処理装置（ＣＰＵ）と、メモリ管理装置（ＭＭＵ）６と、メモリシステム７とを含む。メモリシステム７は、メモリコントローラ（ＭＣ）８と、大量のダイナミックランダムアクセスメモリ（ＤＲＡＭ）９とを含む。ＣＰＵと、ＭＭＵと、ＭＣとは、単一の集積回路上に集積されるが、ＤＲＡＭは、この種のＤＲＡＭ集積回路の大量生産を利用するために、別個のＤＲＡＭ集積回路として実現される。
【００１０】
図２は、ヒープマネージャ４によって管理されるメモリ空間のヒープ１０を図解する図である。図内の垂直次元は、ヒープのために予約されたメモリアドレス空間全体を表し、移動体通信装置１のＣＰＵに対して利用可能にされる。メモリ空間は、例えば、ＤＲＡＭ９、静的ランダムアクセスメモリ（static random access memory）（ＳＲＡＭ）、不揮発性記憶装置、およびその他のタイプのデータ記憶装置を含めて、様々なタイプの記憶装置内の空間を表すことが可能である。図２に示される例では、ヒープ１０は、６個の区域に区分化される。該区域はＡ１、Ａ２、Ｆ１、Ａ３、Ｆ２、およびＡ４と示される。この記述法の「Ａ」は、該区域がヒープマネージャ４によってソフトウェア実体（例えば、アプリケーションプログラム、プロシージャまたはタスク）に「割り当てられて」いることを表示する。この表記法の「Ｆ」は、メモリの該区域が「空き」であることを表示する。空きは、メモリのその区域がどのソフトウェアによっても使用されていないことを意味する。ヒープマネージャ４は、メモリ空間の区域の各々、および各区域が「割り当てられて」いるかまたは「空き」であるかの認識を維持する。アプリケーションプログラムが開始される場合、アプリケーションプログラムは、通常、メモリ空間の容量をヒープマネージャ４に要求する。ヒープマネージャ４は、メモリの１つまたは複数の空きの区域をアプリケーションプログラムに割り当てることによって応答することになる。アプリケーションプログラムが自らに割り当てられたメモリの区域を使用する必要がもはやない場合、アプリケーションプログラムは、通常、メモリを空きにするようヒープマネージャ４に要求する。ヒープマネージャ４は、応答して、メモリの１つまたは複数の区域は「空き」であり、その他のソフトウェア実体へのさらなる割当てのために利用可能であると見なす。図によって表示されるように、ヒープ１０のメモリの様々な区域のサイズは、通常、異なる。
【００１１】
移動体通信装置１が使用中である場合、複数の異なるアプリケーションプログラムは同時に実行され得る。これらのアプリケーションプログラムは、共に大量のメモリの使用を要求する場合がある。したがって、多くのヒープが割り当てられることが可能である。ＤＲＡＭがヒープメモリ空間を提供するために使用される場合、ＤＲＡＭメモリセル内に記憶された情報が失われないように、ＤＲＡＭメモリセルは、周期的にリフレッシュされなければならない。このリフレッシングは、ＤＲＡＭメモリセル内の充電容量を必要とし、したがって、電流フローと電力消費量とを必要とする。移動体通信装置１が使用中の場合、アプリケーションプログラムによる大量のＤＲＡＭの使用は、したがって、単にＤＲＡＭをリフレッシュするためにかなりの電力量が消費されていることを伴う。
【００１２】
しかし、移動体通信装置１は、低電力のスリープモードも有する。移動体通信装置１がスリープモードで動作する場合、殆ど全てのアプリケーション層プログラムはアクティブではない。移動体通信装置１は、メッセージが移動体通信装置宛であるかどうかを決定するために、かつ移動体通信装置がスリープモードを終了して、通常の動作を再開すべきかどうかを決定するために、通信トラヒックを監視しているに過ぎない可能性がある。移動体通信装置１がスリープモードで動作する場合、ヒープ内の大量のＤＲＡＭは「空き」であり、使用中ではない。ＤＲＡＭヒープメモリの空きの部分は、使用中でない場合、リフレッシュされない。
【００１３】
図３Ａ、３Ｂ、および３Ｃは、タスクマネージャ２によって管理されたスタックの動作を図解する図である。スタックは、スタック用途のために予約されたメモリ空間１１の一部を占有する。スタックメモリ空間１１は、図３Ａで、下向きに延長するメモリ空間の列として表される。図３Ｂは、プロシージャ「メイン」、プロシージャ「Ａ」、およびプロシージャ「Ｂ」を含む擬似コードの一部を図解する。図３Ｃは、図３Ｂのコードが実行された場合に発生する可能性がある事象の系列を図解する。示された例では、ソフトウェアは最初いくつかのメモリ位置から実行される。プロシージャ「メイン」が起動される場合、ＣＰＵのプログラムカウンタとＣＰＵの状態とはスタック上にプッシュされる。スタック上にプッシュされた情報は、図３ＡでＳ１と示される。プロシージャ「メイン」の実行が始まる。図３Ｂで図解されたように、プロシージャ「メイン」の実行は「Ａ（１、２、３）を起動」動作に達する。処理の流れがプロシージャＡにジャンプする前に、プログラムカウンタとプロセッサ状態とはスタック上にプッシュされる。スタック上にプッシュされたこの情報は、図３ＡでＳ２と示される。したがって、項目がスタック上にプッシュされると、スタックによって使用されるスタックメモリ空間１１の容量は、スタックが図解された方向に下向きに成長するように増加する。次に、図３Ｂで図解されるように、プロシージャＡの実行は「Ｂ（Ｘ、Ｙ、Ｚ）を起動」動作に達する。処理がプロシージャＢにジャンプする前に、プログラムカウンタとプロセッサ状態とはスタック上にプッシュされる。スタック上にプッシュされたこの情報は図３ＡでＳ３と示される。したがって、ソフトウェアの実行が入れ子のプロシージャ呼び出し内に深まれば深まるほど、より多くの情報がスタック上にプッシュされる。使用されるメモリ空間１１の容量は増大する。空きのメモリ空間１１の容量は減少する。
【００１４】
次に、プロシージャＢの実行が始まる。プロシージャＢの終りに「戻る」に達した場合、処理はプロシージャＡに戻ることになる。プロシージャＡに戻るために、項目Ｓ３はスタックからポップされ、ＣＰＵのプログラムカウンタとＣＰＵの状態とを復元するために使用される。メモリ空間１１の使用部分は、したがって減少する。処理はプロシージャＡに戻る。プロシージャＡの終りに「戻る」に達した場合、処理はプロシージャ「メイン」に戻ることになる。プロシージャ「メイン」に戻るために、項目Ｓ２はスタックからポップされて、プログラムカウンタとプロセッサ状態とを復元するために使用される。メモリ空間１１の使用部分は、したがって、さらに減少する。ＣＰＵがプロシージャ「メイン」内で実行する場合、スタック上の唯一の項目は項目Ｓ１である。プロシージャ「メイン」の終りに「（ＯＳに向けて）復帰」動作に達した場合、項目Ｓ１はスタックからポップされて、プログラムカウンタとプロセッサ状態とを復元するために使用される。
【００１５】
移動体通信装置１が使用中である場合、ソフトウェア実行は、多くの項目が多くの異なるスタック上にプッシュされるようなものであり得る。アクティブに使用されているメモリ空間１１の容量は大きい。対照的に、移動体通信装置１が低電力のスリープモード内にある場合、ソフトウェア活動は殆ど発生しない。殆ど全てのアプリケーション層プログラムは実行されず、メモリ空間１１の僅かがスタックによって使用されている。メモリ空間１１の未使用部分がＤＲＡＭ内で実現される場合、ＤＲＡＭの未使用部分の中には何も記憶されていないため、そのＤＲＡＭはリフレッシュされる必要はない。
【００１６】
図４Ａは、移動体通信装置１のＭＭＵ６が仮想メモリアドレス空間を物理的メモリアドレス空間にどのようにマップするかを図解する簡素化された図である。メモリシステム７の物理メモリは、複数の物理メモリページ（ＭＰ）として組織される。現在の例では、各物理ＭＰは、２ｋのメモリ位置を含む。ＣＰＵ上で実行するソフトウェアは、そのソフトウェアによって特定されたアドレスが１つの連続するアドレス空間内のアドレスであったかのように、仮想メモリ空間内で動作する。仮想メモリ空間の（ここでは、「仮想メモリページ」と呼ばれる）２ｋの各アドレス空間は、しかし、ＭＭＵ６によって物理ＭＰのうちの対応する１つにマップされる。
【００１７】
図４Ｂは、物理メモリ空間へのかかる仮想メモリ空間のマッピングの一例を記載する表の図である。仮想アドレス範囲（１０２ｋ〜（１０４ｋ〜１））は、物理アドレス範囲（０〜（２ｋ〜１））と物理メモリページ０とにマップされ、仮想アドレス範囲（１８ｋ〜（２０ｋ〜１））は、物理アドレス範囲（２ｋ〜（４ｋ〜１））と物理メモリページ１とにマップされ、表の行を下がって以下同様に行われる。物理ページサイズは、ＭＭＵおよび使用される物理メモリの特性に依存する。移動体通信装置１のオペレーティングシステムは、ＭＭＵ６に書き込んで、仮想から物理へのマッピングを変更することができる。マッピングを変更することによって、スタックメモリ１１の部分をアドレス指定する仮想アドレス範囲は、物理メモリの第１のページにもはやマップされず、むしろ、この時、物理メモリの第２のページにマップされるように変更され得る。スタックメモリ空間１１の一部の内容が第１のページから第２のページに複写されるならば、ソフトウェアが仮想アドレス空間内で実行され、仮想アドレス範囲内のメモリ位置にアクセスする場合、スタックメモリ空間の同じ内容がそのソフトウェアに対して利用可能になる。ソフトウェアは仮想アドレス空間内で動作するため、ソフトウェアの観点から、メモリの内容は再マップ動作の前後で同一である。
【００１８】
図５は、メモリシステム７のＤＲＡＭ９の複数のメモリリフレッシュ範囲（ＭＲＲ）の例を示す図である。図内の垂直次元は、ＤＲＡＭ９によって占有された物理アドレス空間を表す。ＤＲＡＭ９は、それぞれ、ＭＲＲ１、ＭＲＲ２、およびＭＲＲ３と示される３つのＭＭＲを含む。メモリコントローラ８は、ＤＲＡＭのＭＲＲのリフレッシングを制御する。メモリシステム７の構造により、各ＭＲＲのリフレッシングは、その他のＭＲＲのリフレッシングから独立して動作不能または動作可能にされ得る。図５の示された例では、ＭＲＲの各々のサイズは異なる。ＭＲＲのリフレッシングを動作不能にするために、ＭＲＭ３は適切な制御情報をメモリコントローラ（ＭＣ）８内に書き込む。メモリコントローラ８は、指定されたＭＲＲのリフレッシングを停止することによって、制御情報に応答する。同様に、ＭＲＭ３は、選択されたＭＲＲのリフレッシングが動作可能にされるように、適切な制御情報をメモリコントローラ８に書き込むことができる。メモリコントローラ８は、指定されたＭＲＲのリフレッシングを開始することによって制御情報に応答する。
【００１９】
図６は、図１の移動体通信装置１の動作の第１の新規性のある方法の流れ図であり、ＭＲＲのリフレッシングは動作不能にされ、それにより、ＭＲＲをリフレッシングするのに消費されることになるはずの電力を節約する。図７は、第１の方法のメモリの内容と組織とを図解する図である。
【００２０】
第１のステップ（図６のステップ２００）で、移動体通信装置１は、低電力のスリープモードに入ることが決定される。この決定は、例えば、（例えば、ユーザの電力停止キーの押下によってなど）ユーザ入力に応答してスリープ・マネージャ２によって行われることが可能である。
【００２１】
第２のステップ（ステップ２０１）で、スリープモードの間、維持される必要がある情報を含まないメモリリフレッシュ範囲（ＭＲＲ）が識別される。メモリリフレッシュマネージャ３は、例えば、ヒープマネージャ４が、来るべきスリープモード動作内でヒープマネージャ４によって割り当てられないであろうヒープ仮想メモリ空間の範囲を報告することにより、これらのＭＲＲを認識することができる。同様に、タスクマネージャ５は、来るべきスリープモード動作においてスタックによって使用されないであろうスタック仮想メモリ空間の範囲を報告することができる。メモリリフレッシュマネージャ３は、どの仮想メモリ空間がどの物理メモリページ（ＭＰ）にマップされるか、およびどの物理メモリページ（ＭＰ）がＤＲＡＭのどの物理メモリリフレッシュ領域（ＭＲＲ）内に配置されるかの知識を維持する。ヒープマネージャ４およびタクスマネージャ５から受信された情報から、かつどの仮想メモリ空間範囲がどのＭＲＲにマップされるかの知識から、メモリリフレッシュマネージャ３は、スリープモードの間、維持される必要がある情報を含まない任意のＭＲＲを識別する。（ステップ２０１のＭＲＲの識別は、ここで、スリープモードに入るためにステップ２００の決定が行われた後で発生するとして説明されるが、これらの２つのステップの順序は逆であってもよい。あるいは、ステップ２０１のＭＲＲの識別は、連続して進行中の処理であり得る。）
図７の例では、仮想アドレスの範囲ＮＰＲ１、ＮＰＲ２、およびＮＰＲ３は、仮想アドレス空間の範囲であり、その内容はスリープモードの間、維持される必要はない。これらの範囲ＮＰＲ１、ＮＰＲ２、およびＮＰＲ３は、ヒープマネージャ４とタスクマネージャ５とによってメモリリフレッシュマネージャ３に報告される。メモリリフレッシュマネージャ３は、ＭＲＲ３が保存されない範囲（この場合ＮＰＲ３）だけにマップされることと、ＭＭＲ３がスリープモードの間に維持される必要がある情報を含まないこととを決定する。
【００２２】
次に（ステップ２０２）、メモリリフレッシュマネージャ３は、これらのＭＲＲが後続のスリープモード動作の間、リフレッシュされないように、識別された物理ＭＲＲのリフレッシングを動作不能にする。一実施形態では、メモリリフレッシュマネージャ３は、適切な制御情報をメモリシステム７のメモリコントローラ（ＭＣ）８内に書き込むことによって、これらのＭＲＲのリフレッシングを動作不能にする。制御情報は、リフレッシュ動作可能コマンド、ならびにリフレッシュされる必要があるＭＲＲの表示を含む。スリープモード動作の間、リフレッシュされる必要がないＭＲＲの表示を制御情報から省略することによって、ＭＣ８の後続の動作は、これらのＭＲＲのリフレッシングを伴わない。この第１の新規性のある方法では、メモリリフレッシュマネージャ３は、ＭＭＵ６によって記憶された仮想メモリ空間から物理メモリ空間へのマッピングを変更しない。この例では、アプリケーション層ソフトウェアの動作は動作不能にされない。スリープモード動作の間、維持される必要がある情報を記憶しないであろうＭＲＲは、単に識別されて、それらのＭＲＲのリフレッシングは、適切な制御情報をメモリコントローラ８に書き込むことによって動作不能にされる。図７の例では、ＭＲＲ３は、スリープモード動作の間、維持されなければならない情報を含まない。メモリリフレッシュマネージャ３は、したがって、ＭＲＲ３のリフレッシングを動作不能にするためにメモリコントローラ８を制御する。
【００２３】
次に（ステップ２０３）、移動体通信装置１はスリープモードに入る。図７の例では、移動体通信装置１がスリープモードで動作する場合、ＭＲＲ３はリフレッシュされない。結果として、未使用のＤＲＡＭがスリープモード動作の間にリフレッシュされるシステムと比較して、電力消費量は低減される。
【００２４】
図８は、図１の移動体通信装置１の動作の第２の新規性のある方法の流れ図である。図９は、第２の方法のメモリの内容と組織とを図解する図である。第１のステップ（図８のステップ３００）で、移動体通信装置１は低電力のスリープモードに入ることが決定される。この決定は、例えば、（例えば、ユーザの電力停止キーの押下によってなど）ユーザ入力に応答してスリープ・マネージャ２によって行われ得る。
【００２５】
第２のステップ（ステップ３０１）で、スリープ・マネージャ２はＭＲＭ３を起動させる。ＭＲＭ３は、タスク切り替えを動作不能にすることによって、かつ割込みを動作不能にすることによって応答する（ステップ３０２）。この動作不能にすることは、再マップされることになるメモリ空間を使用しているソフトウェアが、後続の再マップ処理の間、影響を受けないことになるように実行される。
【００２６】
次に（ステップ３０３）、ＭＲＭ３は、ヒープマネージャ（ＨＭ）４を起動させて、ヒープマネージャ４から、スタックメモリ空間内の仮想メモリ範囲のリストを取得し、各仮想メモリ範囲は、スリープモードの間、リフレッシュされる必要がないメモリ空間の範囲である。ヒープマネージャ４は、例えば、所定の容量のヒープメモリ１０を、スリープモードの間、リフレッシュされないであろうメモリであるとして指定する。この所定の容量のヒープメモリ１０は、複数のスリープモード動作期間の間、使用されないヒープの容量を追跡し続けることによって経験的に決定され得る。
【００２７】
次に（ステップ３０４）、ＭＲＭ３は、タクスマネージャ（ＴＭ）５を起動させて、タスクマネージャ５からスタックメモリ空間内の仮想メモリ範囲のリストを取得し、各仮想メモリ範囲は、スリープモードの間、どのスタックによっても使用されないことになるメモリ空間の範囲である。タスクマネージャ５は、複数のスリープモード動作期間の間、様々なスタック内でどの程度深く値がプッシュされたかを追跡し続けることによって、これらの範囲を経験的に識別することが可能である。これらの仮想メモリ範囲を取得するためにヒープマネージャとタスクマネージャとを起動させる１つの順序が図８の流れ図で示されるが、ヒープマネージャとタスクマネージャとは、その他の順序でも同様に起動され得る。あるいは、仮想アドレス空間のどの領域がスリープモードの間に使用されないことになるかに関するすべての情報は、ヒープマネージャまたはタスクマネージャによって取得され得る。
【００２８】
図８のステップ３０５で、ＭＲＭ３は、ＤＲＡＭのメモリリフレッシュ範囲（ＭＲＲ）全体が物理メモリ内に保存されない範囲（ＮＰＲ）だけを含むように、ＮＰＲを互いに隣接して配置することになる配置を決定する。この配置は、ＮＰＲだけを含む、ＤＲＡＭ内のＭＲＲの総容量を最大化または実質的に最大化する。
【００２９】
図９は、図８のステップ３０６の前後のＮＰＲおよび物理ページの配置を示す。一番左の２つの列は、ＭＲＲが物理メモリ内でどのように組織されるかを示す。第１の列は、ＤＲＡＭが３つの異なるメモリリフレッシュ範囲（ＭＲＲ）に分割されることにより、ＤＲＡＭ内で完全に実現される物理メモリ空間を示す。第２の列は、メモリが物理メモリページ（ＭＰ）内にどのように組織されるかを示す。物理ＭＰ０〜４はＭＲＲ１内である。物理ＭＰ５〜９はＭＲＲ２内である。物理ＭＰ１０〜１２はＭＲＲ３内である。
【００３０】
図９の第３および第４の列は、図８のステップ３０６の前の、保存されない範囲（ＮＰＲ）と、それらの対応する物理メモリページ（ＭＰ）とを示す。第３の列は、スリープモードの間、リフレッシュの必要がないとしてヒープマネージャ４とタクスマネージャ５がマークしたＮＰＲを示す。第４の列は、対応するＮＰＲが占有する物理メモリページを示す。ページ数が図の上から下（この例では０〜１２）に増大するようにメモリ空間は図内で下向きに延長する。（ステップ３０６の前のＭＰとＮＰＲとを示す）第３の列では、ＮＰＲ１はＭＰ０の一部と、ＭＰ１のすべてと、ＭＰ２の一部とを含む。ＮＰＲ２は、ＭＰ３の一部と、ＭＰ４のすべてと、ＭＰ５の一部とを含む。ＮＰＲ３は、ＭＰ６の一部と、ＭＰ７のすべてと、ＭＰ８の一部とを含む。図９の「前」の列３および４が示すように、各ＭＭＲ（ＭＲＲ１、ＭＲＲ２、およびＭＲＲ３）は、スリープモードの間、保存されなければならない少なくともいくつかの情報を含むため、ＮＰＲが再配置されない限り、スリープモードの間、リフレッシュはＭＭＲのいずれかに関して動作不能にされ得ない。
【００３１】
図９の一番右の２つの例は、図８のステップ３０６の後のメモリの再配置が完了した結果を示す（配置はステップ３０５で決定された）。この新しいマッピングでは、（図９の「物理ページ」列６の下で「古いページ１０」として示される）ＭＰ１０は、（「物理ページ」列２および４の下で数字「１」として、かつ同じ行内で「古いページ１０」として示される）ＭＰ１に複写される。同様に、ＭＰ１１はＭＰ４に複写され、ＭＰ１２はＭＰ７に複写される。すべての３つの複写されたページ１０、１１、１２は、保存されない範囲ＮＰＲ１、ＮＰＲ２、またはＮＰＲ３の中に常駐しなかったため、これらのページはスリープモードの間、リフレッシュを要求する。スリープモードの間、保存される必要がない情報を含む古いＭＰ１は、（「物理ページ」列６の下で「古いページ１」として示される）ＭＰ１０に複写される。同様に、やはり保存される必要がない古いＭＰ４と古いＭＰ７とは、それぞれ、（列６内で「古いページ４」および「古いページ７」として示される）ＭＰ１１およびＭＰ１２に複写される。新しい配置では、ＭＰ１、ＭＰ４、およびＭＰ７はすべて、スリープモードの間、保存される必要がない情報を含み、これらのページはすべて、保存を要求するページを含まない単一のメモリ管理領域３（ＭＭＲ３）内にマップされ、したがって、ＭＭＲ３は、この時、メモリリフレッシュを動作不能にして、後続のスリープモード動作の間、電力を温存するための候補である点に留意されたい。
【００３２】
新しい配置が仮想メモリアドレスを物理メモリアドレスに再マップせずに実施される場合、ソフトウェアは、ステップ３０６の間に移動した物理ＭＰ内に記憶された情報にアクセスする目的で同じ仮想アドレスをもはや使用することはできない。仮想アドレスは、この時、その他の物理メモリページにマップされることになり、仮想アドレスに依存したソフトウェアは正確に動作しないことになる。したがって、図８のメモリ再マップ動作ステップの必要性。
【００３３】
図８のステップ３０７で、ＭＲＭ３は、物理アドレス空間内で移動したすべてのメモリ位置がステップ３０６（このステップは図９で示されない）の前に有したのと同じ仮想アドレスを有することになるようにＭＭＵ６を構成する。ステップ３０７は、ソフトウェアが、ソフトウェア自体への変更を要求せずに、引き続き適切に機能することを確実にする。ステップ３０７が完了すると、ソフトウェアは、ステップ３０５で決定されて、ステップ３０６で実行された物理メモリ配置への変更を依然として認識せず、物理メモリが再配置された前に行ったのと同じ仮想アドレスから情報を取り出すことができる。
【００３４】
図８のステップ３０８で、ＭＲＭ３は、保存されない領域（ＮＰＲ）だけを含むＭＲＲのリフレッシュを動作不能にするためにメモリコントローラ７を再配置する。図９で、（図９の第５の列内の「古いページ１」、「古いページ４」、および「古いページ７」の隣に縦線によって示されるように）ＭＲＲ３だけがＮＰＲだけからなる唯一のＭＲＲであるため、ＭＲＲ３だけがリフレッシュを動作不能にされ得る。
【００３５】
次に（ステップ３０８）、ＭＲＭ３は、ＮＰＲだけを含むＭＲＲのリフレッシングが動作不能にされるように、メモリコントローラ７を再構成する。図９の例では、ＭＲＲ３は保存されない範囲の断片だけにマップされる。これは、図９の第２の一番右の列内で、ＭＲＲ３に対応する列内で縦線によって示される。ステップ３０８は、ＭＲＲ３のリフレッシングを動作不能にすることを伴う。
【００３６】
次に（ステップ３０９）、ＭＲＭ３は、アプリケーション層プログラムが再び実行されることが可能であり、ヒープの割り当てられた区域であり得、スタックを使用することができるように、タスク切り替えと割込みとを動作可能にする（ステップ３０９）。スリープ・マネージャ２は、次いで、移動体通信装置１をスリープモードにする（ステップ３１０）。移動体通信装置１がスリープモードである場合、ＭＲＲ３のＤＲＡＭはソフトウェアによって使用されず、リフレッシュされない。
【００３７】
図１０は、移動体通信装置１がスリープモード動作期間の後に起動する、第３の新規性のある方法の流れ図である。スリープ・マネージャ２は、移動体通信装置１がスリープモード動作から回復して、通常の操作モード動作に戻ることを決定する（ステップ４００）。スリープ・マネージャ２は、ＭＲＭ３を起動させる（ステップ４０１）。ＭＲＭ３は、メモリコントローラ８の後続の再構成がアプリケーション層プログラムおよびタスクの動作を危険にさらさないことになるように、タスク切り替えと割込みとを動作不能にする（ステップ４０２）。ＭＲＭ３は、次いで、すべてのＭＲＲがリフレッシュされるようにメモリコントローラ８を再構成する（ステップ４０３）。図９の例では、ＭＲＲ３のリフレッシングは再び動作可能にされ、それにより、図８のステップ３０８のリフレッシュを動作可能にすることを反転する。メモリコントローラ８は、ＭＲＲ１、ＭＲＲ２、およびＭＲＲ３をリフレッシュすることを再開する。次に（ステップ４０４）、ＭＲＭ３は、タスク切り替えと割込みとを動作可能にする。スリープ・マネージャ２は、次いで、移動体通信装置１にスリープモード動作と、通常の動作モードの開始動作とを終了させる（ステップ４０５）。アプリケーション層プログラムは実行されることが可能にされる。移動体通信装置１が移動通信電話である場合、アプリケーション層プログラムは、着信した移動通信電話メッセージを分析して、デジタルカメラとしての動作など、その他の機能を実行するために動作可能である。ＤＲＡＭ内で実現されるすべてのヒープメモリ空間１０とすべてのスタックメモリ空間１１とは、使用のために利用可能である。
【００３８】
説明の目的で、いくつかの特定の実施形態が上で説明されたが、本発明はそれらに限定されない。したがって、特許請求の範囲に記載された本発明の範囲から逸脱せずに、説明された特定の実施形態の様々な特徴機能の様々な変更形態、適合形態、および組合せが実施され得る。
【図面の簡単な説明】
【００３９】
【図１】１つの新規性のある実施形態による、移動体通信装置１の選択された機能コンポーネント（ソフトウェアおよびハードウェア）を例示するブロック図。
【図２】ヒープメモリ空間を例示する図。ヒープメモリ空間の一部が割り当てられ、一部は空きである。
【図３Ａ】スタックメモリ空間を例示する図。スタックメモリ空間の一部はスタックによって使用されており、一部はスタックによって使用されていない。
【図３Ｂ】入れ子のプロシージャ呼び出しが、結果として、どのように図３Ａのスタック上にプッシュ項目（pushing items）をもたらすかを例示する擬似コードの図。
【図３Ｃ】図３Ｂの擬似コードが実行された場合に実行されるプッシュ動作およびポップ動作を列挙する図。
【図４Ａ】メモリ管理装置（ＭＭＵ）がＣＰＵによって送出された仮想メモリアドレスをメモリシステムによって使用される物理メモリアドレスにどのようにマップするかを例示する図。
【図４Ｂ】物理メモリ空間への仮想メモリ空間の変換を例示する表。
【図５】ＤＲＡＭメモリ空間が複数のメモリリフレッシュ領域（ＭＲＲ）にどのように区分化されるかを例示する図。各ＭＲＲのリフレッシングは、その他のＭＲＲのリフレッシングから独立して動作可能または動作不能にされ得る。
【図６】第１の新規性のある方法の簡素化された流れ図。スリープモードの間のＭＲＲのリフレッシングは、仮想アドレス空間から物理アドレス空間へのＭＭＵ再マッピングなしに動作不能にされる。
【図７】図６の第１の方法に関するメモリ空間の図。
【図８】第２の新規性のある方法の簡素化された流れ図。仮想メモリ空間から物理メモリ空間へのＭＭＵ再マッピングは、物理メモリページを凝集するために実行され、その内容は、後続のスリープモード動作の間、維持される必要がない。凝集された物理メモリページは、当該物理メモリページがＭＲＲのセットを完全に占有するようにマップされる。マッピングは、スリープモードの間、維持される必要がないＭＲＲメモリ空間の総容量が最大化されるように、または実質的に最大化されるように実行される。再マッピングの後、スリープモード動作はＭＲＲのセットがリフレッシュされていることなく発生し、それにより電力消費量を低減する。
【図９】図８の第２の方法に関するメモリ空間の図。
【図１０】すべてのＭＲＭのリフレッシングが、スリープモード動作から通常の操作モード動作に戻るのに先立って動作可能にされる、第３の方法の簡素化された流れ図。
【図１】
2009525555.tif 000003
【図２】
2009525555.tif 000004
【図３Ａ】
2009525555.tif 000005
【図３Ｂ】
2009525555.tif 000006
【図３Ｃ】
2009525555.tif 000007
【図４Ａ】
2009525555.tif 000008
【図４Ｂ】
2009525555.tif 000009
【図５】
2009525555.tif 000010
【図６】
2009525555.tif 000011
【図７】
2009525555.tif 000012
【図８】
2009525555.tif 000013
【図９】
2009525555.tif 000014
【図１０】
2009525555.tif 000015
【国際調査報告】
2009525555.tif 000016
2009525555.tif 000017
2009525555.tif 000018