(57)【要約】【課題】メモリに迅速にアクセスし、かつ、メモリの消費電力を削減すること。【解決手段】集積回路１は、ＣＰＵ３と、制御回路４とを有している。ＣＰＵ３は、ＣＰＵコア３ａと、メモリ管理部３ｂとを有している。メモリ管理部３ｂは、メモリ２の物理アドレスに関連付けられた仮想アドレスを保管する保管部３１ｂを有している。このメモリ管理部３ｂは、ＣＰＵコア３ａからの仮想アドレスへのアクセス要求に応じて、逐次、保管部３１ｂを参照する。そして、アクセス先の仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、保管部３１ｂの仮想アドレスに対応する物理アドレスの内容を更新した情報を出力する。制御回路４は、メモリ管理部３ｂが出力した情報に含まれる物理アドレスを備えるメモリバンクを制御する。【選択図】図１
2010108381.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリバンクを備えるメモリを制御する集積回路において、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管部を備え、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管部を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管部の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力するメモリ管理部と、
前記メモリ管理部が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する制御部と、
を有することを特徴とする集積回路。
【請求項２】
前記メモリ管理部は、アクセス先の前記仮想アドレスが前記保管部に存在しないと判断した場合、前記保管部の中から削除するエントリを決定し、エントリ削除の信号と、その物理アドレスとを前記制御部に通知し、
前記制御部は、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクの機能を停止させることを特徴とする請求項１記載の集積回路。
【請求項３】
前記メモリ管理部は、エントリ削除の信号と、その物理アドレスとを前記制御部に通知した後に更新するエントリを決定し、エントリ更新の信号と、その物理アドレスとを前記制御部に通知し、
前記制御部は、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクの機能を回復させることを特徴とする請求項２記載の集積回路。
【請求項４】
前記制御部は、前記メモリバンク毎にカウンタ値を保持するカウンタをさらに有し、前記メモリ管理部からのエントリ削除の信号の通知に際し、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクに対応する前記カウンタのカウンタ値をデクリメントさせて一致した前記メモリバンクの機能を停止させ、前記メモリ管理部からのエントリ更新の信号の通知に際し、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクに対応する前記カウンタのカウンタ値をインクリメントさせて一致した前記メモリバンクの機能を回復させることを特徴とする請求項３記載の集積回路。
【請求項５】
複数のメモリバンクを備えるメモリを制御する集積回路の制御方法において、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管手段を備えるメモリ管理手段が、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管手段を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管手段の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力し、
制御手段が、前記メモリ管理手段が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する、
ことを特徴とする集積回路の制御方法。
【請求項６】
複数のメモリバンクを備えるメモリと、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管部を備え、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管部を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管部の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力するメモリ管理部と、
前記メモリ管理部が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する制御部と、
を有することを特徴とする半導体デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は集積回路、集積回路の制御方法および半導体デバイスに関し、特に、メモリの消費電力を削減する集積回路、集積回路の制御方法および半導体デバイスに関する。
【背景技術】
【０００２】
近年、携帯機器市場の拡大等により、消費電力が少ないプロセッサシステムが要求されている。その要求を満たすための方法として、メモリに対する電力の供給やクロック（周波数）の供給を制御する方法がいくつか知られている。
【０００３】
例えば、メインメモリを複数の物理領域に分割して個別にクロックを供給できる構成とし、ＤＭＡ（Direct Memory Access）コントローラのアドレス制御回路により、選択されたメモリブロックに電力またはクロックを供給し、他のブロックには供給しない方式が知られている（例えば、特許文献１参照）。
【０００４】
また、仮想メモリ方式によるアドレス変換装置を有する電子計算機（プロセッサ）のメモリ装置において，アドレス変換装置の項目の内容で指定されるアドレスに対応するメモリモジュールのみに給電して、電力の消費を削減する方式が知られている（例えば、特許文献２参照）。
【０００５】
さらに、アプリケーションへの主記憶の割り当て／開放に従って、割り当てたメモリにのみ電源を供給し、開放領域は供給しないように、ＯＳ（Operating System）が電力を制御する方式が知られている（例えば、特許文献３参照）。
【特許文献１】特開２００３−２４８６５２号公報
【特許文献２】特開昭５６−０３５２２８号公報
【特許文献３】特開平９−２１２４１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術には以下のような問題があった。
特許文献１に記載された方式は、ＤＭＡコントローラを制御対象としており、特許文献１に記載された方式を、構成の異なるプロセッサにそのまま適用することは難しい。
【０００７】
特許文献２に記載された方式では、ＴＬＢ（Translation Look-aside Buffer：キャッシュメモリ）の情報を利用してハードウェアで電力制御を行うことで、最近参照したメモリ領域のみに電力供給することができる。
【０００８】
しかし、特許文献２に記載された方式は、ＴＬＢの記憶素子としてフリップフロップを使用することを前提とした電力制御回路になっており、フリップフロップで記憶素子を構成した場合はＲＡＭ（Random Access Memory）で構成した場合に比べて回路規模が大きくなるという問題があった。
【０００９】
また、ＴＬＢをフリップフロップではなくＲＡＭで構成した場合、ＴＬＢの情報を参照するためには、ＲＡＭに対してアドレスを与えながらデータを読み出す必要があった。
ＲＡＭから１つのデータを取り出すためには数サイクルかかるため、ＲＡＭのエントリ数が多い場合、ＲＡＭのデータ取り出しにはそれだけサイクル数かかる。その結果として電力制御を行うまでの時間がかかり、メモリの電力をＯＦＦ状態からＯＮ状態に変更した場合に、メモリにアクセス可能になるまでの時間がかかるという問題があった。
【００１０】
さらに、ＲＡＭの情報を読み出すためには、ＲＡＭに読み出しポートを追加する必要がある。そのため、電力制御回路がＲＡＭの情報を読み出す場合、ＲＡＭの回路規模が大きくなるという問題があった。
【００１１】
特許文献３に記載された方式では、少ないデータであっても、あるメモリバンクにデータが存在していれば、そのメモリバンクの電源はオフできないという問題点があった。
仮想アドレス空間でメモリ管理するオペレーティングシステムでは、アプリケーションから要求されたデータをその都度空いている物理アドレスに割り付け与えているため、しばらく運転していると物理アドレス空間全体にデータが点在するといった状態になる。
【００１２】
従って、全メモリ消費量は少ないものの、どのメモリバンクも電源がオフできないという問題が生じる。
本発明はこのような点に鑑みてなされたものであり、メモリに迅速にアクセスすることができ、かつ、メモリの消費電力を削減することができる集積回路、集積回路の制御方法および半導体デバイスを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、複数のメモリバンクを備えるメモリを制御する集積回路が提供される。
この集積回路は、メモリ管理部と、制御部とを有している。
【００１４】
メモリ管理部は、メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管部を備え、メモリへの仮想アドレスへのアクセス要求に応じて逐次保管部を参照してアクセス先の仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、保管部の仮想アドレスに対応する物理アドレスの内容を更新した情報を出力する。
【００１５】
制御部は、メモリ管理部が出力した情報に含まれる物理アドレスを備えるメモリバンクを制御する。
このような集積回路によれば、メモリ管理部により、メモリへの仮想アドレスへのアクセス要求に応じて逐次、保管部が参照され、アクセス先の仮想アドレスが存在するか否かが判断される。そして、存在しないと判断された場合、保管部の仮想アドレスに対応する物理アドレスの内容を更新した情報が出力される。そして、制御部により、メモリ管理部によって出力された情報に含まれる物理アドレスを備えるメモリバンクが制御される。
【発明の効果】
【００１６】
開示の集積回路によれば、余分なサイクル数を費やすことなく制御部に情報を送ることができる。これにより、メモリに迅速にアクセスすることができ、かつ、メモリの消費電力を削減することができる。
【発明を実施するための最良の形態】
【００１７】
以下、実施の形態を、図面を参照して詳細に説明する。
まず、実施の形態の集積回路について説明し、その後、実施の形態をより具体的に説明する。
【００１８】
図１は、実施の形態の集積回路の概要を示す図である。
図１に示す集積回路１は、複数のメモリバンク２ａ〜２ｄを備えるメモリ２を制御する。なお、図１では、メモリ２は集積回路１の外部に設けられているが、集積回路１の内部に設けられていてもよい。
【００１９】
集積回路１は、ＣＰＵ３と、制御回路４とを有している。
ＣＰＵ３は、ＣＰＵコア３ａと、メモリ管理部３ｂとを有している。
メモリ管理部３ｂは、メモリ２の物理アドレスに関連付けられた仮想アドレスを保管する保管部３１ｂを有している。
【００２０】
このメモリ管理部３ｂは、ＣＰＵコア３ａからの仮想アドレスへのアクセス要求に応じて、逐次、保管部３１ｂを参照する。そして、アクセス先の仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、保管部３１ｂの仮想アドレスに対応する物理アドレスの内容を更新した情報を出力する。
【００２１】
制御回路４は、メモリ管理部３ｂが出力した情報に含まれる物理アドレスを備えるメモリバンクを制御する。制御内容は、例えば、クロック供給の停止、供給クロックの周波数制御、電力供給の停止、セルフリフレッシュモードへの移行等が挙げられる。
【００２２】
この集積回路１によれば、物理アドレスの内容を更新した情報が、逐次、制御回路４に送られることにより、保管部３１ｂに格納されている全ての情報をその都度、参照しなくてもよい。これにより、データの処理に要するサイクル数を省略することができるので、メモリ２に迅速にアクセスすることができる。また、メモリバンク２ａ〜２ｄ単位で制御することができるため、メモリ２の消費電力を削減することができる。
【００２３】
以下、実施の形態をより具体的に説明する。
図２は、プロセッサシステムの構成を示す図である。
プロセッサシステム（集積回路）１０は、ＣＰＵ（Central Processing Unit）１１によって装置全体が制御されている。ＣＰＵ１１には、データバス１５を介して電力制御回路１３およびメモリ１４が接続されている。
【００２４】
ＣＰＵ１１は、命令実行部１１１と、少なくとも１つのＭＭＵ（Memory Management Unit）（メモリ管理部）１１２を有している。
命令実行部１１１は、ロード命令やストア命令等のメモリアクセス命令を実行する。また、後述するＴＬＢの内容をクリアするクリア命令を実行する。
【００２５】
ＭＭＵ１１２は、仮想アドレスを物理アドレスに高速に変換するためのＴＬＢ（保管部）１１２ａを有している。このＴＬＢ１１２ａは、ＲＡＭで構成されている。
また、ＭＭＵ１１２は、ＴＬＢ１１２ａの更新に関する情報（ＴＬＢエントリ更新情報）をＭＭＵ１１２の外部に設けられた電力制御指示回路１２に出力する。
【００２６】
ＴＬＢエントリ更新情報は、ＴＬＢのエントリを削除したことを示すＴＬＢエントリ削除情報と、その物理アドレスとを組み合わせた情報、または、ＴＬＢのエントリを書き込んだことを示すＴＬＢエントリ書き込み情報と、その物理アドレスとを組み合わせた情報である。
【００２７】
電力制御指示回路１２は、ＭＭＵ１１２から受け取ったＴＬＢエントリ更新情報に基づいて、電力制御指示を生成し、保持する機能を有する。
電力制御指示に含まれる情報の内容は特に限定されないが、例えば、クロック供給の停止、供給クロックの周波数制御、電力供給の停止、セルフリフレッシュモードへの移行等が挙げられる。本実施の形態では一例として、電力供給を停止する情報が含まれるものとする。
【００２８】
電力制御回路１３は、電力制御指示回路１２が出力した電力制御指示を受け取り、その情報に基づいてメモリ１４のメモリバンクへの電力の供給を開始または停止する。
メモリ１４は、メモリバンク１４ａ、１４ｂ、１４ｃ、１４ｄ（複数のメモリバンク）を有している。
【００２９】
次に、ＴＬＢ１１２ａの構成について説明する。
図３は、ＴＬＢの構成を示す図である。
ＴＬＢ１１２ａには、仮想アドレスと物理アドレスの欄が設けられており、横方向の情報同士が互いに関連付けられている。図３では、物理アドレス（０ｘ１０００＿００００）に仮想アドレス（０ｘ００００＿００００）が関連付けられている。
【００３０】
従って、仮想アドレス（０ｘ００００＿００００）へのデータアクセス要求が指定された場合、ＭＭＵ１１２は、物理アドレス（０ｘ１０００＿００００）を指定したＴＬＢエントリ更新情報を制御部１２２に送信する。
【００３１】
図４は、メモリの構成を示す図である。
メモリ１４は、物理アドレス（０ｘ００００＿００００）〜物理アドレス（０ｘＦＦＦＦ＿ＦＦＦＦ）を有している。
【００３２】
メモリバンク１４ａ〜１４ｄは、この順番に連続したメモリ領域を有している。図４では一例として、物理アドレス（０ｘ１０００＿００００）は、メモリバンク１４ｂに属している。
【００３３】
次に、電力制御指示回路１２が備える機能について説明する。
図５は、電力制御指示回路の機能を示すブロック図である。
電力制御指示回路１２は、電力制御内容記憶部１２１と制御部１２２とを有している。
【００３４】
電力制御内容記憶部１２１は、メモリバンク１４ａ〜１４ｄの個数に対応するメモリバンク用カウンタ１２１ａ、１２１ｂ、１２１ｃ、１２１ｄを有している。メモリバンク用カウンタ１２１ａがメモリバンク１４ａに対応している。メモリバンク用カウンタ１２１ｂがメモリバンク１４ｂに対応している。メモリバンク用カウンタ１２１ｃがメモリバンク１４ｃに対応している。メモリバンク用カウンタ１２１ｄがメモリバンク１４ｄに対応している。
【００３５】
制御部１２２は、メモリバンク１４ａ〜１４ｄの物理アドレスを把握している。
制御部１２２は、ＭＭＵ１１２から出力されるＴＬＢエントリ更新情報を受け取り、その情報に基づいて、電力制御内容記憶部１２１の内容を更新する。具体的には、制御部１２２は、ＴＬＢエントリ更新情報に含まれる物理アドレスとメモリバンク１４ａ〜１４ｄの物理アドレスとを比較し、一致したメモリバンクに対応するメモリバンク用カウンタを特定する。そして、ＴＬＢエントリ更新情報にＴＬＢエントリ削除情報が含まれていれば、特定したメモリバンク用カウンタの値をデクリメントする。また、ＴＬＢエントリ更新情報にＴＬＢエントリ更新情報が含まれていれば、特定したメモリバンク用カウンタの値をインクリメントする。
【００３６】
一例として、前述した図４の例では、ＴＬＢエントリ更新情報を受信した制御部１２２は、ＴＬＢエントリ更新情報に含まれる物理アドレス（０ｘ１０００＿００００）とメモリバンク１４ａ〜１４ｄの物理アドレスとを比較し、一致したメモリバンク１４ｂに対応するメモリバンク用カウンタ１２１ｂを特定する。
【００３７】
そして、ＴＬＢエントリ更新情報にＴＬＢエントリ削除情報が含まれていれば、特定したメモリバンク用カウンタ１２１ｂの値をデクリメントする。これにより、電力制御指示回路１２は、メモリバンク用カウンタ１２１ｂに対応するメモリバンク１４ｂへの電力の供給を停止する電力制御指示を出力する。
【００３８】
一方、ＴＬＢエントリ更新情報にＴＬＢエントリ更新情報が含まれていれば、特定したメモリバンク用カウンタ１２１ｂの値をインクリメントする。これにより、電力制御指示回路１２は、メモリバンク用カウンタ１２１ｂに対応するメモリバンク１４ｂへの電力の供給を開始する電力制御指示を出力する。
【００３９】
以下、プロセッサシステム１０の処理を説明する。
まず、命令実行部１１１が、メモリアクセス命令を実行したときの処理を説明する。
図６は、命令実行部がメモリアクセス命令を実行したときの処理を示すフローチャートである。
【００４０】
まず、命令実行部１１１が、ロード命令やストア命令等のメモリアクセス命令を実行する（ステップＳ１）。
このとき、ＭＭＵ１１２は、メモリアクセス要求を受け取る（ステップＳ２）。
【００４１】
ＭＭＵ１１２では、メモリアクセスのアドレスを仮想アドレスから物理アドレスに変換するために、ＴＬＢ１１２ａを参照する。そして、対応する仮想アドレスがＴＬＢ１１２ａのエントリに存在するかを判定（ヒットミス判定）する（ステップＳ３）。
【００４２】
ミス判定の場合、すなわち、対応する仮想アドレスがＴＬＢ１１２ａのエントリに存在しない場合（ステップＳ３のミス）、メモリアクセス要求を受け取ったＭＭＵ１１２は、新たな仮想アドレスをＴＬＢ１１２ａに書き込むために、ＴＬＢ１１２ａの中から削除するエントリを決定する（ステップＳ４）。
【００４３】
次に、ＭＭＵ１１２は、電力制御指示回路１２にエントリ削除の信号と、その物理アドレスを含むＴＬＢエントリ更新情報を通知する（ステップＳ５）。
電力制御指示回路１２は、受け取った物理アドレスと各メモリバンクのアドレスとを比較し、アドレスが一致したメモリバンクに対応するメモリバンク用カウンタをデクリメントする（ステップＳ６）。これにより、電力制御指示回路１２は、デクリメントしたメモリバンク用カウンタに対応するメモリバンクへの電力の供給を停止する電力制御指示を出力する。そして、電力制御回路１３が、電力制御指示に含まれるメモリバンクの電力の供給を停止する。
【００４４】
次に、ＭＭＵ１１２は、ＴＬＢ１１２ａのエントリに新たな仮想アドレスと物理アドレスを書き込む（エントリ更新）（ステップＳ７）。
このとき、ＭＭＵ１１２は、電力制御指示回路１２にエントリ更新の信号と、その物理アドレスを含むＴＬＢエントリ更新情報を通知する（ステップＳ８）。
【００４５】
電力制御指示回路１２は、受け取った物理アドレスと各メモリバンクのアドレスとを比較し、アドレスが一致したメモリバンクに対応するメモリバンク用カウンタをインクリメントする（ステップＳ９）。これにより、電力制御指示回路１２は、デクリメントしたメモリバンク用カウンタに対応するメモリバンクへの電力の供給を開始する電力制御指示を出力する。そして、電力制御回路１３が、電力制御指示に含まれるメモリバンクの電力の供給を開始する。
【００４６】
その後、ＭＭＵ１１２は、アドレス変換が完了したので、メモリ１４にアクセスする（ステップＳ１０）。そして、命令実行部１１１にメモリアクセスの応答を返す（ステップＳ１１）。
【００４７】
メモリアクセスの応答を受けた命令実行部１１１は、メモリアクセス命令を完了する（ステップＳ１２）。
一方、ステップＳ３において、ヒット判定の場合、すなわち、対応する仮想アドレスがＴＬＢ１１２ａのエントリに存在する場合（ステップＳ３のヒット）、エントリ削除およびエントリ更新は行われないため、ステップＳ４、Ｓ５、Ｓ７、Ｓ８の処理を行わずにステップＳ１０に移行する。
【００４８】
そして、ＭＭＵ１１２は、メモリ１４にアクセスする（ステップＳ１０）。そして、命令実行部１１１にメモリアクセスの応答を返す（ステップＳ１１）。
メモリアクセスの応答を受けた命令実行部１１１は、メモリアクセス命令を完了する（ステップＳ１２）。
【００４９】
次に、命令実行部１１１が、ＴＬＢクリア命令を実行したときの処理を説明する。
図７は、命令実行部がＴＬＢクリア命令を実行したときの処理を示すフローチャートである。
【００５０】
命令実行部１１１が、ＴＬＢクリア命令を実行する（ステップＳ２１）。
ＭＭＵ１１２は、ＴＬＢクリア命令を受信すると（ステップＳ２２）、ＴＬＢ１１２ａの全エントリをクリア（無効化）する（ステップＳ２３）。
【００５１】
このとき、ＭＭＵ１１２は、全エントリ削除の信号を電力制御指示回路１２に通知する（ステップＳ２４）。
全エントリ削除の信号を受け取った電力制御指示回路１２は、全てのメモリバンク用カウンタ１２１ａ〜１２１ｄのカウンタ値をリセットする（ステップＳ２５）。
【００５２】
その後、ＭＭＵ１１２は、命令実行部１１１にＴＬＢ１１２ａの全エントリのクリアが完了したことを示す応答を返す（ステップＳ２６）。
以上述べたように、プロセッサシステム１０によれば、ＴＬＢ１１２ａの更新に関する情報を逐次、電力制御指示回路１２に出力する機能を有するＭＭＵ１１２と、そのＭＭＵ１１２が出力したＴＬＢ１１２ａの更新に関する情報を受け取る機能を有する電力制御指示回路１２を備えた。これにより、メモリアクセス命令が実行される度に、ＴＬＢ１１２ａに格納されている情報を全部参照しなくてもよい。従って、ＴＬＢ１１２ａをＲＡＭで構成した場合も、余分なサイクル数を費やすことがない。よって、メモリ１４に迅速にアクセスすることができる。
【００５３】
また、メモリバンク１４ａ〜１４ｄ毎に電力の供給の停止／開始を行うことができるため、きめ細かな電力制御が可能となる。
なお、本実施の形態では、ＣＰＵ１１が１つである例を示しているが、ＣＰＵ１１が複数個設けられていてもよい。
【００５４】
また、本実施の形態では、電力制御回路１３と電力制御指示回路１２が別個の回路になっているが、一体となっていてもよい。
また、本実施の形態では、電力制御回路１３およびメモリバンク１４はプロセッサシステム１０の内部に存在する形態となっているが、プロセッサシステム１０の外部に存在していてもよい。
【００５５】
＜第２の実施の形態＞
次に、第２の実施の形態のプロセッサシステムについて説明する。
以下、第２の実施の形態のプロセッサシステムについて、前述した第１の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
【００５６】
第２の実施の形態のプロセッサシステムは、電力制御指示回路の構成が、第１の実施の形態のプロセッサシステムと異なっている。
図８は、第２の実施の形態のプロセッサシステムの電力制御指示回路の構成を示すブロック図である。
【００５７】
第２の実施の形態の電力制御指示回路１２ａは、さらに、静的電力制御指示部１２３と、メモリバンク用カウンタ１２１ａ〜１２１ｄにそれぞれ対応して設けられたＯＲ回路１２４ａ〜１２４ｄとを有している。
【００５８】
静的電力制御指示部１２３は、メモリバンク用カウンタの数に対応するレジスタ１２３ａを有している。本実施の形態ではメモリバンク用カウンタは４個であるため、４ビットのレジスタ１２３ａを有している。
【００５９】
このレジスタ１２３ａの０ビットは、ＯＲ回路１２４ａに対応している。レジスタ１２３ａの１ビットは、ＯＲ回路１２４ｂに対応している。レジスタ１２３ａの２ビットは、ＯＲ回路１２４ｃに対応している。レジスタ１２３ａの３ビットは、ＯＲ回路１２４ｄに対応している。
【００６０】
レジスタ１２３ａの各ビットの値は、ＣＰＵ１１の指示によって書き換えられるようになっており、静的電力制御指示部１２３は、レジスタ１２３ａの値が「０」のビットは、対応するＯＲ回路に「０」を出力する。値が「１」のビットは、対応するＯＲ回路に「１」を出力する。
【００６１】
ＯＲ回路１２４ａ〜１２４ｄは、それぞれ、メモリバンク用カウンタ１２１ａ〜１２１ｄの出力と静的電力制御指示部１２３の出力のうち、少なくともいずれか一方が「１」のとき、対応するメモリバンクへの電力の供給を開始する電力制御指示を出力する。
【００６２】
このような構成により、静的に（ソフトウェアでも）メモリバンク１４ａ〜１４ｄの電力の供給を制御することができる。
以上、本発明の集積回路、集積回路の制御方法および半導体デバイスを、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【００６３】
また、本発明は、前述した各実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
以上の第１〜第２の実施の形態に関し、更に以下の付記を開示する。
【００６４】
（付記１）  複数のメモリバンクを備えるメモリを制御する集積回路において、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管部を備え、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管部を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管部の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力するメモリ管理部と、
前記メモリ管理部が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する制御部と、
を有することを特徴とする集積回路。
【００６５】
（付記２）  前記メモリ管理部は、アクセス先の前記仮想アドレスが前記保管部に存在しないと判断した場合、前記保管部の中から削除するエントリを決定し、エントリ削除の信号と、その物理アドレスとを前記制御部に通知し、
前記制御部は、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクの機能を停止させることを特徴とする付記１記載の集積回路。
【００６６】
（付記３）  前記メモリ管理部は、エントリ削除の信号と、その物理アドレスとを前記制御部に通知した後に更新するエントリを決定し、エントリ更新の信号と、その物理アドレスとを前記制御部に通知し、
前記制御部は、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクの機能を回復させることを特徴とする付記２記載の集積回路。
【００６７】
（付記４）  前記制御部は、前記メモリバンク毎にカウンタ値を保持するカウンタをさらに有し、前記メモリ管理部からのエントリ削除の信号の通知に際し、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクに対応する前記カウンタのカウンタ値をデクリメントさせて一致した前記メモリバンクの機能を停止させ、前記メモリ管理部からのエントリ更新の信号の通知に際し、受け取った前記物理アドレスと前記各メモリバンクのアドレスとを比較し、一致した前記メモリバンクに対応する前記カウンタのカウンタ値をインクリメントさせて一致した前記メモリバンクの機能を回復させることを特徴とする付記３記載の集積回路。
【００６８】
（付記５）  前記保管部は、ＲＡＭを有していることを特徴とする付記１記載の集積回路。
（付記６）  複数のメモリバンクを備えるメモリを制御する集積回路の制御方法において、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管手段を備えるメモリ管理手段が、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管手段を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管手段の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力し、
制御手段が、前記メモリ管理手段が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する、
ことを特徴とする集積回路の制御方法。
【００６９】
（付記７）  複数のメモリバンクを備えるメモリと、
前記メモリの物理アドレスに関連付けられた仮想アドレスを保管する保管部を備え、前記メモリへの前記仮想アドレスへのアクセス要求に応じて、逐次、前記保管部を参照してアクセス先の前記仮想アドレスが存在するか否かを判断し、存在しないと判断した場合、前記保管部の前記仮想アドレスに対応する物理アドレスの内容を更新した情報を出力するメモリ管理部と、
前記メモリ管理部が出力した前記情報に含まれる前記物理アドレスを備えるメモリバンクを制御する制御部と、
を有することを特徴とする半導体デバイス。
【図面の簡単な説明】
【００７０】
【図１】実施の形態の集積回路の概要を示す図である。
【図２】プロセッサシステムの構成を示す図である。
【図３】ＴＬＢの構成を示す図である。
【図４】メモリの構成を示す図である。
【図５】電力制御指示回路の機能を示すブロック図である。
【図６】命令実行部がメモリアクセス命令を実行したときの処理を示すフローチャートである。
【図７】命令実行部がＴＬＢクリア命令を実行したときの処理を示すフローチャートである。
【図８】第２の実施の形態のプロセッサシステムの電力制御指示回路の構成を示すブロック図である。
【符号の説明】
【００７１】
１  集積回路
２、１４  メモリ
２ａ、１４ａ〜１４ｄ  メモリバンク
３、１１  ＣＰＵ
３ａ  ＣＰＵコア
３ｂ  メモリ管理部
４  制御回路
１０  プロセッサシステム
１２、１２ａ  電力制御指示回路
１３  電力制御回路
１４  メモリ
１５  データバス
３１ｂ  保管部
１１１  命令実行部
１１２  ＭＭＵ
１１２ａ  ＴＬＢ
１２１  電力制御内容記憶部
１２１ａ〜１２１ｄ  メモリバンク用カウンタ
１２２  制御部
１２３  静的電力制御指示部
１２３ａ  レジスタ
１２４ａ〜１２４ｄ  ＯＲ回路
【図１】
2010108381.tif 000003
【図２】
2010108381.tif 000004
【図３】
2010108381.tif 000005
【図４】
2010108381.tif 000006
【図５】
2010108381.tif 000007
【図６】
2010108381.tif 000008
【図７】
2010108381.tif 000009
【図８】
2010108381.tif 000010