JP2016197316A - インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム - Google Patents

インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム Download PDF

Info

Publication number
JP2016197316A
JP2016197316A JP2015076509A JP2015076509A JP2016197316A JP 2016197316 A JP2016197316 A JP 2016197316A JP 2015076509 A JP2015076509 A JP 2015076509A JP 2015076509 A JP2015076509 A JP 2015076509A JP 2016197316 A JP2016197316 A JP 2016197316A
Authority
JP
Japan
Prior art keywords
bus
interlock
bridge circuit
split
access
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.)
Granted
Application number
JP2015076509A
Other languages
English (en)
Other versions
JP6193910B2 (ja
Inventor
孝彰 小松
Takaaki Komatsu
孝彰 小松
真大 辻
Masahiro Tsuji
真大 辻
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2015076509A priority Critical patent/JP6193910B2/ja
Priority to DE102016105694.4A priority patent/DE102016105694A1/de
Priority to US15/084,560 priority patent/US20160292093A1/en
Priority to CN201610207178.2A priority patent/CN106055501B/zh
Publication of JP2016197316A publication Critical patent/JP2016197316A/ja
Application granted granted Critical
Publication of JP6193910B2 publication Critical patent/JP6193910B2/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
    • 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/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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/1668Details of memory controller
    • G06F13/1678Details of memory controller using bus width
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Abstract

【課題】リトライ不可能なインタロックバスとスプリットバスを接続するブリッジ回路において、バス競合時のデッドロックを回避するバスシステムを提供すること。【解決手段】本発明のバスシステムは、第1のブリッジ回路と第2のブリッジ回路の少なくとも2つのブリッジ回路を備え、それぞれのブリッジ回路によりスプリットバスの異なるチャネルとインタロックバスを接続し、スプリットバス側からインタロックバス側へのアクセスを第1のブリッジ回路で、インタロックバス側からスプリットバス側へのアクセスを第2のブリッジ回路で処理する。【選択図】図1

Description

本発明は、インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステムに関する。
電子機器内部のチップ間バスやオンチップバスには、アクセス要求開始から応答完了までバスを占有するインタロックバスと、アクセス要求とそれに対する応答のあいだにバスを占有せず別のアクセスを実行可能なスプリットバスとがある。スプリットバスの例としてはPCI ExpressやAMBA AXI、インタロックバスの例としてはPCIバスやAMBA APBが挙げられる。このため、電子機器の内部にはインタロックバスとスプリットバスを接続するブリッジ回路が存在する場合がある。
このようなブリッジ回路を用いて、例えばスプリットバスを介して2つのインタロックバスが接続される形態を考えると、一方のインタロックバスからスプリットバスを介して他方のインタロックバスへのアクセスがあり、同時にその逆のアクセスも起こると、インタロックバスはスプリットバスからのアクセスに応答できず、デッドロックが発生する。これを回避する手段として、インタロックバスをリトライし、スプリットバスからのアクセスを先に実行する方法が知られている(例えば、特許文献1〜4など)。
特開2001−060181号公報 特開平10−055341号公報 特開平09−212469号公報 特開平09−204409号公報
しかしながら、インタロックバスがリトライをサポートしないバスである場合、従来技術を適用することができない。また、スプリットバスがアウトオブオーダ転送をサポートするバスであっても、スプリットバスに接続されるデバイスやIPコアは、保留中のアウトバウンドのアクセス要求が一定数を超えた状態では、インバウンドのリード要求に対して応答(リードデータ)を返せない場合がある。
そこで本発明の目的は、リトライ不可能なインタロックバスとスプリットバスを接続するブリッジ回路において、バス競合時のデッドロックを回避するバスシステムを提供することである。
本願の請求項1に係る発明は、スプリットバスと第1のインタロックバスを接続するブリッジ回路を備えたバスシステムであって、第1のブリッジ回路と、第2のブリッジ回路と、を備え、前記第1のブリッジ回路は、前記スプリットバスの第1のチャネルと前記第1のインタロックバスを接続し、前記第2のブリッジ回路は、前記スプリットバスの第2のチャネルと前記第1のインタロックバスを接続し、前記スプリットバス側から前記第1のインタロックバス側へのアクセスは、前記第1のチャネルを通して、前記第1のブリッジ回路で処理し、前記第1のインタロックバス側から前記スプリットバス側へのアクセスは、前記第2のチャネルを通して、前記第2のブリッジ回路で処理する、ことを特徴とするインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステムである。
本願の請求項2に係る発明は、前記第1のブリッジ回路は、前記スプリットバス側からのアクセス要求を受信するバッファを備え、前記第1のインタロックバスは、前記第1のインタロックバスに接続された各バスマスタのバス使用権を調停する第1の調停回路を備え、前記第1の調停回路は、前記バッファが保持しているアクセス要求の数に応じて、前記第1のブリッジ回路を除く前記第1のインタロックバスの各バスマスタのバス使用権を制限する、ことを特徴とする請求項1に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステムである。
本願の請求項3に係る発明は、前記第1のインタロックバスのバスマスタの少なくとも1つは、前記第1のインタロックバスと第2のインタロックバスを接続する第3のブリッジ回路であって、前記第2のインタロックバスは、前記第2のインタロックバスの各バスマスタのバス使用権を調停する第2の調停回路を備え、前期第3のブリッジ回路は、前記第1のインタロックバスから前記第2のインタロックバスへのアクセスと、前記第2のインタロックバスから前記第1のインタロックバスへのアクセスを処理し、前記第2の調停回路は、前記バッファが保持しているアクセス要求の数に応じて、前記第3のブリッジ回路を除く前記第2のインタロックバスの各バスマスタのバス使用権を制限する、ことを特徴とする請求項2に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステムである。
本願の請求項4に係る発明は、前記第1の調停回路は、前記バッファが保持しているアクセス要求の数が第1の閾値を超えた場合に、前記第1のブリッジ回路を除く前記第1のインタロックバスの各バスマスタのバス使用権を制限し、前記バッファが保持しているアクセス要求の数が第2の閾値を下回った場合に、前記第1のインタロックバスの使用制限を解除し、前記第2の調停回路は、前記バッファが保持しているアクセス要求の数が、第3の閾値を超えた場合に、前記第2のブリッジ回路を除く前記第2のインタロックバスの各バスマスタのバス使用権を制限し、前記バッファが保持しているアクセス要求の数が第4の閾値を下回った場合に、前記第2のインタロックバスの使用制限を解除し、前記第2の閾値は前記第1の閾値以下であり、前記第4の閾値は前記第3の閾値以下である、ことを特徴とする請求項3に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステムである。
本発明の請求項1に係る発明によれば、リトライ不可能なインタロックバスとスプリットバスを接続するブリッジ回路において、バス競合時のデッドロックを回避することができる。
また、本発明の請求項2に係る発明によれば、バッファが保持しているアクセス要求の数に応じて第1のインタロックバスを調停することで、インタロックバスとスプリットバスの競合時のデッドロックを回避しつつ、バッファにたまったスプリットバス側からインタロックバスへのアクセス要求が第1のインタロックバス上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
更に、本発明の請求項3に係る発明によれば、第1のインタロックバスがさらに別の第2のインタロックバスと接続されている場合、第2の調停回路が第2のインタロックバスから第1のインタロックバスへのアクセスを制限することで、第1のインタロックバスの負荷を減らし、バッファにたまったスプリットバス側から第1のインタロックバス側へのアクセス要求が第1のインタロックバス上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
そして、本発明の請求項4に係る発明によれば、第1・第3の閾値を大きくすることで調停への介入を最小限に抑えつつ、第2・第4の閾値を小さくすることで、バッファにたまったスプリットバス側からインタロックバス側へのアクセス要求が第1のインタロックバス上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
本発明の実施の形態におけるバスシステムの回路構成を示す図である。 本発明の別の実施形態におけるバスシステムの第1の回路構成を示す図である。 本発明の別の実施形態におけるバスシステムの第2の回路構成を示す図である。
以下、本発明の実施の形態を図面と共に説明する。
<第1の実施形態>
本発明の第1の実施形態として、内部バスがインタロックバスで構成されたデバイスを、プリント基板上のスプリットバスでCPUなどの対向デバイスと接続するシステムにおいて、デバイス内部のインタロックバスにインタロックバスとスプリットバスをブリッジする2つのブリッジ回路を設けた構成を示す。
図1は、本発明の一実施形態におけるバスシステムの回路構成を示す図である。
本実施形態のバスシステム1は、内部バスがインタロックバス20で構成されたデバイス10をプリント基板上のスプリットバス50によりCPUコア31,DMAC32などを備えた対向デバイス30と接続して構成されており、デバイス10内のインタロックバス20には、該インタロックバス20とスプリットバス50とを接続する2つのブリッジ回路11,12が設けられている。
第1のブリッジ回路11は、スプリットバス50の1つのチャネル(第1のチャネル)を介して対向デバイス30に接続し、第2のブリッジ回路12は、スプリットバスの別のチャネル(第2のチャネル)を介して対向デバイス30に接続する。
そして、スプリットバス50側からインタロックバス20側へのアクセスは、第1のチャネルを通して、第1のブリッジ回路11で処理し、インタロックバス20側からスプリットバス50側へのアクセスは、第2のチャネルを通して、第2のブリッジ回路12で処理する。
ここで、仮にブリッジ回路が対向デバイス30とスプリットバス50の1つのチャネルでしか接続されていない場合を考えると、インタロックバス20側からスプリットバス50側へのリード要求(または完了を保証するライト要求)が発生しているときに、スプリットバス50側からインタロックバス20側へのアクセス要求が頻発し、例えばスプリットバス50の未完了トランザクション数(アウトスタンディング数)の上限に達した場合や、対向デバイス30の送信バッファとブリッジ回路の受信バッファが埋まって空きがなくなった場合などに、スプリットバス50側からインタロックバス20側へのリード応答(またはライト完了通知)を返すことが出来なくなる。インタロックバス20側からのリード(または完了を保証するライト)が完了しないと、スプリットバス50側からのアクセス要求がインタロックバス20に出ることができないため、バスのデッドロックが生じる。
図1に示したバスシステム1の回路構成では、インタロックバス20に2つのブリッジ回路11,12設け、対向デバイス30とスプリットバス50を2つのチャネルで接続し、スプリットバス50側からインタロックバス20側へのアクセスと、インタロックバス20側からスプリットバス50側へのアクセスを分離してそれぞれのブリッジ回路11,12で処理することにより、バス競合時のデッドロックを確実に回避することが出来る。
ここでは、ブリッジ回路11,12と対向デバイス30をスプリットバス50の2つのチャネルで接続した例を示しているが、スプリットバス50側からインタロックバス20側へのアクセス、およびインタロックバス20側からスプリットバス50側へのアクセスを接続するチャネルはそれぞれ複数あってもよい。例えば、スプリットバス50側からインタロックバス20側へのアクセスを2つのチャネルで接続して、これに対してインタロックバス20側のブリッジ回路を2つ用意して処理することが考えられる。この場合、チャネルの使い分けとして、アクセスの優先度で使用するチャネルを分ける使い方が考えられる。
また図1では、内部バス20がインタロックバスとして構成されたデバイス10をプリント基板上のスプリットバス50で対向デバイス30と接続する例を示しているが、デバイス10と対向デバイス30とが分かれて構成されている必要はなく、一つのデバイスの内部が多段のバスで構成され、インタロックバスとスプリットバスと2つのブリッジ回路を含むバスシステム全体が1つのデバイス内に実装されているような場合も含まれる。
また、上記の例ではデバイス内部バスがインタロックバスでデバイス間バスがスプリットバスであったが、その逆に、デバイス内部バスがスプリットバスでデバイス間バスがインタロックバスであってもよい。また、インタロックバスとスプリットバスがともにデバイス間バスで、ブリッジ回路のみがデバイス内部に実装される構造であってもよい。
更に、ここでは対向デバイス30と物理的に2つのチャネルで接続する場合を示しているが、対向デバイス30が複数の論理チャネルを1つの物理チャネルで実現する機能をサポートしている場合には、この機能を使用することも出来る。このような機能の例としては、PCI Expressのバーチャルチャネルがある。PCI Expressは規格上は最大8チャネルのバーチャルチャネルをサポートし、実デバイスとしても複数のバーチャルチャネルを備える製品が存在している。この場合、物理的な接続は1つのチャネルとしつつ、複数のバーチャルチャネルを用いることにより、上記同様にバスの競合時のデッドロックを回避できる。
<第2の実施形態>
本実施形態では、第1の実施形態に対して調停回路を加えた構成を示す。本実施形態におけるバスシステムの基本的構成は、第1の実施形態と同様に図1に示した構成を備えている。
本実施形態において、第1のブリッジ回路11は、前記スプリットバス50側からのアクセス要求を受信するバッファを備えた構成とする。該バッファは、図1に示すように第1のブリッジ回路11の構成要素であるPCIe IPコア13のRXバッファを用いてもよいし、第1のブリッジ回路11内に別のバッファとして設けてもよい。
また、第1のインタロックバス20は、第1のインタロックバス20に接続された各バスマスタのバス使用権を調停する第1の調停回路17を備えた構成とする。そして、第1の調停回路17は、バッファが保持しているアクセス要求の数に応じて、第1のブリッジ回路11を除く第1のインタロックバス20の各バスマスタのバス使用権を制限する。
本実施形態の構成によれば、バッファが保持しているアクセス要求の数に応じてインタロックバス20を第1の調停回路17が調停することで、インタロックバス20とスプリットバス50の競合時のデッドロックを回避しつつ、バッファにたまったスプリットバス50側からインタロックバス20へのアクセス要求がインタロックバス20上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
<第3の実施形態>
本実施形態では、第2の実施形態に対して更に別のインタロックバスと調停回路を加えた構成を示す。本実施形態におけるバスシステムの基本的構成は、第1の実施形態と同様に図1に示した構成を備えている。
第1のインタロックバス20のバスマスタの少なくとも1つが、第1のインタロックバス20と別のインタロックバス51を接続する第3のブリッジ回路18である場合において、第2のインタロックバス51は、第2のインタロックバス51の各バスマスタのバス使用権を調停する第2の調停回路19を備えた構成とする。
第3のブリッジ回路18は、第1のインタロックバス20から第2のインタロックバス51へのアクセスと、第2のインタロックバス51から第1のインタロックバス20へのアクセスを処理し、第2の調停回路19は、バッファが保持しているアクセス要求の数に応じて、第3のブリッジ回路18を除く第2のインタロックバス51の各バスマスタのバス使用権を制限する。
本実施形態の構成によれば、第1のインタロックバス20がさらに別のインタロックバス51と接続されている場合、第2の調停回路19が第2のインタロックバス51から第1のインタロックバス20へのアクセスを制限することで、第1のインタロックバス20の負荷を減らし、バッファにたまったスプリットバス50側から第1のインタロックバス20側へのアクセス要求が第1のインタロックバス20上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
<第4の実施形態>
本実施形態では、第2,3の実施形態における調停回路のより詳細な動作を示す。本実施形態におけるバスシステムの基本的構成は、第1の実施形態と同様に図1に示した構成を備えている。
本実施形態のバスシステム1では、第1の調停回路17は、バッファが保持しているアクセス要求の数が第1の閾値を超えた場合に、第1のブリッジ回路11を除く第1のインタロックバス20の各バスマスタのバス使用権を制限し、バッファが保持しているアクセス要求の数が第1の閾値を下回った場合に、第1のインタロックバス20の使用制限を解除するように制御する。
また、第2の調停回路19は、バッファが保持しているアクセス要求の数が、第3の閾値を超えた場合に、第3のブリッジ回路18を除く第2のインタロックバス51の各バスマスタのバス使用権を制限し、バッファが保持しているアクセス要求の数が第4の閾値を下回った場合に、第2のインタロックバスの使用制限を解除する。
ここで、第2の閾値は、第1の閾値以下に設定する。閾値の値としては、第1のブリッジ回路11のバッファ数にもよるが、例えばバッファ数がN=128の場合には、第1の閾値はP=32(<N)で、第2の閾値はQ=2(≦P)などとすればよい。
また、同様に第4の閾値は、第3の閾値以下に設定する。閾値の値としては、例えば第3の閾値はU=32(<N)で、第4の閾値はV=2(≦U)などとすればよい。
第1の調停回路17または第2の調停回路19の何れか一方にのみ、このような設定を適用することも出来るし、両方に適用してもよい。
本実施形態の構成によれば、第1・第3の閾値を大きくすることで調停への介入を最小限に抑えつつ、第2・第4の閾値を小さくすることで、バッファにたまったスプリットバス50側からインタロックバス20側へのアクセス要求が第1のインタロックバス20上で優先的に処理され、アクセス要求が過剰にバッファにたまることを防ぐことができる。
<その他の実施形態>
これまで説明してきた第1〜4の実施形態以外にも、次のような別の実施形態によっても、本発明の課題を解決することが出来る。
図2は、本実施形態におけるバスシステムの簡易の回路構成図である。図2において、図1の回路構成図に対応する構成については同一の符号を付与している。
本実施形態では、スプリットバス50と第1のインタロックバス20をブリッジするブリッジ回路11に、インタロックバス20側からスプリットバス50側へのリード要求に対するリード応答とインタロックバス20側からスプリットバス50側へのリード要求が発生していない場合にスプリットバス50側から発生するアクセス要求(ターゲットアドレスやライトデータ)を処理する第1の経路と、インタロックバス20側からスプリットバス50側へのリード要求が発生している場合にスプリットバス50側から発生するアクセス要求を処理する第2の経路を設け、第1の経路と第2の経路をセレクタ回路21により選択される構成としている。
また、インタロックバス20側からスプリットバス50側へのリード要求が発生している場合にスプリットバス50側から発生するアクセス要求を退避するバッファを第2の経路に設ける。バッファのサイズNとしては、1回のリード応答待ちでバッファに退避されるアクセス要求数の最大数に対して2倍以上とすることが望ましく、システム構成にも依存するが、例えば128とする。
本実施形態のバスシステム1において、インタロックバス20からスプリットバス50へのリード要求があった場合、スプリットバス50からの応答(リードデータ)を受信するまで、スプリットバス50から受け取ったアクセス要求を第2の経路上に設けられたバッファに退避する。スプリットバス50側のデバイスまたはIPコアから見ると、アクセス要求がバッファに退避されると、そのアクセス要求はスプリットバス50上では完了したことになり、保留状態とはならない。このため、スプリットバス50側のデバイスまたはIPコアは、リード要求を受けると応答(リードデータ)を返すことができる。ブリッジ回路11は、スプリットバスからの応答を受信して、これをインタロックバス20に返し、インタロックバス20が解放されてから、バッファに退避していたスプリットバス50からのアクセス要求に従ってインタロックバス20にアクセスする。
また、図2に示すように、インタロックバス20に接続されている複数のバスマスタからのバス使用要求を調停する第1の調停回路17を設ける。第1の調停回路17は、バッファに退避されたスプリットバス50側からのアクセス要求の数に応じて、インタロックバス20側からのアクセスを制限し、インタロックバス20側へのアクセスを優先するように、インタロックバス20の調停を行う。
更に、図3に示すように、第1のインタロックバス20とデバイス外部の第2のインタロックバス51を接続する第3のブリッジ回路18が存在する構成において、第2のインタロックバス51の使用を調停する第2の調停回路19を設ける。第2の調停回路19は、バッファに退避されたスプリットバス50側からのアクセス要求の数に応じて、第2のインタロックバス51からの第1のインタロックバス20へのアクセスを制限し、第1のインタロックバス20の占有率を低減させるよう調停を行う。
このような構成を備えたバスシステム1では、第1の調停回路17は、ブリッジ回路11内の第2の経路上に設けられたバッファに退避されたアクセス要求の数が、予め定められた第1の閾値を超えた場合に、第1のブリッジ回路11を除く第1のインタロックバス20の各バスマスタのバス使用権を制限し、ブリッジ回路内の第2の経路上に設けられたバッファに退避されたアクセス要求の数が予め定められた第2の閾値よりも減少した場合には、第1のインタロックバス20の使用制限を解除する。
第2の閾値は、第1の閾値よりも小さく設定する。例えば、第1の閾値はP=32(<N)で、第2の閾値はQ=2(<P)とする。
同様に、第2の調停回路19は、ブリッジ回路11内の第2の経路上に設けられたバッファに退避されたアクセス要求の数が、予め定められた第3の閾値を超えた場合に、第3のブリッジ回路18を除く第2のインタロックバス51の各バスマスタのバス使用権を制限し、ブリッジ回路11内のバッファに退避されたアクセス要求の数が予め定められた第4の閾値よりも減少した場合には、第2のインタロックバス51の使用制限を解除する。
第4の閾値は、第3の閾値よりも小さく設定する。例えば、第3の閾値はU=32(<N)で、第4の閾値はV=2(<U)とする。
第1の調停回路17または第2の調停回路19の何れか一方にのみ、このような設定を適用することも出来るし、両方に適用してもよい。
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
1 バスシステム
10 デバイス
11 第1のブリッジ回路
12 第2のブリッジ回路
13,14 PCIe IPコア
15,16 IPコア
17 第1の調停回路
18 第3のブリッジ回路
19 第2の調停回路
20 第1のインタロックバス
21 セレクタ回路
30 対向デバイス
31 CPUコア
32 DMAC
33,34 PCIe IPコア
40 メモリ
50 スプリットバス
51 第2のインタロックバス

Claims (4)

  1. スプリットバスと第1のインタロックバスを接続するブリッジ回路を備えたバスシステムであって、
    第1のブリッジ回路と、
    第2のブリッジ回路と、
    を備え、
    前記第1のブリッジ回路は、前記スプリットバスの第1のチャネルと前記第1のインタロックバスを接続し、
    前記第2のブリッジ回路は、前記スプリットバスの第2のチャネルと前記第1のインタロックバスを接続し、
    前記スプリットバス側から前記第1のインタロックバス側へのアクセスは、前記第1のチャネルを通して、前記第1のブリッジ回路で処理し、
    前記第1のインタロックバス側から前記スプリットバス側へのアクセスは、前記第2のチャネルを通して、前記第2のブリッジ回路で処理する、
    ことを特徴とするインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム。
  2. 前記第1のブリッジ回路は、前記スプリットバス側からのアクセス要求を受信するバッファを備え、
    前記第1のインタロックバスは、前記第1のインタロックバスに接続された各バスマスタのバス使用権を調停する第1の調停回路を備え、
    前記第1の調停回路は、前記バッファが保持しているアクセス要求の数に応じて、前記第1のブリッジ回路を除く前記第1のインタロックバスの各バスマスタのバス使用権を制限する、
    ことを特徴とする請求項1に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム。
  3. 前記第1のインタロックバスのバスマスタの少なくとも1つは、前記第1のインタロックバスと第2のインタロックバスを接続する第3のブリッジ回路であって、
    前記第2のインタロックバスは、前記第2のインタロックバスの各バスマスタのバス使用権を調停する第2の調停回路を備え、
    前期第3のブリッジ回路は、前記第1のインタロックバスから前記第2のインタロックバスへのアクセスと、前記第2のインタロックバスから前記第1のインタロックバスへのアクセスを処理し、
    前記第2の調停回路は、前記バッファが保持しているアクセス要求の数に応じて、前記第3のブリッジ回路を除く前記第2のインタロックバスの各バスマスタのバス使用権を制限する、
    ことを特徴とする請求項2に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム。
  4. 前記第1の調停回路は、前記バッファが保持しているアクセス要求の数が第1の閾値を超えた場合に、前記第1のブリッジ回路を除く前記第1のインタロックバスの各バスマスタのバス使用権を制限し、前記バッファが保持しているアクセス要求の数が第2の閾値を下回った場合に、前記第1のインタロックバスの使用制限を解除し、
    前記第2の調停回路は、前記バッファが保持しているアクセス要求の数が、第3の閾値を超えた場合に、前記第2のブリッジ回路を除く前記第2のインタロックバスの各バスマスタのバス使用権を制限し、前記バッファが保持しているアクセス要求の数が第4の閾値を下回った場合に、前記第2のインタロックバスの使用制限を解除し、
    前記第2の閾値は前記第1の閾値以下であり、前記第4の閾値は前記第3の閾値以下である、
    ことを特徴とする請求項3に記載のインタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム。
JP2015076509A 2015-04-03 2015-04-03 インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム Active JP6193910B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015076509A JP6193910B2 (ja) 2015-04-03 2015-04-03 インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム
DE102016105694.4A DE102016105694A1 (de) 2015-04-03 2016-03-29 Bussystem mit Brückenschaltung zum Verbinden eines Interlock-Busses und eines geteilten Busses
US15/084,560 US20160292093A1 (en) 2015-04-03 2016-03-30 Bus system including bridge circuit for connecting interlock bus and split bus
CN201610207178.2A CN106055501B (zh) 2015-04-03 2016-04-05 具有连接联锁总线与分支总线的桥式电路的总线系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015076509A JP6193910B2 (ja) 2015-04-03 2015-04-03 インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム

Publications (2)

Publication Number Publication Date
JP2016197316A true JP2016197316A (ja) 2016-11-24
JP6193910B2 JP6193910B2 (ja) 2017-09-06

Family

ID=56937534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015076509A Active JP6193910B2 (ja) 2015-04-03 2015-04-03 インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム

Country Status (4)

Country Link
US (1) US20160292093A1 (ja)
JP (1) JP6193910B2 (ja)
CN (1) CN106055501B (ja)
DE (1) DE102016105694A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228503B (zh) * 2016-12-15 2020-11-10 深圳市中兴微电子技术有限公司 一种防止总线死锁的方法及装置
US20190020586A1 (en) * 2017-07-14 2019-01-17 Qualcomm Incorporated Selective insertion of a deadlock recovery buffer in a bus interconnect for deadlock recovery

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05314061A (ja) * 1992-04-23 1993-11-26 Fujitsu Ltd バス・インタフェース制御方式
JPH10187595A (ja) * 1996-12-26 1998-07-21 Nec Eng Ltd バスブリッジ
JP2012043171A (ja) * 2010-08-19 2012-03-01 Sony Corp バスシステムおよびバスシステムと接続機器とを接続するブリッジ回路

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3597621B2 (ja) 1996-01-26 2004-12-08 富士通株式会社 ロック転送制御方式
JPH09212469A (ja) 1996-02-01 1997-08-15 Fujitsu Ltd ロック転送制御回路
JP3626292B2 (ja) 1996-08-12 2005-03-02 富士通株式会社 バスインタフェース制御方式
JP3721283B2 (ja) * 1999-06-03 2005-11-30 株式会社日立製作所 主記憶共有型マルチプロセッサシステム
JP4164786B2 (ja) 1999-06-18 2008-10-15 富士通株式会社 プロセッサシステムにおけるバス競合回避方法
US6718422B1 (en) * 1999-07-29 2004-04-06 International Business Machines Corporation Enhanced bus arbiter utilizing variable priority and fairness
US6976108B2 (en) * 2001-01-31 2005-12-13 Samsung Electronics Co., Ltd. System on a chip having a system bus, an external bus, and a bus arbiter with programmable priorities for both buses, software, and method for assigning programmable priorities
US6963947B2 (en) * 2001-05-08 2005-11-08 Tao Logic Systems Llc Driver supporting bridge method and apparatus
JP4182948B2 (ja) * 2004-12-21 2008-11-19 日本電気株式会社 フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法
US20080172510A1 (en) * 2007-01-16 2008-07-17 Wei-Jen Chen Parallel bus architecture and related method for interconnecting sub-systems utilizing a parallel bus
US20080276022A1 (en) * 2007-05-04 2008-11-06 International Business Machines Corporation Method to Resolve Deadlock in a Bus Architecture Comprising Two Single-Envelope Buses Coupled Via a Bus Bridge and Running Asynchronously
EP2729863B1 (en) * 2011-07-06 2017-09-06 Telefonaktiebolaget LM Ericsson (publ) A method for controlling transaction exchanges between two integrated circuits
US9231870B2 (en) * 2011-12-22 2016-01-05 International Business Machines Corporation Flexible and scalable data link layer flow control for network fabrics

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05314061A (ja) * 1992-04-23 1993-11-26 Fujitsu Ltd バス・インタフェース制御方式
JPH10187595A (ja) * 1996-12-26 1998-07-21 Nec Eng Ltd バスブリッジ
JP2012043171A (ja) * 2010-08-19 2012-03-01 Sony Corp バスシステムおよびバスシステムと接続機器とを接続するブリッジ回路

Also Published As

Publication number Publication date
CN106055501A (zh) 2016-10-26
DE102016105694A1 (de) 2016-10-06
US20160292093A1 (en) 2016-10-06
CN106055501B (zh) 2018-10-23
JP6193910B2 (ja) 2017-09-06

Similar Documents

Publication Publication Date Title
EP3167374B1 (en) Bridging inter-bus communications
US6694397B2 (en) Request queuing system for a PCI bridge
EP0428330A2 (en) Computer interface circuit
CN105988968B (zh) 半导体装置
US20130046933A1 (en) Storing data in any of a plurality of buffers in a memory controller
EP2709020B1 (en) System and method to arbitrate access to memory
KR100480605B1 (ko) 네트워크 제어기의 송신부 버퍼 및 수신부 버퍼를제어하는 방법 및 네트워크 제어기
JP6193910B2 (ja) インタロックバスとスプリットバスを接続するブリッジ回路を備えたバスシステム
US20120124260A1 (en) CLOSED LOOP DYNAMIC INTERCONNECT BUS ALLOCATION METHOD AND ARCHITECTURE FOR A MULTI LAYER SoC
CN111679992A (zh) 用于管理对共享总线访问的方法和对应的电子设备
US6480917B1 (en) Device arbitration including peer-to-peer access arbitration
US20110113172A1 (en) Utilization-enhanced shared bus system and bus arbitration method
JP2004078508A (ja) バス調停回路、バス調停方法およびそのプログラム
JP4097847B2 (ja) バス・ブリッジのアービトレーション方法
KR100605867B1 (ko) 동적 우선순위 조정기능을 갖는 버스 중재기와 버스 중재방법
JP2007108858A (ja) ピン共有装置およびピン共有方法
US10983927B2 (en) Electronic device for recovering from buffer overrun in a bus system
JPH11203253A (ja) 共有資源排他アクセス制御方式
TW475118B (en) Bus system for information processing device
CN115762596A (zh) 一种mcu的存取记忆体数字电路架构
US9032120B2 (en) Device and method for writing/reading a memory register shared by a plurality of peripherals
JP2006091982A (ja) オンチップバスシステム
JPH09231163A (ja) Ioブリッジ
JP2004062333A (ja) 画像処理装置
JP2007004824A (ja) バス・ブリッジのアビトレーション方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170328

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170526

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170810

R150 Certificate of patent or registration of utility model

Ref document number: 6193910

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150