(57)【要約】【課題】  電子機器内のバスシステムにおいて、システム設計時に設定した優先度に従って適切に調停が行われるようにする。【解決手段】  調停部３は、複数のマスター２を複数のグループ１１〜１３に分類し、複数のグループ１１〜１３のそれぞれに対して優先度を割り当て、あるグループ内でバンク競合が発生した場合、（ａ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２があるとき、そのグループ内でバンク競合せずにアクセス要求を発行したマスター２に、メモリーバス４のバス使用権を与え、（ｂ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２がないとき、そのグループより優先度の高いグループに、バンク競合せずにアクセス要求を発行したマスター２があれば、そのグループから優先度の高いグループへメモリーバス４のバス使用権を譲る。【選択図】  図１
2016085542.tif 000002
【特許請求の範囲】
【請求項１】
複数のバンクを有するメモリーと、
前記メモリーが接続されるメモリーバスと、
前記メモリーに対してリードアクセスおよびライトアクセスの少なくとも一方を行う複数のマスターと、
前記複数のマスターからのアクセス要求がバンク競合を起こしたときに調停を行う調停部とを備え、
前記調停部は、前記複数のマスターを複数のグループに分類し、前記複数のグループのそれぞれに対して優先度を割り当て、あるグループ内でバンク競合が発生した場合、（ａ）そのグループ内でバンク競合せずにアクセス要求を発行したマスターがあるとき、そのグループ内でバンク競合せずにアクセス要求を発行したマスターに、前記メモリーバスのバス使用権を与え、（ｂ）そのグループ内でバンク競合せずにアクセス要求を発行したマスターがないとき、そのグループより優先度の高いグループにおいて、バンク競合せずにアクセス要求を発行したマスターがあれば、そのグループから、前記優先度の高いグループへ前記メモリーバスのバス使用権を譲ること、
を特徴とする電子機器。
【請求項２】
前記調停部は、前記グループ間でバンク競合が発生した場合、調停によってバス使用権を与えるグループを決定し、（ａ）決定したグループ内でバンク競合せずにアクセス要求を発行したマスターがあるとき、決定したグループ内でバンク競合せずにアクセス要求を発行したマスターに、前記メモリーバスのバス使用権を与え、（ｂ）決定したグループ内でバンク競合せずにアクセス要求を発行したマスターがないとき、決定したグループより優先度の高いグループに、バンク競合せずにアクセス要求を発行したマスターがあれば、決定したグループから、前記優先度の高いグループへ前記メモリーバスのバス使用権を譲ることを特徴とする請求項１記載の電子機器。
【請求項３】
前記調停部は、前記グループ間でバンク競合が発生した場合、前記優先度の高いグループほどバス使用権が与えられる頻度が高くなるように、調停によってバス使用権を与えるグループを決定することを特徴とする請求項２記載の電子機器。
【請求項４】
前記調停部は、前記グループ内でバンク競合が発生した場合、そのグループ内でバンク競合せずにアクセス要求を発行したマスターがなく、かつ、そのグループより優先度の高いグループにも、バンク競合せずにアクセス要求を発行したマスターがなければ、そのグループ内において、調停によってバス使用権を与えるマスターを決定することを特徴とする請求項１から請求項３のうちのいずれか１項記載の電子機器。
【請求項５】
前記調停部は、前記グループ内において、調停によってバス使用権を与えるマスターを決定する場合、そのグループ内の複数のマスターにバス使用権が与えられる頻度が互いに同一になるようにすることを特徴とする請求項４記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器に関するものである。
【背景技術】
【０００２】
あるバスシステムでは、複数のマスターからアクセス要求があった場合、異なるバンクへのアクセス要求を発行した優先度の低いマスターにバス使用権を与え、バス使用権を与えられた優先度の低いマスターは、一定期間、優先度の高いマスターにバス使用権を渡さずにアクセスを行っている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２０５３１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述のように、優先度の低いマスターに対して優先的にバス使用権を与えると、複数のマスターにバス使用権が与えられる頻度が、複数のマスターに設定された優先度どおりにならない可能性があり、システム設計時に意図したとおりに調停が行われない可能性がある。
【０００５】
本発明は、上記の問題に鑑みてなされたものであり、システム設計時に設定した優先度に従って適切に調停が行われる電子機器を得ることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る電子機器は、複数のバンクを有するメモリーと、前記メモリーが接続されるメモリーバスと、前記メモリーに対してリードアクセスおよびライトアクセスの少なくとも一方を行う複数のマスターと、前記複数のマスターからのアクセス要求がバンク競合を起こしたときに調停を行う調停部とを備える。前記調停部は、前記複数のマスターを複数のグループに分類し、前記複数のグループのそれぞれに対して優先度を割り当て、あるグループ内でバンク競合が発生した場合、（ａ）そのグループ内でバンク競合せずにアクセス要求を発行したマスターがあるとき、そのグループ内でバンク競合せずにアクセス要求を発行したマスターに、前記メモリーバスのバス使用権を与え、（ｂ）そのグループ内でバンク競合せずにアクセス要求を発行したマスターがないとき、そのグループより優先度の高いグループにおいて、バンク競合せずにアクセス要求を発行したマスターがあれば、そのグループから前記優先度の高いグループへ前記メモリーバスのバス使用権を譲る。
【発明の効果】
【０００７】
本発明によれば、電子機器内のバスシステムにおいて、システム設計時に設定した優先度に従って適切に調停が行われる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本発明の実施の形態に係る電子機器の構成を示すブロック図である。
【図２】図２は、図１における調停部３の動作を説明するフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図に基づいて本発明の実施の形態を説明する。
【００１０】
図１は、本発明の実施の形態に係る電子機器の構成を示すブロック図である。
【００１１】
図１に示す電子機器は、ＤＲＡＭ（Dynamic Random Access Memory）１と、複数のマスター２と、調停部３と、ＤＲＡＭ１が接続されるメモリーバス４とを備える。
【００１２】
ＤＲＡＭ１は、複数のバンクを有するメモリーである。例えば、ＤＲＡＭ１には、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）が使用される。
【００１３】
複数のマスター２は、この実施の形態に係る電子機器における内部デバイスであって、ＤＭＡＣ（Direct Memory Access Controller）をそれぞれ有し、ＤＲＡＭ１に対してリードアクセスおよびライトアクセスの少なくとも一方を行う。
【００１４】
調停部３は、各マスター２からＤＲＡＭ１へのアクセス要求を受け付けると、メモリーバス４のバス使用権をそのマスター２に与え、複数のマスター２からのアクセス要求がバンク競合を起こしたときに調停を行う回路である。各マスター２は、調停部３からメモリーバス４のバス使用権を与えられると、ただちにＤＲＡＭ１にアクセスする。
【００１５】
具体的には、調停部３は、まず、複数のマスター２を複数のグループ１１〜１３に分類し、複数のグループ１１〜１３のそれぞれに対して優先度を割り当てる。なお、各マスター２が属するグループはシステム設計時に予め決定されており、調停部３は、マスター２とそのマスター２の属するグループとの対応関係を示すデータを有している。また、各グループの優先度もシステム設計時に予め決定されており、調停部３は、各グループの優先度を示すデータを有している。なお、ここでは、グループ１１〜１３の各グループには、それぞれ複数のマスター２が属している。また、ここでは、グループ１１から１３の数は３であるが、２でも４以上でもよい。
【００１６】
そして、複数のグループ１１〜１３において、グループ１１の優先度が最も高く、グループ１３の優先度が最も高い。そして、調停部３は、あるグループ内でバンク競合が発生した場合、（ａ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２があるとき、そのグループ内でバンク競合せずにアクセス要求を発行したマスター２に、メモリーバス４のバス使用権を与え、（ｂ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２がないとき、そのグループより優先度の高いグループにおいて、バンク競合せずにアクセス要求を発行したマスター２があれば、そのグループから、その優先度の高いグループへメモリーバス４のバス使用権を譲る。なお、グループ１１より優先度の高いグループはないので、グループ１１から他のグループへバス使用権を譲ることはない。
【００１７】
なお、調停部３は、グループ間でバンク競合が発生した場合（あるグループ内のマスター２のアクセス要求と別のグループ内のマスター２のアクセス要求とにおいてバンク競合が発生した場合）、最初に、調停によってバス使用権を与えるグループを決定し、決定したグループ内でバンク競合が発生している場合には、上述のようにバス使用権を与える。一方、決定したグループ内でバンク競合が発生していない場合には、調停部３は、アクセス要求どおりバス使用権を与える。
【００１８】
また、調停部３は、グループ間でバンク競合が発生した場合、優先度の高いグループほどバス使用権が与えられる頻度が高くなるように、調停によってバス使用権を与えるグループを決定する。ここでは、例えば、重み付けしたラウンドロビン方式によってバス使用権を与えられるグループが決定される。
【００１９】
さらに、調停部３は、グループ内でバンク競合が発生した場合、そのグループ内でバンク競合せずにアクセス要求を発行したマスター２がなく、かつ、そのグループより優先度の高いグループにも、バンク競合せずにアクセス要求を発行したマスター２がなければ、そのグループ内において、調停によってバス使用権を与えるマスター２を決定する。
【００２０】
さらに、調停部３は、グループ内において、調停によってバス使用権を与えるマスター２を決定する場合、そのグループ内の複数のマスター２にバス使用権が与えられる頻度が互いに同一になるようにする。ここでは、例えば、ラウンドロビン方式によってバス使用権を与えられるマスター２が決定される。
【００２１】
次に、上記電子機器の動作について説明する。図２は、図１における調停部３の動作を説明するフローチャートである。
【００２２】
複数のマスター２は、グループ１１〜１３に予め分類されている。
【００２３】
調停部３は、各マスター２からアクセス要求を受け付け、バンク競合が発生するか否かを判定する。バンク競合が発生しない場合には、調停部３は、ＤＲＡＭ１へのアクセスを順次許可し、アクセス要求を発行したマスター２は、並行して、ＤＲＡＭ１へのアクセスを行う。
【００２４】
あるバンクについてバンク競合が発生する場合、調停部３は、まず、グループ間のバンク競合が発生するか否かを判定する（ステップＳ１）。
【００２５】
グループ間のバンク競合が発生すると判定した場合、調停部３は、バス使用権を与えるグループを決定する（ステップＳ２）。
【００２６】
そして、調停部３は、決定したグループ内でそのバンクについてのバンク競合が発生するか否かを判定する（ステップＳ３）。
【００２７】
決定したグループ内でそのバンクについてのバンク競合が発生しなければ、調停部３は、決定したグループにおいて、そのバンクに対するアクセス要求を発行したマスター２にバス使用権を与える（ステップＳ４）。
【００２８】
一方、ステップＳ１においてグループ間のバンク競合が発生しないと判定された場合（つまり、グループ内のバンク競合が発生する場合）およびステップＳ３において決定したグループ内でそのバンクについてのバンク競合が発生すると判定された場合、調停部３は、そのグループにおいて、そのグループ内の他のマスター２とバンク競合しないマスター２があるか否かを判定する（ステップＳ５）。
【００２９】
そのグループにおいてバンク競合しないマスター２がある場合、調停部３は、そのマスター２に、バス使用権を与える（ステップＳ６）。
【００３０】
一方、そのグループにおいてバンク競合しないマスター２がない場合、調停部３は、そのグループより優先度の高いグループにおいて、その優先度の高いグループ内の他のマスター２とバンク競合しないマスター２があるか否かを判定する（ステップＳ７）。
【００３１】
その優先度の高いグループにおいてバンク競合しないマスター２がある場合、調停部３は、バス使用権を与えるグループを、現時点のグループから、その優先度の高いグループへ切り換え（ステップＳ８）、その優先度の高いグループにおいてそのバンク競合しないマスター２にバス使用権を与える（ステップＳ９）。
【００３２】
例えば、グループ１２内でバンク競合が発生し、グループ１２内でバンク競合しないマスターが存在しない場合、グループ１１内でバンク競合しないマスター２があれば、そのグループ１１内のマスター２にバス使用権が与えられる。
【００３３】
また、グループ１３内でバンク競合が発生し、グループ１３内でバンク競合しないマスターが存在しない場合、グループ１１内でバンク競合しないマスター２があれば、そのグループ１１内のマスターにバス使用権が与えられる。グループ１３内でバンク競合が発生し、グループ１３内でバンク競合しないマスター２が存在しない場合において、グループ１１にはバンク競合しないマスター２がないがグループ１２にはバンク競合しないマスター２があれば、そのグループ１２内のマスターにバス使用権が与えられる。このように、あるグループ内でバンク競合が発生し、そのグループ内でバンク競合しないマスターが存在しない場合において、優先度の高いグループが複数あるときには、優先度の最も高いグループから順番にバンク競合しないマスター２を探す。
【００３４】
一方、優先度の高いグループにおいてバンク競合しないマスター２がない場合、調停部３は、バス使用権を与えられるグループを切り換えずに、現時点においてバス使用権を与えられているグループ内で、調停によってバス使用権を与えるマスター２を決定する（ステップＳ１０）。
【００３５】
以上のように、上記実施の形態によれば、調停部３は、複数のマスター２を複数のグループ１１〜１３に分類し、複数のグループ１１〜１３のそれぞれに対して優先度を割り当て、あるグループ内でバンク競合が発生した場合、（ａ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２があるとき、そのグループ内でバンク競合せずにアクセス要求を発行したマスター２に、メモリーバス４のバス使用権を与え、（ｂ）そのグループ内でバンク競合せずにアクセス要求を発行したマスター２がないとき、そのグループより優先度の高いグループにおいて、バンク競合せずにアクセス要求を発行したマスター２があれば、そのグループから優先度の高いグループへメモリーバス４のバス使用権を譲る。
【００３６】
これにより、あるグループ内でバンク競合が発生した場合でも、そのグループより優先度の低いグループへバス使用権が移らないので、システム設計時に設定した優先度に従って適切に調停が行われる。
【００３７】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【産業上の利用可能性】
【００３８】
本発明は、例えば、複数の内部デバイスがメモリーにアクセス可能な電子機器に適用可能である。
【符号の説明】
【００３９】
１  ＤＲＡＭ（メモリーの一例）
２  マスター
３  調停部
４  メモリーバス
１１〜１３  グループ
【図１】
2016085542.tif 000003
【図２】
2016085542.tif 000004