(57)【要約】【課題】    複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラを提供する。【解決手段】    マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、  前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、  このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と  を備える。【選択図】                    図１
2010061535.tif 000002
【特許請求の範囲】
【請求項１】
マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、
前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、
このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と
を備えたことを特徴とするメモリ・コントローラ。
【請求項２】
前記キャッシュ・メモリは、ライト・バッファ,命令キャッシュ，及びデータ・キャッシュで構成され、前記メモリ再構成装置から出力された指示に基づいてこれらの領域の割合を再構成することを特徴とする請求項１記載のメモリ・コントローラ。
【請求項３】
前記各アクセス方式は、ライト・アクセス，命令，データを含み、前記アクセス解析装置はこれらのアクセス方式の割合に基づいて、前記メモリ再構成装置に対して前記キャッシュ・メモリの領域をどのような割合で再構成するか指示することを特徴とする請求項１又は２に記載のメモリ・コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ・コントローラに関し、特に、複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラに関する。
【背景技術】
【０００２】
近年のプラント制御は、様々なソリューションを解決するため、高速かつ信頼性の高い生産制御システムが必須である。この生産制御システムは、マイクロプロセッサで制御されるが、データを記憶する主記憶装置との間で送受信される信号の遅延防止及び主記憶装置との性能差の解消のため、一般にキャッシュ・メモリを内蔵したメモリ・コントローラが使用される。
【０００３】
このメモリ・コントローラは、近年、内蔵できるメモリ容量が増加したことから、この利点を活用して種々の方法で高速化の対策がなされている。メモリ・コントローラの先行技術文献としては次のようなものがある。
【０００４】
【特許文献１】特開２００２―３４２１５６号公報
【０００５】
以下、図７を参照して従来のメモリ・コントローラを説明する。図７（Ａ）はライト・バッファ２１０を備えたメモリ・コントローラ２００の例である。マイクロプロセッサ１００は演算処理を行い、バスを介して命令，データの他、ライト又はバースト・ライト（以下「ライト・アクセス」という。）からなる信号をメモリ・コントローラ２００に出力する。
【０００６】
尚、ここでのバースト・ライトとは、ブロック単位でマイクロプロセッサ１００から主記憶装置３００に対してライトがなされることをいう。
【０００７】
メモリ・コントローラ２００は、マイクロプロセッサ１００から出力されたライト・アクセスをメモリであるライト・バッファ２１０に一時的に記憶した上で主記憶装置３００に出力する。また、メモリ・コントローラ２００は、ライト・バッファ２１０の他、図示しない命令キャッシュ，データ・キャッシュ等の役割を果たす小容量のメモリ領域も備える。主記憶装置３００はデータを格納する。
【０００８】
一方、図７（Ｂ）は命令キャッシュ２２０を備えたメモリ・コントローラ２００の例である。メモリ・コントローラ２００は、マイクロプロセッサ１００から出力された命令アクセスをメモリである命令キャッシュ２２０に一時的に記憶した上で主記憶装置３００に出力する。
【０００９】
この図７（Ｂ）においても、メモリ・コントローラ２００は、命令キャッシュ２２０の他、図示しないデータ・キャッシュ，ライト・バッファ等の役割を果たす小容量のメモリ領域も備える。
【００１０】
このように、従来のメモリ・コントローラ２００では、ライト・アクセスが多い場合にはメモリ・コントローラ２００に搭載するメモリ領域の大部分をライト・バッファ２１０で構成し、命令アクセスが多い場合にはメモリ・コントローラ２００に搭載するメモリ領域の大部分を命令キャッシュで構成して、制御スピードの高速化を図っている。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかし、複数のアプリケーションを用いるシステムの場合には、アプリケーションの種類によって最適なメモリ領域の割合が異なる。具体的には、例えばライト・アクセスが多いアプリケーションを使用する場合には、図７（Ａ）のように大部分をライト・バッファの役割を果たすメモリ領域で構成しても問題ないが、命令アクセスが多いアプリケーションを図７（Ａ）の構成で実行すると処理効率が低下する。
【００１２】
本発明は、これらの問題点に鑑みてなされたものであり、複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラを提供することを目的とする。
【課題を解決するための手段】
【００１３】
この様な課題を達成するために本発明は次の構成を備える。
（１）マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、
前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、
このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と
を備えたことを特徴とするメモリ・コントローラ。
（２）前記キャッシュ・メモリは、ライト・バッファ,命令キャッシュ，及びデータ・キャッシュで構成され、前記メモリ再構成装置から出力された指示に基づいてこれらの領域の割合を再構成することを特徴とする請求項１記載のメモリ・コントローラ。
（３）前記各アクセス方式は、ライト・アクセス，命令，データを含み、前記アクセス解析装置はこれらのアクセス方式の割合に基づいて、前記メモリ再構成装置に対して前記キャッシュ・メモリの領域をどのような割合で再構成するか指示することを特徴とする請求項１又は２に記載のメモリ・コントローラ。
【発明の効果】
【００１４】
本発明では次のような効果がある。マイクロプロセッサの主記憶装置に対するアクセスを解析するアクセス解析装置と、このアクセス解析装置から出力された信号に基づいてキャッシュ・メモリの領域の割合を再構成するメモリ再構成装置を備えたので、アプリケーションの種類に応じた最適な割合にメモリを再構成できる。
【発明を実施するための最良の形態】
【００１５】
以下、図１を参照して本発明によるメモリ・コントローラの構成例を説明する。ただし、図７と同様の構成については同一の符号を付して説明を省略する。メモリ・コントローラ２０１は、アクセス解析装置２５０，メモリ再構成装置２６０，キャッシュ・メモリ２７０を備える。
【００１６】
アクセス解析装置２５０は、バス上を流れる各アクセス方式の信号がそれぞれ何％あるかを解析する。ここで、図２を参照してバス上を流れるアクセス方式の種類とその内容を説明する。図２のように、バス上にはＲ，Ｄ，Ｒ，Ｄ，ＢＲ，ＢＤ，Ｗ，Ｄ，ＢＷ，ＢＤ，Ｒ，Ｄの順序で信号が流れている。
【００１７】
また、これらの記号の意味は次の通りである。
Ｒ  ：  リード・アクセス（主記憶装置３００のデータを読む。）
ＢＲ：  バースト・リード・アクセス（ブロック単位で主記憶装置３００のデータ，命令を読む。）
Ｗ  ：  ライト（主記憶装置３００にデータを書き込む。）
ＢＷ：  バースト・ライト（ブロック単位で主記憶装置３００にデータを書き込む。）
Ｄ  ：  データ（マイクロプロセッサ１００と主記憶装置３００を流れるデータである。）
【００１８】
再び図１に戻り説明する。メモリ再構成装置２６０は、アクセス解析装置２５０から入力された解析結果に基づいて、キャッシュ・メモリ２７０の領域の割合を再構成する。キャッシュ・メモリ２７０は、ライト・バッファ，命令キャッシュ，データ・キャッシュの役割を果たし、メモリ再構成装置２６０から出力された指示に基づいてこれらの領域の割合を再構成する。尚、領域の割合が再構成される前は便宜上３３.３％ずつ設定されているものとする。
【００１９】
次に、図３，図４を参照して図１の動作を説明する。ここで、図３はアプリケーションの種類と各アクセス方式のパーセンテージを示した表であり、更に、一番下の行にはキャッシュ・メモリ２７０の再構成の対応案が示されている。また、図４は図１のフローチャートである。
【００２０】
まず、図３のアプリ（アプリケーション）１の場合について説明する。アプリケーション１では、再構成の対応案として命令キャッシュが挙げられている。これは、５０％バースト・リード（ブロック単位のリード）のうち、命令が４０％と多いため、命令キャッシュの領域を多くするほうが効率よく制御できるからである。
【００２１】
以下、図４を参照し、アプリケーション１で再構成の対応案として命令キャッシュが選択される動作を説明する。アクセス解析装置２５０は、各アクセス方式のパーセンテージを取得する（ステップ１）。
【００２２】
アクセス解析装置２５０は、ライト・アクセス≧５０％の条件を判断する（ステップ２）。アプリケーション１では、ライト・アクセスが４０％と条件を満たさないので、ステップ３は実行されず、ステップ４へ進む。
【００２３】
次に、アクセス解析装置２５０は命令≧４０％の条件を判断する（ステップ４）。アプリケーション１では命令≧４０％の条件を満たすので、アクセス解析装置２５０は命令キャッシュを拡大する旨の信号をメモリ再構成装置２６０に出力する（ステップ５）。
【００２４】
つづいて、アクセス解析装置２５０は、データ≧４０％の条件を判断する（ステップ６）。アプリ１ではデータが１０％であり、データ≧４０％の条件を満たさないので、ステップ７は実行されない。
【００２５】
つづいて、アプリケーション２を参照して対応案としてライト・バッファの領域を拡大する例を説明する。但し、アプリケーション１の説明と重複する部分については説明を省略する。アプリケーション２では、ライト・アクセスが６０％であり、ステップ２の判断において、ライト・アクセス≧５０％の条件を満たす。そのため、アクセス解析装置２５０は、キャッシュ・メモリ２７０のライト・バッファの領域を拡大する旨の信号を、メモリ再構成装置２６０に対して出力する。
【００２６】
次に、アプリケーション３を参照して対応案としてデータ・キャッシュの領域を拡大する例を説明する。但し、アプリケーション１の説明と重複する部分については説明を省略する。アプリケーション３ではデータが４０％であり、ステップ６の判断においてデータ≧４０％の条件を満たす。そのため、アクセス解析装置２５０は、キャッシュ・メモリ２７０のデータ・キャッシュの領域を拡大する旨の信号を、メモリ再構成装置２６０に対して出力する。
【００２７】
最後に、アプリケーション４を参照して対応案としてデータ・キャッシュとライト・バッファの領域を拡大する例を説明する。但し、アプリケーション１の説明と重複する部分については説明を省略する。アプリケーション４では、ライト・アクセスが５０％であり、ステップ２の判断において、ライト・アクセス≧５０％の条件を満たす。
【００２８】
そのため、アクセス解析装置２５０は、キャッシュ・メモリ２７０のライト・バッファの領域を拡大する旨の信号を、メモリ再構成装置２６０に対して出力する。
【００２９】
また、アプリケーション４ではデータが４０％であり、ステップ６の判断においてデータ≧４０％の条件を満たす。そのため、アクセス解析装置２５０は、キャッシュ・メモリ２７０のデータ・キャッシュの領域を拡大する旨の信号を、メモリ再構成装置２６０に対して出力する。
【００３０】
このようにして、再構成されたキャッシュ・メモリ２７０の構成は図５のようになる。図５では拡大されたデータ・キャッシュとライト・バッファの領域がそれぞれ４０％であり、２０％を占める命令キャッシュよりも広い領域が確保されている。
【００３１】
なお、各領域を拡大する量は、図５のように例えば４０％と予め設定しても差し支えなく、更にパーセンテージに基づいて連続的に、つまりライト・アクセスが７０％であれば７０％のライト・バッファを、８０％であれば８０％のライト・バッファを領域内に構成しても良い。
【００３２】
このように、マイクロプロセッサ１００の主記憶装置３００に対するアクセスを解析するアクセス解析装置２５０と、アクセス解析装置２５０から出力された結果に基づいてキャッシュ・メモリ２７０の領域の割合を再構成するメモリ再構成装置２６０を備えたので、アプリケーションの種類に応じた最適な割合にキャッシュ・メモリを再構成できる。
【００３３】
次に、図６を参照して本発明の応用例を説明する。モジュール４００は、送受信バッファ４１０を介してモジュール５００の送受信バッファ５１０と通信を行う。この場合においても、図１で説明したアクセス解析装置２５０を用いることにより、送受信バッファ４１０の領域の割合を適切に構成できる。
【００３４】
例えば、送受信バッファ４１０が送受信バッファ５１０に出力する信号が全体の８０％である一方、送受信バッファ４１０が送受信バッファ５１０から受信する信号が全体の２０％しかない場合、アクセス解析装置２５０はこれらの通信の内容を解析するとともに、再構成装置２６１に対して、送受信バッファ４１０の８０％の領域を送信バッファとして活用する旨の信号を出力する。また、この信号を受信した再構成装置２６１は、送受信バッファ４１０の領域を再構成する。
【００３５】
このように、通信用のモジュール４００，５００に備えられた送受信バッファ４１０，５１０の領域の割合を再構成できるので、アプリケーションにより送信／受信のいずれかの割合が増加しても、伝送遅延時間を少なくできる送受信バッファ４１０，５１０を提供できる。
【図面の簡単な説明】
【００３６】
【図１】本発明のメモリ・コントローラの構成図である。
【図２】バス上を流れるアクセス方式の種類とその内容の説明図である。
【図３】アプリケーションごとの再構成の対応案を示した表である。
【図４】図１のフローチャートである。
【図５】領域が再構成されたキャッシュ・メモリ２７０の説明図である。
【図６】本発明の応用例の構成図である。
【図７】従来のメモリ・コントローラの構成図である。
【符号の説明】
【００３７】
１００      マイクロプロセッサ
２０１      メモリ・コントローラ
２５０      アクセス解析装置
２６０      メモリ再構成装置
２７０      キャッシュ・メモリ      
【図１】
2010061535.tif 000003
【図２】
2010061535.tif 000004
【図３】
2010061535.tif 000005
【図４】
2010061535.tif 000006
【図５】
2010061535.tif 000007
【図６】
2010061535.tif 000008
【図７】
2010061535.tif 000009