[go: up one dir, main page]

JP2007018264A - Bus system and route selection method thereof - Google Patents

Bus system and route selection method thereof Download PDF

Info

Publication number
JP2007018264A
JP2007018264A JP2005199142A JP2005199142A JP2007018264A JP 2007018264 A JP2007018264 A JP 2007018264A JP 2005199142 A JP2005199142 A JP 2005199142A JP 2005199142 A JP2005199142 A JP 2005199142A JP 2007018264 A JP2007018264 A JP 2007018264A
Authority
JP
Japan
Prior art keywords
route
bus system
register
storage means
input
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
JP2005199142A
Other languages
Japanese (ja)
Inventor
Koichi Morishita
浩一 森下
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2005199142A priority Critical patent/JP2007018264A/en
Priority to US11/480,989 priority patent/US7461187B2/en
Publication of JP2007018264A publication Critical patent/JP2007018264A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】 記憶手段の挿入に伴うレイテンシ増加による性能低下を防止する。
【解決手段】 マスタデバイスとスレーブデバイスとの間に挿入されたレジスタスライスを経由する経路か、そのレジスタスライスを経由しない経路の何れかを指定するバイパス選択信号を入力する。そして、マルチプレクサにて入力されたバイパス選択信号に応じてレジスタスライスを経由する経路を有効にするか、レジスタスライスを経由しない経路を有効にするかを選択する。
【選択図】 図8
PROBLEM TO BE SOLVED: To prevent performance degradation due to an increase in latency associated with insertion of storage means.
A bypass selection signal for designating either a route passing through a register slice inserted between a master device and a slave device or a route not passing through the register slice is input. Then, according to the bypass selection signal input by the multiplexer, it is selected whether to enable the path that passes through the register slice or to enable the path that does not pass through the register slice.
[Selection] Figure 8

Description

本発明は、マスタデバイスとスレーブデバイスを各々少なくとも1つ以上相互接続したバスシステム及びその経路選択方法に関する。   The present invention relates to a bus system in which at least one or more master devices and slave devices are interconnected, and a route selection method thereof.

近年、USB 1.1からUSB 2.0へ、或いはPCI からPCI-Expressへといった具合に、高スループットを必要とするIP(Intellectual Property)コアが急増している。これに伴い、高速なスループット転送を可能とする、オンチップ・バスの需要が急速に高まっている(例えば、特許文献1参照)。   In recent years, IP (Intellectual Property) cores that require high throughput, such as from USB 1.1 to USB 2.0 or from PCI to PCI-Express, have been rapidly increasing. Along with this, the demand for an on-chip bus that enables high-speed throughput transfer is rapidly increasing (see, for example, Patent Document 1).

2003年 6月にARM社が次世代オンチップ・バスの規格としてAMBA 3.0のAXI(Advanced eXtensible Interface)プロトコルを発表し、注目を集めている。AMBAは、「Advanced Microcontroller Bus Architecture」の略である。このAXIでは、従来のAHB(Advanced High-Performance Bus)にはなかったチャネルという概念を導入し、このチャネルによる転送を行うことによりデータ転送のスループットを向上させるよう考慮されている。具体的には、アドレスフェーズとデータフェーズとの独立転送方式や、後から入ったサイクルの結果が前に戻ってきても良い、というアウトオブオーダ転送方式をサポートしている。   In June 2003, ARM announced the AMBA 3.0 AXI (Advanced eXtensible Interface) protocol as a next-generation on-chip bus standard, and has attracted attention. AMBA is an abbreviation for “Advanced Microcontroller Bus Architecture”. In this AXI, the concept of a channel that was not found in the conventional AHB (Advanced High-Performance Bus) is introduced, and consideration is given to improving the data transfer throughput by performing transfer through this channel. Specifically, it supports an independent transfer method for the address phase and the data phase, and an out-of-order transfer method in which the result of the cycle entered later may be returned to the front.

ここで、チャネルとは、図1に示すように、マスタ101とスレーブ102がそれぞれvalid103とready104の各信号を用いてdata105を2線ハンドシェークで転送する一連の転送経路として定義される。data105の転送元がvalid103を出力し、転送先がready104を出力する。   Here, as shown in FIG. 1, the channel is defined as a series of transfer paths in which the master 101 and the slave 102 transfer the data 105 by the 2-wire handshake using the signals of valid 103 and ready 104, respectively. The transfer source of data 105 outputs valid 103 and the transfer destination outputs ready 104.

このAXIでは、図2に示すように、address203、write data205、read data204、write response206の4つのチャネルを用いてマスタ201とスレーブ202との間でデータ転送を行う。従って、アドレスチャネルとデータチャネルとを独立に転送することができるので、アドレス処理を次々と発行することが可能となり、バスを有効に活用できる。   In this AXI, as shown in FIG. 2, data transfer is performed between the master 201 and the slave 202 using four channels of address 203, write data 205, read data 204, and write response 206. Therefore, since the address channel and the data channel can be transferred independently, address processing can be issued one after another, and the bus can be used effectively.

更に、アウトオブオーダをサポートすることにより、レイテンシが小さいスレーブからのデータを先に返すことが可能となる。このようなことから、AXIでは、バスの利用効率向上が期待できる。   Furthermore, by supporting out-of-order, it is possible to return data from a slave having a low latency first. For this reason, AXI can be expected to improve bus utilization efficiency.

その一方で、システムLSI内部に複数のCPU、メモリ、I/Oを有するシステムが一般的になってきており、これらのデバイスを相互に接続する必要がある。しかし、複数のバスマスタ、バススレーブがシステムLSI内部に均等に配置配線されるとも限らない。そのため、いくつかの接続網、特にアドレスやデータのような高負荷のバスについては、期待する動作周波数で動作不可能となってしまうことが、レイアウト工程の段階で判明することが考えられる。   On the other hand, a system having a plurality of CPUs, memories, and I / Os inside a system LSI has become common, and these devices need to be connected to each other. However, a plurality of bus masters and bus slaves are not necessarily arranged and wired equally in the system LSI. For this reason, it is considered that it becomes clear at the stage of the layout process that some connection networks, particularly high-load buses such as addresses and data, cannot be operated at the expected operating frequency.

このような場合、タイミングを満たさないパスに対してレイアウトを何度もやり直し、期待する動作周波数でのタイミング保証を行うことに時間と労力が費やされていた。また、最悪の結果として、動作周波数を落として動作させることになったり、チップサイズを大きくすることを余儀なくされたりすることもあった。   In such a case, time and labor have been spent re-laying the path that does not satisfy the timing many times and guaranteeing the timing at the expected operating frequency. As a worst result, the operation frequency may be lowered or the chip size may be increased.

そこで、このような問題を解決するために、クリティカルパスであるマスタとスレーブとの間の信号群にレジスタを挿入し、パスを分割することでレジスタ−レジスタ間の遅延量を減少させる方法が採用されている。上述のAXIのようなpoint-to-point接続の場合、2線ハンドシェイクでプロトコルが規定されており、そのハンドシェイクで受け渡す情報の流れが単一方向であるため、比較的レジスタの挿入が容易である。尚、AXIでは、この方式を「レジスタスライス」と呼んでいる。   Therefore, in order to solve such problems, a method is adopted in which a register is inserted into a signal group between a master and a slave, which is a critical path, and the path is divided to reduce the delay amount between the register and the register. Has been. In the case of the point-to-point connection such as AXI described above, the protocol is defined by the two-wire handshake, and the flow of information passed by the handshake is unidirectional. Easy. In AXI, this method is called “register slice”.

図3は、図2に示すpoint-to-point接続に対してレジスタスライスを挿入した接続例を示す図である。図3に示す例では、アドレスのチャネルとリードデータのチャネルにそれぞれレジスタスライス301、302を一段挿入してパスを分離している。これにより、マスタ201のアドレス発行からリードデータの取り込みまでのレイテンシが2サイクル分だけ大きくなるが、最大で2倍の動作周波数での動作が可能となる。
特表2004-513430号公報
FIG. 3 is a diagram illustrating a connection example in which a register slice is inserted into the point-to-point connection illustrated in FIG. In the example shown in FIG. 3, the register slices 301 and 302 are inserted in one stage into the address channel and the read data channel to separate the paths. As a result, the latency from the address issuance of the master 201 to the reading of the read data is increased by two cycles, but it is possible to operate at twice the maximum operating frequency.
Special table 2004-513430 gazette

上述したように、point-to-point接続に対してレジスタを挿入し、パスを分割することで高い動作周波数を保証することができる。但し、動作周波数が上がるからといって一律に性能が向上するわけではなく、スループットと増加するレイテンシとの関係次第では、逆に性能を落としてしまうことも有り得る。   As described above, a high operating frequency can be guaranteed by inserting a register for a point-to-point connection and dividing the path. However, even if the operating frequency is increased, the performance is not improved uniformly, and depending on the relationship between the throughput and the increased latency, the performance may be decreased.

図4、図5を用いて、図2に示すようなpoint-to-point接続した32ビットデータバスでバースト転送を行った場合の動作周波数に対する平均転送速度について説明する。   The average transfer rate with respect to the operating frequency when burst transfer is performed using a point-to-point connected 32-bit data bus as shown in FIG. 2 will be described with reference to FIGS.

図4は、16バースト転送を行った場合の動作周波数と転送速度との関係を示す図である。また、図5は、4バースト転送を行った場合の動作周波数と転送速度との関係を示す図である。   FIG. 4 is a diagram showing the relationship between the operating frequency and the transfer rate when 16 burst transfer is performed. FIG. 5 is a diagram showing the relationship between the operating frequency and the transfer rate when 4-burst transfer is performed.

図4、図5に示すように、レジスタスライスを挿入した場合と、挿入していない場合とではレイテンシの違いが平均転送速度の違いとして現れている。例えば、図4に示す16バースト転送を行った場合、レジスタスライスなしで120MHz動作で480MByte/sの転送速度を得ている。これに対して、レジスタスライスを挿入すると、少なくとも約135MHz以上の動作周波数で動作させなければレジスタスライスなしの120MHz動作の性能を超えられないことになる。   As shown in FIGS. 4 and 5, a difference in latency appears as a difference in average transfer rate between when the register slice is inserted and when no register slice is inserted. For example, when 16 burst transfer shown in FIG. 4 is performed, a transfer rate of 480 MByte / s is obtained at 120 MHz operation without register slice. On the other hand, if a register slice is inserted, the performance of 120 MHz operation without a register slice cannot be exceeded unless it is operated at an operating frequency of at least about 135 MHz.

尚、ここでは、レジスタスライスなしの場合の16バースト転送に要するサイクル数を16サイクルとし、レジスタスライスを挿入した場合では「+2サイクル」のレイテンシ増加により18サイクルとしている。   Here, the number of cycles required for 16 burst transfers without register slices is 16 cycles, and when register slices are inserted, 18 cycles due to an increase in latency of “+2 cycles”.

また、図5に示す4バースト転送を行った場合、レジスタスライスなしで120MHz動作で480MByte/sの転送速度を得ている。これに対して、レジスタスライスを挿入すると、少なくとも約195MHz以上の動作周波数で動作させなければレジスタスライスなしの120MHz動作の性能を超えられないことになる。   Further, when the 4-burst transfer shown in FIG. 5 is performed, a transfer speed of 480 MByte / s is obtained at 120 MHz operation without register slice. On the other hand, when a register slice is inserted, the performance of 120 MHz operation without a register slice cannot be exceeded unless it is operated at an operating frequency of at least about 195 MHz.

つまり、サポートするバースト長が小さくなるほど、レジスタスライスを挿入した場合の動作周波数に対する要求は大きくなってしまう。   In other words, the smaller the burst length that is supported, the greater the demand for operating frequency when register slices are inserted.

以上の結果から、レイアウト段階で目標周波数でのタイミング収束が困難なことが発覚した場合、レジスタスライスを挿入することにより、目標周波数を満足することができたとしても、次のような問題がある。つまり、その目標周波数がレジスタスライスを入れる前の性能に対するものであって、レジスタスライスを挿入した後では、レイテンシ増加に伴って性能を満たせなくなることが有り得る。その場合、選択可能な周波数候補の中から、更に高い周波数を選択し、性能を満足させる必要がある。   From the above results, if it is found that timing convergence at the target frequency is difficult at the layout stage, there are the following problems even if the target frequency can be satisfied by inserting a register slice. . That is, the target frequency is for the performance before the register slice is inserted, and after the register slice is inserted, the performance may not be satisfied as the latency increases. In this case, it is necessary to select a higher frequency from selectable frequency candidates to satisfy the performance.

開発したシステムLSIを製品仕様に応じて、ローエンド機種からハイエンド機種までプラットフォーム展開する場合に、要求性能が低い製品では高い動作周波数で動作させるより、むしろ低い動作周波数で動作させる方が消費電力を抑えるメリットがある。但し、単純にレジスタスライスを挿入したシステムLSIに対して動作周波数を落とすだけではレイテンシ増加に伴い、性能が満たせない場合が考えられる。   When deploying a developed system LSI platform from low-end models to high-end models according to product specifications, operating at a low operating frequency rather than operating at a high operating frequency for products with low required performance reduces power consumption. There are benefits. However, simply reducing the operating frequency for a system LSI with a register slice inserted may lead to increased performance and insufficient performance.

本発明は上記課題を解決するためになされたもので、記憶手段の挿入に伴うレイテンシ増加による性能低下を防止することを目的とする。   The present invention has been made to solve the above-described problems, and an object of the present invention is to prevent performance degradation due to an increase in latency associated with insertion of storage means.

本発明は、バスシステムであって、マスタデバイスとスレーブデバイスとの間に挿入された記憶手段を経由する経路か、該記憶手段を経由しない経路の何れかを指定する信号を入力する入力手段と、前記入力手段で入力された信号に応じて前記記憶手段を経由する経路を有効にするか、前記記憶手段を経由しない経路を有効にするかを選択する経路選択手段とを有することを特徴とする。   The present invention is a bus system, and an input means for inputting a signal designating either a route passing through a storage means inserted between a master device and a slave device or a route not passing through the storage means; And a route selection means for selecting whether to enable a route that passes through the storage means or to enable a route that does not pass through the storage means in accordance with a signal input by the input means. To do.

また、本発明は、バスシステムの経路選択方法であって、マスタデバイスとスレーブデバイスとの間に挿入された記憶手段を経由する経路か、該記憶手段を経由しない経路の何れかを指定する信号を入力する入力工程と、前記入力工程で入力された信号に応じて前記記憶手段を経由する経路を有効にするか、前記記憶手段を経由しない経路を有効にするかを選択する経路選択工程とを有することを特徴とする。   Further, the present invention is a bus system path selection method for specifying either a path that passes through a storage means inserted between a master device and a slave device or a path that does not pass through the storage means And a route selection step for selecting whether to enable a route that passes through the storage unit or to enable a route that does not pass through the storage unit in accordance with a signal input in the input step. It is characterized by having.

本発明によれば、レイアウト工程でレジスタを挿入する際に、同時にレジスタを経由しない系を設けることで、レジスタ追加に伴うレイテンシ増加による性能低下を防ぎ、要求性能を満足させる最適な周波数を選択することができる。   According to the present invention, when a register is inserted in the layout process, a system that does not go through the register at the same time is provided, thereby preventing a performance degradation due to an increase in latency caused by register addition and selecting an optimum frequency that satisfies the required performance. be able to.

以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。   The best mode for carrying out the invention will be described below in detail with reference to the drawings.

図6は、本実施形態におけるシステムLSI内部の構成例を示す図である。この例では、システムLSI内部に3つのマスタデバイス601〜603と3つのスレーブデバイス604〜606が存在し、それぞれ相互接続されている。また、マスタデバイス601〜603とスレーブデバイス604〜606とを繋ぐプロトコルは、valid、data、readyのシンプルな共通のプロトコル(図1)である。そして、アドレス、ライトデータ、リードデータ、ライトレスポンスの4種類の情報(図2)を通信している。   FIG. 6 is a diagram illustrating a configuration example inside the system LSI in the present embodiment. In this example, three master devices 601 to 603 and three slave devices 604 to 606 exist in the system LSI and are interconnected. The protocol connecting the master devices 601 to 603 and the slave devices 604 to 606 is a simple common protocol (FIG. 1) of valid, data, and ready. Then, four types of information (FIG. 2) of address, write data, read data, and write response are communicated.

ここで、マスタ−スレーブ間のデータ転送はバースト転送をサポートしており、最大で16バースト転送が可能である。また、バースト転送長はアドレス情報フェーズでdataの一部として通信される。最速のコンディションで動作する場合、マスタがアドレスを発行して、16バーストのリードデータを取り込むのに16サイクルかかるとする。   Here, the master-slave data transfer supports burst transfer, and a maximum of 16 burst transfers are possible. The burst transfer length is communicated as part of data in the address information phase. When operating in the fastest condition, it is assumed that it takes 16 cycles for the master to issue an address and take in 16 bursts of read data.

尚、以下のような要求性能の異なる製品を本実施形態の1つのシステムLSIでカバーするものと仮定する。   It is assumed that the following products having different required performance are covered by one system LSI of this embodiment.

製品A:要求転送速度525MByte/s
製品B:要求転送速度475MByte/s、低電力仕様
図4に示す関係から、レジスタスライスがない場合の要求転送速度525MByte/sを満たす動作周波数は130MHz以上であることがわかる。そこで、本システムではシステムLSIの設計工程において、ハードウェア記述言語を用いて設計、シミュレーション及び論理合成を行い、160MHzでマスタ、スレーブを動作させるようレイアウトするものとする。
Product A: Request transfer rate 525MByte / s
Product B: Required transfer rate 475 MByte / s, low power specification From the relationship shown in FIG. 4, it can be seen that the operating frequency that satisfies the required transfer rate 525 MByte / s when there is no register slice is 130 MHz or higher. Therefore, in this system, the design, simulation, and logic synthesis are performed using the hardware description language in the system LSI design process, and the master and slave are operated at 160 MHz.

[レイアウト結果]
各デバイスがシステムLSI内部でどのように配置されるかは、他の機能モジュールや外部ピンとの関係など様々な要因に依存し、均等に配置されることは少ない。
[Layout result]
How each device is arranged in the system LSI depends on various factors such as the relationship with other functional modules and external pins, and is rarely arranged evenly.

ここで、レイアウトした結果、マスタA601−スレーブC606のアドレスとリードデータのパス遅延が7.8nsであったとする。従って、このパスに関しては120MHzでは動作可能であるが、160MHz以上では動作不可能なパス(クリティカルパス)となる。図4からも分かるように、製品Aにおいては120MHzでは目標性能に達しない。尚、それ以外のパスについては全て160MHzでのタイミング保証はできているものとする。   Here, as a result of layout, it is assumed that the path delay between the address of the master A 601 to the slave C 606 and the read data is 7.8 ns. Therefore, this path can operate at 120 MHz, but cannot operate at 160 MHz or higher (critical path). As can be seen from FIG. 4, the product A does not reach the target performance at 120 MHz. For all other paths, it is assumed that timing is guaranteed at 160 MHz.

図7は、マスタA601−スレーブC606に着目した構成を示す図である。図7では、マスタデバイス601とスレーブデバイス606とが一対一(point-to-point)で接続されている。ここでは、タイミングを満たせなかったアドレスとリードデータのチャネルについてのみ示している。マスタA601とスレーブC606に入力するクロック702はクロック生成器701で生成されており、複数の周波数候補(120,140,160,180,200MHz)から設定レジスタ711の周波数選択信号712によって選択可能である。   FIG. 7 is a diagram showing a configuration focusing on the master A 601 -slave C 606. In FIG. 7, the master device 601 and the slave device 606 are connected on a one-to-one basis (point-to-point). Here, only the address and read data channels whose timing could not be satisfied are shown. The clock 702 input to the master A 601 and the slave C 606 is generated by the clock generator 701, and can be selected from a plurality of frequency candidates (120, 140, 160, 180, 200 MHz) by the frequency selection signal 712 of the setting register 711.

[レイアウト結果からレジスタスライス/バイパス回路の挿入]
図8は、レイアウト工程でレジスタスライス&バイパス回路を挿入した構成を示す図である。図8に示すように、アドレス用valid信号とアドレス、リードデータ用valid信号とリードデータに関して、レイアウト工程において、1段のレジスタを挿入する。同時に、このレジスタスライスの後段にセレクタを挿入し、レジスタスライスを経由するパスと、レジスタスライスを経由しないパスとを選択できるように回路の挿入を行う。また、この選択には、予め本用途のためにopen扱いしていた外部ピンから選択信号を入力するものとする。
[Insert register slice / bypass circuit from layout result]
FIG. 8 is a diagram showing a configuration in which a register slice & bypass circuit is inserted in the layout process. As shown in FIG. 8, a one-stage register is inserted in the layout process for the address valid signal and address, and the read data valid signal and read data. At the same time, a selector is inserted after the register slice, and a circuit is inserted so that a path passing through the register slice and a path not passing through the register slice can be selected. For this selection, it is assumed that a selection signal is input from an external pin that has been previously handled open for the purpose.

[再レイアウト]
再レイアウトの時、レジスタスライスを経由しないパスに関しては動作周波数が160MHzではなく、120MHzでのタイミング保証を行うようにする。また、レジスタスライスを挿入したパスについては160MHzでのタイミング保証を行う。
[Relay]
At the time of relayout, for a path that does not go through the register slice, the operation frequency is not 160 MHz, but the timing is guaranteed at 120 MHz. Also, the timing at 160 MHz is guaranteed for the path into which the register slice is inserted.

このような回路構成にすることにより、160MHz動作の場合にはレジスタスライスの系、120MHz動作の場合にはレジスタスライスをバイパスする系、という使い方が可能となる。これにより、製品Aについては160MHzで動作させ、また要求性能が製品Aより低い製品Bのような場合、転送120MHzでレジスタバイパスの系を使用する。   With such a circuit configuration, it is possible to use a register slice system for 160 MHz operation and a system for bypassing the register slice for 120 MHz operation. As a result, the product A is operated at 160 MHz, and in the case of the product B whose required performance is lower than that of the product A, a register bypass system is used at a transfer of 120 MHz.

尚、製品Bに関しては、レジスタスライスを使用して140MHz或いは160MHzで動作させることでも性能を満たせるが、レジスタスライスを挿入せずに120MHzで動作させる方が消費電力を抑えるというメリットが得られる。   For product B, the performance can be satisfied by operating at 140 MHz or 160 MHz using a register slice. However, the product B can be operated at 120 MHz without inserting a register slice, which has the advantage of reducing power consumption.

[他の実施形態]
次に、図面を参照しながら本発明に係る他の実施形態について詳細に説明する。
[Other Embodiments]
Next, another embodiment according to the present invention will be described in detail with reference to the drawings.

図9は、他の実施形態におけるレジスタスライスをバイパスする構成の一例を示す図である。他の実施形態では、レジスタスライスとマルチプレクサの代わりに2つのトランスペアレントラッチを使用する。具体的には、図9に示すように、LowスルーHighラッチ型903、905とHighスルーLowラッチ型904、906を組み合わせて使用する。   FIG. 9 is a diagram illustrating an example of a configuration that bypasses a register slice according to another embodiment. In other embodiments, two transparent latches are used instead of register slices and multiplexers. Specifically, as shown in FIG. 9, a low through high latch type 903 and 905 and a high through low latch type 904 and 906 are used in combination.

各々のトランスペアレントラッチのゲート入力には、クロック生成器701からマスタA601、スレーブC606へ供給されるクロック702を、バイパスするか否かを選択するバイパス選択信号901でマスクした信号902が入力される。   A signal 902 masked by a bypass selection signal 901 for selecting whether to bypass the clock 702 supplied from the clock generator 701 to the master A 601 and the slave C 606 is input to the gate input of each transparent latch.

これにより、高速に動作させるレジスタスライスの系の場合、ラッチのゲート入力にはマスタA601、スレーブC606に供給しているクロック信号と同等のクロックが入力される。一方、レジスタスライスをバイパスし、低速で動作させる場合、ラッチはスルー状態となる。また、バイパス選択信号901は本実施形態と同様に、外部入力ピンと接続する。   Thus, in the case of a register slice system operating at high speed, a clock equivalent to the clock signal supplied to the master A 601 and the slave C 606 is input to the gate input of the latch. On the other hand, when the register slice is bypassed and operated at a low speed, the latch is in a through state. Further, the bypass selection signal 901 is connected to an external input pin as in the present embodiment.

尚、以上説明した実施形態では、バイパス選択信号を外部ピンと接続するようにしたが、それ以外にも設定レジスタのフリップフロップ出力とすることも可能である。この場合、レジスタスライスが挿入されるか否かはレイアウト結果に依存するので、予めフロントエンド開発時に制御レジスタを準備しておく。   In the embodiment described above, the bypass selection signal is connected to the external pin, but it is also possible to use the flip-flop output of the setting register as well. In this case, since whether or not a register slice is inserted depends on the layout result, a control register is prepared in advance during front-end development.

また、レジスタスライスの段数を1段としたが、配置配線の結果によっては2段以上のレジスタを挿入することも当然あり得る。その場合も同様に本発明を適応できる。また、本発明を適応するマスタ−スレーブ接続を1つのみで取り扱っているが、当然複数の接続についても適応可能である。   Further, although the number of register slices is one, it is naturally possible to insert two or more registers depending on the result of placement and routing. In this case, the present invention can be similarly applied. In addition, although only one master-slave connection to which the present invention is applied is handled, naturally a plurality of connections can also be applied.

以上説明したように、実施形態によれば、レジスタスライスの系と、そのバイパスの系とを設けることで、レジスタスライス追加に伴うレイテンシ増加による性能低下を防ぎ、要求性能に対してオーバースペックにならない最適な周波数を選択できるようになる。   As described above, according to the embodiment, by providing a register slice system and a bypass system thereof, performance degradation due to an increase in latency due to the addition of the register slice is prevented, and the required performance is not over-specified. An optimal frequency can be selected.

尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。   Even if the present invention is applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), it is applied to an apparatus (for example, a copier, a facsimile machine, etc.) composed of a single device. It may be applied.

また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成されることは言うまでもない。   In addition, a recording medium in which a program code of software for realizing the functions of the above-described embodiments is recorded is supplied to the system or apparatus, and the computer (CPU or MPU) of the system or apparatus stores the program code stored in the recording medium. Read and execute. It goes without saying that the object of the present invention can also be achieved by this.

この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。   In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium storing the program code constitutes the present invention.

このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。   As a recording medium for supplying the program code, for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like is used. be able to.

また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、次の場合も含まれることは言うまでもない。即ち、プログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合。   In addition, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also the following cases are included. That is, when the OS (operating system) running on the computer performs part or all of the actual processing based on the instruction of the program code, and the functions of the above-described embodiments are realized by the processing.

更に、記録媒体から読出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, the program code read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. After that, based on the instruction of the program code, the CPU of the function expansion board or function expansion unit performs part or all of the actual processing, and the function of the above-described embodiment is realized by the processing. Needless to say.

AXI(Advanced eXtensible Interface)プロトコルにおけるチャネルの概念を示す図である。It is a figure which shows the concept of the channel in an AXI (Advanced eXtensible Interface) protocol. マスタ−スレーブ間でデータ伝送に用いられる4つのチャネルを示す図である。It is a figure which shows four channels used for data transmission between a master and a slave. 図2に示すpoint-to-point接続に対してレジスタスライスを挿入した接続例を示す図である。It is a figure which shows the example of a connection which inserted the register slice with respect to the point-to-point connection shown in FIG. 16バースト転送を行った場合の動作周波数と転送速度との関係を示す図である。It is a figure which shows the relationship between the operating frequency at the time of performing 16 burst transfer, and a transfer rate. 4バースト転送を行った場合の動作周波数と転送速度との関係を示す図である。It is a figure which shows the relationship between the operating frequency at the time of performing 4 burst transfer, and a transfer rate. 本実施形態におけるシステムLSI内部の構成例を示す図である。It is a figure which shows the example of a structure inside the system LSI in this embodiment. マスタA601−スレーブC606に着目した構成を示す図である。It is a figure which shows the structure which paid its attention to master A601-slave C606. レイアウト工程でレジスタスライス&バイパス回路を挿入した構成を示す図である。It is a figure which shows the structure which inserted the register slice & bypass circuit in the layout process. 他の実施形態におけるレジスタスライスをバイパスする構成の一例を示す図である。It is a figure which shows an example of the structure which bypasses the register slice in other embodiment.

Claims (9)

マスタデバイスとスレーブデバイスとの間に挿入された記憶手段を経由する経路か、該記憶手段を経由しない経路の何れかを指定する信号を入力する入力手段と、
前記入力手段で入力された信号に応じて前記記憶手段を経由する経路を有効にするか、前記記憶手段を経由しない経路を有効にするかを選択する経路選択手段とを有することを特徴とするバスシステム。
An input means for inputting a signal designating either a path that passes through the storage means inserted between the master device and the slave device or a path that does not pass through the storage means;
Route selection means for selecting whether to enable a route that passes through the storage means or to enable a route that does not pass through the storage means in accordance with a signal input by the input means. Bus system.
前記記憶手段は高周波数で動作させるためにレイアウト工程で挿入したレジスタであり、前記経路選択手段はセレクタによって構成されることを特徴とする請求項1記載のバスシステム。   2. The bus system according to claim 1, wherein the storage means is a register inserted in a layout process in order to operate at a high frequency, and the path selection means is constituted by a selector. 前記記憶手段及び前記選択手段はトランスペアレントラッチによって構成されることを特徴とする請求項1記載のバスシステム。   2. The bus system according to claim 1, wherein the storage means and the selection means are constituted by a transparent latch. 前記入力手段は外部と接続するための外部ピンを介して前記信号を入力することを特徴とする請求項1記載のバスシステム。   2. The bus system according to claim 1, wherein the input means inputs the signal via an external pin for connection to the outside. 前記選択入力手段は所定の制御レジスタから出力される前記信号を入力することを特徴とする請求項1記載のバスシステム。   2. The bus system according to claim 1, wherein the selection input means inputs the signal output from a predetermined control register. 前記経路選択手段は、前記記憶手段の後段に自動生成されることを特徴とする請求項1記載のバスシステム。   The bus system according to claim 1, wherein the route selection unit is automatically generated at a subsequent stage of the storage unit. マスタデバイスとスレーブデバイスとの間に挿入された記憶手段を経由する経路か、該記憶手段を経由しない経路の何れかを指定する信号を入力する入力工程と、
前記入力工程で入力された信号に応じて前記記憶手段を経由する経路を有効にするか、前記記憶手段を経由しない経路を有効にするかを選択する経路選択工程とを有することを特徴とするバスシステムの経路選択方法。
An input step of inputting a signal designating either a route passing through the storage means inserted between the master device and the slave device or a route not passing through the storage means;
And a route selection step of selecting whether to enable a route that passes through the storage unit or to enable a route that does not pass through the storage unit in accordance with the signal input in the input step. Bus system route selection method.
請求項7記載のバスシステムの経路選択方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the bus system route selection method according to claim 7. 請求項8記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 8 is recorded.
JP2005199142A 2005-07-07 2005-07-07 Bus system and route selection method thereof Withdrawn JP2007018264A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005199142A JP2007018264A (en) 2005-07-07 2005-07-07 Bus system and route selection method thereof
US11/480,989 US7461187B2 (en) 2005-07-07 2006-07-06 Bus system and data transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005199142A JP2007018264A (en) 2005-07-07 2005-07-07 Bus system and route selection method thereof

Publications (1)

Publication Number Publication Date
JP2007018264A true JP2007018264A (en) 2007-01-25

Family

ID=37755387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005199142A Withdrawn JP2007018264A (en) 2005-07-07 2005-07-07 Bus system and route selection method thereof

Country Status (1)

Country Link
JP (1) JP2007018264A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013122713A (en) * 2011-12-12 2013-06-20 Toshiba Corp Semiconductor device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013122713A (en) * 2011-12-12 2013-06-20 Toshiba Corp Semiconductor device

Similar Documents

Publication Publication Date Title
US8286025B1 (en) Selection of port adapters for clock crossing boundaries
CN101669102B (en) Serialization of data in multi-chip bus implementation
Cordan An efficient bus architecture for system-on-chip design
US6769046B2 (en) System-resource router
JP5398540B2 (en) ID generation apparatus and method for serial interconnected devices
US8339869B2 (en) Semiconductor device and data processor
JP2002049576A (en) Bus architecture for chip-based systems
EP1222554A1 (en) Improved synchronous operation of an advanced peripheral bus with backward compatibility
Sharma et al. Wishbone bus architecture-a survey and comparison
JP2002323995A (en) Trace circuit
US6718411B2 (en) Asic system architecture including data aggregation technique
US7461187B2 (en) Bus system and data transfer method
US20040006664A1 (en) System and method for efficient chip select expansion
JP7689117B2 (en) Programmable device configuration memory system
CN104834629A (en) Bus type central processing unit
JP2007018264A (en) Bus system and route selection method thereof
CN118746746A (en) A multi-chip test system based on single-chip FPGA
CN119106643A (en) A prototype verification system and method for heterogeneous chips
CN115952132B (en) Asynchronous bridge, SOC, electronic component, electronic device and chip design method
JP2007048280A (en) Integrated circuit device and method for bus monitoring
JP4840963B2 (en) Bus system and control method thereof
US7353297B2 (en) Handling of write transactions in a data processing apparatus
KR100596980B1 (en) Apparatus, system and method for generating internal strobe signals of peripheral devices
JP2008122374A (en) Serializer/de-serializer bus controller inferface
JP4799137B2 (en) Bus system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007