(57)【要約】      （修正有）【課題】必要な電力が一時的に上昇することを避けるために、外部メモリーを用いる処理ルーチンを実行するための方法を提供する。【解決手段】処理ルーチンは複数回の外部メモリーへのアクセスを必要とする。外部メモリーに連続してアクセスする前もって決められている回数に基づいて、外部メモリーへのアクセスを分配するステップを有している。さらに外部メモリーに前もって決められている回数だけ連続してアクセスした後、前もって決められている時間にわたって前記外部メモリーへのアクセスを一時的に中断させるステップを有している。【選択図】図９
2014013605.tif 000002
【特許請求の範囲】
【請求項１】
外部メモリーを用い、外部メモリーへのアクセスを複数回必要とする処理ルーチンを実行する方法であって、
前記外部メモリーに連続してアクセスする前もって決められている回数に基づいて、前記外部メモリーへのアクセスを分配するステップを有している、方法。
【請求項２】
前記外部メモリーに連続してアクセスする回数を最小限に抑えるように前記外部メモリーへのアクセスを分配するステップをさらに有している、請求項１に記載の方法。
【請求項３】
前記外部メモリーへのアクセスを実質的に均等に分配するステップをさらに有している、請求項１に記載の方法。
【請求項４】
前記外部メモリーへのアクセスを分配するステップが、前記外部メモリーに前もって決められている回数だけ連続してアクセスした後、前もって決められている時間にわたって前記外部メモリーへのアクセスを一時的に中断させるステップを有している、請求項１に記載の方法。
【請求項５】
前記処理ルーチンが内部メモリーをさらに用いるものであり、前記外部メモリーへのアクセスを分配するステップが、前記外部メモリーに前もって決められている回数だけアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ前記外部メモリーへのアクセスに割り込ませることを含む、請求項１に記載の方法。
【請求項６】
前記外部メモリーに連続してアクセスする前もって決められている回数が、利用可能なエネルギー供給量に基づいたものである、請求項１に記載の方法。
【請求項７】
外部メモリーを用いる処理ルーチンを実行する方法であって、
利用可能なエネルギー供給量を求めるステップと、
前記利用可能なエネルギー供給量に基づいて前記外部メモリーにアクセスするステップと
を有している、方法。 
【請求項８】
前記利用可能なエネルギー供給量がしきい値を超えている場合にのみ、前記外部メモリーにアクセスするステップをさらに有している、請求項７に記載の方法。
【請求項９】
前記処理ルーチンが内部メモリーをさらに用いるものであり、前記方法が、前記利用可能なエネルギー供給量がしきい値を超えていない場合に前記内部メモリーにアクセスするステップをさらに有している、請求項７に記載の方法。
【請求項１０】
前記利用可能なエネルギー供給量がしきい値を超えていない場合に前記外部メモリーへのアクセスを分配するステップをさらに有している、請求項７に記載の方法。
【請求項１１】
前記外部メモリーに連続してアクセスする前もって決められている回数に基づいて、前記外部メモリーへのアクセスを分配するステップをさらに有している、請求項１０に記載の方法。
【請求項１２】
前記外部メモリーに連続してアクセスする前もって決められている回数が、前記利用可能なエネルギー供給レベルによって少なくとも部分的に決められる、請求項１１に記載の方法。
【請求項１３】
前記処理ルーチンが内部メモリーをさらに用いるものであり、前記方法が、前記外部メモリーに前もって決められている回数だけ連続してアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ前記外部メモリーへのアクセスに割り込ませることにより、前記外部メモリーへのアクセスを分配するステップをさらに有している、請求項１０に記載の方法。
【請求項１４】
外部メモリー（１０３）と、
前記外部メモリー（１０３）を用いる処理ルーチンを実行するように構成されたプロセッサ（１０１）とを備え、
前記プロセッサ（１０１）が、前記外部メモリーに連続してアクセスする前もって決められている回数に基づいて外部メモリーへのアクセスを分配するように構成されてなる、処理システム（１００）。 
【請求項１５】
前記プロセッサ（１０１）が、前記外部メモリーを連続してアクセスする回数を最小限に抑えるように、前記外部メモリーへのアクセスを分配するようにさらに構成されてなる、請求項１４に記載の処理システム（１００）。
【請求項１６】
前記プロセッサ（１０１）が、前記外部メモリーへのアクセスを実質的に均等に分配するようにさらに構成されてなる、請求項１４に記載の処理システム（１００）。
【請求項１７】
前記プロセッサ（１０１）が、前記外部メモリーに前もって決められている回数だけ連続してアクセスした後、前もって決められている時間にわたって前記外部メモリーへのアクセスを一時的に中断させるように構成されてなる、請求項１４に記載の処理システム（１００）。
【請求項１８】
内部メモリー（１０２）をさらに備えており、前記プロセッサ（１０１）が、前記外部メモリーに前もって決められている回数だけ連続してアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ前記外部メモリー（１０３）へのアクセスに割り込ませることにより、前記外部メモリーへのアクセスを分配するようにさらに構成されてなる、請求項１４に記載の処理システム（１００）。
【請求項１９】
前記外部メモリーに連続してアクセスする前もって決められている回数が、利用可能なエネルギー供給量に基づいたものである、請求項１４に記載の処理システム（１００）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理システムに関するものであり、とくに処理ルーチンを実行しながら外部メモリーへのアクセスを制御する方法に関するものである。
【背景技術】
【０００２】
処理システムは、当該技術分野において一般的に知られており、さまざまなデバイスに用いられている。一部の処理システムは、処理システムのデータおよび／またはインストラクションをすべて供給する内部メモリーを備えている。しかしながら、内部メモリーには容量および機能に制限があるため、状況によっては、処理システムを外部メモリーへ接続して内部メモリーの格納スペースを増大させるようになっている場合もある。これに加えて、外部メモリーを用いることにより、複数の処理システムがメモリーにアクセスすることができるようになるため、より高い柔軟性が提供されることとなる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
外部メモリーを用いる欠点は、外部メモリーへのアクセスが、内部メモリーへのアクセスに必要とされるよりも多くの電力を通常必要とし、また状況によっては、長時間かかる場合もあるということである。したがって、処理システムが電力および／または時間の制限下にある状況では、外部メモリーへのアクセスを最小限に抑えようとする動機が働く。しかしながら、データおよび／またはインストラクションを内部メモリーにすべて収納させることが可能ではない場合もあるため、外部メモリーがしばしば必要とされる。
【０００４】
従来の処理システムでは、外部メモリーは集中的に（バースト）アクセスされていた。換言すれば、大きなブロックの外部メモリーが実質的に連続的にアクセスされていた。このことは、処理システムのエネルギー需要量を急上昇（スパイク）させることになる。処理システムがエネルギー制限下にないような環境では、このタイプのメモリーへのアクセスは適切といえる。しかしながら、電力制限がある場合、たとえば、処理システムに２線式ループを通じて電力が供給されている場合、必要な電力が急上昇すると、処理システムと電力源を共有している構成部品に対して悪い影響を及ぼす場合がある。というのは、処理システムへ送られる電力は、２線式ループ上で送られている信号によって部分的に制限されるからである。ここで、２線式ループの実施形態は例示のみを意図したものであって、本発明を制限するものではない。処理システムに送られる電力が制限されているような状況は他にも数多くある。従来の処理システムは総合的な電力消費量を削減させるように試みられているが、このことが常に適切な解決策であるというわけではない。というのは、総合的な電力消費量が削減されたとしても、電力消費量が一時的に上昇するとシステムに対して悪い影響を与えうるからである。
【０００５】
したがって、本発明は、外部メモリーにアクセスする制御を行いながら処理ルーチンを実行する方法を提供するものである。
【課題を解決するための手段】
【０００６】
本発明のある態様によれば、外部メモリーを用い、外部メモリーへのアクセスを複数回必要とする処理ルーチンを実行する方法であって、外部メモリーに連続してアクセスする前もって決められている回数に基づいて、外部メモリーへのアクセスを分配するステップを有している。
【０００７】
好ましくは、斯かる方法は、外部メモリーに連続してアクセスする回数を最小限に抑え
るように、外部メモリーへのアクセスを分配するステップをさらに有している。
【０００８】
好ましくは、斯かる方法は、外部メモリーへのアクセスを実質的に均等に分配するステップをさらに有している。
【０００９】
好ましくは、外部メモリーへのアクセスを分配するステップは、外部メモリーに前もって決められている回数だけ連続してアクセスした後、前もって決められている時間にわたって外部メモリーへのアクセスを一時的に中断させることを含んでいる。
【００１０】
好ましくは、処理ルーチンは内部メモリーをさらに用いるものであり、外部メモリーへのアクセスを分配するステップは、外部メモリーに前もって決められている回数だけアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ外部メモリーへのアクセスに割り込ませることを含んでいる。
【００１１】
好ましくは、外部メモリーに連続してアクセスする前もって決められている回数は、利用可能なエネルギー供給量に基づいたものである。
【００１２】
本発明の他の態様によれば、外部メモリーを用いる処理ルーチンを実行する方法であって、利用可能なエネルギー供給量を求めるステップと、利用可能なエネルギー供給量に基づいて、外部メモリーにアクセスするステップとを有している。
【００１３】
好ましくは、斯かる方法は、利用可能なエネルギー供給量がしきい値を超えている場合にのみ外部メモリーにアクセスするステップをさらに有している。
【００１４】
好ましくは、処理ルーチンは内部メモリーをさらに用いるものであり、斯かる方法は、利用可能なエネルギー供給量がしきい値を超えていない場合に内部メモリーにアクセスするステップをさらに有している。
【００１５】
好ましくは、斯かる方法は、利用可能なエネルギー供給量がしきい値を超えていない場合に外部メモリーへのアクセスを分配するステップをさらに有している。
【００１６】
好ましくは、斯かる方法は、外部メモリーに連続してアクセスする前もって決められている回数に基づいて、外部メモリーへのアクセスを分配するステップをさらに有している。
【００１７】
好ましくは、外部メモリーに連続してアクセスする前もって決められている回数は、利用可能なエネルギー供給レベルによって少なくとも部分的に決められる。
【００１８】
好ましくは、処理ルーチンは内部メモリーをさらに用いており、斯かる方法は、外部メモリーに前もって決められている回数だけ連続してアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ外部メモリーへのアクセスに割り込ませることにより、外部メモリーへのアクセスを分配するステップをさらに有している。
【００１９】
本発明の他の態様によれば、処理システムは、外部メモリーと、外部メモリーを用いる処理ルーチンを実行するように構成されたプロセッサとを備えており、プロセッサは、外部メモリーに連続してアクセスする前もって決められている回数に基づいて外部メモリーへのアクセスを分配するように構成されている。
【００２０】
好ましくは、プロセッサは、外部メモリーに連続してアクセスする回数を最小限に抑えるよう、外部メモリーへのアクセスを分配するようにさらに構成されている。
【００２１】
好ましくは、プロセッサは、外部メモリーへのアクセスを実質的に均一に分配するようにさらに構成されている。
【００２２】
好ましくは、プロセッサは、外部メモリーに前もって決められている回数だけ連続してアクセスした後、前もって決められている時間にわたって外部メモリーへのアクセスを一時的に中断させるように構成されている。
【００２３】
好ましくは、処理システムは、内部メモリーをさらに備えており、プロセッサは、外部メモリーに前もって決められている回数だけアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ外部メモリーへのアクセスへ割り込ませることにより、外部メモリーへのアクセスを分配するようにさらに構成されている。
【００２４】
好ましくは、外部メモリーに連続してアクセスする前もって決められている回数は、利用可能なエネルギー供給量に基づくものである。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係る処理システム１００を示す図である。
【図２】メモリーにアクセスする間の処理システムのエネルギー消費量を示すグラフである。
【図３】従来技術における理システムのメモリーへのアクセスを示す図である。
【図４】従来技術における処理システムのエネルギー消費量を示すグラフである。
【図５】本発明の実施形態に係る処理システムのメモリーへのアクセスを示す図である。
【図６】本発明の実施形態に係る処理システムのメモリーへのアクセスを示す図である。
【図７】本発明の実施形態に係るメータ電子機器の電力消費量を示すグラフである。
【図８】本発明の実施形態に係る処理システムのメモリーへのアクセスを示す図である。
【図９】本発明の実施形態に係るメータ電子機器の電力消費量を示すグラフである。
【発明を実施するための形態】
【００２６】
図１〜図９および以下の記載には、本発明の最良のモードを製作するおよび用いる方法を当業者に教示するための具体的な実施形態が示されている。本発明の原理を教示するために、従来技術の一部が単純化または省略されている。当業者にとって明らかなように、これらの実施形態の変形例も本発明の技術範囲内に含まれる。当業者にとって明らかなように、以下の記載の特徴部分をさまざまな方法で組み合わせて本発明の複数の変形例を形成することができる。したがって、本発明は、以下に記載した特定の実施形態に限定されるのではなく、特許請求の範囲およびその均等物によってのみに限定される。
【００２７】
図１は、本発明の一実施形態に係る処理システム１００を示している。処理システム１００は、電力源１０４へ接続されているプロセッサ１０１を備えている。電力源１０４は、電力が無制限に供給される電力源であってもよいし、または、たとえば約４ｍＡと約２０ｍＡとの間の電流の提供に制限されている２線式ループのように電力の供給が制限されている電力源であってもよい。したがって、本発明の一実施形態によれば、処理システム１００は電力の供給が制限された状態で動作するようになっている。プロセッサ１０１は、１つ以上の処理ルーチンを実行することにより処理システム１００を動作させるようになっていてもよい。処理ルーチンには、インストラクションおよび／またはデータの読み込みおよび／または書き込みが含まれていてもよい。プロセッサ１０１は、汎用コンピュータ、マイクロプロセッシングシステム、論理回路、デジタルシグナルプロセッサ、また
は他の汎用処理デバイスもしくはカスタマイズされた処理デバイスであってもよい。プロセッサ１０１は、複数の処理デバイスの間に分散されてもよい。プロセッサ１０１は、内部メモリー１０２および外部メモリー１０３の如きいかなるタイプの集積されたまたは独立した電子記憶媒体を有していてもよい。このように、プロセッサ１０１によって実行される処理ルーチンは、インストラクションおよび／またはデータの如き情報を内部メモリー１０２および外部メモリー１０３の中に格納することにより内部メモリー１０２、外部メモリー１０３またはその両方を利用するようになっていてもよい。さらに、処理システム１００はインタフェース１０５を有していてもよい。インタフェース１０５は、当該技術において一般的に知られているいかなるタイプの表示装置または入出力機構であってもよい。
【００２８】
メモリー１０２、１０３は、データ、ソフトウェアルーチン、定数値および変数値を格納することができる。いうまでもなく、プロセッサ１０１がメモリー１０２、１０３から情報を読み込んだり、メモリー１０２，１０３へ情報を書き込む毎に、処理システム１００はさらなる量のエネルギーを必要とする。外部メモリー１０３は多くの実施形態において必要とされるが、外部メモリー１０３へのアクセスは内部メモリー１０２へのアクセスに較べてより多くのエネルギーを必要とする。図２にはこのことが示されている。
【００２９】
図２は、メモリー１０２、１０３にアクセスする間の処理システム１００の電力消費、特にプロセッサ１０１の電力消費を示すグラフである。本発明の一実施形態によれば、処理ルーチンはメモリー１０２、１０３のうちの一方または両方を用いるようになっている。したがって、プロセッサ１０１は、処理ルーチンを実行する場合、メモリー１０２、１０３にアクセスする必要がある。トレース（波形）２３０は利用可能なエネルギー供給量を表わしている。利用可能なエネルギー供給量は、処理システム１００、プロセッサ１０１または処理システム１００が設けられている電子デバイスが利用可能なエネルギーを表わしているだろう。利用可能なエネルギー供給量２３０は、利用可能な電流、利用可能な電圧、またはそれらを組み合わせたものであってもよい。たとえば、処理システム１００が２線式ループによって電力が供給される場合、利用可能なエネルギー供給量２３０は利用可能な電流のことであってもよい。しかしながら、いうまでもなく、測定されるエネルギーの具体的な値は、個々の状況によって異なるので、本発明の技術範囲をこれによって制限すべきではない。
【００３０】
トレース２３１はメモリーへのアクセスを示している。トレース２３１内の各スパイクは外部メモリーへのアクセスを表わしている。明らかなように、たとえば２３２で示されている外部メモリーへの連続したアクセスは、比較的わずかであるため、利用可能なエネルギー供給量に実質的には影響を与えない。このことは、２３２におけるスパイクのほぼ真上の利用可能なエネルギー供給量を観察することにより理解できる。しかしながら、２３３におけるアクセスから分かるように、外部メモリーに連続してアクセスする回数が増加するにつれて、他のアプリケーションが利用可能なエネルギーの供給レベルが減少する。外部メモリー１０３へのアクセスに必要とされるエネルギーが利用可能な貯蓄エネルギーをほとんど全部使用した状況である２３４から分かるように、外部メモリー１０３へのアクセスが外部メモリーに連続して多数回のアクセスが行なわれる場合、利用可能なエネルギーに対する制限は著しいものとなる。このようなアクセス集中が生じると、処理システム１００の他の構成部品には、エネルギーがほとんど残されないことになる。
【００３１】
本発明の一実施形態によれば、利用可能なエネルギー供給量２３０が求められ、利用可能なエネルギー供給量２３０がしきい値を超えているとき、外部メモリー１０３へのアクセスが制限される。このことにより、電子デバイスまたは処理システム１００のその他の構成部品が利用することができるエネルギーを外部メモリー１０３へのアクセスによって著しく消耗してしまわないように担保されることになる。また、この方法は、いつ外部メ
モリー１０３にアクセスすべきかを求める実時間法を実質的に提供している。本発明の一実施形態によれば、しきい値は前もって決められた値であってもよい。本発明の他の実施形態によれば、たとえば、しきい値は処理ルーチンの実行に必要となる外部アクセス回数に依存するようになっていてもよい。たとえば、処理ルーチンの実行に必要となる外部アクセス回数が減少するほど、しきい値が小さくなるようになっていてもよい。このことは、図２から分かるように、必要なアクセス回数が減少するにつれて、利用可能なエネルギー供給量２３０に対するアクセスへの影響が小さくなっていくからである。したがって、外部アクセス回数が比較的少なければ、プロセッサ１０１のエネルギー消費量に大きなスパイクが形成されることはない。 
【００３２】
本発明のある実施形態によれば、プロセッサ１０１は、外部メモリー１０３のみを用いる処理ルーチンを実行することができる。この場合、処理システム１００は、利用可能なエネルギー供給量を求め、この利用可能なエネルギー供給量に基づいて外部メモリー１０３へのアクセスを許可することができる。一実施形態によれば、利用可能なエネルギー供給量がしきい値を超えている場合にのみ、外部メモリー１０３に対するアクセスが許可される。利用可能なエネルギー供給量がしきい値以下であるとき、処理システム１００は、利用可能なエネルギー共有量がしきい値をもう一度超えるまで、一時的に外部メモリー１０３へのアクセスを制限することができる。いうまでもなく、一部の処理ルーチンは内部メモリー１０２のみを用いるので、内部メモリー１０２へのアクセスを制限する方法も同様に適用可能である。しかしながら、多くの実施形態では、しきい値は、外部メモリー１０３へのアクセスの制限のためのものよりも内部メモリー１０２へのアクセスの制限のためのもののほうが非常に低くなる。これは、内部メモリー１０２へのアクセスが外部メモリー１０３へのアクセスよりも小さなエネルギーを必要とするからである。他の実施形態によれば、外部メモリー１０３へのアクセスは、利用可能なエネルギー供給量がしきい値を超えていないとき、図５〜図９に関して以下に記載する分配のうちの１つに従って許可されるようになっている。
【００３３】
本発明の他の実施形態によれば、プロセッサ１０１は、内部メモリー１０２および外部メモリー１０３の両方を用いる処理ルーチンを実行することができる。この実施形態では、処理システム１００は、利用可能なエネルギー供給量を求め、この利用可能なエネルギー供給量に基づいて外部メモリー１０３へのアクセスを許可することができる。一実施形態によれば、利用可能なエネルギー供給量がしきい値を超えている場合にのみ、外部メモリー１０３へのアクセスが許可されるようになっている。それに対して、利用可能なエネルギー供給量がしきい値を超えていない場合、外部メモリー１０３へのアクセスは制限されるものの、内部メモリー１０２へのアクセスは許可されるようになっていてもよい。このように、プロセッサ１０１は、利用可能なエネルギー供給量がしきい値を超えない間、内部メモリー１０２にアクセスすることができ、また、いったんエネルギー供給量がしきい値を超えると、プロセッサ１０１は再び外部メモリー１０３へアクセスすることができるようになる。
【００３４】
本発明の他の実施形態によれば、利用可能なエネルギー供給量２３０がしきい値を超えていない場合、プロセッサ１０１は、以下に記載の方法のうちの１つに従って外部メモリーへのアクセスを分配するようになっていてもよい。実際の方法については、利用可能なエネルギー供給量２０３に基づいて選択することができる。いうまでもなく、「分配」とは、従来技術のように一気にアクセスすることではなく、下記で用いられている方法のうちの１つによって、アクセスを散開させるまたは分離することを意味する。アクセスは、プロセッサ１０１が機能をすべて止める期間によって分離されるようになっていてもよいし、たとえば、プロセッサ１０１が特定のメモリーへのアクセスから異なるメモリーへのアクセスに単に切り替わる期間によって分離されるようになっていてもよい。
【００３５】
ほとんどの場合、外部メモリー１０３に格納されている情報量は、内部メモリー１０２に格納されている情報量よりも非常に少ない。ある与えられた処理ルーチンの場合、プロセッサ１０１は、たとえば１００，０００の全メモリーへのアクセス毎に１０００の外部メモリーへのアクセスを必要とする。しかしながらいうまでもなく、１対１００の比が例示のみを意図したものであって、実際の比は個々の処理ルーチンに依存して変わりうる。従来技術における処理システムでは、通常１０００の外部メモリーへのアクセスが互いにグループ化されている。すなわちこれがバースト（ｂｕｒｓｔ）アクセスとなる。図３に示されているように、プロセッサ１０１は、まず必要な外部メモリーへのアクセスをすべて行ない、次に、必要な内部メモリーへのアクセスをすべて行なう。１００，０００の全メモリーへのアクセスに対するこの高いピーク電力に関するソースコードを下記のように書くことができる：
外部１ 
外部２
外部３
・
外部１０００
内部１
内部２
内部３
・
内部９９０００
このようなグループ化は電力供給量が無限である場合には何の問題も生じないが、アクセス２３４から分かるように、このような外部メモリーへアクセスの集中（バースト）は、処理システム１００が電力制限下におかれている場合、その他の電子機器が利用することができる蓄積電力を著しく消耗させてしまう。従来技術における処理システムのこのようなグループ化の一つの理由は、必要とするコンテキストの切り替えが非常に少ないということである。したがって、全体的な帯域幅を最大化させてしまう可能性がある。
【００３６】
図４は、ある時間フレーム内においてまず外部メモリー１０３にアクセスし、次いで、内部メモリー１０２にアクセスする間のプロセッサ１０１の電力消費量を示すグラフである。トレース４３０は、ある時間における利用可能なエネルギー供給量を表わしている。トレース４３１は、メモリー１０２、１０３にアクセスしている間のプロセッサ１０１のエネルギー消費量を表わしている。図から分かるように、プロセッサ１０１が４３２で表わされる外部メモリー１０３にアクセスしている期間において、プロセッサ１０１は利用可能なエネルギー供給量を実質的にすべて消費してしまう。いったんプロセッサ１０１が外部メモリー１０３にアクセスすることをやめて内部メモリー１０２にアクセスし始めると、プロセッサ１０１によって使用される電力は減少する。
【００３７】
図から明らかなように、外部メモリー１０３にアクセスするこのような「バースト（集中的な）」方法は、利用可能なエネルギー供給量に関して重大な問題を生じる恐れがある。したがって、このような方法は、多くの場合好ましくない。本発明のある実施形態によれば、エネルギー制限の問題を克服するために、プロセッサ１０１は、前もって決められている基準に基づいて、外部メモリーへのアクセスを分配する。この分配は、処理ルーチンのコンパイル前に行われてもよいしまたはその後に行なわれてもよい。さらに、以下に記載されているように、分配は、手動で行われてもよいし実質的に自動的で行なわれてもよい。
【００３８】
図５は、本発明の一実施形態に係る処理ルーチンを実行している間のプロセッサ１０１のメモリーへのアクセスを示している。図示されている実施形態によれば、外部メモリーへのアクセスは、外部メモリーに連続してアクセスする前もって決められている回数に基
づいて分配されている。本発明の一実施形態によれば、プロセッサ１０１は、外部メモリーに前もって決められている回数だけ連続してアクセスした後、両方のメモリー１０２、１０３へのアクセスを一時的に制限する。実施形態によっては、このことは、処理ルーチンが外部メモリー１０３しか用いていない場合、処理ルーチンの実行を中断することを含んでいる場合もある。プロセッサ１０１が内部メモリー１０２にも外部メモリー１０３にもアクセスしていない５３４においては一時的休止が示されている。一時的なアクセス制限の後、プロセッサ１０１は再び外部メモリー１０３にアクセスすることができる。このことは５３２で示されている。一時的なアクセス制限は、前もって決められている時間に基づくものであってもよいし、または、利用可能なエネルギー供給量に基づくものであってもよい。たとえば、エネルギー供給量がしきい値を超えるまで、外部メモリー１０３へのアクセスは制限されるようになっていてもよい。図５に示されている実施形態によれば、プロセッサ１０１は、外部メモリーへのアクセスが完了するまで、内部メモリー１０２にアクセスしないようになっている。
【００３９】
図６は、本発明の他の実施形態に係るプロセッサ１０１のメモリーへのアクセスを示す図である。図６に示されている本発明の実施形態によれば、外部メモリーへのアクセスは、外部メモリーに前もって決められている回数だけアクセスした後、内部メモリーへのアクセスを前もって決められている回数だけ一時的に外部メモリーへのアクセスに割り込ませることにより分配されるようになっている。全アクセス数が１００，０００であり、そのうちの１，０００が外部メモリーへのアクセス回数である例を用いると、外部メモリーへのアクセス６３２は、１，０００回の内部メモリーへのアクセス６３３毎に１０回のアクセスを１ユニットとしてグループ化されている。外部メモリーへのアクセス６３２を内部メモリーへのアクセス６３３で分離することによって、電力消費のスパイクの数が減少することになる。これは、外部メモリー１０３へのアクセスに関するより高い電力消費が一度に生じないからである。それどころか、プロセッサ１０１による内部メモリー１０２へのアクセスに必要とされるより低い電力消費が、外部メモリー１０３のアクセスに必要とされるより高い電力消費に割り込むこととなる。図６に示されている実施形態によれば、外部メモリーへのアクセスは、内部メモリーへのアクセスにより実質的に均等に分離されている。しかしながら、他の実施形態では、分離は実質的に均等である必要はない。このようなアルゴリズムのソースコードはたとえば下記のようになっている：
外部１
・
外部１０
内部１
・
内部１０００
外部１１
・
外部２０
内部１００１
・
内部２０００など
図７は、外部メモリーへのアクセスが図６に関して上述された方法に従って分配される場合におけるプロセッサ１０１のエネルギー消費量を示すグラフである。図から分かるように、処理システム１００がポイント７３２で一般的に示されている外部メモリー１０３へのアクセス時において、プロセッサ１０１のエネルギー消費量が急上昇する。このように、外部メモリーに連続してアクセスする前もって決められている回数に基づいて外部メモリーへのアクセスを分配することでエネルギー消費量のスパイクを最小限に抑えることにより、利用可能なエネルギー供給量がしきい値を超えないときにプロセッサ１０１が外部メモリー１０３にアクセスすることを許容する。したがって、本発明の実施形態によれ
ば、利用可能なエネルギー供給量がしきい値を超えていない場合、外部メモリーに連続してアクセスする前もって決められている回数に基づいて、外部メモリーへのアクセスを分配することができる。本発明の他の実施形態によれば、外部メモリーへのアクセスは、利用可能なエネルギー供給量がしきい値を超えているときでさえ、外部メモリーに連続してアクセスする前もって決められている回数に基づいて分配することができる。外部メモリーに連続してアクセスする前もって決められている回数は利用可能なエネルギー供給量に基づくものであってもよい。
【００４０】
本発明の他の実施形態によれば、外部メモリーに連続してアクセスする前もって決められている回数は、利用可能なエネルギー供給量にかかわらず実質的に同一であってもよい。しかしながらこの実施形態では、前もって決められている回数は、利用可能なエネルギー供給量が最小となっている場合であっても、プロセッサ１０１が前もって決められている回数だけ外部メモリーにアクセスすることができるように選択されるべきである。
【００４１】
図８は、本発明の他の実施形態に係るメモリーへのアクセスを示している。図８に示されている実施形態によれば、外部メモリーへのアクセスは、できるだけ遠くに離して分配されるようになっている。換言すれば、外部メモリーへのアクセスは、外部メモリーに連続してアクセスする回数が最小限に抑えられるように分配される。再び１００，０００回のアクセスを例に挙げると、プロセッサ１０１は、内部メモリーに１０回アクセスする毎に、外部メモリー１０３に１回アクセスする。このことにより、外部メモリー１０３へのアクセスによって引き起こされるエネルギーのスパイクが最小限に抑えられることになる。本発明の一実施形態によれば、内部メモリーへのアクセス回数に応じて外部メモリーへのアクセス回数が決定される。これら２つの数を用いると、処理ルーチンの実行に必要とされる内部メモリーへのアクセスに対する外部メモリーへのアクセスの比に応じて、外部メモリーへのアクセスに内部メモリーへのアクセスを割り込ませることができる。このように、たとえば、ある処理ルーチンが４回の外部メモリーへのアクセスおよび２回の内部メモリーへのアクセスを必要とする場合、内部メモリーへのアクセス数に対する外部メモリーへのアクセス数の比は２：１となる。したがって、１回の内部メモリーへのアクセスで約２回の外部メモリーへのアクセスを分離することになる。このようなアプローチの不利な点は、プロセッサ１０１が、内部メモリー１０２と外部メモリー１０３とを連続的に切り替えている、すなわち「コンテクストスイッチング」を行っているということである。実施形態によっては、このことにより、全体的な帯域幅を縮小させることができる。このように、電力消費量の削減は、プログラムの連続的な線形性を妨げることに関するコンテクストスイッチングコストとバランスを取るようにされるべきである。したがって、実施形態によっては、外部メモリーへのアクセスをできるだけ遠くに離して分配することが最も有利なアプローチではない場合もある。このようなアルゴリズムのソースコードを以下に記載する：
外部１ 
内部１
・
内部１０
外部２
内部１１
・
内部２０
図９は、プロセッサ１０１が図８に関して上述した方法に従って外部メモリー１０３および内部メモリー１０２にアクセスした場合のプロセッサ１０１の電力消費量を示すグラフである。図から明らかなように、電力消費量は、プロセッサ１０１が外部メモリー１０３にアクセスするポイント９３２において急上昇している。しかしながら、電力消費量における各ポイント９３２には単一のスパイクしかない。これは、プロセッサ１０１が外部
メモリー１０３に一回だけアクセスした後、再び外部メモリー１０３からの情報にアクセスし直す前に外部メモリー１０３へのアクセスが中断されるからである。実施形態によっては、プロセッサ１０１は、外部メモリー１０３へのアクセスが中断されている期間、内部メモリー１０２にアクセスするようになっている。トレース９３０から分かるように、外部メモリー１０３に１回ずつアクセスすることにより、処理システム１００のその他の構成部品が利用可能な蓄積電力に対する影響が最小限に抑えられる。このように、外部メモリーへのアクセスをできるだけ遠くに離して分配することによって、システムのその他の構成部品が利用することができる蓄積電力がより多く存在することになる。このことにより、プロセッサ１０１は、一度に大きなブロックで外部メモリー１０３にアクセス（集中的アクセス）することに関する電力スパイクを最小限に抑えることにより、厳しい電力制限下でも動作することができる。
【００４２】
一実施形態によれば、上述の発明により、処理ルーチンの一部が外部メモリー１０３に格納され、処理ルーチンの一部が内部メモリー１０２に格納されているような処理ルーチンを実行する方法が提供されている。したがって、処理ルーチンを実行するために、プロセッサ１０１は、内部メモリー１０２および外部メモリー１０３の両方にアクセスする必要がある。この方法では、外部メモリーにアクセスする前もって決められている回数に従って外部メモリー１０１へのアクセスを分配することにより、プロセッサ１０１のピーク電力消費量が削減される。このように、プロセッサ１０１は、従来技術のように、電力消費を急上昇させるような外部メモリー１０３への集中的なアクセスは行なわれない。一実施形態によれば、外部メモリー１０３へのアクセスは、前もって決められた時間にわたってアクセス不能状態におかれている。本発明の他の実施形態によれば、プロセッサ１０１が内部メモリーに前もって決められている回数だけアクセスするまで、アクセス不能状態におかれる。内部メモリーおよび外部メモリーへの前もって決められているアクセス回数は、同一の回数であってもよいし異なる数であってもよい。前もって決められている回数の具体的な数は、個々の状況に依存し、処理ルーチンによって必要とされるアクセス回数の合計に依存する。いったんプロセッサ１０１が前もって決められている回数の内部メモリーへのアクセスを完了すると、プロセッサ１０１は、外部メモリー１０３へのアクセスに再び戻ることができる。
【００４３】
上述のように、実施形態によっては、外部メモリー１０３へのアクセスを分配するために用いられる前もって決められている回数は、外部メモリーに連続してアクセスする回数を最小限に抑えるように選択される。本発明の他の実施形態によれば、前もって決められている回数は、処理ルーチン全体にわたって実質的に一定である。したがって、外部メモリー１０３へのアクセスの分配は、処理ルーチン全体にわたって実質的に均一となっている。他の実施形態によれば、前もって決められている回数が変化し、その結果、プロセッサ１０１により実行されるアクセス回数が、プロセッサ１０１が処理ルーチンを実行するにつれて変わってもよい。本発明の他の実施形態によれば、外部メモリーへのアクセスは、内部メモリーへのアクセス回数に対する外部メモリーへのアクセス回数の近似の比に従って内部メモリーへのアクセスにより割り込まれるようになっている。このように、外部メモリーへのアクセス回数に対する内部メモリーへのアクセス回数の比がたとえば２：１である場合、外部メモリーへのアクセス毎に外部メモリーへのアクセスが中断され、内部メモリーへのアクセスにより２回割り込まれたあと、プロセッサ１０１が外部メモリーへのアクセスへと戻る。
【００４４】
アクセスを分配する方法は、さまざまな方法で実行することができる。分配は、手動で行われてもよいし、ソフトウェアで行われてもよいし、または、ハードウェアで行われてもよい。本発明の一実施形態によれば、分配は処理ルーチンのコンパイルの後に行なわれる。本発明の他の実施形態によれば、分配は処理ルーチンのコンパイルの前に行なわれる。本発明の一実施形態によれば、アクセスの分配は手動で分配することによって行われる
。外部メモリーへのアクセスの手動による分配は、ソースコードの検査および手動による分配によって達成することができる。このことは、ソースコードの検査および手動による分配により達することができる。この方法は、状況によっては適切なものであるものの、ミスが生じやすく、時間がかかる。さらに、新しいコードに変わる毎にまたはソフトウェアがリリースされる毎にこの方法を実行しなければならないため、必要とされる時間が増えることになる。
【００４５】
本発明の他の実施形態によれば、メモリーへのアクセスはソフトウェアにより分配される。一実施形態によれば、ソフトウェアは後処理プログラムを用いて変更されるようになっていてもよい。この方法では、「ｎ」個のインストラクション毎に「ジャンプ」が挿入される場所の上に短く示される。たとえば、図８および図９に関する説明において、ジャンプ、すなわち内部アクセスのインストラクションが「ｎ」回の外部アクセス毎に挿入されている。このことは、処理ソースを内部メモリー１０２と外部メモリー１０３との間で分割する効果を有している。
【００４６】
本発明の他の実施形態によれば、リアルタイムオペレーティングシステム（ＲＴＯＳ）が用いられている。この実施形態によれば、プロセッサ１０１の各タスクは、内部メモリー１０２および外部メモリー１０３のタスクを定義するプロパティを有している。外部タスクは、「ｎ」回のインストラクションの後先制して割り込まれる。外部タスクは、「ｍ」回の内部インストラクションが実行されるまで実行を再開することが許されていない。このコンテキストでは、「ｎ」および「ｍ」は、対応する外部メモリー１０３および内部メモリー１０２においてアクセスされるのに必要な数である。加えて、「ｎ」のサイズをできるだけ小さく維持するようにＲＴＯＳをプログラムすることができる。本発明の他の実施形態によれば、時間の経過に対して「ｎ」および「ｍ」を比較的一定に維持するようにＲＴＯＳをプログラムすることができ、外部メモリーへのアクセスの最適な分配を最大化することができる。
【００４７】
本発明の他の実施形態によれば、一時的に最適な方法で外部メモリーにアクセスするようにメモリキャッシュが修正されたハードウェアでメモリーへのアクセスの分配を実現することができる。一実施形態によれば、一時的に最適な方法には、アクセス合計「ｎ」毎に外部メモリーを１回アクセスすることが含まれる。この実施形態の１つの不利な点は、内部キャッシュメモリーを必要とするということである。しかしながら、内部キャッシュメモリーが利用可能な実施形態では、このような実施形態を用いることができる。当該技術分野において一般的に知られている他の方法が処理システムをプログラムするために用いられてもよく、当然にそれらも本発明の技術範囲に含まれる。
【００４８】
以上の記載は、外部メモリー１０３のアクセスに必要な処理ルーチンをプログラムするための方法を説明している。実施形態によっては、処理ルーチンは内部メモリー１０２も同様に用いる。この方法に従って、外部メモリーに連続してアクセスする前もって決められている回数に基づいて、外部メモリーへのアクセスが分配される（中断する）。以上の記載の一部において特定の回数のアクセスについて言及しているが、これらの回数は本発明についての理解を助けるために例示されたものであり、本発明の技術範囲をいかなる方法であっても制限するものではないことはいうまでもない。具体的なアクセス回数は処理ルーチンに依存して変わる。さらに、本発明は内部メモリーへのアクセス回数に対する外部メモリーへのアクセス回数の特定の比に限定されるものではない。その比はそれよりも大きくてもよいし、小さくてもよいし、または等しくてもよい。
【００４９】
以上の記述は、さらに利用可能なエネルギー供給量に基づいて外部メモリー１０３へのアクセスを制御する方法を提供する。このように、この方法を用いることにより、外部メモリー１０３にアクセスする間、プロセッサ１０１により消費されるエネルギーが利用可
能なエネルギー供給量を超えることがないよう担保される。いうまでもなく、２つの方法（利用可能なエネルギーに基づいたアクセス制御およびアクセスの分配に基づいたアクセス制御）が必要に応じて一緒にまたは別々に用いられてもよい。
【００５０】
上述した実施形態の詳細な記載は、本発明の技術範囲内に含まれるものとして本発明者が考えているすべての実施形態を完全に網羅するものではない。すなわち、当業者にとって明らかなように、上述の実施形態のうちの一部の構成部要件をさまざまに組み合わせてまたは取り除いてさらなる実施形態を作り出してもよく、このようなさらなる実施形態も本発明の技術範囲内および教示範囲内に含まれる。また、当業者にとって明らかなように、本発明の技術および教示の範囲に含まれるさらなる実施形態を作り出すために、上述の実施形態を全体的にまたは部分的に組み合わせてもよい。
【００５１】
以上のように、本発明の特定の実施形態または実施例は例示の目的で記載されており、当業者にとって明らかなように、本発明の技術範囲内において、さまざまな変更が可能である。本明細書に記載の教示を上述した実施形態およびそれに対応した図面にしめされたもののみではなく他の処理システムにも適用することができる。したがって、本発明の技術範囲は下記の請求の範囲によって定められる。
【図１】
2014013605.tif 000003
【図２】
2014013605.tif 000004
【図３】
2014013605.tif 000005
【図４】
2014013605.tif 000006
【図５】
2014013605.tif 000007
【図６】
2014013605.tif 000008
【図７】
2014013605.tif 000009
【図８】
2014013605.tif 000010
【図９】
2014013605.tif 000011
【外国語明細書】
2014013605000001.pdf