説明

メモリ・コントローラ

【課題】 複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラを提供する。
【解決手段】 マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、
前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、
このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と
を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリ・コントローラに関し、特に、複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラに関する。
【背景技術】
【0002】
近年のプラント制御は、様々なソリューションを解決するため、高速かつ信頼性の高い生産制御システムが必須である。この生産制御システムは、マイクロプロセッサで制御されるが、データを記憶する主記憶装置との間で送受信される信号の遅延防止及び主記憶装置との性能差の解消のため、一般にキャッシュ・メモリを内蔵したメモリ・コントローラが使用される。
【0003】
このメモリ・コントローラは、近年、内蔵できるメモリ容量が増加したことから、この利点を活用して種々の方法で高速化の対策がなされている。メモリ・コントローラの先行技術文献としては次のようなものがある。
【0004】
【特許文献1】特開2002―342156号公報
【0005】
以下、図7を参照して従来のメモリ・コントローラを説明する。図7(A)はライト・バッファ210を備えたメモリ・コントローラ200の例である。マイクロプロセッサ100は演算処理を行い、バスを介して命令,データの他、ライト又はバースト・ライト(以下「ライト・アクセス」という。)からなる信号をメモリ・コントローラ200に出力する。
【0006】
尚、ここでのバースト・ライトとは、ブロック単位でマイクロプロセッサ100から主記憶装置300に対してライトがなされることをいう。
【0007】
メモリ・コントローラ200は、マイクロプロセッサ100から出力されたライト・アクセスをメモリであるライト・バッファ210に一時的に記憶した上で主記憶装置300に出力する。また、メモリ・コントローラ200は、ライト・バッファ210の他、図示しない命令キャッシュ,データ・キャッシュ等の役割を果たす小容量のメモリ領域も備える。主記憶装置300はデータを格納する。
【0008】
一方、図7(B)は命令キャッシュ220を備えたメモリ・コントローラ200の例である。メモリ・コントローラ200は、マイクロプロセッサ100から出力された命令アクセスをメモリである命令キャッシュ220に一時的に記憶した上で主記憶装置300に出力する。
【0009】
この図7(B)においても、メモリ・コントローラ200は、命令キャッシュ220の他、図示しないデータ・キャッシュ,ライト・バッファ等の役割を果たす小容量のメモリ領域も備える。
【0010】
このように、従来のメモリ・コントローラ200では、ライト・アクセスが多い場合にはメモリ・コントローラ200に搭載するメモリ領域の大部分をライト・バッファ210で構成し、命令アクセスが多い場合にはメモリ・コントローラ200に搭載するメモリ領域の大部分を命令キャッシュで構成して、制御スピードの高速化を図っている。
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかし、複数のアプリケーションを用いるシステムの場合には、アプリケーションの種類によって最適なメモリ領域の割合が異なる。具体的には、例えばライト・アクセスが多いアプリケーションを使用する場合には、図7(A)のように大部分をライト・バッファの役割を果たすメモリ領域で構成しても問題ないが、命令アクセスが多いアプリケーションを図7(A)の構成で実行すると処理効率が低下する。
【0012】
本発明は、これらの問題点に鑑みてなされたものであり、複数のアプリケーションを用いるシステムでも、アプリケーションの種類に応じた最適な割合にメモリ領域を再構成するメモリ・コントローラを提供することを目的とする。
【課題を解決するための手段】
【0013】
この様な課題を達成するために本発明は次の構成を備える。
(1)マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、
前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、
このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と
を備えたことを特徴とするメモリ・コントローラ。
(2)前記キャッシュ・メモリは、ライト・バッファ,命令キャッシュ,及びデータ・キャッシュで構成され、前記メモリ再構成装置から出力された指示に基づいてこれらの領域の割合を再構成することを特徴とする請求項1記載のメモリ・コントローラ。
(3)前記各アクセス方式は、ライト・アクセス,命令,データを含み、前記アクセス解析装置はこれらのアクセス方式の割合に基づいて、前記メモリ再構成装置に対して前記キャッシュ・メモリの領域をどのような割合で再構成するか指示することを特徴とする請求項1又は2に記載のメモリ・コントローラ。
【発明の効果】
【0014】
本発明では次のような効果がある。マイクロプロセッサの主記憶装置に対するアクセスを解析するアクセス解析装置と、このアクセス解析装置から出力された信号に基づいてキャッシュ・メモリの領域の割合を再構成するメモリ再構成装置を備えたので、アプリケーションの種類に応じた最適な割合にメモリを再構成できる。
【発明を実施するための最良の形態】
【0015】
以下、図1を参照して本発明によるメモリ・コントローラの構成例を説明する。ただし、図7と同様の構成については同一の符号を付して説明を省略する。メモリ・コントローラ201は、アクセス解析装置250,メモリ再構成装置260,キャッシュ・メモリ270を備える。
【0016】
アクセス解析装置250は、バス上を流れる各アクセス方式の信号がそれぞれ何%あるかを解析する。ここで、図2を参照してバス上を流れるアクセス方式の種類とその内容を説明する。図2のように、バス上にはR,D,R,D,BR,BD,W,D,BW,BD,R,Dの順序で信号が流れている。
【0017】
また、これらの記号の意味は次の通りである。
R : リード・アクセス(主記憶装置300のデータを読む。)
BR: バースト・リード・アクセス(ブロック単位で主記憶装置300のデータ,命令を読む。)
W : ライト(主記憶装置300にデータを書き込む。)
BW: バースト・ライト(ブロック単位で主記憶装置300にデータを書き込む。)
D : データ(マイクロプロセッサ100と主記憶装置300を流れるデータである。)
【0018】
再び図1に戻り説明する。メモリ再構成装置260は、アクセス解析装置250から入力された解析結果に基づいて、キャッシュ・メモリ270の領域の割合を再構成する。キャッシュ・メモリ270は、ライト・バッファ,命令キャッシュ,データ・キャッシュの役割を果たし、メモリ再構成装置260から出力された指示に基づいてこれらの領域の割合を再構成する。尚、領域の割合が再構成される前は便宜上33.3%ずつ設定されているものとする。
【0019】
次に、図3,図4を参照して図1の動作を説明する。ここで、図3はアプリケーションの種類と各アクセス方式のパーセンテージを示した表であり、更に、一番下の行にはキャッシュ・メモリ270の再構成の対応案が示されている。また、図4は図1のフローチャートである。
【0020】
まず、図3のアプリ(アプリケーション)1の場合について説明する。アプリケーション1では、再構成の対応案として命令キャッシュが挙げられている。これは、50%バースト・リード(ブロック単位のリード)のうち、命令が40%と多いため、命令キャッシュの領域を多くするほうが効率よく制御できるからである。
【0021】
以下、図4を参照し、アプリケーション1で再構成の対応案として命令キャッシュが選択される動作を説明する。アクセス解析装置250は、各アクセス方式のパーセンテージを取得する(ステップ1)。
【0022】
アクセス解析装置250は、ライト・アクセス≧50%の条件を判断する(ステップ2)。アプリケーション1では、ライト・アクセスが40%と条件を満たさないので、ステップ3は実行されず、ステップ4へ進む。
【0023】
次に、アクセス解析装置250は命令≧40%の条件を判断する(ステップ4)。アプリケーション1では命令≧40%の条件を満たすので、アクセス解析装置250は命令キャッシュを拡大する旨の信号をメモリ再構成装置260に出力する(ステップ5)。
【0024】
つづいて、アクセス解析装置250は、データ≧40%の条件を判断する(ステップ6)。アプリ1ではデータが10%であり、データ≧40%の条件を満たさないので、ステップ7は実行されない。
【0025】
つづいて、アプリケーション2を参照して対応案としてライト・バッファの領域を拡大する例を説明する。但し、アプリケーション1の説明と重複する部分については説明を省略する。アプリケーション2では、ライト・アクセスが60%であり、ステップ2の判断において、ライト・アクセス≧50%の条件を満たす。そのため、アクセス解析装置250は、キャッシュ・メモリ270のライト・バッファの領域を拡大する旨の信号を、メモリ再構成装置260に対して出力する。
【0026】
次に、アプリケーション3を参照して対応案としてデータ・キャッシュの領域を拡大する例を説明する。但し、アプリケーション1の説明と重複する部分については説明を省略する。アプリケーション3ではデータが40%であり、ステップ6の判断においてデータ≧40%の条件を満たす。そのため、アクセス解析装置250は、キャッシュ・メモリ270のデータ・キャッシュの領域を拡大する旨の信号を、メモリ再構成装置260に対して出力する。
【0027】
最後に、アプリケーション4を参照して対応案としてデータ・キャッシュとライト・バッファの領域を拡大する例を説明する。但し、アプリケーション1の説明と重複する部分については説明を省略する。アプリケーション4では、ライト・アクセスが50%であり、ステップ2の判断において、ライト・アクセス≧50%の条件を満たす。
【0028】
そのため、アクセス解析装置250は、キャッシュ・メモリ270のライト・バッファの領域を拡大する旨の信号を、メモリ再構成装置260に対して出力する。
【0029】
また、アプリケーション4ではデータが40%であり、ステップ6の判断においてデータ≧40%の条件を満たす。そのため、アクセス解析装置250は、キャッシュ・メモリ270のデータ・キャッシュの領域を拡大する旨の信号を、メモリ再構成装置260に対して出力する。
【0030】
このようにして、再構成されたキャッシュ・メモリ270の構成は図5のようになる。図5では拡大されたデータ・キャッシュとライト・バッファの領域がそれぞれ40%であり、20%を占める命令キャッシュよりも広い領域が確保されている。
【0031】
なお、各領域を拡大する量は、図5のように例えば40%と予め設定しても差し支えなく、更にパーセンテージに基づいて連続的に、つまりライト・アクセスが70%であれば70%のライト・バッファを、80%であれば80%のライト・バッファを領域内に構成しても良い。
【0032】
このように、マイクロプロセッサ100の主記憶装置300に対するアクセスを解析するアクセス解析装置250と、アクセス解析装置250から出力された結果に基づいてキャッシュ・メモリ270の領域の割合を再構成するメモリ再構成装置260を備えたので、アプリケーションの種類に応じた最適な割合にキャッシュ・メモリを再構成できる。
【0033】
次に、図6を参照して本発明の応用例を説明する。モジュール400は、送受信バッファ410を介してモジュール500の送受信バッファ510と通信を行う。この場合においても、図1で説明したアクセス解析装置250を用いることにより、送受信バッファ410の領域の割合を適切に構成できる。
【0034】
例えば、送受信バッファ410が送受信バッファ510に出力する信号が全体の80%である一方、送受信バッファ410が送受信バッファ510から受信する信号が全体の20%しかない場合、アクセス解析装置250はこれらの通信の内容を解析するとともに、再構成装置261に対して、送受信バッファ410の80%の領域を送信バッファとして活用する旨の信号を出力する。また、この信号を受信した再構成装置261は、送受信バッファ410の領域を再構成する。
【0035】
このように、通信用のモジュール400,500に備えられた送受信バッファ410,510の領域の割合を再構成できるので、アプリケーションにより送信/受信のいずれかの割合が増加しても、伝送遅延時間を少なくできる送受信バッファ410,510を提供できる。
【図面の簡単な説明】
【0036】
【図1】本発明のメモリ・コントローラの構成図である。
【図2】バス上を流れるアクセス方式の種類とその内容の説明図である。
【図3】アプリケーションごとの再構成の対応案を示した表である。
【図4】図1のフローチャートである。
【図5】領域が再構成されたキャッシュ・メモリ270の説明図である。
【図6】本発明の応用例の構成図である。
【図7】従来のメモリ・コントローラの構成図である。
【符号の説明】
【0037】
100 マイクロプロセッサ
201 メモリ・コントローラ
250 アクセス解析装置
260 メモリ再構成装置
270 キャッシュ・メモリ






【特許請求の範囲】
【請求項1】
マイクロプロセッサと主記憶装置の間で送受信される信号を一時的に記憶するキャッシュ・メモリを備えたメモリ・コントローラにおいて、
前記マイクロプロセッサと前記主記憶装置の間で送受信される各アクセス方式の信号がそれぞれどのような割合で存在するか解析するアクセス解析装置と、
このアクセス解析装置から出力された信号に基づいて、前記キャッシュ・メモリの領域の割合を再構成するメモリ再構成装置と
を備えたことを特徴とするメモリ・コントローラ。
【請求項2】
前記キャッシュ・メモリは、ライト・バッファ,命令キャッシュ,及びデータ・キャッシュで構成され、前記メモリ再構成装置から出力された指示に基づいてこれらの領域の割合を再構成することを特徴とする請求項1記載のメモリ・コントローラ。
【請求項3】
前記各アクセス方式は、ライト・アクセス,命令,データを含み、前記アクセス解析装置はこれらのアクセス方式の割合に基づいて、前記メモリ再構成装置に対して前記キャッシュ・メモリの領域をどのような割合で再構成するか指示することを特徴とする請求項1又は2に記載のメモリ・コントローラ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate