(57)【要約】【課題】本発明は、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減するメモリコントローラを提供することを目的とする。【解決手段】ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、情報設定手段の周期情報に基づいてメモリ診断手段がメモリをアクセスする周期を調整する周期調整手段を有する。【選択図】図４
2009048224.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
【請求項２】
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
【請求項３】
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから前記衝突率算出手段の衝突率に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
【請求項４】
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから複数の衝突率に応じた周期情報テーブルを設定される情報設定手段と、
前記衝突率算出手段の衝突率で前記周期情報テーブルを参照して得られる周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
【請求項５】
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから衝突率閾値を設定される情報設定手段と、
前記衝突率算出手段の衝突率と前記情報設定手段の衝突率閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
【請求項６】
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態と負荷状態閾値とを設定される情報設定手段と、
前記情報設定手段の負荷状態と前記情報設定手段の負荷状態閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリコントローラ及びプロセッサシステムに関し、メモリをアクセスして診断するメモリ診断機能を有するメモリコントローラ及びプロセッサシステムに関する。
【背景技術】
【０００２】
図１は、一般的なプロセッサのブロック構成図を示す。同図中、ＣＰＵ１からのメモリ２へのアクセスはメモリコントローラ３により制御される。また、ＣＰＵ１はプロＰＣＩバスブリッジ４を介してＰＣＩバス５に接続され、ＰＣＩバス５にはＰＣＩデバイス６，７等が接続されている。
【０００３】
図２は、従来のメモリコントローラのブロック構成図を示す。同図において、メモリコントローラ３内のメモリパトロール診断要求部１１は、メモリ２の１ビットエラー訂正や訂正不可能なメモリエラー検出を行う。ＣＰＵ１からのメモリアクセスと、メモリパトロール診断要求部１１からのメモリアクセスは、アクセス制御部１２でメモリアクセス種別を選択し、その選択情報をデータ制御部１３に通知することで切り替える。
【０００４】
また、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部１１からのメモリアクセスとが、アクセス制御部１２でメモリアクセス競合を起こした場合は、競合のタイミングにより、どちらのメモリアクセスを行うかの選択を行い、選択情報をデータ制御部１３に送信する。
【０００５】
これにより、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部１１からのメモリアクセスを行える構成となっている。なお、メモリパトロール診断要求部１１からの診断アクセス要求は、ＣＰＵ１からのメモリアクセスの頻度に関係なく、独立して連続的に発行される。
【０００６】
図３は、従来構成における処理シーケンスを示す。ここで、シーケンスＳＱ１は、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部１１からのメモリアクセスとがメモリアクセス競合を起こしていないシーケンスである。
【０００７】
シーケンスＳＱ３は、ＣＰＵ１からのメモリアクセス動作中に、診断アクセス要求が行われたメモリアクセス競合の場合であるが、この場合はＣＰＵ１からのメモリアクセス要求が、診断アクセス要求よりも早いため、ＣＰＵ１からのメモリアクセスは待たされない。
【０００８】
シーケンスＳＱ２は、診断アクセス要求によるメモリアクセス動作中に、ＣＰＵ１からのメモリアクセスが行われたメモリアクセス競合の場合である。この場合は、診断アクセス要求が、ＣＰＵ１からのメモリアクセス要求よりも早いため、ＣＰＵ１からのメモリアクセスは時間Ｔ１だけ待たされる。
【０００９】
なお、特許文献１には、制御サイクル内のアイドル時間を利用し、記憶装置内の内容を順次読み出し、他系の記憶装置内の内容と比較し、記憶装置のエラー検知を行うことが記載されている。
【特許文献１】特開２００６−１１５７６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図３において、シーケンスＳＱ２の診断アクセス要求によるメモリアクセス動作中に、ＣＰＵ１からのメモリアクセスが行われたメモリアクセス競合の場合は、診断アクセス要求が、ＣＰＵ１からのメモリアクセス要求よりも早いため、ＣＰＵ１からのメモリアクセスは待たされる。このＣＰＵ１からのメモリアクセスの待ち状態がシステムの高負荷状態では頻繁に発生し、その待ち時間が積み上げられると、本来システムが行われるべきＣＰＵ１のプログラム処理（メモリアクセス）がトータルとして遅くなり、システムの処理能力を低下させるという問題があった。
【００１１】
本発明は、上記の点に鑑みなされたものであり、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減するメモリコントローラ及びプロセッサシステムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の一実施態様によるメモリコントローラは、
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【００１３】
本発明の一実施態様によるプロセッサシステムは、
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【００１４】
本発明の他の一実施態様によるプロセッサシステムは、
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから前記衝突率算出手段の衝突率に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【００１５】
本発明の他の一実施態様によるプロセッサシステムは、
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから複数の衝突率に応じた周期情報テーブルを設定される情報設定手段と、
前記衝突率算出手段の衝突率で前記周期情報テーブルを参照して得られる周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【００１６】
本発明の他の一実施態様によるプロセッサシステムは、
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから衝突率閾値を設定される情報設定手段と、
前記衝突率算出手段の衝突率と前記情報設定手段の衝突率閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【００１７】
本発明の他の一実施態様によるプロセッサシステムは、
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態と負荷状態閾値とを設定される情報設定手段と、
前記情報設定手段の負荷状態と前記情報設定手段の負荷状態閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有することにより、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減する。
【発明の効果】
【００１８】
本発明のメモリコントローラによれば、診断アクセス要求によるメモリアクセスとＣＰＵのメモリアクセスとのアクセス競合の頻度を低減しシステムの処理能力の低下を軽減できる。
【発明を実施するための最良の形態】
【００１９】
以下、図面に基づいて本発明の実施形態について説明する。
【００２０】
＜メモリコントローラの構成＞
図４は、本発明のメモリコントローラの一実施形態のブロック構成図を示す。同図中、メモリコントローラ３内のメモリパトロール診断要求部２１は、メモリ２の１ビットエラー訂正や訂正不可能なメモリエラー検出を行う。ＣＰＵ１からのメモリアクセスと、メモリパトロール診断要求部２１からのメモリアクセスは、アクセス制御部２２でメモリアクセス種別を選択し、その選択情報をデータ制御部２３に通知することで切り替える。
【００２１】
また、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスとがアクセス制御部２２でメモリアクセス競合を起こした場合は、競合のタイミングにより、どちらのメモリアクセスを行うかの選択を行い、選択情報をデータ制御部２３に送信する。これにより、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスを行う。
【００２２】
メモリパトロール診断要求部２１には診断アクセス要求調整部２４を設けており、アクセス制御部２２にはメモリアクセス競合検出部２５を設けている。また、メモリコントローラ３内に競合検出情報部２６とソフト設定情報部２７を設けている。なお、メモリアクセス競合検出部２５と競合検出情報部２６を設けない実施形態もあり得る。
【００２３】
メモリアクセス競合検出部２５はＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスとがメモリアクセス競合を起こした場合にこれを検出して衝突発生情報を競合検出情報部２６に送信し、競合検出情報部２６では衝突率を求める。競合検出情報部２６の衝突率はＣＰＵ１で動作するソフトウェア又は診断アクセス要求調整部２４によって参照される。
【００２４】
ソフト設定情報部２７にはＣＰＵ１で動作するソフトウェアから周期パラメータ情報，閾値情報，負荷情報等が設定される。
【００２５】
診断アクセス要求調整部２４は、ソフト設定情報部２７、若しくは競合検出情報部２６とソフト設定情報部２７を周期的に監視し、例えば競合検出情報部２６の衝突率とソフト設定情報部２７の衝突率閾値情報を基にアクセス制御部２２への診断アクセス要求の断続実行の周期をメモリコントローラ３のハードウェアが自動で調整及び変更する。
【００２６】
図５は、本発明のメモリコントローラの一実施形態の処理シーケンスを示す。図５において、初期段階のシーケンスＳＱ１１では、ＣＰＵアクセス要求と診断アクセス要求は、頻繁に発生しており、衝突発生時は、アクセス制御部２２から競合検出情報部２６に衝突発生情報を送信する。
【００２７】
シーケンスＳＱ１２，ＳＱ１３では、メモリパトロール診断要求部２１にて一定周期でソフト設定情報部２７の衝突率閾値情報と競合検出情報部２６の衝突率を参照し、診断アクセス要求周期の変更判定処理を行う。上記診断アクセス要求周期の変更判定処理は、一定周期で実施され、最適な診断アクセス要求の周期変更を行う。
【００２８】
なお、診断アクセス要求周期変更判定後の診断アクセス要求の発行であっても、ＣＰＵ１からのメモリアクセスとの衝突は発生するが、一定時間内の衝突率の監視により一定時間内の衝突をなるべく少なくする最適な診断アクセス周期を決定することできる。
【００２９】
＜第１実施形態＞
図６は、本発明の第１実施形態を説明するためのブロック構成図を示す。同図中、メモリパトロール診断要求部２１はメモリパトロール診断をアクセス制御部２２に要求する。
【００３０】
ソフトウェア３１は、監視しているＣＰＵ１の使用率又はサービス負荷数に応じて周期パラメータを決定し、決定した周期パラメータをメモリコントローラ３内のソフト設定情報部２７に周期パラメータ情報として設定する。周期パラメータ情報は、メモリパトロール診断要求の断続実行の周期決定に用いられるパラメータであり、診断アクセス要求調整部２４によって参照される。
【００３１】
診断アクセス要求調整部２４は、ＣＰＵ１で実行されるソフトウェア３１がソフト設定情報部２７に設定した周期パラメータ情報を参照し、これを診断アクセス要求の断続実行の周期とする。アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００３２】
図７は、ソフトウェア３１が実行する処理の第１実施形態のフローチャートを示す。同図中、ソフトウェア３１はステップＳ１でＣＰＵ１の使用率を計算し、ステップＳ２で周期パラメータを決定する。
【００３３】
なお、ソフトウェア３１内には予めＣＰＵ使用率に対応する周期パラメータが設定されたテーブルが備えられており、このテーブルを参照して周期パラメータが決定される。次に、ステップＳ３で決定した周期パラメータをメモリコントローラ３内のソフト設定情報部２７に周期パラメータ情報として設定する。
【００３４】
＜第１実施形態の変形例＞
図８は、ソフトウェア３１が実行する処理の第１実施形態の変形例のフローチャートを示す。この変形例では、ＣＰＵ使用率の代りにサービス負荷数を用いる。なお、ＣＰＵ１が呼制御を行っている場合には、サービス負荷数の一例として通話呼数を使用する。
【００３５】
同図中、ソフトウェア３１はステップＳ１１でサービス負荷数を計算し、ステップＳ１２で周期パラメータを決定する。また、ソフトウェア３１内には予めサービス負荷数に対応する周期パラメータが設定されたテーブルが備えられており、このテーブルを参照して周期パラメータが決定される。次に、ステップＳ１３で決定した周期パラメータをメモリコントローラ３内のソフト設定情報部２７に周期パラメータ情報として設定する。
【００３６】
＜第２実施形態＞
図９は、本発明の第２実施形態を説明するためのブロック構成図を示す。同図中、メモリパトロール診断要求部２１はメモリパトロール診断をアクセス制御部２２に要求する。
【００３７】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。アクセス制御部２２内のメモリアクセス競合検出部２５は、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスとのメモリアクセス競合、つまり、メモリアクセスの衝突を監視して衝突発生情報を競合検出情報部２６に送信する。競合検出情報部２６は衝突率を求める。
【００３８】
ソフトウェア３３は、メモリコントローラ３内の競合検出情報部２６の衝突率情報を監視し、衝突率情報に応じて決定した周期パラメータをメモリコントローラ３内のソフト設定情報部２７に周期パラメータ情報を設定する。なお、ソフトウェア３３内には予め衝突率情報に対応する周期パラメータが設定されたテーブルが備えられており、このテーブルを参照して周期パラメータが決定される。
【００３９】
診断アクセス要求調整部２４は、ＣＰＵ１で実行されるソフトウェア３３がソフト設定情報部２７に設定した周期パラメータ情報を参照し、これを診断アクセス要求の断続実行の周期とする。アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００４０】
図１０は、ソフトウェア３３が実行する処理の第２実施形態のフローチャートを示す。同図中、ソフトウェア３３はステップＳ２１でメモリコントローラ３の競合検出情報部２６から衝突率情報を参照し、ステップＳ２２で周期パラメータを決定する。
【００４１】
なお、ソフトウェア３３内には予めメモリアクセスの衝突率に対応する周期パラメータが設定されたテーブルが備えられており、このテーブルを参照して周期パラメータが決定される。次に、ステップＳ２３において先のステップで決定した周期パラメータをメモリコントローラ３内のソフト設定情報部２７に周期パラメータ情報として設定する。
【００４２】
＜第３実施形態＞
図１１は、本発明の第３実施形態を説明するためのブロック構成図を示す。同図中、メモリパトロール診断要求部２１はメモリパトロール診断をアクセス制御部２２に要求する。
【００４３】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。アクセス制御部２２内のメモリアクセス競合検出部２５は、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスとのメモリアクセス競合、つまり、メモリアクセスの衝突を監視して衝突発生情報を競合検出情報部２６に送信する。競合検出情報部２６は衝突率を求める。
【００４４】
ソフトウェア３４は、ソフトウェアに予め用意されている周期パラメータテーブルをメモリコントローラ３内のソフト設定情報部２７に周期パラメータテーブル情報として設定する。
【００４５】
周期パラメータテーブル情報は、メモリパトロール診断要求の断続実行の周期決定に用いられるテーブルであり、診断アクセス要求調整部２４によって参照される。周期パラメータテーブル情報は、図１２に示すように、メモリアクセス衝突率［％］と周期パラメータ［μｓｅｃ］が対応付けられたものである。
【００４６】
ここでは、例えば衝突率が０〜２０％であるとき周期パラメータは０μｓｅｃでメモリパトロール診断要求を断続することなく実行することを表しており、衝突率が２０〜４０％であるとき周期パラメータは１００μｓｅｃでメモリパトロール診断要求を１００μｓｅｃ毎に実行することを表している。また、衝突率が８０〜１００％であるとき周期パラメータは−１でメモリパトロール診断要求を停止することを表している。
【００４７】
診断アクセス要求調整部２４は、競合検出情報部２６の衝突率情報を参照し、これにより得られた衝突率でソフト設定情報部２７の周期パラメータテーブル情報を参照し、これを診断アクセス要求の断続実行の周期とする。アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００４８】
図１３（Ａ），（Ｂ）は、ソフトウェア３４，メモリコントローラ３が実行する処理の第３実施形態のフローチャートを示す。図１３（Ａ）において、ソフトウェア３４は、ステップＳ３１でソフトウェアに予め用意されている周期パラメータテーブルをメモリコントローラ３内のソフト設定情報部２７に周期パラメータテーブル情報を設定する。この処理は例えば電源投入時の初期設定として実行される。
【００４９】
図１３（Ｂ）において、メモリコントローラ３の診断アクセス要求調整部２４は、ステップＳ３２で競合検出情報部２６を参照して衝突率情報を得る。ステップＳ３３で診断アクセス要求調整部２４は得た衝突率を用いて周期パラメータテーブル情報を参照して衝突率に対応する周期パラメータを得る。次に、ステップＳ３４で上記周期パラメータを診断アクセス要求の断続実行の周期としステップＳ３２に戻る。
【００５０】
＜第４実施形態＞
図１４は、本発明の第４実施形態を説明するためのブロック構成図を示す。同図中、メモリパトロール診断要求部２１はメモリパトロール診断をアクセス制御部２２に要求する。
【００５１】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。アクセス制御部２２内のメモリアクセス競合検出部２５は、ＣＰＵ１からのメモリアクセスとメモリパトロール診断要求部２１からのメモリアクセスとのメモリアクセス競合、つまり、メモリアクセスの衝突を監視して衝突発生情報を競合検出情報部２６に送信する。競合検出情報部２６は衝突率を求める。
【００５２】
ソフトウェア３６は、ソフトウェアに予め用意されている衝突率閾値をメモリコントローラ３内のソフト設定情報部２７に衝突率閾値情報として設定する。
【００５３】
衝突率閾値情報は、メモリパトロール診断要求の断続実行の周期決定に用いられる衝突率の閾値（例えば２０％程度の固定値）であり、診断アクセス要求調整部２４によって参照される。
【００５４】
診断アクセス要求調整部２４は、競合検出情報部２６の衝突率情報とソフト設定情報部２７の衝突率閾値情報を参照し、これにより得られた衝突率と衝突率閾値を比較し、衝突率が衝突率閾値を超えた場合は断続実行の周期を所定量（例えば１００μｓｅｃ）だけ長くして衝突率が衝突率閾値以下となるように調整する。一方、衝突率が衝突率閾値以下の場合は断続実行の周期を所定量（例えば１００μｓｅｃ）だけ短くして衝突率が衝突率閾値に近付くように調整する。
【００５５】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００５６】
図１５（Ａ），（Ｂ）は、ソフトウェア３４，メモリコントローラ３が実行する処理の第４実施形態のフローチャートを示す。図１５（Ａ）において、ソフトウェア３６は、ステップＳ４１でソフトウェアに予め用意されている衝突率閾値をメモリコントローラ３内のソフト設定情報部２７に衝突率閾値情報として設定する。この処理は例えば電源投入時の初期設定として実行される。
【００５７】
図１５（Ｂ）において、ステップＳ４２でメモリコントローラ３の診断アクセス要求調整部２４は競合検出情報部２６の衝突率情報を参照して衝突率を得、ステップＳ４３でソフト設定情報部２７の衝突率閾値情報を参照して衝突率閾値を得る。ステップＳ４４で診断アクセス要求調整部２４は衝突率と衝突率閾値を比較し、衝突率＞衝突率閾値であればステップＳ４５で断続実行の周期を所定量だけ長くし、衝突率≦衝突率閾値であればステップＳ４６で断続実行の周期を所定量だけ短くする。そして、ステップＳ４７で診断アクセス要求の断続実行の周期を変更し、ステップＳ４２に戻る。
【００５８】
なお、図５に示す処理シーケンスは上記第４実施形態を表している。
【００５９】
＜第５実施形態＞
図１６は、本発明の第５実施形態を説明するためのブロック構成図を示す。同図中、メモリパトロール診断要求部２１はメモリパトロール診断をアクセス制御部２２に要求する。
【００６０】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００６１】
ソフトウェア３８は、ソフトウェアに予め用意されているＣＰＵ使用率閾値をメモリコントローラ３内のソフト設定情報部２７にＣＰＵ使用率閾値情報として設定し、また、定期的にＣＰＵ１の使用率を計算してメモリコントローラ３内のソフト設定情報部２７にＣＰＵ使用率情報に設定する。ＣＰＵ使用率閾値情報は、メモリパトロール診断要求の断続実行の周期決定に用いられるＣＰＵ使用率の閾値（例えば４０％程度の固定値）であり、診断アクセス要求調整部２４によって参照される。
【００６２】
診断アクセス要求調整部２４は、ソフト設定情報部２７のＣＰＵ使用率情報とＣＰＵ使用率閾値情報を参照し、これにより得られたＣＰＵ使用率とＣＰＵ使用率閾値を比較し、ＣＰＵ使用率がＣＰＵ使用率閾値を超えた場合は断続実行の周期を所定量（例えば１ｍｓｅｃ）だけ長くする。一方、ＣＰＵ使用率がＣＰＵ使用率閾値以下の場合は断続実行の周期を所定量（例えば１ｍｓｅｃ）だけ短くする。
【００６３】
アクセス制御部２２は、ＣＰＵ１からのメモリアクセスを実行し、ＣＰＵ１からのメモリアクセスがない場合はメモリパトロール診断要求によるメモリアクセスを実行する。
【００６４】
図１７（Ａ），（Ｂ）は、ソフトウェア３８，メモリコントローラ３が実行する処理の第５実施形態のフローチャートを示す。図１７（Ａ）において、ソフトウェア３８は、ステップＳ５１でソフトウェアに予め用意されているＣＰＵ使用率閾値をメモリコントローラ３内のソフト設定情報部２７にＣＰＵ使用率閾値情報として設定する。次に、ステップＳ５２でＣＰＵ１の使用率を計算し、ステップＳ５３でメモリコントローラ３内のソフト設定情報部２７にＣＰＵ使用率情報４０として設定する。
【００６５】
図１７（Ｂ）において、ステップＳ５４でメモリコントローラ３の診断アクセス要求調整部２４はソフト設定情報部２７のＣＰＵ使用率情報を参照してＣＰＵ使用率を得、ステップＳ５５でソフト設定情報部２７のＣＰＵ使用率閾値情報を参照してＣＰＵ使用率閾値を得る。ステップＳ５６で診断アクセス要求調整部２４はＣＰＵ使用率とＣＰＵ使用率閾値を比較し、ＣＰＵ使用率＞ＣＰＵ使用率閾値であればステップＳ５７で断続実行の周期を所定量だけ長くし、ＣＰＵ使用率≦ＣＰＵ使用率閾値であればステップＳ５８で断続実行の周期を所定量だけ短くする。そして、ステップＳ５９で断続実行の周期を変更し、ステップＳ５４に戻る。
【００６６】
＜第５実施形態の変形例＞
図１８（Ａ），（Ｂ）は、ソフトウェア３８，メモリコントローラ３が実行する処理の第５実施形態の変形例のフローチャートを示す。この変形例では、ＣＰＵ使用率の代りにサービス負荷数を用いる。なお、ＣＰＵ１が呼制御を行っている場合には、サービス負荷数の一例として通話呼数を使用する。
【００６７】
図１８（Ａ）において、ソフトウェア３８は、ステップＳ６１でソフトウェアに予め用意されているサービス負荷数閾値をメモリコントローラ３内のソフト設定情報部２７に設定する。次に、ステップＳ６２でサービス負荷数を計算し、ステップＳ６３でメモリコントローラ３内のソフト設定情報部２７に設定する。
【００６８】
図１８（Ｂ）において、ステップＳ６４でメモリコントローラ３の診断アクセス要求調整部２４はサービス負荷数情報を参照してサービス負荷数を得、ステップＳ６５でサービス負荷数閾値情報を参照してサービス負荷数閾値を得る。ステップＳ６６で診断アクセス要求調整部２４はサービス負荷数とサービス負荷数閾値を比較し、サービス負荷数＞サービス負荷数閾値であればステップＳ６７で断続実行の周期を所定量だけ長くし、サービス負荷数≦サービス負荷数閾値であればステップＳ６８で断続実行の周期を所定量だけ短くする。そして、ステップＳ６９で断続実行の周期を変更し、ステップＳ６４に戻る。
【００６９】
上記の各実施形態によれば、メモリパトロール診断要求部２１によるメモリ２の１ビットエラー訂正や訂正不可能なメモリエラー検出を行う機能を維持したまま、ＣＰＵ１とメモリパトロール診断要求部２１のメモリアクセス競合によるシステム性能の劣化を低減することができ、システム性能を向上することができる。また、衝突率、ＣＰＵ使用率、サービス負荷数等の複数の情報を扱えるため、システムの特徴に合わせたメモリパトロール機能を提供することが可能となる。
【００７０】
なお、上記実施形態では、メモリ診断手段の一例としてメモリパトロール診断要求部２１を用い、情報設定手段の一例としてソフト設定情報部２７を用い、周期調整手段の一例として診断アクセス要求調整部２４を用い、衝突率算出手段の一例としてメモリアクセス競合検出部２５，競合検出情報部２６を用いている。
（付記１）
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
（付記２）
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
（付記３）
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから前記衝突率算出手段の衝突率に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
（付記４）
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから複数の衝突率に応じた周期情報テーブルを設定される情報設定手段と、
前記衝突率算出手段の衝突率で前記周期情報テーブルを参照して得られる周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
（付記５）
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから衝突率閾値を設定される情報設定手段と、
前記衝突率算出手段の衝突率と前記情報設定手段の衝突率閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
（付記６）
ＣＰＵからメモリへのアクセスを制御するメモリコントローラに、前記メモリをアクセスして診断するメモリ診断手段を有するプロセッサシステムにおいて、
前記メモリコントローラは、
前記ＣＰＵから負荷状態と負荷状態閾値とを設定される情報設定手段と、
前記情報設定手段の負荷状態と前記情報設定手段の負荷状態閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするプロセッサシステム。
（付記７）
付記２記載のプロセッサシステムにおいて、
前記負荷状態は、ＣＰＵ使用率であることを特徴とするプロセッサシステム。
（付記８）
付記２記載のプロセッサシステムにおいて、
前記負荷状態は、サービス負荷数であることを特徴とするプロセッサシステム。
（付記９）
付記６記載のプロセッサシステムにおいて、
前記負荷状態はＣＰＵ使用率であり、前記負荷状態閾値はＣＰＵ使用率閾値であることを特徴とするプロセッサシステム。
（付記１０）
付記６記載のプロセッサシステムにおいて、
前記負荷状態はサービス負荷数であり、前記負荷状態閾値はサービス負荷数閾値であることを特徴とするプロセッサシステム。
（付記１１）
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから前記衝突率算出手段の衝突率に応じた周期情報を設定される情報設定手段と、
前記情報設定手段の周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
（付記１２）
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから複数の衝突率に応じた周期情報テーブルを設定される情報設定手段と、
前記衝突率算出手段の衝突率で前記周期情報テーブルを参照して得られる周期情報に基づいて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
（付記１３）
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記メモリ診断手段からメモリへのアクセスと前記ＣＰＵからメモリへのアクセスとの衝突を検出し衝突率を算出する衝突率算出手段と、
前記ＣＰＵから衝突率閾値を設定される情報設定手段と、
前記衝突率算出手段の衝突率と前記情報設定手段の衝突率閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
（付記１４）
ＣＰＵからメモリへのアクセスを制御し、前記メモリをアクセスして診断するメモリ診断手段を有するメモリコントローラにおいて、
前記ＣＰＵから負荷状態と負荷状態閾値とを設定される情報設定手段と、
前記情報設定手段の負荷状態と前記情報設定手段の負荷状態閾値との比較結果に応じて前記メモリ診断手段が前記メモリをアクセスする周期を調整する周期調整手段を有する
ことを特徴とするメモリコントローラ。
【図面の簡単な説明】
【００７１】
【図１】一般的なプロセッサのブロック構成図である。
【図２】従来のメモリコントローラのブロック構成図である。
【図３】従来構成における処理シーケンスである。
【図４】本発明のメモリコントローラの一実施形態のブロック構成図である。
【図５】本発明のメモリコントローラの一実施形態の処理シーケンスである。
【図６】本発明の第１実施形態を説明するためのブロック構成図である。
【図７】ソフトウェアが実行する処理の第１実施形態のフローチャートである。
【図８】ソフトウェアが実行する処理の第１実施形態の変形例のフローチャートである。
【図９】本発明の第２実施形態を説明するためのブロック構成図である。
【図１０】ソフトウェアが実行する処理の第２実施形態のフローチャートである。
【図１１】本発明の第３実施形態を説明するためのブロック構成図である。
【図１２】周期パラメータテーブル情報を示す図である。
【図１３】ソフトウェア，メモリコントローラが実行する処理の第３実施形態のフローチャートである。
【図１４】本発明の第４実施形態を説明するためのブロック構成図である。
【図１５】ソフトウェア，メモリコントローラが実行する処理の第４実施形態のフローチャートである。
【図１６】本発明の第５実施形態を説明するためのブロック構成図である。
【図１７】ソフトウェア，メモリコントローラが実行する処理の第５実施形態のフローチャートである。
【図１８】ソフトウェア，メモリコントローラが実行する処理の第５実施形態の変形例のフローチャートである。
【符号の説明】
【００７２】
１  ＣＰＵ
２  メモリ
３  メモリコントローラ
２１  メモリパトロール診断要求部
２２  アクセス制御部２２
２３  データ制御部
２４  診断アクセス要求調整部
２５  メモリアクセス競合検出部
２６  競合検出情報部
２７  ソフト設定情報部
【図１】
2009048224.tif 000003
【図２】
2009048224.tif 000004
【図３】
2009048224.tif 000005
【図４】
2009048224.tif 000006
【図５】
2009048224.tif 000007
【図６】
2009048224.tif 000008
【図７】
2009048224.tif 000009
【図８】
2009048224.tif 000010
【図９】
2009048224.tif 000011
【図１０】
2009048224.tif 000012
【図１１】
2009048224.tif 000013
【図１２】
2009048224.tif 000014
【図１３】
2009048224.tif 000015
【図１４】
2009048224.tif 000016
【図１５】
2009048224.tif 000017
【図１６】
2009048224.tif 000018
【図１７】
2009048224.tif 000019
【図１８】
2009048224.tif 000020