JP2005284578A - バス装置 - Google Patents

バス装置 Download PDF

Info

Publication number
JP2005284578A
JP2005284578A JP2004095969A JP2004095969A JP2005284578A JP 2005284578 A JP2005284578 A JP 2005284578A JP 2004095969 A JP2004095969 A JP 2004095969A JP 2004095969 A JP2004095969 A JP 2004095969A JP 2005284578 A JP2005284578 A JP 2005284578A
Authority
JP
Japan
Prior art keywords
bus
data thread
request
response
thread
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.)
Pending
Application number
JP2004095969A
Other languages
English (en)
Inventor
Osamu Toyama
治 遠山
Takayuki Minegishi
孝行 峯岸
Kozo Ishida
耕三 石田
Midori Ono
みどり 小野
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
Priority to JP2004095969A priority Critical patent/JP2005284578A/ja
Publication of JP2005284578A publication Critical patent/JP2005284578A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 バスマスタの動作とは独立してバス転送を行うことができ、バスラインを効率良く利用するバス装置を得る。
【解決手段】 バス装置1として、複数のバスマスタ2m0〜2mXからのリクエストデータスレッドを同時に保持可能なリクエストキュー4と、そのリクエストキュー4に保持されたリクエストデータスレッドを選択してバスライン6より転送するリクエストデータスレッド選択装置5と、バスライン6を通じて転送されたリクエストデータスレッドに含まれるスレッドIDに応じたバススレーブにそのリクエストデータスレッドを出力するリクエストデータスレッド分配装置7とを備えた。
このように構成することによって、バスマスタ2m0〜2mXからのリクエストをリクエストデータスレッドという単位で扱うことが可能となり、バスマスタ2m0〜2mXの動作とは独立してバス転送を行うことができ、バスライン6を効率良く利用することができる。
【選択図】 図1

Description

この発明は、複数のマスタおよび複数のスレーブ間に接続され、それら複数のマスタおよび複数のスレーブ間相互のデータ転送を行うバス装置に関するものである。
従来から複数のマスタおよび複数のスレーブを相互接続する手段としてバスを用いるものが主流となっている。これは、実現が容易なためであるが、反面、複数のマスタから同時にバス使用要求が発生した場合に、一時に1つのバス使用要求しか受け付けられないため、バス使用要求の衝突が頻繁に起き、バス使用要求を受け付けられなかったマスタは、バス使用権が得られるまで処理を停止させなくてはならず、性能低下を引き起こすという課題があった。
この課題を解決する手段として、バスを分割(例えば、特許文献1参照)、あるいはバスを多重化(例えば、特許文献2参照)して、バス使用要求を分散させることによりバス使用要求の競合を軽減し、同時に無効なバスラインを減らし効率的な転送を可能とする手法が採られている。
特開平5−282242号公報 特開平10−177543号公報
従来のバス装置は以上のように構成されているので、分割されたバス、あるいは多重化されたバスのそれぞれにバス使用要求が分散することにより、バス使用要求の衝突が減り、バスを効率的に利用でき、システムの性能向上が可能となる。
しかしながら、分割されたバス、あるいは多重化されたバスが全て使用されるような状況下では、やはりバス使用要求の衝突が起こり、上記従来の課題同様、バス使用権が得られるまで処理を停止させなくてはならず、その結果、性能低下を引き起こしてしまうなどの課題があった。
この発明は上記のような課題を解決するためになされたもので、マスタあるいはスレーブの動作とは独立してバス転送を行うことができ、バスラインを効率良く利用するバス装置を得ることを目的とする。
この発明に係るバス装置は、複数のマスタからのスレッドIDを含むリクエストおよびデータの組で構成されるリクエストデータスレッドを同時に保持可能なリクエストキューと、リクエストキューに保持されたリクエストデータスレッドを選択してバスラインより転送するリクエストデータスレッド選択装置と、バスラインを通じて転送されたリクエストデータスレッドのリクエストに含まれるスレッドIDに応じたスレーブにそのリクエストデータスレッドを出力するリクエストデータスレッド分配装置とを備えたものである。
この発明によれば、マスタからのリクエストをリクエストデータスレッドという単位で扱うことが可能となり、マスタの動作とは独立してバス転送を行うことができ、バスラインを効率良く利用することができる効果がある。
実施の形態1.
図1はこの発明の実施の形態1によるバス装置を示すブロック図であり、図において、バス装置1は、複数のバスマスタ(マスタ)2m0〜2mX(X>0)と、複数のバススレーブ(スレーブ)3s0〜3sY(Y>0)とが相互に接続されて、それら複数のバスマスタ2m0〜2mXおよび複数のバススレーブ3s0〜3sY間相互のデータ転送を行うものである。なお、バスマスタ2m0〜2mXとしては、コンピュータのような装置あるいは特定用途向けのH/W IP等が適用され、バススレーブ3s0〜3sYとしては、SDRAMのような記憶装置が適用されるものである。
バス装置1において、リクエストキュー4は、バスマスタ2m0〜2mXからのリクエストデータスレッドを同時に保持可能に構成され、リクエストデータスレッド選択装置5は、リクエストキュー4に保持されたリクエストデータスレッドを任意に設定可能な選択アルゴリズムに基づいて選択してバスライン6を通じて転送し、リクエストデータスレッド分配装置7は、バスライン6を通じて転送されたリクエストデータスレッドに含まれるアドレスに応じたバススレーブにそのリクエストデータスレッドを出力するものである。
また、レスポンスキュー8は、バススレーブ3s0〜3sYからのレスポンスデータスレッドを同時に保持可能に構成され、レスポンスデータスレッド選択装置9は、レスポンスキュー8に保持されたレスポンスデータスレッドを任意に設定可能な選択アルゴリズムに基づいて選択してバスライン10を通じて転送し、レスポンスデータスレッド分配装置11は、バスライン10を通じて転送されたレスポンスデータスレッドのマスタIDに応じたバスマスタにそのレスポンスデータスレッドを出力するものである。
図2はリクエストデータスレッドの詳細を示す説明図である。
図3はリクエストキューの詳細を示すブロック図であり、リクエストキュー4において、排他制御付き書き込み装置21は、リクエストデータスレッドが書き込まれていない任意のレジスタ22に対して、リクエストデータスレッドを複数同時に書き込み可能に構成され、セレクタ23は、リクエストデータスレッド選択装置5からの選択信号に応じてレジスタ22に保持されたリクエストデータスレッドを選択し、バスライン6を通じて転送するものである。
図4はリクエストデータスレッド選択装置の選択アルゴリズムを示すフローチャートである。
図5はリクエストデータスレッド分配装置の詳細を示すブロック図であり、リクエストデータスレッド分配装置7において、FIFO31は、バスライン6を通じて転送されたリクエストデータスレッドを一時保持し、バススレーブアドレスデコーダ32は、FIFO31から順次出力されるリクエストデータスレッドのアドレスをデコードして選択信号を生成し、リクエストデータスレッドセレクタ33は、選択信号に応じてFIFO31から順次出力されるリクエストデータスレッドをバススレーブに出力するものである。
図6はレスポンスデータスレッドの詳細を示す説明図である。
図7はレスポンスキューの詳細を示すブロック図であり、レスポンスキュー8において、排他制御付き書き込み装置41は、レスポンスデータスレッドが書き込まれていない任意のレジスタ42に対して、レスポンスデータスレッドを複数同時に書き込み可能に構成され、セレクタ43は、レスポンスデータスレッド選択装置9からの選択信号に応じてレジスタ42に保持されたレスポンスデータスレッドを選択し、バスライン10を通じて転送するものである。
図8はレスポンスデータスレッド分配装置の詳細を示すブロック図であり、レスポンスデータスレッド分配装置11において、FIFO51は、バスライン10を通じて転送されたレスポンスデータスレッドを一時保持し、マスタIDデコーダ52は、FIFO51から順次出力されるレスポンスデータスレッドのマスタIDをデコードして選択信号を生成し、レスポンスデータスレッドセレクタ53は、選択信号に応じてFIFO51から順次出力されるレスポンスデータスレッドをバススマスタに出力するものである。
次に動作について説明する。
図1において、バスマスタ2m0〜2mXからバススレーブ3s0〜3sYに対し、書き込みないし読み出し要求を発行する場合には、バスマスタ2m0〜2mXからバス装置1にリクエストデータスレッドを発行する。図2に示すように、リクエストデータスレッドは、リクエスト、制御信号およびデータを組として構成されるものである。例えば、リクエストとしては、要求を示すリクエスト、発行元のバスマスタの識別を示すマスタID、宛先のバススレーブの識別を示すスレッドID、制御信号として、読み出しまたは書き込み要求を示すR/W、宛先のバススレーブのアドレスを示すアドレス、データとして、バススレーブに書き込むデータで構成され,全体でMbitの幅を持つものとする。
バスマスタ2m0〜2mXからバス装置1に発行されたリクエストデータスレッドは、リクエストキュー4に一時的に保持される。図3に示すように、リクエストキュー4の排他制御付き書き込み装置21は、各Mbitで構成された複数のレジスタ22のうちのリクエストデータスレッドが書き込まれていない任意のレジスタに対して、入力されるリクエストデータスレッドを順次書き込む。ここで、排他制御付き書き込み装置21は、複数のリクエストデータスレッドが同時に入力された時でも、空いているレジスタに対して複数同時に書き込み可能にしたものであり、バスマスタ2m0〜2mXからの要求の全てを毎バスサイクル受け付けることが可能なため、バスマスタ2m0〜2mXは、従来の技術のようにリクエストバス使用権を得るためのサイクルを必要としない。
リクエストキュー4に保持されたリクエストデータスレッドは、リクエストデータスレッド選択装置5からの選択信号に応じて選択され、バスライン6を通じてリクエストデータスレッド分配装置7に転送される。この時、リクエストデータスレッド選択装置5は、バスライン6のバス幅以下の範囲で1つ以上のリクエストデータスレッドを組み合わせ、バスライン6を通じてリクエストデータスレッド分配装置7に転送する。
これは即ち、例えば、バスライン6のバス幅がNbit(N>0)、バスマスタ2m0〜2mXからのリクエストデータスレッドがMbitである場合、リクエストデータスレッド選択装置5が同時に選択可能な最大リクエストデータスレッド数はN/Mとなり、N/M個のリクエストデータスレッドが全て、例えば、バスマスタ2m0から発行されたものであれば、バスマスタ2m0はバスライン6をNbit分使用することになるし、選択されたリクエストデータスレッドのうちの一つがバスマスタ2m0、またある一つがバスマスタ2m1より発行されたものであるならば、バスマスタ2m0、バスマスタ2m1は、それぞれバスライン6をMbitずつ使用して転送したこととなる。
なお、上記では説明を分かりやすくするために、リクエストデータスレッドのビット幅を全て同じビット幅M、且つバス幅Nをリクエストデータスレッドのビット幅Mの整数倍としたが、X個の各バスマスタ毎に異なるビット幅Mi(Mi>0)のリクエストデータスレッドを定義しても良く、この場合、リクエストデータスレッド選択装置5は、バスライン6のバス幅N以下の範囲で、異なるあるいは同一のバスマスタからのリクエストデータスレッドを(N≧ΣMi,0≦i≦X)を満たすように組み合わせ、バスライン6を通じて転送するようにすれば良い。
また、リクエストデータスレッド選択装置5は、リクエストキュー4に保持されたリクエストデータスレッドを任意に設定可能な選択アルゴリズムに基づいて選択するものである。図4にその一例を示す。
図4において、まず、レイテンシ(リクエストデータスレッドがリクエストキュー4に保持されてからどの程度の時間が経過したか)の閾値を設定し、その閾値を越えたリクエストデータスレッドを優先する(ステップST1)。次に、ステップST1の条件が満たされない場合には、リクエストデタスレッドにバースト転送コマンドが含まれるものを優先する(ステップST2)。次に、ステップST2の条件が満たされない場合には、データ量(リクエストキュー4に保持されているリクエストデータスレッドの数)の閾値をバスマスタ毎に設定し、その閾値を越えたバスマスタが発行したリクエストデータスレッドを優先する(ステップST3)。次に、ステップST3の条件が満たされない場合には、データ量(リクエストキュー4に保持されているリクエストデータスレッドの数)が最も多いバスマスタのリクエストデータスレッドを優先する(ステップST4)。さらに、リクエストキュー4にリクエストデータスレッドが保持されていなければ、処理を終了する(ステップST5)。
これらステップST1からステップST4の条件の優先順位は任意に設定可能である。例えば、ステップST3の条件を最も高い優先順位としたり、ステップST2の条件を最も高い優先順位として設定を変更しても良い。
ステップST1からステップST4において、同一条件を満たすリクエストデータスレッドが複数存在する場合には(ステップST6)、予め設定された固定の優先順位により選択を行い(ステップST7)、選択を完了する(ステップST8)。
リクエストデータスレッド分配装置7は、図5に示すように、バスライン6から転送されたリクエストデータスレッドをFIFO31に一時保持し、FIFO31より順次出力されるリクエストデータスレッドの制御信号に含まれるアドレスをバススレーブアドレスデコーダ32によりデコードして選択信号を生成し、選択信号を入力とするリクエストデータスレッドセレクタ33により、リクエストデータスレッド内のスレッドIDに応じたバススレーブの該当するアドレスにリクエストデータスレッドを出力する。
この出力の際には、バススレーブ3s0〜3sYのBUSY信号を監視し、バススレーブがBUSYで無い場合に転送を行う。バススレーブがBUSYである場合は、リクエストデータスレッドはBUSYが解除されるまでリクエストデータスレッドセレクタ33内に保持される。また、一時保持するための装置としてFIFO31を例としたが、レジスタアレイ等のバッファ機能を持つ装置であれば良い。
バススレーブ3s0〜3sYは、リクエストデータスレッドを受け、リクエストデータスレッドの制御信号に含まれるR/Wに応じて、データを処理して、応答をレスポンスデータスレッドとしてレスポンスキュー8に転送する。図6に示すように、レスポンスデータスレッドは、レスポンスおよびデータを組として構成されるものである。例えば、レスポンスとしては、応答を示すレスポンス、宛先のバスマスタの識別を示すマスタID、発行元のバススレーブの識別を示すスレッドID、データとして、バスマスタからの要求が読み出しであった場合のバススレーブから読み出されるデータで構成され、全体でLbitの幅を持つものとする。
バススレーブ3s0〜3sYからバス装置1に発行されたレスポンスデータスレッドは、レスポンスキュー8に一時的に保持される。図7に示すように、レスポンスキュー8の排他制御付き書き込み装置41は、各Lbitで構成された複数のレジスタ42のうちのレスポンスデータスレッドが書き込まれていない任意のレジスタに対して、入力されるレスポンスデータスレッドを順次書き込む。ここで、排他制御付き書き込み装置41は、複数のレスポンスデータスレッドが同時に入力された時でも、空いているレジスタに対して複数同時に書き込み可能にしたものであり、バススレーブ3s0〜3sYからの応答の全てを毎バスサイクル受け付けることが可能なため、バススレーブ3s0〜3sYは、従来の技術のようにレスポンスバス使用権を得るためのサイクルを必要としない。
レスポンスキュー8に保持されたレスポンスデータスレッドは、レスポンスデータスレッド選択装置9からの選択信号に応じて選択され、バスライン10を通じてレスポンスデータスレッド分配装置11に転送される。この時、レスポンスデータスレッド選択装置9は、バスライン10のバス幅以下の範囲で1つ以上のレスポンスデータスレッドを組み合わせ、バスライン10を通じてレスポンスデータスレッド分配装置11に転送する。
これは即ち、例えば、バスライン10のバス幅がKbit(K>0)、バススレーブ3s0〜3sYからのレスポンスデータスレッドがLbitである場合、レスポンスデータスレッド選択装置9が同時に選択可能な最大レスポンスデータスレッド数はK/Lとなり、K/L個のレスポンスデータスレッドが全て、例えば、バススレーブ3s0から発行されたものであれば、バススレーブ3s0はバスライン10をKbit分使用することになるし、選択されたレスポンスデータスレッドのうちの一つがバススレーブ3s0、またある一つがバススレーブ3s1より発行されたものであるならば、バススレーブ3s0、バススレーブ3s1は、それぞれバスライン10をLbitずつ使用して転送したこととなる。
なお、上記では説明を分かりやすくするために、レスポンスデータスレッドのビット幅を全て同じビット幅L、且つバス幅Kをレスポンスデータスレッドのビット幅Lの整数倍としたが、Y個の各バススレーブ毎に異なるビット幅Lj(Lj>0)のレスポンスデータスレッドを定義しても良く、この場合、レスポンスデータスレッド選択装置9は、バスライン10のバス幅K以下の範囲で、異なるあるいは同一のバススレーブからのレスポンスデータスレッドを(K≧ΣLj,0≦j≦Y)を満たすように組み合わせ、バスライン10を通じて転送するようにすれば良い。
また、レスポンスデータスレッド選択装置9は、レスポンスキュー8に保持されたレスポンスデータスレッドを任意に設定可能な選択アルゴリズムに基づいて選択するものである。その一例としては図4についての説明においてリクエストをレスポンスに置換えたたものとなる。
レスポンスデータスレッド分配装置11は、図8に示すように、バスライン10から転送されたレスポンスデータスレッドをFIFO51に一時保持し、FIFO51より順次出力されるレスポンスデータスレッドのレスポンスに含まれるマスタIDをマスタIDデコーダ52によりデコードして選択信号を生成し、選択信号を入力とするレスポンスデータスレッドセレクタ53により、レスポンスデータスレッド内のマスタIDに応じたバスマスタにレスポンスデータスレッドを出力する。
この出力の際には、バスマスタ2m0〜2mXのBUSY信号を監視し、バスマスタがBUSYで無い場合に転送を行う。バスマスタがBUSYである場合は、レスポンスデータスレッドはBUSYが解除されるまでレスポンスデータスレッドセレクタ53内に保持される。また、一時保持するための装置としてFIFO51を例としたが、レジスタアレイ等のバッファ機能を持つ装置であれば良い。
以上のように、この実施の形態1によれば、バスマスタ2m0〜2mXからのリクエストをリクエストデータスレッドという単位で扱うことが可能となると共に、バススレーブ3s0〜3sYからのレスポンスをレスポンスデータスレッドという単位で扱うことが可能となり、バスマスタ2m0〜2mXあるいはバススレーブ3s0〜3sYの動作とは独立してバス転送を行うことができ、バスライン6,10を効率良く利用することができる。
また、リクエストデータスレッド選択装置5は、異なる、あるいは同一のバスマスタのリクエストデータスレッドをバスライン6に1つ以上同時転送可能にするので、バスライン6が広幅であっても、複数のリクエストデータスレッドを同時にバスライン6に投入できるため、バスマスタ2m0〜2mXの転送レートを動的に制御でき、バスライン6の利用率を高め、システムの性能を向上させることができる。
また、レスポンスデータスレッド選択装置9は、異なる、あるいは同一のバススレーブのレスポンスデータスレッドをバスライン10に1つ以上同時転送可能にするので、バスライン10が広幅であっても、複数のレスポンスデータスレッドを同時にバスライン10に投入できるため、バススレーブ3s0〜3sYの転送レートを動的に制御でき、バスライン10の利用率を高め、システムの性能を向上させることができる。
さらに、リクエストデータスレッド選択装置5は、リクエストキュー4内に保持されたリクエストデータスレッドを任意に設定可能な優先度に基づいて選択するので、リクエストキュー4内に保持されたリクエストデータスレッドのうちの保持時間を長く経過したものを優先的に選択したり、バースト転送コマンドが含まれるものを優先的に選択する等、効率的なリクエストの処理が可能となり、システムの性能を向上させることができる。
さらに、レスポンスデータスレッド選択装置9は、レスポンスキュー内に保持されたレスポンスデータスレッドを任意に設定可能な優先度に基づいて選択するので、レスポンスキュー8内に保持されたレスポンスデータスレッドのうちの保持時間を長く経過したものを優先的に選択したり、バースト転送コマンドが含まれるものを優先的に選択する等、効率的なレスポンスの処理が可能となり、システムの性能を向上させることができる。
さらに、リクエストキュー4は、リクエストデータスレッド選択装置5に選択されバスライン6に転送されるまで、リクエストデータスレッドを保持し続けるので、リクエストキュー4をバッファのように用いることで、バスライン6あるいはバススレーブ3s0〜3sYが処理しきれない分のバスマスタ2m0〜2mXからのリクエストを一時的にリクエストキュー4内に保持できるため、バスマスタ2m0〜2mXはバスライン6あるいはバススレーブ3s0〜3sYの応答を待たずに次の処理に移ることができる。この結果、効率的にバスマスタ2m0〜2mXが動作できるため、システム全体の処理効率を向上させることができる。
さらに、レスポンスキュー8は、レスポンスデータスレッド選択装置9に選択されバスライン10に転送されるまで、レスポンスデータスレッドを保持し続けるので、レスポンスキュー8をバッファのように用いることで、バスライン10あるいはバスマスタ2m0〜2mXが処理しきれない分のバススレーブ3s0〜3sYからのレスポンスを一時的にレスポンスキュー8内に保持できるため、バススレーブ3s0〜3sYはバスライン10あるいはバスマスタ2m0〜2mXの応答を待たずに次の処理に移ることができる。この結果、効率的にバススレーブ3s0〜3sYが動作できるため、システム全体の処理効率を向上させることができる。
この発明の実施の形態1によるバス装置を示すブロック図である。 リクエストデータスレッドの詳細を示す説明図である。 リクエストキューの詳細を示すブロック図である。 リクエストデータスレッド選択装置の選択アルゴリズムを示すフローチャートである。 リクエストデータスレッド分配装置の詳細を示すブロック図である。 レスポンスデータスレッドの詳細を示す説明図である。 レスポンスキューの詳細を示すブロック図である。 レスポンスデータスレッド分配装置の詳細を示すブロック図である。
符号の説明
1 バス装置、2m0〜2mX バスマスタ(マスタ)、3s0〜3sY バススレーブ(スレーブ)、4 リクエストキュー、5 リクエストデータスレッド選択装置、6,10 バスライン、7 リクエストデータスレッド分配装置、8 レスポンスキュー、9 レスポンスデータスレッド選択装置、11 レスポンスデータスレッド分配装置、21,41 排他制御付き書き込み装置、22,42 レジスタ、23,43 セレクタ、31,51 FIFO、32 バススレーブアドレスデコーダ、33 リクエストデータスレッドセレクタ、52 マスタIDデコーダ、53 レスポンスデータスレッドセレクタ。

Claims (8)

  1. 複数のマスタからのスレッドIDを含むリクエストおよびデータの組で構成されるリクエストデータスレッドを同時に保持可能なリクエストキューと、
    上記リクエストキューに保持されたリクエストデータスレッドを選択するリクエストデータスレッド選択装置と、
    上記リクエストデータスレッド選択装置により選択されたリクエストデータスレッドを転送するバスラインと、
    複数のスレーブのうちの上記バスラインを通じて転送されたリクエストデータスレッドのリクエストに含まれるスレッドIDに応じたスレーブにそのリクエストデータスレッドを出力するリクエストデータスレッド分配装置とを備えたバス装置。
  2. 複数のスレーブからのマスタIDを含むレスポンスおよびデータの組で構成されるレスポンスデータスレッドを同時に保持可能なレスポンスキューと、
    上記レスポンスキューに保持されたレスポンスデータスレッドを選択するレスポンスデータスレッド選択装置と、
    上記レスポンスデータスレッド選択装置により選択されたレスポンスデータスレッドを転送するバスラインと、
    複数のマスタのうちの上記バスラインを通じて転送されたレスポンスデータスレッドのレスポンスに含まれるマスタIDに応じたマスタにそのレスポンスデータスレッドを出力するレスポンスデータスレッド分配装置とを備えたバス装置。
  3. リクエストデータスレッド選択装置は、
    リクエストキュー内に1つ以上のリクエストデータスレッドが保持されている場合に、異なるX個のマスタのそれぞれのリクエストデータスレッドのビット幅をMi(Mi>0)、バス幅をN(NBit,N>0)とした時、バス幅以下の範囲で1つ以上のリクエストデータスレッドを選択可能(N≧ΣMi,0≦i≦X)とすることで、異なる、あるいは同一のマスタのリクエストデータスレッドをバスラインに1つ以上同時転送可能にすることを特徴とする請求項1記載のバス装置。
  4. レスポンスデータスレッド選択装置は、
    レスポンスキュー内に1つ以上のレスポンスデータスレッドが保持されている場合に、異なるY個のスレーブのそれぞれのレスポンスデータスレッドのビット幅をLj(Lj>0)、バス幅をK(KBit,K>0)とした時、バス幅以下の範囲で1つ以上のレスポンスデータスレッドを選択可能(K≧ΣLj,0≦j≦Y)とすることで、異なる、あるいは同一のスレーブのレスポンスデータスレッドをバスラインに1つ以上同時転送可能にすることを特徴とする請求項2記載のバス装置。
  5. リクエストデータスレッド選択装置は、
    リクエストキュー内に保持されたリクエストデータスレッドを任意に設定可能な優先度に基づいて選択することを特徴とする請求項1または請求項3記載のバス装置。
  6. レスポンスデータスレッド選択装置は、
    レスポンスキュー内に保持されたレスポンスデータスレッドを任意に設定可能な優先度に基づいて選択することを特徴とする請求項2または請求項4記載のバス装置。
  7. リクエストキューは、
    リクエストデータスレッド選択装置に選択されバスラインに転送されるまで、リクエストデータスレッドを保持し続けることを特徴とする請求項1、請求項3および請求項5のうちのいずれか1項記載のバス装置。
  8. レスポンスキューは、
    レスポンスデータスレッド選択装置に選択されバスラインに転送されるまで、レスポンスデータスレッドを保持し続けることを特徴とする請求項2、請求項4および請求項6のうちのいずれか1項記載のバス装置。
JP2004095969A 2004-03-29 2004-03-29 バス装置 Pending JP2005284578A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004095969A JP2005284578A (ja) 2004-03-29 2004-03-29 バス装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004095969A JP2005284578A (ja) 2004-03-29 2004-03-29 バス装置

Publications (1)

Publication Number Publication Date
JP2005284578A true JP2005284578A (ja) 2005-10-13

Family

ID=35182903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004095969A Pending JP2005284578A (ja) 2004-03-29 2004-03-29 バス装置

Country Status (1)

Country Link
JP (1) JP2005284578A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269555A (ja) * 2007-03-28 2008-11-06 Mitsubishi Electric Corp バス装置
JP2009009512A (ja) * 2007-06-29 2009-01-15 Nec Electronics Corp バスシステム
JP2009031932A (ja) * 2007-07-25 2009-02-12 Fujitsu Ltd 転送装置、転送装置を有する情報処理装置及び制御方法
JP2009169599A (ja) * 2008-01-15 2009-07-30 Mitsubishi Electric Corp バス装置
JP2009251652A (ja) * 2008-04-01 2009-10-29 Mitsubishi Electric Corp マルチコアシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0528103A (ja) * 1990-05-22 1993-02-05 Mitsubishi Electric Corp バス多重方式
JPH06139207A (ja) * 1992-10-30 1994-05-20 Fujitsu Ltd システムバス制御方式
JPH0844662A (ja) * 1994-07-26 1996-02-16 Fuji Xerox Co Ltd 情報処理装置
JP2002108804A (ja) * 2000-10-04 2002-04-12 Nec Eng Ltd データスイッチング装置
JP2003256350A (ja) * 2002-03-01 2003-09-12 Nec Electronics Corp バスシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0528103A (ja) * 1990-05-22 1993-02-05 Mitsubishi Electric Corp バス多重方式
JPH06139207A (ja) * 1992-10-30 1994-05-20 Fujitsu Ltd システムバス制御方式
JPH0844662A (ja) * 1994-07-26 1996-02-16 Fuji Xerox Co Ltd 情報処理装置
JP2002108804A (ja) * 2000-10-04 2002-04-12 Nec Eng Ltd データスイッチング装置
JP2003256350A (ja) * 2002-03-01 2003-09-12 Nec Electronics Corp バスシステム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269555A (ja) * 2007-03-28 2008-11-06 Mitsubishi Electric Corp バス装置
JP2009009512A (ja) * 2007-06-29 2009-01-15 Nec Electronics Corp バスシステム
JP2009031932A (ja) * 2007-07-25 2009-02-12 Fujitsu Ltd 転送装置、転送装置を有する情報処理装置及び制御方法
JP2009169599A (ja) * 2008-01-15 2009-07-30 Mitsubishi Electric Corp バス装置
JP2009251652A (ja) * 2008-04-01 2009-10-29 Mitsubishi Electric Corp マルチコアシステム

Similar Documents

Publication Publication Date Title
JP4024875B2 (ja) 異なるデータ・レートで動作するネットワーク・ポートに関して、共用メモリへのアクセスを調停する方法および装置
JP4124491B2 (ja) 異なるデータ転送速度での共用メモリへのアクセスを制御するパケット・ルーティング・スイッチ
US20090138570A1 (en) Method for setting parameters and determining latency in a chained device system
TW200931250A (en) Memory controller for performing memory block initialization and copy
JP2006338538A (ja) ストリームプロセッサ
US7970959B2 (en) DMA transfer system using virtual channels
US20100017544A1 (en) Direct memory access controller and data transmitting method of direct memory access channel
US20070156937A1 (en) Data transfer in multiprocessor system
JP2012521588A (ja) 回路構成におけるデータ交換を制御するための回路構成、および方法
JP6290761B2 (ja) データ転送制御システム、データ転送制御方法、及び、データ転送制御プログラム
US7913013B2 (en) Semiconductor integrated circuit
JP2005284578A (ja) バス装置
JP2005084907A (ja) メモリ帯域制御装置
KR101420290B1 (ko) 트랜잭션들을 그룹화하는 버스 중재기, 이를 포함하는 버스장치 및 시스템
US6701407B1 (en) Multiprocessor system with system modules each having processors, and a data transfer method therefor
JP5360594B2 (ja) Dma転送装置及び方法
JP2004086798A (ja) マルチプロセッサシステム
JP4882116B2 (ja) バッファ制御装置およびバッファ制御方法
JP2009037639A (ja) ストリーミングidメソッドによるdmac発行メカニズム
US20030093594A1 (en) Apparatus and method for controlling block signal flow in a multi digital signal processor configuration from a shared peripheral direct memory controller to high level data link controller
JP2007026184A (ja) 機能処理電子回路およびその制御手法
JP2008203989A (ja) バス装置
KR20020051545A (ko) 실시간 고속의 데이터 처리용 디엠에이 제어기 및 제어방법
JP4862593B2 (ja) データ転送装置及び画像形成装置
JP4593220B2 (ja) メモリアクセス制御方式と方法、及び共有メモリアクセス制御方式と方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071016

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100518