JP4689257B2 - Bus control device and information processing system - Google Patents

Bus control device and information processing system Download PDF

Info

Publication number
JP4689257B2
JP4689257B2 JP2004360156A JP2004360156A JP4689257B2 JP 4689257 B2 JP4689257 B2 JP 4689257B2 JP 2004360156 A JP2004360156 A JP 2004360156A JP 2004360156 A JP2004360156 A JP 2004360156A JP 4689257 B2 JP4689257 B2 JP 4689257B2
Authority
JP
Japan
Prior art keywords
master
transfer
bus
time
waiting time
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
JP2004360156A
Other languages
Japanese (ja)
Other versions
JP2006171887A (en
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
Priority to JP2004360156A priority Critical patent/JP4689257B2/en
Publication of JP2006171887A publication Critical patent/JP2006171887A/en
Application granted granted Critical
Publication of JP4689257B2 publication Critical patent/JP4689257B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Description

この発明は、バス制御装置および情報処理システムに関するものである。   The present invention relates to a bus control device and an information processing system.

共通バス接続方式のシステムでは、複数のプロセッサやメモリ等のデバイスが共通バスに接続され、共通バスを介してデバイス間でのデータのやり取りをする。共通バス接続方式のシステムにはバス制御装置が備えられており、バス制御装置は、バスに接続されたプロセッサやハードウェアブロック(マスタ)からデータ転送要求を受け、バスの使用を許可するマスタに対して使用許可を通知する。使用許可を受けたマスタは、バスを利用して転送先のデバイス(スレーブ)との間でデータ転送を行う。バス制御装置は、各マスタの待ち時間を短縮し、システム全体の処理性能を上げるように使用許可を与えるマスタを決定する。このようなバス制御装置の制御方法として様々な技術が提案されている。
例えば、特許文献1に開示されたバス伝送方法では、バス調停回路(バス制御装置)からバス使用権を取得したプロセッサがバス使用時間通知信号線を介してバス使用時間をバス調停回路へ通知し、バス調停回路が次のバス使用権を予約したプロセッサへバス待ち時間通知信号線を介してバス待ち時間を通知する。バス使用中のプロセッサのバス使用が終了すると、バス調停回路が次のバス使用権を予約したプロセッサへバス捕捉応答信号線を介してバス捕捉応答を返す。これにより、バス使用権を予約したプロセッサは待ち時間を知ることができるので、待機中にプロセッサを他の処理に利用することができる。
In a common bus connection system, a plurality of devices such as processors and memories are connected to a common bus, and data is exchanged between the devices via the common bus. The common bus connection system is equipped with a bus controller, which receives a data transfer request from a processor or hardware block (master) connected to the bus and serves as a master that permits the use of the bus. Notify usage permission. The master that has received use permission transfers data to and from the transfer destination device (slave) using the bus. The bus control device determines a master to which use permission is given so as to shorten the waiting time of each master and improve the processing performance of the entire system. Various techniques have been proposed as a control method for such a bus control device.
For example, in the bus transmission method disclosed in Patent Document 1, a processor that has acquired a bus use right from a bus arbitration circuit (bus control device) notifies the bus arbitration circuit of the bus use time via a bus use time notification signal line. The bus arbitration circuit notifies the bus waiting time via the bus waiting time notification signal line to the processor that has reserved the next bus use right. When the bus use of the processor in use of the bus ends, the bus arbitration circuit returns a bus capture response to the processor that reserved the next bus use right through the bus capture response signal line. As a result, the processor that has reserved the bus use right can know the waiting time, so that the processor can be used for other processing during the waiting time.

特開平10−41962号公報Japanese Patent Laid-Open No. 10-41962

しかし、特許文献1に開示された方法では、バス使用待機中のプロセッサは、待ち時間の通知を受けてから、それが待機可能な時間の範囲内かどうかの判定を行う必要があり、プロセッサの処理が複雑化する。プロセッサによっては、待ち時間が一定時間以上ならば転送要求をキャンセルする場合もある。この場合、待ち時間自体を通知しなくても、制限時間以内にバス使用が可能になるかどうかが分かればよい。   However, in the method disclosed in Patent Document 1, it is necessary for a processor waiting for use of the bus to determine whether or not it is within the waiting time range after receiving the notification of the waiting time. Processing becomes complicated. Depending on the processor, the transfer request may be canceled if the waiting time is longer than a certain time. In this case, it is only necessary to know whether or not the bus can be used within the time limit without notifying the waiting time itself.

この発明は上記のような課題を解決するためになされたもので、マスタの処理負担は小さく、且つ、バス使用待ち時間の短縮とシステムの処理性能向上を実現できるバス制御装置および情報処理システムを得ることを目的とする。   The present invention has been made to solve the above-described problems, and provides a bus control device and an information processing system that can reduce the processing load on the master, reduce the bus use waiting time, and improve the processing performance of the system. The purpose is to obtain.

この発明に係るバス制御装置は、共通バスを介してデータ転送を行う複数のマスタから出力される転送要求を受信し、共通バスが使用可能な状態の場合にはマスタに対して転送許可を通知するバス制御装置であって、各マスタに転送許可を与える優先順位を格納する優先順位格納部と、共通バスが使用可能な状態の場合には、優先順位に基づいて転送許可を与えるマスタを決定し、そのマスタに対して転送許可を通知するとともに共通バスがそのマスタからの入力を受信するように設定する使用権制御部と、現時点での共通バスを使用しているマスタから通知される転送要求データ量に基づいて、各マスタに転送許可が与えられるまでの予想待ち時間を算出し、予想待ち時間と、転送要求を出力したマスタから通知される待機可能時間を比較して、予想待ち時間が待機可能時間以下の場合には転送可能であることを示す判定結果を転送要求を出力したマスタに通知し、予想待ち時間が待機可能時間よりも大きい場合には転送可能でないことを示す判定結果を転送要求を出力したマスタに通知する制限時間内転送判定部を備えたものである。 The bus control device according to the present invention receives transfer requests output from a plurality of masters that perform data transfer via a common bus, and notifies the master of transfer permission when the common bus is usable. A priority storage unit for storing priorities for granting transfer permission to each master, and a master that grants transfer permission based on the priorities when a common bus is available The right-of-use control unit that notifies the master of transfer permission and sets the common bus to receive input from the master, and the transfer notified from the master using the current common bus based on the required amount of data, the ratio to calculate the expected wait time, the expected latency, and a wait available time notified from the output to master a transfer request to the transfer permission is given to each master To, when the expected waiting time is less waitable hours informs the master which outputs the transfer request a determination result indicating that can be transferred, if the expected waiting time is greater than the available time waiting transferable it is obtained by a time limit in the transfer determination unit that notifies the output with the master transfer request, a judgment result indicating that not.

この発明に係る情報処理システムは、共通バスを介してデータ転送を行う複数のマスタと、複数のマスタから出力される転送要求を受信し、共通バスが使用可能な状態の場合にはマスタに対して転送許可を通知するバス制御装置を備えた情報処理システムであって、バス制御装置の使用権制御部は、マスタから転送要求を受信すると、共通バスが使用可能な状態の場合には、各マスタに転送許可を与える優先順位に基づいて転送許可を与えるマスタを決定し、そのマスタに対して転送許可を通知するとともに共通バスがそのマスタからの入力を受信するように設定し、バス制御装置の制限時間内転送判定部は、現時点での上記共通バスを使用しているマスタから通知される転送要求データ量に基づいて、各マスタに転送許可が与えられるまでの予想待ち時間を算出し、予想待ち時間と、転送要求を出力したマスタから通知される待機可能時間を比較して、予想待ち時間が待機可能時間以下の場合には転送可能であることを示す判定結果を当該転送要求を出力したマスタに通知し、予想待ち時間が待機可能時間よりも大きい場合には転送可能でないことを示す判定結果を当該転送要求を出力したマスタに通知し、各マスタは、判定結果に基づいて転送要求を継続して出力するか、出力を中止するかを判断するものである。

The information processing system according to the present invention receives a plurality of masters that perform data transfer via a common bus, and transfer requests output from the plurality of masters. In this case, the right-of-use control unit of the bus control device receives a transfer request from the master, and when the common bus is usable, A bus control device that determines a master to which transfer permission is granted based on a priority order for giving transfer permission to the master, notifies the master of transfer permission, and sets the common bus to receive input from the master. time limit in the transfer determination unit is based on the transfer request data amount notified from the common using the bus master at the moment, until the transfer permission is granted to each master Calculates the expected waiting time, it shows the expected waiting time is compared with allowable waiting time is notified from the output to master the transfer request, it can be transferred when the expected waiting time is less waitable hours The determination result is notified to the master that has output the transfer request, and if the expected waiting time is greater than the waiting time, the determination result indicating that transfer is not possible is notified to the master that has output the transfer request. Based on the determination result, it is determined whether to continue outputting the transfer request or cancel the output.

この発明によれば、バス制御装置は、共通バスに接続されたマスタから、転送要求とともに待機可能時間を取得し、各マスタに転送許可が与えられるまでの時間を算出し、待機可能時間内に転送許可が与えられるか否かを判断して各マスタに通知するようにしたので、マスタ側は、通知された信号が否であれば、転送要求を中止することができ、マスタ側の小さい処理負担でバスの使用待ち時間の短縮とシステムの処理性能向上を実現することができる。   According to the present invention, the bus control device obtains the waiting time from the master connected to the common bus together with the transfer request, calculates the time until transfer permission is given to each master, and within the waiting time. Since it is determined whether transfer permission is granted and notified to each master, the master side can cancel the transfer request if the notified signal is not, and the master side can perform a small process. The burden on the bus can be shortened and the processing performance of the system can be improved at the expense.

以下、この発明の実施の形態を説明する。
実施の形態1.
図1は、この発明の実施の形態1による、バス制御装置40を備えた情報処理装置100の構成を示すブロック図である。図に示すように、情報処理装置100は、マスタ10a,10b,10c、スレーブ20a,20b、バス30、バス制御装置40を備えている。マスタ10a,10b,10cは、例えばハードウェアブロックやプロセッサ等のデバイスであり、スレーブ20a,20bは、例えばメモリやハードディスク等のデバイスである。なお、マスタ10a,10b,10c、スレーブ20a,20bの数はこれに限られない。
Embodiments of the present invention will be described below.
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a configuration of an information processing apparatus 100 including a bus control device 40 according to Embodiment 1 of the present invention. As illustrated, the information processing apparatus 100 includes masters 10a, 10b, and 10c, slaves 20a and 20b, a bus 30, and a bus control device 40. The masters 10a, 10b, and 10c are devices such as hardware blocks and processors, for example, and the slaves 20a and 20b are devices such as memories and hard disks, for example. The number of masters 10a, 10b, 10c and slaves 20a, 20b is not limited to this.

バス制御装置40は、優先順位設定部401、優先順位格納部402、使用権制御部403、制限時間内転送判定部404を備えている。優先順位格納部402には、マスタ10a,10b,10cに対するバス30使用許可の優先順位が格納されている。   The bus control device 40 includes a priority order setting unit 401, a priority order storage unit 402, a usage right control unit 403, and an intra-time limit transfer determination unit 404. The priority storage unit 402 stores the priority of permission to use the bus 30 for the masters 10a, 10b, and 10c.

マスタ10a,10b,10c、スレーブ20a,20b、およびバス制御装置40は、バス30に接続されている。また、バス制御装置40とマスタ10a,10b,10cの間には、マスタ10a,10b,10cからバス制御装置40へ転送要求を通知するための線、使用権制御部403からマスタ10a,10b,10cへ転送許可信号を通知するための線、マスタ10a,10b,10cから制限時間内転送判定部404へデータの転送個数、転送先スレーブ、および転送許可を受けるまでに待機可能な要求時間を通知するための線、制限時間内転送判定部404からマスタ10a,10b,10cへ転送可能判定を通知するための線が設けられている。   Masters 10 a, 10 b, 10 c, slaves 20 a, 20 b, and bus control device 40 are connected to bus 30. Between the bus control device 40 and the masters 10a, 10b, and 10c, a line for notifying the bus control device 40 of a transfer request from the masters 10a, 10b, and 10c, and from the usage right control unit 403 to the masters 10a, 10b, The line for notifying the transfer permission signal to 10c, the number of data transfer, the transfer destination slave, and the request time that can be waited until the transfer permission is received from the master 10a, 10b, 10c to the transfer determination unit 404 within the time limit And a line for notifying the masters 10a, 10b, and 10c of transferability determination from the transfer determination unit 404 within the time limit.

次に、動作について説明する。まず、情報処理装置100の動作の概略について説明する。
マスタ10a,10b,10cは、スレーブ20a,20bに対するデータ書き込みや読み出しを行う場合、バス制御装置40に対して、転送要求と、要求する転送データの個数、転送先スレーブ、および転送可能になるまでに待機可能な要求時間を通知する。バス制御装置40の使用権制御部403は、バス30が使用可能な状態であれば転送要求を通知してきたマスタに対して転送許可を通知し、バス30の入力セレクタを当該マスタに切り替える。同時に複数のマスタから転送要求が通知された場合には、使用権制御部403において、優先順位格納部402に格納されている優先順位を基に転送許可を与えるマスタを決定する。転送許可を与えるマスタに対しては使用権制御部403から転送許可が通知される。転送許可を受けたマスタは、バス30を介してスレーブ20a,20bに対するデータ書き込みまたは読み出しを行う。
一方、制限時間内転送判定部404は、現時点でバス30を使用しているマスタの転送個数および転送先情報に基づいて転送終了までの時間を算出し、その値を基に、転送許可待ちのマスタが転送可能になるまでの待ち時間を算出する。制限時間内転送判定部404は、算出した待ち時間が転送許可待ちのマスタの要求時間以下である場合には、そのマスタに対して、転送可能であることを示す転送可能判定結果を通知する。
Next, the operation will be described. First, an outline of the operation of the information processing apparatus 100 will be described.
When the masters 10a, 10b, and 10c write data to and read data from the slaves 20a and 20b, the master 10a, 10b, and 10c make a transfer request to the bus controller 40, the number of requested transfer data, the transfer destination slave, and until transfer is possible. Is notified of the request time that can be waited. If the bus 30 is usable, the usage right control unit 403 of the bus control device 40 notifies the master that has notified the transfer request of transfer permission, and switches the input selector of the bus 30 to the master. When transfer requests are notified from a plurality of masters at the same time, the usage right control unit 403 determines a master to which transfer permission is granted based on the priority order stored in the priority order storage unit 402. A transfer permission is notified from the usage right control unit 403 to the master that gives the transfer permission. The master that has received the transfer permission performs data writing or reading with respect to the slaves 20 a and 20 b via the bus 30.
On the other hand, the transfer determination unit 404 within the time limit calculates the time to transfer end based on the transfer number and transfer destination information of the master currently using the bus 30 and waits for transfer permission based on the value. Calculate the waiting time until the master can transfer. When the calculated waiting time is equal to or less than the request time of the master waiting for transfer permission, the transfer within the time limit determination unit 404 notifies the master of the transfer enable determination result indicating that transfer is possible.

次に、図2のタイムチャートを用いて、バス制御装置40の動作を詳しく説明する。なお、ここでは、優先順位格納部402に格納されるマスタの優先順位は、マスタ10b→マスタ10c→マスタ10aの順とする。
時刻8の時点においては、使用権制御部403からマスタ10aに転送許可が出ており、マスタ10aからスレーブ20aへのデータ転送が継続している。マスタ10bおよびマスタ10cからは転送要求はでていないので、バス制御装置40からの信号は出力されていない。制限時間内転送判定部404は、マスタ10aが転送を開始した時点で、マスタ10aからの転送が時刻10で終了することを記憶する。
時刻9においては、マスタ10aの転送が継続しておりバス30は使用中である。マスタ10cは、転送要求を通知するとともに、転送個数(8)、転送先(スレーブ20a)、および要求時間(12)を通知している。バス制御装置40は、バス30が使用中であるためマスタ10cに対して転送可能判定を通知する。制限時間内転送判定部404は、マスタ10cより優先度が高いマスタ10bが転送要求を行っていないため、マスタ10cが転送を開始できるのは、マスタ10aによる転送が時刻10で完了してから、すなわち時刻11からと算出する。さらに、時刻11をマスタ10cからの要求時間12と比較すると時刻11の方が小さいので、マスタ10cに対して、転送可能であることを示す1を通知する。
Next, the operation of the bus control device 40 will be described in detail using the time chart of FIG. Here, the priority order of the masters stored in the priority order storage unit 402 is in the order of master 10b → master 10c → master 10a.
At time 8, transfer permission is issued from the usage right control unit 403 to the master 10 a, and data transfer from the master 10 a to the slave 20 a is continued. Since no transfer request is issued from the master 10b and the master 10c, a signal from the bus control device 40 is not output. The transfer determination unit 404 within the time limit stores that the transfer from the master 10a ends at the time 10 when the master 10a starts the transfer.
At time 9, the transfer of the master 10a continues and the bus 30 is in use. The master 10c notifies the transfer request and also notifies the transfer number (8), the transfer destination (slave 20a), and the request time (12). Since the bus 30 is in use, the bus control device 40 notifies the master 10c that transfer is possible. Since the master 10b having a higher priority than the master 10c does not request transfer, the master 10c can start transfer because the transfer by the master 10a is completed at time 10, That is, it is calculated from time 11. Further, when the time 11 is compared with the request time 12 from the master 10c, the time 11 is smaller, so 1 indicating that transfer is possible is notified to the master 10c.

時刻10においては、新たにマスタ10bが転送要求を通知する。バス制御装置40は、バス30が使用中であるためマスタ10bに対して転送可能判定を通知する。マスタ10bは優先順位が最も高いので、マスタ10aによる転送が時刻10で完了すると、優先的に転送許可が与えられる。マスタ10bの要求時間は図に示すように15であり、転送可能となる時刻11の方が小さいので、制限時間内転送判定部404は、マスタ10bに対して転送可能であることを示す1を通知する。
マスタ10bが時刻11より転送を開始する場合、図に示すようにデータ転送個数は3なので、転送先のスレーブ20bが0ウェイトのメモリとすると、転送終了時刻は13となる。マスタ10cも時刻9から転送要求を出しているが、優先度の高いマスタ10bに先にバス30の使用権が与えられるので、マスタ10cが転送可能となるのは時刻14からとなる。これはマスタ10cの要求時間12よりも大きいので、この時点で制限時間内転送判定部404は、マスタ10cに対して転送可能でないことを示す0を通知する。マスタ10cは、この転送可能判定の結果を受けて、時刻11の時点で転送要求を取り消すことができる。
At time 10, the master 10b newly notifies a transfer request. Since the bus 30 is in use, the bus control device 40 notifies the master 10b that transfer is possible. Since the master 10b has the highest priority, when transfer by the master 10a is completed at time 10, transfer permission is given preferentially. The request time of the master 10b is 15, as shown in the figure, and since the time 11 at which transfer is possible is smaller, the transfer determination unit 404 within the time limit indicates 1 indicating that transfer is possible to the master 10b. Notice.
When the master 10b starts the transfer from time 11, the number of data transfers is 3, as shown in the figure. Therefore, if the transfer destination slave 20b is a 0-wait memory, the transfer end time is 13. The master 10c also issues a transfer request from time 9, but since the right to use the bus 30 is given to the master 10b having a high priority first, the master 10c can transfer data from time 14. Since this is longer than the request time 12 of the master 10c, at this time, the in-time limit transfer determination unit 404 notifies the master 10c of 0 indicating that transfer is not possible. The master 10c can cancel the transfer request at time 11 in response to the result of the transfer enable determination.

次に、図3のフローチャートを用いて、制限時間内転送判定部404の動作を詳細に説明する。
まず、ステップST201では、現転送終了予測時刻を表す変数CurrentTransferEndと現時刻値を表す変数CurrentTimeに0を設定する。
次に、ステップST220では、優先順位を表す変数priorityを1に設定する。
Next, the operation of the in-time limit transfer determination unit 404 will be described in detail using the flowchart of FIG.
First, in step ST201, 0 is set to a variable CurrentTransferEnd indicating the current transfer end prediction time and a variable CurrentTime indicating the current time value.
Next, in step ST220, a variable priority indicating priority is set to 1.

ステップST221からステップST227では、現在実行中の転送処理の現転送終了予測時刻CurrentTransferEndの算出処理が行われる。
ステップST221では、変数priorityの優先順位を持つマスタのID(MasterPriority(priority))を変数Masterに代入する。
ステップST223では、ステップST221で設定されたMasterに対して転送許可が出されているか否かを判定する。転送許可が出ている場合(Ack(Master)=true)にはステップST224へ、転送許可が出ていない場合(Ack(Master)=false)にはステップST225へ進む。
ステップST224では、現転送終了予測時刻CurrentTransferEndに、現時刻値CurrentTimeと、Masterの要求する転送個数TransCount(Master)にMasterの転送要求先のアクセス時間(AccessTime(Dest(Master)))を乗じた値を加算したものを代入する。
ステップST225では、priorityの値を1加算する。
ステップST226では、マスタの数(NumMaster)とpriorityの値の大小を比較し、NumMasterがpriority以上の場合にはステップST221へ進み、NumMasterがpriorityより小さい場合にはステップST227へ進む。
ステップST227では、CurrentTransferEndにCurrentTimeを代入する。
In steps ST221 to ST227, a process for calculating the current transfer end predicted time CurrentTransferEnd of the currently executing transfer process is performed.
In step ST221, the master ID (Master Priority (priority)) having the priority of the variable priority is assigned to the variable Master.
In step ST223, it is determined whether transfer permission is issued to the master set in step ST221. If transfer permission has been issued (Ack (Master) = true), the process proceeds to step ST224. If transfer permission has not been issued (Ack (Master) = false), the process proceeds to step ST225.
In Step ST224, the current transfer end prediction time CurrentTransferEnd is multiplied by the current time value CurrentTime, and the transfer number TransCount (Master) requested by the Master is multiplied by the access time (AccessTime (Dest (Master))) of the master transfer request destination. Substitute the result of adding.
In step ST225, 1 is added to the value of priority.
In step ST226, the number of masters (NumMaster) and the value of priority are compared, and if NumMaster is greater than or equal to priority, the process proceeds to step ST221. If NumMaster is smaller than priority, the process proceeds to step ST227.
In step ST227, CurrentTime is substituted into CurrentTransferEnd.

ステップST202からステップST211では、転送可能判定処理が行われる。
ステップST202では、判定のための変数が初期化される。まず、転送予測時刻を表す変数TransferEstimateに、CurrentTransferEndとCurrentTimeを比較して大きい方の値が代入される。また、priorityに初期値1が代入される。
ステップST203では、変数priorityの優先順位を持つマスタのID(MasterPriority(priority))を変数Masterに代入する。
ステップST204では、ステップST203で設定されたMasterから転送要求が出されているか否か、また、Masterに対して転送許可が出されているか否かを判定する。転送要求が出ていて(Req(Master)=true)且つ転送許可が出ていない(Ack(Master)=false)場合にはステップST208へ、転送要求が出ていないか(Req(Master)=false)又は転送許可が出ている場合(Ack(Master)=true)にはステップST205へ進む。
ステップST208では、変数TransferEstimateの値と、Masterの転送要求時刻Limit(Master)とを比較し、TransferEstimateの値がLimit(Master)より大きい場合にはステップST209へ進み、TransferEstimateの値がLimit(Master)以下の場合にはステップST211へ進む。
ステップST209では、Masterへの転送可能判定結果InTime(Master)に、転送が可能でないことを示すfalseを設定する。
ステップST211では、Masterへの転送可能判定結果InTime(Master)に、転送が可能であることを示すtrueを設定する。
ステップST210では、現在のTransferEstimateに、Masterの要求する転送個数TransCount(Master)にMasterの転送要求先のアクセス時間(AccessTime(Dest(Master)))を乗じた値を加算したものを新たなTransferEstimateとする。
ステップST205では、priorityの値を1加算する。
ステップST206では、マスタの数(NumMaster)とpriorityの値の大小を比較し、NumMasterがpriority以上の場合にはステップST203へ進み、次の優先順位のマスタについての転送可能判定を行う。NumMasterがpriorityより小さい場合にはステップST230へ進む。
From step ST202 to step ST211, transfer enable determination processing is performed.
In step ST202, variables for determination are initialized. First, the larger value is substituted for Current TransferEnd and CurrentTime, and is assigned to the variable TransferEstimate representing the predicted transfer time. Also, the initial value 1 is assigned to priority.
In step ST203, the ID (Master Priority (priority)) of the master having the priority of the variable priority is assigned to the variable Master.
In step ST204, it is determined whether or not a transfer request is issued from the master set in step ST203, and whether or not transfer permission is issued to the master. When a transfer request has been issued (Req (Master) = true) and transfer permission has not been issued (Ack (Master) = false), the process proceeds to step ST208, where a transfer request has not been issued (Req (Master) = false). ) Or when transfer permission has been issued (Ack (Master) = true), the process proceeds to step ST205.
In Step ST208, the value of the variable TransferEstimate is compared with the transfer request time Limit (Master) of the Master. If the value of TransferEstimate is larger than Limit (Master), the process proceeds to Step ST209, and the value of TransferEstimate is Limit (Master). In the following cases, the process proceeds to step ST211.
In step ST209, false indicating that transfer is not possible is set in the determination result InTime (Master) for transfer to Master.
In step ST211, true indicating that transfer is possible is set in the determination result InTime (Master) of transferability to the Master.
In Step ST210, a new TransferEstimate is obtained by adding the value obtained by multiplying the current TransferEstimate by the transfer number TransferCount (Master) requested by the Master to the access time (AccessTime (Dest (Master))) of the Master transfer request destination. To do.
In step ST205, 1 is added to the value of priority.
In step ST206, the number of masters (NumMaster) is compared with the value of the priority, and if NumMaster is greater than or equal to priority, the process proceeds to step ST203 to determine whether transfer is possible for the next priority master. When NumMaster is smaller than priority, the process proceeds to step ST230.

ステップST230では、制限時間内転送判定部404は次の処理時刻になるまで待機する。
ステップST231では、CurrentTimeを1加算し、ステップST220へ戻って次の時刻での処理を開始する。
In step ST230, the limited time transfer determination unit 404 waits until the next processing time is reached.
In step ST231, 1 is added to CurrentTime, and the process returns to step ST220 to start processing at the next time.

以上の処理により、ステップST209およびステップST211で得られた転送可能判定結果InTime(Master)が、該当するマスタに通知される。転送可能であることを示す判定を受信したマスタは、バス制御装置40から転送許可信号が通知されるのを待って、データ転送を開始する。一方、転送が可能でないことを示す判定結果を受信し、転送要求をキャンセルするマスタは、転送要求信号の出力を止める。
制限時間内転送判定部404は、ステップST220へ戻って次の時刻の処理を開始する際、その時点で各マスタから出力されている信号に基づいて転送可能判定を行うため、転送要求を中止したマスタがある場合には次の時刻の判定処理でそれが反映される。すなわち、結果的に他のマスタに対して、転送可能判定の再計算結果を通知する機能が実現される。
Through the above processing, the transferability determination result InTime (Master) obtained in step ST209 and step ST211 is notified to the corresponding master. The master that has received the determination indicating that transfer is possible waits for the transfer permission signal to be notified from the bus control device 40 and starts data transfer. On the other hand, the master that receives the determination result indicating that transfer is not possible and cancels the transfer request stops outputting the transfer request signal.
When the transfer determination unit 404 within the time limit returns to step ST220 and starts processing at the next time, the transfer request is canceled to perform transfer determination based on the signal output from each master at that time. If there is a master, it is reflected in the determination process at the next time. That is, as a result, a function of notifying another master of the recalculation result of the transfer enable determination is realized.

また、優先順位設定部401は、外部から新たにマスタの優先順位が入力されると、優先順位格納部402内の優先順位を更新する。優先順位が更新されると、新たな優先順位に基づいて転送可能判定を行う必要がある。制限時間内転送判定部404は、ステップST220へ戻って次の時刻の処理を開始する際には、あらためて優先順位格納部402から優先順位を取得して処理するので、結果的に更新後の優先順位が反映される。   Also, the priority order setting unit 401 updates the priority order in the priority order storage unit 402 when a master priority order is newly input from the outside. When the priority is updated, it is necessary to determine whether transfer is possible based on the new priority. When the time limit transfer determination unit 404 returns to step ST220 and starts processing at the next time, the priority order is newly obtained from the priority order storage unit 402 and processed, so that the priority after the update is consequently obtained. The ranking is reflected.

以上のように実施の形態1によれば、バス制御装置40は、マスタ10a,10b,10cから、転送要求とともに転送までに待機可能な時間を取得し、制限時間内転送判定部404は、各マスタが転送可能となるまでの時間を算出し、待機可能な時間内に転送可能となるか否かを判断して各マスタに通知するようにしたので、マスタ側は、転送可能判定が不可であれば転送要求をキャンセルすることができ、マスタ側の小さい処理負担でバス30の使用待ち時間の短縮とシステムの処理性能向上を実現することができる。なお、これによりマスタ10a,10b,10cをハードウェアブロックで構成する場合、マスタの構成が簡易になり、回路規模を小さくすることができる。
また、制限時間内転送判定部404は、時刻毎に転送可能判定を行うので、転送要求を中止したマスタがある場合には次の時刻の判定処理でそれが反映され、結果的に転送可能判定の再計算が実現される。また、マスタの優先順位が変更された場合にも、次時刻の処理の際に更新後の優先順位が反映される。
As described above, according to the first embodiment, the bus control device 40 acquires from the masters 10a, 10b, and 10c the time that can be waited until the transfer together with the transfer request. The master calculates the time until transfer is possible, determines whether transfer is possible within the standby time, and notifies each master, so the master cannot determine whether transfer is possible. If there is, the transfer request can be canceled, and the waiting time for using the bus 30 can be reduced and the processing performance of the system can be improved with a small processing load on the master side. In this case, when the masters 10a, 10b, and 10c are configured by hardware blocks, the configuration of the master is simplified and the circuit scale can be reduced.
In addition, because the transfer determination unit 404 within the time limit determines whether transfer is possible at each time, if there is a master that has canceled the transfer request, it is reflected in the determination process at the next time, and as a result, transfer is determined Is recalculated. Also, when the priority order of the master is changed, the updated priority order is reflected in the next time processing.

この発明の実施の形態1による、バス制御装置を備えた情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus provided with the bus control apparatus by Embodiment 1 of this invention. この発明の実施の形態1による、バス制御装置の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of the bus control apparatus by Embodiment 1 of this invention. この発明の実施の形態1による、制限時間内転送判定部の詳細な動作のフローチャートである。It is a flowchart of the detailed operation | movement of the transfer determination part within a time limit by Embodiment 1 of this invention.

符号の説明Explanation of symbols

10a,10b,10c マスタ、20a,20b スレーブ、30 バス、40 バス制御装置、100 情報処理装置、401 優先順位設定部、402 優先順位格納部、403 使用権制御部、404 制限時間内転送判定部。   10a, 10b, 10c Master, 20a, 20b Slave, 30 bus, 40 bus control device, 100 Information processing device, 401 Priority order setting unit, 402 Priority order storage unit, 403 Usage right control unit, 404 Transfer determination unit within time limit .

Claims (3)

共通バスを介してデータ転送を行う複数のマスタから出力される転送要求を受信し、共通バスが使用可能な状態の場合には上記マスタに対して転送許可を通知するバス制御装置であって、
各マスタに転送許可を与える優先順位を格納する優先順位格納部と、
上記共通バスが使用可能な状態の場合には、上記優先順位に基づいて転送許可を与えるマスタを決定し、そのマスタに対して転送許可を通知するとともに上記共通バスがそのマスタからの入力を受信するように設定する使用権制御部と、
現時点での上記共通バスを使用しているマスタから通知される転送要求データ量に基づいて、各マスタに転送許可が与えられるまでの予想待ち時間を算出し、上記予想待ち時間と、転送要求を出力したマスタから通知される待機可能時間を比較して、上記予想待ち時間が上記待機可能時間以下の場合には転送可能であることを示す判定結果を当該転送要求を出力したマスタに通知し、上記予想待ち時間が上記待機可能時間よりも大きい場合には転送可能でないことを示す判定結果を当該転送要求を出力したマスタに通知する制限時間内転送判定部を備えたことを特徴とするバス制御装置。
A bus control device that receives transfer requests output from a plurality of masters that perform data transfer via a common bus, and notifies transfer permission to the master when the common bus is usable,
A priority storage unit for storing a priority for giving transfer permission to each master;
When the common bus is usable, a master to which transfer permission is granted is determined based on the priority order, the transfer permission is notified to the master, and the common bus receives input from the master. A usage right control unit configured to
Based on the transfer request data amount notified from the master using the common bus at the current time, the expected waiting time until transfer permission is given to each master is calculated, and the expected waiting time and the transfer request are calculated. It compares the allowable waiting time is notified from the output to the master, when the expected waiting time is less than the allowable waiting hours notifies the judgment result indicating that it is possible to transfer to the master that has output the transmission request , characterized in that the expected waiting time and a time limit in the transfer determination unit that notifies a judgment result indicating that it is not be transferred to a master that has output the transfer request is greater than the allowable waiting time Bus control device.
制限時間内転送判定部は、単位時間毎に、その時点で各マスタが出力している転送要求および転送要求データ量に基づいて、予想待ち時間を算出し、転送可能か否かの判定結果を通知することを特徴とする請求項1記載のバス制御装置。 Time limit in the transfer determination unit, for each unit time, based on the transfer request and the transfer request data amount each master at that time is output, calculates the expected waiting time, transferable whether the judgment result The bus control device according to claim 1, wherein: 共通バスを介してデータ転送を行う複数のマスタと、上記複数のマスタから出力される転送要求を受信し、共通バスが使用可能な状態の場合には上記マスタに対して転送許可を通知するバス制御装置を備えた情報処理システムであって、
上記バス制御装置の使用権制御部は、マスタから転送要求を受信すると、上記共通バスが使用可能な状態の場合には、各マスタに転送許可を与える優先順位に基づいて転送許可を与えるマスタを決定し、そのマスタに対して転送許可を通知するとともに上記共通バスがそのマスタからの入力を受信するように設定し、
上記バス制御装置の制限時間内転送判定部は、現時点での上記共通バスを使用しているマスタから通知される転送要求データ量に基づいて、各マスタに転送許可が与えられるまでの予想待ち時間を算出し、上記予想待ち時間と、転送要求を出力したマスタから通知される待機可能時間を比較して、上記予想待ち時間が上記待機可能時間以下の場合には転送可能であることを示す判定結果を当該転送要求を出力したマスタに通知し、上記予想待ち時間が上記待機可能時間よりも大きい場合には転送可能でないことを示す判定結果を当該転送要求を出力したマスタに通知し、
各マスタは、上記判定結果に基づいて転送要求を継続して出力するか、出力を中止するかを判断することを特徴とする情報処理システム。
A plurality of masters that perform data transfer via a common bus and a bus that receives transfer requests output from the plurality of masters and notifies the master of transfer permission when the common bus is usable An information processing system including a control device,
When the use right control unit of the bus control device receives a transfer request from the master, if the common bus is usable, the right-of-use control unit determines a master that grants transfer permission based on the priority order of granting transfer permission to each master. Determine, notify the master of transfer permission and set the common bus to receive input from the master,
Based on the transfer request data amount notified from the master using the common bus at the present time, the transfer determination unit within the time limit of the bus control device is an expected waiting time until transfer permission is given to each master. And the expected waiting time is compared with the waiting time notified from the master that has output the transfer request, and indicates that transfer is possible when the expected waiting time is equal to or shorter than the waiting time. Notifying the master that has output the transfer request, and notifying the master that has output the transfer request the determination result indicating that transfer is not possible if the expected waiting time is greater than the waiting time,
Each master determines whether to continuously output a transfer request or stop outputting based on the determination result.
JP2004360156A 2004-12-13 2004-12-13 Bus control device and information processing system Expired - Fee Related JP4689257B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004360156A JP4689257B2 (en) 2004-12-13 2004-12-13 Bus control device and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004360156A JP4689257B2 (en) 2004-12-13 2004-12-13 Bus control device and information processing system

Publications (2)

Publication Number Publication Date
JP2006171887A JP2006171887A (en) 2006-06-29
JP4689257B2 true JP4689257B2 (en) 2011-05-25

Family

ID=36672603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004360156A Expired - Fee Related JP4689257B2 (en) 2004-12-13 2004-12-13 Bus control device and information processing system

Country Status (1)

Country Link
JP (1) JP4689257B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2447688B (en) * 2007-03-22 2011-05-18 Advanced Risc Mach Ltd A data processing apparatus and method for arbitrating between messages routed over a communication channel
JP2010282352A (en) * 2009-06-03 2010-12-16 Renesas Electronics Corp Dma transfer control device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991247A (en) * 1995-09-27 1997-04-04 Nec Eng Ltd Bus arbiter
JP2000092469A (en) * 1998-09-10 2000-03-31 Mitsubishi Electric Corp Digital reception terminal
JP2000148668A (en) * 1998-11-11 2000-05-30 Nec Niigata Ltd Bus arbitration system
JP2003114870A (en) * 2001-10-04 2003-04-18 Matsushita Electric Ind Co Ltd Bus intervening method and bus intervening device
JP2003316727A (en) * 2002-04-25 2003-11-07 Matsushita Electric Ind Co Ltd Bus arbitration method, and bus arbitration device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991247A (en) * 1995-09-27 1997-04-04 Nec Eng Ltd Bus arbiter
JP2000092469A (en) * 1998-09-10 2000-03-31 Mitsubishi Electric Corp Digital reception terminal
JP2000148668A (en) * 1998-11-11 2000-05-30 Nec Niigata Ltd Bus arbitration system
JP2003114870A (en) * 2001-10-04 2003-04-18 Matsushita Electric Ind Co Ltd Bus intervening method and bus intervening device
JP2003316727A (en) * 2002-04-25 2003-11-07 Matsushita Electric Ind Co Ltd Bus arbitration method, and bus arbitration device

Also Published As

Publication number Publication date
JP2006171887A (en) 2006-06-29

Similar Documents

Publication Publication Date Title
JP2011150397A (en) Bus arbitration device
JP4834362B2 (en) Memory controller.
CN105988968B (en) Semiconductor device with a plurality of semiconductor chips
JP2006293927A (en) Direct memory access controller and system lsi including direct memory access controller
US7490184B2 (en) Systems and methods for data intervention for out-of-order castouts
JP4689257B2 (en) Bus control device and information processing system
JP4446968B2 (en) Data processing device
JP2006215621A (en) Dma controller
JP2010079536A (en) Memory access control circuit and memory access control method
US8239652B2 (en) Data processing system
JPH09153009A (en) Arbitration method for hierarchical constitution bus
JP4177312B2 (en) Bus arbitration system, bus arbitration device, and bridge device
JP2000357148A (en) Data transfer device and its control method, and print system
JP7292044B2 (en) Control device and control method
JPH09269927A (en) Bus access method, bus and bus connection system
JP4163487B2 (en) Memory control apparatus, image forming apparatus, and memory system control method
JP4102405B2 (en) Data processing device, data communication method, and serial input / output device
JP3353368B2 (en) Bus relay device
JP2000250852A (en) Bus arbitrating device, bus system and bus arbitrating method
JP2007108858A (en) Pin sharing device and pin sharing method
JP2006277363A (en) Information transfer system, and image forming device
US20100153610A1 (en) Bus arbiter and bus system
JPH05189311A (en) Cache memory system
JPH11232215A (en) Bus controller, bus master device and method for controlling bus control system
JP2002366511A (en) Bus arbitration circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071011

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100518

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

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

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

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