Nothing Special   »   [go: up one dir, main page]

JP2007199859A - Data transfer system - Google Patents

Data transfer system Download PDF

Info

Publication number
JP2007199859A
JP2007199859A JP2006015508A JP2006015508A JP2007199859A JP 2007199859 A JP2007199859 A JP 2007199859A JP 2006015508 A JP2006015508 A JP 2006015508A JP 2006015508 A JP2006015508 A JP 2006015508A JP 2007199859 A JP2007199859 A JP 2007199859A
Authority
JP
Japan
Prior art keywords
data transfer
bus
crossbar switch
address
transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2006015508A
Other languages
Japanese (ja)
Inventor
Naoto Kosugi
直人 小杉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006015508A priority Critical patent/JP2007199859A/en
Publication of JP2007199859A publication Critical patent/JP2007199859A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

【課題】本発明は、回路規模の増大及び動作周波数の低下を極力抑えながら、サブシステム間のデータ転送性能を向上させることができるデータ転送システムを提供することを目的とする。
【解決手段】データ転送システムは、複数のマスタに接続される第1のクロスバスイッチと、複数のスレーブに接続される第2のクロスバスイッチと、第1のクロスバスイッチと第2のクロスバスイッチとの間を結合する第1のデータ転送経路と、第1のデータ転送経路と並列に設けられ第1のクロスバスイッチと第2のクロスバスイッチとの間を結合する第2のデータ転送経路を含み、第1のクロスバスイッチは、複数のスレーブの少なくとも1つに対して、アクセス経路として第1及び第2のデータ転送経路のうちの1つを要求に応じて動的に選択可能なように構成されることを特徴とする。
【選択図】図6
An object of the present invention is to provide a data transfer system capable of improving data transfer performance between subsystems while suppressing an increase in circuit scale and a decrease in operating frequency as much as possible.
A data transfer system includes: a first crossbar switch connected to a plurality of masters; a second crossbar switch connected to a plurality of slaves; and a first crossbar switch and a second crossbar switch. A first data transfer path that couples the first data transfer path and a second data transfer path that is provided in parallel with the first data transfer path and that couples between the first crossbar switch and the second crossbar switch, One crossbar switch is configured so that at least one of the plurality of slaves can dynamically select one of the first and second data transfer paths as an access path according to a request. It is characterized by that.
[Selection] Figure 6

Description

本発明は、一般にデータ転送システムに関し、詳しくはクロスバスイッチを用いたデータ転送システムに関する。   The present invention generally relates to a data transfer system, and more particularly to a data transfer system using a crossbar switch.

システムLSIは、CPUやメモリモジュール等の異なる機能を持った回路モジュールを複数組み合わせて単一のチップに搭載することで構成される。システムLSIにおいて、各回路モジュール間はシステムバスにより接続される。   The system LSI is configured by combining a plurality of circuit modules having different functions such as a CPU and a memory module and mounting them on a single chip. In the system LSI, circuit modules are connected by a system bus.

図1は、システムバスによる回路モジュール接続の典型的な構成例を示す図である。図1において、CPU、DMA(Dynamic Memory Access)コントローラ、DSP(Digital Signal Processor)等であるシステムのマスタとなるマスタモジュール101〜103と、各種メモリインタフェースやUSB(Universal Serial Bus)等の機能を実現するスレーブとなるスレーブモジュール104〜106とが設けられる。マスタモジュール101〜103とスレーブモジュール104〜106との間は、システムバス111により接続される。システムバス111では、同時に1つのデータの転送のみが実行可能である。   FIG. 1 is a diagram showing a typical configuration example of circuit module connection by a system bus. In FIG. 1, the master modules 101 to 103 serving as system masters such as a CPU, a DMA (Dynamic Memory Access) controller, a DSP (Digital Signal Processor), etc., and various memory interfaces and USB (Universal Serial Bus) functions are realized. Slave modules 104 to 106 are provided as slaves. The master modules 101 to 103 and the slave modules 104 to 106 are connected by a system bus 111. On the system bus 111, only one data transfer can be executed at the same time.

図1のようなシステムバス構成では、システムLSIのデータ転送性能を高めようとした場合、システムバス111部分がシステム性能の向上の妨げとなる可能性がある。例えば、マスタモジュール101がスレーブモジュール106にアクセスしようとし、同時にマスタモジュール102がスレーブモジュール104にアクセスしようとした場合には、システムバス111上では同時に1つのデータの転送しかできないため、一方の転送が終わるまで他方の転送が止められてしまい、転送性能が低下してしまう。これを「バス権の競合」と呼ぶ。システム全体のデータ転送性能を高めるためには、バス権の競合が少ないようなシステム構成とすることが必要となる。   In the system bus configuration as shown in FIG. 1, when the data transfer performance of the system LSI is to be improved, the system bus 111 portion may hinder the improvement of the system performance. For example, when the master module 101 tries to access the slave module 106 and the master module 102 tries to access the slave module 104 at the same time, only one data can be transferred on the system bus 111 at the same time. The other transfer is stopped until the transfer ends, and the transfer performance deteriorates. This is called “bus right competition”. In order to improve the data transfer performance of the entire system, it is necessary to have a system configuration in which there is little competition for bus rights.

上記のようなバス権の競合を回避するシステムバス構成として、クロスバスイッチ回路がある。図2は、クロスバスイッチによる回路モジュール接続の典型的な構成例を示す図である。図2において、マスタモジュール201〜203とスレーブモジュール204〜206との間は、クロスバスイッチ251により接続される。クロスバスイッチ251はインターフェース211乃至216を含む。インターフェース211乃至213がマスタモジュール201乃至203に接続され、インターフェース214乃至216がマスタモジュール204乃至206に接続される。これらのインターフェース211乃至216によりシステムバス接続を切り換え可能に構成することで、例えばマスタモジュール201からスレーブモジュール205へのデータ転送とマスタモジュール202からスレーブモジュール204へのデータ転送とを、同時に実行することが可能となる。   There is a crossbar switch circuit as a system bus configuration for avoiding the above-mentioned bus contention. FIG. 2 is a diagram illustrating a typical configuration example of circuit module connection by a crossbar switch. In FIG. 2, the master modules 201 to 203 and the slave modules 204 to 206 are connected by a crossbar switch 251. The crossbar switch 251 includes interfaces 211 to 216. Interfaces 211 to 213 are connected to master modules 201 to 203, and interfaces 214 to 216 are connected to master modules 204 to 206. By configuring the system bus connection to be switchable by these interfaces 211 to 216, for example, data transfer from the master module 201 to the slave module 205 and data transfer from the master module 202 to the slave module 204 can be executed simultaneously. Is possible.

図3は、AMBA(Advanced Microcontroller Bus Architecture)規格のAHB(Advanced High-performance Bus)プロトコルを想定したバスブリッジ回路の一般的な構成例を示す図である。図3において、クロスバスイッチ251は、アドレス信号線、データ信号線、及び制御信号線からなるバス221〜226を介して、3つのマスタモジュール201〜203及び3つのスレーブモジュール204〜206に接続されている。また同様にアドレス信号線、データ信号線、及び制御信号線からなるバス263により、インターフェース211乃至216間が接続されている。なおバス221〜226,263においては、実線がマスタ方向からスレーブ方向へ流れる信号(例えばアドレス信号、書き込みデータ信号、制御信号等)を表し、破線がスレーブ方向からマスタ方向へ流れるバス信号(例えば読み出しデータ信号、応答信号等)を表している。   FIG. 3 is a diagram showing a general configuration example of a bus bridge circuit assuming an AHB (Advanced High-performance Bus) protocol of the AMBA (Advanced Microcontroller Bus Architecture) standard. In FIG. 3, the crossbar switch 251 is connected to three master modules 201 to 203 and three slave modules 204 to 206 via buses 221 to 226 including address signal lines, data signal lines, and control signal lines. Yes. Similarly, the interfaces 211 to 216 are connected by a bus 263 including an address signal line, a data signal line, and a control signal line. In the buses 221 to 226 and 263, solid lines represent signals that flow from the master direction to the slave direction (for example, address signals, write data signals, control signals, etc.), and broken lines represent bus signals that flow from the slave direction to the master direction (for example, read). Data signal, response signal, etc.).

インターフェース211〜213は、マスタモジュールからのバス信号を制御するI/F制御回路284〜286と、バス上のアドレス信号をデコードするアドレスデコーダ281〜283と、読み出しデータ信号や応答信号等を選択する選択回路287〜289を含む。I/F制御モジュール284〜286は、マスタモジュールからバス263に送信される制御信号を監視する。バスに新規転送を流すことができない状況においてバス転送を要求する制御信号を検出すると、I/F制御モジュール284〜286は、バスに対する新規転送発行を抑止するような応答信号(バス221〜223の破線)をマスタモジュールに返す。またI/F制御モジュール284〜286は更に、現在のバスの値を一時的に保持する機能を有する。   The interfaces 211 to 213 select I / F control circuits 284 to 286 that control bus signals from the master module, address decoders 281 to 283 that decode address signals on the bus, read data signals, response signals, and the like. Selection circuits 287 to 289 are included. The I / F control modules 284 to 286 monitor control signals transmitted from the master module to the bus 263. When a control signal for requesting bus transfer is detected in a situation where a new transfer cannot be sent to the bus, the I / F control modules 284 to 286 detect response signals (for the buses 221 to 223 that suppress the issuance of new transfer to the bus). (Broken line) is returned to the master module. The I / F control modules 284 to 286 further have a function of temporarily holding the current bus value.

アドレスデコーダ281〜283は、バス上のアドレスデータをアドレスマップに従ってデコードする。アドレスデコーダ281〜283は、このデコード結果に従って、アドレスデータが指示するアクセス先のインターフェース214〜216に転送要求信号261を送出する。選択回路287〜289は、アドレスデコーダ281〜283のデコード結果に従って、アドレスデータが指示するアクセス先からのデータ信号、応答信号等を選択する。   Address decoders 281 to 283 decode address data on the bus according to the address map. The address decoders 281 to 283 send a transfer request signal 261 to the access destination interfaces 214 to 216 indicated by the address data according to the decoding result. The selection circuits 287 to 289 select a data signal, a response signal, and the like from the access destination indicated by the address data according to the decoding results of the address decoders 281 to 283.

一方、インターフェース214〜216は、調停回路291〜293と選択回路294〜296とを含む。調停回路291〜293は、インターフェース211〜213からの転送要求信号261を受信して転送許可/不許可を示す転送可否応答信号262をインターフェース211〜213に返すとともに、調停結果を示す信号を選択回路294〜296に供給する。選択回路294〜296は、調停回路291〜293による調停結果に応じてバス信号を選択する。   On the other hand, the interfaces 214 to 216 include arbitration circuits 291 to 293 and selection circuits 294 to 296. The arbitration circuits 291 to 293 receive the transfer request signal 261 from the interfaces 211 to 213 and return a transfer enable / disable response signal 262 indicating transfer permission / non-permission to the interfaces 211 to 213 and select a signal indicating the arbitration result as a selection circuit. 294-296. The selection circuits 294 to 296 select a bus signal in accordance with the arbitration results from the arbitration circuits 291 to 293.

上述したクロスバスイッチによる回路構成を用いる場合、バス件の競合が発生しないので、システム全体としてデータ転送性能が向上する。即ち、例えばマスタモジュール201がスレーブモジュール206にアクセスしようとし、同時にマスタモジュール202がスレーブモジュール204にアクセスしようとした場合においても、並列に複数のバスが設けられているためにデータ転送経路が重ならず、バス権の競合が発生しない。   When the circuit configuration using the crossbar switch described above is used, bus contention does not occur, so that the data transfer performance is improved as a whole system. That is, for example, even when the master module 201 tries to access the slave module 206 and the master module 202 tries to access the slave module 204 at the same time, the data transfer paths are overlapped because a plurality of buses are provided in parallel. No bus right conflicts occur.

近年、LSIの規模が大きくなり、クロスバスイッチに接続されるモジュール数が増加するとともに、システムの動作周波数を高く保つことが要求されている。このような回路においては、図3に示すようなクロスバスイッチの回路構成は必ずしも効果的ではなく、モジュール数の増加が要因となり、システム全体のデータ性能向上が低下してしまう場合がある。   In recent years, the scale of LSIs has increased, and the number of modules connected to the crossbar switch has increased, and it has been required to keep the system operating frequency high. In such a circuit, the circuit configuration of the crossbar switch as shown in FIG. 3 is not always effective, and an increase in the number of modules may cause a reduction in data performance of the entire system.

例えば、複数のマスタモジュール間でバス権の競合を全く発生させないように構成するためには、クロスバスイッチ内部において、マスタモジュール数と同数の並列なバスを設ける必要がある。一組のバスはデータ線、アドレス線、制御線等の多数の配線から構成されるので、多数のバスを含むクロスバスイッチ回路は、LSI実装時に必要な配線数が非常に多くなる。従ってモジュール数が増加すると、LSI内部の配線配置制約が厳しくなり、その結果、LSI回路面積の増大や動作周波数の低下を招き、システム全体としてのデータ転送性能が低下してしまう。   For example, in order to prevent any bus contention from occurring among a plurality of master modules, it is necessary to provide the same number of parallel buses as the number of master modules in the crossbar switch. Since a set of buses is composed of a large number of wires such as data lines, address lines, and control lines, a crossbar switch circuit including a large number of buses requires a large number of wires when LSI is mounted. Therefore, when the number of modules increases, the wiring arrangement restriction inside the LSI becomes severe, and as a result, the LSI circuit area increases and the operating frequency decreases, and the data transfer performance of the entire system decreases.

回路面積の増大を防ぎながらバス権の競合が発生しにくい状況を実現する構成として、バスブリッジを利用した構成がある。図4は、バスブリッジを利用したクロスバスイッチによる回路モジュール接続の典型的な構成例を示す図である。   There is a configuration using a bus bridge as a configuration that realizes a situation in which bus right contention hardly occurs while preventing an increase in circuit area. FIG. 4 is a diagram showing a typical configuration example of circuit module connection by a crossbar switch using a bus bridge.

図4のシステムは、システム全体が2つのサブシステムに分割され、マスタモジュール301〜303及びスレーブモジュール305から構成される第1のサブシステムと、マスタモジュール304及びスレーブモジュール306〜308から構成される第2のサブシステムとが設けられる。第1のサブシステムのクロスバスイッチ351と第2のサブシステムのクロスバスイッチ352とが、1本のバスブリッジ331によって結合されている。311乃至315と321乃至325はインターフェースである。この構成は、例えば特許文献1に開示される。   The system shown in FIG. 4 is divided into two sub-systems, and includes a first sub-system composed of master modules 301 to 303 and a slave module 305, and a master module 304 and slave modules 306-308. A second subsystem is provided. The crossbar switch 351 of the first subsystem and the crossbar switch 352 of the second subsystem are coupled by a single bus bridge 331. Reference numerals 311 to 315 and 321 to 325 are interfaces. This configuration is disclosed in Patent Document 1, for example.

図4に示す構成には、回路の面積増加を抑えながら、転送性能を高く保つことができるという利点がある。例えば、各サブシステム内のデータ転送についてはバス権の競合が発生しないだけでなく、バスブリッジ331を介したデータ転送も同時に実行可能である。このようにバス競合をある低度避けることにより転送性能を高く保ちながらも、複数のマスタモジュールと複数のスレーブモジュールとの間の全ての組み合わせに対してバス配線を設けることなく、回路の面積増加を抑えることができる。   The configuration shown in FIG. 4 has an advantage that transfer performance can be kept high while suppressing an increase in circuit area. For example, for data transfer within each subsystem, not only does bus contention not occur, but data transfer via the bus bridge 331 can be performed simultaneously. Thus, while keeping the transfer performance high by avoiding bus contention at a certain level, the circuit area is increased without providing bus wiring for all combinations between the plurality of master modules and the plurality of slave modules. Can be suppressed.

しかしながら、2つのクロスバスイッチ351及び352を結ぶバスブリッジ331の部分が、システム全体のデータ転送性能を律してしまうので、クロスバスイッチに接続されるモジュール数が増えた場合に問題となる可能性がある。例えば画像処理、音声処理、通信処理等のデータ転送に代表されるような、一定以上のデータ転送性能を保つ必要がある転送がバスブリッジ331を介して行われる場合、バスブリッジが一重であることにより、他の転送との間でバス権の競合が生じてしまうと、データ転送性能を満たすことができなくなってしまう可能性がある。   However, the portion of the bus bridge 331 that connects the two crossbar switches 351 and 352 regulates the data transfer performance of the entire system, which may cause a problem when the number of modules connected to the crossbar switch increases. is there. For example, when a transfer that needs to maintain a certain level of data transfer performance, such as data transfer such as image processing, sound processing, and communication processing, is performed via the bus bridge 331, the bus bridge is single. Therefore, if a bus right conflict occurs with another transfer, the data transfer performance may not be satisfied.

図5は、図4の構成において例えばマスタ301から見た場合のアドレスマップの構成を示す図である。図5に示すように、スレーブ306〜308については、バスブリッジ331を介してのみアクセス可能である。即ち、スレーブ306〜308のアドレス範囲0xFFFF5001〜0xFFFF8000は、バスブリッジ331に割当てられている。従って、例えばマスタ301からスレーブ306にアクセスしようとし、マスタ302からスレーブ307にアクセスしようとした場合には、バスブリッジ331に対するバス競合が発生することになる。
特開2000−339269号公報 特開2001−197228号公報 特開平11−110342号公報
FIG. 5 is a diagram showing a configuration of an address map when viewed from the master 301 in the configuration of FIG. As shown in FIG. 5, the slaves 306 to 308 can be accessed only via the bus bridge 331. That is, the address range 0xFFFF5001 to 0xFFFF8000 of the slaves 306 to 308 is assigned to the bus bridge 331. Therefore, for example, when the master 301 tries to access the slave 306 and the master 302 tries to access the slave 307, bus contention for the bus bridge 331 occurs.
JP 2000-339269 A JP 2001-197228 A JP-A-11-110342

以上を鑑みて本発明は、回路規模の増大及び動作周波数の低下を極力抑えながら、サブシステム間のデータ転送性能を向上させることができるデータ転送システムを提供することを目的とする。   In view of the above, an object of the present invention is to provide a data transfer system capable of improving data transfer performance between subsystems while suppressing an increase in circuit scale and a decrease in operating frequency as much as possible.

データ転送システムは、複数のマスタに接続される第1のクロスバスイッチと、複数のスレーブに接続される第2のクロスバスイッチと、該第1のクロスバスイッチと該第2のクロスバスイッチとの間を結合する第1のデータ転送経路と、該第1のデータ転送経路と並列に設けられ該第1のクロスバスイッチと該第2のクロスバスイッチとの間を結合する第2のデータ転送経路を含み、該第1のクロスバスイッチは、該複数のスレーブの少なくとも1つに対して、アクセス経路として該第1及び第2のデータ転送経路のうちの1つを要求に応じて動的に選択可能なように構成されることを特徴とする。   A data transfer system includes a first crossbar switch connected to a plurality of masters, a second crossbar switch connected to a plurality of slaves, and between the first crossbar switch and the second crossbar switch. A first data transfer path to be coupled, and a second data transfer path that is provided in parallel with the first data transfer path and couples between the first crossbar switch and the second crossbar switch, The first crossbar switch can dynamically select one of the first and second data transfer paths as an access path for at least one of the plurality of slaves according to a request. It is comprised by this.

本発明の少なくとも1つの実施例によれば、データ転送システムにおいて、第1のデータ転送経路と第2のデータ転送経路との多重のデータ転送経路を設けることにより、第1のクロスバスイッチ及び第2のクロスバスイッチの間のデータ転送性能を向上させることができる。即ち、多重のデータ転送経路を介してデータ転送を同時に並行して実行することができる。またスレーブの少なくとも1つに対しては、多重のデータ転送経路のうち要求に応じて動的に選択したデータ転送経路を介してアクセス可能であるように第1のクロスバスイッチを構成することで、回路面積の増加を抑えながらデータ転送の自由度・柔軟性を向上させ、データ転送性能を向上させることができる。   According to at least one embodiment of the present invention, in the data transfer system, the first crossbar switch and the second data transfer path are provided by providing multiple data transfer paths of the first data transfer path and the second data transfer path. The data transfer performance between the crossbar switches can be improved. That is, data transfer can be executed simultaneously in parallel via multiple data transfer paths. In addition, by configuring the first crossbar switch so that at least one of the slaves can be accessed through a data transfer path that is dynamically selected according to a request among multiple data transfer paths, Data transfer performance can be improved by improving the flexibility and flexibility of data transfer while suppressing an increase in circuit area.

以下に、本発明の実施例を添付の図面を用いて詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

図6は、本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの基本構成を示す図である。なお本発明において、図6に示す構成の各モジュールの数、クロスバスイッチの数、バスブリッジの数、サブシステムの数等は一例であり、ここに図示される数に限られるものではない。   FIG. 6 is a diagram showing a basic configuration of a system using a crossbar switch and bus bridge configuration according to the present invention. In the present invention, the number of modules having the configuration shown in FIG. 6, the number of crossbar switches, the number of bus bridges, the number of subsystems, etc. are examples, and are not limited to the numbers shown here.

図6に示す構成においては、マスタモジュール401〜403とスレーブモジュール405とがクロスバスイッチ451に接続され、マスタモジュール404とスレーブモジュール406〜408とがクロスバスイッチ452に接続される。クロスバスイッチ451とクロスバスイッチ452とは、多重のバスブリッジ431及び432により互いに接続される。クロスバスイッチ451はインターフェース411乃至416を含み、クロスバスイッチ452はインターフェース421乃至426を含む。   In the configuration shown in FIG. 6, the master modules 401 to 403 and the slave module 405 are connected to the crossbar switch 451, and the master module 404 and the slave modules 406 to 408 are connected to the crossbar switch 452. The crossbar switch 451 and the crossbar switch 452 are connected to each other by multiple bus bridges 431 and 432. The crossbar switch 451 includes interfaces 411 to 416, and the crossbar switch 452 includes interfaces 421 to 426.

多重のバスブリッジ431及び432を設けた構成とすることで、クロスバスイッチ451及びクロスバスイッチ452間のデータ転送性能は向上する。例えば、スレーブ406へのデータ転送にはバスブリッジ431が使用され、スレーブ407とスレーブ408へのデータ転送にはバスブリッジ432が使用されるとすると、これらのデータ転送は同時に並行して実行することができる。なお2つのバスブリッジ431及び432の何れがデータ転送に用いられるかは、クロスバスイッチ内部のアドレスデコーダによって決定される。   By providing the multiple bus bridges 431 and 432, the data transfer performance between the crossbar switch 451 and the crossbar switch 452 is improved. For example, if the bus bridge 431 is used for data transfer to the slave 406 and the bus bridge 432 is used for data transfer to the slave 407 and the slave 408, these data transfers should be executed simultaneously in parallel. Can do. Note that which of the two bus bridges 431 and 432 is used for data transfer is determined by an address decoder inside the crossbar switch.

図7は、図6の構成において例えばマスタ401,402,又は403から見た場合のアドレスマップの構成の一例を示す図である。図7に示す例では、スレーブ406については、バスブリッジ431を介してのみアクセス可能である。即ち、スレーブ406のアドレス範囲0xFFFF5001〜0xFFFF6000は、バスブリッジ431に割当てられている。またスレーブ407,408については、バスブリッジ432を介してのみアクセス可能である。即ち、スレーブ407,408のアドレス範囲0xFFFF6001〜0xFFFF8000は、バスブリッジ432に割当てられている。   FIG. 7 is a diagram showing an example of the configuration of the address map when viewed from the master 401, 402, or 403 in the configuration of FIG. In the example illustrated in FIG. 7, the slave 406 can be accessed only via the bus bridge 431. That is, the address range 0xFFFF5001 to 0xFFFF6000 of the slave 406 is assigned to the bus bridge 431. The slaves 407 and 408 can be accessed only via the bus bridge 432. That is, the address range 0xFFFF 6001 to 0xFFFF 8000 of the slaves 407 and 408 is assigned to the bus bridge 432.

従って、図7に示す例では、マスタ401からスレーブ406へのデータ転送にはバスブリッジ431が使用され、マスタ402からスレーブ408へのデータ転送にはバスブリッジ432が使用されるので、これらのデータ転送は同時に並行して実行することができる。但し、マスタ401からスレーブ407へデータ転送しようとし、同時にマスタ402からスレーブ408へデータ転送しようとしても、バスブリッジ432においてバス競合が発生してしまう。このような場合、例えばスレーブ408へのデータ転送が高い転送能力を必要とする優先度の高いデータ転送であるとすると問題となる。   Therefore, in the example shown in FIG. 7, the bus bridge 431 is used for data transfer from the master 401 to the slave 406, and the bus bridge 432 is used for data transfer from the master 402 to the slave 408. Transfers can be performed concurrently in parallel. However, even if an attempt is made to transfer data from the master 401 to the slave 407 and simultaneously an attempt to transfer data from the master 402 to the slave 408, bus contention occurs in the bus bridge 432. In such a case, for example, if the data transfer to the slave 408 is a high-priority data transfer that requires a high transfer capability, there is a problem.

このような場合を考慮して、本発明では、スレーブモジュール406〜408の少なくとも1つのモジュールに対して、多重のバスブリッジ431及び432のうち要求に応じて動的に選択したバスブリッジを介してアクセス可能となるように、クロスバスイッチ451を構成する。これによりデータ転送の自由度・柔軟性を向上させ、データ転送性能を増大させる。   In consideration of such a case, in the present invention, at least one of the slave modules 406 to 408 is connected to the multiple bus bridges 431 and 432 via a bus bridge that is dynamically selected according to a request. The crossbar switch 451 is configured to be accessible. This improves the degree of freedom and flexibility of data transfer and increases data transfer performance.

スレーブモジュール406〜408の少なくとも1つのモジュールに対して、多重のバスブリッジ431及び432のうち要求に応じて動的に選択したバスブリッジを介してアクセス可能となるように構成するために、本発明では第1の実施例の構成或いは第2の実施例の構成を用いる。第1の実施例の構成では、クロスバスイッチ内部のデコーダを動的に変更可能に構成する。第2の実施例では、データ転送要求に応じて多重のバスブリッジを動的に割当てるようにクロスバスイッチ内部の調停回路部を構成する。   In order to configure at least one of the slave modules 406 to 408 to be accessible via a bus bridge dynamically selected according to a request from among the multiple bus bridges 431 and 432, the present invention is provided. Then, the configuration of the first embodiment or the configuration of the second embodiment is used. In the configuration of the first embodiment, the decoder inside the crossbar switch is configured to be dynamically changeable. In the second embodiment, the arbitration circuit unit in the crossbar switch is configured to dynamically assign multiple bus bridges in response to a data transfer request.

まず第1の実施例について説明する。第1の実施例では、システムLSIを構成する複数のクロスバスイッチ間を結ぶバスブリッジを多重化し、多重になっているバスブリッジの一方のバスブリッジをある特定アドレス領域向けのデータ転送専用になるようにクロスバスイッチ内部のデコーダを動的に変更する。これにより、特に高い転送能力を必要とする優先度の高いデータ転送に関して、バス権の競合を無くし、高いデータ転送性能を実現することが可能となる。   First, the first embodiment will be described. In the first embodiment, bus bridges connecting a plurality of crossbar switches constituting the system LSI are multiplexed so that one bus bridge of the multiplexed bus bridges is dedicated to data transfer for a specific address area. The decoder inside the crossbar switch is dynamically changed. As a result, it is possible to eliminate bus contention and achieve high data transfer performance for data transfer with high priority that particularly requires high transfer capability.

図8は、本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの第1の実施例を示す図である。   FIG. 8 is a diagram showing a first embodiment of a system using a crossbar switch and bus bridge configuration according to the present invention.

図8に示す構成においては、マスタモジュール501〜503とデコーダ制御モジュール505とがクロスバスイッチ551に接続され、マスタモジュール504とスレーブモジュール506〜508とがクロスバスイッチ552に接続される。クロスバスイッチ551とクロスバスイッチ552とは、多重のバスブリッジ531及び532により互いに接続される。クロスバスイッチ551はインターフェース511乃至516を含み、クロスバスイッチ552はインターフェース521乃至526を含む。   In the configuration shown in FIG. 8, master modules 501 to 503 and decoder control module 505 are connected to crossbar switch 551, and master module 504 and slave modules 506 to 508 are connected to crossbar switch 552. The crossbar switch 551 and the crossbar switch 552 are connected to each other by multiple bus bridges 531 and 532. The crossbar switch 551 includes interfaces 511 to 516, and the crossbar switch 552 includes interfaces 521 to 526.

デコーダ制御モジュール505は、CPU等のマスタモジュールからアクセス可能なモジュールである。マスタモジュールからの指示に応じて、デコーダ制御モジュール505は、クロスバスイッチ内部のデコーダを動的に変更するためのモード信号571を送出する。   The decoder control module 505 is a module accessible from a master module such as a CPU. In response to an instruction from the master module, the decoder control module 505 transmits a mode signal 571 for dynamically changing the decoder in the crossbar switch.

図9は、図8のクロスバスイッチ551の構成の一例を示す図である。図9において、図8と同一の構成要素は同一の番号で参照し、その説明は省略する。   FIG. 9 is a diagram illustrating an example of the configuration of the crossbar switch 551 in FIG. 9, the same components as those of FIG. 8 are referred to by the same numerals, and a description thereof will be omitted.

図9に示すクロスバスイッチ551は、アドレス信号線、データ信号線、及び制御信号線からなるバス621〜626を介して、3つのマスタモジュール501〜503、デコーダ制御モジュール505、及びバスブリッジ531,532に接続されている。また同様にアドレス信号線、データ信号線、及び制御信号線からなるバス663により、インターフェース511乃至516間が接続されている。なおバス621〜626,663においては、実線がマスタ方向からスレーブ方向へ流れる信号(例えばアドレス信号、書き込みデータ信号、制御信号等)を表し、破線がスレーブ方向からマスタ方向へ流れるバス信号(例えば読み出しデータ信号、応答信号等)を表している。   The crossbar switch 551 shown in FIG. 9 includes three master modules 501 to 503, a decoder control module 505, and bus bridges 531 and 532 via buses 621 to 626 including address signal lines, data signal lines, and control signal lines. It is connected to the. Similarly, the interfaces 511 to 516 are connected by a bus 663 including an address signal line, a data signal line, and a control signal line. Note that in the buses 621 to 626 and 663, solid lines represent signals that flow from the master direction to the slave direction (for example, address signals, write data signals, control signals, etc.), and broken lines represent bus signals that flow from the slave direction to the master direction (for example, read). Data signal, response signal, etc.).

インターフェース511〜513は、マスタモジュールからのバス信号を制御するI/F制御回路684〜686と、バス上のアドレス信号をデコードする制御可能アドレスデコーダ681〜683と、読み出しデータ信号や応答信号等を選択する選択回路687〜689を含む。I/F制御モジュール684〜686は、マスタモジュールからバス663に送信される制御信号を監視する。バスに新規転送を流すことができない状況においてバス転送を要求する制御信号を検出すると、I/F制御モジュール684〜686は、バスに対する新規転送発行を抑止するような応答信号(バス621〜623の破線)をマスタモジュールに返す。またI/F制御モジュール684〜686は更に、現在のバスの値を一時的に保持する機能を有する。   Interfaces 511 to 513 receive I / F control circuits 684 to 686 that control bus signals from the master module, controllable address decoders 681 to 683 that decode address signals on the bus, read data signals, response signals, and the like. Selection circuits 687 to 689 for selecting are included. The I / F control modules 684 to 686 monitor control signals transmitted from the master module to the bus 663. When a control signal for requesting bus transfer is detected in a situation where a new transfer cannot be sent to the bus, the I / F control modules 684 to 686 detect response signals (for the buses 621 to 623 to suppress the issuance of new transfer to the bus). (Broken line) is returned to the master module. The I / F control modules 684 to 686 further have a function of temporarily holding the current bus value.

図10は、I/F制御モジュール684の構成の一例を示す図である。図10において、図9と同一の構成要素は同一の番号で参照し、その説明は省略する。なおI/F制御モジュール684の構成を代表例として示すが、I/F制御モジュール685,686も同様の構成を有する。   FIG. 10 is a diagram illustrating an example of the configuration of the I / F control module 684. 10, the same components as those of FIG. 9 are referred to by the same numerals, and a description thereof will be omitted. Although the configuration of the I / F control module 684 is shown as a representative example, the I / F control modules 685 and 686 also have the same configuration.

I/F制御モジュール684は、バス転送/保持判定回路1104、選択回路1105、及びバス保持レジスタ1106を含む。バス転送/保持判定回路1104は、バス621,662,663に流れる制御信号を観測する。バス663に新規転送を流すことができない状況においてバス転送を要求する制御信号をバス621に検出すると、バス転送/保持判定回路1104は信号1136を出力し、バス621に対して新規転送発行を抑止する応答信号を、組み合わせ回路1107を介して送信する。また更にバス転送/保持判定回路1104は、信号1138を介して選択回路1105にバス保持レジスタ1106を選択させる。バス保持レジスタ1106には現在のバスの値が保持されており、上記選択動作により、バス663の値が現状のまま保持される。   The I / F control module 684 includes a bus transfer / holding determination circuit 1104, a selection circuit 1105, and a bus holding register 1106. The bus transfer / holding determination circuit 1104 observes control signals flowing through the buses 621, 662, and 663. When a control signal for requesting bus transfer is detected on the bus 621 in a situation where a new transfer cannot be sent to the bus 663, the bus transfer / holding determination circuit 1104 outputs a signal 1136 and inhibits the bus 621 from issuing a new transfer The response signal to be transmitted is transmitted via the combinational circuit 1107. Further, the bus transfer / holding determination circuit 1104 causes the selection circuit 1105 to select the bus holding register 1106 via the signal 1138. The bus holding register 1106 holds the current bus value, and the value of the bus 663 is held as it is by the selection operation.

バス663に新規転送することが適切な状況においてバス転送を要求する制御信号をバス621に検出すると、バス転送/保持判定回路1104は、信号1138を介して選択回路1105にバス621を選択させる。これによりバス621とバス663とが接続され新規データ転送が可能となる。バス663の値の変化に追随して、バス663の最新の値がバス保持レジスタ1106に格納される。   When the bus 621 detects a control signal for requesting bus transfer in a situation where it is appropriate to transfer the data to the bus 663 appropriately, the bus transfer / holding determination circuit 1104 causes the selection circuit 1105 to select the bus 621 via the signal 1138. As a result, the bus 621 and the bus 663 are connected to enable new data transfer. Following the change in the value of the bus 663, the latest value of the bus 663 is stored in the bus holding register 1106.

図9を再び参照し、制御可能アドレスデコーダ681〜683は、バス上のアドレスデータをアドレスマップに従ってデコードする。制御可能アドレスデコーダ681〜683は、このデコード結果に従って、アドレスデータが指示するアクセス先のインターフェース514〜516に転送要求信号661を送出する。選択回路687〜689は、制御可能アドレスデコーダ681〜683のデコード結果に従って、アドレスデータが指示するアクセス先からのデータ信号、応答信号等を選択する。   Referring again to FIG. 9, controllable address decoders 681 to 683 decode address data on the bus according to the address map. The controllable address decoders 681 to 683 send a transfer request signal 661 to the access destination interfaces 514 to 516 indicated by the address data according to the decoding result. The selection circuits 687 to 689 select a data signal, a response signal, and the like from the access destination indicated by the address data according to the decoding result of the controllable address decoders 681 to 683.

一方、インターフェース514〜516は、調停回路691〜693と選択回路694〜696とを含む。調停回路691〜693は、インターフェース511〜513からの転送要求信号661を受信して転送許可/不許可を示す転送可否応答信号662をインターフェース511〜513に返すとともに、調停結果を示す信号を選択回路694〜696に供給する。選択回路694〜696は、調停回路691〜693による調停結果に応じてバス信号を選択する。   On the other hand, the interfaces 514 to 516 include arbitration circuits 691 to 693 and selection circuits 694 to 696. Arbitration circuits 691 to 693 receive transfer request signals 661 from the interfaces 511 to 513 and return transfer enable / disable response signals 662 indicating transfer permission / non-permission to the interfaces 511 to 513 and select signals indicating arbitration results as selection circuits. 694-696. The selection circuits 694 to 696 select a bus signal according to the arbitration result by the arbitration circuits 691 to 693.

図9に示すクロスバスイッチ551は、データ転送時の動作は従来のクロスバスイッチ回路と同様であるが、制御可能アドレスデコーダ681〜683がアドレスデコード設定を変更可能なように構成されている。これにより、システムが動作している間であっても、アドレスデコード設定を動的に切り替えることができる。具体的には、制御可能アドレスデコーダ681〜683は、デコーダ制御モジュール505から供給されるモード信号571に応じて、クロスバスイッチ内のバス転送の監視に基づいた適切なタイミングで、アドレスデコーダのアドレスマップを変換する。   The crossbar switch 551 shown in FIG. 9 operates in the same way as a conventional crossbar switch circuit, but is configured such that the controllable address decoders 681 to 683 can change the address decode setting. As a result, the address decoding setting can be dynamically switched even while the system is operating. Specifically, the controllable address decoders 681 to 683 respond to the mode signal 571 supplied from the decoder control module 505 at an appropriate timing based on the monitoring of the bus transfer in the crossbar switch, and the address map of the address decoder. Convert.

図11は、制御可能アドレスデコーダ681の構成の一例を周辺の構成とともに示す図である。図11において、図9と同一の構成要素は同一の番号で参照し、その説明は省略する。なお制御可能アドレスデコーダ681の構成を代表例として示すが、制御可能アドレスデコーダ682,683も同様の構成を有する。   FIG. 11 is a diagram showing an example of the configuration of the controllable address decoder 681 together with the peripheral configuration. In FIG. 11, the same components as those of FIG. 9 are referred to by the same numerals, and a description thereof will be omitted. The configuration of the controllable address decoder 681 is shown as a representative example, but the controllable address decoders 682 and 683 have the same configuration.

デコーダ制御モジュール505は、バスインターフェース1002とモード設定レジスタ1003によって構成される。バスマスタによりバス624及びバスインターフェース1002を介してモード設定レジスタ1003に設定された値は、モード信号571として制御可能アドレスデコーダ681に供給される。制御可能アドレスデコーダ681は、選択回路1015、レジスタ1016、バスの制御信号1039及びバス応答信号1037を観測するバス観測回路1017、回路として組み込まれた複数のアドレスデコーダ1018〜1020、及び複数のアドレスデコーダの1つを選択する選択回路1021を含む。   The decoder control module 505 includes a bus interface 1002 and a mode setting register 1003. A value set in the mode setting register 1003 by the bus master via the bus 624 and the bus interface 1002 is supplied to the controllable address decoder 681 as a mode signal 571. The controllable address decoder 681 includes a selection circuit 1015, a register 1016, a bus observation circuit 1017 for observing a bus control signal 1039 and a bus response signal 1037, a plurality of address decoders 1018 to 1020 incorporated as a circuit, and a plurality of address decoders. A selection circuit 1021 for selecting one of the two.

図12は、マスタ501〜503からみたアドレスマップの一例を示す図である。図13は、アドレスマップ切り替えの制御動作の一例を示すフローチャートである。図13の制御フローに従い、図12のアドレスマップ1(図面左)からアドレスマップ2(図面右)にアドレスマッピング構成を変える動作について以下に説明する。   FIG. 12 is a diagram illustrating an example of an address map viewed from the masters 501 to 503. FIG. 13 is a flowchart illustrating an example of an address map switching control operation. The operation of changing the address mapping configuration from the address map 1 (left of the drawing) to the address map 2 (right of the drawing) according to the control flow of FIG. 13 will be described below.

初期状態であるアドレスマップ1の状態において、クロスバスイッチ551領域からクロスバスイッチ552領域へのデータ転送は、何れのアドレスに対してもバスブリッジ531を介して実行するように設定されている。この状態から、図13の制御動作が開始される。   In the state of the address map 1 which is an initial state, data transfer from the crossbar switch 551 area to the crossbar switch 552 area is set to be executed via the bus bridge 531 for any address. From this state, the control operation of FIG. 13 is started.

ステップS1で、図9に示すマスタ501が、デコーダ制御モジュール505のモード設定レジスタ1003に、所望のアドレスマップ(切り替え後のアドレスマップ)のモード番号を設定する。ステップS2で、デコーダ制御モジュール505は、モード信号571をバスブリッジ内部の制御可能アドレスデコーダ681,682,683に送る
ステップS3で、制御可能アドレスデコーダ681は、バス663上の制御信号をバス観測回路1017で観測(監視)する。ステップS4で、ステップS3での観測結果に基づいて、バス上にデータ転送があるか否かを判断する。データ転送がある場合(ステップS3でYesの場合)には、所定時間待機した後に、バス上にデータ転送があるか否かを再度判断する。
In step S1, the master 501 shown in FIG. 9 sets a mode number of a desired address map (address map after switching) in the mode setting register 1003 of the decoder control module 505. In step S2, the decoder control module 505 sends the mode signal 571 to the controllable address decoders 681, 682 and 683 inside the bus bridge. In step S3, the controllable address decoder 681 sends the control signal on the bus 663 to the bus observation circuit. Observe (monitor) at 1017. In step S4, it is determined whether there is data transfer on the bus based on the observation result in step S3. If there is data transfer (Yes in step S3), after waiting for a predetermined time, it is determined again whether there is data transfer on the bus.

データ転送がない場合(ステップS3でNoの場合)、ステップS4で、モード信号に応じてアドレスデコーダ1018〜1020のうちの1つを選択回路1021により選択する。具体的には、バス観測回路1017からの信号1042に応じて選択回路1015がデコーダ制御モジュール505からのモード信号571を選択して、選択回路1021に供給する。これにより、モード信号571に応じたデコーダが選択される。選択に用いられたモード信号571は、レジスタ1016に格納される。レジスタ1016の格納値は、その後選択回路1015がレジスタ1016を選択する状態となることで、定常的に選択回路1021に供給される。以上の動作により、インターフェース511におけるアドレスマップはアドレスマップ1からアドレスマップ2に切り替わる(図12参照)。   If there is no data transfer (No in step S3), one of the address decoders 1018 to 1020 is selected by the selection circuit 1021 in accordance with the mode signal in step S4. Specifically, the selection circuit 1015 selects the mode signal 571 from the decoder control module 505 in accordance with the signal 1042 from the bus observation circuit 1017 and supplies it to the selection circuit 1021. As a result, a decoder corresponding to the mode signal 571 is selected. The mode signal 571 used for selection is stored in the register 1016. The stored value of the register 1016 is steadily supplied to the selection circuit 1021 when the selection circuit 1015 then selects the register 1016. With the above operation, the address map in the interface 511 is switched from the address map 1 to the address map 2 (see FIG. 12).

同様に、他の制御可能アドレスデコーダ682,683についても、バスにデータ転送がないタイミングで、アドレスマップをアドレスマップ1からアドレスマップ2に切り替える。ステップS5で、全ての制御可能アドレスデコーダ681,682,683について、アドレスマップが切り替わったか否かを判断する。切り替わっていない場合(ステップS5でNoの場合)、全ての切り替えが終了するまで待機する。   Similarly, with respect to the other controllable address decoders 682 and 683, the address map is switched from the address map 1 to the address map 2 at a timing when there is no data transfer on the bus. In step S5, it is determined whether or not the address map has been switched for all controllable address decoders 681, 682 and 683. If it has not been switched (No in step S5), it waits until all switching is completed.

ステップS5でYesの場合、制御可能アドレスデコーダ681〜683の全てが新規のアドレスマップ2に設定されたことになる。即ち、ステップS6に記載されるように、アドレスマップ2においてはバスブリッジ532がスレーブ508へのデータ転送に専用に割当てられるので、スレーブ508へのデータ転送についてはバス権の競合が発生しなくなる。従って、スレーブ508へのデータ転送が、高い転送能力を必要とする優先度の高いデータ転送であっても、必要なデータ転送性能を保つことが可能となる。   In the case of Yes in step S5, all of the controllable address decoders 681 to 683 are set in the new address map 2. That is, as described in step S6, in the address map 2, the bus bridge 532 is assigned exclusively for data transfer to the slave 508, so that bus contention does not occur for data transfer to the slave 508. Therefore, even if the data transfer to the slave 508 is a high-priority data transfer that requires a high transfer capability, the necessary data transfer performance can be maintained.

以上のアドレスマップ切り替えにより図12に示すアドレスマップ2が設定されると、スレーブ508はクロスバスイッチ551に直接に接続されているスレーブモジュールであるかのように扱うことが可能となる。従って、特に高い転送能力を必要とする優先度の高いデータ転送に対しても、データ転送品質(QoS:クオリティ・オブ・サービス)を維持し続けることができる。   When the address map 2 shown in FIG. 12 is set by the address map switching described above, the slave 508 can be handled as if it were a slave module directly connected to the crossbar switch 551. Therefore, it is possible to continue to maintain the data transfer quality (QoS: quality of service) even for high-priority data transfer requiring particularly high transfer capability.

上記説明ではスレーブ508へのバス権競合がなくなるようなアドレスマップを用意して設定しているが、同様に他のスレーブモジュールに対してもバス権競合がなくなるようなアドレスマップを用意して設定することが可能である。このようにして、システムの要求に応じて特定のスレーブモジュールへのデータ転送に関してバス権の競合をなくし、データ転送品質を維持し続けることができる。   In the above description, an address map is prepared and set so that there is no bus right conflict for the slave 508. Similarly, an address map is prepared and set for other slave modules so that there is no bus right conflict. Is possible. In this way, it is possible to eliminate bus contention for data transfer to a specific slave module in accordance with system requirements and to maintain data transfer quality.

以下に、本発明の第2の実施例について説明する。この第2の実施例では、データ転送要求に応じて多重のバスブリッジを動的に割当てるようにクロスバスイッチ内部の調停回路部を構成する。   The second embodiment of the present invention will be described below. In the second embodiment, the arbitration circuit unit in the crossbar switch is configured to dynamically allocate multiple bus bridges in response to a data transfer request.

即ち、システムLSIを構成する2本のクロスバスイッチを結ぶバスブリッジを多重化し、多重になっているバスブリッジに複数のデータを同時並行に転送できるようにクロスバスイッチ内部の調停回路部を構成する。これにより、特に高い転送能力を必要とする優先度の高いデータ転送に関して、バス権の競合をできるだけ少なくし、データ転送性能を保つことができる。   In other words, the bus bridge connecting the two crossbar switches constituting the system LSI is multiplexed, and the arbitration circuit unit inside the crossbar switch is configured so that a plurality of data can be transferred simultaneously to the multiplexed bus bridge. As a result, particularly for high-priority data transfer that requires high transfer capacity, bus contention can be minimized and data transfer performance can be maintained.

図14は、本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの第2の実施例を示す図である。   FIG. 14 is a diagram showing a second embodiment of the system using the crossbar switch and bus bridge configuration according to the present invention.

図14に示す構成においては、マスタモジュール801〜803とスレーブモジュール805とがクロスバスイッチ851に接続され、マスタモジュール804とスレーブモジュール806〜808とがクロスバスイッチ852に接続される。クロスバスイッチ851とクロスバスイッチ852とは、多重のバスブリッジ831及び832により互いに接続される。クロスバスイッチ851はインターフェース811乃至815を含み、クロスバスイッチ852はインターフェース821乃至826を含む。   In the configuration shown in FIG. 14, the master modules 801 to 803 and the slave module 805 are connected to the crossbar switch 851, and the master module 804 and the slave modules 806 to 808 are connected to the crossbar switch 852. The crossbar switch 851 and the crossbar switch 852 are connected to each other by multiple bus bridges 831 and 832. The crossbar switch 851 includes interfaces 811 to 815, and the crossbar switch 852 includes interfaces 821 to 826.

クロスバスイッチ851において、インターフェース811乃至813がマスタモジュール801〜803にそれぞれ接続され、インターフェース814がスレーブモジュール805に接続される。またインターフェース815が、バスブリッジ831及び832の双方に接続される。   In the crossbar switch 851, the interfaces 811 to 813 are connected to the master modules 801 to 803, respectively, and the interface 814 is connected to the slave module 805. An interface 815 is connected to both the bus bridges 831 and 832.

このように図14の構成では、2つのバス(バスブリッジ831及び832)が1つのインターフェース815により提供されている。以下に説明するように、インターフェース815に設けられた1つの調停回路によって、2つのバス(バスブリッジ831及び832)に対するバス使用権獲得要求を調停する。   As described above, in the configuration of FIG. 14, two buses (bus bridges 831 and 832) are provided by one interface 815. As described below, the bus use right acquisition request for the two buses (bus bridges 831 and 832) is arbitrated by one arbitration circuit provided in the interface 815.

図15は、図14の構成において例えばマスタ801から見た場合のアドレスマップの構成を示す図である。図15に示すように、スレーブ806〜808については、バスブリッジ831及び832の何れを介してもアクセス可能である。即ち、スレーブ806〜808のアドレス範囲0xFFFF5001〜0xFFFF8000は、バスブリッジ831及び832に多重に割当てられている。   FIG. 15 is a diagram showing a configuration of an address map when viewed from the master 801 in the configuration of FIG. As shown in FIG. 15, the slaves 806 to 808 can be accessed via any of the bus bridges 831 and 832. That is, the address ranges 0xFFFF 5001 to 0xFFFF 8000 of the slaves 806 to 808 are assigned to the bus bridges 831 and 832 in a multiple manner.

例えばマスタ801からスレーブ806にアクセスしようとし、マスタ802からスレーブ807にアクセスしようとした場合を考える。この場合、スレーブ806へのアクセスには例えばバスブリッジ831を割当て、スレーブ807へのアクセスには例えばバスブリッジ832を割り当てることで、互いにバス競合することなく並行してアクセス動作を実行することが可能になる。   For example, consider a case where a master 801 attempts to access a slave 806 and a master 802 attempts to access a slave 807. In this case, for example, a bus bridge 831 is assigned to access to the slave 806 and a bus bridge 832 is assigned to access to the slave 807, for example, so that access operations can be executed in parallel without bus contention with each other. become.

図16は、図14のクロスバスイッチ851の構成の一例を示す図である。図16において、図14と同一の構成要素は同一の番号で参照し、その説明は省略する。   FIG. 16 is a diagram illustrating an example of the configuration of the crossbar switch 851 in FIG. In FIG. 16, the same components as those of FIG. 14 are referred to by the same numerals, and a description thereof will be omitted.

図16に示すクロスバスイッチ851は、アドレス信号線、データ信号線、及び制御信号線からなるバス921〜926を介して、3つのマスタモジュール801〜803、スレーブモジュール805、及びバスブリッジ831,832に接続されている。また同様にアドレス信号線、データ信号線、及び制御信号線からなるバス963により、インターフェース811乃至815間が接続されている。なおバス921〜926,963においては、実線がマスタ方向からスレーブ方向へ流れる信号(例えばアドレス信号、書き込みデータ信号、制御信号等)を表し、破線がスレーブ方向からマスタ方向へ流れるバス信号(例えば読み出しデータ信号、応答信号等)を表している。   The crossbar switch 851 shown in FIG. 16 is connected to three master modules 801 to 803, a slave module 805, and bus bridges 831 and 832 via buses 921 to 926 including address signal lines, data signal lines, and control signal lines. It is connected. Similarly, the interfaces 811 to 815 are connected by a bus 963 including an address signal line, a data signal line, and a control signal line. Note that in the buses 921 to 926 and 963, a solid line represents a signal (for example, an address signal, a write data signal, or a control signal) that flows from the master direction to the slave direction, and a broken line represents a bus signal (for example, a read signal) that flows from the slave direction to the master direction. Data signal, response signal, etc.).

インターフェース811〜813は、マスタモジュールからのバス信号を制御するI/F制御回路984〜986と、バス上のアドレス信号をデコードするアドレスデコーダ981〜983と、読み出しデータ信号や応答信号等を選択する選択回路987〜989を含む。I/F制御モジュール984〜986は、マスタモジュールからバス963に送信される制御信号を監視する。バスに新規転送を流すことができない状況においてバス転送を要求する制御信号を検出すると、I/F制御モジュール984〜986は、バスに対する新規転送発行を抑止するような応答信号(バス921〜923の破線)をマスタモジュールに返す。またI/F制御モジュール984〜986は更に、現在のバスの値を一時的に保持する機能を有する。   The interfaces 811 to 813 select I / F control circuits 984 to 986 that control bus signals from the master module, address decoders 981 to 983 that decode address signals on the bus, read data signals, response signals, and the like. Selection circuits 987 to 989 are included. The I / F control modules 984 to 986 monitor control signals transmitted from the master module to the bus 963. When a control signal for requesting bus transfer is detected in a situation where a new transfer cannot be sent to the bus, the I / F control modules 984 to 986 detect response signals (for the buses 921 to 923 to suppress the issuance of new transfer to the bus). (Broken line) is returned to the master module. The I / F control modules 984 to 986 further have a function of temporarily holding the current bus value.

アドレスデコーダ981〜983は、バス上のアドレスデータをアドレスマップに従ってデコードする。アドレスデコーダ981〜983は、このデコード結果に従って、アドレスデータが指示するアクセス先のインターフェース814又は815に転送要求信号961を送出する。選択回路987〜989は、アドレスデコーダ981〜983のデコード結果に従って、アドレスデータが指示するアクセス先からのデータ信号、応答信号等を選択する。   Address decoders 981 to 983 decode address data on the bus according to the address map. The address decoders 981 to 983 send a transfer request signal 961 to the access destination interface 814 or 815 indicated by the address data in accordance with the decoding result. Selection circuits 987 to 989 select a data signal, a response signal, and the like from the access destination indicated by the address data in accordance with the decoding results of address decoders 981 to 983.

インターフェース814は、調停回路991と選択回路994とを含む。調停回路991は、インターフェース811〜813からの転送要求信号961を受信して転送許可/不許可を示す転送可否応答信号962をインターフェース811〜813に返すとともに、調停結果を示す信号を選択回路994に供給する。選択回路994は、調停回路991による調停結果に応じてバス信号を選択する。   The interface 814 includes an arbitration circuit 991 and a selection circuit 994. The arbitration circuit 991 receives the transfer request signal 961 from the interfaces 811 to 813 and returns a transfer enable / disable response signal 962 indicating transfer permission / non-permission to the interfaces 811 to 813, and sends a signal indicating the arbitration result to the selection circuit 994. Supply. The selection circuit 994 selects a bus signal according to the arbitration result by the arbitration circuit 991.

インターフェース815は、調停回路992と選択回路995,996とを含む。調停回路992は、インターフェース811〜813からの転送要求信号961を受信して転送許可/不許可を示す転送可否応答信号962をインターフェース811〜813に返すとともに、調停結果を示す信号を選択回路995,996に供給する。選択回路995,996は、調停回路992による調停結果に応じてバス信号を選択する。   The interface 815 includes an arbitration circuit 992 and selection circuits 995, 996. The arbitration circuit 992 receives the transfer request signal 961 from the interfaces 811 to 813 and returns a transfer enable / disable response signal 962 indicating transfer permission / non-permission to the interfaces 811 to 813, and receives a signal indicating the arbitration result as a selection circuit 995. 996. The selection circuits 995 and 996 select the bus signal according to the arbitration result by the arbitration circuit 992.

図17は、多重バスブリッジに対する調停回路の調停動作の一例を示すフローチャートである。図17に示す調停動作により、図16に示す調停回路992がバスブリッジ831及び832に対してデータ転送を割当てる。   FIG. 17 is a flowchart showing an example of the arbitration operation of the arbitration circuit for the multiple bus bridge. With the arbitration operation shown in FIG. 17, the arbitration circuit 992 shown in FIG. 16 assigns data transfer to the bus bridges 831 and 832.

まずステップS1において、アドレスデコーダ981〜983より新規転送要求信号961が供給される。ステップS2において、調停回路992はバス925,926の占有状況を判定する。バス925,926が双方ともに使用中である場合は、ステップS3に進む。ステップS3において、調停回路992は、新規転送要求信号961に対する応答である転送可否応答信号962として、転送待機を指示する信号を送出する。その後、ステップS1に処理が戻る。   First, in step S1, a new transfer request signal 961 is supplied from the address decoders 981 to 983. In step S2, the arbitration circuit 992 determines the occupation status of the buses 925 and 926. If both buses 925 and 926 are in use, the process proceeds to step S3. In step S3, the arbitration circuit 992 sends a transfer standby signal as a transfer enable / disable response signal 962 that is a response to the new transfer request signal 961. Thereafter, the process returns to step S1.

ステップS2での判定の結果、バス925,926の一方が使用中である場合は、ステップS4に進む。ステップS4において、調停回路992は、優先順位が最も高い新規アクセスに対しては、新規転送要求信号961に対する応答である転送可否応答信号962として、転送要求を許可する信号を送出する。また調停回路992は、その他の新規アクセス要求に対しては、転送可否応答信号962として転送待機信号を送出する。   If one of the buses 925 and 926 is in use as a result of the determination in step S2, the process proceeds to step S4. In step S <b> 4, the arbitration circuit 992 transmits a transfer request permission signal as a transfer enable / disable response signal 962 that is a response to the new transfer request signal 961 for a new access with the highest priority. Further, the arbitration circuit 992 sends a transfer standby signal as a transfer enable / disable response signal 962 for other new access requests.

ステップS2での判定の結果、バス925,926の両方が利用可能である場合は、ステップS5に進む。ステップS5において、調停回路992は、優先順位が最も高い新規アクセスと2番目に高い新規アクセスとに対して、新規転送要求信号961に対する応答である転送可否応答信号962として、転送要求を許可する信号を送出する。また調停回路992は、その他の新規アクセス要求に対しては、転送可否応答信号962として転送待機信号を送出する。   As a result of the determination in step S2, if both buses 925 and 926 are available, the process proceeds to step S5. In step S5, the arbitration circuit 992 accepts a transfer request as a transfer enable / disable response signal 962 that is a response to the new transfer request signal 961 for the new access having the highest priority and the second highest access. Is sent out. Further, the arbitration circuit 992 sends a transfer standby signal as a transfer enable / disable response signal 962 for other new access requests.

ステップS4及びS5の何れかの調停動作の後、ステップS6でデータ転送動作が実行される。データ転送動作の後、ステップS1に処理が戻る。   After the arbitration operation in either step S4 or S5, the data transfer operation is executed in step S6. After the data transfer operation, the process returns to step S1.

上記説明したように第2の実施例においては、調停回路992を実装したクロスバスイッチ851を使用することにより、バスブリッジ831,832を介したデータ転送は、同時に最大2つのデータ転送まで並行して実行可能になる。従って、バスブリッジ831,832を介したデータ転送において、バス権の競合の発生の可能性はある低度低く抑えることが可能である。従って、高い転送能力を必要とするデータ転送に対しても、データ転送品質(QoS:クオリティ・オブ・サービス)を維持し続けることが比較的容易である。   As described above, in the second embodiment, by using the crossbar switch 851 in which the arbitration circuit 992 is mounted, the data transfer via the bus bridges 831 and 832 can be performed simultaneously up to two data transfers in parallel. Become executable. Accordingly, in the data transfer via the bus bridges 831 and 832, the possibility of bus contention can be suppressed to a certain low level. Therefore, it is relatively easy to maintain data transfer quality (QoS: quality of service) even for data transfer that requires high transfer capability.

以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。   As mentioned above, although this invention was demonstrated based on the Example, this invention is not limited to the said Example, A various deformation | transformation is possible within the range as described in a claim.

例えば、バスブリッジとは、一般にプロトコル変換を行なう回路を指す用語であるが、本願においてはサブシステム間にプロトコル変換が必要なければ、バスブリッジ回路は必要ない。即ちサブシステム間にプロトコル変換が必要ない場合、上記各実施例の説明において、バスブリッジ回路を介したデータ転送経路は、単なるシステムバスの直接接続によるサブシステム間のデータ転送経路で置き換えることができる。   For example, a bus bridge is a term that generally refers to a circuit that performs protocol conversion. However, in this application, a bus bridge circuit is not necessary if protocol conversion is not required between subsystems. That is, when protocol conversion between subsystems is not necessary, in the description of the above embodiments, the data transfer path via the bus bridge circuit can be replaced with a data transfer path between subsystems by simply connecting the system bus directly. .

またクロスバスイッチは、他にも例えばクロスバス・スイッチ、バスマトリックス、マルチレイヤバス、インターコネクト、バススイッチ等の様々な異なる名称で呼ばれることがある。本願発明においてクロスバスイッチとは、経路を切り替え選択可能とすることで複数のモジュール間に並行に複数のデータ転送経路を設定可能な回路であればよく、特定の名称により特定される特定の構造を有する回路を意図したものではない。   The crossbar switch may also be referred to by various different names such as, for example, a cross bus switch, a bus matrix, a multi-layer bus, an interconnect, and a bus switch. In the present invention, the crossbar switch may be any circuit that can set a plurality of data transfer paths in parallel between a plurality of modules by making the path selectable, and has a specific structure specified by a specific name. It is not intended to have a circuit.

システムバスによる回路モジュール接続の典型的な構成例を示す図である。It is a figure which shows the typical structural example of the circuit module connection by a system bus | bath. クロスバスイッチによる回路モジュール接続の典型的な構成例を示す図である。It is a figure which shows the typical structural example of the circuit module connection by a crossbar switch. AMBA規格のAHBプロトコルを想定したバスブリッジ回路の一般的な構成例を示す図である。It is a figure which shows the general structural example of the bus bridge circuit supposing the AHB protocol of AMBA standard. バスブリッジを利用したクロスバスイッチによる回路モジュール接続の典型的な構成例を示す図である。It is a figure which shows the typical structural example of the circuit module connection by the crossbar switch using a bus bridge. 図4の構成においてマスタから見た場合のアドレスマップの構成を示す図である。FIG. 5 is a diagram showing a configuration of an address map when viewed from a master in the configuration of FIG. 4. 本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの基本構成を示す図である。It is a figure which shows the basic composition of the system using the crossbar switch and bus bridge structure by this invention. 図6の構成においてマスタから見た場合のアドレスマップの構成の一例を示す図である。It is a figure which shows an example of a structure of the address map at the time of seeing from a master in the structure of FIG. 本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの第1の実施例を示す図である。It is a figure which shows the 1st Example of the system using the crossbar switch and bus bridge structure by this invention. クロスバスイッチの構成の一例を示す図である。It is a figure which shows an example of a structure of a crossbar switch. I/F制御モジュールの構成の一例を示す図である。It is a figure which shows an example of a structure of an I / F control module. 制御可能アドレスデコーダの構成の一例を周辺の構成とともに示す図である。It is a figure which shows an example of a structure of a controllable address decoder with a periphery structure. アドレスマップ切り替えの一例を示す図である。It is a figure which shows an example of address map switching. アドレスマップ切り替えの制御動作の一例を示すフローチャートである。It is a flowchart which shows an example of the control operation of address map switching. 本発明によるクロスバスイッチ及びバスブリッジ構成を用いたシステムの第2の実施例を示す図である。It is a figure which shows the 2nd Example of the system using the crossbar switch and bus bridge structure by this invention. 図14の構成においてマスタから見た場合のアドレスマップの構成を示す図である。It is a figure which shows the structure of the address map at the time of seeing from a master in the structure of FIG. クロスバスイッチの構成の一例を示す図である。It is a figure which shows an example of a structure of a crossbar switch. 多重バスブリッジに対する調停回路の調停動作の一例を示すフローチャートである。It is a flowchart which shows an example of the arbitration operation | movement of the arbitration circuit with respect to a multiplex bus bridge.

符号の説明Explanation of symbols

401〜404 マスタモジュール
405〜408 スレーブモジュール
411〜416,421〜426 インターフェース
431,432 バスブリッジ
451,452 クロスバスイッチ
501〜504 マスタモジュール
505 デコーダ制御モジュール
506〜508 スレーブモジュール
511〜516 インターフェース
521〜526 インターフェース
531,532 バスブリッジ
551,552 クロスバスイッチ
681〜683 制御可能アドレスデコーダ
684〜686 I/F制御回路
687〜689 選択回路
691〜693 調停回路
694〜696 選択回路
401-404 Master module 405-408 Slave module 411-416, 421-426 Interface 431, 432 Bus bridge 451, 452 Crossbar switch 501-504 Master module 505 Decoder control module 506-508 Slave module 511-516 Interface 521-526 interface 531,532 Bus bridge 551,552 Crossbar switch 681-683 Controllable address decoder 684-686 I / F control circuit 687-689 Selection circuit 691-693 Arbitration circuit 694-696 Selection circuit

Claims (5)

複数のマスタに接続される第1のクロスバスイッチと、
複数のスレーブに接続される第2のクロスバスイッチと、
該第1のクロスバスイッチと該第2のクロスバスイッチとの間を結合する第1のデータ転送経路と、
該第1のデータ転送経路と並列に設けられ該第1のクロスバスイッチと該第2のクロスバスイッチとの間を結合する第2のデータ転送経路
を含み、該第1のクロスバスイッチは、該複数のスレーブの少なくとも1つに対して、アクセス経路として該第1及び第2のデータ転送経路のうちの1つを要求に応じて動的に選択可能なように構成されることを特徴とするデータ転送システム。
A first crossbar switch connected to a plurality of masters;
A second crossbar switch connected to the plurality of slaves;
A first data transfer path coupling between the first crossbar switch and the second crossbar switch;
A second data transfer path that is provided in parallel with the first data transfer path and connects between the first crossbar switch and the second crossbar switch; Data configured so that at least one of the slaves can dynamically select one of the first and second data transfer paths as an access path in response to a request Transfer system.
該第1のデータ転送経路と該第2のデータ転送経路は各々バスブリッジを含むことを特徴とする請求項1記載のデータ転送システム。   2. The data transfer system according to claim 1, wherein each of the first data transfer path and the second data transfer path includes a bus bridge. 該第1のクロスバスイッチは、該複数のマスタから供給されるアドレスをアドレスマッピングに従いデコードしてアクセス先を決定する制御可能アドレスデコーダを含み、該制御可能アドレスデコーダにおける該アドレスマッピングが該要求に応じて動的に変更可能なように構成されることを特徴とする請求項1記載のデータ転送システム。   The first crossbar switch includes a controllable address decoder that determines an access destination by decoding addresses supplied from the plurality of masters according to address mapping, and the address mapping in the controllable address decoder is in response to the request. The data transfer system according to claim 1, wherein the data transfer system is configured to be dynamically changeable. 該制御可能アドレスデコーダは、
複数の異なるアドレスマッピングに対応した複数の異なるアドレスデコーダ回路と、
該要求に応じて該複数のアドレスデコーダ回路の1つを選択する選択回路
を含むことを特徴とする請求項3記載のデータ転送システム。
The controllable address decoder
A plurality of different address decoder circuits corresponding to a plurality of different address mappings;
4. The data transfer system according to claim 3, further comprising a selection circuit that selects one of the plurality of address decoder circuits in response to the request.
前記第1のクロスバスイッチは、
該要求として該複数のマスタから供給されるデータ転送要求を調停する調停回路と、
該調停回路による調停結果に応じて該複数のマスタと該第1及び第2のデータ転送経路とを動的に選択的に結合する選択回路
を含むことを特徴とする請求項1記載のデータ転送システム。
The first crossbar switch is
An arbitration circuit that arbitrates data transfer requests supplied from the plurality of masters as the request;
2. The data transfer according to claim 1, further comprising a selection circuit that dynamically and selectively couples the plurality of masters and the first and second data transfer paths in accordance with an arbitration result by the arbitration circuit. system.
JP2006015508A 2006-01-24 2006-01-24 Data transfer system Withdrawn JP2007199859A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006015508A JP2007199859A (en) 2006-01-24 2006-01-24 Data transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006015508A JP2007199859A (en) 2006-01-24 2006-01-24 Data transfer system

Publications (1)

Publication Number Publication Date
JP2007199859A true JP2007199859A (en) 2007-08-09

Family

ID=38454444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006015508A Withdrawn JP2007199859A (en) 2006-01-24 2006-01-24 Data transfer system

Country Status (1)

Country Link
JP (1) JP2007199859A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248562A (en) * 2010-05-26 2011-12-08 Seiko Epson Corp Processor system
JP2012003676A (en) * 2010-06-21 2012-01-05 Hitachi Ltd Semiconductor integrated circuit and control method for data transfer in semiconductor integrated circuit
JP2012238089A (en) * 2011-05-10 2012-12-06 Fujitsu Semiconductor Ltd Integrated circuit device, verification device and verification method
JP2017513404A (en) * 2014-04-03 2017-05-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Field programmable gate array and communication method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248562A (en) * 2010-05-26 2011-12-08 Seiko Epson Corp Processor system
JP2012003676A (en) * 2010-06-21 2012-01-05 Hitachi Ltd Semiconductor integrated circuit and control method for data transfer in semiconductor integrated circuit
JP2012238089A (en) * 2011-05-10 2012-12-06 Fujitsu Semiconductor Ltd Integrated circuit device, verification device and verification method
JP2017513404A (en) * 2014-04-03 2017-05-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Field programmable gate array and communication method
US11586572B2 (en) 2014-04-03 2023-02-21 Huawei Technologies Co., Ltd. Field programmable gate array and communication method

Similar Documents

Publication Publication Date Title
JP4895183B2 (en) Memory controller
US6738845B1 (en) Bus architecture and shared bus arbitration method for a communication device
KR100368948B1 (en) Enhanced bus arbiter utilizing variable priority and fairness
KR100814904B1 (en) On-Chip Communication architecture
JP3807250B2 (en) Cluster system, computer and program
US7721038B2 (en) System on chip (SOC) system for a multimedia system enabling high-speed transfer of multimedia data and fast control of peripheral devices
GB2411497A (en) Protocol conversion and arbitration circuit
JP2003006143A (en) System, device and method of sharing bus
KR20110122516A (en) Interconnect, the bus system containing it and how the bus system works
KR20020009823A (en) Bus system and bus arbitration method thereof
JP2007199859A (en) Data transfer system
US8359419B2 (en) System LSI having plural buses
JP2016173798A (en) Semiconductor device
US20080195782A1 (en) Bus system and control method thereof
US20170168934A1 (en) Memory controller with interleaving and arbitration scheme
JP4260720B2 (en) Bus control device
US20050228914A1 (en) Matrix type bus connection system
JP2007094649A (en) Access arbitration circuit
US7711787B2 (en) On-chip network interfacing apparatus and method
KR100581196B1 (en) SOS bus structure provides multiple channels
JP6036806B2 (en) Bus access arbitration circuit and bus access arbitration method
JP2007172112A (en) Memory controller
JP2000339269A (en) Cross bus switch device
JP6147131B2 (en) Arithmetic unit
JP5028817B2 (en) Bus system

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Effective date: 20080729

Free format text: JAPANESE INTERMEDIATE CODE: A712

A621 Written request for application examination

Effective date: 20080916

Free format text: JAPANESE INTERMEDIATE CODE: A621

A761 Written withdrawal of application

Effective date: 20101126

Free format text: JAPANESE INTERMEDIATE CODE: A761