JP4907166B2 - リソース管理装置 - Google Patents

リソース管理装置 Download PDF

Info

Publication number
JP4907166B2
JP4907166B2 JP2005362801A JP2005362801A JP4907166B2 JP 4907166 B2 JP4907166 B2 JP 4907166B2 JP 2005362801 A JP2005362801 A JP 2005362801A JP 2005362801 A JP2005362801 A JP 2005362801A JP 4907166 B2 JP4907166 B2 JP 4907166B2
Authority
JP
Japan
Prior art keywords
arbitration
priority
masters
access
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2005362801A
Other languages
English (en)
Other versions
JP2006221611A (ja
Inventor
大輔 村上
裕司 ▲高▼井
功 河本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2005362801A priority Critical patent/JP4907166B2/ja
Priority to US11/328,314 priority patent/US7533206B2/en
Publication of JP2006221611A publication Critical patent/JP2006221611A/ja
Application granted granted Critical
Publication of JP4907166B2 publication Critical patent/JP4907166B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Description

本発明は、複数のマスタが少なくとも1つの共有リソースへのアクセス要求をそれぞれ発行するシステムにおいて、各マスタから共有リソースへのアクセス要求を調停するためのリソース管理装置に関するものである。
システムLSIの内部では、マイクロプロセッサ、DSP(Digital Signal Processor)、DMA(Direct Memory Access)コントローラ等の複数のマスタが、メモリ、周辺I/O(input/output)コントローラ等の共有リソースにアクセスする。ここで、各マスタから共有リソースへのアクセス要求を効率的に調停するためのリソース管理装置が必要である。
ある従来技術によれば、予めテーブル形式で持っている各マスタの優先順位情報をもとに、リソース管理装置が一定時間毎にアクセス要求の調停を行う。複数パターンの優先順位情報が当該テーブルに格納されており、調停を行う一定時間毎にパターンが順に切り替えられる。各マスタは優先順位パターンの中で最優先に設定されている回数分のアクセス許可を受けることができ、各マスタの最低アクセスバンド幅を保証することが可能である(特許文献1参照)。
特開2004−246862号公報
上記のように各調停時刻において最優先順位を持つマスタを予め決めておくシステムでは、アクセス要求の発生タイミングに時間的な偏りが生じた場合に問題が生じる。例えば、1周期内の各調停時刻に均等に最優先順位が割り当てられているマスタが当該周期内の前半に集中してアクセス要求を行ったとき、当該マスタに所望のアクセスバンド幅を保証できず、アクセス効率の低下を招くことになる。最優先順位が割り当てられた調停時刻とアクセス要求の発生タイミングとが必ずしも一致しないからである。
また、各マスタがどのタイミングでアクセス要求を行うかが一定しない場合には、アクセス効率の低下を避けるように各調停時刻において最優先順位を持つマスタを予め決めておくことは困難である。
本発明の目的は、各調停時刻において最優先順位を持つマスタを予め決めておかなくても、各マスタに最低アクセスバンド幅を保証することができるリソース管理装置を提供することにある。
上記目的を達成するため、本発明では、所定時間内にアクセス許可を受け得る最低限の回数をマスタ毎に設定しておき、2以上のマスタが同時にアクセス要求を行っている場合には、当該2以上のアクセス要求マスタのうち、所定時間内にアクセス許可を受けた回数が設定値に満たないマスタに対して優先的にアクセス許可を与えることとした。
これにより、アクセス要求の発生タイミングに時間的な偏りが生じた場合でも、各マスタは予め設定された回数のアクセス許可を所定時間内に受けることができ、共有リソースへの所望のアクセスバンド幅を得ることができる。
2以上のアクセス要求マスタのうち所定時間内にアクセス許可を受けた回数が設定値に満たないマスタが複数存在する場合には、マスタ間の優先順位情報に基づく所定の優先ルールに従ってアクセス要求の調停を行えばよい。
本発明によれば、所定時間内にアクセス許可を受け得る最低限の回数をマスタ毎に設定しておくこととしたので、各調停時刻において最優先順位を持つマスタを予め決めておかなくても、各マスタに最低アクセスバンド幅を保証することができる。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。以下の説明において、各バスマスタは、データアクセスを行うためのアドレス信号、制御信号等を能動的に送出する機能を有するものである。一般に、1つの機能ブロックはバス接続のための複数のインターフェースを持ち、いくつかはバスマスタとして機能し、いくつかはバススレーブとして機能する。例えば、ハーバードアーキテクチャ(Harvard architecture)のプロセッサは、インストラクション用バスマスタと、データ用バスマスタとを有する。
図1は、本発明に係るリソース管理装置の構成例を示している。図1に示したリソース管理装置108は、3つのバスマスタ101,102,103と共有リソース109との間に介在しており、バス調停部104と、バス調停情報管理部105と、リソース制御部107とを備えている。106は、バス調停情報管理部105が管理するバス調停情報である。第1、第2及び第3のバスマスタ101,102,103は、それぞれバス111,112,113を介してバス調停部104に接続されている。これら第1〜第3のバスマスタ101〜103とリソース管理装置108とは、1つのデータ処理システム100を構成している。
バス調停情報管理部105は、第1〜第3のバスマスタ101〜103の各々が所定時間内にアクセス許可を受け得る最低限の回数に関する設定値と、これらのバスマスタ101〜103の間の優先順位情報とを、バス調停情報106として管理している。一方、第1〜第3のバスマスタ101〜103はそれぞれ任意の時刻に共有リソース109へのアクセス要求を発行する。バス調停部104は、バス調停情報106をもとに第1〜第3のバスマスタ101〜103からのアクセス要求を調停し、この調停により選択された1つのアクセス要求をリソース制御部107に伝える。この際、バス調停部104は、2以上のバスマスタが同時にアクセス要求を行っている場合、当該2以上のアクセス要求マスタのうち、所定時間内にアクセス許可を受けた回数がバス調停情報106中の設定値に満たないバスマスタに対して優先的にアクセス許可を与える。また、2以上のアクセス要求マスタのうち所定時間内にアクセス許可を受けた回数が設定値に満たないバスマスタが複数存在する場合には、バス調停情報管理部105が管理するバスマスタ101〜103間の優先順位情報に基づく優先ルールに従って、バス調停部104がアクセス要求の調停を行う。リソース制御部107は、バス調停部104によって選択されたバスマスタと共有リソース109との間のデータ転送制御を行う。
以下、図1中のバス調停情報106に係る7つのバリエーションを、第1〜第7の実施形態として説明する。ここでは、10回の調停動作のうち3回、2回、5回のアクセス許可をそれぞれ第1、第2及び第3のバスマスタ101,102,103に与えたいとの要望があるものとする。各アクセス許可に対して共有リソース109への一定量のアクセスが行えるものとすると、第1、第2及び第3のバスマスタ101,102,103に対して、それぞれ30%、20%、50%のアクセスバンド幅が保証されることとなる。
《第1の実施形態》
図2は、図1中のバス調停情報106の第1の例を示している。220は調停周期情報、221はバスマスタ毎に設定されたカウント上限値、222はバスマスタ毎のアクセス許可カウント、223は優先順位情報である。調停周期情報220は、バス調停部104が1周期内に調停を行う回数を示す。ここでは「10」が調停周期情報220として設定されているので、10調停間隔が1調停周期に相当する。カウント上限値221は第1〜第3のバスマスタ101〜103の各々が1調停周期内にアクセス許可を受け得る最低限の回数を表しており、カウント上限値221の合計が調停周期情報220の設定値と等しくなるように予め設定される。ここでのカウント上限値221は、第1、第2及び第3のバスマスタ101,102,103に対してそれぞれ3、2、5となっている。アクセス許可カウント222は第1〜第3のバスマスタ101〜103の各々が1調停周期内にアクセス許可を受けた回数を表しており、周期の最初には全て0にリセットされている。また、本例における優先順位情報223は、第1〜第3のバスマスタ101〜103の間の固定の優先順位を表しており、優先順位の高い順に、第2のバスマスタ102、第3のバスマスタ103、第1のバスマスタ101となっている。
バス調停部104は、図2のバス調停情報106をもとに周期的に調停を行う。第1〜第3のバスマスタ101〜103のいずれかにアクセス許可を与えると、バス調停情報管理部105は、アクセス許可カウント222のうちアクセス許可を得たバスマスタに該当するものを1だけインクリメントする。バス調停部104が調停周期情報220で指定された回数分だけ調停を行うと、バス調停情報管理部105はアクセス許可カウント222を全て0にリセットする。バス調停部104は、第1〜第3のバスマスタ101〜103のうち2以上のバスマスタが同時にアクセス要求を行っている場合、当該2以上のアクセス要求マスタのうち、アクセス許可カウント222がカウント上限値221に満たないバスマスタに対して優先的にアクセス許可を与える。つまり、カウント上限値221からアクセス許可カウント222を差し引いて得た「残り優先許可カウント」が1以上であることを、優先的なアクセス許可の条件とする。また、2以上のアクセス要求マスタのうちアクセス許可カウント222がカウント上限値221に満たないバスマスタが複数存在する場合には、優先順位情報223に基づく第1の優先ルールに従って、バス調停部104がそれらのバスマスタに対してアクセス要求の調停を行う。なお、第1〜第3のバスマスタ101〜103のうち単一のバスマスタのみがアクセス要求を行っている場合には、当該バスマスタに無条件でアクセス許可が与えられる。
図3は、図2のバス調停情報106をもとにした第1の調停例を示している。図3において横方向は時間を表しており、縦線で示される各時刻においてバス調停部104が調停を行う。これらの時刻を「調停時刻」と呼ぶ。図3の上段には、調停時刻同士の間隔を調停間隔として示し、また10調停間隔に相当する1つの調停周期を示している。調停時刻は「0」から「9」を周期的に繰り返す。図3の中段は、第1〜第3のバスマスタ101〜103がアクセス要求を行っている様子を示しており、矢印の期間だけアクセス要求が出ているものとする。また星印は、ある調停時刻において、あるバスマスタがアクセス許可を受けたことを示す。図3の下段は、各調停間隔における第1〜第3のバスマスタ101〜103のアクセス許可カウント222を示している。また、括弧内の数値は第1〜第3のバスマスタ101〜103の残り優先許可カウントを示している。
図3の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、最も高い優先順位を持つ第2のバスマスタ102がアクセス許可を得る。バス調停部104が第2のバスマスタ102にアクセス許可を与えると、バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻2において、第1のバスマスタ101と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻3においては、第1のバスマスタ101のみがアクセス要求を行っているため、バス調停部104は第1のバスマスタ101にアクセス許可を与え、バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。調停時刻4、5、6、7においても同様に調停を行う。調停時刻8において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っている。第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に達しており、第3のバスマスタ103はアクセス許可カウント222がカウント上限値221に満たないので、バス調停部104は第3のバスマスタ103に対してアクセス許可を与える。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。以下同様に調停を行い、最後の調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
各調停時刻においてアクセス許可を得たバスマスタは、リソース制御部107を介して、共有リソース109へのアクセスが可能になる。リソース制御部107は、例えば1回のアクセス許可に対して共有リソース109への一定量のアクセスをバスマスタに与えるよう制御する。ただし、1回あたりのアクセス量を共有リソース109の特性に合わせて変えてもよい。
以上のとおり、図2及び図3の例によれば、固定優先順位が高いバスマスタほどアクセス要求を行ってからアクセス許可を受けるまでの待ち時間が短く、したがってレスポンス性能を上げることができる。
図4は、図2のバス調停情報106をもとにした第2の調停例を示している。ただし、本例における優先順位情報223では、第1〜第3のバスマスタ101〜103の間の固定の優先順位がカウント上限値221の大きさに応じて決定され、カウント上限値221が大きいバスマスタほど高い優先順位を持つものとする。図2の例では第1、第2及び第3のバスマスタ101,102,103に対してカウント上限値221がそれぞれ3、2、5となっているので、優先順位の高い順に、第3のバスマスタ103、第1のバスマスタ101、第2のバスマスタ102となる。カウント上限値221が等しい場合は、第2及び第3のバスマスタ102,103よりも第1のバスマスタ101を優先し、第3のバスマスタ103よりも第2のバスマスタ102を優先するものとする。
図4の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、カウント上限値221の最も大きい第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。調停時刻3〜7においても同様に調停を行う。次に調停時刻8において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。第1のバスマスタ101はアクセス許可カウント222がカウント上限値221に達しており、第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に満たないので、バス調停部104は第2のバスマスタ102に対してアクセス許可を与える。バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。以下同様に調停を行い、最後の調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図4の例によれば、カウント上限値221に応じて優先順位を決定する方式により、例えばカウント上限値221が大きな値に設定されたバスマスタに対しては早めにアクセス許可を与えることができ、周期の後半でアクセス許可が集中することを避けることができるので、余裕をもって共有リソース109へアクセスさせることができる。
なお、カウント上限値221が小さいほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、カウント上限値221が等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
さて、バス調停部104は、第1〜第3のバスマスタ101〜103のうち、いずれも残り優先許可カウントが既に0に達している複数のバスマスタのみが同時にアクセス要求を行っている場合には、それらのバスマスタに対して、第2の優先ルールに従ってアクセス要求の調停を行う。このような調停の例を、図5及び図6に示す。
図5は、図2のバス調停情報106をもとにした第3の調停例を示している。ここでは、上記第2の優先ルールとして、図2中の固定の優先順位情報223に基づくルールを採用することとしている。図5中の調停時刻1〜8においては、図3と全く同じように調停が行われる。図5中の調停時刻9では、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に達しており、第1のバスマスタ101はアクセス許可カウント222がカウント上限値221に満たないので、バス調停部104は第1のバスマスタ101に対してアクセス許可を与える。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。1調停周期内の最後の調停時刻0では、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。これらのアクセス要求マスタの中にアクセス許可カウント222がカウント上限値221に達していないバスマスタはなく、かつ両方のアクセス要求マスタともにアクセス許可カウント222がカウント上限値221に達しているため、固定の優先順位情報223に従って第2のバスマスタ102がアクセス許可を得る。この調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
図6は、図2のバス調停情報106をもとにした第4の調停例を示している。ここでは、第1の優先ルールを規定する図2中の固定の優先順位情報223が、優先順位の高い順に、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103となっているものとし、かつ上記第2の優先ルールとして、第1〜第3のバスマスタ101〜103の間の優先順位を順次変更するラウンドロビン方式(round robin scheduling)のルールを採用することとしている。図6の最下段は、優先順位情報223の変化を示す。
図6中の調停時刻1〜7においては、図3の場合と同様に調停が行われる。図6中の調停時刻8では、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。これらのアクセス要求マスタの中にアクセス許可カウント222がカウント上限値221に達していないバスマスタはなく、かつ両方のアクセス要求マスタともにアクセス許可カウント222がカウント上限値221に達しているため、この時点で高い優先順位を持つ第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222をインクリメントせずに、ラウンドロビン方式に従って優先順位情報223を切り替える。この結果、優先順位の高い順に、第2のバスマスタ102、第3のバスマスタ103、第1のバスマスタ101となる。次に調停時刻9において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻9では、第1のバスマスタ101と第2のバスマスタ102とはアクセス許可カウント222がカウント上限値221に達しており、第3のバスマスタ103はアクセス許可カウント222がカウント上限値221に満たないので、バス調停部104は第3のバスマスタ103に対してアクセス許可を与える。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。ただし、固定の優先順位情報223に基づく第1の優先ルールの適用により、優先順位情報223はそのままである。1調停周期内の最後の調停時刻0では、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。これらのアクセス要求マスタの中にアクセス許可カウント222がカウント上限値221に達していないバスマスタはなく、かつ両方のアクセス要求マスタともにアクセス許可カウント222がカウント上限値221に達しているため、この時点で高い優先順位を持つ第2のバスマスタ102がアクセス許可を得る。この調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされる一方、ラウンドロビン方式に従って優先順位情報223が切り替えられる。この結果、優先順位の高い順に、第3のバスマスタ103、第1のバスマスタ101、第2のバスマスタ102となった状態で、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図5及び図6の例によれば、残り優先許可カウントが0でないバスマスタからのアクセス要求がない限り、残り優先許可カウントが0であるバスマスタにアクセス許可を与えることができ、データ処理システム100全体の共有リソース109へのアクセスバンド幅を向上させることができる。
なお、残り優先許可カウントが0であるバスマスタに対してアクセス許可を与える調停における上記第2の優先ルールとして、図5のような固定の優先順位情報223に基づくルールや、図6のようなラウンドロビン方式のルールに限らず、他のルールを適用することとしてもよい。また、第1の優先ルールで用いる優先順位情報223とは別に用意した優先順位情報を第2の優先ルールで用いることとしてもよい。
《第2の実施形態》
図7は、図1中のバス調停情報106の第2の例を示している。図7の優先順位情報223は、上に記述されているバスマスタほど高い優先順位を持つことを示す。また、調停時刻毎にバス調停情報管理部105は優先順位情報223をローテーションし、最も高い優先順位を持つバスマスタが第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103と調停時刻毎に切り替わるようにラウンドロビン方式の管理を行うことを示す。
図8は、図7のバス調停情報106をもとにした調停例を示している。図8の最下段は、優先順位情報223の変化を示す。
図8の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、最も高い優先順位を持つ第1のバスマスタ101がアクセス許可を得る。バス調停部104が第1のバスマスタ101にアクセス許可を与えると、バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。そして、優先順位情報223が切り替わる。次に調停時刻2において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第2のバスマスタ102がアクセス許可を得る。バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。そして、優先順位情報223が切り替わる。次に調停時刻3においては、第3のバスマスタ103のみがアクセス要求を行っているため、バス調停部104は第3のバスマスタ103にアクセス許可を与え、バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。そして、優先順位情報223が切り替わる。調停時刻4、5、6、7においても同様に調停を行う。調停時刻8において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っている。第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に達しており、第3のバスマスタ103はアクセス許可カウント222がカウント上限値221に満たないので、バス調停部104は第3のバスマスタ103に対してアクセス許可を与える。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。そして、優先順位情報223が切り替わる。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図7及び図8の例によれば、ラウンドロビン方式により各バスマスタに公平に優先順位を設定できるため、各バスマスタに平均的なレスポンス性能を与えることができる。
なお、優先順位情報223をラウンドロビン方式でローテーションする順番は、図8の例に限らない。
《第3の実施形態》
図9は、図1中のバス調停情報106の第3の例を示している。図9の優先順位情報223は、カウント上限値221及びアクセス許可カウント222から判断される残り優先許可カウントが多いほど高い優先順位を持つことを示す。残り優先許可カウントが等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。
図10は、図9のバス調停情報106をもとにした第1の調停例を示している。図10の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、残り優先許可カウントが最も多い第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、残り優先許可カウントの多い第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻3においては、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、同様に残り優先許可カウントの多い第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。調停時刻4においては、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われる。この場合、両者ともに残り優先許可カウントが等しいため、第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図9及び図10の例によれば、残り優先許可カウントに応じて優先順位を決定する方式により、例えばカウント上限値221が大きな値に設定されたバスマスタに対しては早めにアクセス許可を与えることができ、周期の後半でアクセス許可が集中することを避けることができるので、余裕をもって共有リソース109へアクセスさせることができる。
なお、残り優先許可カウントが少ないほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、残り優先許可カウントが等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
図11は、図9のバス調停情報106をもとにした第2の調停例を示している。ここでは、第1〜第3のバスマスタ101,102,103のうち今回の調停でアクセス許可を受けたマスタ以外のマスタの中で残り優先許可カウントが最も多いマスタが次回の調停では最も高い優先順位を持つように、バス調停情報管理部105が優先順位情報223を順次更新するものとする。残り優先許可カウントが等しい場合は、第2及び第3のバスマスタ102,103よりも第1のバスマスタ101を優先し、第3のバスマスタ103よりも第2のバスマスタ102を優先する。また、次回の調停における優先順位が第2位及び第3位のバスマスタは、最優先のバスマスタを起点としてそれぞれ循環的に決定される。つまり、第1のバスマスタ101が最優先である場合には第2位が第2のバスマスタ102、第3位が第3のバスマスタ103であり、第2のバスマスタ102が最優先である場合には第2位が第3のバスマスタ103、第3位が第1のバスマスタ101であり、第3のバスマスタ103が最優先である場合には第2位が第1のバスマスタ101、第3位が第2のバスマスタ102である。
図11の最下段は、優先順位情報223の変化を示す。優先順位情報223の初期状態は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い優先順位を持つことを示す。
図11の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、初期状態で優先順位の最も高い第1のバスマスタ101がアクセス許可を得る。バス調停部104が第1のバスマスタ101にアクセス許可を与えると、バス調停情報管理部105は、第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントし、かつ優先順位情報223を更新する。ここでは、アクセス許可を受けた第1のバスマスタ101を除いた第2及び第3のバスマスタ102,103のうち残り優先許可カウントの大きい第3のバスマスタ103の優先順位が最も高くなる。この結果、優先順位情報223は第3のバスマスタ103、第1のバスマスタ101、第2のバスマスタ102の順に高い優先順位を示す。次に調停時刻2において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は、第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントし、かつ優先順位情報223を更新する。ここでは、アクセス許可を受けた第3のバスマスタ103を除いた第1及び第2のバスマスタ101,102の残り優先許可カウントがともに2であって等しいので、予め決められた固定優先順位に従って第1のバスマスタ101の優先順位が最も高くなる。この結果、優先順位情報223は第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い優先順位を示す。以下同様に調停を行い、1調停周期内の最後の調停時刻0では、第3のバスマスタ103がアクセス許可を得る。この調停時刻0における調停が完了すると、アクセス許可カウント222が0にリセットされ、かつ優先順位情報223が更新される。この結果、優先順位の高い順に、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103となった状態で、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図11の例によれば、全てのバスマスタに公平に優先順位を設定できるため、各バスマスタに平均的なレスポンス性能を与えることができる。
なお、優先順位情報223をローテーションする順番は、図11の例に限らない。また、残り優先許可カウントが少ないほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、残り優先許可カウントが等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
図12は、図9のバス調停情報106をもとにした第3の調停例を示している。ここでは、第1〜第3のバスマスタ101,102,103のうち今回の調停でアクセス許可を受けたマスタが次回の調停では最も低い優先順位を持ち、かつ次回の調停で他のマスタは残り優先許可カウントの多い順に高い優先順位をそれぞれ持つように、バス調停情報管理部105が優先順位情報223を順次更新するものとする。残り優先許可カウントが等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つものとする。
図12の最下段は、優先順位情報223の変化を示す。優先順位情報223の初期状態は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い優先順位を持つことを示す。
図12の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、優先順位の最も高い第1のバスマスタ101がアクセス許可を得る。バス調停部104が第1のバスマスタ101にアクセス許可を与えると、バス調停情報管理部105は、第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントし、かつ優先順位情報223を更新する。ここでは、アクセス許可を受けた第1のバスマスタ101の優先順位が最も低くなり、第2及び第3のバスマスタ102,103は残り優先許可カウントの多い順に高い優先順位をそれぞれ持つこととなる。この結果、優先順位情報223は第3のバスマスタ103、第2のバスマスタ102、第1のバスマスタ101の順に高い優先順位を示す。次に調停時刻2において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は、第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントし、かつ優先順位情報223を更新する。ここでは、アクセス許可を受けた第3のバスマスタ103の優先順位が最も低くなる。また、第1及び第2のバスマスタ101,102の残り優先許可カウントがともに2であって等しいので、予め決められた固定優先順位に従って第1のバスマスタ101の優先順位が最も高くなる。この結果、優先順位情報223は第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い優先順位を示す。以下同様に調停を行い、1調停周期内の最後の調停時刻0では、第3のバスマスタ103がアクセス許可を得る。この調停時刻0における調停が完了すると、アクセス許可カウント222が0にリセットされ、かつ優先順位情報223が更新される。この結果、優先順位の高い順に、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103となった状態で、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図12の例によれば、アクセス許可を受けたバスマスタの優先順位を下げる方式により、1つのバスマスタが連続してアクセス許可を受けることを防ぐことにより、周期の前半においてもアクセス許可が集中することを避けることができる。
なお、残り優先許可カウントが少ないほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、残り優先許可カウントが等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
図13は、図9のバス調停情報106をもとにした第4の調停例を示している。ここでの優先順位情報223は、残り優先許可カウントが大きいバスマスタほど高い優先順位を示し、残り優先許可カウントが等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。ただし、第1〜第3のバスマスタ101,102,103のうち今回の調停でアクセス許可を受けたバスマスタは、次回の調停にてバス調停情報管理部105によりアクセス許可候補から外されることとする。
図13の最下段は、優先順位情報223の変化を示す。下線は、アクセス許可候補から外されたバスマスタを示す。
図13の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、残り優先許可カウントが最も多い第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は、第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントし、かつ次の調停時刻において第3のバスマスタ103をアクセス許可候補から外すよう制御する。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は、第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントし、かつ次の調停時刻において第1のバスマスタ101をアクセス許可候補から外すよう制御する。調停時刻3〜9においても同様に調停を行う。最後に調停時刻0において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻0では、第3のバスマスタ103のアクセス許可カウント222が4であり、カウント上限値221に満たないが、第3のバスマスタ103はアクセス許可候補から外されているため、アクセス許可を受けることができない。結局、調停時刻0では、第1及び第2のバスマスタ101,102のうち、固定優先順位に従って第1のバスマスタ101がアクセス許可を受ける。調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図13の例によれば、連続して同一のバスマスタにアクセス許可を与えないことで、同一バスマスタへのアクセス許可の集中を防ぐことができる。
なお、残り優先許可カウントが少ないほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、残り優先許可カウントが等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
また、バスマスタをアクセス許可候補から外す期間は、任意に設定可能である。例えば、今回の調停でアクセス許可を受けたマスタは、次回以後の複数回の調停にてアクセス許可候補から外されることとしてもよい。また、バスマスタをアクセス許可候補から外す期間を、調停間隔とは無関係の期間にすることもできる。この期間を残り優先許可カウントに応じて決定することもできる。例えば、今回の調停でアクセス許可を受けたバスマスタの残り優先許可カウントがXであり、全バスマスタの残り優先許可カウントの合計がYであるとき、Y/Xにより求められる回数の調停にてアクセス許可候補から外されこととすれば、残り優先許可カウントに応じてアクセス許可の集中を防ぐことができる。
図14は、図9のバス調停情報106をもとにした第5の調停例を示している。ここでの優先順位情報223は、残り優先許可カウントが大きいバスマスタほど高い優先順位を示し、残り優先許可カウントが等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。また、第1〜第3のバスマスタ101,102,103のうち今回の調停でアクセス許可を受けたバスマスタは、次回の調停にてバス調停情報管理部105によりアクセス許可候補から外されるものの、当該アクセス許可候補をなす他のバスマスタの残り優先許可カウントがいずれも既に0に達しており、かつ当該アクセス許可候補をなす他のバスマスタのいずれからもアクセス要求がないときには、アクセス許可を受け得ることとする。
図14の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、残り優先許可カウントが最も多い第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は、第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントし、かつ次の調停時刻において第3のバスマスタ103が原則的にはアクセス許可候補から外されるものの、一定条件下では当該第3のバスマスタ103が最も低い優先順位を持つように制御する。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は、第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントし、かつ次の調停時刻において第1のバスマスタ101が原則的にはアクセス許可候補から外されるものの、一定条件下では当該第1のバスマスタ101が最も低い優先順位を持つように制御する。調停時刻3〜8においても同様に調停を行う。次に調停時刻9において、第3のバスマスタ103のみがアクセス要求を行っている。この調停時刻9では、第3のバスマスタ103が原則的にはアクセス許可候補から外されているものの、第1及び第2のバスマスタ101,102の残り優先許可カウントがいずれも既に0に達しており、かつ当該第1及び第2のバスマスタ101,102のいずれからもアクセス要求がないので、第3のバスマスタ103が調停時刻8に続けてアクセス許可を受ける。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は、第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントし、かつ次の調停時刻において第3のバスマスタ103が原則的にはアクセス許可候補から外されるものの、一定条件下では当該第3のバスマスタ103が最も低い優先順位を持つように制御する。次に調停時刻0において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っている。この調停時刻0では、第3のバスマスタ103が原則的にはアクセス許可候補から外されており、第1及び第2のバスマスタ101,102の残り優先許可カウントがいずれも既に0に達しているものの、アクセス許可候補の1つである第2のバスマスタ102がアクセス要求を行っているので、第3のバスマスタ103はアクセス許可を受けることができず、第2のバスマスタ102がアクセス許可を受ける。調停時刻0における調停が完了すると、全てのアクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図14の例によれば、一定条件下で連続して同一のバスマスタにアクセス許可を与えるようにすることで、アクセス許可の機会を逃さないようにすることができる。
なお、残り優先許可カウントが少ないほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、残り優先許可カウントが等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。また、図13の例と同様に、バスマスタをアクセス許可候補から外す期間は任意に設定可能である。
《第4の実施形態》
図15は、図1中のバス調停情報106の第4の例を示している。図15の優先順位情報223は、アクセス要求がデータリード転送である方がデータライト転送よりも高い優先順位を持つことを示す。また、アクセス要求がリード転送同士、ライト転送同士の場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。
図16は、図15のバス調停情報106をもとにした調停例を示している。中段におけるアクセス要求を示す矢印に記載されている「W」、「R」の記号は、それぞれライト転送、リード転送であることを示す。
図16の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、リード転送である第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、ライト転送同士であるため、より優先順位の高い第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。次に調停時刻3においては、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、同様にリード転送である第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。調停時刻4、5、6、7においても同様に調停を行う。調停時刻8においては、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っている。第1のバスマスタ101はアクセス許可カウント222がカウント上限値221に達しており、第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に満たないため、第2のバスマスタ102がアクセス許可を得る。バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図15及び図16の例によれば、共有リソース109へのアクセス態様に応じて優先順位を決定する方式により、例えば、レスポンス時間のより長いリード転送をライト転送よりも優先させることで、データ処理システム100全体のレスポンス時間を下げることができる。
なお、ライト転送がリード転送よりも高い優先順位を有するように優先順位情報223を設定しても構わない。また、アクセスするアドレスやバースト転送のタイプ等、任意のアクセス態様を優先順位情報223に反映させることができる。更に、アクセス態様が等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
《第5の実施形態》
図17は、図1中のバス調停情報106の第5の例を示している。図17の優先順位情報223は、いわゆるLRU(Least Recently Used:最長時間未使用)アルゴリズムに従って、最近最も過去にアクセスしたバスマスタほど高い優先順位を示すようにバス調停情報管理部105が管理を行う。
図18は、図17のバス調停情報106をもとにした調停例を示している。図18の最下段は、優先順位情報223の変化を示す。
図18の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、第1のバスマスタ101がアクセス許可を得る。バス調停部104が第1のバスマスタ101にアクセス許可を与えると、バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。そしてバス調停情報管理部105は第1のバスマスタ101が最も低い優先順位を持つように優先順位情報223を更新する。このとき、残り2つのバスマスタ間の優先順位は変更されないようにする。次に調停時刻2において、第2のバスマスタ102と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第2のバスマスタ102がアクセス許可を得る。バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。そしてバス調停情報管理部105は第2のバスマスタ102が最も低い優先順位を持つように優先順位情報223を更新する。このとき、残り2つのバスマスタ間の優先順位は変更されないようにする。次に調停時刻3においては、第3のバスマスタ103のみがアクセス要求を行っているため、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。そしてバス調停情報管理部105は第3のバスマスタ103が最も低い優先順位を持つように優先順位情報223を更新する。このとき、残り2つのバスマスタ間の優先順位は変更されないようにする。調停時刻4、5、6においても同様に調停を行う。調停時刻7においては、第1〜第3のバスマスタ101〜103がアクセス要求を行っている。第1のバスマスタ101はアクセス許可カウント222がカウント上限値221に達しており、第2のバスマスタ102と第3のバスマスタ103はアクセス許可カウント222がカウント上限値221に満たないため、第2及び第3のバスマスタ102,103の競合の結果、第2のバスマスタ102がアクセス許可を得る。バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。そしてバス調停情報管理部105は第2のバスマスタ102が最も低い優先順位を持つように優先順位情報223を更新する。このとき、残り2つのバスマスタ間の優先順位は変更されないようにする。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図17及び図18の例によれば、LRUアルゴリズムに従って優先順位を決定する方式により、各バスマスタにおけるレスポンス時間の最悪値を低減することができる。
《第6の実施形態》
図19は、図1中のバス調停情報106の第6の例を示している。図19のバス調停情報106は、調停周期情報220と、バスマスタ毎に設定されたカウント上限値221と、バスマスタ毎のアクセス許可カウント222と、優先順位情報223とに加えて、バスマスタ毎に設定されたアクセス周期224の情報を含んでいる。第1〜第3のバスマスタ101〜103は、それぞれアクセス許可を受けると、アクセス周期224として設定された数値を調停間隔に乗じて得られた時間が経過してから次のアクセス要求を行うものとする。図19の優先順位情報223は、残り優先許可カウント(カウント上限値221及びアクセス許可カウント222から判断される。)とアクセス周期224との積が大きなバスマスタほど高い優先順位を示すように、バス調停情報管理部105が管理を行う。また、積が等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。
図20は、図19のバス調停情報106をもとにした調停例を示している。ここで、図20の下段における括弧内の数値は、残り優先許可カウントとアクセス周期との積を表している。
図20の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタのアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、積の最も大きい第2のバスマスタ102がアクセス許可を得る。バス調停部104が第2のバスマスタ102にアクセス許可を与えると、バス調停情報管理部105は第2のバスマスタ102に該当するアクセス許可カウント222を1つだけインクリメントする。この後、第2のバスマスタ102はアクセス周期224で示される3調停間隔後にアクセス要求を行う。次に調停時刻2において、第1のバスマスタ101と第3のバスマスタ103とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。この後、第1のバスマスタ101はアクセス周期224で示される1.5調停間隔後にアクセス要求を行う。次に調停時刻3においては、第3のバスマスタ103のみがアクセス要求を行っているため、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。この後、第3のバスマスタ103はアクセス周期224で示される0.5調停間隔後にアクセス要求を行う。調停時刻4、5、6、7、8においても同様に調停を行う。調停時刻9においては、第1〜第3のバスマスタ101〜103がアクセス要求を行っている。第1のバスマスタ101と第2のバスマスタ102はアクセス許可カウント222がカウント上限値221に達しており、第3のバスマスタ103はアクセス許可カウント222がカウント上限値221に満たないため、第3のバスマスタ103がアクセス許可を得る。バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。この後、第3のバスマスタ103はアクセス周期224で示される0.5調停間隔後にアクセス要求を行う。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図19及び図20の例によれば、各バスマスタのアクセス周期224を考慮した優先順位の決定方法により、アクセス周期の長いバスマスタがアクセス許可機会を逃すことがないようにすることができる。
なお、残り優先許可カウントとアクセス周期224との積が小さいほど高い優先順位を有するように優先順位情報223を設定しても構わない。また、各バスマスタの能力に合わせて任意の値をアクセス周期224として設定することができる。更に、積が等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
《第7の実施形態》
図21は、図1中のバス調停情報106の第7の例を示している。図21のバス調停情報106は、調停周期情報220と、バスマスタ毎に設定されたカウント上限値221と、バスマスタ毎のアクセス許可カウント222と、優先順位情報223とに加えて、バスマスタ毎の優先順位制御カウント225を含んでいる。図21の優先順位情報223は、優先順位制御カウント225が大きいほど高い優先順位を持つことを示す。また、優先順位制御カウント225が等しい場合は、第1のバスマスタ101、第2のバスマスタ102、第3のバスマスタ103の順に高い(固定の)優先順位を持つことを示す。
優先順位制御カウント225の初期値は、それぞれカウント上限値221と一致するように、第1、第2及び第3のバスマスタ101,102,103に対して3、2、5がセットされている。これらの優先順位制御カウント225は、対応するカウント上限値221とアクセス許可の有無とを反映して順次更新されるようになっている。具体的に説明すると、バス調停情報管理部105は、アクセス許可を受けたバスマスタに対しては、カウント上限値221の合計の値(1周期内の調停回数=10)を優先順位制御カウント225から差し引いたうえ、当該バスマスタのカウント上限値221を加えるように制御することで、当該バスマスタの優先順位制御カウント225が相対的に小さくなるように更新する。一方、他のバスマスタに対しては、優先順位制御カウント225に各々のカウント上限値221を加えるようにバス調停情報管理部105が制御することで、当該他のバスマスタの優先順位制御カウント225が相対的に大きくなるように更新する。これにより、同じバスマスタが連続してアクセス許可を受ける機会が低減される。
図22は、図21のバス調停情報106をもとにした調停例を示している。図22の下段は各調停間隔における第1〜第3のバスマスタ101〜103のアクセス許可カウント222を、図22の最下段は各調停間隔における第1〜第3のバスマスタ101〜103の優先順位制御カウント225をそれぞれ示している。また、括弧内の数値は第1〜第3のバスマスタ101〜103の残り優先許可カウントを示している。
図22の例では、調停時刻1において、第1〜第3のバスマスタ101〜103の全てがアクセス要求を行っている。この調停時刻1では、全てのバスマスタ101〜103のアクセス許可カウント222が0であり、カウント上限値221に満たないので、全てのバスマスタに対して優先順位情報223をもとに調停が行われる。この結果、優先順位制御カウント225が最も大きい第3のバスマスタ103がアクセス許可を得る。バス調停部104が第3のバスマスタ103にアクセス許可を与えると、バス調停情報管理部105は第3のバスマスタ103に該当するアクセス許可カウント222を1つだけインクリメントする。そのうえ、バス調停情報管理部105は、第3のバスマスタ103の優先順位制御カウント225からカウント上限値221の合計である10を差し引き、更に全てのバスマスタ101〜103の優先順位制御カウント225に各々のカウント上限値221を加える。この結果、第1のバスマスタ101の優先順位制御カウント225は3に3を加えて6となり、第2のバスマスタ102の優先順位制御カウント225は2に2を加えて4となり、第3のバスマスタ103の優先順位制御カウント225は5から10を引き5を加えて0となる。次に調停時刻2において、第1のバスマスタ101と第2のバスマスタ102とがアクセス要求を行っており、調停時刻1と同様に両者ともにアクセス許可カウント222がカウント上限値221に満たないので、両方のバスマスタに対して優先順位情報223をもとに調停が行われ、その結果、優先順位制御カウント225の大きい第1のバスマスタ101がアクセス許可を得る。バス調停情報管理部105は第1のバスマスタ101に該当するアクセス許可カウント222を1つだけインクリメントする。そのうえ、バス調停情報管理部105は、第1のバスマスタ101の優先順位制御カウント225からカウント上限値221の合計である10を差し引き、更に全てのバスマスタ101〜103の優先順位制御カウント225に各々のカウント上限値221を加える。この結果、第1のバスマスタ101の優先順位制御カウント225は6から10を引き3を加えて−1となり、第2のバスマスタ102の優先順位制御カウント225は4に2を加えて6となり、第3のバスマスタ103の優先順位制御カウント225は0に5を加えて5となる。以下同様に調停を行い、調停時刻0における調停が完了すると、アクセス許可カウント222は0にリセットされ、優先順位制御カウント225は各々のカウント上限値221にセットされて、1周期の調停が完了する。以下、周期的に同様の調停が行われる。
以上のとおり、図21及び図22の例によれば、優先順位制御カウント225に応じて優先順位を決定する方式により、例えば各バスマスタに対してカウント上限値221の大きさに応じて均一にアクセス許可を与えることができ、全バスマスタのアクセス許可が集中することを避けることができるので、全バスマスタに余裕をもって共有リソース109へアクセスさせることができる。
なお、本実施形態ではアクセス許可カウント222を用いてカウント上限値221を越える回数のアクセス許可を抑制しているが、優先順位制御カウント225により決定される優先順位のみを用いて調停を行うこともできる。優先順位制御カウント225の更新方法に別のアルゴリズムを用いても構わない。また、優先順位制御カウント225が等しい場合の優先順位について、任意の固定優先順位を設定することや、ラウンドロビン方式、その他の方式で設定することも可能である。
以上、第1〜第7の実施形態を説明してきた。上記説明ではバスマスタの個数を3としたが、実際にはその個数は任意であり、バスの形態もマルチレイヤバス等様々な形態をとることが可能である。1つのバスに複数のバスマスタが接続された形態では、これらのバスマスタ間の調停にも本発明が適用可能である。
また、データ処理システム100の動作中にバス調停情報106を任意のタイミングで変更してもよい。調停間隔の長さを全て等しくする必要はなく、任意の調停間隔を設定することができる。また、各バスマスタのカウント上限値221の合計と調停周期情報220の設定値とが違っていてもよい。
また、上記説明ではバスマスタごとのアクセス許可カウント222をインクリメントすることとしたが、上記説明におけるカウント上限値221を初期値とする残り優先許可カウントをデクリメントすることとしてもよい。
また、第2〜第7の実施形態でも、第1の実施形態について図5及び図6に例示したように、残り優先許可カウントが0である複数のバスマスタ間でアクセス要求を調停する際に第2の優先ルールを適用することが可能である。
また、複数組のカウント上限値221を備え、例えば1調停周期ごとにカウント上限値221の組を切り替えることとしてもよい。例えば1調停周期ごとに、異なる調停アルゴリズムを採用することも可能である。バスマスタを複数のグループに分け、各グループごとに異なる調停アルゴリズムを採用することとしてもよい。
以上説明してきたとおり、本発明に係るリソース管理装置は、各調停時刻において最優先順位を持つマスタを予め決めておかなくても、各マスタに最低アクセスバンド幅を保証することができるので、システムLSI等に好適に利用できる。
本発明に係るリソース管理装置の構成例を示すブロック図である。 図1中のバス調停情報の第1の例を示す概念図である。 図2のバス調停情報をもとにした第1の調停例を示すタイミング図である。 図2のバス調停情報をもとにした第2の調停例を示すタイミング図である。 図2のバス調停情報をもとにした第3の調停例を示すタイミング図である。 図2のバス調停情報をもとにした第4の調停例を示すタイミング図である。 図1中のバス調停情報の第2の例を示す概念図である。 図7のバス調停情報をもとにした調停例を示すタイミング図である。 図1中のバス調停情報の第3の例を示す概念図である。 図9のバス調停情報をもとにした第1の調停例を示すタイミング図である。 図9のバス調停情報をもとにした第2の調停例を示すタイミング図である。 図9のバス調停情報をもとにした第3の調停例を示すタイミング図である。 図9のバス調停情報をもとにした第4の調停例を示すタイミング図である。 図9のバス調停情報をもとにした第5の調停例を示すタイミング図である。 図1中のバス調停情報の第4の例を示す概念図である。 図15のバス調停情報をもとにした調停例を示すタイミング図である。 図1中のバス調停情報の第5の例を示す概念図である。 図17のバス調停情報をもとにした調停例を示すタイミング図である。 図1中のバス調停情報の第6の例を示す概念図である。 図19のバス調停情報をもとにした調停例を示すタイミング図である。 図1中のバス調停情報の第7の例を示す概念図である。 図21のバス調停情報をもとにした調停例を示すタイミング図である。
符号の説明
100 データ処理システム
101〜103 バスマスタ
104 バス調停部
105 バス調停情報管理部
106 バス調停情報
107 リソース制御部
108 リソース管理装置
109 共有リソース
111〜113 バス
220 調停周期情報
221 カウント上限値
222 アクセス許可カウント
223 優先順位情報
224 アクセス周期
225 優先順位制御カウント

Claims (20)

  1. 複数のマスタと少なくとも1つの共有リソースとの間に介在したリソース管理装置であって、
    前記複数のマスタの各々に対して設定された、各マスタが所定時間内に前記共有リソースへのアクセス許可を受け得る最低限の回数を表すカウント上限値を調停情報として管理する調停情報管理部と、
    前記調停情報をもとに前記各マスタから前記共有リソースへのアクセス要求を調停する調停部と、
    前記調停部によりアクセスが許可されたマスタと前記共有リソースとの間のデータ転送を制御するリソース制御部とを備え、
    前記調停部は、前記複数のマスタのうち2以上のマスタが同時にアクセス要求を行っている場合には、当該2以上のアクセス要求マスタのうちアクセス許可を受けた回数が対応する前記カウント上限値に満たないアクセス要求マスタに対して優先的にアクセス許可を与えることを特徴とするリソース管理装置。
  2. 請求項1記載のリソース管理装置において、
    前記調停情報管理部は、前記複数のマスタ間の優先順位に関する優先順位情報を持ち、
    前記調停部は、前記2以上のアクセス要求マスタのうち前記所定時間内にアクセス許可を受けた回数が対応する前記カウント上限値に満たないアクセス要求マスタが複数存在する場合には、前記優先順位情報に基づく第1の優先ルールに従ってアクセス要求の調停を行うことを特徴とするリソース管理装置。
  3. 請求項2記載のリソース管理装置において、
    前記第1の優先ルールは、前記複数のマスタ間の固定された優先順位に基づくルールであることを特徴とするリソース管理装置。
  4. 請求項3記載のリソース管理装置において、
    前記複数のマスタ間の固定された優先順位は、前記カウント上限値の大きさに応じて決定されることを特徴とするリソース管理装置。
  5. 請求項2記載のリソース管理装置において、
    前記第1の優先ルールは、前記複数のマスタ間の優先順位を順次変更するラウンドロビン方式のルールであることを特徴とするリソース管理装置。
  6. 請求項2記載のリソース管理装置において、
    前記第1の優先ルールは、前記カウント上限値から前記所定時間内にアクセス許可を受けた回数を差し引いて得られる残り優先許可カウントに応じて逐次決定される前記複数のマスタ間の優先順位に基づくルールであることを特徴とするリソース管理装置。
  7. 請求項6記載のリソース管理装置において、
    前記調停情報管理部は、前記複数のマスタのうち今回の調停でアクセス許可を受けたマスタ以外のマスタの中で前記残り優先許可カウントが最も多いマスタが次回の調停では最も高い優先順位を持つように、前記優先順位情報を順次更新することを特徴とするリソース管理装置。
  8. 請求項7記載のリソース管理装置において、
    前記複数のマスタの総数をn、
    前記各マスタに対して固定的に定められた順序番号をm、
    前記複数のマスタのうち前記次回の調停では最も高い優先順位を持つマスタに対して前記固定的に定められた順序番号をk、
    nは2以上の整数、m及びkは1以上かつn以下の整数とすると、
    前記複数のマスタのうち前記次回の調停では最も高い優先順位を持つマスタ以外のマスタの次回の調停における優先順位は、m>kのときはm−(k−1)、m<kのときはm+(n−(k−1))と表されることを特徴とするリソース管理装置。
  9. 請求項6記載のリソース管理装置において、
    前記調停情報管理部は、前記複数のマスタのうち今回の調停でアクセス許可を受けたマスタが次回の調停では最も低い優先順位を持ち、かつ他のマスタは前記残り優先許可カウントに応じた優先順位をそれぞれ持つように、前記優先順位情報を順次更新することを特徴とするリソース管理装置。
  10. 請求項1記載のリソース管理装置において、
    前記複数のマスタのうち今回の調停でアクセス許可を受けたマスタは、少なくとも次回の調停にてアクセス許可候補から外されることを特徴とするリソース管理装置。
  11. 請求項10記載のリソース管理装置において、
    前記複数のマスタのうち今回の調停でアクセス許可を受けたマスタは、前記アクセス許可候補から外された場合であっても、当該アクセス許可候補をなす他のマスタのいずれからもアクセス要求がないときには、アクセス許可を受け得ることを特徴とするリソース管理装置。
  12. 請求項2記載のリソース管理装置において、
    前記第1の優先ルールは、前記複数のマスタが前記共有リソースへ要求するアクセスの種類によって決定される前記複数のマスタ間の優先順位に基づくルールであることを特徴とするリソース管理装置。
  13. 請求項2記載のリソース管理装置において、
    前記第1の優先ルールは、LRU(Least Recently Used)アルゴリズムに従って逐次決定される前記複数のマスタ間の優先順位に基づくルールであることを特徴とするリソース管理装置。
  14. 請求項2記載のリソース管理装置において、
    前記調停情報管理部は、前記複数のマスタの各々について、前記各バスマスタが出している今回のアクセス要求から次回のアクセス要求を出すまでの時間間隔であるアクセス周期に関する情報を更に持ち、
    前記第1の優先ルールは、前記設定値から前記所定時間内にアクセス許可を受けた回数を差し引いて得られる残り優先許可カウントと前記アクセス周期との積に応じて逐次決定される前記複数のマスタ間の優先順位に基づくルールであることを特徴とするリソース管理装置。
  15. 請求項2記載のリソース管理装置において、
    前記調停情報管理部は、前記複数のマスタの各々について、対応する前記設定値とアクセス許可の有無とを反映して順次更新される優先順位制御カウント情報を更に持ち、
    前記第1の優先ルールは、前記複数のマスタのうち同じマスタが連続してアクセス許可を受ける機会が低減されるように、前記優先順位制御カウント情報に応じて逐次決定される前記複数のマスタ間の優先順位に基づくルールであることを特徴とするリソース管理装置。
  16. 請求項2記載のリソース管理装置において、
    前記調停部は、前記2以上のアクセス要求マスタの中に前記所定時間内にアクセス許可を受けた回数が前記カウント上限値に満たないアクセス要求マスタが存在せず、かつ前記2以上のアクセス要求マスタのうち前記所定時間内にアクセス許可を受けた回数が前記カウント上限値に達したアクセス要求マスタが複数存在する場合には、前記優先順位情報に基づく第2の優先ルールに従ってアクセス要求の調停を行うことを特徴とするリソース管理装置。
  17. 請求項16記載のリソース管理装置において、
    前記第2の優先ルールは、前記複数のマスタ間の固定された優先順位に基づくルールであることを特徴とするリソース管理装置。
  18. 請求項16記載のリソース管理装置において、
    前記第2の優先ルールは、前記複数のマスタ間の優先順位を順次変更するラウンドロビン方式のルールであることを特徴とするリソース管理装置。
  19. 複数のマスタが少なくとも1つの共有リソースへのアクセス要求をそれぞれ発行するシステムにおけるリソース管理方法であって、
    前記複数のマスタ間の優先順位に関する優先順位情報と、前記複数のマスタの各々に対して設定された、各マスタが所定時間内に前記共有リソースへのアクセス許可を受け得る最低限の回数を表すカウント上限値とを調停情報として管理するステップと、
    前記複数のマスタのうち2以上のマスタが同時にアクセス要求を行っている場合には、当該2以上のアクセス要求マスタのうちアクセス許可を受けた回数が対応する前記カウント上限値に満たないアクセス要求マスタに対して優先的にアクセス許可を与えるステップと、
    前記2以上のアクセス要求マスタのうちアクセス許可を受けた回数が対応する前記カウント上限値に満たないアクセス要求マスタが複数存在する場合には、前記優先順位情報に基づく第1の優先ルールに従ってアクセス要求の調停を行うステップとを備えたことを特徴とするリソース管理方法。
  20. 請求項19記載のリソース管理方法において、
    前記2以上のアクセス要求マスタの中に前記所定時間内にアクセス許可を受けた回数が前記カウント上限値に満たないアクセス要求マスタが存在せず、かつ前記2以上のアクセス要求マスタのうちアクセス許可を受けた回数が前記カウント上限値に達したアクセス要求マスタが複数存在する場合には、前記優先順位情報に基づく第2の優先ルールに従ってアクセス要求の調停を行うステップを更に備えたことを特徴とするリソース管理方法。
JP2005362801A 2005-01-12 2005-12-16 リソース管理装置 Active JP4907166B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005362801A JP4907166B2 (ja) 2005-01-12 2005-12-16 リソース管理装置
US11/328,314 US7533206B2 (en) 2005-01-12 2006-01-10 Resource management device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005005065 2005-01-12
JP2005005065 2005-01-12
JP2005362801A JP4907166B2 (ja) 2005-01-12 2005-12-16 リソース管理装置

Publications (2)

Publication Number Publication Date
JP2006221611A JP2006221611A (ja) 2006-08-24
JP4907166B2 true JP4907166B2 (ja) 2012-03-28

Family

ID=36654593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005362801A Active JP4907166B2 (ja) 2005-01-12 2005-12-16 リソース管理装置

Country Status (2)

Country Link
US (1) US7533206B2 (ja)
JP (1) JP4907166B2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739437B2 (en) * 2005-01-31 2010-06-15 Panasonic Corporation Access arbiter and arbitrable condition verification device
JP4846482B2 (ja) * 2006-08-03 2011-12-28 パナソニック株式会社 バスアービトレーション装置
US20080080511A1 (en) * 2006-09-28 2008-04-03 Jian-Guo Chen Buffer cluster structure and arbiter scheme for multi-port upper-layer network processor
US9262356B2 (en) * 2006-12-15 2016-02-16 Lantiq Beteiligungs-GmbH & Co.KG Arbiter device and arbitration method
US7774529B2 (en) * 2007-07-03 2010-08-10 Panasonic Corporation Bus communication apparatus that uses shared memory
EP2416254A4 (en) * 2009-03-31 2012-10-17 Fujitsu Ltd ARBITRATION PROCEDURE, ARBITRATION SWITCHING AND ARBITRATION SWITCHING DEVICE
US8595402B1 (en) * 2010-03-02 2013-11-26 Marvell International Ltd. Dynamic arbitration schemes for multi-master memory systems
WO2013145062A1 (ja) 2012-03-30 2013-10-03 日本電気株式会社 バスアクセス調停回路およびバスアクセス調停方法
US9009401B2 (en) 2012-07-27 2015-04-14 International Business Machines Corporation Multi-updatable least recently used mechanism
JP5605477B2 (ja) * 2013-08-22 2014-10-15 富士通株式会社 マルチコアプロセッサシステム、制御プログラム、および制御方法
CA2929791C (en) * 2015-05-12 2023-01-03 The Toronto-Dominion Bank Resource allocation based on connected devices
US10355955B2 (en) 2015-05-12 2019-07-16 The Toronto-Dominion Bank Resource allocation control based on connected devices
CA2944369C (en) 2015-10-29 2022-01-25 The Toronto-Dominion Bank Data transfer control based on connected device usage analysis
US10460748B2 (en) 2017-10-04 2019-10-29 The Toronto-Dominion Bank Conversational interface determining lexical personality score for response generation with synonym replacement
US10339931B2 (en) 2017-10-04 2019-07-02 The Toronto-Dominion Bank Persona-based conversational interface personalization using social network preferences
FR3086780B1 (fr) * 2018-09-27 2020-11-06 Thales Sa Systeme et procede d'acces a une ressource partagee
US11144358B1 (en) 2018-12-06 2021-10-12 Pure Storage, Inc. Asynchronous arbitration of shared resources
US11119704B2 (en) 2019-03-28 2021-09-14 Intel Corporation System, apparatus and method for sharing a flash device among multiple masters of a computing platform
US11475148B2 (en) * 2019-05-22 2022-10-18 Texas Instruments Incorporated System and method for providing limited utilization run time application control as a service in microcontrollers
US11693993B2 (en) 2021-02-22 2023-07-04 Texas Instruments Incorporated Processor and memory system to selectively enable communication
EP4092556A1 (en) * 2021-05-20 2022-11-23 Nordic Semiconductor ASA Bus decoder
CN114911727A (zh) * 2022-05-26 2022-08-16 上海美仁半导体有限公司 总线仲裁方法和装置、计算机可读存储介质及主控芯片
JP7518249B1 (ja) 2023-07-07 2024-07-17 Necプラットフォームズ株式会社 バス使用権調停システム、バス使用権調停方法、及び、バス使用権調停プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62264349A (ja) * 1986-05-13 1987-11-17 Fujitsu Ltd バス優先判定方式
JP3101023B2 (ja) * 1991-09-17 2000-10-23 沖電気工業株式会社 バス使用権制御方法
US5533205A (en) 1994-03-30 1996-07-02 International Business Machines Corporation Method and system for efficient bus allocation in a multimedia computer system
TW448363B (en) 1997-02-17 2001-08-01 Ssd Co Ltd High speed processor system with bus arbitration
JPH10334042A (ja) * 1997-05-30 1998-12-18 Nec Eng Ltd バス調停制御装置及びバス調停制御方法並びにバス調停制御プログラムを記録した記録媒体
US5948089A (en) 1997-09-05 1999-09-07 Sonics, Inc. Fully-pipelined fixed-latency communications system with a real time dynamic bandwidth allocation
US6519666B1 (en) * 1999-10-05 2003-02-11 International Business Machines Corporation Arbitration scheme for optimal performance
US7006501B1 (en) * 2000-03-31 2006-02-28 Sun Microsystems, Inc. Distributed least choice first arbiter
JP2002099503A (ja) * 2000-09-25 2002-04-05 Mitsubishi Electric Corp 調停回路
KR100803114B1 (ko) * 2000-11-30 2008-02-14 엘지전자 주식회사 메모리 중재 방법 및 시스템
US7080177B2 (en) * 2002-03-01 2006-07-18 Broadcom Corporation System and method for arbitrating clients in a hierarchical real-time DRAM system
EP1403773B1 (en) 2002-09-30 2007-06-13 Matsushita Electric Industrial Co., Ltd. Resource management device
US7062582B1 (en) * 2003-03-14 2006-06-13 Marvell International Ltd. Method and apparatus for bus arbitration dynamic priority based on waiting period
FR2860896A1 (fr) * 2003-10-14 2005-04-15 St Microelectronics Sa Procede d'arbitrage de l'acces a une ressource partagee
JP4480427B2 (ja) 2004-03-12 2010-06-16 パナソニック株式会社 リソース管理装置

Also Published As

Publication number Publication date
US7533206B2 (en) 2009-05-12
JP2006221611A (ja) 2006-08-24
US20060155904A1 (en) 2006-07-13

Similar Documents

Publication Publication Date Title
JP4907166B2 (ja) リソース管理装置
JP4480427B2 (ja) リソース管理装置
EP1403773B1 (en) Resource management device
JP2559906B2 (ja) アービトレーション・システム及び方法
JP4485574B2 (ja) アクセス制御装置、アクセス制御集積回路、及びアクセス制御方法
US20050223147A1 (en) Method and apparatus for allocating bus access rights in multimaster bus systems
JP2007026021A (ja) バス制御システム及びバス制御方法
JP2006195714A (ja) リソース管理装置
JP5565204B2 (ja) データ転送装置、データ転送方法およびプログラム、ならびに、画像形成装置
JP4308578B2 (ja) 集積回路装置のバスアービター
JP2004246862A (ja) リソース管理装置
CN117708008A (zh) 基于计数器的轮询仲裁方法及装置
JP2004038967A (ja) バスの使用頻度を制御できる方法及び装置
JP2007207024A (ja) リソース管理装置
JP6036806B2 (ja) バスアクセス調停回路およびバスアクセス調停方法
JP2011133940A (ja) アクセス調停装置、集積回路装置、電子機器、アクセス調停方法、及びプログラム
JP2006215621A (ja) Dma制御装置
JP5265596B2 (ja) バス調停装置およびバス調停方法
JP2007026022A (ja) バス調停装置及びバス調停方法
KR101167245B1 (ko) 실시간으로 변경되는 중재 파라미터를 이용한 버스 중재 장치 및 중재 방법
JP2006251875A (ja) バス調停装置及びバス調停方法
JP3985085B2 (ja) Dma制御装置
JP2007164713A (ja) リソース管理装置及びリソース管理方法
JP7292044B2 (ja) 制御装置および制御方法
JP4610961B2 (ja) アクセス制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110404

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111213

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4907166

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250