JPH11149442A - データ転送制御装置 - Google Patents

データ転送制御装置

Info

Publication number
JPH11149442A
JPH11149442A JP31741797A JP31741797A JPH11149442A JP H11149442 A JPH11149442 A JP H11149442A JP 31741797 A JP31741797 A JP 31741797A JP 31741797 A JP31741797 A JP 31741797A JP H11149442 A JPH11149442 A JP H11149442A
Authority
JP
Japan
Prior art keywords
data
transfer
transfer request
master
data transfer
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
JP31741797A
Other languages
English (en)
Inventor
Tokai Morino
東海 森野
Jun Sato
潤 佐藤
Hideaki Genma
英明 源馬
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP31741797A priority Critical patent/JPH11149442A/ja
Publication of JPH11149442A publication Critical patent/JPH11149442A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 バスのデータ転送に於いて、データの再送を
最小限に押さえデータ転送のスループットを確保するよ
うなデータ転送制御装置を提供する。 【解決手段】転送要求があったときに、バスの使用権を
獲得するマスタデバイスと、データ転送が可能なとき
に、バスを介して前記マスタデバイスとデータの転送を
行うターゲットデバイスとを備えるデータ転送装置にお
いて、前記マスタデバイスは、前記転送要求を出力して
から次の転送要求を出力するまでの時間に相当する間隔
情報を計測する計測手段と、転送要求を出力してから次
の転送要求を出力するまでのあらかじめ定めた時間に相
当する間隔情報を保持する保持手段と、前記転送要求を
出力後、前記計測手段で計測した間隔情報に相当する時
間が、前記保持手段に保持する間隔情報に相当する時間
を超えるまでは、次の転送要求の出力を抑止する制御手
段とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、バスを介してデー
タ転送を行う場合の制御装置に係わり、特に、データ転
送の再送を制御するのに好適なデータ再送制御装置に関
する。
【0002】
【従来の技術】近年、マルチメディア技術の進歩によ
り、動画データなどの大量のデータを情報機器内部で効
率よく転送する要求は益々重要度を増している。効率よ
く転送するためには、特に、転送エラーが発生した場合
の再送の方法が問題となる。まず、従来の技術における
データ送信の動作を説明する。バスを介してデータを転
送する場合、一般的に、データ転送を要求するマスタが
データ転送の種類(メモリ空間かI/O空間かなど)、
データ転送の方向(リードかライト)などのコマンドを
指定し、アドレス情報を出力して転送相手のターゲット
を指定する。これらをデコードした結果、自分が転送相
手であると判断したデバイスは、ターゲットとしてマス
タとのデータ転送を行う。このマスタとターゲット間で
データ転送を行うときに、マスタが指定したコマンドお
よびアドレスに対してターゲットが一時的にデータの転
送を行えなくなる場合がある。例えば、DRAMを用い
たようなシステムでは、メモリセルをリフレッシュして
いるときなどはデータ転送が行えない。このような場合
には、ターゲットがウェイトサイクルを挿入し、マスタ
を待たせておいておき、データ転送が可能になったとき
にデータ転送を行う。しかし、ウェイトサイクルを挿入
すると、その間は、データの転送が行われないのでデー
タ転送レートが落ちてしまう。そこで、ターゲットが一
時的にデータ転送を行えないときは、マスタ側にその旨
を通知し、一旦バスの転送動作(トランザクション)を
中止させ、他のマスタのデータ転送を行えるようにす
る。そして、一定の時間が経過したときに、再びマスタ
がターゲットに対してデータの転送を要求する。このよ
うにすることで、バスを効率的に使用することができ
る。このように、ターゲット側からバスのトランザクシ
ョンを終了させることができるバスとして「PCIバス
の概要、インターフェース1997年3月号、CQ出版
社、P.100−116」で紹介されているPCI B
US(Peripheral Component In
terconnect BUS)がる。
【0003】次に、図2および図3を参照し、上述した
文献に記載されているPCI BUSのライトデータの
再送動作について説明する。図2に、データ転送制御部
のブロック図を示し、図3に、その転送時のタイムチャ
ートを示し、各信号線は、上述した文献に記載されてい
るものと同様とする。図2において、システムバス1に
は、データを送信するマスタデバイス10と、データを
受信するターゲットデバイス15とが接続され、さらに
バスの使用権(以下、マスタ権という)の調停を行うセ
ントラルアービタ(図示せず)が接続されている。シス
テムバス1は、PCI BUSであり、コマンド等は、
上述した文献に記載れているものと同様とする。マスタ
デバイス10は、システムバス1におけるデータ通信を
制御し、マスタ権を獲得するためのマスタプロトコル制
御部11と、アドレスおよびデータを送受信するマスタ
アドレス/データ制御部12とを備える。ターゲットデ
バイス15は、システムバス1におけるデータ通信を制
御し、マスタ権を獲得するためのターゲットプロトコル
制御部16と、アドレスおよびデータを送受信するター
ゲットデータ制御部12とを備える。
【0004】図3において、マスタデバイス10は、シ
ステムバス1のマスタ権を獲得するために、マスタプロ
トコル制御部11がマスタ権の獲得要求信号であるRE
Q#をCLKが1のところでアサートする。そして、マ
スタデバイス10は、CLKが2のところで、マスタ権
許可信号のGNT#が セントラルアービタによりアサ
ートされているのを検知し、マスタプロトコル制御部1
1は、CLKが3のところで、バスサイクルの実行時を
示すFRAME#をアサートするのと同時に、マスタア
ドレス/データ制御部12がアドレス情報を示すアドレ
スバス(AD)にアドレスA0と、マスタプロトコル制
御部11がコマンドを示すコマンドバス(C/BE#)
にコマンドC0を出力する。ターゲットデバイス15で
は、このアドレスA0とコマンドC0とをターゲットプ
ロトコル制御部16で解析し、自装置が転送相手である
ことを判断すると、CLKが5のときに、解析したこと
を示す信号DEVSEL#をアサートする。また、ター
ゲットデバイス15は、一時的にデータを受け入れられ
ない状態にあると判断した場合には、マスタデバイス1
0が状態信号(IRDY#)をアサートし(CLKが4
のとき)、ADにデータD0とC/BE#にバイトイネ
ーブルBE0とが出力されているにも関わらず、ターゲ
ットプロトコル制御部16はデータが受け入れられる状
態であることを示す信号のTRDY#をアサートせず、
CLKが6のところで、転送停止を指示するための信号
STOP#をアサートしてマスタデバイス10にターゲ
ット側がデータを受け入れられない状態にあることを通
知する。マスタデバイス10は、STOP#がアサート
されたのを検知し、REQ#、FRAME#およびIR
DY#をディアサートしてトランザクションを終了させ
る。そしてトランザクションを終了させたマスタデバイ
ス10は、一定の期間おいてから図3に示すCLKが1
0のところで再びREQ#をアサートしマスタ権を要求
する。そしてCLKが12のときに、マスタデバイス1
0は、FRAME#をアサートし、同じアドレスA0お
よびコマンドC0をADとC/BE#とにそれぞれ出力
する。先述したように、ターゲットデバイス15は、こ
のアドレスおよびコマンドを解析し、自分が転送相手だ
と判断した場合、CLKが14のときDEVSEL#を
アサートする。そして、データが受け入れられる状態で
あるときに、ターゲットプロトコル制御部16は、CL
Kが15のところでTRDY#をアサートし、ターゲッ
トデータ制御部17は、ADに出力されているデータD
0をCLKが15のところで格納する。また、図3にお
いては、CLKが16、17および18でデータD1、
D2、D3のそれぞれを格納する。PCI BUSでは
このようにしてデータの再送が行われる。
【0005】
【発明が解決しようとする課題】従来の方法で、連続的
にデータを転送しようとしたときに、図4に示すような
タイムチャートになる場合がある。
【0006】図4において、CLKが3の時にアドレス
A0に対してデータ転送を行い、さらにCLKが10の
ところで次のアドレスA1に対してデータ転送を要求す
るが、ターゲットデバイス15がデータを受け入れるこ
とができないためCLKが13のところでSTOP#を
アサートし、トランザクションを中止し、CLKが17
のところで再びA1に対してデータ転送を要求し、CL
Kが18のときデータ転送が行われている。ここで、仮
に、最初のA1に対するデータ転送の要求が、CLKが
10のところではなく、1クロック遅く11のところで
始まったとし、このときにターゲットデバイスがデータ
を受け入れ可能であれば、データ転送はCLKが13の
ところで行われることになる。しかし、図4ではCLK
が10のところでデータ転送が行われていて、更に同様
のデータ転送が続くとすると単位時間内に送れるデータ
量は少なくなってしまう。また、データが受け入れらな
い期間はターゲットデバイスにより変化するので、従来
の方法ではデータ転送を要求するタイミングを制御でき
ない。このためデータ転送の再送が頻発してしまう場合
があり、データ転送のスループットが低くなってしま
う。
【0007】本発明の目的は、バスのデータ転送に於い
て、データの再送を最小限に押さえデータ転送のスルー
プットを確保するようなデータ転送制御装置を提供する
ことにある。
【0008】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明のデータ転送制御装置は以下のような手段
を設ける。転送要求があったときに、バスの使用権を獲
得するマスタデバイスと、データ転送が可能なときに、
バスを介して前記マスタデバイスとデータの転送を行う
ターゲットデバイスとを備えるデータ転送装置におい
て、前記マスタデバイスは、前記転送要求を出力してか
ら次の転送要求を出力するまでの時間に相当する間隔情
報を計測する計測手段と、転送要求を出力してから次の
転送要求を出力するまでのあらかじめ定めた時間に相当
する間隔情報を保持する保持手段と、前記転送要求を出
力後、前記計測手段で計測した間隔情報に相当する時間
が、前記保持手段に保持する間隔情報に相当する時間を
超えるまでは、次の転送要求の出力を抑止する制御手段
とを備える。本発明によれば、ターゲットデバイスで、
データが受け入れられない期間を、あらかじめ間隔情報
として保持しておくことにより、この時間が経過するま
で、転送要求を出力しないので、この時間中にターゲッ
トデバイスのストップにより起こりうる再転送をなくす
ことができるので、再転送の回数を減らし、データ転送
の効率をよくすることができる。
【0009】また、前記マスタデバイスは、前記保持手
段に保持する間隔情報を設定するための設定手段をさら
に有するようにしてもよい。
【0010】また、前記ターゲットデバイスを複数備
え、前記マスタデバイスは、データを転送する転送先の
ターゲットデバイスを識別する識別手段をさらに備え、
前記保持手段は、前記複数のターゲットデバイスの各々
に対応させて前記間隔情報を保持し、前記制御手段は、
前記識別手段で識別されたターゲットデバイスごとに、
前記転送要求の出力の抑止を行うようにしてもよい。
【0011】また、前記マスタデバイスは、転送の内容
を示す複数のコマンドの各々を指示する指示手段と、前
記コマンドを識別するコマンド識別手段をさらに備え、
前記保持手段は、前記コマンドの各々に対応させて前記
間隔情報を保持し、前記制御手段は、前記識別手段で識
別されたコマンドごとに、前記転送要求の出力の抑止を
行うようにしてもよい。
【0012】または、前記ターゲットデバイスを複数備
え、前記マスタデバイスは、転送の内容を示す複数のコ
マンドの各々を指示する指示手段と、前記コマンドを識
別するコマンド識別手段と、データを転送する転送先の
ターゲットデバイスを識別する識別手段とをさらに備
え、前記保持手段は、前記複数のターゲットデバイス
と、前記コマンドとの組み合わせに対応させて前記間隔
情報を保持し、前記制御手段は、前記コマンド識別手段
および前記識別手段で識別されたターゲットデバイスと
コマンドとの組み合わせごとに、前記転送要求の出力の
抑止を行うようにしてもよい。
【0013】さらに、前記マスタデバイスは、データの
再転送回数情報を保持する回数保持手段と、前記回数保
持手段に保持する再転送回数情報に従って前記保持手段
に保持する間隔情報を変更する変更手段とをさらに有す
るようにしてもよい。
【0014】
【発明の実施の形態】次に本発明の実施の形態について
図面を参照して詳細に説明する。
【0015】以下、図1を用いて第1の実施の形態を説
明する。図1は、本発明の一実施の形態を示すブロック
図である。図1において、バスデバイス20は、マスタ
機能を備え、システムバス1におけるデータ通信を制御
し、マスタ権を獲得するためのマスタプロトコル制御部
11と、アドレスおよびデータを送受信するマスタアド
レス/データ制御部12と、マスタ権を獲得するための
ターゲットプロトコル制御部16と、アドレスおよびデ
ータを送受信するターゲットデータ制御部12と、転送
要求を出すタイミングを制御する転送要求制御部21
と、転送要求を出す間隔を設定する書き換え可能な転送
要求間隔レジスタ22とを備える。システムバス1は、
PCI BUSであり、図示しないターゲットデバイス
が接続されている。
【0016】次に、これらの記号を用いて各ブロックの
動作を説明する。まず、予め、ユーザは、ユーザインタ
フェースからCPUおよびシステムバス1を介して転送
を要求する最小の間隔を転送要求間隔レジスタ22に設
定する。この場合、転送要求間隔レジスタ22のアドレ
スと、それへの書き込みを示すコマンドとがあらかじめ
定められている。実際には、転送要求間隔レジスタ22
の設定は、バスデバイス20のターゲット機能を用い、
ターゲットプロトコル制御部16が、システムバス1を
介して転送されたアドレスとコマンドとを解析し、転送
要求間隔レジスタ22へのライトであることを判断する
と、ターゲットデータ制御部17においてデータを受け
取り、転送要求間隔レジスタ22へデータの格納を行
う。次に、バスデバイス20のマスタ機能によりデータ
転送が行われると、マスタプロトコル制御部11はその
データ転送のトランザクションの終了を検出し、トラン
ザクション終了信号により転送要求制御部21にトラン
ザクションの終了を通知する。転送要求制御部21で
は、トランザクションが終了してから転送要求間隔レジ
スタ22に格納されている期間が終わるまで、マスタア
ドレス/データ制御部12より転送を行う要求がきても
マスタプロトコル制御部11に対して転送の要求を出力
しない。つまり、トランザクションが終了してから転送
要求間隔レジスタ22に格納されている期間は、バスデ
バイス20はシステムバスに対してマスタ権を要求しな
い。本実施の形態によれば、転送要求間隔レジスタ22
に設定する値を変えることにより、次のデータ要求まで
の期間を自由に設定できる。
【0017】例えば、転送要求間隔レジスタ22への設
定値を、図3を参照して説明する。図3において、CL
Kが7のところでトランザクションが終了し、次のデー
タ転送要求はCLKが10のところでREQ#をアサー
トして行われるような転送間隔であるので、CLKが8
〜9の期間において、マスタ権を要求しないように、転
送要求間隔レジスタ22に、2を設定することができ
る。また、転送要求間隔レジスタ22に適切な値を設定
することでターゲットデバイスからの転送中止を防ぐこ
とが出来、データ転送を効率よく行うことができる。
【0018】次に、転送要求制御部21について図5を
用いて詳しく説明する。図5に、転送要求制御部21の
構成図を示す。転送要求制御部21は、トランザクショ
ン終了信号31によりリセットされ、クロックに同期し
てカウントアップするカウンタ35と、このカウンタ値
と転送要求間隔レジスタ22の値とを比較する比較器3
6と、この出力と、マスタアドレス/データ制御部12
からのデータ転送要求信号32とのANDを出力するA
ND回路37とを備える。
【0019】図5において、マスタプロトコル制御部1
1からのトランザクション終了信号31は、カウンタ3
5に入力される。カウンタ35はトランザクション終了
信号31によりリセットされ、クロックに同期してカウ
ントアップされる。更に、 このカウンタ値と転送要求
間隔レジスタ22の値は比較器36に入力される。比較
器36ではカウンタ35の値と転送要求間隔レジスタ2
2の値とを比べてカウンタ35の値が転送要求間隔レジ
スタ22の値以上であると’1’を出力する。この比較
器36の出力と、マスタアドレス/データ制御部12か
らのデータ転送要求信号32とをAND回路37に入力
し、その出力を転送要求開始信号33としてマスタプロ
トコル制御部に出力する。AND回路37では、トラン
ザクションの終了から転送要求間隔レジスタ22の設定
値以上の時間が経過しており、かつ、データ転送要求が
出力されているときに、転送要求開始信号22を出力す
る。マスタプロトコル制御部11は、転送要求開始信号
22がアサートされたときに、ターゲットデバイスへの
転送を開始する。このように動作することで、カウンタ
35の値が転送要求間隔レジスタ22の設定値より小さ
いときには、転送要求開始信号33が出力されないた
め、トランザクションの間隔を制御できる。
【0020】本実施の形態によれば、トランザクション
の間隔を最適に設定することによりターゲットデバイス
からの転送中止を最低限に押さえ、データ転送を効率よ
く行うことができる。
【0021】次に、図6および図7を参照して第2の実
施の形態を説明する。図6に、第2の実施の形態におけ
るデータ転送制御装置の構成を示す。第1の実施の形態
では、トランザクションの間隔を設定するレジスタを一
つしか持たないため、複数の領域(異なるターゲットデ
バイス)にデータ転送を行う場合、1つの設定しかでき
ないため、ある領域へのデータ転送は最適化されるがそ
の他の領域への転送は最適化されない。例えば、図6に
示すバスデバイス20がデータをバスブリッジ61に接
続された主記憶62と表示デバイス63に接続された表
示メモリ64にデータを転送する場合を考える。この場
合、ターゲットデバイスは、バスブリッジ61と表示デ
バイス63とになるが、これらに接続される主記憶62
や表示メモリ64は一般に接続されるビット幅やアクセ
ススピードなどが異なり、データを受け取ってから次の
データを受け入れ可能になるまでの期間はそれぞれ異な
る。従って上述の転送要求間隔レジスタに設定する最適
な値はそれぞれのターゲットデバイスにより異なる。そ
こで、第2の実施の形態では、第1の実施の形態におけ
る転送要求間隔レジスタの代わりに、主記憶用転送要求
間隔レジスタ25と表示メモリ用転送要求間隔レジスタ
26とを設け、更に転送先の領域を識別する転送先識別
部27を設けることでそれぞれ最適な値を設定できるよ
うにする。
【0022】つぎに、図7を参照して詳細な動作を説明
する。図7に、第2の実施の形態における転送要求制御
部21の構成図を示す。転送要求制御部21は、トラン
ザクション終了信号31と主記憶メモリ転送信号47と
のANDを出力するAND回路53と、このAND回路
53によりリセットされ、クロックに同期してカウント
アップする主記憶用カウンタ41と、このカウンタ値と
主記憶用転送要求間隔レジスタ25の値とを比較する比
較器43と、この出力と、マスタアドレス/データ制御
部12からの主記憶データ転送要求信号49とのAND
を出力するAND回路45と、トランザクション終了信
号31と表示メモリ転送信号48とのANDを出力する
AND回路54と、このAND回路54によりリセット
され、クロックに同期してカウントアップする表示メモ
リ用カウンタ42と、このカウンタ値と表示メモリ用転
送要求間隔レジスタ26の値とを比較する比較器42
と、この出力と、マスタアドレス/データ制御部12か
らの表示メモリデータ転送要求信号50とのANDを出
力するAND回路46とを備える。
【0023】図7において、主記憶62へのトランザク
ションが終了すると、マスタプロトコル制御部11によ
り、トランザクション終了信号31がアサートされ、且
つ、主記憶転送信号47がアサートされているときに、
主記憶用カウンタ41がリセットされる。リセットされ
た後、主記憶用カウンタ41は、クロックに同期してカ
ウントアップされ、比較器43では、このカウント値と
主記憶用転送要求間隔レジスタ25の値とを比較する。
そして、主記憶用カウンタ41の値が大きいときに、マ
スタプロトコル制御部11により主記憶データ転送要求
信号49を受け付けると、主記憶転送要求開始信号51
をアサートする。同様に、表示メモリへのトランザクシ
ョンが終了すると、マスタプロトコル制御部11によ
り、トランザクション終了信号31がアサートされ、且
つ、表示メモリ転送信号48がアサートされると、表示
メモリ用カウンタ42がリセットされる。リセットされ
た後、表示メモリ用カウンタ42は、クロックに同期し
てカウントアップされ、比較器44では、このカウント
値と表示用転送要求間隔レジスタ26の値とを比較す
る。そして、表示メモリ用カウンタ42の値が大きいと
きに、表示メモリデータ転送要求信号50を受け付ける
と、表示メモリ転送要求開始信号52をアサートする。
マスタプロトコル制御部11は、主記憶転送要求開始信
号51もしくは表示メモリ転送要求開始信号52がアサ
ートされたときに、主記憶への転送もしくは表示メモリ
への転送を開始する。
【0024】つぎに、図8を参照して転送先識別部27
の動作を説明する。転送先識別部27は、主記憶の先頭
アドレスを記憶する主記憶先頭レジスタ70と、主記憶
の終了アドレスを記憶する主記憶終了レジスタ71と、
表示メモリの仙頭阿蘇レスを記憶する表示メモリ先頭レ
ジスタ72と、表示メモリの終了アドレスを記憶する表
示メモリ終了レジスタ73と、これらのレジスタの値と
マスタアドレス/データ制御部12より入力された転送
先アドレスとを各々比較する比較器74、75、76お
よび77とを備える。
【0025】主記憶の先頭アドレス、終了アドレス、表
示メモリの先頭アドレスおよび終了アドレスを、CPU
60およびシステムバス1を介して主記憶先頭レジスタ
70、主記憶終了レジスタ71、表示メモリ先頭レジス
タ72および表示メモリ終了レジスタ73の各々に予め
設定しておく。そして、これらのレジスタの値とマスタ
アドレス/データ制御部12から転送先アドレス信号8
0を介して指示された転送先アドレスとを比較器74、
75、76、77において比較し、主記憶先頭レジスタ
70の値以上であり、且つ、主記憶終了アドレス71の
値以下であれば主記憶転送信号47をアサートする。ま
た、表示メモリ先頭レジスタ72の値以上であり、且
つ、表示メモリ終了レジスタ73の値以下であれば表示
メモリ転送信号48をアサートする。以上説明したよう
に動作することで、どのターゲットデバイスにアクセス
したかを判別することができる。また、バスデバイス2
0が主記憶52への転送と表示メモリ54への転送しか
行わないのであれば、主記憶転送信号47を反転させて
表示メモリ転送信号48を作ることも可能である。この
場合、表示メモリ先頭レジスタ72、表示メモリ終了レ
ジスタ73、比較器76、77およびAND回路79が
不要になり回路規模を縮小させることができる。
【0026】第2の実施の形態によれば、主記憶に対す
るトランザクションの間隔と、表示メモリに対するトラ
ンザクションの間隔とを別々に設定でき、それぞれのタ
ーゲットに対する間隔を最適化できる。また、別々にカ
ウンタを設けているので主記憶と表示メモリとを交互に
アクセスしても、現在転送していない方のカウンタはカ
ウントアップされるのでトランザクションが終了すると
いち早く次のターゲットデバイスに対して転送を開始で
き効率的に転送を行なうことができる。
【0027】また、同一のターゲットデバイスへの転送
であってもリード転送とライト転送とでトランザクショ
ン終了後次のデータの受け入れができない期間は異なっ
てくる。例えば、表示デバイスでは、ライト転送に関し
てはグラフィックスの描画性能に大きく影響するため、
ライトバッファを大きくとり高速にデータ転送が行える
ようになっているが、リード転送に関してはあまり描画
性能に影響しないためリードバッファをあまり大きくと
ってない場合がある。その他にも、外部に接続される記
憶素子もリードアクセスとライトアクセスとではアクセ
ス時間に違いがあるためデータの受け入れができない期
間は異なってくる。この場合には、図9に示すように、
リードなのかライトなのかを判断するコマンド識別部2
8を設けることにより、同じターゲットデバイスであっ
てもリード転送とライト転送でトランザクションの間隔
を別々に設定するように、リード用転送要求間隔レジス
タ29と、ライト用転送要求間隔レジスタ30とを設け
るようにしてもよい。図9に示すような構成によれば、
それぞれのコマンドに対する間隔を最適化できることが
できる。
【0028】つぎに、図10および図11を参照して第
3の実施の形態を説明する。図10において、バスデバ
イス20からターゲットデバイス15に発生したトラン
ザクションはCPU60からは監視できないため、デー
タの再送か行われたかどうかはわからない。そのため、
転送要求間隔レジスタ22に適切な値を設定するために
は、特別な測定器を用いてデータの再送が起こっている
かどうかを確かめて設定する必要がある。バスデバイス
20がシステムにデフォルトで接続されている場合は、
測定器を用いて最適値を決めればよいが、バスデバイス
20が拡張ボードであり色々なシステムに接続される場
合は、最適値を決定するのは困難である。そこで図10
に示すように、第3の実施の形態においては、再転送の
回数、トランザクションの回数、転送にかかったクロッ
ク数、転送したデータ数などの情報をCPU60から読
み出せる手段として転送情報レジスタ部90を設ける。
【0029】次に転送情報レジスタ部90に関して図1
1を参照して説明する。図11では、トランザクション
の回数と、再送の回数とを読み出せるようにしている。
具体的には、トランザクション開始信号93がアサート
されたらカウントアップするトランザクション回数レジ
スタ91と、再転送始信号94がアサートされたらカウ
ントアップする再転送回数レジスタ92とを設ける。ト
ランザクション開始信号93および再転送始信号94
は、マスタプロトコル制御部11から出力される。ま
た、これらのレジスタに保持する値は、ターゲットデー
タ制御部17を介してシステムバス1から読み出せる。
実際には、転送要求間隔レジスタ22の値をまとめるに
は、マスタプロトコル制御部11において、図12に示
すフローチャートのように処理する。図12において、
まずステップST1で転送要求間隔レジスタ22の値を
最小値(例えば、0)に設定し、ステップST2でトラ
ンザクション回数レジスタ91と再転送回数レジスタ9
2とをクリアする。次に、ステップST3でバスデバイ
ス20である一定データ数のデータ転送を行い、次にス
テップST4において、トランザクション回数をトラン
ザクション回数レジスタ91に格納し、また、再転送回
数を再転送回数レジスタ92に格納しておく。次にST
5で転送要求間隔レジスタ22の値に+1する。次にS
T6で転送要求間隔レジスタ22の値が、あらかじめ定
められた転送要求間隔の最大値を超えたかどうかを判断
し、超えていれば終了、超えていなければST2にジャ
ンプする。これにより、転送要求間隔レジスタの値を1
ずつ大きくしていき、最適値を求めることができる。
【0030】また、再転送の割合は、(再転送回数レジ
スタ92の値)/(トランザクション回数レジスタ91
の値)で求めることができる。ステップST4でトラン
ザクション回数レジスタ91と再転送回数レジスタ92
との各値から、転送要求間隔レジスタ22の値に対して
の、再転送割合が求まる。トランザクションの間隔が短
いためにデータの再転送が起こっている場合、転送要求
間隔レジスタ22の値を大きくしていき、ある値を超え
ると、再転送が行われなくなり、再転送割合が0にな
る。再転送の割合が0になった時の値を転送要求間隔レ
ジスタ22の値とすることで、最適値を設定することが
できる。なお、理想的には再転送割合が0になるが、例
えばターゲットデバイス15にDRAMが接続されてい
てそのDRAMに転送している場合、DRAMは定期的
にリフレッシュを行わなければらず、リフレッシュを行
っている間は再転送を行うことがあり、再転送の割合は
0にならないことがある。また、1つのアドレスに対し
て複数のデータを転送している場合に、ターゲットデバ
イスが一度に受け取れるデータが制限されている場合
に、複数のデータを全て転送しないうちにターゲット側
からトランザクションの中止を要求して、データの再転
送が行われることがある。この場合にも再転送の割合は
0とはならない。また、再転送の割合が転送要求間隔レ
ジスタ22の値を大きくしていき、最大値まで変化させ
ても小さくならない場合は、トランザクションの間隔を
あけても再転送の割合は変わらないため転送要求間隔レ
ジスタ22の値は最小値に設定するようにしてもよい。
【0031】第3の実施の形態によれば、バスデバイス
20が拡張ボードなどで構成され、さまざまなシステム
に接続されていても転送要求間隔レジスタ22の値の最
適値に設定することができ、効率よくデータを転送でき
る。
【0032】上述したように、第1〜第3の実施の形態
によれば、少ないハードウェアの追加で、ターゲットデ
バイスからの転送中止を最低限に押さえることができ、
動画データなどのデータを連続的に転送する場合の実験
によれば、最大で50%近くバスの転送効率を改善する
ことができる。また、データ転送を伴わない不要なトラ
ンザクションが起きないため、他のバスマスタデバイス
との競合の場合にも、バスを効率的に使用することがで
きる。
【0033】また、第1〜第3の実施の形態において
は、各レジスタに値を設定させるために、マスタデバイ
スに、ターゲットデバイスの機能を備えるように構成し
たが、各レジスタに値を設定するための設定部を設けれ
ば、ターゲットデバイスの機能は、設けなくてもよい。
【0034】
【発明の効果】以上説明したように、本発明によれば、
トランザクションの間隔を最適に設定することによりタ
ーゲットデバイスからの転送中止を最低限に押さえ、デ
ータ転送を効率よく行うことができる。
【図面の簡単な説明】
【図1】本発明における第1の実施の形態の構成を示す
ブロック図である。
【図2】従来のデータ転送を行う構成を示すブロック図
である。
【図3】データの再転送を行う場合のタイミングチャー
ト図である。
【図4】連続的にデータ転送を行う場合のタイミングチ
ャート図である。
【図5】転送要求制御部21の構成を示すブロック図で
ある。
【図6】第二の実施の形態における構成を示すブロック
図である。
【図7】複数の転送先に対応した転送要求制御部の構成
を示すブロック図である。
【図8】転送先を識別する回路を示すブロック図であ
る。
【図9】コマンドの種類によりデータ転送を制御する場
合のブロック図である。
【図10】第3の実施の形態における構成を示すブロッ
ク図である。
【図11】転送情報レジスタ部の構成を示すブロック図
である。
【図12】再転送の割合を検知するためのフローチャー
トである。
【符号の説明】
1…システムバス、 10…マスタデバイス、 11…マスタプロトコル制御部、 12…マスタアドレス/データ制御部、 15…ターゲットデバイス、 16…ターゲットプロトコル制御部、 17…ターゲットデータ制御部、 20…バスデバイス、 21…転送要求制御部、 22…転送要求間隔レジスタ、 25…主記憶用転送要求間隔レジスタ、 26…表示メモリ用転送要求間隔レジスタ、 27…転送先識別部、 28…コマンド識別部、 29…リード用転送要求間隔レジスタ、 30…ライト用転送要求間隔レジスタ、 31…トランザクション終了信号、 32…データ転送要求信号、 33…転送要求開始信号、 35…カウンタ、 36…比較器、 37…AND回路、 41…主記憶用カウンタ、 42…表示メモリ用カウンタ、 43…比較器、 44…比較器、 45…AND回路、 46…AND回路、 47…主記憶転送信号、 48…表示メモリ転送信号、 49…主記憶データ転送要求信号、 50…表示メモリデータ転送要求信号、 51…主記憶転送要求開始信号、 52…表示メモリ転送要求開始信号、 53…AND回路、 54…AND回路、 60…CPU、 61…バスブリッジ、 62…主記憶、 63…表示デバイス、 64…表示メモリ、 70…主記憶先頭レジスタ、 71…主記憶終了レジスタ、 72…表示メモリ先頭レジスタ、 73…表示メモリ終了レジスタ、 74…比較器、 75…比較器、 76…比較器、 77…比較器、 78…AND回路、 79…AND回路、 80…転送先アドレス、 90…転送情報レジスタ部、 91…トランザクション回数レジスタ、 92…再転送回数レジスタ、 93…トランザクション開始信号、 94…再転送開始信号。

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】転送要求があったときに、バスの使用権を
    獲得するマスタデバイスと、データ転送が可能なとき
    に、バスを介して前記マスタデバイスとデータの転送を
    行うターゲットデバイスとを備えるデータ転送装置にお
    いて、前記マスタデバイスは、前記転送要求を出力して
    から次の転送要求を出力するまでの時間に相当する間隔
    情報を計測する計測手段と、転送要求を出力してから次
    の転送要求を出力するまでのあらかじめ定めた時間に相
    当する間隔情報を保持する保持手段と、前記転送要求を
    出力後、前記計測手段で計測した間隔情報に相当する時
    間が、前記保持手段に保持する間隔情報に相当する時間
    を超えるまでは、次の転送要求の出力を抑止する制御手
    段とを備えることを特徴とするデータ転送装置。
  2. 【請求項2】請求項1に記載のデータ転送制御装置にお
    いて、前記マスタデバイスは、前記保持手段に保持する
    間隔情報を設定するための設定手段をさらに有すること
    を特徴とするデータ転送制御装置。
  3. 【請求項3】請求項1に記載のデータ転送制御装置にお
    いて、前記ターゲットデバイスを複数備え、前記マスタ
    デバイスは、データを転送する転送先のターゲットデバ
    イスを識別する識別手段をさらに備え、前記保持手段
    は、前記複数のターゲットデバイスの各々に対応させて
    前記間隔情報を保持し、前記制御手段は、前記識別手段
    で識別されたターゲットデバイスごとに、前記転送要求
    の出力の抑止を行うことを特徴とするデータ転送制御装
    置。
  4. 【請求項4】請求項1に記載のデータ転送制御装置にお
    いて、前記マスタデバイスは、転送の内容を示す複数の
    コマンドの各々を指示する指示手段と、前記コマンドを
    識別するコマンド識別手段をさらに備え、前記保持手段
    は、前記コマンドの各々に対応させて前記間隔情報を保
    持し、前記制御手段は、前記識別手段で識別されたコマ
    ンドごとに、前記転送要求の出力の抑止を行うことを特
    徴とするデータ転送制御装置。
  5. 【請求項5】請求項1に記載のデータ転送制御装置にお
    いて、前記ターゲットデバイスを複数備え、前記マスタ
    デバイスは、転送の内容を示す複数のコマンドの各々を
    指示する指示手段と、前記コマンドを識別するコマンド
    識別手段と、データを転送する転送先のターゲットデバ
    イスを識別する識別手段とをさらに備え、前記保持手段
    は、前記複数のターゲットデバイスと、前記コマンドと
    の組み合わせに対応させて前記間隔情報を保持し、前記
    制御手段は、前記コマンド識別手段および前記識別手段
    で識別されたターゲットデバイスとコマンドとの組み合
    わせごとに、前記転送要求の出力の抑止を行うことを特
    徴とするデータ転送制御装置。
  6. 【請求項6】請求項1に記載のデータ転送制御装置にお
    いて、前記マスタデバイスは、データの再転送回数情報
    を保持する回数保持手段と、前記回数保持手段に保持す
    る再転送回数情報に従って前記保持手段に保持する間隔
    情報を変更する変更手段とをさらに有することを特徴と
    するデータ転送制御装置。
JP31741797A 1997-11-18 1997-11-18 データ転送制御装置 Pending JPH11149442A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31741797A JPH11149442A (ja) 1997-11-18 1997-11-18 データ転送制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31741797A JPH11149442A (ja) 1997-11-18 1997-11-18 データ転送制御装置

Publications (1)

Publication Number Publication Date
JPH11149442A true JPH11149442A (ja) 1999-06-02

Family

ID=18088007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31741797A Pending JPH11149442A (ja) 1997-11-18 1997-11-18 データ転送制御装置

Country Status (1)

Country Link
JP (1) JPH11149442A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009034730A1 (ja) * 2007-09-13 2009-03-19 Renesas Technology Corp. ホスト負荷調整機能付周辺回路
JP2012079165A (ja) * 2010-10-04 2012-04-19 Canon Inc バス調停装置、バス調停方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009034730A1 (ja) * 2007-09-13 2009-03-19 Renesas Technology Corp. ホスト負荷調整機能付周辺回路
JP2009070122A (ja) * 2007-09-13 2009-04-02 Renesas Technology Corp ホスト負荷調整機能付周辺回路
JP4659008B2 (ja) * 2007-09-13 2011-03-30 ルネサスエレクトロニクス株式会社 ホスト負荷調整機能付周辺回路
JP2012079165A (ja) * 2010-10-04 2012-04-19 Canon Inc バス調停装置、バス調停方法

Similar Documents

Publication Publication Date Title
JP4778199B2 (ja) データ転送装置及びデータ転送方法
JP4008987B2 (ja) バス通信システム及びバス調停方法並びにデータ転送方法
US5850530A (en) Method and apparatus for improving bus efficiency by enabling arbitration based upon availability of completion data
KR0167818B1 (ko) 버스 중재 시스템, 버스 중재 회로, 버스 중재 방법 및 데이타 전송 방법
US5901295A (en) Address and data bus arbiter for pipelined transactions on a split bus
US6425037B1 (en) Information processing system, bus arbiter, and bus controlling method
US6397279B1 (en) Smart retry system that reduces wasted bus transactions associated with master retries
US6697904B1 (en) Preventing starvation of agents on a bus bridge
WO1996013774A1 (en) Multiprocessor system bus protocol for optimized accessing of interleaved storage modules
JP4313607B2 (ja) バス接続回路及びバス接続システム
US7174401B2 (en) Look ahead split release for a data bus
US7054987B1 (en) Apparatus, system, and method for avoiding data writes that stall transactions in a bus interface
US6629178B1 (en) System and method for controlling bus access for bus agents having varying priorities
US6748505B1 (en) Efficient system bus architecture for memory and register transfers
USRE40261E1 (en) Apparatus and method of partially transferring data through bus and bus master control device
US6463494B1 (en) Method and system for implementing control signals on a low pin count bus
US20010004749A1 (en) Arbitration of control chipsets in bus transaction
US7774513B2 (en) DMA circuit and computer system
US6973520B2 (en) System and method for providing improved bus utilization via target directed completion
US7346072B2 (en) Arbitration mechanism for packet transmission
US5754802A (en) Increasing data transfer efficiency for a read operation in a non-split transaction bus environment by substituting a write operation for the read operation
US5708783A (en) Data bus arbiter for pipelined transactions on a split bus
JPH11149442A (ja) データ転送制御装置
JPH06250970A (ja) メモリ制御装置
JP2002049580A (ja) バス管理装置、バス使用要求送信装置、バス管理方法、及びバス使用要求送信方法