JP2005316866A - Bus device - Google Patents

Bus device Download PDF

Info

Publication number
JP2005316866A
JP2005316866A JP2004136034A JP2004136034A JP2005316866A JP 2005316866 A JP2005316866 A JP 2005316866A JP 2004136034 A JP2004136034 A JP 2004136034A JP 2004136034 A JP2004136034 A JP 2004136034A JP 2005316866 A JP2005316866 A JP 2005316866A
Authority
JP
Japan
Prior art keywords
data
transfer processing
data transfer
processing requests
bus
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
JP2004136034A
Other languages
Japanese (ja)
Inventor
Takayuki Minegishi
孝行 峯岸
Koichi Suzuki
弘一 鈴木
Kozo Ishida
耕三 石田
Midori Ono
みどり 小野
Osamu Toyama
治 遠山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2004136034A priority Critical patent/JP2005316866A/en
Publication of JP2005316866A publication Critical patent/JP2005316866A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a bus device capable of efficiently using a bus even if the generation frequency of data transfer processing requests of each master device changes. <P>SOLUTION: The bus device 1 is provided with data FIFOs 11a, 11b for accumulating data transfer processing requests from the corresponding master devices 2a, 2b; counters 12a, 12b for counting the number of data transfer processing requests accumulated in the respective data FIFOs 11a, 11b; and a data multiplex circuit 16 taking out data transfer processing requests preferentially from the data FIFO most in the number of accumulated data transfer processing requests based on count values of the counters 12a, 12b, to assign them to a time slot 14, taking out the data transfer processing requests from the data FIFO according to the order of priority preset to a register 13, to assign them to the time slot 14 when numbers of the data transfer processing requests accumulated in the respective data FIFOs are equal, and outputting them to the data bus 15. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

この発明は、複数のマスタ装置および複数のスレーブ装置間に接続され、それら複数のマスタ装置および複数のスレーブ装置間相互のデータ転送を行うバス装置に関するものである。   The present invention relates to a bus device that is connected between a plurality of master devices and a plurality of slave devices, and performs data transfer between the plurality of master devices and the plurality of slave devices.

従来のバス装置は、予め設定された優先順位に従って、タイムスロットに割り当てるデータ転送処理要求の選択を行っていた(例えば、特許文献1参照)。また、優先度の低いマスタ装置が優先順位を書き換える機能を持つことにより優先度の高いマスタ装置がバスを占有することを防ぐ方法も提案されている(例えば、特許文献2参照)。   A conventional bus device selects a data transfer processing request to be assigned to a time slot according to a preset priority (see, for example, Patent Document 1). In addition, a method has been proposed in which a master device having a low priority has a function of rewriting the priority order to prevent a master device having a high priority from occupying the bus (for example, see Patent Document 2).

特開平2−45857号公報JP-A-2-45857 特開平9−198342号公報JP-A-9-198342

従来のバス装置は以上のように構成されているので、タイムスロットへの割り当て規則が固定的であるため、あるマスタ装置のデータ転送処理要求の発生頻度が局所的に減少した場合には、タイムスロットに割り当てるデータ転送処理要求が無くなり、タイムスロットに空きスロットが生じ、バス装置が持つバンド幅を有効に使用できなくなるなどの課題があった。   Since the conventional bus device is configured as described above, since the rules for assigning to time slots are fixed, if the frequency of data transfer processing requests of a certain master device decreases locally, the time There are no data transfer processing requests to be assigned to slots, empty slots are generated in time slots, and the bandwidth of the bus device cannot be used effectively.

この発明は上記のような課題を解決するためになされたもので、各マスタ装置のデータ転送処理要求の発生頻度が変化した場合でも効率的にバスを使用できるバス装置を得ることを目的とする。   The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a bus device that can efficiently use a bus even when the frequency of data transfer processing requests of each master device changes. .

この発明に係るバス装置は、各マスタ装置毎に対応して設けられ、対応するマスタ装置からのデータ転送処理要求を蓄積するデータFIFOと、各データFIFOに蓄積されたデータ転送処理要求数をカウントするカウンタと、カウンタによるカウント値に基づいて、蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロットに割り当て、各データFIFOの蓄積されたデータ転送処理要求数が同等の場合に、予め設定された優先順位に従ってデータ転送処理要求をデータFIFOから取り出してタイムスロットに割り当てるデータ多重回路とを備えたものである。   The bus device according to the present invention is provided corresponding to each master device, and counts the data FIFO for storing data transfer processing requests from the corresponding master device and the number of data transfer processing requests stored in each data FIFO. And a data transfer processing request is preferentially extracted from the data FIFO having the largest number of stored data transfer processing requests based on the counter value and assigned to the time slot, and the data transfer stored in each data FIFO is performed. A data multiplexing circuit that extracts a data transfer processing request from the data FIFO and assigns it to a time slot in accordance with a preset priority when the number of processing requests is the same.

この発明によれば、蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロットに割り当てるようにしたので、あるマスタ装置のデータ転送処理要求の発生頻度が局所的に減少した場合でもタイムスロットに空きスロットが生じることなく、効率的にバスを使用することができる効果がある。   According to the present invention, the data transfer processing request is preferentially extracted from the data FIFO having the largest number of stored data transfer processing requests and assigned to the time slot. There is an effect that the bus can be used efficiently without a vacant slot being generated in the time slot even when the locality is reduced locally.

実施の形態1.
図1はこの発明の実施の形態1によるバス装置を示すブロック図であり、図において、バス装置1は、マスタ装置2a,2bと、スレーブ装置3a,3bとが相互に接続されて、それら接続されたマスタ装置2a,2bおよびスレーブ装置3a,3b間相互のデータ転送処理要求を処理するものである。なお、マスタ装置2a,2bとしては、コンピュータのような装置あるいは特定用途向けのH/W I/P等が適用され、スレーブ装置3a,3bとしては、SDRAMのような記憶装置が適用されるものである。
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a bus device according to a first embodiment of the present invention. In FIG. 1, a bus device 1 includes a master device 2a, 2b and a slave device 3a, 3b connected to each other, and their connection. The data transfer processing requests between the master devices 2a and 2b and the slave devices 3a and 3b are processed. As the master devices 2a and 2b, devices such as computers or H / W I / Ps for specific applications are applied, and as the slave devices 3a and 3b, storage devices such as SDRAM are applied. It is.

バス装置1において、データFIFO11aは、対応するマスタ装置2aからのデータ転送処理要求を蓄積し、データFIFO11bは、対応するマスタ装置2bからのデータ転送処理要求を蓄積するものである。カウンタ12aは、データFIFO11aに蓄積されたデータ転送処理要求数をカウントし、カウンタ12bは、データFIFO11bに蓄積されたデータ転送処理要求数をカウントするものである。レジスタ13は、データFIFO11aとデータFIFO11bとの優先順位が予め設定されるものである。   In the bus device 1, the data FIFO 11a stores data transfer processing requests from the corresponding master device 2a, and the data FIFO 11b stores data transfer processing requests from the corresponding master device 2b. The counter 12a counts the number of data transfer processing requests accumulated in the data FIFO 11a, and the counter 12b counts the number of data transfer processing requests accumulated in the data FIFO 11b. The register 13 has a priority set in advance between the data FIFO 11a and the data FIFO 11b.

タイムスロット14は、一次元的に形成された複数のスロットにデータ転送処理要求が割り当てられ、その割り当てられた順番にデータ転送処理要求を処理するものであり、データバス15は、バス装置1とスレーブ装置3a,3bとの間でデータを送受信するものである。データ多重回路16は、カウンタ12a,12bによるカウント値に基づいて、蓄積されたデータ転送処理要求数の多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロット14に割り当て、各データFIFO11a,11bの蓄積されたデータ転送処理要求数が同等の場合に、レジスタ13に予め設定された優先順位に従ってデータ転送処理要求をデータFIFOから取り出してタイムスロット14に割り当て、データバス15に出力するものである。
図2はデータ転送処理要求の形式を示す説明図である。
In the time slot 14, a data transfer processing request is assigned to a plurality of one-dimensionally formed slots, and the data transfer processing request is processed in the assigned order. The data bus 15 is connected to the bus device 1. Data is transmitted and received between the slave devices 3a and 3b. Based on the count values of the counters 12a and 12b, the data multiplexing circuit 16 preferentially takes out the data transfer processing requests from the accumulated data FIFO having a large number of data transfer processing requests and assigns them to the time slot 14, and each data FIFO 11a, When the number of data transfer processing requests stored in 11b is equal, the data transfer processing request is taken out from the data FIFO according to the priority set in advance in the register 13, assigned to the time slot 14, and output to the data bus 15. is there.
FIG. 2 is an explanatory diagram showing the format of a data transfer processing request.

次に動作について説明する。
図1において、マスタ装置2aからデータFIFO11aに、また、マスタ装置2bからデータFIFO11bにデータ転送処理要求が順次転送される。
図2はそのデータ転送処理要求の形式の一例を示したものであり、項目としては、転送元のマスタ装置を示すマスタID、転送先のスレーブ装置を示すスレーブID、具体的な命令を示すコマンド、スレーブ装置への書き込み要求の場合の書き込みデータがある。また、コマンドは階層的に形成され、スレーブ装置のアドレス、スレーブ装置への要求が読み出し要求か書き込み要求か、バイトイネーブル、バースト指示等がある。
Next, the operation will be described.
In FIG. 1, data transfer processing requests are sequentially transferred from the master device 2a to the data FIFO 11a and from the master device 2b to the data FIFO 11b.
FIG. 2 shows an example of the format of the data transfer processing request. Items include a master ID indicating the transfer source master device, a slave ID indicating the transfer destination slave device, and a command indicating a specific command. There is write data in the case of a write request to the slave device. The commands are formed in a hierarchical manner, and include a slave device address, whether the request to the slave device is a read request or a write request, byte enable, burst instruction, and the like.

図1において、データFIFO11a,11bにこのようなデータ転送処理要求が順次格納され、カウンタ12aは、データFIFO11aに蓄積されたデータ転送処理要求数をカウントし、そのカウント値がM、また、カウンタ12bは、データFIFO11bに蓄積されたデータ転送処理要求数をカウントし、そのカウント値がNであったとする。
データ多重回路16は、カウンタ12aおよびカウンタ12bによるカウント値MおよびNを比較する。
ここで、まず、M>Nならばデータ多重回路16は、蓄積されたデータ転送処理要求数の多いデータFIFO11aから優先的にデータ転送処理要求を1つ取り出してタイムスロット14に割り当てデータバス15に出力し、同時にカウンタ12aのカウント値を1つデクリメント(M−1)する。
また、M<Nならばデータ多重回路16は、蓄積されたデータ転送処理要求数の多いデータFIFO11bから優先的にデータ転送処理要求を1つ取り出してタイムスロット14に割り当てデータバス15に出力し、同時にカウンタ12bのカウント値を1つデクリメント(N−1)する。
In FIG. 1, such data transfer processing requests are sequentially stored in the data FIFOs 11a and 11b, and the counter 12a counts the number of data transfer processing requests accumulated in the data FIFO 11a, the count value is M, and the counter 12b. Assume that the number of data transfer processing requests accumulated in the data FIFO 11b is counted and the count value is N.
The data multiplexing circuit 16 compares the count values M and N by the counter 12a and the counter 12b.
Here, first, if M> N, the data multiplexing circuit 16 preferentially takes out one data transfer processing request from the accumulated data FIFO 11a having a large number of data transfer processing requests, assigns it to the time slot 14, and assigns it to the data bus 15. At the same time, the count value of the counter 12a is decremented by one (M-1).
If M <N, the data multiplexing circuit 16 preferentially takes out one data transfer processing request from the accumulated data FIFO 11b having a large number of data transfer processing requests, assigns it to the time slot 14, and outputs it to the data bus 15. At the same time, the count value of the counter 12b is decremented by one (N-1).

さらに、M=Nならばデータ多重回路16は、レジスタ13に予め設定された優先順位に従う。すなわち、レジスタ13にマスタ装置2aを優先させる値が設定されている場合には、データFIFO11aから優先的にデータ転送処理要求を1つ取り出してタイムスロット14に割り当てデータバス15に出力し、同時にカウンタ12aのカウント値を1つデクリメント(M−1)する。また、レジスタ13にマスタ装置2bを優先させる値が設定されている場合には、データFIFO11bから優先的にデータ転送処理要求を1つ取り出してタイムスロット14に割り当てデータバス15に出力し、同時にカウンタ12bのカウント値を1つデクリメント(N−1)する。   Further, if M = N, the data multiplexing circuit 16 follows the priority set in the register 13 in advance. That is, when a value for giving priority to the master device 2a is set in the register 13, one data transfer processing request is preferentially taken out from the data FIFO 11a, assigned to the time slot 14, and output to the data bus 15, and at the same time the counter The count value of 12a is decremented by one (M-1). Further, when a value for giving priority to the master device 2b is set in the register 13, one data transfer processing request is preferentially extracted from the data FIFO 11b, assigned to the time slot 14, and output to the data bus 15, and at the same time the counter The count value of 12b is decremented by one (N-1).

図1におけるタイムスロット14では、#1、#3〜#5スロットにマスタ装置2aからのデータ転送処理要求が割り当てられ、#2スロットにマスタ装置2bからのデータ転送処理要求が割り当てられ、#6〜#8スロットが空きスロットとなっている。このように、データFIFO11a,11bのうちの蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロット14に割り当てられるので、データFIFO11a,11bのどちらかにデータ転送処理要求数が格納されている間は、タイムスロット14の#1スロットに空きスロットが生じることなく、効率的にバスを使用することができる。
以降、データバス15では、そのタイムスロット14に割り当てられた順番にデータ転送処理要求を処理する。すなわち、スレーブIDに応じたスレーブ装置にデータ転送処理要求を転送する。
In the time slot 14 in FIG. 1, the data transfer processing request from the master device 2a is assigned to the # 1, # 3 to # 5 slots, the data transfer processing request from the master device 2b is assigned to the # 2 slot, and # 6 ~ Slot # 8 is an empty slot. As described above, since the data transfer processing request is preferentially extracted from the data FIFO having the largest number of stored data transfer processing requests among the data FIFOs 11a and 11b and assigned to the time slot 14, either the data FIFO 11a or 11b is selected. As long as the number of data transfer processing requests is stored, no bus is generated in the # 1 slot of the time slot 14, and the bus can be used efficiently.
Thereafter, the data bus 15 processes data transfer processing requests in the order assigned to the time slot 14. That is, the data transfer processing request is transferred to the slave device corresponding to the slave ID.

以上のように、この実施の形態1によれば、蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロット14に割り当てるようにしたので、あるマスタ装置のデータ転送処理要求の発生頻度が局所的に減少した場合でもタイムスロット14に空きスロットが生じることなく、効率的にバスを使用することができる。
なお、上記実施の形態1では、マスタ装置およびスレーブ装置とも2台の場合について説明したが、双方、何台接続したものであっても良い。
As described above, according to the first embodiment, since a data transfer processing request is preferentially extracted from the data FIFO having the largest number of stored data transfer processing requests and assigned to the time slot 14, a certain master Even when the frequency of the data transfer processing request of the apparatus is locally reduced, the bus can be used efficiently without an empty slot being generated in the time slot 14.
In the first embodiment, the case where there are two master devices and slave devices has been described, but any number of both devices may be connected.

この発明の実施の形態1によるバス装置を示すブロック図である。1 is a block diagram showing a bus device according to Embodiment 1 of the present invention. データ転送処理要求の形式を示す説明図である。It is explanatory drawing which shows the format of a data transfer process request.

符号の説明Explanation of symbols

1 バス装置、2a,2b マスタ装置、3a,3b スレーブ装置、11a,11b データFIFO、12a,12b カウンタ、13 レジスタ、14 タイムスロット、15 データバス、16 データ多重回路。   1 bus device, 2a, 2b master device, 3a, 3b slave device, 11a, 11b data FIFO, 12a, 12b counter, 13 registers, 14 time slots, 15 data bus, 16 data multiplexing circuit.

Claims (1)

複数のマスタ装置とスレーブ装置との間に発生する個々のデータ転送処理要求を、一次元的なタイムスロットに割り当てて、そのタイムスロットに割り当てられた順番にデータ転送処理要求を処理するバス装置において、
上記各マスタ装置毎に対応して設けられ、対応するマスタ装置からのデータ転送処理要求を蓄積するデータFIFOと、
上記各データFIFOに蓄積されたデータ転送処理要求数をカウントするカウンタと、
上記カウンタによるカウント値に基づいて、蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出して上記タイムスロットに割り当て、上記各データFIFOの蓄積されたデータ転送処理要求数が同等の場合に、予め設定された優先順位に従ってデータ転送処理要求をデータFIFOから取り出して上記タイムスロットに割り当てるデータ多重回路とを備えたことを特徴とするバス装置。
In a bus device that assigns individual data transfer processing requests generated between a plurality of master devices and slave devices to a one-dimensional time slot and processes the data transfer processing requests in the order assigned to the time slots. ,
A data FIFO that is provided for each of the master devices, and stores data transfer processing requests from the corresponding master devices;
A counter for counting the number of data transfer processing requests accumulated in each of the data FIFOs;
Based on the count value by the counter, a data transfer processing request is preferentially extracted from the data FIFO having the largest number of stored data transfer processing requests and assigned to the time slot, and the data transfer processing stored in each data FIFO is stored. A bus device comprising: a data multiplexing circuit that extracts a data transfer processing request from a data FIFO according to a preset priority order and allocates the request to the time slot when the number of requests is equal.
JP2004136034A 2004-04-30 2004-04-30 Bus device Pending JP2005316866A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004136034A JP2005316866A (en) 2004-04-30 2004-04-30 Bus device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004136034A JP2005316866A (en) 2004-04-30 2004-04-30 Bus device

Publications (1)

Publication Number Publication Date
JP2005316866A true JP2005316866A (en) 2005-11-10

Family

ID=35444197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004136034A Pending JP2005316866A (en) 2004-04-30 2004-04-30 Bus device

Country Status (1)

Country Link
JP (1) JP2005316866A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188214A (en) * 2006-01-12 2007-07-26 Renesas Technology Corp Semiconductor integrated circuit device
JP2008242651A (en) * 2007-03-26 2008-10-09 Sanyo Electric Co Ltd Arbitration device
WO2013038589A1 (en) * 2011-09-14 2013-03-21 パナソニック株式会社 Resource request mediation device, resource request mediation system, resource request mediation method, integrated circuit, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61267158A (en) * 1985-05-21 1986-11-26 Nec Corp Time slot assigning system for time division common bus
JPH03265963A (en) * 1990-03-15 1991-11-27 Nec Corp Bus controller
JPH05342143A (en) * 1992-06-05 1993-12-24 Mitsubishi Electric Corp Dma controller

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61267158A (en) * 1985-05-21 1986-11-26 Nec Corp Time slot assigning system for time division common bus
JPH03265963A (en) * 1990-03-15 1991-11-27 Nec Corp Bus controller
JPH05342143A (en) * 1992-06-05 1993-12-24 Mitsubishi Electric Corp Dma controller

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188214A (en) * 2006-01-12 2007-07-26 Renesas Technology Corp Semiconductor integrated circuit device
JP2008242651A (en) * 2007-03-26 2008-10-09 Sanyo Electric Co Ltd Arbitration device
WO2013038589A1 (en) * 2011-09-14 2013-03-21 パナソニック株式会社 Resource request mediation device, resource request mediation system, resource request mediation method, integrated circuit, and program
JPWO2013038589A1 (en) * 2011-09-14 2015-03-23 パナソニックIpマネジメント株式会社 Resource request arbitration device, resource request arbitration system, resource request arbitration method, integrated circuit, and program
US9367498B2 (en) 2011-09-14 2016-06-14 Panasonic Intellectual Property Management Co., Ltd. Resource request arbitration device, resource request arbitration system, resource request arbitration method, integrated circuit, and program

Similar Documents

Publication Publication Date Title
JP3641675B2 (en) Split buffer architecture
JP5199399B2 (en) Method and filter arrangement for storing information about messages arriving at a subscriber of the network via a serial data bus of the communication network
EP2038744B1 (en) Method and system of grouping interrupts from a time-dependent data storage means
EP0619036A1 (en) Method and apparatus for processing data within stations of a communication network
JP2005328119A (en) Communication message converter, communication method, and communication system
US10282343B2 (en) Semiconductor device
US11456975B2 (en) Communications network controller module
AU2003234641B2 (en) Inter-chip processor control plane
WO2016202158A1 (en) Message transmission method and device, and computer-readable storage medium
JP2009543183A (en) Method and apparatus for performing arbitration
JP2007034392A (en) Information processor and data processing method
JP2005316866A (en) Bus device
JP2005084907A (en) Memory band control unit
JP4836915B2 (en) Address processing
JP4170330B2 (en) Information processing device
CN113672400A (en) Data processing method, device and equipment and readable storage medium
JPWO2014002222A1 (en) Read request processing device
JP2011070670A (en) Method and system for exchanging data
JPWO2008105494A1 (en) DMA transfer apparatus and method
JP5772132B2 (en) Data transfer apparatus, data transfer method, and information processing apparatus
US11240178B2 (en) Data transmission method and data transmission system
JP2004056376A (en) Semiconductor device and data transfer control method
JP4015304B2 (en) Data processing device
JP5720989B2 (en) Data processing device
JP2006053613A (en) Data transfer controller and data transfer control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070315

RD04 Notification of resignation of power of attorney

Effective date: 20071015

Free format text: JAPANESE INTERMEDIATE CODE: A7424

RD04 Notification of resignation of power of attorney

Effective date: 20080715

Free format text: JAPANESE INTERMEDIATE CODE: A7424

A977 Report on retrieval

Effective date: 20100127

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Written amendment

Effective date: 20100222

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Effective date: 20100817

Free format text: JAPANESE INTERMEDIATE CODE: A02