(57)【要約】 【課題】複数のプロセッサコアを用いた場合に低消費電力化を図る。【解決手段】メモリシステムは、複数のプロセッサコアで共用されるメモリと、複数のプロセッサコアのメモリに対するアクセスを制御するメモリ制御回路と、複数のプロセッサコア、メモリ、およびメモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、電源制御回路は、複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に複数のプロセッサコアのすべての動作が停止した場合には、メモリおよびメモリ制御回路への電源電圧の供給を停止する。【選択図】図１
2017167960.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセッサコアで共用されるメモリと、
前記複数のプロセッサコアの前記メモリに対するアクセスを制御するメモリ制御回路と、
前記複数のプロセッサコア、前記メモリ、および前記メモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、
前記複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に前記複数のプロセッサコアのすべての動作が停止した場合には、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止するメモリシステム。
【請求項２】
前記メモリは、不揮発メモリであり、
前記電源制御回路は、前記複数のプロセッサコアのすべての動作が停止した場合には、前記メモリ内のデータを前記メモリよりもアクセス優先度の低いメモリに待避させることなく、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止する請求項１に記載のメモリシステム。
【請求項３】
前記伝送回路は、アドレス線、データ線、クロック信号線および制御信号線の経路上に接続されるバッファ、インバータ、フリップフロップおよび論理ゲート回路の少なくとも一つを含む複数の回路素子を有し、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、対応する前記伝送回路上の前記複数の回路素子の少なくとも一部への電源電圧の供給を停止する請求項１または２に記載のメモリシステム。
【請求項４】
前記電源制御回路は、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止した後に、前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する請求項１乃至３のいずれか１項に記載のメモリシステム。
【請求項５】
第１メモリをそれぞれ備える複数のプロセッサコアと、
前記第１メモリよりもアクセス優先度が低く、前記複数のプロセッサコアで共用される第２メモリと、
前記複数のプロセッサコアの前記第２メモリに対するアクセスを制御するメモリ制御回路と、
前記複数のプロセッサコア、前記第２メモリ、および前記メモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、
前記複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に前記複数のプロセッサコアのすべての動作が停止した場合には、前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止するプロセッサシステム。
【請求項６】
前記電源制御回路は、
前記複数のプロセッサコアおよび前記第２メモリを動作させる第１状態と、
前記複数のプロセッサコアに対応して前記第１状態から遷移可能で、対応するプロセッサコアへのクロック信号の入力を遮断する第２状態と、
前記複数のプロセッサコアに対応して前記第２状態から遷移可能で、対応するプロセッサコアの内部に設けられるＰＬＬ（Phase Locked Loop）回路を停止させる第３状態と、
前記複数のプロセッサコアに対応して前記第３状態から遷移可能で、対応するプロセッサコアの動作を停止させる第４状態と、
前記複数のプロセッサコアに対応して前記第４状態から遷移可能で、対応するプロセッサコアに接続された前記伝送回路への電源電圧の供給を停止させる第５状態と、
前記複数のプロセッサコアのすべての動作が停止した後に前記第５状態から遷移可能で、前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止させる第６状態と、
前記第６状態から遷移可能で、前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する第７状態と、を有する請求項５に記載のメモリシステム。
【請求項７】
複数のプロセッサ群を備え、
前記複数のプロセッサ群のそれぞれは、前記複数のプロセッサコアと、前記第２メモリと、前記メモリ制御回路と、前記電源制御回路と、前記伝送回路と、を備え、
前記電源制御回路は、対応するプロセッサ群内の全てのプロセッサコアの動作が停止した場合には、このプロセッサ群内の前記第２メモリを他のプロセッサ群がアクセスするのに必要な回路ブロック以外の回路ブロックへの電源電圧の供給を停止する請求項５に記載のメモリシステム。
【請求項８】
前記電源制御回路は、
前記複数のプロセッサ群における前記複数のプロセッサコアおよび前記第２メモリを動作させる第１状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第１状態から遷移可能で、対応するプロセッサコアへのクロック信号の入力を遮断する第２状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第２状態から遷移可能で、対応するプロセッサコアの内部に設けられるＰＬＬ回路を停止させる第３状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第３状態から遷移可能で、対応するプロセッサコアの動作を停止させる第４状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第４状態から遷移可能で、対応するプロセッサコアに接続された前記伝送回路への電源電圧の供給を停止させる第５状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第５状態から遷移可能で、前記複数のプロセッサ群の少なくとも一部に対応する全てのプロセッサコアへの電源電圧の供給を停止させるとともに、このプロセッサ群内の前記第２メモリを他のプロセッサ群がアクセスするのに必要な回路ブロック以外の回路ブロックへの電源電圧の供給を停止させる第６状態と、
前記第６状態から遷移可能で、前記複数のプロセッサ群における前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止させる第７状態と、
前記第７状態から遷移可能で、前記複数のプロセッサ群における前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する第８状態と、を有する請求項６に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、メモリシステムおよびプロセッサシステムに関する。
【背景技術】
【０００２】
最近のプロセッサシステムでは、複数のプロセッサコアを用いて処理性能を向上させることが一般的になっている。また、メモリアクセスを高速化するために、キャッシュメモリを階層化して、３次キャッシュメモリ以上の高次のキャッシュメモリを設ける場合もある。高次のキャッシュメモリほど、メモリ容量が大きいため、低次のキャッシュメモリは各プロセッサコアに内蔵し、３次以上の高次のキャッシュメモリは、複数のプロセッサコアで共用するのが一般的である。
【０００３】
複数のプロセッサコアを用いたマルチコアシステムは、単一のプロセッサコアを用いたシングルコアシステムよりも、プロセッサコアの数分だけ余計に電力を消費するため、マルチコアシステムでの低消費電力技術が必要となる。
【０００４】
しかしながら、従来は、複数のプロセッサコアのうち一つでも動作していると、複数のプロセッサコアで共用するキャッシュメモリや、このキャッシュメモリのアクセス制御を行うメモリ制御回路には、電源電圧を供給し続けていた。このため、マルチコアシステムでは消費電力をそれほど削減できないという問題があった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国公開公報２０１４／０３０４４７５Ａ１
【特許文献２】国際公開を２０１５／０１５７５６Ａ１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の一実施形態は、複数のプロセッサコアを用いた場合でも、低消費電力化が可能なメモリシステムおよびプロセッサシステムを提供するものである。
【課題を解決するための手段】
【０００７】
本実施形態では、
複数のプロセッサコアで共用されるメモリと、
前記複数のプロセッサコアの前記メモリに対するアクセスを制御するメモリ制御回路と、
前記複数のプロセッサコア、前記メモリ、および前記メモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、
前記複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に前記複数のプロセッサコアのすべての動作が停止した場合には、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止するメモリシステムが提供される。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態によるメモリシステム１を備えたプロセッサシステム２の概略構成を示すブロック図。
【図２】図１のメモリシステム１の内部構成を示すブロック図。
【図３】一時記憶部１２の内部構成の一例を示すブロック図。
【図４】第１の実施形態によるプロセッサシステム２の電源供給状態を示す図。
【図５】第２の実施形態によるプロセッサシステム２の概略構成を示すブロック図。
【図６】第２の実施形態によるプロセッサシステム２の電源供給状態を示す図。
【図７】第２の実施形態によるメモリシステム１内の一時記憶部１２の内部構成を示すブロック図。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら、本発明の実施形態を説明する。
【００１０】
（第１の実施形態）
図１は第１の実施形態によるメモリシステム１を備えたプロセッサシステム２の概略構成を示すブロック図、図２は図１のメモリシステム１の内部構成を示すブロック図である。
【００１１】
図１のプロセッサシステム２は、複数のプロセッサコア３を有するマルチコアシステムである。各プロセッサコア３は、その内部に、キャッシュメモリを内蔵している。各プロセッサコア３が内蔵するキャッシュメモリは、メモリシステム１の中でアクセス優先度が最も高い１次キャッシュメモリ（以下、Ｌ１キャッシュ）を含んでいる。各プロセッサコア３が内蔵するキャッシュメモリは、Ｌ１キャッシュだけとは限らず、Ｌ１キャッシュの次にアクセス優先度が高い２次キャッシュ（以下、Ｌ２キャッシュ）などの高次のキャッシュメモリを含んでいてもよい。以下では、各プロセッサコア３がＬ１キャッシュとＬ２キャッシュを内蔵する例を説明する。Ｌ１キャッシュとＬ２キャッシュは、例えばＳＲＡＭ（Static Random Access Memory）等の高速の揮発メモリである。
【００１２】
図１のプロセッサシステム２は、４つのプロセッサコア３を有する例を示しているが、プロセッサコア３の数には特に制限はない。図１のプロセッサシステム２内の各プロセッサコア３は、メモリシステム１に接続されている。このメモリシステム１は、各プロセッサコア３に内蔵されたキャッシュメモリよりも高次のキャッシュメモリと、高次のキャッシュメモリに対するアクセス制御を行うメモリ制御回路とを含んでいる。メモリシステム１の他に、不図示のメインメモリが設けられている。各プロセッサコア３からアクセス要求のあったデータが、メモリシステム１内の高次のキャッシュメモリを含めてどの階層のキャッシュメモリにも存在しない場合は、メインメモリへのアクセスが行われる。
【００１３】
図１のメモリシステム１は、図２に詳細なブロック構成を示すように、ＬＬＣ（Last Level Cache memory）１１と、一時記憶部１２と、メインメモリコントローラ１３と、バスコントローラ１４と、チップ間コントローラ１５と、第１電源コントローラ１６と、第２電源コントローラ１７とを有する。一時記憶部１２、メインメモリコントローラ１３、バスコントローラ１４、およびチップ間コントローラ１５は、メモリ制御回路を構成する。第１電源コントローラ１６と第２電源コントローラ１７は、電源制御回路を構成する。
【００１４】
ＬＬＣ１１は、プロセッサシステム２内の階層化されたキャッシュメモリのうち、アクセス優先度が最も低い最高次のキャッシュメモリである。以下では、ＬＬＣ１１が３次キャッシュメモリ（以下、Ｌ３キャッシュ）である例を説明するが、ＬＬＣ１１は、Ｌ３キャッシュより高次のキャッシュメモリでもよい。ＬＬＣ１１が４次以降の高次のキャッシュメモリの場合は、メモリシステム１内に、ＬＬＣ１１よりも低次のキャッシュメモリが設けられることになる。ＬＬＣ１１に格納されたデータは、最終的には不図示のメインメモリに書き戻される。
【００１５】
ＬＬＣ１１は、Ｌ１キャッシュやＬ２キャッシュなどの低次のキャッシュメモリよりも、メモリ容量が大きい。本実施形態によるＬＬＣ１１は、例えばＭＲＡＭ（Magnetoresistive Random Access Memory）等の不揮発メモリで構成されている。ＬＬＣ１１は、高速であるほど望ましいため、ＭＲＡＭの中でも動作速度が速いＳＴＴ（Spin Transfer Torque）−ＭＲＡＭが望ましい。なお、ＬＬＣ１１は必ずしもＭＲＡＭに限定されるわけではなく、他の不揮発メモリで構成してもよい。
【００１６】
一時記憶部１２は、各プロセッサコア３とＬＬＣ１１との間で送受されるデータを一時的に記憶する。一時記憶部１２の内部構成は後述する。メインメモリコントローラ１３は、メインメモリに対するアクセス制御を行う。バスコントローラ１４は、各プロセッサコア３とＬＬＣ１１との間のバスを制御する。バスは、アドレス線、データ線、クロック信号線、制御信号線などで構成される。チップ間コントローラ１５は、例えばプロセッサシステム２とは別個のチップ（例えば、描画チップなど）との間で送受されるデータを制御する。
【００１７】
第１電源コントローラ１６は、メモリシステム１内の電源管理を行う。第２電源コントローラ１７は、メモリシステム１を含めたプロセッサシステム２内の各部の電源管理を行い、各プロセッサコア３とメモリシステム１を複数の電源供給状態のいずれかに遷移させる。第１電源コントローラ１６と第２電源コントローラ１７は、統合して電源制御回路としても構わない。本実施形態では、従来と同様の電源管理処理は第１電源コントローラ１６で行い、本実施形態に特徴的な電源管理処理を第２電源コントローラ１７で行うものとする。
【００１８】
図３は一時記憶部１２の内部構成の一例を示すブロック図である。一時記憶部１２は、各プロセッサコア３ごとに設けられる複数のフリップフロップ群（以下、Ｆ／Ｆ群）２１と、これらＦ／Ｆ群２１の保持データのいずれかを選択するマルチプレクサ（ＭＵＸ）２２とを有する。Ｆ／Ｆ群２１は、例えば、各プロセッサコア３からのデータを保持する。この他、Ｆ／Ｆ群２１は、各プロセッサコア３からのアドレスなどを保持してもよい。
【００１９】
また、図３では省略しているが、アドレス線、データ線、クロック信号線、および制御信号線の経路上には、バッファやインバータ、論理ゲート、フリップフロップなどの回路素子が必要に応じて接続されている。これらの回路素子に電源電圧を供給するか否かは、第２電源コントローラ１７によって制御される。本明細書では、各プロセッサコア３と一時記憶部１２との間に配置される、アドレス線、データ線、クロック信号線、および制御信号線と、これら信号線上のバッファ等の各種回路素子とを含めて、バス伝送回路２３と呼ぶ。第２電源コントローラ１７は、バス伝送回路２３の電源電圧を制御する。バス伝送回路２３は、各プロセッサコア３ごとに設けられており、第２電源コントローラ１７は、各プロセッサコア３に応じたバス伝送回路２３に電源電圧を供給するか否かを、各プロセッサコア３ごとに制御する。
【００２０】
一時記憶部１２内のマルチプレクサ２２は、複数のＦ／Ｆ群２１のうち、いずれか一つのプロセッサコア３に接続されたＦ／Ｆ群２１の保持データを選択する。これにより、選択されたＦ／Ｆ群２１を介して、複数のプロセッサコア３のうち一つがＬＬＣ１１にアクセスを行うことになる。このマルチプレクサ２２に電源電圧を供給するか否かも、第２電源コントローラ１７によって制御される。
【００２１】
図４は第１の実施形態によるプロセッサシステム２の電源供給状態を示す図である。図４に示すように、本実施形態によるプロセッサシステム２は、第１〜第７状態を有する。第１〜第７状態の遷移は、第２電源コントローラ１７によって制御される。第２電源コントローラ１７は、各プロセッサコア３の動作状態を監視しながら、プロセッサシステム２を第１〜第７状態のいずれかに設定する。プロセッサシステム２内で動作しているプロセッサコア３の数が次第に減少していく場合は、第１状態から順に遷移して、最終的に第７状態に至る。
【００２２】
第１状態は、複数のプロセッサコア３とメモリシステム１が正常に動作している状態である。この場合、第２電源コントローラ１７は、複数のプロセッサコア３とメモリシステム１の全体に電源電圧を供給する。
【００２３】
第２状態は、複数のプロセッサコア３のそれぞれごとに第１状態から遷移可能であり、対応するプロセッサコア３へのクロック信号の入力を遮断する。具体的には、例えば、クロック信号を伝送する不図示のクロックバッファやフリップフロップなどの回路素子への電源電圧の供給を停止して、クロック信号が対応するプロセッサコア３に供給されないようにする。
【００２４】
第３状態は、複数のプロセッサコア３のそれぞれごとに第２状態から遷移可能であり、対応するプロセッサコア３の内部に設けられる不図示のＰＬＬ（Phase Locked Loop）回路を停止させる。ＰＬＬ回路は、外部から入力されたクロック信号を用いて、プロセッサコア３のシステムクロック信号を生成する回路である。第２状態でクロック信号を停止しているため、ＰＬＬ回路に電源電圧を供給する必要がないことから、第３状態ではＰＬＬ回路への電源電圧の供給を停止して、ＰＬＬ回路を停止させる。
【００２５】
第４状態は、複数のプロセッサコア３のそれぞれごとに第３状態から遷移可能であり、対応するプロセッサコア３を停止させる。第３状態で、ＰＬＬ回路を停止させているため、プロセッサコア３に電源電圧を供給する必要がないことから、第４状態では、対応するプロセッサコア３への電源電圧の供給を停止して、プロセッサコア３を停止させる。
【００２６】
第５状態は、複数のプロセッサコア３のそれぞれごとに第４状態から遷移可能であり、対応するプロセッサコア３に接続されたバス伝送回路２３への電源電圧の供給を停止させる。これにより、第４状態で停止させたプロセッサコア３に接続されるアドレス線、データ線、クロック信号線、および制御信号線の各信号線上の各種回路素子には電源電圧は供給されなくなる。
【００２７】
第６状態は、全プロセッサコア３が停止した後に第５状態から遷移可能で、ＬＬＣ１１を含めたメモリシステム１内の全回路ブロックへの電源電圧の供給を停止させる。全プロセッサコア３が停止した場合には、メモリシステム１に電源電圧を供給する必要はない。そこで、第６状態では、プロセッサシステム２内のメモリシステム１への電源電圧の供給を停止する。本実施形態のＬＬＣ１１は、ＭＲＡＭ等の不揮発メモリで構成されているため、ＬＬＣ１１への電源電圧の供給を停止しても、ＬＬＣ１１内のデータが消去されるおそれはない。よって、ＬＬＣ１１がＳＲＡＭ（Static Random Access Memory）で構成されている場合のように、ＬＬＣ１１への電源電圧の供給を停止する前に、ＬＬＣ１１内のダーティなデータをメインメモリに書き戻す、いわゆるフラッシュ処理を行う必要はないことから、第６状態の処理を簡易化できる。
【００２８】
第７状態は、第６状態から遷移可能で、複数のプロセッサコア３とメモリシステム１に入力される全入力信号の電圧レベルを接地レベルに設定する。各入力信号は、バッファやインバータ、フリップフロップなどの回路素子を経由して、各プロセッサコア３やメモリシステム１に入力される。この第７状態では、各入力信号の信号経路上の回路素子への電源電圧の供給を停止する。これにより、全入力信号は強制的に接地レベルになり、プロセッサシステム２全体が停止状態となる。
【００２９】
図４では、第１〜第７状態の電源供給状態を設ける例を示したが、第１〜第７状態のすべてが必須であるわけではなく、第１〜第７状態のうちの一部の状態だけを設けてもよいし、第１〜第７状態のうちの一部の状態と、他の状態とを組み合わせてもよい。あるいは、第１〜第７状態をさらに細かく多数の状態に分けてもよい。ただし、少なくとも第５状態は設けるのが望ましい。第５状態を設けることで、一部のプロセッサコア３を停止させたときに、このプロセッサコア３に接続されたバス伝送回路２３への電源電圧の供給を停止できるため、他のプロセッサコア３の動作に影響を与えることなく、停止したプロセッサコア３に関連する回路ブロックを停止させることができ、より消費電力の削減が図れる。また、第６状態は、ＬＬＣ１１を不揮発メモリにしたことで実現できるものである。ＬＬＣ１１が不揮発メモリであることから、ＬＬＣ１１への電源電圧の供給を停止しても、ＬＬＣ１１のフラッシュを行わなくても、ＬＬＣ１１内のデータは保持される。よって、第６状態では、各プロセッサコア３がＬＬＣ１１にアクセスしない場合は、積極的にＬＬＣ１１への電源電圧の供給を停止し、またＬＬＣ１１のフラッシュ動作も省略することで、状態遷移に要する時間を短縮できる。
【００３０】
このように、第１の実施形態では、プロセッサシステム２内の一部のプロセッサコア３のみが停止した場合には、停止したプロセッサコア３に関連した回路ブロックへの電源電圧の供給を停止するため、動作しているプロセッサコア３の数に応じて、段階的にきめ細かく省電力動作を行うことができる。これにより、メモリシステム１およびプロセッサシステム２の消費電力を削減できる。
【００３１】
（第２の実施形態）
第２の実施形態によるプロセッサシステム２は、複数のプロセッサコア３とメモリシステム１とを一つのプロセッサ群として、複数のプロセッサ群を備えるものである。
【００３２】
図５は第２の実施形態によるプロセッサシステム２の概略構成を示すブロック図である。図５のプロセッサシステム２は、第１の実施形態と同様の構成の４つのプロセッサコア３と１つのメモリシステム１を含むプロセッサ群２５を２つ備えている。各プロセッサ群２５は、相互にデータを送受することができる。図５では、２つのプロセッサ群２５を有するが、プロセッサ群２５の数には特に制限はない。なお、各プロセッサ群２５に含まれるプロセッサコア３の数は４つには限定されない。また、各プロセッサ群２５に含まれるプロセッサコア３の数は同じでもよいし、異なっていてもよい。
【００３３】
本実施形態では、各プロセッサ群２５ごとに、別個にＬＬＣ１１が設けられている。ただし、あるプロセッサ群２５に対応するＬＬＣ１１に対しては、他のプロセッサ群２５からアクセスすることができるようにしている。よって、あるプロセッサ群２５は、任意のＬＬＣ１１に対してデータの読み出しと書込みを行うことができる。あるプロセッサ群２５が、対応するＬＬＣ１１ではなく、別のＬＬＣ１１にアクセスしたい場合、各メモリシステム１内のチップ間コントローラ１５同士で、アクセスするべきデータやアドレスなどを送受する。チップ間コントローラ１５は、対応するプロセッサ群２５ではなく、他のプロセッサ群２５からのアクセス要求があると、そのアクセス要求に従って、対応するＬＬＣ１１にアクセスして、データの読み出しや書込みを行い、その結果をアクセス要求をしたチップ間コントローラ１５に返す。これにより、ＬＬＣ１１を有効利用することができる。なお、本実施形態では、メモリシステム１内にＬＬＣ１１以外のキャッシュメモリが存在する場合には、そのキャッシュメモリも、ＬＬＣ１１と同様に、複数のプロセッサ群２５で共用することができる。
【００３４】
図６は第２の実施形態によるプロセッサシステム２の電源供給状態を示す図である。図６に示すように、本実施形態によるプロセッサシステム２は、第１〜第８状態を有する。第１〜第５状態は、図４と同様である。
【００３５】
図６の第６状態は、複数のプロセッサ群２５内の任意のプロセッサ群２５において第５状態から遷移可能で、任意のプロセッサ群２５内の全プロセッサコア３への電源供給を停止するとともに、任意のプロセッサ群２５のメモリシステム１内のＬＬＣ１１に関連する回路ブロック以外の回路ブロックへの電源電圧の供給を停止する。第６状態は、任意のプロセッサ群２５における全プロセッサコア３が停止した場合には、メモリシステム１内のＬＬＣ１１に関連する回路ブロックのみに電源電圧を供給する。これにより、停止していない他のプロセッサ群２５は、継続してＬＬＣ１１にアクセスすることができ、他のプロセッサ群２５の動作に影響を与えることなく、消費電力の削減を図れる。
【００３６】
なお、メモリシステム１内のＬＬＣ１１に関連する回路ブロックとは、例えば、図２における一時記憶部１２、第１電源コントローラ１６、チップ間コントローラ１５である。これらの回路ブロックは、他のプロセッサ群２５がＬＬＣ１１にアクセスする際に利用するため、電源供給は維持される。一方、その他のメインメモリコントローラ１３とバスコントローラ１４への電源供給は遮断される。
【００３７】
第７状態は、図４の第６状態と同様である。すなわち、第７状態は、第６状態から遷移可能で、複数のプロセッサ群２５のそれぞれにおけるＬＬＣ１１とメモリシステム１への電源電圧の供給を停止する。
【００３８】
第８状態は、図４の第７状態と同様である。すなわち、第８状態は、第６状態から遷移可能で、複数のプロセッサコア３とメモリシステム１に入力される全入力信号の電圧レベルを接地レベルに設定する。
【００３９】
本実施形態によるプロセッサシステム２は、図６に示した第１〜第８状態のすべてを備えている必要はないが、第６状態は特徴的なものであるため、備えているのが望ましい。
【００４０】
図７は第２の実施形態によるメモリシステム１内の一時記憶部１２の内部構成を示すブロック図である。図７の一時記憶部１２は、各プロセッサコア３ごとに設けられるＦ／Ｆ群２１と、マルチプレクサ２２とに加えて、セレクタ２４を有する。セレクタ２４は、マルチプレクサ２２の出力信号と、チップ間コントローラ１５からの信号とのいずれかを選択可能である。例えば、あるプロセッサ群２５における全プロセッサコア３が停止した場合には、第６状態では、このプロセッサ群２５に対応するマルチプレクサ２２への電源電圧の供給を停止して、マルチプレクサ２２を停止させる。ところが、セレクタ２４への電源電圧の供給は維持するため、チップ間コントローラ１５を介して、他のプロセッサ群２５はＬＬＣ１１にアクセス可能となる。
【００４１】
このように、第２の実施形態では、プロセッサシステム２が複数のプロセッサ群２５を備えている場合には、各プロセッサ群２５の動作状況に応じて、各プロセッサ群２５への電源供給を段階的に切り替えることができる。例えば、あるプロセッサ群２５内の全プロセッサコア３が停止している場合には、他のプロセッサ群２５の動作の影響を受けない範囲で、あるプロセッサ群２５内の一部の回路ブロックへの電源電圧の供給を停止することで、低消費電力化を図ることができる。
【００４２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４３】
１  メモリシステム、２  プロセッサシステム、３  プロセッサコア、１１  ＬＬＣ、１２  一時記憶部、１３  メインメモリコントローラ、１４  バスコントローラ、１５  チップ間コントローラ、１６  第１電源コントローラ、１７  第２電源コントローラ、２１  Ｆ／Ｆ群、２２  マルチプレクサ、２３  バス伝送回路、２４  セレクタ、２５  プロセッサ群
【図１】
2017167960.tif 000003
【図２】
2017167960.tif 000004
【図３】
2017167960.tif 000005
【図４】
2017167960.tif 000006
【図５】
2017167960.tif 000007
【図６】
2017167960.tif 000008
【図７】
2017167960.tif 000009
【手続補正書】
【提出日】平成29年3月6日(2017.3.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のプロセッサコアで共用されるメモリと、
前記複数のプロセッサコアの前記メモリに対するアクセスを制御するメモリ制御回路と、
前記複数のプロセッサコア、前記メモリ、および前記メモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、
前記複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に前記複数のプロセッサコアのすべての動作が停止した場合には、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止するメモリシステム。
【請求項２】
前記メモリは、不揮発メモリであり、
前記電源制御回路は、前記複数のプロセッサコアのすべての動作が停止した場合には、前記メモリ内のデータを前記メモリよりもアクセス優先度の低いメモリに待避させることなく、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止する請求項１に記載のメモリシステム。
【請求項３】
前記伝送回路は、アドレス線、データ線、クロック信号線および制御信号線の経路上に接続されるバッファ、インバータ、フリップフロップおよび論理ゲート回路の少なくとも一つを含む複数の回路素子を有し、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、対応する前記伝送回路上の前記複数の回路素子の少なくとも一部への電源電圧の供給を停止する請求項１または２に記載のメモリシステム。
【請求項４】
前記電源制御回路は、前記メモリおよび前記メモリ制御回路への電源電圧の供給を停止した後に、前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する請求項１乃至３のいずれか１項に記載のメモリシステム。
【請求項５】
第１メモリをそれぞれ備える複数のプロセッサコアと、
前記第１メモリよりもアクセス優先度が低く、前記複数のプロセッサコアで共用される第２メモリと、
前記複数のプロセッサコアの前記第２メモリに対するアクセスを制御するメモリ制御回路と、
前記複数のプロセッサコア、前記第２メモリ、および前記メモリ制御回路のそれぞれに電源電圧を供給するか否かを制御する電源制御回路と、
前記複数のプロセッサコアのそれぞれに対応して設けられ、アドレス、データ、クロック信号および制御信号を伝送する伝送回路と、を備え、
前記電源制御回路は、前記複数のプロセッサコアのうち少なくとも一部のプロセッサコアの動作が停止した場合には、停止したプロセッサコアに対応する伝送回路への電源電圧の供給を停止し、その後に前記複数のプロセッサコアのすべての動作が停止した場合には、前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止するプロセッサシステム。
【請求項６】
前記電源制御回路は、
前記複数のプロセッサコアおよび前記第２メモリを動作させる第１状態と、
前記複数のプロセッサコアに対応して前記第１状態から遷移可能で、対応するプロセッサコアへのクロック信号の入力を遮断する第２状態と、
前記複数のプロセッサコアに対応して前記第２状態から遷移可能で、対応するプロセッサコアの内部に設けられるＰＬＬ（Phase Locked Loop）回路を停止させる第３状態と、
前記複数のプロセッサコアに対応して前記第３状態から遷移可能で、対応するプロセッサコアの動作を停止させる第４状態と、
前記複数のプロセッサコアに対応して前記第４状態から遷移可能で、対応するプロセッサコアに接続された前記伝送回路への電源電圧の供給を停止させる第５状態と、
前記複数のプロセッサコアのすべての動作が停止した後に前記第５状態から遷移可能で、前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止させる第６状態と、
前記第６状態から遷移可能で、前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する第７状態と、を有する請求項５に記載のプロセッサシステム。
【請求項７】
複数のプロセッサ群を備え、
前記複数のプロセッサ群のそれぞれは、前記複数のプロセッサコアと、前記第２メモリと、前記メモリ制御回路と、前記電源制御回路と、前記伝送回路と、を備え、
前記電源制御回路は、対応するプロセッサ群内の全てのプロセッサコアの動作が停止した場合には、このプロセッサ群内の前記第２メモリを他のプロセッサ群がアクセスするのに必要な回路ブロック以外の回路ブロックへの電源電圧の供給を停止する請求項５に記載のプロセッサシステム。
【請求項８】
前記電源制御回路は、
前記複数のプロセッサ群における前記複数のプロセッサコアおよび前記第２メモリを動作させる第１状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第１状態から遷移可能で、対応するプロセッサコアへのクロック信号の入力を遮断する第２状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第２状態から遷移可能で、対応するプロセッサコアの内部に設けられるＰＬＬ回路を停止させる第３状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第３状態から遷移可能で、対応するプロセッサコアの動作を停止させる第４状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第４状態から遷移可能で、対応するプロセッサコアに接続された前記伝送回路への電源電圧の供給を停止させる第５状態と、
前記複数のプロセッサ群における前記複数のプロセッサコアに対応して前記第５状態から遷移可能で、前記複数のプロセッサ群の少なくとも一部に対応する全てのプロセッサコアへの電源電圧の供給を停止させるとともに、このプロセッサ群内の前記第２メモリを他のプロセッサ群がアクセスするのに必要な回路ブロック以外の回路ブロックへの電源電圧の供給を停止させる第６状態と、
前記第６状態から遷移可能で、前記複数のプロセッサ群における前記第２メモリおよび前記メモリ制御回路への電源電圧の供給を停止させる第７状態と、
前記第７状態から遷移可能で、前記複数のプロセッサ群における前記メモリ制御回路に入力される入力信号の電圧レベルを接地レベルに設定する第８状態と、を有する請求項７に記載のプロセッサシステム。