JP2005316866A - Bus device - Google Patents
Bus device Download PDFInfo
- 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
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
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).
従来のバス装置は以上のように構成されているので、タイムスロットへの割り当て規則が固定的であるため、あるマスタ装置のデータ転送処理要求の発生頻度が局所的に減少した場合には、タイムスロットに割り当てるデータ転送処理要求が無くなり、タイムスロットに空きスロットが生じ、バス装置が持つバンド幅を有効に使用できなくなるなどの課題があった。 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のような記憶装置が適用されるものである。
FIG. 1 is a block diagram showing a bus device according to a first embodiment of the present invention. In FIG. 1, a
バス装置1において、データFIFO11aは、対応するマスタ装置2aからのデータ転送処理要求を蓄積し、データFIFO11bは、対応するマスタ装置2bからのデータ転送処理要求を蓄積するものである。カウンタ12aは、データFIFO11aに蓄積されたデータ転送処理要求数をカウントし、カウンタ12bは、データFIFO11bに蓄積されたデータ転送処理要求数をカウントするものである。レジスタ13は、データFIFO11aとデータFIFO11bとの優先順位が予め設定されるものである。
In the
タイムスロット14は、一次元的に形成された複数のスロットにデータ転送処理要求が割り当てられ、その割り当てられた順番にデータ転送処理要求を処理するものであり、データバス15は、バス装置1とスレーブ装置3a,3bとの間でデータを送受信するものである。データ多重回路16は、カウンタ12a,12bによるカウント値に基づいて、蓄積されたデータ転送処理要求数の多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロット14に割り当て、各データFIFO11a,11bの蓄積されたデータ転送処理要求数が同等の場合に、レジスタ13に予め設定された優先順位に従ってデータ転送処理要求をデータFIFOから取り出してタイムスロット14に割り当て、データバス15に出力するものである。
図2はデータ転送処理要求の形式を示す説明図である。
In the
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
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
The
Here, first, if M> N, the
If M <N, the
さらに、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
図1におけるタイムスロット14では、#1、#3〜#5スロットにマスタ装置2aからのデータ転送処理要求が割り当てられ、#2スロットにマスタ装置2bからのデータ転送処理要求が割り当てられ、#6〜#8スロットが空きスロットとなっている。このように、データFIFO11a,11bのうちの蓄積されたデータ転送処理要求数の最も多いデータFIFOから優先的にデータ転送処理要求を取り出してタイムスロット14に割り当てられるので、データFIFO11a,11bのどちらかにデータ転送処理要求数が格納されている間は、タイムスロット14の#1スロットに空きスロットが生じることなく、効率的にバスを使用することができる。
以降、データバス15では、そのタイムスロット14に割り当てられた順番にデータ転送処理要求を処理する。すなわち、スレーブIDに応じたスレーブ装置にデータ転送処理要求を転送する。
In the
Thereafter, the
以上のように、この実施の形態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
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 バス装置、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.
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)
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)
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 |
-
2004
- 2004-04-30 JP JP2004136034A patent/JP2005316866A/en active Pending
Patent Citations (3)
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)
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 |