JP2006350573A - Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program - Google Patents

Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program Download PDF

Info

Publication number
JP2006350573A
JP2006350573A JP2005174381A JP2005174381A JP2006350573A JP 2006350573 A JP2006350573 A JP 2006350573A JP 2005174381 A JP2005174381 A JP 2005174381A JP 2005174381 A JP2005174381 A JP 2005174381A JP 2006350573 A JP2006350573 A JP 2006350573A
Authority
JP
Japan
Prior art keywords
transfer
priority
data transfer
transfer control
data
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
JP2005174381A
Other languages
Japanese (ja)
Inventor
Shozo Moriya
正三 森谷
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2005174381A priority Critical patent/JP2006350573A/en
Publication of JP2006350573A publication Critical patent/JP2006350573A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Bus Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform band guarantee to a prescribed bus master while suppressing that a system design becomes difficult. <P>SOLUTION: When each of the bus masters each controlling data transfer via a bus circuit outputs data transfer requirement, an arbitration circuit 42 makes one bus master execute the data transfer on the basis of each priority set in each bus master performing the output. The arbitration circuit 42 includes: a band measurement circuit 52 measuring an effective band about the data transfer by the bus master outputting band guarantee requirement; and a priority decision circuit 51 changing the priority set in the bus master outputting the band guarantee requirement according to the measured effective band. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、バスを介したデータ転送を制御するデータ転送制御装置,該データ転送制御装置を含むデータ転送装置,該データ転送装置を含む画像形成装置,データ転送制御方法,データ転送制御プログラム、および該制御プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。   The present invention relates to a data transfer control device for controlling data transfer via a bus, a data transfer device including the data transfer control device, an image forming apparatus including the data transfer device, a data transfer control method, a data transfer control program, and The present invention relates to a computer-readable recording medium on which the control program is recorded.

従来から、コンピュータシステムにおいては、複数のデバイスの各々が一つのバス回路を介して互いに通信を行う構成が実現されている。このようなシステムでは、上記バス回路にはバスマスタとバスターゲットとが接続されている。   Conventionally, in a computer system, a configuration has been realized in which each of a plurality of devices communicate with each other via a single bus circuit. In such a system, a bus master and a bus target are connected to the bus circuit.

なお、上記バスマスタとは、データ転送要求を出力することによってバス回路におけるデータ転送路の使用権(該転送路へのアクセス権)を獲得し、該バス回路を介したデータ転送を制御する機能を有するデバイスであり、CPU(Central Processing Unit)インターフェース,DMA(Direct Memory Access)コントローラ等が該当する。   The bus master has a function of acquiring a right to use a data transfer path in the bus circuit (access right to the transfer path) by outputting a data transfer request and controlling data transfer via the bus circuit. The device includes a CPU (Central Processing Unit) interface, a DMA (Direct Memory Access) controller, and the like.

また、上記バスターゲットとは、上記バスマスタによって制御されるデータ転送において、転送元となるデバイスからのデータの読み出し、または、転送先となるデバイスへのデータの書き込みを行うデバイスであり、例えば、RAM(Random Access Memory)コントローラ,ROM(Read Only Memory)コントローラ,I/O(Input/Output)コントローラ等が該当する。   The bus target is a device that reads data from a transfer source device or writes data to a transfer destination device in data transfer controlled by the bus master. A (Random Access Memory) controller, a ROM (Read Only Memory) controller, an I / O (Input / Output) controller, and the like are applicable.

このようなコンピュータシステムにおいて、バスマスタは、上記バス回路を介してバスターゲットにアクセスすることによって、当該バスマスタと当該バスターゲットとの間におけるデータ転送(データ通信)を制御する。   In such a computer system, the bus master controls data transfer (data communication) between the bus master and the bus target by accessing the bus target via the bus circuit.

また、上述したコンピュータシステムにおいては、複数のバスマスタが同時に同一のデータ転送路を使用する事態を回避するために、バスアービタによる調停が行われる。この調停について以下説明する。バスマスタは、バスターゲットへのアクセスを行おうとする場合、まず、データ転送要求(バス使用要求)を出力する。これに対し、上記バスアービタは、当該データ転送要求を出力したバスマスタに対して転送許可(バス使用許可)を与える。そして、バスマスタは、この転送許可を得ることによって、バス回路に含まれるデータ転送路を使用することができ、バス回路を介してバスターゲットにアクセスすることができ、当該バスマスタと当該バスターゲットとの間でのデータ転送を制御することができる。   In the computer system described above, arbitration by the bus arbiter is performed in order to avoid a situation in which a plurality of bus masters simultaneously use the same data transfer path. This arbitration will be described below. When attempting to access a bus target, the bus master first outputs a data transfer request (bus use request). On the other hand, the bus arbiter gives transfer permission (bus use permission) to the bus master that has output the data transfer request. The bus master can use the data transfer path included in the bus circuit by obtaining this transfer permission, can access the bus target via the bus circuit, and can connect the bus master and the bus target. The data transfer between them can be controlled.

ここで、各々のバスマスタには、データ転送路の使用権の優先度が割りふられており、2以上のバスマスタが同時にデータ転送要求を出力した場合、バスアービタは、最も高い優先度(以下、「最高優先度」と称する)が設定されているバスマスタに対してのみ転送許可を与えている。このようにして、バスアービタは、各バスマスタからのデータ転送要求を調停し、複数のバスマスタが同時にバス回路に含まれるデータ転送路を使用する事態を回避している。   Here, the priority of the right to use the data transfer path is assigned to each bus master. When two or more bus masters simultaneously output data transfer requests, the bus arbiter has the highest priority (hereinafter, “ Transfer permission is given only to a bus master for which "the highest priority" is set. In this way, the bus arbiter arbitrates the data transfer request from each bus master, and avoids a situation in which a plurality of bus masters simultaneously use the data transfer path included in the bus circuit.

ところで、以上示したようなコンピュータシステムが例えばプリンタや映像表示装置等に適用される場合、所定のバスマスタについては、該バスマスタの帯域をある程度以上保証する(「帯域保証」と称する)ことが好ましい。なお、バスマスタの帯域とは、該バスマスタが単位時間当たりに確保できる転送データ量を示したものである。   By the way, when the computer system as described above is applied to, for example, a printer, a video display device, or the like, it is preferable to guarantee the bandwidth of the bus master to some extent (referred to as “bandwidth guarantee”). The bus master bandwidth indicates the amount of transfer data that the bus master can secure per unit time.

ここで、所定のバスマスタに対して帯域保証すべき理由を、プリンタの場合を例にして以下説明する。プリンタの場合、プリント処理を実行中のプリンタエンジンには単位時間当たりに所定量以上の画像データを連続して送信しなければ、プリンタエンジンへの画像データの供給が上記プリント処理に間に合わず、プリントされる画像が異常なものになる可能性がある。それゆえ、プリンタエンジンに対しての画像データの転送を制御するバスマスタに対しては帯域保証を行うことが好ましいのである。
特開平8−63429号公報(1996年3月8日公開) 特開平11−184807号公報(1999年7月9日公開) 特開2000−207355号公報(2000年7月28日公開) 特開2001−117861号公報(2001年4月27日公開)
Here, the reason why the bandwidth should be guaranteed for a predetermined bus master will be described below using a printer as an example. In the case of a printer, if image data of a predetermined amount or more per unit time is not continuously transmitted to a printer engine that is executing print processing, supply of image data to the printer engine will not be in time for the above print processing, and print There is a possibility that the displayed image will be abnormal. Therefore, it is preferable to guarantee the bandwidth for the bus master that controls the transfer of image data to the printer engine.
JP-A-8-63429 (published March 8, 1996) JP 11-184807 A (published July 9, 1999) JP 2000-207355 A (released July 28, 2000) JP 2001-117861 A (published on April 27, 2001)

ここで、各バスマスタのデータ転送要求を調停する技術は、以上示した特許文献1〜4に開示されている。   Here, techniques for arbitrating the data transfer request of each bus master are disclosed in Patent Documents 1 to 4 described above.

特許文献1または特許文献3によれば、各バスマスタに割りふられる優先度を固定とせずに定期的に切り換え、かつ、バスマスタ毎の最高優先度の割りふられる頻度を設定する手法が開示されている。   According to Patent Document 1 or Patent Document 3, a method is disclosed in which the priority assigned to each bus master is switched periodically without being fixed, and the frequency assigned the highest priority for each bus master is set. Yes.

しかし、この手法を用いて所定のバスマスタの帯域保証を行うこととすると、各バスマスタおよびバスの性能,各バスマスタの帯域の限界値,各バスマスタの転送要求の頻度等を予測するだけでなく、さらに所定のバスマスタの帯域を予測した上で、バスマスタ毎の最高優先度の割りふられる頻度および優先度切り換えのアルゴリズムを設定しなければならず、このような設定はシステム設計の難解化を招来するという問題が生じる。   However, if this method is used to guarantee the bandwidth of a given bus master, not only the performance of each bus master and bus, the limit value of the bandwidth of each bus master, the frequency of transfer requests of each bus master, etc. After predicting the bandwidth of a given bus master, it is necessary to set the frequency of assigning the highest priority for each bus master and the algorithm for switching the priority, and such setting will lead to system design obfuscation. Problems arise.

さらに、特許文献2によれば、バスマスタのデータ転送要求の出力時間(1回要求する当たりの要求時間)をバスマスタ毎で異なるように制限する手法が開示されている。また、特許文献4によれば、各々のバスマスタについて、1回当たりのバス回路の使用時間をバスマスタ毎で異なるように設定できる手法が開示されている。   Further, Patent Document 2 discloses a method of limiting the output time of a bus master data transfer request (request time per request) so as to be different for each bus master. Further, according to Patent Document 4, a method is disclosed in which each bus master can set a different usage time of a bus circuit for each bus master.

しかし、これら手法を用いて所定のバスマスタの帯域保証を行う場合においても、各バスマスタおよびバスの性能,各バスマスタの帯域の限界値,各バスマスタの転送要求の頻度等を予測するだけでなく、所定のバスマスタの帯域を予測した上で、各バスマスタにおけるデータ転送要求の要求時間やバス回路の使用時間を設定しなければならず、このような設定はシステム設計の難解化を招来するという問題が生じる。   However, even when these methods are used to guarantee the bandwidth of a predetermined bus master, not only the performance of each bus master and the bus, the limit value of the bandwidth of each bus master, the frequency of transfer requests of each bus master, etc. It is necessary to set the request time of data transfer request and the use time of the bus circuit in each bus master after predicting the bandwidth of the bus master, and such setting causes a problem that the system design becomes difficult. .

本発明は、システム設計の難解化を抑制しつつ、所定の転送制御部(バスマスタ)に対する帯域保証を可能とするデータ転送制御装置,データ転送制御方法,データ転送装置,画像形成装置,データ転送制御プログラム,および該制御プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。   The present invention relates to a data transfer control device, a data transfer control method, a data transfer device, an image forming apparatus, and a data transfer control capable of guaranteeing a bandwidth for a predetermined transfer control unit (bus master) while suppressing the difficulty of system design. It is an object of the present invention to provide a program and a computer-readable recording medium on which the control program is recorded.

本発明のデータ転送制御装置は、上記目的を達成するために、転送回路を介したデータ転送を制御する複数の転送制御部が上記転送回路を共有しており、各転送制御部からデータ転送要求を受信すると、上記各転送制御部に設定される各優先度に基づいて、いずれか一つの転送制御部によるデータ転送を実行させるデータ転送制御装置において、上記複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量を計測する計測手段と、上記計測された単位時間当たりの転送データ量に応じて上記所定の転送制御部に設定される優先度を変更する優先度制御手段と、を含むことを特徴とする。   In the data transfer control device of the present invention, in order to achieve the above object, a plurality of transfer control units that control data transfer through the transfer circuit share the transfer circuit, and each transfer control unit requests a data transfer request. In the data transfer control device that executes data transfer by any one transfer control unit based on each priority set in each transfer control unit, a predetermined one of the plurality of transfer control units For data transfer by the transfer control unit, the measuring means for measuring the transfer data amount per unit time and the priority set in the predetermined transfer control unit according to the measured transfer data amount per unit time are changed. Priority control means.

上記構成によれば、複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量をリアルタイムに計測でき(以下、計測された単位時間当たりの転送データ量を「実効帯域」と称す)、この実効帯域に応じて上記所定の転送制御部に設定される優先度を変更できる。   According to the above configuration, the amount of transfer data per unit time can be measured in real time for data transfer by a predetermined transfer control unit among a plurality of transfer control units (hereinafter, the amount of transfer data measured per unit time is measured). The priority set in the predetermined transfer control unit can be changed according to the effective bandwidth.

それゆえ、上記実効帯域がある程度以上維持されるように、所定の転送制御部に設定される優先度を適宜変更することによって所定の転送制御部によるデータ転送の実行頻度を調整すれば、所定の転送制御部に対して帯域保証を行うことが可能となる。   Therefore, if the execution frequency of the data transfer by the predetermined transfer control unit is adjusted by appropriately changing the priority set in the predetermined transfer control unit so that the effective bandwidth is maintained to some extent, the predetermined bandwidth Bandwidth guarantee can be performed for the transfer control unit.

また、以上の構成によれば、上記計測手段および上記優先度変更手段を備えるだけで所定の転送制御部に対して帯域保証を行えるため、所定の転送制御部の帯域を予測した上でのシステム設計を行う必要がなくなる。それゆえ、システム設計の難解化を抑制しつつ、所定の転送制御部に対する帯域保証が可能になるという効果を奏する。   Further, according to the above configuration, since the bandwidth can be guaranteed for the predetermined transfer control unit only by providing the measuring unit and the priority changing unit, the system after predicting the band of the predetermined transfer control unit No need to design. Therefore, there is an effect that it is possible to guarantee the bandwidth for a predetermined transfer control unit while suppressing the obfuscation of the system design.

それゆえ、本発明のデータ転送制御装置は、上記構成に加えて、上記優先度制御手段は、上記実効帯域が目標値以下の場合、目標値を超える場合よりも、上記所定の転送制御部に設定する優先度を向上させることが好ましい。   Therefore, in addition to the above configuration, the data transfer control device according to the present invention is configured so that the priority control means is connected to the predetermined transfer control unit when the effective bandwidth is equal to or less than the target value, rather than exceeding the target value. It is preferable to improve the priority to be set.

上記構成によれば、所定の転送制御部における実効帯域が目標値以下になると、所定の転送制御部によるデータ転送の実行頻度を増加させることができる。それゆえ、所定の転送制御部の実効帯域を目標値から過度に低下することを抑制でき、これにより、該実効帯域をある程度以上維持することが容易となる。また、この構成によれば、所定の転送制御部の実効帯域が上記目標値を超えると、上記目標値以下の場合よりも所定の転送制御部に設定される優先度が低下することとなり、所定の転送制御部によるデータ転送の実行頻度を減少させることができる。それゆえ、所定の転送制御部の実効帯域が目標値を越えて過度になりつつある場合、他の転送制御部にデータ転送を制御させる余地を与えることが可能となる。したがって、所定の転送制御部における実効帯域が過剰になっているにも拘わらず、所定の転送制御部によるデータ転送が最優先されてしまい、他の転送制御部の帯域が無意味に圧迫されるという事態を抑制することができる。   According to the above configuration, when the effective bandwidth in the predetermined transfer control unit becomes equal to or less than the target value, it is possible to increase the execution frequency of data transfer by the predetermined transfer control unit. Therefore, it is possible to suppress the effective band of the predetermined transfer control unit from being excessively reduced from the target value, and it becomes easy to maintain the effective band to a certain extent. Further, according to this configuration, when the effective bandwidth of the predetermined transfer control unit exceeds the target value, the priority set in the predetermined transfer control unit is lower than in the case of the target value or less. The frequency of execution of data transfer by the transfer control unit can be reduced. Therefore, when the effective bandwidth of a predetermined transfer control unit is excessive beyond the target value, it is possible to give room for other transfer control units to control data transfer. Therefore, although the effective bandwidth in the predetermined transfer control unit is excessive, the data transfer by the predetermined transfer control unit has the highest priority, and the bandwidth of the other transfer control unit is squeezed meaninglessly. Can be suppressed.

また、本発明のデータ転送制御装置は、上記構成に加えて、上記優先度制御手段は、上記実効帯域が目標値以下の場合、上記所定の転送制御部に、最も高い優先度を設定することが好ましい。   Further, in the data transfer control device of the present invention, in addition to the above configuration, the priority control means sets the highest priority to the predetermined transfer control unit when the effective bandwidth is equal to or less than a target value. Is preferred.

上記構成によれば、所定の転送制御部における実効帯域が目標値以下になると、所定の転送制御部によるデータ転送を最優先で行わせることができ、所定の転送制御部の実効帯域の維持がさらに容易となる。   According to the above configuration, when the effective bandwidth in the predetermined transfer control unit falls below the target value, data transfer by the predetermined transfer control unit can be performed with the highest priority, and the effective bandwidth of the predetermined transfer control unit can be maintained. It becomes easier.

また、本発明のデータ転送制御装置は、上記構成に加えて、所定規則に従った優先度が転送制御部毎に与えられており、上記優先度制御手段は、上記実効帯域が目標値以下の場合、上記所定の転送制御部に、上記所定規則に従った各優先度よりも高い優先度を上記最も高い優先度として設定し、他の転送制御部に、当該他の転送制御部に与えられている上記所定規則に従った優先度を設定し、上記実効帯域が目標値を越える場合、上記所定の転送制御部に、上記所定規則に従って当該所定の転送制御部に与えられている優先度を設定し、他の転送制御部に、上記所定規則に従って当該他の転送制御部に与えられている優先度を設定する構成であってもよい。   In addition to the above configuration, the data transfer control device of the present invention is given a priority according to a predetermined rule for each transfer control unit, and the priority control means has the effective bandwidth of a target value or less. In this case, a priority higher than each priority according to the predetermined rule is set as the highest priority in the predetermined transfer control unit, and the other transfer control unit is given to the other transfer control unit. And when the effective bandwidth exceeds a target value, the priority given to the predetermined transfer control unit according to the predetermined rule is set to the predetermined transfer control unit. The configuration may be such that the priority given to the other transfer control unit is set to the other transfer control unit according to the predetermined rule.

上記構成によれば、所定の転送制御部以外の転送制御部には、常に、所定の規則に従って該転送制御部に与えられている優先度が設定される。また、所定の転送制御部においても、上記実効帯域が目標値を超える場合は、所定の規則に従って該所定の転送制御部に与えられている優先度が設定される。これに対し、上記実効帯域が目標値以下の場合、上記所定の転送制御部には、上記所定規則に従った各優先度よりも高い優先度が設定される。これにより、上記実効帯域が目標値以下の場合、上記実効帯域が目標値を越える場合よりも、所定の転送制御部に設定される優先度を向上させることができ、かつ、所定の転送制御部に最も高い優先度を設定することができる。   According to the above configuration, the priority given to the transfer control unit is always set to the transfer control unit other than the predetermined transfer control unit according to the predetermined rule. Also, in the predetermined transfer control unit, when the effective bandwidth exceeds the target value, the priority given to the predetermined transfer control unit is set according to a predetermined rule. On the other hand, when the effective bandwidth is equal to or less than the target value, a priority higher than each priority according to the predetermined rule is set in the predetermined transfer control unit. Thereby, when the effective band is equal to or less than the target value, the priority set in the predetermined transfer control unit can be improved as compared with the case where the effective band exceeds the target value, and the predetermined transfer control unit Can be given the highest priority.

また、本発明のデータ転送制御装置において、上記実効帯域が目標値以下の所定の転送制御部が複数ある場合、どの所定の転送制御部に、上記最も高い優先度を設定すべきなのかという問題が生じる。これは、上記複数の転送制御部の各々に、上記最も高い優先度を設定してしまうと、どの所定の転送制御部によるデータ転送を実行すべきなのかをデータ転送制御装置が判断できなくなるからである。   Further, in the data transfer control device of the present invention, when there are a plurality of predetermined transfer control units whose effective bandwidth is equal to or less than the target value, to which predetermined transfer control unit the highest priority should be set Occurs. This is because if the highest priority is set for each of the plurality of transfer control units, the data transfer control device cannot determine which predetermined transfer control unit should perform data transfer. It is.

そこで、本発明のデータ転送制御装置は、上記実効帯域が目標値以下の所定の転送制御部が複数ある場合、上記所定規則に従って各所定の転送制御部に与えられている各々の優先度に基づいて、いずれか一つの所定の転送制御部のみに、上記所定規則に従った各優先度よりも高い優先度を設定する構成であってもよい。これにより、データ転送制御装置は、どの所定の転送制御部によるデータ転送を実行すべきなのかを判断することができる。   Therefore, when there are a plurality of predetermined transfer control units whose effective bandwidth is equal to or less than the target value, the data transfer control device of the present invention is based on each priority given to each predetermined transfer control unit according to the predetermined rule. Thus, a higher priority than each priority according to the predetermined rule may be set only in any one predetermined transfer control unit. Thus, the data transfer control device can determine which predetermined transfer control unit should perform data transfer.

また、本発明のデータ転送制御装置は、上記実効帯域が目標値以下の所定の転送制御部が複数ある場合、上記目標値に対する上記転送データ量の不足度を示した不足度パラメータが最も高い上記所定の転送制御部のみに、上記所定規則に従った各優先度よりも高い優先度を与える構成であってもよい。これにより、目標値に対する実効帯域の不足度合が最も高く、データ転送を行う必要性の最も高い転送制御部によるデータ転送を最優先することができる。   In the data transfer control device of the present invention, when there are a plurality of predetermined transfer control units whose effective bandwidth is equal to or less than the target value, the deficiency parameter indicating the deficiency of the transfer data amount with respect to the target value is the highest. A configuration may be adopted in which only a predetermined transfer control unit is given a priority higher than each priority according to the predetermined rule. As a result, it is possible to give the highest priority to data transfer by the transfer control unit having the highest degree of effective bandwidth shortage with respect to the target value and the highest necessity for data transfer.

また、上記不足度パラメータとは、上記目標値と上記転送データ量との差分の絶対値であってもよい。これにより、上記実効帯域が上記目標値から最も離れている所定の転送制御部によるデータ転送を最優先することができる。   The deficiency parameter may be an absolute value of a difference between the target value and the transfer data amount. Thereby, the highest priority can be given to data transfer by a predetermined transfer control unit whose effective bandwidth is farthest from the target value.

さらに、上記不足度パラメータとは、上記目標値と上記転送データ量との差分の絶対値を上記目標値で除算した値であってもよい。これにより、上記目標値に対する上記実効帯域の不足量の占める割合の最も大きい所定の転送制御部のデータ転送を最優先することができる。このような構成は、所定の転送制御部の各々が、互いに上記目標値を大幅に異ならせている場合に好適である。   Further, the deficiency parameter may be a value obtained by dividing an absolute value of a difference between the target value and the transfer data amount by the target value. Thereby, the highest priority can be given to the data transfer of a predetermined transfer control unit in which the ratio of the insufficient amount of the effective bandwidth to the target value is the largest. Such a configuration is suitable when each of the predetermined transfer control units greatly differs from the target value.

また、本発明のデータ転送制御装置において、上記所定の転送制御部とは、帯域保証要求を出力している転送制御部であることが好ましい。   In the data transfer control device of the present invention, the predetermined transfer control unit is preferably a transfer control unit that outputs a bandwidth guarantee request.

上記構成によれば、帯域保証要求を出力している転送制御部のみを対象として上記した優先度の変更処理を行うこととなる。したがって、帯域保証の必要な転送制御部のみを対象にし、かつ、帯域保証の必要な場合にのみ上記した優先度の変更処理を行うようにできる。   According to the above configuration, the priority change process described above is performed only for the transfer control unit that outputs the bandwidth guarantee request. Therefore, only the transfer control unit requiring bandwidth guarantee can be targeted, and the priority changing process described above can be performed only when bandwidth guarantee is necessary.

さらに、本発明のデータ転送制御装置は、上記構成に加えて、上記計測手段が、上記所定の転送制御部が上記帯域保証要求を出力している期間中のみ、当該所定の転送制御部に制御されるデータ転送についての上記実効帯域を計測することが好ましい。   Furthermore, in addition to the above-described configuration, the data transfer control device of the present invention controls the measurement unit to control the predetermined transfer control unit only during a period in which the predetermined transfer control unit outputs the bandwidth guarantee request. It is preferable to measure the effective bandwidth for the data transfer to be performed.

上記構成によれば、上記計測手段は、帯域保証要求が出力されている期間中のみに限定して実効帯域の計測を行うこととなる。これにより、上記計測手段は、常に計測を行うことなく、必要期間内のみに限定して計測を行うこととなり、計測が継続されることによる誤差の拡大を抑制することができ、より正確な測定を行うことができる。   According to the above configuration, the measuring unit measures the effective band only during the period in which the band guarantee request is output. As a result, the measurement means performs measurement only within a necessary period without always performing measurement, and can suppress an increase in error due to continued measurement, thereby enabling more accurate measurement. It can be performed.

また、本発明のデータ転送制御装置は、上記構成に加えて、上記計測手段が、所定期間毎に、計測した上記実効帯域をリセットする構成であることが好ましい。   In addition to the above-described configuration, the data transfer control device of the present invention preferably has a configuration in which the measurement unit resets the measured effective band every predetermined period.

上記構成によれば、所定期間毎に計測した上記実効帯域幅をリセットしているため、計測中の実効帯域に誤差が生じたとしても、所定期間毎に当該誤差をキャンセルすることが可能になる。   According to the above configuration, since the effective bandwidth measured every predetermined period is reset, even if an error occurs in the effective band being measured, the error can be canceled every predetermined period. .

また、本発明は、上記データ転送制御装置と上記転送回路と上記転送回路を共用する上記複数の転送制御部とを含むデータ転送装置と表現することも可能であり、このデータ転送装置においても、上記データ転送制御装置と略同一の効果を奏することができる。   The present invention can also be expressed as a data transfer device including the data transfer control device, the transfer circuit, and the plurality of transfer control units sharing the transfer circuit. It is possible to achieve substantially the same effect as the data transfer control device.

さらに、本発明のデータ転送装置は、画像を印刷する処理を行う印刷部と上記印刷部に対する画像データの転送を制御する画像データ転送制御部とを含む画像形成装置に適用することも可能である。この場合、上記画像データ転送制御部を上記所定の転送制御部として構成すれば、上記画像データ転送制御部による画像データ転送の帯域保証を行うことができ、印刷部に対して連続的に一定量以上の画像データの供給を行うことができる。それゆえ、印刷部に対する画像データの供給不足による印刷不良を抑制することができる。   Furthermore, the data transfer apparatus of the present invention can be applied to an image forming apparatus including a printing unit that performs processing for printing an image and an image data transfer control unit that controls transfer of image data to the printing unit. . In this case, if the image data transfer control unit is configured as the predetermined transfer control unit, the image data transfer bandwidth can be guaranteed by the image data transfer control unit. The above image data can be supplied. Therefore, it is possible to suppress printing defects due to insufficient supply of image data to the printing unit.

また、本発明は、転送回路を介したデータ転送を制御する複数の転送制御部が上記転送回路を共有しており、各転送制御部からデータ転送要求を受信すると、上記各転送制御部に設定される各優先度に基づいて、いずれか一つの転送制御部によるデータ転送を実行させるデータ転送制御方法において、上記複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量を計測する工程と、上記計測された単位時間当たりの転送データ量に応じて上記所定の転送制御部に設定される優先度を変更する工程と、を含むデータ転送制御方法、とも表現することができる。このデータ転送制御方法においても、上述したデータ転送制御装置と略同一の効果を奏することが可能である。   Further, according to the present invention, a plurality of transfer control units that control data transfer through the transfer circuit share the transfer circuit. When a data transfer request is received from each transfer control unit, the transfer control unit sets the transfer control unit. In the data transfer control method for executing data transfer by any one transfer control unit based on each priority, data transfer by a predetermined transfer control unit among the plurality of transfer control units per unit time A data transfer control method comprising: a step of measuring a transfer data amount of: and a step of changing a priority set in the predetermined transfer control unit in accordance with the measured transfer data amount per unit time Can be expressed. This data transfer control method can achieve substantially the same effect as the above-described data transfer control device.

なお、本発明は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させるデータ転送制御プログラムが本発明の範疇に入り、また、このデータ転送制御プログラムを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に入る。   The present invention may be realized by a computer. In this case, a data transfer control program that causes the computer to operate as each of the above means falls within the scope of the present invention, and the computer that records this data transfer control program A readable recording medium falls within the scope of the present invention.

以上のように、本発明のデータ転送制御装置は、上記複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量を計測する計測手段と、上記計測された単位時間当たりの転送データ量に応じて上記所定の転送制御部に設定される優先度を変更する優先度制御手段と、を含む構成である。   As described above, the data transfer control device according to the present invention includes the measuring unit that measures the transfer data amount per unit time for the data transfer by the predetermined transfer control unit among the plurality of transfer control units, and the above-described measurement. Priority control means for changing the priority set in the predetermined transfer control unit in accordance with the transfer data amount per unit time.

それゆえ、上記所定の転送制御部によるデータ転送の実効帯域がある程度以上維持されるように、所定の転送制御部に設定される優先度を適宜変更することによって所定の転送制御部によるデータ転送の実行頻度を調整すれば、所定の転送制御部に対して帯域保証を行うことが可能となる。   Therefore, by appropriately changing the priority set in the predetermined transfer control unit so that the effective band of the data transfer by the predetermined transfer control unit is maintained to some extent, the data transfer by the predetermined transfer control unit is changed. By adjusting the execution frequency, it is possible to guarantee the bandwidth to a predetermined transfer control unit.

また、以上の構成によれば、上記計測手段および上記優先度変更手段を備えるだけで所定の転送制御部に対して帯域保証を行えるため、所定の転送制御部の帯域を予測した上でのシステム設計を行う必要がなくなる。それゆえ、システム設計の難解化を抑制しつつ、所定の転送制御部に対する帯域保証が可能になるという効果を奏する。   Further, according to the above configuration, since the bandwidth can be guaranteed for the predetermined transfer control unit only by providing the measuring unit and the priority changing unit, the system after predicting the band of the predetermined transfer control unit No need to design. Therefore, there is an effect that it is possible to guarantee the bandwidth for a predetermined transfer control unit while suppressing the obfuscation of the system design.

なお、本発明のデータ転送制御方法,データ転送装置,画像形成装置,データ転送制御プログラム、および該制御プログラムを記録したコンピュータ読み取り可能な記録媒体も、上記した本発明のデータ転送制御装置と略同一の効果を奏する。   The data transfer control method, data transfer apparatus, image forming apparatus, data transfer control program, and computer-readable recording medium on which the control program is recorded are also substantially the same as the above-described data transfer control apparatus of the present invention. The effect of.

以下、本発明のデータ転送制御装置の一実施形態を図に基づいて説明する。なお、本実施形態では、プリンタ内部のプリンタコントローラに備えられている調停回路を上記データ転送制御装置として説明する。   Hereinafter, an embodiment of a data transfer control device of the present invention will be described with reference to the drawings. In the present embodiment, an arbitration circuit provided in a printer controller in the printer will be described as the data transfer control device.

まず、上記したプリンタ内部の構成の概略について説明する。図2は、プリンタ内部の構成を示したブロック図である。図2に示すように、プリンタ10は、プリンタコントローラ11,プリンタエンジン12を備える構成である。   First, an outline of the internal configuration of the printer will be described. FIG. 2 is a block diagram showing the internal configuration of the printer. As shown in FIG. 2, the printer 10 includes a printer controller 11 and a printer engine 12.

プリンタ(画像形成装置)10は、外部から入力したデータに基づいて用紙上に画像を形成する装置であり、例えば、電子写真方式の複写機,インクジェットプリンタ,MFP(Multi Function Printer),写真焼付装置等が該当する。   A printer (image forming apparatus) 10 is an apparatus that forms an image on paper based on data input from the outside. For example, an electrophotographic copying machine, an ink jet printer, an MFP (Multi Function Printer), a photo printing apparatus Etc.

プリンタコントローラ11は、プリンタ10の動作を統括的に制御する制御装置(情報処理装置)であり、図示するように、CPU,RAM,ROM,I/Oデバイス,システムコントローラ等から構成されるコンピュータである。また、プリンタコントローラ11は、プリンタ言語で示されたデータを外部から受信し、受信したデータをビットマップ形式の画像データに変換してプリンタエンジン12へ送る処理を実行する。   The printer controller 11 is a control device (information processing device) that comprehensively controls the operation of the printer 10, and as shown in the figure, is a computer composed of a CPU, RAM, ROM, I / O device, system controller, and the like. is there. Further, the printer controller 11 executes processing for receiving data indicated in the printer language from the outside, converting the received data into image data in a bitmap format, and sending the image data to the printer engine 12.

プリンタエンジン(印刷部)12は、プリンタコントローラ11から画像データを受信し、受信した画像データに基づいて用紙上に画像を形成する処理を行う装置である。   The printer engine (printing unit) 12 is an apparatus that receives image data from the printer controller 11 and performs processing for forming an image on a sheet based on the received image data.

つぎに、プリンタコントローラ11の内部構成について詳細に説明する。図2に示すように、プリンタコントローラ11は、CPU21,RAM22,ROM23,I/Oデバイス24,システムコントローラ25を含む構成である。なお、CPU21,RAM22,ROM23,I/Oデバイス24,プリンタエンジン12の各々は、システムコントローラ25に接続されている。   Next, the internal configuration of the printer controller 11 will be described in detail. As shown in FIG. 2, the printer controller 11 includes a CPU 21, a RAM 22, a ROM 23, an I / O device 24, and a system controller 25. Each of the CPU 21, RAM 22, ROM 23, I / O device 24, and printer engine 12 is connected to the system controller 25.

CPU21は、データの変換・加工処理や各種の演算処理等の情報処理を行うものである。具体的に、CPU21は、RAM22にアクセスすることによって、RAM22に展開されている各種データの加工・変換・演算処理を行う。また、CPU21は、システムコントローラ25にコマンドを与えることによって、RAM22,ROM23,I/Oデバイス24のいずれかのデバイスから、RAM22,ROM23,I/Oデバイス24,プリンタエンジン12のいずれかのデバイスにデータを転送させることができる。   The CPU 21 performs information processing such as data conversion / processing and various arithmetic processes. Specifically, the CPU 21 performs processing / conversion / calculation processing of various data expanded in the RAM 22 by accessing the RAM 22. Further, the CPU 21 gives a command to the system controller 25 to change any one of the RAM 22, ROM 23, and I / O device 24 to any one of the RAM 22, ROM 23, I / O device 24, and printer engine 12. Data can be transferred.

RAM22は、プリンタコントローラ11における各種の制御プログラムおよび該制御プログラムの実行に必要な所定のデータが書き込まれ、また、外部からから送られた各種データが書き込まれるメモリである。ROM23は、読み取り専用の記憶装置であり各種データが保存されるものである。I/Oデバイス24は、外部との間でデータの入出力を行うものであり、通信インターフェース,キーボード,表示装置等が該当する。   The RAM 22 is a memory in which various control programs in the printer controller 11 and predetermined data necessary for executing the control programs are written, and various data sent from the outside are written. The ROM 23 is a read-only storage device and stores various data. The I / O device 24 performs data input / output with the outside, and corresponds to a communication interface, a keyboard, a display device, and the like.

システムコントローラ25は、CPU21,RAM22,ROM23,I/Oデバイス24,プリンタエンジン12の各々のデバイス間のデータ(プログラムを含む)転送を実現するものであり、例えば、LSI(Large Scale Integration)により構成される。   The system controller 25 realizes data (including a program) transfer between the CPU 21, RAM 22, ROM 23, I / O device 24, and printer engine 12, and is configured by, for example, LSI (Large Scale Integration). Is done.

なお、以下では、データ転送先またはデータ転送先となり得るCPU21,RAM22,ROM23,I/Oデバイス24,プリンタエンジン12を、各々、「デバイス」と称することがある。   Hereinafter, the CPU 21, RAM 22, ROM 23, I / O device 24, and printer engine 12 that may be the data transfer destination or data transfer destination may be referred to as “devices”.

また、システムコントローラ(データ転送装置)25は、図2に示すように、データ転送を行うためのバス回路37を含み、さらに、このバス回路37に接続されるCPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31c,ROMコントローラ32a,RAMコントローラ32b,I/Oコントローラ32cを含む構成である。   Further, as shown in FIG. 2, the system controller (data transfer device) 25 includes a bus circuit 37 for performing data transfer, and further, a CPU interface 31a, a DMA controller 31b, an engine connected to the bus circuit 37. The configuration includes an interface 31c, a ROM controller 32a, a RAM controller 32b, and an I / O controller 32c.

CPUインターフェース31aはCPU21に接続され、エンジンインターフェース31cはプリンタエンジン12に接続され、ROMコントローラ32aはROM23に接続され、RAMコントローラ32bはRAM22に接続され、I/Oコントローラ32cはI/Oデバイス24に接続される。   The CPU interface 31 a is connected to the CPU 21, the engine interface 31 c is connected to the printer engine 12, the ROM controller 32 a is connected to the ROM 23, the RAM controller 32 b is connected to the RAM 22, and the I / O controller 32 c is connected to the I / O device 24. Connected.

CPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31cは、システムコントローラ25にて実現されるデータ転送を制御するものである。   The CPU interface 31a, DMA controller 31b, and engine interface 31c control data transfer realized by the system controller 25.

具体的に、CPUインターフェース31aまたはDMAコントローラ31bは、ROM23,RAM22,I/Oデバイス24の各々のデバイス間のデータ転送を制御する。なお、CPUインターフェース31によって制御されるデータ転送では、データは、転送元デバイスからバス回路37およびCPUインターフェース31を介してCPU21へ転送され、CPU21からCPUインターフェース31およびバス回路37を介して転送先デバイスへ転送される。また、DMAコントローラ31bによって制御されるデータ転送では、データは、転送元デバイスからバス回路37を介してDMAコントローラ31bへ転送され、DMAコントローラ31bからバス回路37を介して転送先デバイスへ転送される。   Specifically, the CPU interface 31 a or the DMA controller 31 b controls data transfer between the ROM 23, RAM 22, and I / O device 24. In the data transfer controlled by the CPU interface 31, data is transferred from the transfer source device to the CPU 21 via the bus circuit 37 and the CPU interface 31, and from the CPU 21 to the transfer destination device via the CPU interface 31 and the bus circuit 37. Forwarded to In data transfer controlled by the DMA controller 31b, data is transferred from the transfer source device to the DMA controller 31b via the bus circuit 37, and transferred from the DMA controller 31b to the transfer destination device via the bus circuit 37. .

なお、エンジンインターフェース(画像データ転送制御部)31cは、RAM22からプリンタエンジン12へのデータ転送を制御する。このデータ転送において、データは、RAM22からバス回路37を介してエンジンインターフェース31cへ転送され、エンジンインターフェース31cからプリンタエンジン12へ転送される。   The engine interface (image data transfer control unit) 31c controls data transfer from the RAM 22 to the printer engine 12. In this data transfer, the data is transferred from the RAM 22 to the engine interface 31c via the bus circuit 37, and transferred from the engine interface 31c to the printer engine 12.

また、CPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31cは、各々のデータ転送を制御する前に、バス回路37にデータ転送要求信号(以下、「データ転送要求」と称する)を送信する。そして、後述するが、バス回路37は、データ転送要求を送信してきたCPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31cに対して転送許可信号(以下、「転送許可」と称する)を与える。CPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31cは、この転送許可を受けることによって、バス回路37に含まれるデータ伝送路の使用権を獲得し、バス回路37を介したデータ転送を制御することができる。   Further, the CPU interface 31a, the DMA controller 31b, and the engine interface 31c transmit a data transfer request signal (hereinafter referred to as “data transfer request”) to the bus circuit 37 before each data transfer is controlled. As will be described later, the bus circuit 37 gives a transfer permission signal (hereinafter referred to as “transfer permission”) to the CPU interface 31a, the DMA controller 31b, and the engine interface 31c that have transmitted the data transfer request. The CPU interface 31a, the DMA controller 31b, and the engine interface 31c can obtain the right to use the data transmission path included in the bus circuit 37 and control the data transfer via the bus circuit 37 by receiving the transfer permission. it can.

なお、本実施の形態では、データ転送要求を出力することによってバス回路37に含まれるデータ転送路の使用権を獲得し、該バス回路37を介したデータ転送を制御する機能をもつCPUインターフェース31a,DMAコントローラ31b,エンジンインターフェース31cを、各々、バスマスタ(転送制御部)と称することがある。   In this embodiment, a CPU interface 31a having a function of acquiring a right to use a data transfer path included in the bus circuit 37 by outputting a data transfer request and controlling data transfer via the bus circuit 37. The DMA controller 31b and the engine interface 31c may be referred to as bus masters (transfer control units).

ROMコントローラ32a,RAMコントローラ32b,I/Oコントローラ32cは、バスマスタ31によって制御されるデータ転送において、転送元となるデバイスからデータを読み出し、また、転送先となるデバイスへデータの書き込みを行う機能を有するものである。   The ROM controller 32a, RAM controller 32b, and I / O controller 32c have a function of reading data from a transfer source device and writing data to a transfer destination device in data transfer controlled by the bus master 31. It is what you have.

具体的に、ROMコントローラ32aはROM23からデータを読み出す。RAMコントローラ32bは、RAM22からデータを読み出し、または、RAM22へデータを書き込む。I/Oコントローラ32cは、I/Oデバイス24からデータを読み出し、または、I/Oデバイス24へデータを書き込む。   Specifically, the ROM controller 32 a reads data from the ROM 23. The RAM controller 32 b reads data from the RAM 22 or writes data to the RAM 22. The I / O controller 32 c reads data from the I / O device 24 or writes data to the I / O device 24.

なお、本実施の形態では、バスマスタによって起動されるデータ転送において、転送元となるデバイスからのデータの読み出し、または、転送先となるデバイスへのデータの書き込みを行うROMコントローラ32a,RAMコントローラ32b,I/Oコントローラ32cの各々をバスターゲットと称することがある。   In the present embodiment, in the data transfer activated by the bus master, the ROM controller 32a, the RAM controller 32b, and the like read out data from the transfer source device or write data to the transfer destination device. Each of the I / O controllers 32c may be referred to as a bus target.

また、エンジンインターフェース31cは、RAM22からプリンタエンジン12へのデータ転送を制御するバスマスタあるが、転送先デバイスであるプリンタエンジン12へのデータの書き込みは、このエンジンインターフェース31c自体によって行われる。それゆえ、エンジンインターフェース31cは、バスマスタであると共に、転送先デバイスに接続されるバスターゲットとしての機能をも有するものである。   The engine interface 31c is a bus master that controls data transfer from the RAM 22 to the printer engine 12. Writing data to the printer engine 12 that is a transfer destination device is performed by the engine interface 31c itself. Therefore, the engine interface 31c is a bus master and also has a function as a bus target connected to the transfer destination device.

バス回路37は、バスマスタ31からデータ転送要求を受信すると、このデータ転送要求を出力したバスマスタに対して転送許可を与える。また、バス回路37は、転送許可を与えたバスマスタによって制御されるデータ転送を行うために、このデータ転送における転送元のデバイスに接続されているバスターゲットと、転送先のデバイスに接続されているバスターゲットとを選択して、選択したバスターゲットにデータの読出命令または書込命令を伝達する。   When receiving a data transfer request from the bus master 31, the bus circuit 37 gives a transfer permission to the bus master that has output the data transfer request. Further, the bus circuit 37 is connected to a bus target connected to a transfer source device and a transfer destination device in order to perform data transfer controlled by a bus master that has given permission to transfer. A bus target is selected, and a data read command or write command is transmitted to the selected bus target.

そして、転送元のデバイスに接続されているバスターゲットによって転送元デバイスからデータが読み出され、読み出されたデータは、バス回路37およびデータ転送を制御するバスマスタ31を介して、転送先デバイスに接続されているバスターゲット32へ伝達される。さらに、転送先デバイスに接続されているバスターゲット32は、バス回路37を介して伝達されてきたデータを転送先デバイスに書き込む。このようにして、各デバイス間のデータ転送が実現される。   Then, data is read from the transfer source device by the bus target connected to the transfer source device, and the read data is transferred to the transfer destination device via the bus circuit 37 and the bus master 31 that controls data transfer. It is transmitted to the connected bus target 32. Further, the bus target 32 connected to the transfer destination device writes the data transmitted via the bus circuit 37 to the transfer destination device. In this way, data transfer between devices is realized.

但し、エンジンインターフェース31cによって制御されるデータ転送においては、該エンジンインターフェース31cがバスマスタかつ転送先デバイスのバスターゲットとして機能する。それゆえ、この場合、転送元デバイス(RAM22)から読み出されたデータは、バス回路37を介して、エンジンインターフェース31cへ伝達され、その後、エンジンインターフェース31cによってプリンタエンジン12へデータが書き込まれる。   However, in data transfer controlled by the engine interface 31c, the engine interface 31c functions as a bus master and a bus target of the transfer destination device. Therefore, in this case, the data read from the transfer source device (RAM 22) is transmitted to the engine interface 31c via the bus circuit 37, and then the data is written to the printer engine 12 by the engine interface 31c.

つぎに、以上示したバス回路37の構成について詳細に説明する。図3は、バス回路37の構成を示したブロック図である。同図に示すように、バス回路37には、転送回路41,調停回路42が含まれている。   Next, the configuration of the bus circuit 37 described above will be described in detail. FIG. 3 is a block diagram showing the configuration of the bus circuit 37. As shown in the figure, the bus circuit 37 includes a transfer circuit 41 and an arbitration circuit 42.

転送回路41は、各バスマスタおよび各バスターゲットの各々に接続されており、バスマスタとバスターゲットとの間におけるデータ伝送路としての機能を有するものである。つまり、各バスマスタ31a・31b・31cは、バス回路37に含まれる転送回路41を共有し、転送回路41を介したデータ転送を制御する。   The transfer circuit 41 is connected to each bus master and each bus target, and has a function as a data transmission path between the bus master and the bus target. That is, the bus masters 31 a, 31 b, and 31 c share the transfer circuit 41 included in the bus circuit 37 and control data transfer through the transfer circuit 41.

なお、バス回路37がLSIである場合は、セレクタと制御回路とを集積させることによって転送回路41を構成することができる。また、転送回路41は、例えば、ハードワイヤからなるデータ線であってもよい。   If the bus circuit 37 is an LSI, the transfer circuit 41 can be configured by integrating a selector and a control circuit. Further, the transfer circuit 41 may be a data line made of a hard wire, for example.

調停回路(データ転送制御装置)42は、各バスマスタ31a・31b・31cに接続されており、バスマスタ31からデータ転送要求を受信し、このデータ転送要求を出力したバスマスタ31に対して転送許可を与える回路である。ここで、この調停回路42は、複数のバスマスタ31…の各々から同時にデータ転送要求を受信している場合、いずれか一つのバスマスタ31に対してのみ転送許可を与えることによって、各バスマスタ31…からのデータ転送要求を調停している。   The arbitration circuit (data transfer control device) 42 is connected to each of the bus masters 31a, 31b, and 31c, receives a data transfer request from the bus master 31, and gives a transfer permission to the bus master 31 that has output the data transfer request. Circuit. Here, when the arbitration circuit 42 receives a data transfer request from each of the plurality of bus masters 31... At the same time, the arbitration circuit 42 grants transfer permission only to any one of the bus masters 31. Arbitrary data transfer request.

ここで、各々のバスマスタ31…は、上記転送許可を受けないと、データ転送を起動・制御することができない。それゆえ、調停回路42が上記調停を行うことによって、あるバスマスタ31によるデータ転送と他のバスマスタ31によるデータ転送とが、バス回路37に含まれる転送回路41において同時に実行されるという事態を回避できる。   Here, each of the bus masters 31 cannot start and control the data transfer without receiving the transfer permission. Therefore, the arbitration circuit 42 performs the above arbitration, thereby avoiding a situation in which data transfer by a certain bus master 31 and data transfer by another bus master 31 are simultaneously executed in the transfer circuit 41 included in the bus circuit 37. .

つぎに、調停回路42の詳細について説明する。図1は、調停回路42の構成を示したブロック図である。   Next, details of the arbitration circuit 42 will be described. FIG. 1 is a block diagram showing the configuration of the arbitration circuit 42.

調停回路42は、図1に示すように、優先度判定回路51を含む構成である。   As illustrated in FIG. 1, the arbitration circuit 42 includes a priority determination circuit 51.

優先度判定回路51は、各バスマスタ31a・31b・31cに接続されており、バスマスタ31a・31b・31cの各々からデータ転送要求を受信すると、所定規則に従って各バスマスタ31a・31b・31cに予め与えられている各々の優先度を各々のバスマスタ31a・31b・31cに設定し、設定した各優先度を対比して、最優先すべきバスマスタを判定し、最優先すべきバスマスタ31のみに転送許可を送信する(つまり、いずれか一つのバスマスタ31にデータ転送許可を送信する)。   The priority determination circuit 51 is connected to each of the bus masters 31a, 31b, and 31c. When a data transfer request is received from each of the bus masters 31a, 31b, and 31c, the priority determination circuit 51 is given in advance to each of the bus masters 31a, 31b, and 31c according to a predetermined rule. Each priority level is set in each of the bus masters 31a, 31b, and 31c, the priority levels set are compared, the bus master that should be given the highest priority is determined, and transfer permission is transmitted only to the bus master 31 that should be given the highest priority. (That is, data transfer permission is transmitted to any one of the bus masters 31).

なお、図1において、「転送要求a」はバスマスタ31aが出力するデータ転送要求を示し、「転送要求b」はバスマスタ31bが出力するデータ転送要求を示し、「転送要求c」はバスマスタ31cが出力したデータ転送要求を示したものである。さらに、図1において、「転送許可a」はバスマスタ31aへ送信される転送許可を示し、「転送許可b」はバスマスタ31bへ送信される転送許可を示し、「転送許可c」はバスマスタ31cへ送信される転送許可を示したものである。   In FIG. 1, "transfer request a" indicates a data transfer request output by the bus master 31a, "transfer request b" indicates a data transfer request output by the bus master 31b, and "transfer request c" is output by the bus master 31c. The data transfer request is shown. Further, in FIG. 1, “transfer permission a” indicates a transfer permission transmitted to the bus master 31a, “transfer permission b” indicates a transfer permission transmitted to the bus master 31b, and “transfer permission c” transmits to the bus master 31c. The transfer permission to be performed is shown.

また、優先度判定回路51は、上記所定規則に従って各バスマスタ31に与えられている各優先度(優先度を示す情報)を、各々のバスマスタ31a・31b・31cから受信してもよいし、図示しない記憶装置から読み出してもよい。   Further, the priority determination circuit 51 may receive each priority (information indicating the priority) given to each bus master 31 from each bus master 31a, 31b, 31c according to the predetermined rule. You may read from the storage device which does not.

なお、図1において、「優先度a」は、上記所定規則に従ってバスマスタ31aに与えられている優先度を示す情報であり、「優先度b」は、上記所定規則に従ってバスマスタ31bに与えられている優先度を示す情報であり、「優先度c」は、上記所定規則に従ってバスマスタ31cに与えられている優先度を示す情報である。   In FIG. 1, “priority a” is information indicating the priority given to the bus master 31a according to the predetermined rule, and “priority b” is given to the bus master 31b according to the predetermined rule. The information indicating the priority, and the “priority c” is information indicating the priority given to the bus master 31c according to the predetermined rule.

つぎに、以上示した優先度および所定規則について説明する。本実施の形態においては、「優先度a」は「優先度b」「優先度c」よりも優先度が高く、「優先度b」は「優先度c」よりも優先度が高い。そして、上記した所定規則とは、各バスマスタ31a・31b・31cに与える優先度を各々固定にするという規則(「固定優先度規則」ともいう)である。つまり、「優先度a」は、バスマスタ31aにのみ与えられる優先度であり、「優先度b」は、バスマスタ31bにのみ与えられる優先度であり、「優先度c」は、バスマスタ31cにのみ与えられる優先度である。   Next, the priorities and predetermined rules described above will be described. In the present embodiment, “priority a” has higher priority than “priority b” and “priority c”, and “priority b” has higher priority than “priority c”. The predetermined rule described above is a rule (also referred to as “fixed priority rule”) in which the priority given to each bus master 31a, 31b, and 31c is fixed. That is, “priority a” is a priority given only to the bus master 31a, “priority b” is a priority given only to the bus master 31b, and “priority c” is given only to the bus master 31c. Priority.

つぎに、優先度判定回路51における処理について説明する。図4は、上記固定優先度規則が適用される場合において、優先度判定回路51がバスマスタ31a・31b・31cの各々からデータ転送要求を受信するタイミングと、優先度判定回路51がバスマスタ31a・31b・31aの各々に転送許可を送信するタイミングとを示したタイミングチャートである。   Next, processing in the priority determination circuit 51 will be described. FIG. 4 illustrates the timing at which the priority determination circuit 51 receives a data transfer request from each of the bus masters 31a, 31b, and 31c, and the priority determination circuit 51 that uses the bus masters 31a and 31b when the fixed priority rule is applied. -It is a timing chart which showed the timing which transmits transfer permission to each of 31a.

なお、同図の「転送データ」の欄において、「A」を示す枠は、バスマスタ31aに制御されるデータ転送が1回実行されたことを示し、「B」を示す枠は、バスマスタ31bに制御されるデータ転送が1回実行されたことを示し、「C」を示す枠は、バスマスタ31cに制御されるデータ転送が1回実行されたことを示す。   In the “transfer data” column of the same figure, a frame indicating “A” indicates that the data transfer controlled by the bus master 31a has been executed once, and a frame indicating “B” indicates the bus master 31b. The controlled data transfer is executed once, and the frame indicating “C” indicates that the data transfer controlled by the bus master 31c is executed once.

同図に示すように、優先度判定回路51は、バスマスタ31a・31b・31cの各々から同時にデータ転送要求を受信した場合、上記所定規則に従ってバスマスタ31a・31b・31cの各々に与えられている各優先度を取得する。そして、優先度判定回路51は、各々のバスマスタ31a・31b・31cに対し、各々に与えられている優先度を設定する。つまり、優先度判定回路51は、バスマスタ31aから「優先度a」を受信し、この「優先度a」をバスマスタ31aに設定し、バスマスタ31bから「優先度b」を受信し、この「優先度b」をバスマスタ31bに設定し、バスマスタ31cから「優先度b」を受信し、この「優先度c」をバスマスタ31bに設定する。   As shown in the figure, when the priority determination circuit 51 receives a data transfer request from each of the bus masters 31a, 31b, and 31c at the same time, each priority given to each of the bus masters 31a, 31b, and 31c according to the predetermined rule. Get the priority. The priority determination circuit 51 sets the priority given to each of the bus masters 31a, 31b, and 31c. That is, the priority determination circuit 51 receives “priority a” from the bus master 31a, sets this “priority a” to the bus master 31a, receives “priority b” from the bus master 31b, and receives this “priority”. “b” is set to the bus master 31b, “priority b” is received from the bus master 31c, and this “priority c” is set to the bus master 31b.

そして、優先度判定回路51は、設定した「優先度a」「優先度b」「優先度c」を対比し、「優先度a」が最も高いものと判定すると、「優先度a」の設定されているバスマスタ31aを最優先すべきものとし、バスマスタ31aのみに転送許可を送信している。そして、バスマスタ31aに転送許可が送信されている間、バスマスタ31aによるデータ転送が行われている。   Then, when the priority determination circuit 51 compares the set “priority a”, “priority b”, and “priority c” and determines that “priority a” is the highest, the setting of “priority a” is performed. The given bus master 31a is given the highest priority, and transfer permission is transmitted only to the bus master 31a. While the transfer permission is being transmitted to the bus master 31a, data transfer is performed by the bus master 31a.

また、優先度判定回路51は、バスマスタ31a・31bの各々から同時に転送要求を受信した場合、同様にして、上記「優先度b」「優先度c」を対比して、バスマスタ31bを優先すべきものと判定し、バスマスタ31bのみに転送許可を送信している。そして、バスマスタ31bに転送許可が送信されている間、バスマスタ31bによるデータ転送が行われている。   When the priority determination circuit 51 receives a transfer request from each of the bus masters 31a and 31b at the same time, the priority determination circuit 51 should give priority to the bus master 31b by comparing the above "priority b" and "priority c". And the transfer permission is transmitted only to the bus master 31b. While the transfer permission is transmitted to the bus master 31b, data transfer is performed by the bus master 31b.

さらに、優先度判定回路51は、バスマスタ31cのみから転送要求を受信した場合、バスマスタ31cに転送許可を送信している。そして、バスマスタ31cに転送許可が送信されている間、バスマスタ31cによるデータ転送が行われている。   Furthermore, when the priority determination circuit 51 receives a transfer request from only the bus master 31c, the priority determination circuit 51 transmits a transfer permission to the bus master 31c. While the transfer permission is transmitted to the bus master 31c, the data transfer by the bus master 31c is performed.

優先度判定回路51は、以上のようにして、各バスマスタ31a・31b・31cに設定した各々の優先度に基づいて、いずれか一つのバスマスタ31に対してのみに転送許可を与えている。   As described above, the priority determination circuit 51 grants transfer permission only to any one of the bus masters 31 based on the respective priorities set for the respective bus masters 31a, 31b, and 31c.

そして、優先度判定回路51は、転送許可を与えた後、転送許可を与えたバスマスタ31によって指定されている転送元デバイスに接続されているバスターゲット32と、転送先デバイスに接続されているバスターゲット32とを選択し、選択した各バスターゲットにデータの読出命令および書込命令を出力する(図1参照)。なお、各バスマスタ31が出力するデータ転送要求には、転送元デバイスおよび転送先デバイスに関する情報が含まれており、優先度判定回路51は、転送許可を与えたバスマスタ31から既に送られてきているデータ転送要求に基づいて、バスターゲット32の選択を行っている。   Then, the priority determination circuit 51, after giving the transfer permission, the bus target 32 connected to the transfer source device designated by the bus master 31 that gave the transfer permission, and the bus connected to the transfer destination device. The target 32 is selected, and a data read command and a write command are output to each selected bus target (see FIG. 1). The data transfer request output by each bus master 31 includes information on the transfer source device and the transfer destination device, and the priority determination circuit 51 has already been sent from the bus master 31 that has given transfer permission. The bus target 32 is selected based on the data transfer request.

また、本実施の形態の調停回路42においては、バスマスタ31a・31b・31cのうちのいずれか1以上のバスマスタ31について、積極的に帯域保証を行う帯域保証モードが設定することができる。以下では、この帯域保証モードについて詳細に説明する。   Further, in the arbitration circuit 42 according to the present embodiment, a bandwidth guarantee mode that actively guarantees the bandwidth can be set for any one or more of the bus masters 31a, 31b, and 31c. Hereinafter, this bandwidth guarantee mode will be described in detail.

まず、バスマスタ31a・31b・31cの各々においては、帯域保証の必要性の生じている期間中のみ、帯域保証要求信号(以下、「帯域保証要求」とする)を出力するように設定されている。バスマスタ31a・31b・31cの各々は、この帯域保証要求を出力することによって、上記帯域保証モードを設定できる。   First, each of the bus masters 31a, 31b, and 31c is set to output a bandwidth guarantee request signal (hereinafter referred to as a “bandwidth guarantee request”) only during a period when the necessity of bandwidth guarantee occurs. . Each of the bus masters 31a, 31b, and 31c can set the band guarantee mode by outputting the band guarantee request.

そして、図1に示すように、調停回路42においては、優先度判定回路51の他、この優先度判定回路51に接続されている帯域測定回路52a・52b・52cが含まれている。以下、この帯域測定回路52a・52b・52cについて、帯域測定回路52cから順に説明する。   As shown in FIG. 1, the arbitration circuit 42 includes, in addition to the priority determination circuit 51, band measurement circuits 52 a, 52 b, and 52 c connected to the priority determination circuit 51. Hereinafter, the band measurement circuits 52a, 52b, and 52c will be described in order from the band measurement circuit 52c.

帯域測定回路52cは、バスマスタ(エンジンインターフェース)31cに接続されており、図1に示すように、タイマおよび転送カウンタを含む構成である。   The band measurement circuit 52c is connected to the bus master (engine interface) 31c and includes a timer and a transfer counter as shown in FIG.

この帯域測定回路52cは、バスマスタ31cが出力する帯域保証要求cおよび目標帯域c(バスマスタ31cのデータ転送の目標帯域を示す情報)を受信すると、帯域保証要求cを受信している期間について、バスマスタ31cによるデータ転送の実効帯域(単位時間当たりの転送データ量)を計測し、さらに、上記目標帯域cと実効帯域との差分を計算し、この差分を示す差分信号を優先度判定回路51へ伝達する。   When the bandwidth measuring circuit 52c receives the bandwidth guarantee request c and the target bandwidth c (information indicating the target bandwidth for data transfer of the bus master 31c) output from the bus master 31c, the bandwidth measuring circuit 52c performs the bus master for the period during which the bandwidth guarantee request c is received. The effective bandwidth (transfer data amount per unit time) of the data transfer by 31c is measured, the difference between the target bandwidth c and the effective bandwidth is calculated, and a difference signal indicating this difference is transmitted to the priority determination circuit 51. To do.

なお、帯域測定回路52cは、帯域保証要求cを受け付けている期間について、タイマによって経過時間をカウントし、転送カウンタによってバスマスタ31cのデータ転送の転送回数をカウントし、これらカウントの結果から上記実効帯域を概算している。また、上記概算は行わず、単位時間当たりの転送回数自体を上記「単位時間当たりの転送データ量」と見積もってもよい。   The bandwidth measuring circuit 52c counts the elapsed time with a timer for the period during which the bandwidth guarantee request c is received, counts the number of data transfers of the bus master 31c with a transfer counter, and calculates the effective bandwidth from the results of these counts. Is estimated. Further, without performing the above estimation, the number of transfers per unit time itself may be estimated as the “transfer data amount per unit time”.

また、転送カウンタは、転送回路41において転送されているデータから、データ転送フラグ(どのバスマスタによって転送制御されているのかを示すフラグ)を取得することによって、上記カウントを行っている。また、帯域測定回路52cは、バスマスタ31cから目標帯域cを受信しているが、この目標帯域cを図示しない記憶装置から取得してもよい。   Further, the transfer counter performs the above-mentioned counting by obtaining a data transfer flag (a flag indicating which bus master is performing transfer control) from the data transferred in the transfer circuit 41. The band measurement circuit 52c receives the target band c from the bus master 31c. However, the target band c may be acquired from a storage device (not shown).

そして、優先度判定回路51は、バスマスタ31cによるデータ転送の実効帯域が上記目標帯域c以下であるか否かを上記差分信号に基づいて判定し、上記実効帯域が目標帯域c以下である場合、バスマスタ31cに、上記所定規則に従った「優先度c」を設定せずに、「優先度S」を設定する。また、優先度判定回路51は、上記実効帯域が目標帯域cを越えている場合、バスマスタ31cに、「優先度S」を設定せずに、上記所定規則に従った「優先度c」を設定する。   The priority determination circuit 51 determines whether or not the effective band for data transfer by the bus master 31c is equal to or less than the target band c. If the effective band is equal to or less than the target band c, The “priority S” is set in the bus master 31c without setting the “priority c” according to the predetermined rule. Further, when the effective band exceeds the target band c, the priority determination circuit 51 sets “priority c” according to the predetermined rule without setting “priority S” in the bus master 31c. To do.

なお、「優先度S」とは、上記所定規則によってバスマスタ31…毎に与えられている「優先度a」「優先度b」「優先度c」よりも優先度が高い、つまり、最も優先度が高いことを示している。   The “priority S” is higher in priority than “priority a”, “priority b”, and “priority c” given to each bus master 31... According to the predetermined rule. Is high.

また、帯域測定回路52a・52bは、図1に示すように、帯域測定回路52cと同様、各々、タイマと転送カウンタとを含んでいる。なお、帯域測定回路52aは、バスマスタ31aに接続され、バスマスタ31aが出力する帯域保証要求aおよび目標帯域a(バスマスタ31aのデータ転送の目標帯域を示す情報)を受信する構成であり、帯域測定回路52bは、バスマスタ31bに接続され、バスマスタ31bが出力する帯域保証要求bおよび目標帯域b(バスマスタ31bのデータ転送の目標帯域を示す情報)を受信する構成である。   Further, as shown in FIG. 1, each of the bandwidth measuring circuits 52a and 52b includes a timer and a transfer counter, like the bandwidth measuring circuit 52c. The band measuring circuit 52a is connected to the bus master 31a and receives the band guarantee request a and the target band a (information indicating the target band for data transfer of the bus master 31a) output from the bus master 31a. 52b is connected to the bus master 31b and receives the bandwidth guarantee request b and the target bandwidth b (information indicating the target bandwidth for data transfer of the bus master 31b) output from the bus master 31b.

そして、帯域測定回路52cの場合と同様に、帯域測定回路52aは、バスマスタ31aによるデータ転送の実効帯域を計測し、さらに、上記目標帯域aと実効帯域との差分を計算し、この差分を示す差分信号を優先度判定回路51へ伝達する。   As in the case of the bandwidth measuring circuit 52c, the bandwidth measuring circuit 52a measures the effective bandwidth of data transfer by the bus master 31a, calculates the difference between the target bandwidth a and the effective bandwidth, and indicates this difference. The difference signal is transmitted to the priority determination circuit 51.

そして、優先度判定回路51は、バスマスタ31aによるデータ転送の実効帯域が上記目標帯域a以下であるか否かを上記差分信号に基づいて判定し、上記実効帯域が目標帯域a以下である場合、バスマスタ31cに、上記所定規則に従った「優先度a」を設定せずに、「優先度S」を設定する。また、優先度判定回路51は、上記実効帯域が目標帯域aを越えている場合、バスマスタ31cに、「優先度S」を設定せずに、上記所定規則に従った「優先度a」を設定する。   Then, the priority determination circuit 51 determines whether or not the effective band for data transfer by the bus master 31a is equal to or less than the target band a based on the difference signal, and when the effective band is equal to or less than the target band a, The “priority S” is set in the bus master 31c without setting the “priority a” according to the predetermined rule. Further, when the effective band exceeds the target band a, the priority determination circuit 51 sets “priority a” in accordance with the predetermined rule without setting “priority S” in the bus master 31c. To do.

さらに、帯域測定回路52a・52cの場合と同様に、帯域測定回路52bは、バスマスタ31bによるデータ転送の実効帯域を計測し、さらに、上記目標帯域bと実効帯域との差分を計算し、この差分を示す差分信号を優先度判定回路51へ伝達する。   Further, similarly to the bandwidth measuring circuits 52a and 52c, the bandwidth measuring circuit 52b measures the effective bandwidth of the data transfer by the bus master 31b, and further calculates the difference between the target bandwidth b and the effective bandwidth. Is transmitted to the priority determination circuit 51.

そして、優先度判定回路51は、バスマスタ31bによるデータ転送の実効帯域が上記目標帯域b以下であるか否かを上記差分信号に基づいて判定し、上記実効帯域が目標帯域b以下である場合、バスマスタ31bには、上記所定規則に従った「優先度b」を設定せずに、「優先度S」を設定する。また、優先度判定回路51は、上記実効帯域が目標帯域bを越えている場合、バスマスタ31cには,「優先度S」を設定せずに、上記所定規則に従った「優先度b」を設定する。   Then, the priority determination circuit 51 determines whether or not the effective band for data transfer by the bus master 31b is equal to or less than the target band b. If the effective band is equal to or less than the target band b, In the bus master 31b, the “priority S” is set without setting the “priority b” according to the predetermined rule. Further, when the effective band exceeds the target band b, the priority determination circuit 51 sets “priority b” according to the predetermined rule without setting “priority S” to the bus master 31c. Set.

以上の構成によれば、バスマスタ31a・31b・31cのうち、いずれか一つのバスマスタ31が帯域保証要求を出力している場合、そのバスマスタ31に接続されている帯域測定回路52がそのバスマスタ31の実効帯域を計測し、計測した実行帯域と目標帯域との差分を算出している。   According to the above configuration, when any one of the bus masters 31 a, 31 b, and 31 c is outputting a bandwidth guarantee request, the bandwidth measuring circuit 52 connected to the bus master 31 is connected to the bus master 31. The effective bandwidth is measured, and the difference between the measured execution bandwidth and the target bandwidth is calculated.

そして、優先度判定回路51は、この算出された差分を基にして、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域以下か否かを判定している。そして、優先度判定回路51は、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域以下の場合は、このバスマスタに優先度Sを設定し、帯域保証要求を出力していないバスマスタ31には、所定規則に従ってこのバスマスタ31に与えられている優先度を設定する。それゆえ、優先度判定回路51は、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域以下の場合、このバスマスタ31がデータ転送要求を出力している間、このバスマスタ31に必ず転送許可を与えることとなる。   Then, the priority determination circuit 51 determines whether or not the effective bandwidth of the bus master 31 outputting the bandwidth guarantee request is equal to or less than the target bandwidth based on the calculated difference. When the effective bandwidth of the bus master 31 outputting the bandwidth guarantee request is equal to or less than the target bandwidth, the priority determination circuit 51 sets the priority S for the bus master 31 and does not output the bandwidth guarantee request. The priority given to the bus master 31 is set according to a predetermined rule. Therefore, when the effective bandwidth of the bus master 31 outputting the bandwidth guarantee request is equal to or less than the target bandwidth, the priority determination circuit 51 always transfers the data to the bus master 31 while the bus master 31 is outputting the data transfer request. It will give permission.

さらに、優先度判定回路51は、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域を越えている場合、帯域保証要求を出力しているバスマスタ31に、所定規則に従ってこのバスマスタに与えられている優先度を設定し、帯域保証要求を出力していないバスマスタ31に、所定規則に従ってこのバスマスタに与えられている優先度を設定する。それゆえ、この場合、帯域保証要求を出力しているバスマスタ31に転送許可が与えられるとは限らず、他のバスマスタ31にも転送許可が与えられることがある。   Further, when the effective bandwidth of the bus master 31 outputting the bandwidth guarantee request exceeds the target bandwidth, the priority determination circuit 51 gives the bus master 31 outputting the bandwidth guarantee request to the bus master according to a predetermined rule. The given priority is set, and the priority given to the bus master is set according to a predetermined rule to the bus master 31 that has not output the bandwidth guarantee request. Therefore, in this case, transfer permission is not always given to the bus master 31 that outputs the bandwidth guarantee request, and transfer permission may be given to other bus masters 31 in some cases.

つぎに、バスマスタ31cのみが帯域保証要求を出力する場合において、バスマスタ31cの実効帯域の推移を図に基づいて説明する。図5は、各バスマスタ31a・31b・31cのデータ転送要求のタイミング,バスマスタ31cの帯域保証要求のタイミング,各バスマスタ31に対して出力される転送許可のタイミング,帯域保証要求を出力しているバスマスタ31cの実効帯域の推移を示したタイミングチャートである。   Next, when only the bus master 31c outputs a bandwidth guarantee request, the transition of the effective bandwidth of the bus master 31c will be described with reference to the drawings. FIG. 5 shows the data transfer request timing of each bus master 31a, 31b, 31c, the bandwidth guarantee request timing of the bus master 31c, the transfer permission timing output to each bus master 31, and the bus master outputting the bandwidth guarantee request. It is a timing chart which showed transition of the effective band of 31c.

なお、図5の「転送データ」の欄において、「A」を示す枠はバスマスタ31aによって1回データ転送が行われたことを示し、「B」を示す枠はバスマスタ31bによって1回データ転送が行われたことを示し、「C」を示す枠はバスマスタ31cによって1回データ転送が行われたことを示す。また、図5の「転送カウンタ」の欄に示される値は、バスマスタ31cに接続されている帯域測定回路52cに含まれる転送カウンタのカウント値を示したものである。さらに、図5の「タイマ」の欄に示される値は、帯域測定回路52cに含まれるタイマのカウント値を示したものである。また、図5に示されるグラフは、横軸が経過時間を示し、縦軸がバスマスタ31cによるデータ転送の実効帯域を示したものである。   In the “transfer data” column of FIG. 5, a frame indicating “A” indicates that data transfer has been performed once by the bus master 31a, and a frame indicating “B” indicates that data transfer has been performed once by the bus master 31b. The frame indicating “C” indicates that data transfer has been performed once by the bus master 31c. Further, the value shown in the column “transfer counter” in FIG. 5 indicates the count value of the transfer counter included in the band measuring circuit 52c connected to the bus master 31c. Further, the value shown in the “timer” column of FIG. 5 indicates the count value of the timer included in the band measuring circuit 52c. In the graph shown in FIG. 5, the horizontal axis indicates the elapsed time, and the vertical axis indicates the effective bandwidth for data transfer by the bus master 31c.

図5において、まず、タイミングαにおいては、各バスマスタ31a・31b・31cの各々がデータ転送要求を出力しているが、いずれもバスマスタ31も帯域保証要求を出力していない。この場合、各バスマスタ31a・31b・31cの各々には所定規則に従った優先度が設定されるから、優先度aの設定されるバスマスタ31aに転送許可が与えられる。   In FIG. 5, first, at the timing α, each of the bus masters 31a, 31b, and 31c outputs a data transfer request, but none of the bus masters 31 outputs a bandwidth guarantee request. In this case, each bus master 31a, 31b, and 31c is set with a priority according to a predetermined rule, so that transfer permission is given to the bus master 31a with the priority a set.

その後、タイミングβにおいて、バスマスタ31cが帯域保証要求cの出力を開始する。これにより、バスマスタ31cに接続されている帯域測定回路52cでは、バスマスタ31cによるデータ転送の実効帯域の計測が開始される。そして、この帯域保証要求cが出力されている間、この計測は続けて行われる。   Thereafter, at timing β, the bus master 31c starts outputting the bandwidth guarantee request c. As a result, the bandwidth measuring circuit 52c connected to the bus master 31c starts measuring the effective bandwidth of data transfer by the bus master 31c. And while this band guarantee request | requirement c is output, this measurement is performed continuously.

そして、この計測される実効帯域が目標帯域c以下であるため、バスマスタ31cの優先度は「優先度S」に設定され、バスマスタ31cのデータ転送要求は、他のどのバスマスタ31a・31bのデータ転送要求よりも優先される。これにより、バスマスタ31a・31b・31cの各々がデータ転送要求を出力していても、バスマスタ31cに転送許可が与え続けられ、バスマスタ31cによるデータ転送が繰り返される。その結果、バスマスタ31cによるデータ転送の実効帯域は増加する。   Since the measured effective bandwidth is equal to or less than the target bandwidth c, the priority of the bus master 31c is set to “priority S”, and the data transfer request of the bus master 31c is the data transfer of any other bus master 31a / 31b. Takes precedence over requests. As a result, even if each of the bus masters 31a, 31b, and 31c outputs a data transfer request, transfer permission is continuously given to the bus master 31c, and data transfer by the bus master 31c is repeated. As a result, the effective bandwidth for data transfer by the bus master 31c increases.

その後、タイミングγにおいて、バスマスタ31cによるデータ転送の実効帯域が目標帯域cを超えると、バスマスタ31cに設定される優先度は「優先度S」から「優先度c」に変更される。これにより、バスマスタ31cのデータ転送要求よりも、「優先度a」「優先度b」の設定されるバスマスタ31a・31bのデータ転送要求の方が優先されることとなる。そして、バスマスタ31a・31b・31cのいずれもがデータ転送要求を出力しているため、バスマスタ31aに転送許可が与えられ、バスマスタ31cによるデータ転送は停止する。その結果、バスマスタ31cによるデータ転送の実効帯域幅は減少することになる。   Thereafter, when the effective bandwidth for data transfer by the bus master 31c exceeds the target bandwidth c at timing γ, the priority set for the bus master 31c is changed from “priority S” to “priority c”. As a result, the data transfer request of the bus masters 31a and 31b in which “priority a” and “priority b” are set has priority over the data transfer request of the bus master 31c. Since any of the bus masters 31a, 31b, and 31c outputs a data transfer request, transfer permission is given to the bus master 31a, and data transfer by the bus master 31c is stopped. As a result, the effective bandwidth of data transfer by the bus master 31c is reduced.

バスマスタ31cによるデータ転送の実効帯域が減少し続け、タイミングδにおいて、バスマスタ31cによるデータ転送の実効帯域が目標帯域c以下になると、バスマスタ31cに設定される優先度は、「優先度c」から「優先度S」に再度変更される。これにより、バスマスタ31a・31b・31cの各々がデータ転送要求を出力していても、バスマスタ31cに転送許可が与えられ、バスマスタ31cによるデータ転送が行われる。その結果、バスマスタ31cによるデータ転送の実効帯域幅は増加する。   If the effective bandwidth for data transfer by the bus master 31c continues to decrease and the effective bandwidth for data transfer by the bus master 31c falls below the target bandwidth c at timing δ, the priority set for the bus master 31c is changed from “priority c” to “ The priority is changed again to “S”. Thereby, even when each of the bus masters 31a, 31b, and 31c outputs a data transfer request, transfer permission is given to the bus master 31c, and data transfer by the bus master 31c is performed. As a result, the effective bandwidth of data transfer by the bus master 31c increases.

以上の処理が繰り返されることにより、帯域保証要求を出力するバスマスタ31cよるデータ転送の実効帯域は、図5に示すように、目標帯域c付近の値を維持でき、バスマスタ31cに対して帯域保証を行うことができる。   By repeating the above processing, the effective bandwidth of the data transfer by the bus master 31c that outputs the bandwidth guarantee request can maintain a value near the target bandwidth c as shown in FIG. 5, and the bandwidth guarantee is given to the bus master 31c. It can be carried out.

以上示した実施の形態によれば、転送回路41を介したデータ転送を制御するバスマスタ31a・31b・31cが当該転送回路41を共有しており、調停回路42は、バスマスタ31a・31b・31cからデータ転送要求を受信すると、バスマスタ31a・31b・31c毎に設定される各優先度に基づいて、いずれか一つのバスマスタ31に転送許可を与えることによって、転送許可を与えたバスマスタ31によるデータ転送を実行する制御を行っている。さらに、この調停回路42は、帯域保証要求を出力しているバスマスタ31によるデータ転送について、単位時間当たりの転送データ量である実効帯域を計測する帯域測定回路(計測手段)52cと、上記計測された実効帯域に応じて、帯域保証要求を出力しているバスマスタ31に設定される優先度を変更する優先度判定回路(優先度制御手段)51と、を含む構成である。   According to the embodiment described above, the bus masters 31a, 31b, and 31c that control data transfer through the transfer circuit 41 share the transfer circuit 41, and the arbitration circuit 42 is connected to the bus masters 31a, 31b, and 31c. When the data transfer request is received, the data transfer by the bus master 31 having given the transfer permission is performed by giving the transfer permission to any one of the bus masters 31 based on the respective priorities set for the bus masters 31a, 31b and 31c. Control to be executed. Further, the arbitration circuit 42 measures the above-described measurement with a bandwidth measuring circuit (measuring means) 52c that measures an effective bandwidth, which is a transfer data amount per unit time, for data transfer by the bus master 31 that outputs a bandwidth guarantee request. And a priority determination circuit (priority control means) 51 that changes the priority set for the bus master 31 outputting the bandwidth guarantee request according to the effective bandwidth.

したがって、帯域保証要求を出力しているバスマスタ31cによるデータ転送について、帯域測定回路52cが実効帯域をリアルタイムに計測し、優先度判定回路51が、この実効帯域に応じてバスマスタ31cに設定される優先度を変更できる。それゆえ、上記実効帯域がある程度以上維持されるように、帯域保証要求を出力しているバスマスタ31cに設定される優先度を適宜行うことによって該バスマスタ31cによるデータ転送の実行頻度を調整すれば、バスマスタ31cに対して帯域保証を行うことが可能となる。   Therefore, for data transfer by the bus master 31c outputting the bandwidth guarantee request, the bandwidth measuring circuit 52c measures the effective bandwidth in real time, and the priority determination circuit 51 sets the priority set in the bus master 31c according to the effective bandwidth. You can change the degree. Therefore, if the execution frequency of the data transfer by the bus master 31c is adjusted by appropriately setting the priority set to the bus master 31c outputting the bandwidth guarantee request so that the effective bandwidth is maintained to some extent, Band guarantee can be performed for the bus master 31c.

また、以上示した実施形態によれば、優先度判定回路51は、上記実効帯域が目標帯域(目標値)以下の場合、目標帯域を超える場合よりも、帯域保証要求を出力しているバスマスタ31に設定する優先度を向上させている。   Further, according to the embodiment described above, the priority determination circuit 51 outputs the band guarantee request when the effective band is equal to or less than the target band (target value) than when the effective band exceeds the target band. The priority set in is improved.

それゆえ、帯域保証要求を出力しているバスマスタ31における実効帯域が目標帯域以下になると、帯域保証要求を出力しているバスマスタ31によるデータ転送の実行頻度を増加させることができる。それゆえ、帯域保証要求を出力しているバスマスタ31の実効帯域を目標値から過度に低下することを抑制でき、これにより、該実効帯域をある程度以上維持することが容易となる。また、上記実効帯域が目標帯域を越えると、上記目標値以下の場合よりも帯域保証要求を出力しているバスマスタ31に設定される優先度は低下することとなり、このバスマスタ31のデータ転送の実効頻度を減少させることができる。それゆえ、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域を越えて過度になりつつある場合、他のバスマスタ31にデータ転送を制御させる余地を与えることが可能となる。したがって、帯域保証要求を出力しているバスマスタ31の実効帯域が過剰になっているにも拘わらず、このバスマスタ31によるデータ転送が最優先されてしまい、他のバスマスタ31の帯域が無意味に圧迫されるという事態を抑制することができる。   Therefore, when the effective bandwidth in the bus master 31 outputting the bandwidth guarantee request is equal to or less than the target bandwidth, the execution frequency of data transfer by the bus master 31 outputting the bandwidth guarantee request can be increased. Therefore, it is possible to suppress the effective bandwidth of the bus master 31 that is outputting the bandwidth guarantee request from being excessively reduced from the target value, and this makes it easy to maintain the effective bandwidth to a certain extent. If the effective bandwidth exceeds the target bandwidth, the priority set for the bus master 31 outputting the bandwidth guarantee request is lower than when the effective bandwidth is less than the target value. The frequency can be reduced. Therefore, when the effective bandwidth of the bus master 31 outputting the bandwidth guarantee request is becoming excessive beyond the target bandwidth, it is possible to give another bus master 31 a room for controlling data transfer. Therefore, although the effective bandwidth of the bus master 31 that outputs the bandwidth guarantee request is excessive, the data transfer by the bus master 31 is given the highest priority, and the bandwidth of the other bus masters 31 is compressed without meaning. The situation that it is done can be suppressed.

また、優先度判定回路51は、帯域保証要求を出力しているバスマスタ31の実効帯域が目標帯域以下である場合、帯域保証要求を出力しているバスマスタ31には、上記所定規則に従った各優先度よりも高い優先度である「優先度S」を設定している。   In addition, when the effective bandwidth of the bus master 31 that outputs the bandwidth guarantee request is equal to or less than the target bandwidth, the priority determination circuit 51 sends each of the bus masters 31 that output the bandwidth guarantee request according to the predetermined rules. “Priority S” which is a priority higher than the priority is set.

これにより、帯域保証要求を出力しているバスマスタ31における実効帯域が目標帯域以下になると、帯域保証要求を出力しているバスマスタ31によるデータ転送を最優先で行わせることができ、帯域保証要求を出力しているバスマスタ31の実効帯域の維持がさらに容易となる。   As a result, when the effective bandwidth in the bus master 31 outputting the bandwidth guarantee request is equal to or less than the target bandwidth, the data transfer by the bus master 31 outputting the bandwidth guarantee request can be performed with the highest priority. It becomes even easier to maintain the effective bandwidth of the bus master 31 that is outputting.

また、以上の構成によれば、所定規則に従った優先度がバスマスタ31a・31b・31c毎に与えられており、帯域保証要求を出力していないバスマスタ31には、常に、所定の規則に従って該バスマスタ31に与えられている優先度が設定される。また、帯域保証要求を出力しているバスマスタ31においても、このバスマスタ31の実効帯域が目標帯域を超える場合は、所定の規則に従ってこのバスマスタ31に与えられている優先度が設定される。これに対し、上記実効帯域が目標帯域以下の場合、帯域保証要求を出力しているバスマスタ31には、上記所定規則に従った各優先度よりも高い優先度である優先度Sが設定される。これにより、上記実効帯域が目標帯域以下の場合、帯域保証要求を出力しているバスマスタ31に最も高い優先度を設定することができる。   Further, according to the above configuration, the priority according to the predetermined rule is given to each of the bus masters 31a, 31b, and 31c, and the bus master 31 that has not output the bandwidth guarantee request is always in accordance with the predetermined rule. The priority given to the bus master 31 is set. Also in the bus master 31 outputting the bandwidth guarantee request, when the effective bandwidth of the bus master 31 exceeds the target bandwidth, the priority given to the bus master 31 is set according to a predetermined rule. On the other hand, when the effective bandwidth is equal to or less than the target bandwidth, priority S that is higher than each priority according to the predetermined rule is set in the bus master 31 that outputs the bandwidth guarantee request. . As a result, when the effective bandwidth is equal to or less than the target bandwidth, the highest priority can be set for the bus master 31 outputting the bandwidth guarantee request.

また、以上示した実施の形態によれば、帯域保証要求を出力しているバスマスタ31のみを対象として上記した優先度の変更処理を行うこととなる。したがって、帯域保証の必要なバスマスタ31cのみを対象にし、かつ、帯域保証の必要な期間にのみ上記した優先度の変更処理を行うことが可能となる。   Further, according to the embodiment described above, the priority changing process described above is performed only for the bus master 31 that outputs the bandwidth guarantee request. Accordingly, the priority change process described above can be performed only for the bus master 31c that requires bandwidth guarantee and only during the period that requires bandwidth guarantee.

さらに、以上示した実施の形態において、各帯域測定回路52…は、各々に接続されているバスマスタ31が帯域保証要求を出力している期間中のみ、実効帯域の計測を行うようにすることが好ましい。このようにすれば、帯域測定回路52は、帯域保証要求が出力されている期間中のみに限定して実効帯域の計測を行うこととなる。これにより、帯域測定回路52は、常に計測を行うことなく、必要期間内のみに限定して計測を行うこととなり、計測が継続されることによる誤差の拡大を抑制することができ、より正確な測定を行うことができる。   Further, in the embodiment described above, each band measuring circuit 52... May measure the effective band only during the period when the bus master 31 connected to each band outputs a band guarantee request. preferable. In this way, the bandwidth measuring circuit 52 measures the effective bandwidth only during the period when the bandwidth guarantee request is output. As a result, the band measurement circuit 52 performs the measurement only within a necessary period without always performing the measurement, and can suppress the expansion of the error due to the continuing measurement. Measurements can be made.

また、以上示した実施の形態において、帯域測定回路52は、所定期間毎に、計測した実効帯域をリセットする構成であることが好ましい。このようにすれば、計測中の実効帯域幅に誤差が生じたとしても、所定期間毎に当該誤差をキャンセルすることが可能になる。   In the embodiment described above, the bandwidth measuring circuit 52 is preferably configured to reset the measured effective bandwidth every predetermined period. In this way, even if an error occurs in the effective bandwidth during measurement, the error can be canceled every predetermined period.

また、以上示した実施の形態の図5においては、バスマスタ31cのみが帯域保証要求を出力してバスマスタ31cのみ帯域保証モードを設定している形態について説明したが、当然、バスマスタ31a・31bについても同様に帯域保証モードを設定することは可能である。   Further, in FIG. 5 of the embodiment described above, the mode in which only the bus master 31c outputs a bandwidth guarantee request and the bandwidth guarantee mode is set only for the bus master 31c has been described. Of course, the bus masters 31a and 31b are also set. Similarly, it is possible to set the bandwidth guarantee mode.

ここで、帯域保証要求を出力し、かつ実効帯域が目標帯域以下であるバスマスタ31が複数ある場合、どのバスマスタ31に、「優先度S」を設定すべきなのかという問題が生じる。これは、複数のバスマスタ31…の各々に、「優先度S」を設定してしまうと、どのバスマスタ31を最優先すべきなのかを優先度判定回路51が判断できなくなるからである。そこで、このような場合は、上記所定規則に従って各バスマスタ31…に与えられている各々の優先度に基づいて、いずれか一つのバスマスタ31のみに優先度Sを設定すればよい。   Here, when there are a plurality of bus masters 31 that output a bandwidth guarantee request and whose effective bandwidth is equal to or less than the target bandwidth, a problem arises as to which bus master 31 should be set with “priority S”. This is because if the “priority S” is set for each of the plurality of bus masters 31, the priority determination circuit 51 cannot determine which bus master 31 should be given the highest priority. Therefore, in such a case, the priority S may be set for only one of the bus masters 31 based on the priority given to each of the bus masters 31 according to the predetermined rule.

また、帯域保証要求を出力し、かつ実効帯域が目標帯域以下であるバスマスタ31が複数ある場合、目標帯域と実効帯域との差分の絶対値(不足度パラメータ)が最も大きいバスマスタ31のみに、優先度Sを設定する構成であってもよい。これにより、実行帯域が目標値から最も離れ、データ転送を行う必要性の最も高いバスマスタ31によるデータ転送を最優先することができる。   Also, when there are a plurality of bus masters 31 that output a bandwidth guarantee request and whose effective bandwidth is equal to or less than the target bandwidth, priority is given only to the bus master 31 having the largest absolute value (deficiency parameter) of the difference between the target bandwidth and the effective bandwidth. The degree S may be set. This makes it possible to give the highest priority to data transfer by the bus master 31 whose execution band is farthest from the target value and has the highest necessity for data transfer.

また、帯域保証要求を出力し、かつ実効帯域が目標帯域以下であるバスマスタ31が複数ある場合、(目標帯域−実効帯域)/目標帯域の値(不足度パラメータ)が最も大きいバスマスタ31のみに、優先度Sを設定する構成であってもよい。これにより、目標帯域に対する実効帯域の不足量の占める割合の最も大きいバスマスタ31のデータ転送を最優先することができる。このような構成は、複数のバスマスタ31…の各々が、互いに目標帯域を大幅に異ならせている場合に好適である。   Further, when there are a plurality of bus masters 31 that output a bandwidth guarantee request and whose effective bandwidth is equal to or less than the target bandwidth, only the bus master 31 having the largest (target bandwidth-effective bandwidth) / target bandwidth value (insufficient parameter) The priority S may be set. Thereby, the highest priority can be given to the data transfer of the bus master 31 in which the ratio of the shortage of the effective bandwidth to the target bandwidth is the largest. Such a configuration is suitable when each of the plurality of bus masters 31 has a substantially different target bandwidth.

さらに、以上示した実施の形態においては、バスマスタとしてのエンジンインターフェース31cが帯域保証要求を出力し、このエンジンインターフェース31cのデータ転送についての帯域保証を行っている。ここで、このエンジンインターフェース(画像データ転送制御部)31cは、画像を印刷する処理を行うプリンタエンジン(印刷部)12への画像データの転送制御を行うものである。それゆえ、プリンタエンジン12に対して連続的に一定量以上の画像データの供給を行うことができる。それゆえ、プリンタエンジン12に対する画像データの供給不足による印刷不良を抑制することができる。また、プリンタエンジン12の印刷処理開始時から終了時に、エンジンインターフェース31cから帯域保証要求を出力させるように設定すれば、印刷処理中においてリアルタイムにエンジンインターフェース31cの帯域保証を実現することが可能になる。   Further, in the embodiment described above, the engine interface 31c as a bus master outputs a bandwidth guarantee request, and performs bandwidth guarantee for data transfer of the engine interface 31c. Here, the engine interface (image data transfer control unit) 31c performs transfer control of image data to the printer engine (printing unit) 12 that performs processing for printing an image. Therefore, a predetermined amount or more of image data can be continuously supplied to the printer engine 12. Therefore, printing defects due to insufficient supply of image data to the printer engine 12 can be suppressed. Further, if setting is made so that a bandwidth guarantee request is output from the engine interface 31c from the start to the end of the printing process of the printer engine 12, it is possible to realize the bandwidth guarantee of the engine interface 31c in real time during the printing process. .

また、以上示した実施の形態では、システムコントローラ25は、プリンタ10に構成されているが、プリンタ10に限定されるものではなく、汎用コンピュータに構成してもよいし、コンピュータ制御に基づく各種装置(映像表示装置,通信機器,各種家電製品)に構成することもできる。   Further, in the embodiment described above, the system controller 25 is configured in the printer 10, but is not limited to the printer 10, and may be configured in a general-purpose computer or various devices based on computer control. It can also be configured (video display device, communication device, various home appliances).

また、以上示した実施形態において、上記した優先度に関する所定規則とは、各バスマスタ31a・31b・31cに与える優先度を各々固定にするという規則であった。しかしながら、このような規則に限定されるものではなく、例えば、上記所定規則として、各バスマスタ31a・31b・31cに与える各々の優先度(「優先度a」「優先度b」「優先度c」)を、各バスマスタ31a・31b・31c間で巡回させる規則(「巡回優先度規則」ともいう)を適用してもよい。   Further, in the embodiment described above, the above-mentioned predetermined rule relating to the priority is a rule that the priority given to each of the bus masters 31a, 31b, and 31c is fixed. However, the present invention is not limited to such a rule. For example, as the predetermined rule, each priority given to each of the bus masters 31a, 31b, 31c ("priority a", "priority b", "priority c") ) May be applied between the bus masters 31a, 31b, and 31c (also referred to as “cyclic priority rule”).

この巡回優先度規則が適用される場合、ある期間において、バスマスタ31aに与えられる優先度が「優先度a」→「優先度b」→「優先度c」の順に切り換わる場合、例えば、バスマスタ31bに与えられる優先度は「優先度b」→「優先度c」の順に切り換わり、バスマスタ31cに与えられる優先度は「優先度c」→「優先度a」→「優先度b」の順に切り換わる。つまり、バスマスタ31a・31b・31cの各々においては、与えられる優先度が順に切り換わっていくが、同一のタイミングにおいて、各バスマスタ31a・31b・31c間では各々異なる優先度が与えられるのである。   When this cyclic priority rule is applied, when the priority given to the bus master 31a switches in the order of “priority a” → “priority b” → “priority c” in a certain period, for example, the bus master 31b The priority given to is switched in the order of “priority b” → “priority c”, and the priority given to the bus master 31c is switched in the order of “priority c” → “priority a” → “priority b”. Change. That is, in each of the bus masters 31a, 31b, and 31c, the given priority is switched in order, but at the same timing, different priority is given to each of the bus masters 31a, 31b, and 31c.

また、以上の巡回優先度規則が適用される場合における優先度判定回路51の処理の具体例について図6に基づいて説明する。図6は、巡回優先度規則が適用される場合において、優先度判定回路51がバスマスタ31a・31b・31cの各々からデータ転送要求を受信するタイミングと、優先度判定回路51がバスマスタ31a・31b・31cの各々に転送許可を送信するタイミングとを示したタイミングチャートである。   A specific example of processing of the priority determination circuit 51 when the above cyclic priority rule is applied will be described with reference to FIG. FIG. 6 illustrates the timing at which the priority determination circuit 51 receives a data transfer request from each of the bus masters 31a, 31b, and 31c, and the priority determination circuit 51 that uses the bus masters 31a, 31b, and 31c when the cyclic priority rule is applied. It is a timing chart which showed the timing which transmits transfer permission to each of 31c.

図6に示される参照符Xの期間においては、バスマスタ31a・31b・31cの各々が連続してデータ転送要求を出力している一方、バスマスタ31a→バスマスタ31b→バスマスタ31c→バスマスタ31a…の順に転送許可が与えられている。これは、参照符Xの期間において、バスマスタ31a→バスマスタ31b→バスマスタ31c→バスマスタ31a…の順に「優先度a」が与えられていることを意味している。   In the period indicated by reference symbol X shown in FIG. 6, each of the bus masters 31a, 31b, and 31c continuously outputs a data transfer request, while the bus master 31a, the bus master 31b, the bus master 31c, the bus master 31a, and so on. Permission is granted. This means that “priority a” is given in the order of bus master 31a → bus master 31b → bus master 31c → bus master 31a.

また、上述した実施の形態では、図3に示すように、各バスマスタ31a・31b・31cおよび各バスターゲット32a・32b・32cが一つの転送回路41を共有している構成を採用しているがこのような構成に限定されるものではない。複数のバスマスタに共有される転送回路41に接続される調停回路42であれば、本発明を適用することが可能である。   In the above-described embodiment, as shown in FIG. 3, each bus master 31a / 31b / 31c and each bus target 32a / 32b / 32c share one transfer circuit 41. It is not limited to such a configuration. The present invention can be applied to the arbitration circuit 42 connected to the transfer circuit 41 shared by a plurality of bus masters.

例えば、図7に示すように、バス回路37において、バスターゲット32…と同数だけ転送回路41…を構成し、各バスターゲット32a・32b・32c毎に別々の転送回路41を接続し、転送回路41…毎に別々の調停回路42を接続する構成を採用してもよい。また、この構成では、転送回路41…および調停回路42…の各々は、全てのバスマスタ31a・31b・31cに接続されている。さらに、この構成の場合、一つの調停回路42が、本発明のデータ転送制御回路の一実施形態に相当することとなる。   For example, as shown in FIG. 7, in the bus circuit 37, the same number of transfer circuits 41 as the bus targets 32 are formed, and a separate transfer circuit 41 is connected to each of the bus targets 32a, 32b, and 32c. 41. A configuration in which a separate arbitration circuit 42 is connected for each time may be employed. Further, in this configuration, each of the transfer circuits 41... And the arbitration circuits 42 is connected to all the bus masters 31a, 31b, and 31c. Furthermore, in the case of this configuration, one arbitration circuit 42 corresponds to an embodiment of the data transfer control circuit of the present invention.

この図7の構成の場合、図3の構成の場合と比して、以下に述べる点で相違がある。図3の構成では、複数のバスマスタ31…が同時に転送要求を出力している場合、必ず調停回路42による調停が行われ、一つのバスマスタ31のみに対して転送許可を与えることになる。しかしながら、図7の構成では、複数のバスマスタ31…が同時に転送要求を出力している場合であっても、データ転送において使用される転送回路41と選択されるバスターゲット32とが、各バスマスタ31…の転送要求の各々で異なる場合、調停回路42…による調停が行われず、各バスマスタ31…に同時に転送許可が与えられることもある。これは、図7の構成によれば、バスターゲット32…毎に別々の転送回路41が設けられ、転送回路41…毎に別々の調停回路42が設けられているため、複数のバスマスタ31…に同時にデータ転送要求を行わせても、データ転送経路によっては、一つの転送回路41および一つのバスターゲット32が同時に複数のバスマスタ31…に使用・選択されるという事態が生じないこともありえ、この場合、調停回路42…による調停を行わずに、複数のバスマスタ31…によるデータ転送を同時に実行させても問題は生じないからである。それゆえ、図7の構成は、図3の構成よりも、システムのパフォーマンスが優れていると言える。   The configuration of FIG. 7 is different from the configuration of FIG. 3 in the following points. In the configuration of FIG. 3, when a plurality of bus masters 31... Simultaneously output transfer requests, arbitration by the arbitration circuit 42 is always performed, and transfer permission is given to only one bus master 31. However, in the configuration of FIG. 7, even when a plurality of bus masters 31... Are simultaneously outputting transfer requests, the transfer circuit 41 used in data transfer and the selected bus target 32 are connected to each bus master 31. When the transfer requests are different from each other, arbitration by the arbitration circuit 42 is not performed, and transfer permission may be simultaneously given to each bus master 31. According to the configuration shown in FIG. 7, a separate transfer circuit 41 is provided for each bus target 32, and a separate arbitration circuit 42 is provided for each transfer circuit 41. Therefore, a plurality of bus masters 31 are provided. Even if a data transfer request is made at the same time, depending on the data transfer path, it may not occur that one transfer circuit 41 and one bus target 32 are simultaneously used and selected by a plurality of bus masters 31. In this case, there is no problem even if data transfer by a plurality of bus masters 31... Is performed simultaneously without performing arbitration by the arbitration circuits 42. Therefore, it can be said that the configuration of FIG. 7 has better system performance than the configuration of FIG.

なお、図7の構成において、調停回路42による調停が行われるのは、複数のバスマスタ31…が同時にデータ転送要求を行っており、かつ、使用される転送回路41が、各バスマスタ31…の転送要求の各々で重複する場合であって、この場合、使用される転送回路41に接続されている調停回路42によって調停が行われる。   In the configuration of FIG. 7, arbitration by the arbitration circuit 42 is performed by a plurality of bus masters 31 simultaneously requesting data transfer, and the transfer circuit 41 to be used transfers data to each bus master 31. In this case, arbitration is performed by the arbitration circuit 42 connected to the transfer circuit 41 to be used.

ところで、以上の実施の形態では、調停回路42はハードウェアによって実現されている。しかし、調停回路42の奏する機能は、プロセッサなどの演算回路が、ROMやRAMなどの記憶手段に記憶されたプログラムを実行し、各種周辺回路,センサ等を制御することによっても実現することができる。したがって、以上の演算回路,周辺回路等を有するコンピュータが、上記プログラムを記録した記録媒体を読み取り、当該プログラムを実行するだけで、本実施形態の調停回路42の各種機能および各種処理を実現することができる。また、上記プログラムをリムーバブルな記録媒体に記録することにより、任意のコンピュータ上で上記の各種機能および各種処理を実現することができる。   In the above embodiment, the arbitration circuit 42 is realized by hardware. However, the function performed by the arbitration circuit 42 can also be realized by an arithmetic circuit such as a processor executing a program stored in a storage unit such as a ROM or RAM and controlling various peripheral circuits, sensors, and the like. . Therefore, the computer having the above arithmetic circuit, peripheral circuit, and the like realizes various functions and various processes of the arbitration circuit 42 of the present embodiment only by reading the recording medium storing the program and executing the program. Can do. In addition, by recording the program on a removable recording medium, the various functions and various processes described above can be realized on an arbitrary computer.

上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。   Examples of the recording medium include tapes such as magnetic tapes and cassette tapes, magnetic disks such as floppy (registered trademark) disks / hard disks, and disks including optical disks such as CD-ROM / MO / MD / DVD / CD-R. Card system such as IC card, IC card (including memory card) / optical card, or semiconductor memory system such as mask ROM / EPROM / EEPROM / flash ROM.

また、プリンタ10を通信ネットワークと接続可能に構成し、上記プログラムコードを、通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。   Further, the printer 10 may be configured to be connectable to a communication network, and the program code may be supplied via the communication network. The communication network is not particularly limited. For example, the Internet, intranet, extranet, LAN, ISDN, VAN, CATV communication network, virtual private network, telephone line network, mobile communication network, satellite communication. A net or the like is available. Also, the transmission medium constituting the communication network is not particularly limited. For example, even in the case of wired such as IEEE 1394, USB, power line carrier, cable TV line, telephone line, ADSL line, etc., infrared rays such as IrDA and remote control, Bluetooth ( (Registered trademark), 802.11 wireless, HDR, mobile phone network, satellite line, terrestrial digital network, and the like can also be used. The present invention can also be realized in the form of a computer data signal embedded in a carrier wave in which the program code is embodied by electronic transmission.

本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、上述した実施形態において開示された各技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。   The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope shown in the claims, and the embodiments can be obtained by appropriately combining the respective technical means disclosed in the above-described embodiments. The form is also included in the technical scope of the present invention.

また、以上示した実施形態においては、バスマスタの帯域保証を実際の転送データ数に基づいてより正確に行うことにより、帯域保証を要求していない他のバスマスタの転送帯域を過度に圧迫することなく、必要な帯域保証を最低限のシステム性能で実現できる。また、システム設計時に、推測の積み重ねによる過度にオーバースペックな設計をせずとも、目的の保証帯域に基づいて、簡易にシステムに必要な性能を求めて最適設計を可能とする。   Further, in the above-described embodiment, the bandwidth guarantee of the bus master is more accurately performed based on the actual number of transfer data without excessively compressing the transfer bandwidth of other bus masters that do not require the bandwidth guarantee. The necessary bandwidth guarantee can be realized with the minimum system performance. In addition, at the time of system design, it is possible to easily obtain the performance required for the system based on the target guaranteed bandwidth, and to make the optimum design, without excessively overdesigning by speculative accumulation.

また、以上示した実施形態では、特定バスマスタを目標帯域に対してほぼ近い転送帯域を確保することができ、また、それにより他のバスマスタの転送帯域を不必要に圧迫することもない。また、システム設計を行う際にも、同時に帯域保証を要求するマスタのそれぞれの保証帯域の和を最低帯域として設計をすることができ、不必要にオーバースペックなシステム設計をする必要が無くなる。   In the embodiment described above, a transfer bandwidth that is almost the same as the target bandwidth can be secured for the specific bus master, and the transfer bandwidth of other bus masters is not unnecessarily compressed. In addition, when designing a system, it is possible to design the master with the minimum guaranteed bandwidth at the same time as a guaranteed bandwidth requirement, thereby eliminating the need for an unnecessarily overspec system design.

これに対し、従来の優先度を定期的に切りかえる方法(特許文献1,3に開示されている方法)では、最高優先度が割り当てられる割合を設定することができるだけであり、転送許可が与えられる割合を指示できるわけではない。これは全バスマスタが常に転送要求を発生し続けている場合に該バスマスタに転送許可が与えられる頻度を意味している。   On the other hand, in the conventional method of switching the priority regularly (methods disclosed in Patent Documents 1 and 3), it is only possible to set the ratio to which the highest priority is allocated, and transfer permission is given. It is not possible to indicate the ratio. This means the frequency at which transfer permission is given to the bus masters when all the bus masters are constantly generating transfer requests.

また、各バスマスタが一回の転送に要する時間もバスマスタ毎に異なる可能性があり、それぞれのバスマスタにおいてもこの時間が転送毎に異なる可能性がある。よって、特定のマスタの転送帯域を保証しようとすれば、該当バスマスタの必要帯域、各バスマスタが転送に要する時間、転送許可頻度の最悪値を想定した上で優先度設定のアルゴリズムを決定する必要があり、設定がむずかしく、システム全体としてはオーバースペックな設計になってしまう。   In addition, the time required for each bus master to transfer once may be different for each bus master, and this time may be different for each bus master for each transfer. Therefore, if the transfer bandwidth of a specific master is to be guaranteed, the priority setting algorithm must be determined after assuming the required bandwidth of the bus master, the time required for each bus master to transfer, and the worst value of the transfer permission frequency. Yes, it is difficult to set up, and the overall system is over-designed.

また、バスマスタ毎の使用帯域を制限する方法(特許文献2,4に開示されている方法)では、目的のバスマスタ以外の帯域を制限することによって、目的のバスマスタの帯域保証をするという考え方である為、目的のバスマスタの帯域保証をするためには、他のバスマスタ全ての必要な帯域を決め、最悪値を想定して各バスマスタに割り振る帯域の割合を決定する必要がある。このため、この場合もシステム全体としてはオーバースペックな設計になってしまう。   In addition, the method of limiting the bandwidth used for each bus master (the methods disclosed in Patent Documents 2 and 4) is based on the concept of guaranteeing the bandwidth of the target bus master by limiting the bandwidth other than the target bus master. Therefore, in order to guarantee the bandwidth of the target bus master, it is necessary to determine the necessary bandwidth of all the other bus masters and to determine the ratio of the bandwidth allocated to each bus master assuming the worst value. For this reason, in this case as well, the overall system becomes an overspec design.

なお、本実施形態の調停回路は、複数のバスマスタからの転送要求を調停する調停回路において、バスマスタ毎に実際に転送されたデータ数と時間とを計測し、随時算出される実効帯域に基づいて各バスマスタへの転送許可を制御する、と表現することもできる。これにより、実際の転送帯域を測定しながら常に目的の帯域に対して過不足が少なくなるように調停を行えるため、設計時に最適設計を行うことができ、また、動作時には帯域保証を要求していない別のマスタの転送を過度に圧迫することがなくなる。   Note that the arbitration circuit of the present embodiment is an arbitration circuit that arbitrates transfer requests from a plurality of bus masters, measures the number of data and time actually transferred for each bus master, and based on the effective bandwidth calculated as needed. It can also be expressed as controlling transfer permission to each bus master. As a result, arbitration can be performed so that the excess or deficiency is always reduced with respect to the target bandwidth while measuring the actual transfer bandwidth, so that optimum design can be performed at the time of design, and bandwidth guarantee is required at the time of operation. Never oversqueeze another master's transfer.

また、以上の調停回路において、帯域要求を出力していないバスマスタに関しては所定の優先度処理に基づき調停を行い、帯域要求を出力しているバスマスタに関しては測定した実効帯域に基づいて調停を行うこととしてもよい。これにより、どのバスマスタも帯域保証要求を出していない場合、および、帯域保証要求を出しているバスマスタが転送要求を出していない場合の調停方法を定めることができる。   In the arbitration circuit described above, the bus master that does not output the bandwidth request performs arbitration based on a predetermined priority process, and the bus master that outputs the bandwidth request performs arbitration based on the measured effective bandwidth. It is good. This makes it possible to determine an arbitration method when no bus master issues a bandwidth guarantee request and when a bus master that issues a bandwidth guarantee request does not issue a transfer request.

また、以上の調停回路において、帯域要求を出力しているバスマスタに関して、実効帯域が目標帯域に達している場合は所定の優先度処理に基づいた調停を行い、目標帯域に達していない場合は、所定の優先度処理に優先して転送許可を与えることとしてもよい。これにより、帯域保証が必要な場合と、不必要な場合の調停を一つの調停回路において矛盾無く組み合わせて動作させることができる。   Also, in the above arbitration circuit, for the bus master that is outputting the bandwidth request, if the effective bandwidth has reached the target bandwidth, arbitration based on the predetermined priority processing, and if the target bandwidth has not been reached, Transfer permission may be given in preference to predetermined priority processing. Thereby, the arbitration in the case where the bandwidth guarantee is necessary and the case where it is not necessary can be combined and operated in one arbitration circuit without any contradiction.

また、以上の調停回路において、帯域保証要求を出力し、かつ目標帯域に達していないバスマスタが複数存在する場合は、そのバスマスタ間の優先度をそれぞれの目標帯域に対する不足分に従って決定してもよい。これにより、複数のバスマスタが帯域保証を要求しかつ転送要求を出している場合、そのいずれを優先して転送許可を出すかを、帯域の不足分、つまりデータ転送の必要性の緊急度に応じて決めることができる。   Further, in the above arbitration circuit, when there are a plurality of bus masters that output a bandwidth guarantee request and have not reached the target bandwidth, the priority among the bus masters may be determined according to the shortage with respect to each target bandwidth. . As a result, when multiple bus masters request bandwidth guarantee and issue a transfer request, which one should be given priority for transfer permission depends on the lack of bandwidth, that is, the urgency of the need for data transfer Can be decided.

さらに、以上の調停回路において、帯域要求を出力し、かつ目標帯域に達していないバスマスタが複数存在する場合は、そのバスマスタ間の優先度をそれぞれの目標帯域に対する不足分の絶対値によって決定してもよい。これにより、複数のバスマスタが帯域保証を要求しかつ転送要求を出している場合、そのいずれを優先して転送許可を出すかを、帯域の不足分、つまりデータ転送の必要性の緊急度に応じて決めることができる。この際、緊急度を現時点で不足しているデータ数によって判断することにより、公平な調停を行うことができる。   Furthermore, in the above arbitration circuit, if there are multiple bus masters that output a bandwidth request and have not reached the target bandwidth, the priority between the bus masters is determined by the absolute value of the shortage with respect to each target bandwidth. Also good. As a result, when multiple bus masters request bandwidth guarantee and issue a transfer request, which one should be given priority for transfer permission depends on the lack of bandwidth, that is, the urgency of the need for data transfer Can be decided. At this time, fair arbitration can be performed by determining the degree of urgency based on the number of data lacking at the present time.

また、以上の調停回路において、帯域要求を出力し、かつ目標帯域に達していないバスマスタが複数存在する場合は、そのバスマスタ間の優先度をそれぞれの目標帯域に対する不足分の比率によって決定してもよい。これにより、複数のバスマスタが帯域保証を要求しかつ転送要求を出している場合、そのいずれを優先して転送許可を出すかを、帯域の不足分、つまりデータ転送の必要性の緊急度に応じて決めることができる。この際、転送データサイズ、一回の転送要求に要する時間など、マスタ毎に異なる特性を吸収して、より公平な調停を行うことができる。   In the above arbitration circuit, when there are a plurality of bus masters that output a bandwidth request and have not reached the target bandwidth, the priority between the bus masters may be determined by the ratio of the shortage to each target bandwidth. Good. As a result, when multiple bus masters request bandwidth guarantee and issue a transfer request, which one should be given priority for transfer permission depends on the lack of bandwidth, that is, the urgency of the need for data transfer Can be decided. At this time, different characteristics such as transfer data size, time required for one transfer request, and the like can be absorbed and more fair arbitration can be performed.

本発明のデータ転送制御装置は、データ転送が行われるバスを含んだコンピュータ全般に適用でき、また、コンピュータ制御が行われる各種画像形成装置(プリンタ,ファクシミリー等)、コンピュータ制御が行われる各種映像表示装置にも適用でき、さらに、コンピュータ制御が行われる各種家電製品に広く適用可能である。   The data transfer control device of the present invention can be applied to all computers including a bus to which data transfer is performed, and various image forming devices (printers, facsimiles, etc.) that are controlled by a computer, and various videos that are controlled by a computer. The present invention can be applied to display devices, and can be widely applied to various home appliances that are controlled by a computer.

本発明のデータ転送回路の一実施形態である調停回路を示したブロック図である。It is the block diagram which showed the arbitration circuit which is one Embodiment of the data transfer circuit of this invention. 本発明の一実施形態に係るプリンタの構成を示したブロック図である。1 is a block diagram illustrating a configuration of a printer according to an embodiment of the present invention. 図2に示したプリンタに含まれるバス回路の構成を示したブロック図である。FIG. 3 is a block diagram illustrating a configuration of a bus circuit included in the printer illustrated in FIG. 2. 固定優先度規則が適用される場合において、優先度判定回路がバスマスタの各々からデータ転送要求を受信するタイミングと、優先度判定回路がバスマスタの各々に転送許可を送信するタイミングとを示したタイミングチャートである。Timing chart showing when the priority determination circuit receives a data transfer request from each of the bus masters and when the priority determination circuit transmits a transfer permission to each of the bus masters when the fixed priority rule is applied It is. 帯域保証要求を出力しているバスマスタの実効帯域の推移を示したチャートである。6 is a chart showing changes in effective bandwidth of a bus master outputting a bandwidth guarantee request. 巡回優先度規則が適用される場合において、優先度判定回路がバスマスタの各々からデータ転送要求を受信するタイミングと、優先度判定回路がバスマスタの各々に転送許可を送信するタイミングとを示したタイミングチャートである。Timing chart showing the timing when the priority determination circuit receives a data transfer request from each of the bus masters and the timing when the priority determination circuit transmits a transfer permission to each of the bus masters when the cyclic priority rule is applied It is. 図3に示したバス回路と異なる形態のバス回路を示したブロック図である。FIG. 4 is a block diagram showing a bus circuit having a different form from the bus circuit shown in FIG. 3.

符号の説明Explanation of symbols

10 プリンタ(画像形成装置)
11 プリンタコントローラ
12 プリンタエンジン(印刷部)
21 CPU
22 RAM
23 ROM
24 I/Oデバイス
25 システムコントローラ(データ転送装置)
31a CPUインターフェース(バスマスタ,転送制御部)
31b DMAコントローラ(バスマスタ,転送制御部)
31c エンジンインターフェース(バスマスタ,バスターゲット,転送制御部,画像データ転送制御部)
32a ROMコントローラ(バスターゲット)
32b RAMコントローラ(バスターゲット)
32c I/Oコントローラ(バスターゲット)
37 バス回路
41 転送回路
42 調停回路(データ転送制御装置)
51 優先度判定回路(優先度制御手段)
52 帯域測定回路(計測手段)
10 Printer (image forming device)
11 Printer Controller 12 Printer Engine (Printing Section)
21 CPU
22 RAM
23 ROM
24 I / O device 25 System controller (data transfer device)
31a CPU interface (bus master, transfer control unit)
31b DMA controller (bus master, transfer control unit)
31c Engine interface (bus master, bus target, transfer control unit, image data transfer control unit)
32a ROM controller (bus target)
32b RAM controller (bus target)
32c I / O controller (bus target)
37 bus circuit 41 transfer circuit 42 arbitration circuit (data transfer control device)
51 Priority judgment circuit (priority control means)
52 Band measurement circuit (measuring means)

Claims (16)

転送回路を介したデータ転送を制御する複数の転送制御部が上記転送回路を共有しており、各転送制御部からデータ転送要求を受信すると、上記各転送制御部に設定される各優先度に基づいて、いずれか一つの転送制御部によるデータ転送を実行させるデータ転送制御装置において、
上記複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量を計測する計測手段と、
上記計測された単位時間当たりの転送データ量に応じて上記所定の転送制御部に設定される優先度を変更する優先度制御手段と、
を含むことを特徴とするデータ転送制御装置。
A plurality of transfer control units that control data transfer via the transfer circuit share the transfer circuit. When a data transfer request is received from each transfer control unit, each priority is set to each transfer control unit. Based on the data transfer control device for executing the data transfer by any one transfer control unit,
Measuring means for measuring the amount of transfer data per unit time for data transfer by a predetermined transfer control unit among the plurality of transfer control units;
Priority control means for changing the priority set in the predetermined transfer control unit according to the measured transfer data amount per unit time;
A data transfer control device comprising:
上記優先度制御手段は、
上記単位時間当たりの転送データ量が目標値以下の場合、目標値を超える場合よりも、上記所定の転送制御部に設定する優先度を向上させることを特徴とする請求項1に記載のデータ転送制御装置。
The priority control means is:
2. The data transfer according to claim 1, wherein when the transfer data amount per unit time is equal to or less than a target value, the priority set in the predetermined transfer control unit is improved as compared with a case where the transfer value exceeds the target value. Control device.
上記優先度制御手段は、
上記単位時間当たりの転送データ量が目標値以下の場合、上記所定の転送制御部に、最も高い優先度を設定することを特徴とする請求項2に記載のデータ転送制御装置。
The priority control means is:
3. The data transfer control device according to claim 2, wherein when the transfer data amount per unit time is equal to or less than a target value, the highest priority is set in the predetermined transfer control unit.
所定規則に従った優先度が転送制御部毎に与えられており、
上記優先度制御手段は、
上記単位時間当たりの転送データ量が目標値以下の場合、上記所定の転送制御部に、上記所定規則に従った各優先度よりも高い優先度を上記最も高い優先度として設定し、他の転送制御部に、当該他の転送制御部に与えられている上記所定規則に従った優先度を設定し、
上記単位時間当たりの転送データ量が目標値を越える場合、上記所定の転送制御部に、上記所定規則に従って当該所定の転送制御部に与えられている優先度を設定し、他の転送制御部に、上記所定規則に従って当該他の転送制御部に与えられている優先度を設定することを特徴とする請求項3に記載のデータ転送制御装置。
A priority according to a predetermined rule is given to each transfer control unit,
The priority control means is:
When the transfer data amount per unit time is less than or equal to a target value, the priority higher than each priority according to the predetermined rule is set as the highest priority in the predetermined transfer control unit, and another transfer In the control unit, set the priority according to the predetermined rule given to the other transfer control unit,
When the amount of transfer data per unit time exceeds the target value, the priority given to the predetermined transfer control unit is set in the predetermined transfer control unit according to the predetermined rule, and the other transfer control unit is set. 4. The data transfer control device according to claim 3, wherein a priority given to the other transfer control unit is set according to the predetermined rule.
上記優先度制御手段は、
上記単位時間当たりの転送データ量が目標値以下の所定の転送制御部が複数ある場合、所定規則に従って各所定の転送制御部に与えられている各々の優先度に基づいて、いずれか一つの所定の転送制御部のみに、上記最も高い優先度を設定することを特徴とする請求項4に記載のデータ転送制御装置。
The priority control means is:
When there are a plurality of predetermined transfer control units whose transfer data amount per unit time is less than or equal to the target value, one of the predetermined transfer control units is determined based on each priority given to each predetermined transfer control unit according to a predetermined rule 5. The data transfer control device according to claim 4, wherein the highest priority is set only for the transfer control unit.
上記優先度制御手段は、
上記単位時間当たりの転送データ量が目標値以下の所定の転送制御部が複数ある場合、上記目標値に対する上記転送データ量の不足度を示した不足度パラメータが最も高い上記所定の転送制御部のみに、上記最も高い優先度を設定することを特徴とする請求項3または4に記載のデータ転送制御装置。
The priority control means is:
When there are a plurality of predetermined transfer control units whose transfer data amount per unit time is less than or equal to a target value, only the predetermined transfer control unit having the highest deficiency parameter indicating the deficiency of the transfer data amount with respect to the target value 5. The data transfer control device according to claim 3 or 4, wherein the highest priority is set.
上記不足度パラメータとは、上記目標値と上記転送データ量との差分の絶対値であることを特徴とする請求項6に記載のデータ転送制御装置。   The data transfer control device according to claim 6, wherein the deficiency parameter is an absolute value of a difference between the target value and the transfer data amount. 上記不足度パラメータとは、上記目標値と上記転送データ量との差分の絶対値を上記目標値で除算した値であることを特徴とする請求項6に記載のデータ転送制御装置。   The data transfer control device according to claim 6, wherein the deficiency parameter is a value obtained by dividing an absolute value of a difference between the target value and the transfer data amount by the target value. 上記所定の転送制御部とは、帯域保証要求を出力している転送制御部であることを特徴とする請求項1ないし8のいずれか1項に記載のデータ転送制御装置。   9. The data transfer control device according to claim 1, wherein the predetermined transfer control unit is a transfer control unit that outputs a bandwidth guarantee request. 上記計測手段は、
上記所定の転送制御部が上記帯域保証要求を出力している期間中のみ、当該所定の転送制御部に制御されるデータ転送についての単位時間当たりの転送データ量を計測することを特徴とする請求項9に記載のデータ転送制御装置。
The measuring means is
The transfer data amount per unit time for data transfer controlled by the predetermined transfer control unit is measured only during a period when the predetermined transfer control unit outputs the bandwidth guarantee request. Item 12. The data transfer control device according to Item 9.
上記計測手段は、
所定期間毎に、計測した単位時間当たりの転送データ量をリセットすることを特徴とする請求項1ないし10のいずれか1項に記載のデータ転送制御装置。
The measuring means is
11. The data transfer control device according to claim 1, wherein the measured transfer data amount per unit time is reset every predetermined period.
請求項1ないし11のいずれか1項に記載のデータ転送制御装置を含んだデータ転送装置であって、上記転送回路と、上記転送回路を共用する上記複数の転送制御部と、を含むことを特徴とするデータ転送装置。   A data transfer device including the data transfer control device according to any one of claims 1 to 11, comprising the transfer circuit and the plurality of transfer control units sharing the transfer circuit. A data transfer device. 請求項12に記載のデータ転送装置と、画像を印刷する処理を行う印刷部と、を含んだ画像形成装置であって、
上記所定の転送制御部とは、上記印刷部に対する画像データの転送を制御する画像データ転送制御部であることを特徴とする画像形成装置。
An image forming apparatus comprising: the data transfer device according to claim 12; and a printing unit that performs processing for printing an image.
The predetermined transfer control unit is an image data transfer control unit that controls transfer of image data to the printing unit.
転送回路を介したデータ転送を制御する複数の転送制御部が上記転送回路を共有しており、各転送制御部からデータ転送要求を受信すると、上記各転送制御部に設定される各優先度に基づいて、いずれか一つの転送制御部によるデータ転送を実行させるデータ転送制御方法において、
上記複数の転送制御部のうちの所定の転送制御部によるデータ転送について、単位時間当たりの転送データ量を計測する工程と、
上記計測された単位時間当たりの転送データ量に応じて上記所定の転送制御部に設定される優先度を変更する工程と、
を含むことを特徴とするデータ転送制御方法。
A plurality of transfer control units that control data transfer via the transfer circuit share the transfer circuit. When a data transfer request is received from each transfer control unit, each priority is set to each transfer control unit. Based on the data transfer control method for executing data transfer by any one transfer control unit,
A step of measuring a transfer data amount per unit time for data transfer by a predetermined transfer control unit among the plurality of transfer control units;
Changing the priority set in the predetermined transfer control unit according to the measured transfer data amount per unit time;
A data transfer control method comprising:
データ転送制御プログラムであって、コンピュータを請求項1ないし11のいずれか1項に記載の各手段として機能させるデータ転送制御プログラム。   A data transfer control program for causing a computer to function as each means according to any one of claims 1 to 11. 請求項15に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the control program according to claim 15 is recorded.
JP2005174381A 2005-06-14 2005-06-14 Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program Pending JP2006350573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005174381A JP2006350573A (en) 2005-06-14 2005-06-14 Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005174381A JP2006350573A (en) 2005-06-14 2005-06-14 Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program

Publications (1)

Publication Number Publication Date
JP2006350573A true JP2006350573A (en) 2006-12-28

Family

ID=37646362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005174381A Pending JP2006350573A (en) 2005-06-14 2005-06-14 Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program

Country Status (1)

Country Link
JP (1) JP2006350573A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011065649A (en) * 2009-09-15 2011-03-31 Arm Ltd Data processing apparatus and method for setting priority level of transaction
JP2012161065A (en) * 2011-01-14 2012-08-23 Ricoh Co Ltd Image processing apparatus and data transfer management method
JP2012199788A (en) * 2011-03-22 2012-10-18 Renesas Electronics Corp Information processing system and arbitration method
JP2013250622A (en) * 2012-05-30 2013-12-12 Oki Data Corp Image processor
JP2018136866A (en) * 2017-02-23 2018-08-30 富士ゼロックス株式会社 Information processing apparatus and information processing program
US10225198B2 (en) 2015-08-24 2019-03-05 Fujitsu Limited Bandwidth control circuit, arithmetic processing apparatus, and bandwidth control method for apparatus

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011065649A (en) * 2009-09-15 2011-03-31 Arm Ltd Data processing apparatus and method for setting priority level of transaction
US9201816B2 (en) 2009-09-15 2015-12-01 Arm Limited Data processing apparatus and a method for setting priority levels for transactions
JP2012161065A (en) * 2011-01-14 2012-08-23 Ricoh Co Ltd Image processing apparatus and data transfer management method
JP2012199788A (en) * 2011-03-22 2012-10-18 Renesas Electronics Corp Information processing system and arbitration method
JP2013250622A (en) * 2012-05-30 2013-12-12 Oki Data Corp Image processor
US10225198B2 (en) 2015-08-24 2019-03-05 Fujitsu Limited Bandwidth control circuit, arithmetic processing apparatus, and bandwidth control method for apparatus
JP2018136866A (en) * 2017-02-23 2018-08-30 富士ゼロックス株式会社 Information processing apparatus and information processing program

Similar Documents

Publication Publication Date Title
JP4485574B2 (en) Access control device, access control integrated circuit, and access control method
WO2009119009A1 (en) Access controller
KR102372289B1 (en) Memory access system, method for controlling the same, computer-readable storage medium, and image forming apparatus
JP4907166B2 (en) Resource management device
CN108463836B (en) Image processing apparatus, image processing method, and image processing program
US9600426B2 (en) Bus control device, image processing apparatus, and bus control method
US20130254444A1 (en) Image processing apparatus
JP4436367B2 (en) Arbitration apparatus, arbitration method, and moving picture processing apparatus including the arbitration apparatus that guarantee local concentrated access with a low bandwidth
JP2006350573A (en) Data transfer controller, data transfer control method, data transfer device, image forming device, data transfer control program and computer-readable recording medium recording control program
JP2004287576A (en) Bus controller
JP2009043089A (en) Bus control device and bus control method
JP2016177481A (en) Image processing device, image forming apparatus, and program
JP4898527B2 (en) RESOURCE USE MANAGEMENT DEVICE, RESOURCE USE MANAGEMENT SYSTEM, AND RESOURCE USE MANAGEMENT DEVICE CONTROL METHOD
JP7381603B2 (en) Data transfer device and data transfer method
JP6210022B2 (en) Information processing apparatus and memory access arbitration method
US7747806B2 (en) Resource use management device, resource use management system, and control method for a resource use management device
JP2007102509A (en) Arbitration device
JP2006215621A (en) Dma controller
JP2008165547A (en) Communication control device
JP2007095089A (en) Bus arbiter
JP2007219925A (en) Bus controller, bus control program and recording medium
WO2020230413A1 (en) Information processing device
JP2006053613A (en) Data transfer controller and data transfer control method
US20180107613A1 (en) Image Processing Apparatus, Method of Controlling Image Processing Apparatus, and Recording Medium
JP2006018661A (en) Memory controller and memory control method