JP5106630B2 - バス調停装置 - Google Patents

バス調停装置 Download PDF

Info

Publication number
JP5106630B2
JP5106630B2 JP2010515720A JP2010515720A JP5106630B2 JP 5106630 B2 JP5106630 B2 JP 5106630B2 JP 2010515720 A JP2010515720 A JP 2010515720A JP 2010515720 A JP2010515720 A JP 2010515720A JP 5106630 B2 JP5106630 B2 JP 5106630B2
Authority
JP
Japan
Prior art keywords
waiting time
access
priority access
bus
high priority
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.)
Expired - Fee Related
Application number
JP2010515720A
Other languages
English (en)
Other versions
JPWO2009147744A1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2009147744A1 publication Critical patent/JPWO2009147744A1/ja
Application granted granted Critical
Publication of JP5106630B2 publication Critical patent/JP5106630B2/ja
Expired - Fee Related 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/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests

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に開示のものは、バスへのアクセスを複数回連続して使用する場合に、共有バスの累積使用時間が設定値をオーバーした場合に強制的にバスを開放する。また、特許文献2に開示のものは、優先度の低いプロセッサがバスを使用できる時間を制限する事によって、優先度の高いプロセッサがバスを使用する時間を保証している。
特公昭64−76256号公報 特開平8−278943号公報
しかし、共有バスの使用が一旦開始されると、その使用が終了するまで共有バスは開放されない場合が多い。そのため、優先度の低い処理を行うプロセッサが共有バスにアクセスすると、このアクセスが終了するまで優先度の高い処理を行うプロセッサは共有バスにアクセスすることができない。優先度の高い処理を行うプロセッサがアクセス要求を発行する度に、優先度の低い処理を行うプロセッサのアクセスと衝突した場合、優先度の高い処理を行うプロセッサのバス調停待ち時間が長くなってしまう。特許文献1,特許文献2に開示のものは、共有バスの使用時間に基づいて調停を行っているものの、優先度の高い処理を行うプロセッサのバス調停待ち時間を管理していないため、優先度の高い処理を行うプロセッサのバス調停待ち時間の上限を直接的に抑えることが難しい。
また、優先度の低いプロセッサがバスを使用する時間を制限しているため、優先度の高いプロセッサが全くアクセス要求を発行していない時間帯であっても、優先度の低いプロセッサは決められた時間以上はバスを使用することができず、バスの使用効率を上げることができない。
本発明は、上述の課題を解決するためになされたものであり、優先度の高い処理を行っているプロセッサからのアクセス要求を最大限に優先するバス調停装置において、優先度の高い処理を行っているプロセッサが調停によって待たされる時間を一定時間以下に抑えながら、優先度の高い処理を行っているプロセッサからアクセス要求が発行されない場合には優先度の低い処理を行うプロセッサに制限を加えることなく共有バスを使用させることができるバス調停装置を得ることを目的とする。
上記の課題を解決するために本発明のバス調停装置は、高優先度アクセスマスタから発行された高優先度アクセス要求を低優先度アクセスマスタから発行された低優先度アクセス要求よりも優先的に共有バスを介してメモリにアクセスさせて調停する調停回路と、所定期間ごとの高優先度アクセスマスタのアクセス待ち時間を累積する待ち時間累積部と、予め設定された閾値と待ち時間累積部に累積された累積待ち時間とを比較し、所定期間内に累積待ち時間が閾値を超えた場合にアクセス抑制信号を発信する比較器と、アクセス抑制信号に基づいて低優先度アクセス要求のアクセスを抑制する抑制回路と、を有する。
本発明によれば、高優先度アクセスマスタの累積待ち時間が閾値を超えると低優先度アクセス要求のアクセスを抑制するので、高優先度アクセスマスタのバス調停待ち時間を閾値として設定された一定時間以下に抑えることができる。また、高優先度アクセスマスタのアクセス待ち時間に基づいてアクセスの抑制が行われるため、高優先度アクセスマスタがアクセスしていない場合には、低優先度アクセスマスタに制限を加えることなく共有バスを使用させることができる。
図1は、本発明の実施の形態1に係るバス調停装置の概略構成を示す図である。 図2は、本発明の実施の形態1に係るバス調停装置の動作例を示すタイミング図である。 図3は、本発明の実施の形態2に係るバス調停装置の概略構成を示す図である。 図4は、本発明の実施の形態3に係るバス調停装置の概略構成を示す図である。 図5は、本発明の実施の形態4に係るバス調停装置の概略構成を示す図である。 図6は、本発明の実施の形態5に係るバス調停装置の概略構成を示す図である。
符号の説明
1 バス調停装置
2,2−1,2−2 高優先度アクセスマスタ
3−1,3−2,3−3 低優先度アクセスマスタ
4−1,4−2,4−3 メモリ
11 一定時間経過監視タイマ(タイマクリア部)
12 待ち時間累積タイマ(待ち時間累積部)
13 調停回路
14 閾値保持部
15 比較器
16−1,16−2,16−3 抑制回路
17 バスコントローラ
18 抑制機能有効レジスタ(抑制機能切替部)
19 閾値レジスタ(閾値保持部)
20,21 減算器
22 正値比較器
30−1,30−2 低優先度アクセス抑制回路
31 OR回路
32 高優先度調停回路
100,101,102,103,104,105,106 高優先度アクセス要求
110,111,112−1,112−2,113,114,115 低優先度アクセス要求
120,121,122 待ち時間
以下に、本発明にかかるバス調停装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
実施の形態1.
図1に本発明の実施の形態1に係るバス調停装置1の概略構成を示す。バス調停装置1は、一定時間経過監視タイマ(タイマクリア部)11、待ち時間累積タイマ(待ち時間累積部)12、調停回路13、閾値保持部14、比較器15、抑制回路16−1,16−2,16−3、バスコントローラ17から成る。
このバス調停装置1には、優先度の高い処理を実行する高優先度アクセスマスタ2と、優先度の低い処理を実行する低優先度アクセスマスタ3−1,3−2,3−3が接続されており、バス調停装置1はこれらのアクセスマスタ2,3−1,3−2,3−3から発行されるアクセス要求の調停を行う。バス調停装置1が調停を行い、共有バスに接続されているメモリ4−1,4−2,4−3に対するアクセスを行う。なお、アクセスマスタとはプロセッサやDMAコントローラのようなバスアクセスを発行できる装置を指す。
高優先度アクセスマスタ2から発行される高優先度アクセス要求は、バス調停装置1の中にある調停回路13に供給される。低優先度アクセスマスタ3−1,3−2,3−3から発行される低優先度アクセス要求は、それぞれ抑制回路16−1,16−2,16−3を通って調停回路13に供給される。調停回路13は高優先度アクセスマスタ2、抑制回路16−1,16−2,16−3を通って供給されたアクセス要求を受けて調停を行う。調停回路13は、高優先度アクセスマスタ2から発行される高優先度アクセス要求を低優先度アクセスマスタ3−1,3−2,3−3から発行される低優先度アクセス要求よりも常に優先させる。調停回路13によって選ばれたアクセス要求はバスコントローラ17に発行され、共有バスに接続されているメモリ4−1,4−2,4−3のいずれかに対して実行される。
調停回路13は調停の結果を、待ち時間累積タイマ12に通知する。待ち時間累積タイマ12では、高優先度アクセスマスタ2が発行した高優先度アクセス要求と、調停回路13から通知される調停結果から高優先度アクセスマスタ2が調停待ち状態にあるか否かの判断を行い、調停待ち状態の間は待ち時間累積タイマ12の値をインクリメントする。待ち時間累積タイマ12の値は、高優先度アクセスマスタ2のアクセス待ち時間(バス調停待ち時間)となる。なお、待ち時間累積タイマ12は、高優先度アクセスマスタ2からの高優先度アクセス要求が調停回路13で調停待ち状態にある事を、高優先度アクセスマスタ2から発行されている高優先度アクセス要求が有効であり、かつ調停回路13の調停結果が高優先度アクセスマスタ2を選択していない事から判断する。
比較器15は、待ち時間累積タイマ12の値と閾値保持部14に予め接待された閾値との比較を行う。比較器15は、待ち時間累積タイマ12の値が閾値を超えた時点で抑制回路16−1,16−2,16−3に対してアクセス抑制指示(アクセス抑制信号)を出す。抑制回路16−1,16−2,16−3は、比較器15が出すアクセス抑制指示を受けて、低優先度アクセスマスタ3−1,3−2,3−3が発行する低優先度アクセス要求を保留して抑制する。低優先度アクセスマスタ3−1,3−2,3−3からの低優先度アクセス要求が抑制された後は、調停回路13には高優先度アクセスマスタ2からの高優先度アクセス要求しか供給されないため、常に高優先度アクセスマスタ2からの高優先度アクセス要求がバスコントローラ17に対して発行される。つまり、高優先度アクセスマスタ2は調停待ち状態となることなく、共有バスに接続されているメモリ4−1,4−2,4−3にアクセスを行う事が可能となる。
これらのバスアクセス抑制処理は一定時間(所定期間)ごとに実施する。具体的には、予め指定された一定時間ごとにクリア要求を発行する一定時間経過監視タイマ11から発行されるクリア要求によって、待ち時間累積タイマ12の値が0にクリアされる。低優先度アクセス要求が抑制された場合であっても、待ち時間累積タイマ12の値が0になった時点から、再び低優先度アクセス要求が調停回路13に供給されるようになる。高優先度アクセスマスタ2からの高優先度アクセス要求が発行されていない間は、待ち時間累積タイマ12の値がインクリメントされないため、低優先度アクセスマスタ3−1,3−2,3−3からの低優先度アクセス要求は抑制されずに調停回路13に供給される。
このように、本実施の形態1では、一定時間経過監視タイマ11、待ち時間累積タイマ12、調停回路13、閾値保持部14、比較器15、抑制回路16−1,16−2,16−3を有して、低優先度アクセス要求のアクセスを抑制する抑制機構が構成される。
このバス調停装置1を用いる事により、一定時間経過監視タイマ11が計測する一定時間の間に、高優先度アクセスマスタ2が調停回路13に待たされる時間の最大値は閾値+バスアクセス1回分の最大時間となる。バスコントローラ17がメモリ4−1,4−2,4−3に対して行うバスアクセスの最大時間が固定であれば、高優先度アクセスマスタ2の待ち時間を一定値以下に制限する事が可能である。
図2に、バス調停装置1を適用した場合のタイミング図を示す。説明の簡略化のために、低優先度アクセスマスタの数が1つ(低優先度アクセスマスタ3−1のみ)の場合を記載している。また、期間(1)、期間(2)は、一定時間経過監視タイマ11が計測する一定時間である。
高優先度アクセスマスタ2からの高優先度アクセス要求100は、低優先度アクセスマスタ3−1からの低優先度アクセス要求110に対して遅れて発行されているため、低優先度アクセス要求110が先にバスコントローラ17へ発行され、バスアクセスが行われている。そのため高優先度アクセス要求100は、待ち時間120だけ待たされた後にバスアクセスが開始される。同様に高優先度アクセス要求101は、低優先度アクセス要求111に待ち時間121だけ待たされてからバスアクセスが行われている。
その結果、低優先度アクセス要求111が終了した時点で待ち時間累積タイマ12の値(累積待ち時間)が閾値を超え、低優先度アクセス要求112−1が抑制回路16−1によって抑制される。したがって、高優先度アクセス要求102は低優先度アクセス要求112−1に待たされることなく、バスアクセスが行われるため、待ち時間122は発生しない。
累積待ち時間が閾値を超えたことにより、抑制された低優先度アクセス要求112−1は、期間(1)の終了まで抑制される。期間(1)が終了して期間(2)に入った時点で累積待ち時間が0にクリアされ、低優先度アクセス要求112−2が調停回路13に対して供給される。低優先度アクセス要求112−1と低優先度アクセス要求112−2とは同じアクセス要求であるが、低優先度アクセス要求112−1は抑制回路16−1によって抑制されたため調停回路13には供給されず、低優先度アクセス要求112−2は抑制回路16−1による抑制が解除されたため調停回路13に供給された事を示す。期間(2)では、低優先度アクセス要求112−2は高優先度アクセス要求103等と衝突していないため直ちに実行される。期間(2)では、高優先度アクセス要求104,105,106が低優先度アクセス要求112−1,113,114,115と交互に発行され衝突していない。この場合、期間(2)における低優先度アクセス要求の発行回数は期間(1)における発行回数よりも多いが、高優先度アクセス要求104,105,106とは衝突しないため、全てのアクセス要求が抑制されることなく実行される。
例えば、一定時間経過監視タイマ11がクリア要求を発行する一定時間が100ms、閾値が9.5ms、メモリアクセス時間の最大値が0.5msというシステムでは、100ms経過する度に高優先度アクセスマスタ2が調停によって待たされる時間を、最大10ms(閾値9.5ms+メモリアクセス時間の最大値0.5ms)に抑制する事が可能である。これは高優先度アクセスマスタ2のバス競合による処理時間延長割合が10%以下に抑制可能である事を意味している。また、高優先度アクセスマスタ2から発行されるアクセス要求と低優先度アクセスマスタ3−1,3−2,3−3から発行されるアクセス要求の衝突が起こらない場合には、低優先度アクセス要求を制限無く発行することが可能である。
本発明はバスアクセスの頻度やバスの負荷を計測するのではなく、優先度の最も高いアクセスマスタが調停で待たされた時間を直接計測する事により、高優先度の処理を優先しつつ、バスが空いている状況では低優先度の処理を抑制することなく実行することで、バスの使用効率を高く保つ事が可能である。
なお、低優先度アクセスマスタ3の数と、メモリ4の数はこの例に限定されるものではない。
実施の形態2.
図3は、本発明の実施の形態2に係るバス調停装置の概略構成を示す。実施の形態1のものと同じ部分については、実施の形態1のものと同じ符号を用い、それらについての説明は省略する。本実施の形態2では、実施の形態1で示したバス調停装置の中に、低優先度アクセス要求に対する抑制機能の有効/無効を切り替える抑制機能有効レジスタ(抑制機能切替部)18が追加され、抑制機構の一部として機能している。この抑制機能有効レジスタ18は比較器15に接続されており、抑制機能有効レジスタ18により抑制機能が無効に設定された場合は、閾値や待ち時間累積タイマ12の値に関係なく抑制回路16−1,16−2,16−3への抑制指示を無効にする。これにより、高優先度アクセスマスタ2が実際に高優先度の処理を行っている間だけ抑制機構を動作させる事が可能となり、不要なアクセス抑制を解除する事が可能である。
また、抑制機能有効レジスタ18は調停回路13にも接続されている。実施例1の調停回路13では、高優先度アクセスマスタ2からのアクセス要求を常に優先するように調停が行われているが、本実施の形態2では抑制機能有効レジスタ18が無効に設定された場合には、全てのアクセスマスタを平等に扱う調停方式に切り替える。これにより高優先度アクセスマスタ2が実際に高優先度の処理を行っている間だけ高優先度アクセス要求を優先する事が可能となる。
さらに、抑制機能有効レジスタ18は待ち時間累積タイマ12にも接続されており、抑制機能有効レジスタ18が無効に設定された場合には待ち時間累積タイマ12の値を0にクリアし、かつ抑制機能有効レジスタ18により抑制機能が無効化されている間は待ち時間を計測しない。この機構は、抑制機能有効レジスタ18が次に有効に設定された場合に、待ち時間累積タイマ12の値を0から開始するための機構である。なお、抑制機能有効レジスタ18が有効に設定された事を待ち時間累積タイマ12でも検知し、このタイミングで待ち時間累積タイマ12の値を0にクリアしても良い。
実施の形態3.
図4は、本発明の実施の形態3に係るバス調停装置の概略構成を示す。実施の形態1のものと同じ部分については、実施の形態1のものと同じ符号を用い、それらについての説明は省略する。本実施の形態3では、実施の形態1のバス調停装置1に対して、閾値保持部14の代わりに高優先度アクセスマスタ2から変更可能に閾値を保持する閾値レジスタ(閾値保持部)19が用いられている。
高優先度アクセスマスタ2で、優先度の異なる処理が実行される場合がある。それぞれの処理に許されるバス調停待ち時間が異なる場合、当該処理を開始する前に閾値レジスタ19に対して高優先度アクセスマスタ2から閾値が設定される。これにより、同じ高優先度アクセスマスタ2で実行する複数の処理に対して、異なる閾値による低優先度アクセス要求の抑制を実現する事が可能である。
高優先度アクセスマスタ2で実行する処理が切り替わる場合、それまでに累積された待ち時間累積タイマ12の値は意味を持たなくなるため、閾値レジスタ19への設定要求に基づいて待ち時間累積タイマ12がクリアされる。
高優先度アクセスマスタ2で高い優先度の処理を行わない期間は、閾値レジスタ19に一定時間経過監視タイマ11が計測する値より大きな閾値を設定すれば、低優先度アクセス要求に対する抑制処理は行われない。
実施の形態4.
図5は、本発明の実施の形態4に係るバス調停装置の概略構成を示す。実施の形態1のものと同じ部分については、実施の形態1のものと同じ符号を用い、それらについての説明は省略する。本実施の形態4では、実施の形態1で示したバス調停装置に対して、減算器20が追加されている。
一定時間経過監視タイマ11から出力されるクリア要求によって待ち時間累積タイマ12の値がクリアされる際に、待ち時間累積タイマ12の値が閾値を超えている場合、待ち時間累積タイマ12の値から閾値が減算器20によって減算され、その差が導出される。そして、減算器20によって減算された値が待ち時間累積タイマ12の初期値として設定される。待ち時間累積タイマ12の値がクリアされる際に、時間累積タイマ12の値が閾値よりも小さい場合は、実施の形態1と同様に待ち時間累積タイマ12の値は0に設定されてクリアされる。
実施の形態1から3では、待ち時間累積タイマ12の値が閾値保持部14や閾値レジスタ19に設定された閾値を超えた時点で低優先度のアクセス要求を抑制する方法を示した。この方法では、高優先度のアクセス要求は、閾値として設定された時間に加えて、低優先度アクセス要求が抑制された時点ですでに処理されているアクセス要求の処理が終了するまでの時間だけ待たされることとなる。
したがって、実際にバス調停装置1を使用する場合、高優先度のアクセス要求に許容されるバス調停待ち時間の上限値(最大バス取得待ち時間)からバスアクセス1回分の時間を引いた値を閾値として設定して、高優先度アクセス要求のバス調停待ち時間が最大バス取得待ち時間を超えないようにする必要がある。
ここで、アクセス時間の異なるメモリが共有バスに接続されている場合、最も長いアクセス時間を最大バス取得待ち時間から引く必要がある。すると、アクセス時間の短いメモリが頻繁に使用された場合、アクセス時間の長いメモリが使用された場合に比べて早く抑制指示が開始されてしまう。
例えば、アクセス時間が5クロック、10クロック、15クロックのメモリが接続されている共有バスと、その共有バスに接続されているプロセッサからなるシステムを考える。このシステムにおいて、高優先度を持つプロセッサに許される最大バス取得待ち時間をnクロックと定めた場合、閾値レジスタ19には、n−15を設定する必要がある。アクセス時間が最も長くなるメモリに対して、低優先度のプロセッサがアクセスする事を想定して、15クロック分の余裕を持って閾値を設定するのである。
この場合、低優先度のプロセッサからアクセスするメモリが5クロックしか必要としないメモリにしかアクセスしなかったとしても、高優先度のプロセッサのバス調停待ち時間が閾値レジスタ19に設定されたn−15を少しでも超えた時点で、低い優先度のアクセス要求は抑制されてしまう。この場合、最大バス取得待ち時間までは、10クロックの余裕があり、5クロックを必要とする低優先度のアクセス要求をあと2回は処理することが可能であったこととなる。
しかし、本実施の形態4では、最大バス取得待ち時間から超過した分のバス調停待ち時間は、次の期間の待ち時間累積タイマ12の初期値として処理される。したがって、閾値をnに設定した場合であっても、次の期間においては、超過した待ち時間の分だけ早く低優先度のアクセス要求に対する抑制処理が開始される。すなわち、高優先度のアクセス要求のバス調停待ち時間を、「n」に近い値に平均化することができる。
また、WAIT信号やACK信号によってアクセス時間が変化するメモリやコントローラが共有バスに接続されている場合、閾値レジスタ19に対する設定値を正しく計算する事ができない。このような場合には、アクセスに必要な時間の平均値等を閾値として仮に定めればよい。実際の動作において、高優先度のアクセス要求のバス調停待ち時間が閾値を超過した場合には、次の期間にその超過分が待ち時間累積タイマ12の初期値とされる。したがって、短期的には高優先度のアクセス要求のバス調停待ち時間が最大バス取得待ち時間をオーバーする場合があっても、長期的には、高優先度のアクセス要求の調停待ち時間を一定の割合以下に平均化する事が可能となる。
実施の形態5.
図6に、本発明の実施の形態5に係るバス調停装置の概略構成を示す。実施の形態1のものと同じ部分については、実施の形態1のものと同じ符号を用い、それらについての説明は省略する。本実施の形態5では、2つの高優先度アクセスマスタ2−1,2−2と、3つの低優先度アクセスマスタ3−1,3−2,3−3と、合わせて5つのプロセッサがバスを共有してシステムが構成される。
高優先度アクセスマスタ2−1,2−2が発行するアクセス要求は調停回路13に接続されるとともに、低優先度アクセス抑制回路30−1,30−2にそれぞれ接続されている。低優先度アクセス抑制回路30−1,30−2は、待ち時間累積タイマ12、閾値保持部14、比較器15を有しており、比較器15は、減算器21と正値比較器22とを有している。減算器21は、閾値保持部14に設定された閾値から待ち時間累積タイマ12の値を減算した値を「調停待ち余裕度」(比較結果)として高優先度調停回路32に出力するとともに、正値比較器22にも出力する。正値比較器22は、減算器21から供給された「調停待ち余裕度」と「0」とを比較し、その結果を正値情報としてOR回路31に出力する。
高優先度調停回路32は高優先度アクセスマスタ2−1,2−2から発行される高優先度アクセス要求を調停する回路であり、調停待ち時間余裕が小さいアクセス要求を優先した調停処理を行う。低優先度アクセス抑制回路30−1,30−2の正値比較器22から出力された正値情報はOR回路31でOR演算され、抑制回路16−1,16−2,16−3に供給される。
複数の高優先度アクセスマスタ2−1,2−2が存在する場合、高優先度アクセスマスタ2−1,2−2間の調停処理が必要となる。本実施の形態5では、この調停方式を均等に行うのではなく「調停待ち余裕度」の小さい方を優先する方式で行う。バス調停待ち時間は高優先度アクセスマスタ2上で実施する処理に影響を及ぼすため、実施の形態1〜4では閾値保持部14や閾値レジスタ19に設定された閾値を待ち時間累積タイマ12の値が超えないようにする機構で抑制機構を構成した。しかし、本実施の形態5のように高優先度アクセスマスタが複数存在する場合、局所的にはアクセス要求が集中して閾値を超えて高優先度アクセスマスタが待たされてしまう場合がある。
本実施の形態5では高優先度調停回路32が抑制機構の一部として機能し、閾値を超過した値が小さくなるように、高優先度アクセスマスタ2−1,2−2からのアクセス要求のうち「調停待ち余裕度」が小さいものを優先的に選択して調停回路13へ供給する。これにより複数存在する高優先度アクセスマスタ2−1,2−2の中での処理の偏りを防ぎ、閾値を超えて発生してしまったバス調停待ち時間を高優先度アクセスマスタ2−1,2−2に均等に配分する事が可能となる。実施の形態4で示した構成と組み合わせて使用すれば、一定時間の間に閾値を超えてしまった待ち時間累積タイマ12の値を、次の一定時間の待ち時間累積タイマ12の初期値とする事により、長期的に高優先度アクセスマスタ2−1,2−2の調停待ち時間を均等に割り振り、かつ指定された閾値以下に抑制する事が可能である。
なお、高優先度調停回路32と調停回路13は一つの調停回路として実装する事も可能である。また、高優先度アクセスマスタの数は2つに限られず、3つ以上の場合であっても同様の構成・方法で対応できる。
以上のように、本発明にかかるバス調停装置は、複数のメモリを共有して、複数のアクセスマスタから発行されるアクセス要求を処理するシステムに有用であり、特に、優先度の高低に応じたアクセス要求の調停を行うことに適している。

Claims (3)

  1. 高優先度アクセスマスタから発行された高優先度アクセス要求を低優先度アクセスマスタから発行された低優先度アクセス要求よりも優先的に共有バスを介してメモリにアクセスさせて調停する調停回路と、
    所定期間ごとの前記高優先度アクセスマスタのアクセス待ち時間を累積する待ち時間累積部と、
    予め設定された閾値と前記待ち時間累積部に累積された累積待ち時間とを比較し、前記所定期間内に前記累積待ち時間が前記閾値を超えた場合にアクセス抑制信号を発信する比較器と、
    前記アクセス抑制信号に基づいて前記低優先度アクセス要求のアクセスを保留して抑制する抑制回路と、
    を有することを特徴とするバス調停装置。
  2. 前記所定期間ごとに前記待ち時間累積部に累積された前記累積待ち時間をクリアする待ち時間クリア部をさらに有し、
    前記累積待ち時間がクリアされる際の前記累積待ち時間と前記閾値との差が、前記累積待ち時間がクリアされた後の前記待ち時間累積部の初期値とされることを特徴とする請求項1に記載のバス調停装置。
  3. 複数の前記高優先度アクセスマスタからの高優先度アクセス要求を受け付ける高優先度調停回路をさらに有し、
    前記比較器は、前記累積待ち時間と前記閾値との比較結果を前記高優先度調停回路に向けて発信し、
    前記高優先度調停回路は、前記複数の高優先度アクセスマスタから高優先度アクセス要求があった場合に、前記比較結果に基づいて前記累積待ち時間と前記閾値との差の小さい高優先度アクセス要求を前記調停回路に向けて供給することを特徴とする請求項1または2に記載のバス調停装置。
JP2010515720A 2008-06-06 2008-06-06 バス調停装置 Expired - Fee Related JP5106630B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/060449 WO2009147744A1 (ja) 2008-06-06 2008-06-06 バス調停装置

Publications (2)

Publication Number Publication Date
JPWO2009147744A1 JPWO2009147744A1 (ja) 2011-10-20
JP5106630B2 true JP5106630B2 (ja) 2012-12-26

Family

ID=41397836

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010515720A Expired - Fee Related JP5106630B2 (ja) 2008-06-06 2008-06-06 バス調停装置

Country Status (2)

Country Link
JP (1) JP5106630B2 (ja)
WO (1) WO2009147744A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013014841A1 (ja) * 2011-07-22 2013-01-31 パナソニック株式会社 データ処理装置およびデータ処理方法
CN103257942B (zh) * 2013-03-27 2015-12-02 青岛中星微电子有限公司 一种片上系统共享总线请求处理的方法及装置
EP3016689B1 (en) 2013-07-05 2021-03-10 Nitto Denko Corporation Filter element for decomposing contaminants, system for decomposing contaminants and method using the system
CN109840225B (zh) * 2017-11-27 2023-06-09 中国航空工业集团公司西安航空计算技术研究所 一种异构双核处理器访问eFPGA的控制电路
CN114546910A (zh) * 2020-11-20 2022-05-27 Oppo广东移动通信有限公司 访问控制方法、装置、存储介质及电子装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63245551A (ja) * 1987-03-31 1988-10-12 Toshiba Corp マルチプロセツサシステムのメモリアクセス方式
JPH0696014A (ja) * 1992-09-14 1994-04-08 Fuji Xerox Co Ltd バス使用優先順位制御装置
JPH07319756A (ja) * 1994-05-25 1995-12-08 Casio Electron Mfg Co Ltd メモリアクセス制御装置
JPH11191075A (ja) * 1997-08-28 1999-07-13 Oki Electric Ind Co Ltd メモリアーキテクチャーのための優先符号化及び復号化
JP2003114825A (ja) * 2001-10-04 2003-04-18 Hitachi Ltd メモリ制御方法、その制御方法を用いたメモリ制御回路、及びそのメモリ制御回路を搭載する集積回路
JP2004334361A (ja) * 2003-05-01 2004-11-25 Toshiba Corp マルチポートメモリ
JP2004341665A (ja) * 2003-05-14 2004-12-02 Canon Inc バス使用権調停制御装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63245551A (ja) * 1987-03-31 1988-10-12 Toshiba Corp マルチプロセツサシステムのメモリアクセス方式
JPH0696014A (ja) * 1992-09-14 1994-04-08 Fuji Xerox Co Ltd バス使用優先順位制御装置
JPH07319756A (ja) * 1994-05-25 1995-12-08 Casio Electron Mfg Co Ltd メモリアクセス制御装置
JPH11191075A (ja) * 1997-08-28 1999-07-13 Oki Electric Ind Co Ltd メモリアーキテクチャーのための優先符号化及び復号化
JP2003114825A (ja) * 2001-10-04 2003-04-18 Hitachi Ltd メモリ制御方法、その制御方法を用いたメモリ制御回路、及びそのメモリ制御回路を搭載する集積回路
JP2004334361A (ja) * 2003-05-01 2004-11-25 Toshiba Corp マルチポートメモリ
JP2004341665A (ja) * 2003-05-14 2004-12-02 Canon Inc バス使用権調停制御装置

Also Published As

Publication number Publication date
WO2009147744A1 (ja) 2009-12-10
JPWO2009147744A1 (ja) 2011-10-20

Similar Documents

Publication Publication Date Title
JP5106630B2 (ja) バス調停装置
JP5829890B2 (ja) 半導体データ処理装置、タイムトリガ通信システム及び通信システム
US9135195B2 (en) Prediction of electronic component behavior in bus-based systems
US20090113439A1 (en) Method and Apparatus for Processing Data
EP1348163A1 (en) System integrating agents having different resource-accessing schemes
JP2008040650A (ja) バスアービトレーション装置
JP5677007B2 (ja) バス調停装置、バス調停方法
US6105082A (en) Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle
JP4151362B2 (ja) バス調停方式、データ転送装置、及びバス調停方法
US7181558B2 (en) Avoidance of extended bus occupancy through simple control operation
JP2007052685A (ja) マイクロコントローラ
JPH03263158A (ja) 共通バス調停制御方式
JP2015014962A (ja) 演算装置、演算方法、及びプログラム
JPH0830549A (ja) バス制御装置
JPH04141757A (ja) バス制御方式
JP7226084B2 (ja) 情報処理装置
JP3677535B2 (ja) データ転送制御回路
US7747806B2 (en) Resource use management device, resource use management system, and control method for a resource use management device
JP2010113414A (ja) マルチコアシステム、スレッドスケジューリング方法、プログラム、記憶媒体
JP4190629B2 (ja) マルチプロセッサシステム
JP4863282B2 (ja) Dma転送装置およびデータ転送装置
JP2008097462A (ja) 情報処理装置及び情報処理方法
JP2002091903A (ja) バスシステム
JP2004062333A (ja) 画像処理装置
JP2010170473A (ja) バス調停装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120806

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: 20120904

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: 20121002

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees