(57)【要約】【課題】記憶装置にアクセスが集中することによるアクセスの滞留を抑制する。【解決手段】半導体装置１は、複数のＩＰコア２と、複数の記憶装置６と、ＩＰコア２による記憶装置６へのアクセスタイミングを規定する設定情報を取得する設定情報取得部４と、ＩＰコア２に対して割り当てる記憶装置６を決定する割当決定部５と、を有する。設定情報取得部４は、第１のＩＰコア２Ａについての設定情報と、第２のＩＰコア２Ｂについての設定情報とを取得する。割当決定部５は、設定情報に基づいて、第１のＩＰコア２Ａによるアクセスタイミングと第２のＩＰコア２Ｂによるアクセスタイミングとが同じであるか否かを判定し、アクセスタイミングが同じであると判定される場合、第１のＩＰコア２Ａに割り当てる記憶装置６と第２のＩＰコア２Ｂに割り当てる記憶装置６とが別になるように割り当てを決定する。【選択図】図１
2018022319.tif 000002
【特許請求の範囲】
【請求項１】
複数のＩＰコアと、
複数の記憶装置を備えた記憶システムと、
前記ＩＰコアによる前記記憶システムを用いた処理の開始時に、前記ＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングを規定する設定情報を取得する設定情報取得部と、
前記複数のＩＰコアのうち処理を開始するＩＰコアに対して割り当てる前記記憶装置を決定する割当決定部と、
を有し、
前記設定情報取得部は、前記複数のＩＰコアのうちの第１のＩＰコアについての前記設定情報と、前記複数のＩＰコアのうちの第２のＩＰコアについての前記設定情報とを取得し、
前記割当決定部は、前記設定情報取得部が取得した前記第１のＩＰコアについての設定情報と、前記第２のＩＰコアについての設定情報とに基づいて、前記第１のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングと前記第２のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングとが同じであるか否かを判定し、アクセスタイミングが同じであると判定される場合、前記第１のＩＰコアに割り当てる前記記憶装置と前記第２のＩＰコアに割り当てる前記記憶装置とが別になるように割り当てを決定する
半導体装置。
【請求項２】
前記複数の記憶装置それぞれのアクセス負荷を取得する負荷取得部と、
前記負荷取得部により取得された前記複数の記憶装置のそれぞれのアクセス負荷に基づいて、前記割当決定部により決定された前記割り当てを変更する割当変更部と
をさらに有する請求項１に記載の半導体装置。
【請求項３】
前記記憶システムは、仮想アドレスから物理アドレスへの変換を行うメモリ管理ユニットをさらに備え、
前記ＩＰコアは、前記仮想アドレスを用いてアクセス先の指定を行い、
前記メモリ管理ユニットは、前記ＩＰコアに指定されたアクセス先の前記仮想アドレスを、前記記憶装置の前記物理アドレスに変換し、
前記割当変更部は、変換元の前記仮想アドレスに対応する変換先の前記物理アドレスを、第１の物理アドレスから第２の物理アドレスへと変更することにより、前記割り当てを変更する
請求項２に記載の半導体装置。
【請求項４】
前記割当変更部は、前記複数のＩＰコアのうちの予め定められたＩＰコアに対して前記割当決定部によって割り当てられた前記記憶装置のアクセス負荷が、予め定められた閾値以上である場合に、前記予め定められたＩＰコアに割り当てる前記記憶装置を変更する
請求項２に記載の半導体装置。
【請求項５】
前記第１のＩＰコア及び前記第２のＩＰコアは、それぞれ画像処理を行い、
前記設定情報は、動画のフレームレート、画像サイズ、及び色フォーマットを含む
請求項１に記載の半導体装置。
【請求項６】
第１のＩＰコアによる記憶システムを用いた処理の開始時に、前記第１のＩＰコアによる前記記憶システムに含まれるいずれかの記憶装置へのアクセスタイミングを規定する第１の設定情報を取得し、
第２のＩＰコアによる前記記憶システムを用いた処理の開始時に、前記第２のＩＰコアによる前記記憶システムに含まれるいずれかの前記記憶装置へのアクセスタイミングを規定する第２の設定情報を取得し、
前記第１の設定情報と前記第２の設定情報とに基づいて、前記第１のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングと前記第２のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングとが同じであるか否かを判定し、
アクセスタイミングが同じであると判定される場合、前記第１のＩＰコアに割り当てる前記記憶装置と前記第２のＩＰコアに割り当てる前記記憶装置とが別になるように、前記第１のＩＰコアに対する前記記憶装置の割り当て及び前記第２のＩＰコアに対する前記記憶装置の割り当てを決定する
割り当て方法。
【請求項７】
さらに、
前記記憶装置それぞれのアクセス負荷を取得し、
取得された前記記憶装置それぞれのアクセス負荷に基づいて、決定された前記割り当てを変更する
請求項６に記載の割り当て方法。
【請求項８】
前記ＩＰコアは、仮想アドレスを用いてアクセス先の指定を行い、
前記記憶システムは、前記ＩＰコアに指定されたアクセス先の前記仮想アドレスを、前記記憶装置の物理アドレスに変換するメモリ管理ユニットを備え、
前記方法において、決定された前記割り当てを変更する際、変換元の前記仮想アドレスに対応する変換先の前記物理アドレスを、第１の物理アドレスから第２の物理アドレスへと変更することにより、前記割り当てを変更する
請求項７に記載の割り当て方法。
【請求項９】
決定された前記割り当てを変更する際、前記第１のＩＰコア及び前記第２のＩＰコアのうちの予め定められたＩＰコアに対して割り当てられた前記記憶装置のアクセス負荷が、予め定められた閾値以上である場合に、前記予め定められたＩＰコアに割り当てる前記記憶装置を変更する
請求項７に記載の割り当て方法。
【請求項１０】
前記第１のＩＰコア及び前記第２のＩＰコアは、それぞれ画像処理を行い、
前記設定情報は、動画のフレームレート、画像サイズ、及び色フォーマットを含む
請求項６に記載の割り当て方法。
【請求項１１】
第１の表示装置と、
第２の表示装置と、
前記第１の表示装置に表示する画像データについて画像処理する第１のＩＰコアと、
前記第２の表示装置に表示する画像データについて画像処理する第２のＩＰコアと、
複数の記憶装置を備えた記憶システムと、
前記第１のＩＰコアによる前記記憶システムを用いた処理の開始時に、前記第１のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングを規定する第１の設定情報を取得し、かつ、前記第２のＩＰコアによる前記記憶システムを用いた処理の開始時に、前記第２のＩＰコアによるいずれかの前記記憶装置へのアクセスタイミングを規定する第２の設定情報を取得する設定情報取得部と、
前記第１のＩＰコア及び前記第２のＩＰコアのうち処理を開始するＩＰコアに対して割り当てる前記記憶装置を決定する割当決定部と、
を有し、
前記設定情報は、動画のフレームレート、画像サイズ、及び色フォーマットを含み、
前記割当決定部は、前記設定情報取得部が取得した前記第１の設定情報と、前記第２の設定情報とに基づいて、前記第１のＩＰコアによる前記記憶装置へのアクセスタイミングと前記第２のＩＰコアによる前記記憶装置へのアクセスタイミングとが同じであるか否かを判定し、アクセスタイミングが同じであると判定される場合、前記第１のＩＰコアに割り当てる前記記憶装置と前記第２のＩＰコアに割り当てる前記記憶装置とが別になるように割り当てを決定する
表示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体装置、割り当て方法及び表示システムに関し、例えばＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ Ｐｒｏｐｅｒｔｙ）コアに対する記憶装置の割り当てに関する。
【背景技術】
【０００２】
近年の機器（例えば、カーナビゲーション装置、情報エンターテイメント機器など）では、高画質化、高音質化などといった背景により、扱われるデータ量が向上している。このため、機器に搭載されたＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）、及び、画像処理又は音声処理などを行う専用回路のメモリ使用量は、増加傾向にある。このため、このような機器では、１つの記憶装置ではなく、複数の記憶装置を搭載することが一般的である。
【０００３】
例えば、特許文献１では、複数のプロセッサと、複数の主記憶装置とを有するマルチプロセッサシステムについて開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−３２４９９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
記憶装置へのアクセス元が複数ある場合、一の記憶装置へのアクセスが集中することによるアクセスの滞留が生じるという問題がある。特許文献１では、主記憶参照要求のオーバヘッドを削減する技術について開示するものの、アクセスが集中することによるアクセスの滞留の抑制については開示していない。
【０００６】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
一実施の形態によれば、半導体装置は、第１のＩＰコアについての設定情報と、第２のＩＰコアについての設定情報とに基づいて、第１のＩＰコアによるアクセスタイミングと第２のＩＰコアによるアクセスタイミングとが同じであるか否かを判定し、アクセスタイミングが同じであると判定される場合、第１のＩＰコアに割り当てる記憶装置と第２のＩＰコアに割り当てる記憶装置とが別になるように割り当てを決定する。
【発明の効果】
【０００８】
前記一実施の形態によれば、記憶装置にアクセスが集中することによるアクセスの滞留を抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態の概要にかかる半導体装置の構成の一例を示すブロック図である。
【図２】実施の形態の概要にかかる半導体装置におけるデータ領域の割り当て動作の一例を示すフローチャートである。
【図３】実施の形態１にかかる表示システムの構成の一例を示すブロック図である。
【図４】実施の形態１にかかる表示システムにおけるデータ領域の割り当て動作の一例を示すフローチャートである。
【図５】実施の形態２にかかる表示システムの構成の一例を示すブロック図である。
【図６】実施の形態２にかかる表示システムにおけるデータ領域の割り当て動作の一例を示すフローチャートである。
【図７】実施の形態２にかかる表示システムにおけるデータ領域の割り当ての変更動作の一例を示すフローチャートである。
【図８】比較例にかかる半導体装置の構成を示すブロック図である。
【図９】比較例にかかるデータ領域の割り当てを示す模式図である。
【発明を実施するための形態】
【００１０】
説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００１１】
＜発明者により検討された事項＞
まず、発明者による事前の検討事項について説明する。図８は、比較例にかかる半導体装置９０の構成を示すブロック図である。半導体装置９０は、ＣＰＵ９１と、ＩＰコア９２Ａ、９２Ｂと、バスコントローラ９３と、記憶装置９４Ａ、９４Ｂ、９４Ｃ、９４Ｄとを有している。このように、半導体装置９０は、複数のＩＰコアと、複数の記憶装置とを有している。なお、図８では、一例として、２つのＩＰコアと４つの記憶装置とを半導体装置９０は有しているが、ＩＰコアの数及び記憶装置の数はそれぞれ２以上であればよい。
【００１２】
なお、以下の説明において、ＩＰコア９２ＡとＩＰコア９２Ｂとを特に区別しないで言及する場合には、単にＩＰコア９２と称することとする。同様に、記憶装置９４Ａ、記憶装置９４Ｂ、記憶装置９４Ｃ及び記憶装置９４Ｄについて、特に区別しないで言及する場合には、単に記憶装置９４と称することとする。なお、以下に示す実施の形態の説明においても、同種の複数の構成要素についてそれらを区別せずに言及する場合、同様に表記する。
【００１３】
半導体装置９０においては、ＣＰＵ９１と、ＩＰコア９２Ａと、ＩＰコア９２Ｂとが、記憶装置９４にアクセスしうる。このため、例えば、ＩＰコア９２Ａのデータ領域と、ＩＰコア９２Ｂのデータ領域とが、同じ記憶装置９４（例えば、記憶装置９４Ａ）に配置されると、ＩＰコア９２によるアクセス対象が偏ることとなる。すなわち、半導体装置９０は、４つの記憶装置９４から構成される４チャネルの記憶システムを備えているが、上記のような配置が行われた場合、１つのチャネルにアクセスが集中することとなる。これにより、ＩＰコア９２の使用帯域が、１チャネルあたりの最大帯域を超えてしまい、アクセスが滞留してしまう。
【００１４】
このようなアクセスの偏りを防ぐため、バスコントローラ９３により、予め定められたアドレス単位毎にデータ領域を各記憶装置９４に振り分けることが考えられる。バスコントローラ９３は、例えば４Ｋ（キロ）バイトを１つの単位として、ＣＰＵ９１及びＩＰコア９２のデータ領域を各記憶装置９４に振り分ける。具体的には、例えば、バスコントローラ９３は、ＩＰコア９２Ａのデータ領域を次のように各記憶装置９４に分散して配置する。ＩＰコア９２Ａの第１のデータ領域は記憶装置９４Ａに配置され、ＩＰコア９２Ａの第２のデータ領域は記憶装置９４Ｂに配置され、ＩＰコア９２Ａの第３のデータ領域は記憶装置９４Ｃに配置され、ＩＰコア９２Ａの第４のデータ領域は記憶装置９４Ｄに配置される。ここで、第１のデータ領域は、ＩＰコア９２Ａのアクセス先のアドレスが、４Ｋ×ｎ〜４Ｋ×（ｎ＋１）−１である場合にアクセスされる領域である。また、第２のデータ領域は、ＩＰコア９２Ａのアクセス先のアドレスが、４Ｋ×（ｎ＋１）〜４Ｋ×（ｎ＋２）−１である場合にアクセスされる領域である。また、第３のデータ領域は、ＩＰコア９２Ａのアクセス先のアドレスが、４Ｋ×（ｎ＋２）〜４Ｋ×（ｎ＋３）−１である場合にアクセスされる領域である。また、第４のデータ領域は、ＩＰコア９２Ａのアクセス先のアドレスが、４Ｋ×（ｎ＋３）〜４Ｋ×（ｎ＋４）−１である場合にアクセスされる領域である。
【００１５】
データ領域がこのように割り当てられた場合、例えば図９に示す状態が発生する。図９は、比較例にかかるデータ領域の割り当てを示す模式図である。図９に示した例では、記憶装置９４ＡにＩＰコア９２Ａ用のデータ領域９４１ＡとＩＰコア９２Ｂ用のデータ領域９４１Ｂとが配置されている。同様に、記憶装置９４ＢにＩＰコア９２Ａ用のデータ領域９４２ＡとＩＰコア９２Ｂ用のデータ領域９４２Ｂとが配置されている。また、記憶装置９４ＣにＩＰコア９２Ａ用のデータ領域９４３ＡとＩＰコア９２Ｂ用のデータ領域９４３Ｂとが配置されている。さらに、記憶装置９４ＤにＩＰコア９２Ａ用のデータ領域９４４ＡとＩＰコア９２Ｂ用のデータ領域９４４Ｂとが配置されている。
【００１６】
しかし、このような配置が行われた場合であっても、ＩＰコア９２ＡとＩＰコア９２Ｂとが、同一の記憶装置９４に同じタイミングでアクセスする場合には、アクセスの滞留が生じうる。例えば、ＩＰコア９２Ａが、自動車の前席に設けられた表示装置に動画を表示するための画像処理を行い、ＩＰコア９２Ｂが、自動車の後席に設けられた表示装置に動画を表示するための画像処理を行うとする。この場合、前席の表示装置に表示される動画のフォーマットと、後席の表示装置に表示される動画のフォーマットとが同じであるときには、次のようなアクセスが発生することとなる。なお、ここでいう動画のフォーマットは、動画のフレームレートと、動画を構成する画像のデータサイズとを規定する仕様のことである。
【００１７】
フォーマットが同じであるため、ＩＰコア９２ＡとＩＰコア９２Ｂは、同じタイミングで同一の記憶装置９４にアクセスすることとなる。例えば、ＩＰコア９２Ａが記憶装置９４Ａのデータ領域９４１Ａにアクセスするタイミングで、ＩＰコア９２Ｂによる記憶装置９４Ｂのデータ領域９４１Ｂへのアクセスが発生する。このような同一の記憶装置９４への重複したアクセスが周期的に発生し続ける。すなわち、アクセスの滞留が定常的に発生する。例えば、フレームレートとして、１秒あたり６０フレームの画像を表示することが規定されている場合、１６．６ミリ秒毎に、各ＩＰコア９２はフレーム画像を処理する必要がある。しかしながら、アクセスが滞ってしまうと、各ＩＰコア９２は、この時間内に画像処理を完了することができない。この結果、表示する画像のコマ落ちが発生してしまう。このように、ＩＰコア９２が規定のレートに従って処理を実行する専用回路である場合、定常的なアクセスの滞留が生じてしまい、処理が滞る事態が発生する。
【００１８】
＜実施の形態の概要＞
次に、実施の形態について説明する。実施の形態の詳細について説明する前に、まず、実施の形態の概要について説明する。図１は、実施の形態の概要にかかる半導体装置１の構成の一例を示すブロック図である。
【００１９】
図１に示されるように、半導体装置１は、複数のＩＰコアとして、ＩＰコア２Ａと、ＩＰコア２Ｂとを有している。また、半導体装置１は、記憶システム３と、設定情報取得部４と、割当決定部５とを有している。
【００２０】
各ＩＰコア２は、予め定められた処理を行う専用回路である。予め定められた処理としては、例えば、規定のレートで行う処理が挙げられる。規定のレートで行う処理としては、例えば、動画表示のための画像処理、音声出力のための音声処理、所定の伝送レートで伝送を行うための通信処理などが挙げられる。したがって、一例としては、ＩＰコア２Ａ及びＩＰコア２Ｂは、画像処理を行う専用回路である。各ＩＰコア２は、記憶システム３を用いて処理を実行する。言い換えると、各ＩＰコア２は、記憶システム３に含まれる記憶装置６にアクセスして処理を実行する。
【００２１】
記憶システム３は、複数の記憶装置を備えている。具体的には、記憶システム３は、記憶装置６Ａ、６Ｂ、６Ｃ、６Ｄを備えている。各記憶装置６は、例えばＤＤＲ（Ｄｏｕｂｌｅ ＤＡＴＡ Ｒａｔｅ）メモリなどの揮発性メモリである。しかしながら、各記憶装置６は、これに限らず、他の種類の記憶装置であってもよい。各記憶装置６は、例えば、ハードディスクドライブであってもよい。
【００２２】
設定情報取得部４は、ＩＰコア２による記憶システム３を用いた処理の開始時に、設定情報を取得する。この設定情報は、ＩＰコア２によるいずれかの記憶装置６へのアクセスタイミングを規定する情報であり、例えば、上述の動画のフォーマットを示す情報である。設定情報取得部４は、ＩＰコア２Ａについての設定情報と、ＩＰコア２Ｂについての設定情報とを取得する。
【００２３】
割当決定部５は、ＩＰコア２のうち処理を開始するＩＰコア２に対して割り当てる記憶装置６を決定する。割当決定部５は、ＩＰコア２ＡとＩＰコア２Ｂのそれぞれに対し、データ領域を割り当てる必要がある場合、次のようにして、割り当てを決定する。
【００２４】
まず、割当決定部５は、設定情報取得部４が取得したＩＰコア２Ａについての設定情報と、ＩＰコア２Ｂについての設定情報とに基づいて、ＩＰコア２Ａによるいずれかの記憶装置６へのアクセスタイミングとＩＰコア２によるいずれかの記憶装置へのアクセスタイミングとが同じであるか否かを判定する。そして、両者のアクセスタイミングが同じであると判定される場合、割当決定部５は、ＩＰコア２に割り当てる記憶装置６とＩＰコアに割り当てる記憶装置６とが別になるように割り当てを決定する。なお、両者のアクセスタイミングが同じであると判定されない場合には、割当決定部５は、任意の割り当てを行う。例えば、両者のアクセスタイミングが同じであると判定されない場合には、割当決定部５は、予め定められた割り当て規則に従って、割り当てを行う。よって、この場合、ＩＰコア２Ａに割り当てる記憶装置６とＩＰコア２Ｂに割り当てる記憶装置６とが同じになることもある。
【００２５】
図２は、実施の形態の概要にかかる半導体装置１におけるデータ領域の割り当て動作の一例を示すフローチャートである。以下、図２に沿って、半導体装置１におけるデータ領域の割り当て動作について説明する。
【００２６】
ステップ１０（Ｓ１０）において、設定情報取得部４が、ＩＰコア２Ａによる記憶システム３を用いた処理の開始時に、ＩＰコア２Ａについての設定情報を取得する。
次に、ステップ１１（Ｓ１１）において、設定情報取得部４が、ＩＰコア２Ｂによる記憶システム３を用いた処理の開始時に、ＩＰコア２Ｂについての設定情報を取得する。
なお、ステップ１０とステップ１１は、順序が逆であってもよいし、両ステップが同時に行われてもよい。
【００２７】
次に、ステップ１２（Ｓ１２）において、割当決定部５は、ステップ１０で取得された設定情報とステップ１１で取得された設定情報とに基づいて、ＩＰコア２Ａによる記憶装置６へのアクセスタイミングとＩＰコア２Ｂによる記憶装置６へのアクセスタイミングとが同じであるか否かを判定する。両者のアクセスタイミングが同じであると判定される場合（Ｓ１２でＹＥＳ）、割り当て処理はステップ１３に移行する。これに対し、両者のアクセスタイミングが異なると判定される場合（Ｓ１２でＮＯ）、割り当て処理はステップ１４に移行する。
【００２８】
ステップ１３（Ｓ１３）において、割当決定部５は、ＩＰコア２Ａに割り当てる記憶装置６とＩＰコア２Ｂに割り当てる記憶装置６とが別になるように、ＩＰコア２Ａに対する記憶装置６の割り当て及びＩＰコア２Ｂに対する記憶装置６の割り当てを決定する。
ステップ１４（Ｓ１４）において、割当決定部５は、任意の割り当てを行う。
【００２９】
半導体装置１によれば、設定情報取得部４が取得した設定情報により、複数のＩＰコア２によるアクセスタイミングが重複するか否かを判定することができる。そして、アクセスタイミングが重複する場合には、これらのＩＰコア２に対し、別々の記憶装置６を割り当てることができる。したがって、同一の記憶装置６にアクセスが集中することを防ぐことが可能となり、アクセスの滞留を抑制することができる。よって、例えば、ＩＰコア２が画像処理を行う専用回路である場合、動画のコマ落ちを抑制することができる。また、例えば、ＩＰコア２が音声処理を行う専用回路である場合、再生中の音が途切れることを抑制することができる。つまり、高画質なコンテンツ又は高音質のコンテンツが再生される場合であっても、映像の乱れ又は音声の乱れを抑制して、コンテンツの再生が可能となる。
【００３０】
＜実施の形態１＞
次に、実施の形態１について説明する。図３は、実施の形態１にかかる表示システム１０の構成の一例を示すブロック図である。図３に示されるように、表示システム１０は、表示装置１００Ａ、１００Ｂと、ＣＰＵ１１０と、ＩＰコア１２０Ａ、１２０Ｂと、記憶システム１３０とを有する。表示システム１０は、例えば自動車に搭載される表示システムである。
【００３１】
各表示装置１００は、液晶ディスプレイ又は有機ＥＬディスプレイなどのディスプレイである。例えば、表示装置１００Ａは、自動車の前席に設けられた表示装置であり、表示装置１００Ｂは、自動車の後席に設けられた表示装置である。表示装置１００は、ＩＰコア１２０により処理された動画像を表示する。具体的には、例えば、表示装置１００Ａは、ＩＰコア１２０Ａにより処理された動画像を表示し、表示装置１００Ｂは、ＩＰコア１２０Ｂにより処理された動画像を表示する。
【００３２】
ＣＰＵ１１０は、記憶システム１３０のＤＤＲ１３１にロードされたプログラム、又は表示システム１０が備える図示しないメモリにロードされたプログラムを実行することにより、表示システム１０の全体を制御する。そのような制御の一つとして、ＣＰＵ１１０は、ＩＰコア１２０により処理された動画像を表示装置１００において表示する制御を行う。例えば、ＣＰＵ１１０は、ＩＰコア１２０により処理されて記憶システム１３０に記憶された画像データを、表示装置１００に表示出力する処理を行う。
【００３３】
また、ＣＰＵ１１０が、プログラムを実行することにより、設定情報取得部１１１及び割当決定部１１２が実現される。すなわち、表示システム１０は、設定情報取得部１１１及び割当決定部１１２も有する。なお、設定情報取得部１１１及び割当決定部１１２については、後述する。このように、表示システム１０は、コンピュータとしての機能を有している。
【００３４】
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００３５】
各ＩＰコア１２０は、予め定められた処理を行う専用回路であり、本実施の形態では、デーコード処理などの所定の画像処理を行う専用回路である。各ＩＰコア１２０は、画像処理の際、記憶システム１３０に含まれるＤＤＲ１３１にアクセスする。また、本実施の形態では、ＩＰコア１２０Ａは、表示装置１００Ａに表示する画像データを生成するための画像処理を実行し、ＩＰコア１２０Ｂは、表示装置１００Ｂに表示する画像データを生成するための画像処理を実行する。なお、ＩＰコア１２０は、例えば、表示システム１０の図示しない記憶装置に格納された動画コンテンツのデータ、又は表示システム１０が受信した動画コンテンツのデータを処理対象としてもよい。また、ＩＰコア１２０は、表示システム１０が搭載された自動車に設けられた図示しないカメラが撮像した動画像データを処理対象としてもよい。
【００３６】
ＩＰコア１２０Ａは、設定情報記憶レジスタ１２１Ａと、アドレス記憶レジスタ１２２Ａとを有する。同様に、ＩＰコア１２０Ｂは、設定情報記憶レジスタ１２１Ｂと、アドレス記憶レジスタ１２２Ｂとを有する。
【００３７】
各設定情報記憶レジスタ１２１は、上述の設定情報を記憶するレジスタである。本実施の形態では、設定情報記憶レジスタ１２１は、設定情報である、動画のフォーマットを示す情報を記憶するレジスタである。具体的には、設定情報記憶レジスタ１２１は、このような情報として、動画のフレームレートと、動画の画像サイズと、色フォーマットとを特定する情報を記憶する。なお、色フォーマットとは、各ピクセルの色数を規定する仕様をいう。表示装置１００に表示される画像のサイズと、この画像の色フォーマットとが特定されることにより、この画像のデータサイズが特定される。
【００３８】
ＩＰコア１２０は、予め定められたデータ単位でＤＤＲ１３１にアクセスする。また、ＩＰコア１２０は、動画のフレームレートにより定まる規定時間（例えば１６．６ミリ秒）内に１つのフレーム画像を処理する必要がある。このため、ＩＰコア１２０は、規定時間内に、予め定められたデータ単位のアクセスを、１フレームの画像のデータサイズに応じた回数だけ繰り返すこととなる。このため、設定情報、すなわち動画のフォーマットを示す情報は、アクセスタイミングを規定する情報となる。
【００３９】
設定情報は、ＩＰコア１２０による処理の開始時に、ＣＰＵ１１０により設定情報記憶レジスタ１２１に設定される。例えば、表示装置１００Ａと表示装置１００Ｂとで同じ動画像を同時に表示する場合、ＩＰコア１２０Ａの設定情報記憶レジスタ１２１Ａに設定される設定情報と、ＩＰコア１２０Ｂの設定情報記憶レジスタ１２１Ｂに設定される設定情報とが同じとなる。つまり、この場合、ＩＰコア１２０Ａが処理する動画のフレームレートとＩＰコア１２０Ｂが処理する動画のフレームレートとが一致し、かつ、ＩＰコア１２０Ａが処理する動画の画像のデータサイズとＩＰコア１２０Ｂが処理する動画の画像のデータサイズとが一致する。このため、ＩＰコア１２０Ａによるアクセスタイミングと、ＩＰコア１２０Ｂによるアクセスタイミングとが一致することとなる。
【００４０】
各アドレス記憶レジスタ１２２は、ＩＰコア１２０に割り当てられたデータ領域を特定するためのアドレスを記憶するレジスタである。アドレス記憶レジスタ１２２は、例えば、ＩＰコア１２０に割り当てられたデータ領域の先頭アドレスを記憶する。ＩＰコア１２０は、アドレス記憶レジスタ１２２に記憶されたアドレスを参照することにより、アクセス先を特定する。ＩＰコア１２０に対するデータ領域の割り当てが、割当決定部１１２により決定されると、決定された割り当てに従ったアドレスがＩＰコア１２０のアドレス記憶レジスタ１２２に設定される。
【００４１】
記憶システム１３０は、複数の記憶装置として、ＤＤＲメモリであるＤＤＲ１３１Ａ、１３１Ｂ、１３１Ｃ、１３１Ｄを備えている。また、記憶システム１３０は、バスコントローラ１３２を備えている。ＤＤＲ１３１には、ＩＰコア１２０による処理が完了した画像データが格納される。バスコントローラ１３２は、ＣＰＵ１１０及びＩＰコア１２０によるＤＤＲ１３１に対する書き込み又は読み出しを制御する。なお、バスコントローラ１３２は、比較例にかかる半導体装置９０におけるバスコントローラ９３と異なり、ＩＰコア１２０に対するデータ領域の割り当ては行わない。本実施の形態では、この割り当ては、後述する割当決定部１１２により行われる。
【００４２】
設定情報取得部１１１は、上述の設定情報取得部４に相当する。よって、設定情報取得部１１１は、ＩＰコア１２０Ａによる記憶システム１３０を用いた処理の開始時に、ＩＰコア１２０Ａについての設定情報を取得する。具体的には、設定情報取得部１１１は、ＩＰコア１２０Ａの設定情報記憶レジスタ１２１Ａの記憶内容を読み出して、設定情報を取得する。また、設定情報取得部１１１は、ＩＰコア１２０Ｂによる記憶システム１３０を用いた処理の開始時に、ＩＰコア１２０Ｂについての設定情報を取得する。具体的には、設定情報取得部１１１は、ＩＰコア１２０Ｂの設定情報記憶レジスタ１２１Ｂの記憶内容を読み出して、設定情報を取得する。
【００４３】
割当決定部１１２は、上述の割当決定部５に相当する。よって、割当決定部１１２は、ＩＰコア１２０のうち処理を開始するＩＰコア１２０に対して割り当てるＤＤＲ１３１を決定する。ここで、割当決定部１１２は、割当決定部５と同様、次のようにして割り当てを決定する。すなわち、割当決定部１１２は、設定情報取得部１１１が取得した、ＩＰコア１２０Ａについての設定情報及びＩＰコア１２０Ｂについての設定情報に基づいて、ＩＰコア１２０ＡによるＤＤＲ１３１へのアクセスタイミングとＩＰコア１２０ＢによるＤＤＲ１３１へのアクセスタイミングとが同じであるか否かを判定する。そして、両者のアクセスタイミングが同じであると判定される場合、割当決定部１１２は、ＩＰコア１２０Ａに割り当てるＤＤＲ１３１とＩＰコア１２０Ｂに割り当てるＤＤＲ１３１とが別になるように割り当てを決定する。なお、両者のアクセスタイミングが同じであると判定されない場合には、割当決定部１１２は、任意の割り当てを行う。
【００４４】
割当決定部１１２は、割り当てを決定すると、ＩＰコア１２０に対して割り当てたＤＤＲ１３１のアドレス空間を示すアドレスを、このＩＰコア１２０のアドレス記憶レジスタ１２２に設定する。なお、本実施の形態では、割当決定部１１２は、ＤＤＲ１３１の物理アドレスを、アドレス記憶レジスタ１２２に設定する。
なお、割当決定部１１２は、ＩＰコア１２０に対するデータ領域の割り当てに限らず、ＣＰＵ１１０に対するデータ領域の割り当てを行ってもよい。
【００４５】
図４は、実施の形態１にかかる表示システム１０におけるデータ領域の割り当て動作の一例を示すフローチャートである。なお、図４に示すフローチャートは、例えば、表示装置１００Ａと表示装置１００Ｂに同じ動画像を同時に表示する場合の割り当て動作を示すフローチャートである。表示装置１００Ａと表示装置１００Ｂに同じ動画像を同時に表示する場合であっても、各ＩＰコア１２０の起動処理は、一般的にシーケンシャルに行われるため、起動処理の一例は図４に示すように表される。しかしながら、各ＩＰコア１２０の起動処理は、並行して同時に行われてもよい。すなわち、ＩＰコア１２０Ａのためのデータ領域の確保後にＩＰコア１２０Ｂのためのデータ領域の確保が行われるのではなく、各ＩＰコア１２０のためのデータ領域の確保が同時に行われてもよい。以下、図４に沿って、表示システム１０におけるデータ領域の割り当て動作について説明する。
【００４６】
ステップ２０（Ｓ２０）において、設定情報取得部１１１が、ＩＰコア１２０Ａについての設定情報を設定情報記憶レジスタ１２１Ａから取得する。
次に、ステップ２１（Ｓ２１）において、割当決定部１１２は、ＩＰコア１２０Ａのためのデータ領域を確保する。なお、この時点では、ＩＰコア１２０Ａ以外の他のＩＰコア１２０とアクセスが競合していないため、割当決定部１１２は、任意のＤＤＲ１３１にＩＰコア１２０Ａのためのデータ領域を確保する。
【００４７】
次に、ステップ２２（Ｓ２２）において、割当決定部１１２は、ＩＰコア１２０Ａに対して割り当てたＤＤＲ１３１のアドレス空間を示すアドレスを、ＩＰコア１２０Ａのアドレス記憶レジスタ１２２Ａに設定する。これにより、ＩＰコア１２０Ａにおいて画像処理を開始するための準備が完了する。
次に、ステップ２３（Ｓ２３）において、割当決定部１１２は、ステップ２０で取得された設定情報を、記憶する。具体的には、例えば、割当決定部１１２は、ＣＰＵ１１０に割り当てられた、ＤＤＲ１３１上のデータ領域にこの設定情報を記憶する。
【００４８】
次に、ステップ２４（Ｓ２４）において、設定情報取得部１１１が、ＩＰコア１２０Ｂについての設定情報を設定情報記憶レジスタ１２１Ｂから取得する。割当決定部１１２は、ステップ２３において既に設定情報が記憶されていることから、ＩＰコア１２０Ｂによるアクセスが他のＩＰコア１２０によるアクセスと重複する可能性があると判断し、ステップ２５の判定を行う。
【００４９】
ステップ２５（Ｓ２５）において、割当決定部１１２は、ステップ２３で記憶されたＩＰコア１２０Ａについての設定情報と、ステップ２４で取得されたＩＰコア１２０Ｂについての設定情報とが同じであるか否かを判定する。両設定情報が同じである場合、割り当て処理は、ステップ２６に移行する。これに対し、両設定情報が同じでない場合、割り当て処理は、ステップ２７に移行する。
【００５０】
ステップ２６（Ｓ２６）において、割当決定部１１２は、ＩＰコア１２０Ａのデータ領域が存在するＤＤＲ１３１とは別のＤＤＲ１３１に、ＩＰコア１２０Ｂのためのデータ領域を確保する。これにより、ＩＰコア１２０Ａ及びＩＰコア１２０Ｂが、同一のＤＤＲ１３１に同じタイミングでアクセスすることが防がれる。そして、割り当て処理は、ステップ２８に移行する。
これに対し、ステップ２７（Ｓ２７）では、同一の記憶装置９４への重複したアクセスが周期的に発生し続けることがないため、割当決定部１１２は、任意のＤＤＲ１３１に、ＩＰコア１２０Ｂのためのデータ領域を確保する。そして、割り当て処理は、ステップ２８に移行する。
【００５１】
ステップ２８（Ｓ２８）において、割当決定部１１２は、ＩＰコア１２０Ｂに対して割り当てたＤＤＲ１３１のアドレス空間を示すアドレスを、ＩＰコア１２０Ｂのアドレス記憶レジスタ１２２Ｂに設定する。これにより、ＩＰコア１２０Ｂにおいて画像処理を開始するための準備が完了する。
次に、ステップ２９（Ｓ２９）において、割当決定部１１２は、ステップ２４で取得された設定情報を、記憶する。
以上の処理により、割り当て処理が完了し、ＩＰコア１２０Ａによる画像処理と、ＩＰコア１２０Ｂによる画像処理とが、並行して行われる。
【００５２】
以上、実施の形態１にかかる表示システム１０について説明した。表示システム１０によれば、設定情報取得部１１１が取得した設定情報により、複数のＩＰコア１２０によるアクセスタイミングが重複するか否かを判定することができる。そして、アクセスタイミングが重複する場合には、これらのＩＰコア１２０に対し、別々のＤＤＲ１３１を割り当てることができる。したがって、表示装置１００Ａと表示装置１００Ｂに、同じ動画像を同時に表示する場合であっても、映像の乱れを抑制することができる。
【００５３】
＜実施の形態２＞
次に、実施の形態２について説明する。実施の形態１では、ＩＰコアによる処理の開始時に当該ＩＰコアのためのデータ領域が確保され、ＩＰコアによる処理が開始された後にデータ領域の変更は行われない。このため、ＩＰコアによる処理が開始された後に、当該ＩＰコアのためのデータ領域が確保されている記憶装置のアクセス負荷が、このＩＰコア以外の処理部によるアクセスにより増大した場合、このＩＰコアのアクセスが滞る恐れがある。そこで、本実施の形態では、ＩＰコアに割り当てられたデータ領域を変更する仕組みを提供する。
【００５４】
図５は、実施の形態２にかかる表示システム２０の構成の一例を示すブロック図である。実施の形態２にかかる表示システム２０は、負荷取得部２０１及び割当変更部２０２をさらに有し、記憶システム１３０が記憶システム２３０に置き換えられた点で、実施の形態１にかかる表示システム１０と異なる。また、本実施の形態では、アドレス記憶レジスタ１２２には、仮想アドレスが設定される点で、実施の形態１と異なる。すなわち、本実施の形態にかかるＩＰコア１２０は、仮想アドレスを用いてアクセス先の指定を行う。以下の説明では、実施の形態１にかかる表示システム１０と同様の構成及び動作について説明を省略する。
【００５５】
記憶システム２３０は、実施の形態１にかかる記憶システム１３０の各構成に加え、さらに、ＭＭＵ２３１及びＩＰＭＭＵ２３２を有する。ＭＭＵ２３１及びＩＰＭＭＵ２３２は、メモリ管理ユニット（Ｍｅｍｏｒｙ Ｍａｎａｇｅｍｅｎｔ Ｕｎｉｔ）である。すなわち、ＭＭＵ２３１及びＩＰＭＭＵ２３２は、仮想アドレスから物理アドレスへの変換を行う回路である。
【００５６】
ＭＭＵ２３１は、ＣＰＵ１１０がＤＤＲ１３１にアクセスするためのメモリ管理ユニットである。ＭＭＵ２３１は、ＣＰＵ１１０により指定されたアクセス先の仮想アドレスをＤＤＲ１３１の物理アドレスに変換し、この物理アドレスをバスコントローラ１３２に通知する。ＩＰＭＭＵ２３２は、ＩＰコア１２０がＤＤＲ１３１にアクセスするためのメモリ管理ユニットである。ＩＰＭＭＵ２３２は、ＩＰコア１２０により指定されたアクセス先の仮想アドレスをＤＤＲ１３１の物理アドレスに変換し、この物理アドレスをバスコントローラ１３２に通知する。したがって、本実施の形態では、アドレス記憶レジスタ１２２には、仮想アドレスが記憶される。
【００５７】
また、本実施の形態では、ＣＰＵ１１０がプログラムを実行することにより、設定情報取得部１１１及び割当決定部１１２に加え、負荷取得部２０１及び割当変更部２０２が実現される。
【００５８】
負荷取得部２０１は、複数のＤＤＲ１３１それぞれのアクセス負荷を取得する。バスコントローラ１３２は各ＤＤＲ１３１のアクセス負荷を管理しているため、負荷取得部２０１は、バスコントローラ１３２から、定期的に、各ＤＤＲ１３１のアクセス負荷についての情報を取得する。
【００５９】
割当変更部２０２は、負荷取得部２０１により取得された複数のＤＤＲ１３１それぞれのアクセス負荷に基づいて、割当決定部１１２により決定された当初の割り当てを変更する。本実施の形態では、割当決定部１１２が、ＩＰコア１２０に対してデータ領域（すなわちＤＤＲ１３１）を割り当てると、割当決定部１１２は、以下の動作を行う。
【００６０】
すなわち、割当決定部１１２は、このＩＰコア１２０のアドレス記憶レジスタ１２２に対し、このデータ領域のアドレスを指定するための仮想アドレスを設定するとともに、ＩＰＭＭＵ２３２に対し、このデータ領域のアドレスであるＤＤＲ１３１の物理アドレスが、この仮想アドレスの変換先のアドレスであることを通知する。ＩＰＭＭＵ２３２は、この通知に従って変換を行うこととなる。したがって、ＩＰＭＭＵ２３２は、仮想アドレスによるアクセス先の指定をＩＰコア１２０から受け付けると、受け付けた仮想アドレスを、この仮想アドレスの変換先として割当決定部１１２に通知された物理アドレスへと変換する。ＩＰＭＭＵ２３２は、割当変更部２０２による変更が行われるまでは、割当決定部１１２から通知された変換規則に従って、仮想アドレスから物理アドレスへの変換を行う。
【００６１】
割当変更部２０２は、具体的には、変換元の仮想アドレスに対応する変換先の物理アドレスを、第１の物理アドレスから第２の物理アドレスへと変更することにより、割り当てを変更する。割当変更部２０２は、変換先の物理アドレスの変更をＩＰＭＭＵ２３２に通知する。ＩＰＭＭＵ２３２は、割当変更部２０２から通知があると、以降の変換では、新たな変換規則に従って変換を行う。
【００６２】
例えば、割当決定部１１２がＩＰコア１２０Ａのアドレス記憶レジスタ１２２Ａに設定した仮想アドレスをｖ＿ａｄｄとし、このｖ＿ａｄｄの変換先の物理アドレスをｐ＿ａｄｄ１とする。この場合、ＩＰＭＭＵ２３２は、ｖ＿ａｄｄをｐ＿ａｄｄ１に変換する。ここで、割当変更部２０２により、ＩＰコア１２０Ａに割り当てるデータ領域が、ＤＤＲ１３１ＡからＤＤＲ１３１Ｂに変更されたとする。割当変更部２０２は、ｖ＿ａｄｄの変換先の物理アドレスを、ＤＤＲ１３１Ａにおけるデータ領域の物理アドレスであるｐ＿ａｄｄ１ではなく、ＤＤＲ１３１Ｂにおけるデータ領域の物理アドレスであるｐ＿ａｄｄ２とするよう、ＩＰＭＭＵ２３２に通知する。なお、このとき、ＩＰコア１２０Ａのアドレス記憶レジスタ１２２Ａに設定された仮想アドレスには変更がなく、依然としてｖ＿ａｄｄが格納されている。ＩＰＭＭＵ２３２は、割当変更部２０２から変更の通知を受けると、以降、ｖ＿ａｄｄをｐ＿ａｄｄ２に変換する。これにより、ＩＰコア１２０Ａに対する割り当てが変更される。また、その際、ＩＰコア１２０は、変更前と同じ仮想アドレスを使用して、新たなデータ領域にアクセスを行うことができる。
【００６３】
また、割当変更部２０２は、複数のＩＰコア１２０のうちの予め定められたＩＰコア１２０に対して割当決定部１１２によって割り当てられたＤＤＲ１３１のアクセス負荷が、予め定められた閾値（この閾値をＴｈとする）以上である場合に、予め定められたＩＰコア１２０に割り当てるＤＤＲ１３１を変更する。
【００６４】
例えば、予め定められたＩＰコア１２０が、ＩＰコア１２０Ａ及びＩＰコア１２０Ｂであり、ＩＰコア１２０ＡにＤＤＲ１３１Ａが割り当てられ、ＩＰコア１２０ＢにＤＤＲ１３１Ｂが割り当てられていたとする。この場合、割当変更部２０２は、ＤＤＲ１３１Ａのアクセス負荷が、閾値Ｔｈ以上となると、ＩＰコア１２０Ａに割り当てるＤＤＲ１３１を変更する。また、割当変更部２０２は、ＤＤＲ１３１Ｂのアクセス負荷が、閾値Ｔｈ以上となると、ＩＰコア１２０Ｂに割り当てるＤＤＲ１３１を変更する。割当変更部２０２は、例えば、アクセス負荷が閾値Ｔｈ未満のＤＤＲ１３１を新たに割り当てるＤＤＲ１３１とする。なお、割当変更部２０２は、アクセス負荷が、閾値Ｔｈよりも小さい他の閾値未満であるＤＤＲ１３１を、新たに割り当てるＤＤＲ１３１としてもよい。このように、アクセス負荷が閾値以上となった場合にアクセス先が変更されるため、例えばアクセスの滞留を防ぐことが望まれる予め定められたＩＰコア１２０において、アクセスの滞留を抑制することができる。
【００６５】
図６は、実施の形態２にかかる表示システム１０におけるデータ領域の割り当て動作の一例を示すフローチャートである。図６に示されるフローチャートは、ステップ２２がステップ３０に置き換わり、ステップ２８がステップ３１に置き換わった点で、図４に示したフローチャートと異なる。以下、図４に示したフローチャートと異なる点について説明する。
【００６６】
本実施の形態では、ステップ２１の後、図６に示すように、割り当て処理がステップ３０へ移行する。ステップ３０（Ｓ３０）において、割当決定部１１２は、ＩＰコア１２０Ａに対して割り当てたＤＤＲ１３１のアドレスを指定するための仮想アドレスを、ＩＰコア１２０Ａのアドレス記憶レジスタ１２２Ａに設定する。また、割当決定部１１２は、ＩＰＭＭＵ２３２に対し、ＩＰコア１２０Ａに設定した仮想アドレスについての変換規則の設定を行う。これにより、ＩＰコア１２０Ａにおいて画像処理を開始するための準備が完了する。その後、割り当て処理は、ステップ２３に移行する。
【００６７】
また、本実施の形態では、ステップ２６の後、及びステップ２７の後、図６に示すように、割り当て処理がステップ３１へ移行する。ステップ３１（Ｓ３１）において、割当決定部１１２は、ＩＰコア１２０Ｂに対して割り当てたＤＤＲ１３１のアドレスを指定するための仮想アドレスを、ＩＰコア１２０Ｂのアドレス記憶レジスタ１２２Ｂに設定する。また、割当決定部１１２は、ＩＰＭＭＵ２３２に対し、ＩＰコア１２０Ｂに設定した仮想アドレスについての変換規則の設定を行う。これにより、ＩＰコア１２０Ｂにおいて画像処理を開始するための準備が完了する。その後、割り当て処理は、ステップ２９に移行する。
【００６８】
図７は、実施の形態２にかかる表示システム１０におけるデータ領域の割り当ての変更動作の一例を示すフローチャートである。以下、図７に沿って、表示システム１０におけるデータ領域の割り当ての変更動作について説明する。
【００６９】
ステップ４０（Ｓ４０）において、負荷取得部２０１は、予め定められた時間間隔が経過したか否かを判定する。予め定められた時間間隔が経過した場合、処理は、ステップ４１へ移行する。これに対し、予め定められた時間間隔が経過していない場合、再度、ステップ４０の処理が行われる。
【００７０】
ステップ４１（Ｓ４１）において、負荷取得部２０１は、各ＤＤＲ１３１のアクセス負荷を示す情報をバスコントローラ１３２から取得する。
次に、ステップ４２（Ｓ４２）において、割当変更部２０２は、予め定められたＩＰコア１２０に対して割り当てられたＤＤＲ１３１のアクセス負荷が、予め定められた閾値以上であるか否かを判定する。例えば、割当変更部２０２は、ＩＰコア１２０Ａに対して割り当てられたＤＤＲ１３１のアクセス負荷が、予め定められた閾値以上であるか否か、及びＩＰコア１２０Ｂに対して割り当てられたＤＤＲ１３１のアクセス負荷が、予め定められた閾値以上であるか否かを判定する。アクセス負荷が予め定められた閾値以上である場合、処理は、ステップ４３へ移行する。これに対し、アクセス負荷が予め定められた閾値未満である場合、処理は、ステップ４０に戻る。
【００７１】
ステップ４３（Ｓ４３）において、割当変更部２０２は、アクセス負荷が予め定められた閾値を超えるＤＤＲ１３１Ａにアクセスする予め定められたＩＰコア１２０についてのデータ領域を変更するため、新たなデータ領域を確保する。具体的には、割当変更部２０２は、アクセス負荷が閾値未満であるＤＤＲ１３１におけるデータ領域を確保する。なお、割当変更部２０２は、必ずしもアクセス負荷が閾値未満であるＤＤＲ１３１にデータ領域を確保しなくてもよい。すなわち、割当変更部２０２は、予め定められた変更規則にしたがって、他のＤＤＲ１３１にデータ領域を確保してもよい。なぜならば、新たなデータ領域が存在するＤＤＲ１３１のアクセス負荷が予め定められた閾値以上であったとしても、ステップ４４の後、処理がステップ４０に戻るため、再び、割当変更部２０２による変更が行われるからである。つまり、変更を繰り返すことにより、いずれは、アクセス負荷が予め定められた閾値未満のＤＤＲ１３１にデータ領域が確保されることが期待できるためである。
【００７２】
ステップ４４（Ｓ４４）において、割当変更部２０２は、ＩＰＭＭＵ２３２に対し、変換規則を変更するよう設定する。具体的には、割当変更部２０２は、変換先の物理アドレスが、ステップ４３で確保した新たなデータ領域の物理アドレスとなるよう、ＩＰＭＭＵ２３２の設定を変更する。そして、ステップ４４の後、処理は、ステップ４０に戻る。
【００７３】
例えば、ＩＰコア１２０Ａが、ＤＤＲ１３１Ａに割り当てられたデータ領域を用いて画像処理を実行している時に、ＣＰＵ１１０が、ＤＤＲ１３１Ａへのアクセスを伴う新たな動作を開始したとする。このような新たな動作としては、任意の処理が挙げられる。例えば、新たな動作は、表示システム１０を含むカーナビゲーションシステムにおける音楽の再生処理であるかもしれないし、ナビゲーション処理であるかもしれないし、インターネット通信であるかもしれない。また、この新たな動作は、ＣＰＵ１１０による処理ではなく、図示しない他のＩＰコアによる処理であってもよい。
この新たな動作の発生により、ＩＰコア１２０Ａのデータ領域が割り当てられているＤＤＲ１３１Ａのアクセス負荷が増大する。割当変更部２０２は、ＤＤＲ１３１Ａのアクセス負荷が予め定められた閾値以上であると判定すると、ＩＰコア１２０Ａに新たなデータ領域を割り当てる。例えば、割当変更部２０２は、ＩＰコア１２０Ａに割り当てるＤＤＲ１３１を、ＤＤＲ１３１Ａから、アクセス負荷が閾値未満であるＤＤＲ１３１Ｃへと変更する。よって、例えば、ＩＰコア１２０Ａは、動画のＮフレーム目（Ｎは自然数）までの画像については、ＤＤＲ１３１Ａに画像処理後の画像を格納し、動画のＮ＋１フレーム目以降の画像については、ＤＤＲ１３１Ｃに画像処理後の画像を格納する。
割当変更部２０２による変更処理においては、仮想アドレスから物理アドレスへの変換規則が変更されるのみであり、ＩＰコア１２０Ａのアドレス記憶レジスタ１２２Ａに設定されたアドレスを変更する必要がない。このため、ＩＰコア１２０Ａの動作中であっても、ＩＰコア１２０Ａのアクセス先のＤＤＲ１３１を変更することができる。したがって、ＤＤＲ１３１のアクセス負荷が変動する場合であっても、ＩＰコア１２０におけるアクセスの滞留を抑制することができる。
【００７４】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。例えば、上記の実施の形態では、複数の表示装置に同時に表示を行う表示システムについて示したが、音声処理を行う複数のＩＰコアと、複数のスピーカとを有し、この複数のスピーカに同時に音声を出力する音声出力システムが構成されてもよい。また、この音声出力システムと、上記実施の形態の表示システムとを組み合わせた車載システムが構成されてもよい。また、実施の形態２において、ＭＭＵ２３１及びＩＰＭＭＵ２３２の両方を備える構成について示したが、表示システムは、必ずしもＭＭＵ２３１を有さなくてもよい。
【符号の説明】
【００７５】
１、９０：  半導体装置
２Ａ、２Ｂ、９２Ａ、９２Ｂ、１２０Ａ、１２０Ｂ：  ＩＰコア
３、１３０、２３０：  記憶システム
４、１１１：  設定情報取得部
５、１１２：  割当決定部
６Ａ、６Ｂ、６Ｃ、６Ｄ、９４Ａ、９４Ｂ、９４Ｃ、９４Ｄ：  記憶装置
１０、２０：  表示システム
９３、１３２：  バスコントローラ
１００Ａ、１００Ｂ：  表示装置
１２１Ａ、１２１Ｂ：  設定情報記憶レジスタ
１２２Ａ、１２２Ｂ：  アドレス記憶レジスタ
２０１：  負荷取得部
２０２：  割当変更部
９４１Ａ、９４１Ｂ、９４２Ａ、９４２Ｂ、９４３Ａ、９４３Ｂ、９４４Ａ、９４４Ｂ：  データ領域
１３１Ａ、１３１Ｂ、１３１Ｃ、１３１Ｄ：  ＤＤＲ
【図１】
2018022319.tif 000003
【図２】
2018022319.tif 000004
【図３】
2018022319.tif 000005
【図４】
2018022319.tif 000006
【図５】
2018022319.tif 000007
【図６】
2018022319.tif 000008
【図７】
2018022319.tif 000009
【図８】
2018022319.tif 000010
【図９】
2018022319.tif 000011